如何在与机器人聊天时获取用户的位置?
我正在开发一个Bot Framework应用程序,它使用Microsoft Bot技术与Slack集成。 在bot项目中,我试图在用户发送消息时获取用户位置。
我想要实现的是,当用户键入消息“向我显示附近的医院”时,我想让用户使用Geo坐标并将其传递给API,该API将返回该位置附近的医院列表。 那么关于如何获得用户在Microsoft Bot项目中的当前位置的任何想法?
我尝试使用Geo位置类,但是我无法直接添加类引用,当我为Geo位置类添加外部DLL时,Visual Studio会抛出一些错误。
有没有办法让用户在Bots中获得当前位置?
Bot框架每分钟都在更新!
Microsoft Bot Framework的Bing位置控件使得在对话中收集和validation用户所需位置的过程变得简单可靠。
该控件可用于C#和Node.js,并且在Bot Framework支持的所有通道中一致地工作。
请查看此处的文档。
单击以查看代码示例
这个问题已经过时了,但现在这是一个有助于定位的事情希望它能帮助寻找这个答案的人。 https://github.com/Microsoft/BotBuilder-Location
渠道因支持位置信息而异。 目前无法获得Slack上用户的位置信息。 例如,电报确实如此。 当位置数据可用时,它将在附件数据结构中返回,并在ChannelData字段中以通道的本机格式返回。 请注意,用户需要选择发送此数据(以保护其隐私)。 僵尸开发人员可以向用户发送消息,请求他们共享他们的位置数据,但是他们无法从用户操作共享它的渠道获取该消息。
目前BotBuilder还没有很好地处理这个问题。 我已经开启了一个问题 ,可以跨平台实现这种标准化。 关于Slack ,他们没有选择将位置作为Telegram , Messenger和Kik的附件发送,因此您可能希望使用Google Geocode API从字符串中获取坐标。
- 下载在门户网站上创建的bot会导致无效/不可执行的解决方案
- 带有Facebook Messenger按钮的Microsoft Bot Framework消息
- 如何从IDialogContext获取活动信息
- 已发布的C#Bot在一段时间后会遇到内部服务器错误
- Messenger bot中出现PromptDialog错误
- 使用MicrosoftBot的FormBuilder跳过确认步骤
- 将模型和订阅密钥传递给LuisDialog而不是通过属性
- 我可以将自定义逻辑添加到Bot Framework PromptDialog以处理无效答案吗?
- 如何在Bot Framework中取消/退出或退出PromptDialog.Choice?