有人可以向我解释一下 facebook 聊天机器人按钮元素中的“有效负载”字段是什么吗?我是机器人开发的新手。如果你也能提供一个例子,那就太好了。
问问题
2202 次
1 回答
1
'payload' 字段是用户定义的字段,使您能够在收到带有此有效负载的回发时调用操作。
例如; 如果我在我的机器人中创建一个包含 2 个按钮的持久菜单:“主页”和“联系人”,并且每个按钮的有效负载都与按钮的名称相同。当用户单击“主页”按钮时,将使用有效负载“主页”发送回发。在这种情况下,您可以创建一个操作,将用户带到机器人的“主页”部分。
有关回发和有效负载的更多信息,请访问: https ://developers.facebook.com/docs/messenger-platform/send-api-reference/postback-button https://developers.facebook.com/docs/messenger-platform /webhook-reference/postback-received
确保在处理回发的主“post”函数中创建一个函数。下面的代码来自 Python 中的机器人教程
# Post function to handle facebook messages
def post(self, request, *args, **kwargs):
# converts the text payload into a python dictionary
incoming_message = json.loads(self.request.body.decode('utf-8'))
# facebook recommends going through every entry since they might send
# multiple messages in a single call during high load
for entry in incoming_message['entry']:
for message in entry['messaging']:
# check to make sure the received call is a message call
# this might be delivery, optin, postback for other events
if 'message' in message:
pprint(message)
### add here the rest of the code that will be handled when the bot receives a message ###
if 'postback' in message:
# print the message in terminal
pprint(message)
### add here the rest of the code that will be handled when the bot receives a postback ###
于 2016-10-20T13:59:55.293 回答