Teams Bot SDK 无法使用频道 conversationUpdate 参考获取团队信息

Teams Bot SDK fails to get team info using channel conversationUpdate reference

我有一个频道的 conversationUpdate 事件,我将其用作以下代码片段中的 conversationReference。出于某种原因,当我尝试 运行 这段代码时,我收到一条错误消息:“此方法仅在 MS Teams 团队范围内有效。”尽管据我所知,我提供的事件 在团队范围内(进一步证明,conversation.conversationTypechannel)。相反,我能够成功调用 TeamsInfo.getPagedMembers(),如果我不在团队范围内,我预计会失败。

const proactiveChannelHandler = async (turnContext) => {
  try {
    const teamDetails = await TeamsInfo.getTeamDetails(turnContext);
    if (teamDetails) {
      await turnContext.sendActivity(`The group ID is: ${teamDetails.aadGroupId}`);
    } else {
      await turnContext.sendActivity('This message did not come from a channel in a team.');
    }
  } catch (err) {
      console.error(err);
  }
}

adapter.continueConversation(conversationReference, proactiveChannelHandler);

我能够使用以下示例成功获取频道列表:

        private static async Task ListChannelsAsync(ITurnContext<IMessageActivity> turnContext, CancellationToken cancellationToken)
        {
            var channels = await TeamsInfo.GetTeamChannelsAsync(turnContext, null, cancellationToken);

            foreach (var channel in channels)
            {
                if (channel.Name == null)
                    channel.Name = "General";
            }

            await turnContext.SendActivityAsync(MessageFactory.Text($"Channels list: {string.Join(", ", channels.Select(c => c.Name).ToArray())}"), cancellationToken);
        }

看来问题是我缺少团队 ID 所需的第二个参数。