第三方应用开发 客户端API 小程序 企业通讯录 wx.qy.selectPrivilegedContact
wx.qy.selectPrivilegedContact

用于第三方应用唤起选择企业通讯录成员,用户选择的范围区分成两部分回传给第三方应用。第一部分是,过滤应用可见范围后的openUserId列表,第二部分为用户选择完整列表的ticket,ticket后续可用于创建群聊(注:创建群聊暂时不支持小程序接口,只支持jssdk)或者发送模板消息

接口定义

wx.qy.selectPrivilegedContact( {
				"fromDepartmentId": -1,// 必填,表示打开的通讯录从指定的部门开始展示,-1表示自己所在部门开始, 0表示从最上层开始
				"mode": "multi",// 必填,选择模式,single表示单选,multi表示多选
				"selectedContextContact": 1,// 是否勾选当前环境的参与者。例如在群+号打开,默认勾选当前群成员。
				"selectedOpenUserIds"["xxx","yyy"], // 非必填,已选用户OpenID列表。single模式忽略该参数。
				"selectedTickets"["ticket1","ticket2"] // 非必填,已选ticket列表。single模式忽略该参数
				 success: function(res){
                        var selectedUserList = res.result.userList; // 已选的成员列表
                        for (var i = 0; i < selectedUserList.length; i++)
                        {
                                var openUserId = selectedUserList[i].openUserId; //成员openUserId
                        }
                        var selectedTicket = res.result.selectedTicket;	// 已选的集合Ticket
                        var expiresIn = res.result.expiresIn;	// ticket有效期
                        var selectedUserCount = res.result.selectedUserCount;	// 用户选中的用户个数
                }});

 

调用前提:
1、必须先调用过wx.qy.login,且session_key未过期,开发者可调用checkSession 检查当前登录态.
2、此接口仅在企业微信3.1.12及以后版本支持,微信端不支持(微信开发者工具也不支持)。
3、仅第三方应用可调用。(第三方通讯录应用不支持)

传入参数

参数名类型是否必须说明
fromDepartmentIdInt32表示打开的通讯录从指定的部门开始展示,-1表示自己所在部门开始, 0表示从最上层开始
modeString选择模式,single表示单选,multi表示多选
selectedContextContactInt32是否勾选当前环境的参与者。1表示是,0表示否。目前仅支持“群加号”的场景。开发者可根据getContext接口判断所在环境,目前仅支持chat_attachment场景值
selectedOpenUserIds列表已选用户openUserId列表。仅支持multi模式,若传了single,忽略该参数。若传入的openuserid非法,忽略。列表不超过2000
selectedTickets列表已选ticket列表。仅支持multi模式,若传了single,忽略该参数。最多传入10个ticket
若selectedContextContact为1,且selectedOpenUserIds跟selectedTickets非空,会同时勾选当前环境的用户以及传入的用户列表

返回参数

参数名类型是否必须说明
err_msgString调用成功时返回selectPrivilegedContact:ok
若当前环境不支持选择,且传值了selectedContextContact=1,返回selectPrivilegedContact:fail_unsupported_context
若传了selectedContextContact=1,且mode=single时,返回 selectPrivilegedContact:fail_context_require_multi_mode
resultSelectResult当调用成功时返回,对应用户选择的内容

SelectResult

参数名类型是否必须说明
selectedTicketString对应用户的选择集合凭证
expiresInInt32ticket的有效时长,单位秒。默认为7天
selectedUserCountInt32选择的用户数
userListUserList选择的可见范围内的用户列表

UserList

参数名类型是否必须说明
openUserIdString用户openUserId
上一篇
wx.qy.claimClassAdmin
下一篇
wx.qy.openEnterpriseChat