Botframework &引用;键入…“;显示不';t在bot框架中消失+;移动即时通
我正在使用下面的代码向用户发送一个“键入…”指示器,而我的机器人正在进行一些处理。在反序列化和启动任何对话框之前,这是在任何消息上首先发送的 问题是,根据facebook的说法,即使在6秒钟后,该指标也不会消失 所以在机器人发送消息后,输入。。。指标仍然永远存在 这只发生在FB Messenger上,而不发生在电报或模拟器等其他通道上Botframework &引用;键入…“;显示不';t在bot框架中消失+;移动即时通,botframework,facebook-messenger,Botframework,Facebook Messenger,我正在使用下面的代码向用户发送一个“键入…”指示器,而我的机器人正在进行一些处理。在反序列化和启动任何对话框之前,这是在任何消息上首先发送的 问题是,根据facebook的说法,即使在6秒钟后,该指标也不会消失 所以在机器人发送消息后,输入。。。指标仍然永远存在 这只发生在FB Messenger上,而不发生在电报或模拟器等其他通道上 if (activity.Type == ActivityTypes.Message) { Activity typing = a
if (activity.Type == ActivityTypes.Message)
{
Activity typing = activity.CreateReply(null);
typing.ServiceUrl = activity.ServiceUrl; //bug in ms bot framework? otherwise service URL is null
typing.Type = ActivityTypes.Typing;
ConnectorClient connector = new ConnectorClient(new Uri(typing.ServiceUrl));
await connector.Conversations.SendToConversationAsync(typing);
//do the actual bot's work here
根据Facebook,他们输入信息的实际超时时间为20秒: 此外,当bot响应实际消息时,键入指示器将被删除
我用我的测试机器人验证了这个行为。Bot framework不发送“end typing”(结束键入)消息,只发送begin typing(开始键入)消息。进一步测试后,我发现我的问题只出现在Android Messenger应用程序(最新版本)中。同样的机器人在iPhone和Windows Phone以及桌面应用程序和web版本上也可以正常工作。所以我想问题是在Facebook这边。谢谢你的检查。