wx.showShareMenu(Object object)

基础库 1.1.0 开始支持,低版本需做兼容处理。

以 Promise 风格 调用:支持

需要页面权限:当前是插件页面时,宿主微信小程序不能调用该接口,反之亦然

微信小程序插件:支持,需要微信小程序基础库版本不低于 2.1.0

微信小程序插件中使用时,只能在当前插件的页面中调用

微信 Windows 版:支持

微信 Mac 版:支持

微信 鸿蒙 OS 版:支持

功能描述

设置右上角点开的详情界面中的分享按钮是否可用

参数

Object object

属性 类型 默认值 必填 说明 最低版本
withShareTicket boolean false 是否使用带 shareTicket 的转发详情
menus Array.<string> 本接口为 Beta 版本,暂只在 Android 平台支持。需要显示的转发按钮名称列表,默认[‘shareAppMessage’]。按钮名称合法值包含 “shareAppMessage”、”shareTimeline” 两种 2.11.3
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

注意事项

  • “shareAppMessage”表示“发送给朋友”按钮,”shareTimeline”表示“分享到朋友圈”按钮
  • 显示“分享到朋友圈”按钮时必须同时显示“发送给朋友”按钮,显示“发送给朋友”按钮时则允许不显示“分享到朋友圈”按钮

示例代码

wx.showShareMenu({
  withShareTicket: true,
  menus: ['shareAppMessage', 'shareTimeline']
})

wx.updateShareMenu(Object object)

基础库 1.2.0 开始支持,低版本需做兼容处理。

以 Promise 风格 调用:支持

需要页面权限:当前是插件页面时,宿主微信小程序不能调用该接口,反之亦然

微信小程序插件:支持,需要微信小程序基础库版本不低于 2.1.0

微信小程序插件中使用时,只能在当前插件的页面中调用

微信 Windows 版:支持

微信 Mac 版:支持

微信 鸿蒙 OS 版:支持

相关文档: 转发、动态消息、微信小程序私密消息

功能描述

更新转发属性

参数

Object object

属性 类型 默认值 必填 说明 最低版本
withShareTicket boolean false 是否使用带 shareTicket 的转发详情
isUpdatableMessage boolean false 是否是动态消息,详见动态消息 2.4.0
activityId string 动态消息的 activityId。通过 updatableMessage.createActivityId 接口获取 2.4.0
toDoActivityId string 群待办消息的id,通过toDoActivityId可以把多个群待办消息聚合为同一个。通过 updatableMessage.createActivityId 接口获取。详见群待办消息 2.11.0
templateInfo Object 动态消息的模板信息 2.4.0
结构属性 类型 默认值 必填 说明
parameterList Array.<Object> 参数列表
结构属性 类型 默认值 必填 说明
name string 参数名
value string 参数值
templateId string 模板ID
isPrivateMessage boolean 是否是私密消息。详见 微信小程序私密消息 2.13.0
participant Array.<string> [] 参与用户此聊天室下的 group_openid 列表
useForChatTool boolean false 聊天工具模式特殊动态消息 3.7.8
chooseType number 1 指定成员的方式 3.7.8
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

注意事项

  • bug:在iOS上,如果 withShareTicket 传了 true ,同时 isUpdatableMessage 传了 false,会导致 withShareTicket 失效。解决办法:当 withShareTicket 传了 true 的时候,isUpdatableMessage 传 true 或者不传都可以,但不要传 false。如果需要关掉动态消息设置,则另外单独调用一次 wx.updateShareMenu({ isUpdatableMessage: false }) 即可。

示例代码

wx.updateShareMenu({
  withShareTicket: true,
  success () { }
})
// 转发私密消息
wx.updateShareMenu({
  isPrivateMessage: true,
  activityId: 'xxx',
  templateInfo: {},
  success () { },
  fail () {}
})

wx.enterChatToolMode(Object object)

基础库 3.12.0 开始支持,低版本需做兼容处理。

以 Promise 风格 调用:不支持

微信小程序插件:不支持

