Kendo ui Kendo ui JQuery未自动启动与microsoft botframework的对话
我想使用JQuery的剑道UI作为我的机器人的前端 演示是我正在尝试使用的。当你开始演示时,机器人会自动向你打招呼,但当我将秘密改为我的秘密时,它不会开始对话。有了我的秘密,它只需等待用户输入就可以开始了。当我用bot框架模拟器测试我的bot时,它在连接时确实会发送一条消息 我不知道为什么会这样。我没有更改剑道演示的任何代码,这让我认为问题在于我的机器人框架。另一方面,模拟器确实给了我想要的结果。我不知道如何解决我的问题 下面是MyBot.cs的onMembersAddedAsync函数,据我所知,它应该在新客户端连接时发送问候消息Kendo ui Kendo ui JQuery未自动启动与microsoft botframework的对话,kendo-ui,botframework,Kendo Ui,Botframework,我想使用JQuery的剑道UI作为我的机器人的前端 演示是我正在尝试使用的。当你开始演示时,机器人会自动向你打招呼,但当我将秘密改为我的秘密时,它不会开始对话。有了我的秘密,它只需等待用户输入就可以开始了。当我用bot框架模拟器测试我的bot时,它在连接时确实会发送一条消息 我不知道为什么会这样。我没有更改剑道演示的任何代码,这让我认为问题在于我的机器人框架。另一方面,模拟器确实给了我想要的结果。我不知道如何解决我的问题 下面是MyBot.cs的onMembersAddedAsync函数,据我所
protected override async Task OnMembersAddedAsync(IList<ChannelAccount> membersAdded, ITurnContext<IConversationUpdateActivity> turnContext, CancellationToken cancellationToken)
{
foreach (var member in membersAdded)
{
if (member.Id != turnContext.Activity.Recipient.Id)
{
//sends some messages to welcome the user + suggestedactions
await WelcomeNewUser(turnContext, cancellationToken);
}
}
}
受保护的覆盖MemberSaddedAsync上的异步任务(IList membersAdded、iTunesContext turnContext、CancellationToken CancellationToken)
{
foreach(membersAdded中的var成员)
{
if(member.Id!=turnContext.Activity.Recipient.Id)
{
//发送一些消息以欢迎用户+建议操作
等待WelcomeNewUser(turnContext、cancellationToken);
}
}
}
我找到了一个可能的解决方案,我没有使用OnMembersAddedAsync
功能,而是从OnTurnAsync
发送欢迎消息。我删除了OnMembersAddedAsync的,因为它不再做任何事情了
public override async Task OnTurnAsync(ITurnContext turnContext, CancellationToken cancellationToken = default)
{
await base.OnTurnAsync(turnContext, cancellationToken);
if (turnContext.Activity.Type == ActivityTypes.Message)
{
// Save any state changes that might have occured during the turn.
await ConversationState.SaveChangesAsync(turnContext, false, cancellationToken);
await UserState.SaveChangesAsync(turnContext, false, cancellationToken);
}
else
{
// Send an initial welcome message
if (turnContext.Activity.Type == ActivityTypes.ConversationUpdate && turnContext.Activity.MembersAdded.FirstOrDefault()?.Id == turnContext.Activity.Recipient.Id)
{
await WelcomeNewUser(turnContext, cancellationToken);
}
}
}