Botframework MS团队机器人-检测用户正在键入

Botframework MS团队机器人-检测用户正在键入,botframework,microsoft-teams,Botframework,Microsoft Teams,我有一个微软团队机器人,我想在用户再次开始使用机器人时向他们致意。 因此,我尝试使用ActivityTypes。键入来执行此操作,但MS团队似乎还不支持它 是否有人对此有经验或可以提出其他解决方案 谢谢 不,用户将bot安装为应用程序,因此用户不会卸载它,而是 停止使用一段时间,然后他们想再次使用它。我想 他们的行为是点击机器人应用程序,开始输入,然后发送 消息我想在他们发短信之前向他们打招呼 不幸的是,这是不可能的。当然不是团队。只会被解雇一次。没有任何事件会被发送到bot,告诉它用户将要发送

我有一个微软团队机器人,我想在用户再次开始使用机器人时向他们致意。 因此,我尝试使用ActivityTypes。键入来执行此操作,但MS团队似乎还不支持它

是否有人对此有经验或可以提出其他解决方案

谢谢


不,用户将bot安装为应用程序,因此用户不会卸载它,而是 停止使用一段时间,然后他们想再次使用它。我想 他们的行为是点击机器人应用程序,开始输入,然后发送 消息我想在他们发短信之前向他们打招呼

不幸的是,这是不可能的。当然不是团队。只会被解雇一次。没有任何事件会被发送到bot,告诉它用户将要发送消息。我不确定哪个,如果有的话,频道/客户端会向机器人发送键入指示器。我不知道有谁能做到。机器人通常不接收输入活动,只发送。您可能能够让它工作,但除非频道/客户机支持该功能,否则这并没有真正的帮助

我认为你能做的最好的事情就是用逻辑来存储用户最后一次发信息或机器人响应的时间。然后,当用户发送新消息时(在预定的时间之后),bot可以在响应之前用消息进行响应

例如:

  • 此用户的最后一条消息/活动时间是2天前
  • 带有“我想租车”的用户消息bot
  • 代码逻辑确定它已经足够长,可以对以下内容进行评论:
  • “我们聊天已经有一段时间了,欢迎回来!”
  • 机器人回复意向:“当然!你想租什么牌子的车?”

我不确定什么样的操作可以定义为“再次开始使用机器人”。您的意思是,该bot以前已卸载,将在Ms Team客户端中再次安装?如果是,将触发“ConversationUpdateActivity”,您可以发送一条主动消息。否,用户将bot安装为应用程序,这样用户不会卸载它,而是停止使用一段时间,然后他们想再次使用它。我认为他们的行为会是点击机器人应用程序,开始打字,然后发送消息。我想在他们发送信息之前向他们打招呼。根据你的描述,当用户开始在聊天窗口中键入内容时,你需要一个触发器。这意味着团队客户端或bot需要监控键入的操作。在我看来,我从来没有找到一种方法来实现这个功能。下面是介绍所有团队机器人的活动。