主动消息聊天机器人的问题
Problems with the proactive message chatbot
我正在使用 python 和 Microsoft 机器人框架构建主动消息。对于每个用户,我使用 pickle 将对话引用 属性 保存在一个文件中。当我需要向用户发送消息时,聊天机器人从与用户对应的文件中加载对话参考并发送消息。
我遇到的问题是服务 url 的 URL 值在不断变化:
url更改后,我不能再使用旧的对话参考,如何在不要求用户交互更新对话参考的情况下向正确的用户发送消息?
简答:不用担心
听起来您已经通过保存对话引用以发送主动消息来正确地做事。您屏幕截图中的注释仅表示服务 URL 不能保证永远保持不变,但服务 URL 仍然有效稳定。如果服务 URL 发生变化,实际上并没有一个操作程序可以预期什么,因为这是一个非常罕见的事件,但我希望 Bot Framework 团队和 Teams 团队一定会确保给机器人开发人员足够的通知。
回答你的问题,如果你真的想更新你的服务 URL 而不让你的客户发送新消息,那么你可以自己向你的机器人发送消息,看看新服务是什么 URL 是并相应地更新所有对话参考。服务 URL 是用于各种 API 调用的根路径,因此它们不限于特定用户或特定对话。您可以期望服务 URL 对您和您的客户都是一样的。 Teams 有点例外,因为该频道有多个服务 URL 来说明不同的地区,因此您可能需要使用某种代理来模拟其他地区的用户。
我正在使用 python 和 Microsoft 机器人框架构建主动消息。对于每个用户,我使用 pickle 将对话引用 属性 保存在一个文件中。当我需要向用户发送消息时,聊天机器人从与用户对应的文件中加载对话参考并发送消息。
我遇到的问题是服务 url 的 URL 值在不断变化:
url更改后,我不能再使用旧的对话参考,如何在不要求用户交互更新对话参考的情况下向正确的用户发送消息?
简答:不用担心
听起来您已经通过保存对话引用以发送主动消息来正确地做事。您屏幕截图中的注释仅表示服务 URL 不能保证永远保持不变,但服务 URL 仍然有效稳定。如果服务 URL 发生变化,实际上并没有一个操作程序可以预期什么,因为这是一个非常罕见的事件,但我希望 Bot Framework 团队和 Teams 团队一定会确保给机器人开发人员足够的通知。
回答你的问题,如果你真的想更新你的服务 URL 而不让你的客户发送新消息,那么你可以自己向你的机器人发送消息,看看新服务是什么 URL 是并相应地更新所有对话参考。服务 URL 是用于各种 API 调用的根路径,因此它们不限于特定用户或特定对话。您可以期望服务 URL 对您和您的客户都是一样的。 Teams 有点例外,因为该频道有多个服务 URL 来说明不同的地区,因此您可能需要使用某种代理来模拟其他地区的用户。