相关文档: 聊天工具模式

功能描述

进入聊天工具开放能力模式。

  1. 不传入聊天室id列表时,微信会拉起聊天列表让用户选择,用户选择后绑定聊天室进入聊天工具模式。
  2. 传入聊天室id列表时(群聊为opengid),会直接绑定这批聊天室进入。

参数

Object object

属性 类型 默认值 必填 说明
chatToolRooms Array.<string> 聊天室 id,不传则拉起群选择框,可以传入多聊群的 opengid 值
singleChatRoom boolean 是否单选群聊,true 为单选,false 为多选
selectLimit number 多选模式下最多选择的群聊数量
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码


  wx.enterChatToolMode({
    singleChatRoom: false
  }) // 拉起聊天列表选择


  wx.enterChatToolMode({
    chatToolRooms: [`${opengid}],
  })

wx.getChatToolInfo(Object object)

基础库 3.7.8 开始支持,低版本需做兼容处理。

以 Promise 风格 调用:支持

微信小程序插件:不支持

相关文档: 聊天工具模式

功能描述

获取聊天工具模式下的群聊信息。

需要注意的是,单聊群和多聊群下返回的群唯一标识是不同的。

  1. 多聊群下返回 opengid
  2. 单聊群下返回 open_single_roomid

同时将返回用户在群(含单聊)下的唯一标识 group_openid。

参数

Object object

属性 类型 默认值 必填 说明
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

object.success 回调函数

参数
Object res
属性 类型 说明
errMsg string 错误信息
encryptedData string 包括敏感数据在内的完整转发信息的加密数据,详细见加密数据解密算法
iv string 加密算法的初始向量,详细见加密数据解密算法
cloudID string 敏感数据对应的云 ID,开通云开发的微信小程序才会返回,可通过云调用直接获取开放数据,详细见云调用直接获取开放数据

示例代码

wx.getChatToolInfo({
  success(res) {
    // res
    {
      errMsg: 'getChatToolInfo:ok',
      encryptedData: '',
      iv: ''
    }
  },
  fail() {

  }
})

敏感数据有两种获取方式,一是使用 加密数据解密算法 。 获取得到的开放数据为以下 json 结构(其中 opengid 为当前群的唯一标识):

{
 "opengid": "OPENGID",       // 多聊群下返回的群唯一标识
 "open_single_roomid": "",   // 单聊群下返回的群唯一标识
 "group_openid": "",         // 用户在当前群的唯一标识
 "chat_type": 3,             // 聊天室类型
}

wx.notifyGroupMembers(Object object)

基础库 3.7.8 开始支持,低版本需做兼容处理。

以 Promise 风格 调用:支持

微信小程序插件:不支持

相关文档: 聊天工具模式

功能描述

提醒用户完成任务,标题长度不超过 30 个字符,支持中英文和数字,中文算2个字符。

参数

Object object

属性 类型 默认值 必填 说明
title string 文字链标题,发送的内容将由微信拼接为:@的成员列表+“请完成:”/”请参与:”+打开微信小程序的文字链,如「@alex @cindy 请完成:团建报名统计」。
members Array.<string> 需要提醒的用户 group_openid 列表
entrancePath string 文字链跳转路径
type string complete 展示的动词
合法值 说明
participate 请参与
complete 请完成
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码


  // 最终聊天内显示 @alex @cindy 请完成:团建报名统计
  wx.notifyGroupMembers({
    title: '团建报名统计',
    members: ['alex', 'cindy],
    entrancePath: '/path/to/page',
    type: 'complete',
  })

wx.openChatTool(Object object)

基础库 3.7.8 开始支持,低版本需做兼容处理。

以 Promise 风格 调用:支持

微信小程序插件:不支持

相关文档: 聊天工具模式

功能描述

进入聊天工具模式。

  1. 不传入聊天室id时,微信会拉起聊天列表让用户选择,用户选择后绑定聊天室进入聊天工具模式。
  2. 传入聊天室id时(群聊为opengid,单聊为open_single_roomid),会直接绑定该聊天室进入,此时必须传入对应的 chatType。
  3. 聊天室类型可从 [getGroupEnterInfo] 返回值中获取。

参数

Object object

属性 类型 默认值 必填 说明
url string 聊天工具分包内的页面路径
roomid string 聊天室 id,不传则拉起群选择框,可以传入多聊群的 opengid 值,或者单聊群的 open_single_roomid 值
chatType number 群聊类型
合法值 说明
1 微信联系人单聊
2 企业微信联系人单聊
3 普通微信群聊
4 企业微信互通群聊
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码


  wx.openChatTool({
    roomid: 'open_single_roomid',
    chatType: 1
  })


  wx.openChatTool({
    roomid: 'opengid',
    chatType: 3
  })

wx.selectGroupMembers(Object object)

基础库 3.7.8 开始支持,低版本需做兼容处理。

以 Promise 风格 调用:支持

微信小程序插件:不支持

相关文档: 聊天工具模式

功能描述

选择聊天室的成员,并返回选择成员的 group_openid。若当前为群聊,则会拉起成员选择器;若当前为单聊,则直接返回双方的 group_openid。

参数

Object object

属性 类型 默认值 必填 说明
maxSelectCount number 最多可选人数
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

object.success 回调函数

参数
Object res
属性 类型 说明
members Array.<string> 所选用户在此聊天室下的唯一标识,同一个用户在不同的聊天室下id不同
  wx.selectGroupMembers({
    maxSelectCount: 3,
    success(res) {
      // res.members
    }
  })

wx.shareAppMessageToGroup(Object object)

基础库 3.7.8 开始支持,低版本需做兼容处理。

以 Promise 风格 调用:支持

微信小程序插件:不支持

相关文档: 聊天工具模式

功能描述

转发微信小程序卡片到聊天

参数

Object object

属性 类型 默认值 必填 说明
title string 转发标题
path string 转发路径,必须是以 / 开头的完整路径,默认为当前页面
imageUrl string 自定义图片路径,支持PNG及JPG,显示图片长宽比是 5:4,默认使用截图
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码


  wx.shareAppMessageToGroup({
    title: '分享标题',
    path: '/path/to/page',
    imageUrl: '',
  })

wx.shareEmojiToGroup(Object object)

基础库 3.7.8 开始支持,低版本需做兼容处理。

以 Promise 风格 调用:支持

微信小程序插件:不支持

相关文档: 聊天工具模式

功能描述

转发表情到聊天

参数

Object object

属性 类型 默认值 必填 说明
imagePath string 要分享的表情地址,必须为本地路径或临时路径
needShowEntrance boolean true 分享的表情消息是否要带微信小程序入口
entrancePath string 从消息微信小程序入口打开微信小程序的路径,默认为聊天工具启动路径
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码


  wx.downloadFile({
    url: 'https://res.wx.qq.com/wxdoc/dist/assets/img/demo.ef5c5bef.jpg',
    success: (res) => {
      wx.shareEmojiToGroup({
        path: res.tempFilePath
      })
    }
  })

wx.shareFileToGroup(Object object)

基础库 3.7.8 开始支持,低版本需做兼容处理。

以 Promise 风格 调用:支持

微信小程序插件:不支持

相关文档: 聊天工具模式

功能描述

转发文件到聊天

参数

Object object

属性 类型 默认值 必填 说明
filePath string 要分享的文件地址,必须为本地路径或临时路径
fileName string 自定义文件名,若留空则使用filePath中的文件名
needShowEntrance boolean true 分享的图片消息是否要带微信小程序入口
entrancePath string 从消息微信小程序入口打开微信小程序的路径,默认为聊天工具启动路径
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码


  wx.downloadFile({
    url: URL, // 下载url
    success (res) {
      // 下载完成后转发
      wx.shareFileToGroup({
        filePath: res.tempFilePath,
        success() {},
        fail: console.error,
      })
    },
    fail: console.error,
  })