Microsoft团队:无法开始对话-接收状态代码“禁止”

时间:2020-07-22 09:22:23

标签: c# botframework microsoft-teams

在生产环境中尝试发起对话并向用户发送通知时,出现以下错误:

Microsoft.Bot.Schema.ErrorResponseException: Operation returned an invalid status code 'Forbidden'

更新:进一步调试后,错误响应异常内的消息显示为:

The bot is not part of the conversation roster.

在本地开发过程中,连接到MS Teams中的测试应用程序后,它可以正常工作。直到上周五,它也能正常工作-然后突然停止,没有代码更改。


下面的代码基于Microsoft的this example,目的是在teamMembersAdded事件期间向用户发送欢迎卡。我在这里做错什么了吗?

// Retrieve and validate channel data
var channelData = turnContext.Activity.GetChannelData<TeamsChannelData>();
if (channelData.Team == null)
{
    logger.LogInformation("Not sending welcome card as Team in payload is null");
    return;
}

// Setup connector and trust url
MicrosoftAppCredentials.TrustServiceUrl(turnContext.Activity.ServiceUrl);
var connector = new ConnectorClient(new System.Uri(turnContext.Activity.ServiceUrl), _credentials);

// Starts new conversation in channel with welcome card
var conversationParameters = new ConversationParameters()
{
    IsGroup = true,
    ChannelData = new TeamsChannelData()
    {
        Channel = new ChannelInfo(channelData.Team.Id),
    },
    Activity = await CreateWelcomeCardTeamActivity(),
};
await connector.Conversations.CreateConversationAsync(conversationParameters);

更新2::该机器人在添加到较早的团队(去年某个时候和今年年初用于测试的团队)中时可以正常工作,但在添加到任何较新的团队中时则无法正常工作。< / p>

唯一的区别似乎是旧团队使用@thread.skype ID后缀,而新团队都使用@thread.tacv2 ID后缀。

0 个答案:

没有答案