如何利用 wit.ai 的 facebook messenger 中的导航模板?
在 wit ai 中,我使用结构化消息创建了一个功能齐全的机器人。
我遇到的问题是,当我将机智人工智能机器人连接到 Facebook 时,结构化消息不会消失。
有什么办法可以解决吗?
如何利用 wit.ai 的 facebook messenger 中的导航模板?
在 wit ai 中,我使用结构化消息创建了一个功能齐全的机器人。
我遇到的问题是,当我将机智人工智能机器人连接到 Facebook 时,结构化消息不会消失。
有什么办法可以解决吗?
我正在根据您使用的库添加一些自定义答案:
在您使用的库中更改https://github.com/hunkim/Wit-Facebook/blob/master/facebook.js文件并且是函数 fbMessage
检查 msg.quickreplies 是否存在,如果存在则进行处理并使其与 facebook 兼容格式,就像我在上面的 ruby 代码中所做的那样。
发布该更改
message: {
text: msg,
},
至
message: {
text: msg,
quick_replies: object_you_created
}
发送消息时,您必须将结构化消息的元素发送到 Facebook。Wit.ai 将在响应对象中设置结构化元素,您有责任将其传递给 facebook 发送 api。
例如,对于快速回复 wit.ai 将其作为 response['quickreplies'] 发送,您必须访问它并将其作为包含关键 quick_replies 和额外元素的数组发送到 facebook
def send_text_fb_message_with_quickreplies(recipientId, msg, quickreplies)
qr = []
quickreplies.each do |i|
reply_hash = {}
reply_hash['content_type'] = 'text'
reply_hash['title'] = i
reply_hash['payload'] = i
qr.push(reply_hash)
end
Bot.deliver(
recipient: {
id: recipientId
},
message: {
text: msg,
quick_replies: qr
}
)
end
send_text_fb_message_with_quickreplies(request['sender_id'], response['text'], response['quickreplies'])
使用类似的代码,您可以将快速回复从 wit.ai 转换为 facebook 兼容的快速回复