You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Azure Composer/AWS Lex/Dialogflow搭建聊天机器人如何集成地图位置选择器

实现方案

这类功能已经有大量落地实践,核心思路是绕过平台原生组件限制,通过自定义扩展实现,不需要等待平台官方更新对应能力:

  • 先开发一个独立的轻量H5页面,接入对应地图服务的JS SDK,完成位置选点、坐标与地址解析的核心逻辑
  • 聊天机器人侧仅需要发送带跳转按钮的富卡片,唤起这个H5页面即可,不需要适配平台的原生组件规则
  • 用户选点完成后,页面通过对应平台的消息回调接口,把坐标、详细地址等信息回传给当前会话,机器人即可获取到选中的位置数据

如果你的机器人是嵌入在Web/APP原生页面内,还可以用更简单的方案:前端监听机器人发送的特定触发标识,直接唤起页面内置的地图选择组件,选点完成后把位置数据作为用户消息发送给机器人,不需要做跨页面的回调适配


各平台适配要点

Azure Bot Framework Composer

  • 使用 Adaptive Cards 的 Action.OpenUrl 按钮指向你开发的地图H5页面即可完成触发
  • 位置数据回传可通过 Bot Framework 提供的 Direct Line API 推回当前会话,不需要修改Composer的原有配置

AWS Lex

  • 在Lex控制台配置自定义响应卡片,添加URL跳转按钮指向地图H5页面
  • 选点完成后调用Lex的 PostContent / PostText 接口,把位置参数作为用户输入写入对应会话槽位即可

Google Dialogflow

  • 通过自定义有效载荷(Custom Payload)生成带跳转按钮的富消息,唤起地图H5
  • 位置回传调用Dialogflow的 detectIntent 接口传递位置参数即可完成数据同步

示例触发卡片代码(适用于Azure Bot Framework)

{
  "type": "AdaptiveCard",
  "version": "1.0",
  "body": [
    {
      "type": "TextBlock",
      "text": "请选择您需要的精确位置",
      "size": "medium"
    }
  ],
  "actions": [
    {
      "type": "Action.OpenUrl",
      "title": "点击打开地图选点",
      "url": "替换为你的地图H5页面地址"
    }
  ]
}

内容的提问来源于stack exchange,提问作者vhmoura

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 16:45:03