Botframework 如何获取组织中MS团队用户的列表?
如何获取组织中MS团队用户的列表?存储并向他们广播通知。 我看到了这个片段,但它只获取对话中的成员列表Botframework 如何获取组织中MS团队用户的列表?,botframework,microsoft-graph-api,microsoft-teams,Botframework,Microsoft Graph Api,Microsoft Teams,如何获取组织中MS团队用户的列表?存储并向他们广播通知。 我看到了这个片段,但它只获取对话中的成员列表 bot.dialog('FetchMemberList', function (session) { var conversationId = session.message.address.conversation.id; connector.fetchMembers(session.message.address.serviceUrl, conversationId, function (
bot.dialog('FetchMemberList', function (session) {
var conversationId = session.message.address.conversation.id;
connector.fetchMembers(session.message.address.serviceUrl, conversationId, function (err, result) {
if (err) {
session.endDialog('There is some error');
}
else {
session.endDialog('%s', JSON.stringify(result));
}
});
})) 当前没有选项可以在不安装bot的情况下获取用户的唯一Id。您需要用户的唯一ID和租户ID才能访问
Bot只能向安装了您的Bot的用户发送主动消息。当用户安装您的应用程序时,您可以保存用户详细信息,以便以后发送消息。您可以使用Teams花名册REST API获取用户列表 您的bot可以查询团队成员列表及其基本配置文件,其中包括团队用户ID和Azure Active Directory(Azure AD)信息,如名称和对象ID。您可以使用此信息关联用户身份;例如,检查通过Azure AD凭据登录到选项卡的用户是否是团队成员 您可以使用serviceUrl的值作为端点,直接在/conversations/{teamId}/members/上发出GET请求 目前,teamId的唯一来源是来自团队上下文的消息,或者是来自用户的消息,或者是机器人添加到团队时收到的消息(请参见机器人或用户添加到团队) 响应将遵循以下格式:
[{
"id": "29:1GcS4EyB_oSI8A88XmWBN7NJFyMqe3QGnJdgLfFGkJnVelzRGos0bPbpsfJjcbAD22bmKc4GMbrY2g4JDrrA8vM06X1-cHHle4zOE6U4ttcc",
"objectId": "9d3e08f9-a7ae-43aa-a4d3-de3f319a8a9c",
"givenName": "Larry",
"surname": "Brown",
"email": "Larry.Brown@fabrikam.com",
"userPrincipalName": "labrown@fabrikam.com"
},
...
]
bot框架本身并没有内置任何东西可以在本地实现这一点。您必须考虑对这些数据使用类似MS Teams API或Graph API的东西。