C# 多个MS机器人程序调用相同的API
我已经创建了一个MS bot框架API,它将被1个以上的bot调用 我创建了一个类来覆盖BotAuthentication并将其添加到控制器C# 多个MS机器人程序调用相同的API,c#,botframework,C#,Botframework,我已经创建了一个MS bot框架API,它将被1个以上的bot调用 我创建了一个类来覆盖BotAuthentication并将其添加到控制器 [BotAuthentication(CredentialProviderType = typeof(BotCredential))] 下面是证书类文件: public class BotCredential : ICredentialProvider { public async Task<string> GetAp
[BotAuthentication(CredentialProviderType = typeof(BotCredential))]
下面是证书类文件:
public class BotCredential : ICredentialProvider
{
public async Task<string> GetAppPasswordAsync(string appId)
{
//return the app password
}
public async Task<bool> IsAuthenticationDisabledAsync()
{
return false;
}
public async Task<bool> IsValidAppIdAsync(string appId)
{
//return if appid is valid
}
}
所以现在一切第一次都很好
例如,我有两个机器人Bot1和Bot2:
首先,我从Bot1发送一条消息并得到回复。但在此之后,如果我从Bot2发送消息,则第一条消息将显示异常消息:
与已知对话不匹配
对于来自Bot2的第二条消息,它给出了回复,同样,如果我从Bot1发送消息,同样的事情正在发生,对于第一条消息,我从第二条消息得到了相同的错误。继续,它工作正常。@Katie感谢编辑并使问题看起来更好:)@Katie感谢编辑并使问题看起来更好:)
MicrosoftAppCredentials credential = new MicrosoftAppCredentials()
{
MicrosoftAppId ="Appid received from the claim",
MicrosoftAppPassword = "Appsecret available from the claim"
};
ConnectorClient connector = new ConnectorClient(new Uri(activity.ServiceUrl), credential);
Activity reply= activity.CreateReply("Some reply");
await connector.Conversations.ReplyToActivityAsync(reply);