c# - 如何在没有 azure 的情况下发布和部署多渠道机器人?
问题描述
一旦我阅读了 Microsoft bot 框架,我就意识到它是一个编写一次代码并随处运行的平台...... 我对 Microsoft bot 框架的理解是否正确?还是我期望太高?
然后我为我的 Windows 笔记本电脑下载了 Bot Composer 并创建了一个机器人。它适用于模拟器。
我的问题/问题是如何在没有 azure 的情况下发布和部署我的机器人?
我在 Hetzner 上有一个 VPS,我想在那个 vps 中托管我的机器人。机器人作曲家只有使用 azure 的选项,我没有 Microsoft 应用 ID 和 Microsoft 应用密码。我该怎么办 ?
在这张图表中,可以看到有的社交平台使用azure,有的使用sdk,例如Telegram -->> SDK,是什么意思?!?!?
这是否意味着您必须为 Azure 付费才能为 Telegram 发布您的机器人?
在这个链接中,我必须注册一个机器人,那里有一个按钮,上面写着:创建 Microsoft App ID 和密码。
我点击它并创建了一个,里面有Microsoft App ID,但没有密码。
我知道我写的太多了 :)) 但我很困惑,因为我认为文档非常不清楚,付费服务和非付费服务之间的界限也不清楚......
谁能告诉如何在没有 azure 的多个平台的 VPS 上部署一个简单的 echo bot 的说明?
谢谢你。
解决方案
那是一堆问题,将尝试综合。
是的,它是一次代码,可从多个渠道使用……但并非所有渠道都具有相同的功能。
机器人应用程序“只是”具有 REST API 端点的状态机,用于接收消息并将回复发送回(从 30,000 英尺处观察)
你可以在任何地方托管你的应用程序,它只需要一个有效的公共 https 地址,你可以在 Azure 的机器人通道注册中配置该地址。
Azure Bot Service 是一个通道聚合器,它处理您提到的图表中列为“Azure”的通道的所有连接详细信息。这些通道由机器人框架“自动”处理。
您可能想阅读我前段时间写的一篇博文,它有点过时但在概念上仍然有效:
Bot Builder v4 bot 是如何工作的?对于那些不在 Azure 中的频道,你必须在你的 Web 应用程序中使用提供商提供的 SDK 来处理每个频道。当然,你也可以自己实现授权和所有细节,毕竟它只是一个 API 端点。
如果您使用标准频道,您实际上不必为使用机器人服务频道付费 Azure ,而且付费频道的成本很低。
至于在 Azure 之外部署,假设您仍将使用免费或接近免费的 Bot 服务:
完成上述所有操作后,您应该能够从频道网络聊天甚至 Telegram 测试该机器人,一旦您启用它,同时您的应用程序在 VS 中运行
推荐阅读
- kubernetes - 如何使用 Microk8s etcd 实例搜索以前的版本?
- c++ - 这是可能的最快的个位数排序算法吗?
- typescript - 如何验证 RunTypes 中具有未知属性的对象(打字稿小写对象)
- excel - 将值复制到不同工作表中的单元格。使用 vlookup 找到单元格
- flutter - CheckBox List Tile 将选定的值添加到不同的列表
- c# - 如果数据库调用失败,我们可以将项目移回 Channel
- node.js - 无法安装反应导航和手势
- powershell - 为什么运行shell脚本代码后窗口弹出并消失
- python - Django Private Channel - 如果是 self.object。#(消费者:一个或另一个:卖家#!= request.user:
- c - 我在简单的 C 循环中找不到错误,printf 不起作用