如何从 MS Teams 获取用户 ID、租户 ID 和服务 URL?

How to fetch userID, tenantID and serviceURL from MSTeams?

我正在调查 Microsoft Graph Postman Collections 但找不到租户 ID、serviceURL 或用户 ID?

有没有办法从 MSTeams 获取 userID、tenantID 和 serviceURL?

请查看使用 Microsoft Teams javascript library 获取上下文。

  // Call the initialize API first
  microsoftTeams.initialize();

  // Check the initial theme user chose and respect it
  microsoftTeams.getContext(function (context) {
    if (context) {
      console.log(context);
    }
  });

正如另一个答案所提到的,您可以通过 "context" 对象获得它,这反过来意味着您需要创建一个 Teams 应用程序,并且它必须包含一个 Tab。还有另一个类似的选项,即为 Teams 创建机器人,当用户安装机器人时,无论是 1-1,还是安装到频道或群聊中,您都有机会检索该信息。您可以查看更多相关信息 here,包括一些基于机器人类型和您希望检索信息的时间的选项。

如果有一个应用程序没问题,那么只需继续使用这种方法。如果您真的不想用户与应用交互,那么您可以考虑以下几点:

  1. 创建应用程序(例如机器人)以获得您需要的上下文
  2. 按照this Graph call
  3. 自动安装机器人
  4. 检索并保存 conversationUpdate 中的信息,当用户/团队/聊天安装你的 bot 时触发
  5. 使用 this Graph call
  6. 自动卸载应用程序

但是,您还没有解释为什么需要这些信息。该集合通常用于从机器人发送主动消息,如果这是您想要做的,那么您无论如何都需要机器人。