【问题标题】:How to integrate AWS Lex Chatbots Voice to Facebook如何将 AWS Lex 聊天机器人语音集成到 Facebook
【发布时间】:2018-01-20 11:57:26
【问题描述】:
我已经使用 AWS Lex Chatbot 服务配置了我的聊天机器人。我创建聊天机器人的主要目的是将其集成到 Facebook 中,并且用户的交流应该可以通过文本和语音进行。我按照 AWS 文档中给出的步骤成功地将我的聊天机器人集成到了 Facebook。但是语音片段在 facebook 上不起作用。请向我提供将 lex 语音片段与文本一起集成到 Facebook 的任何建议或任何参考博客。
【问题讨论】:
标签:
amazon-web-services
chatbot
facebook-chatbot
amazon-lex
【解决方案1】:
Facebook Messenger 不会将 lex 响应解释为语音响应,至少现在还没有。
当从 Facebook 访问 Lex 时,收到的 event 对象将生成 requestAttributes 并在 x-amz-lex:accept-content-types 下指定接受的内容类型。
"requestAttributes": {
"x-amz-lex:accept-content-types": "PlainText"
},
如您所见,PlainText 是唯一可接受的内容类型。尽管 Lex 有 4 种受支持的消息内容类型:“PlainText”、“SSML”、“CustomPayload”和“Composite”。 See here.
来自Facebook Messenger Docs:
Messenger 平台允许您将资产附加到消息中,包括音频、视频、图像和文件。
即使 Facebook 接受音频附件,Lex 也只发送纯文本或 SSML。
Lex 在发送响应卡时确实使用了 Facebook 的消息附件,但响应卡只能具有通用类型,因此它只发送图像,而不发送音频文件。 See here.