Я пытаюсь определить «полезную нагрузку» в Ruby для моего бот-сервера Facebook. Моим вариантом использования является то, когда пользователь видит структурированный контент (рассказ с кнопкой), и они нажимают кнопку, вместо того, чтобы отправлять их на URL-адрес, я хочу поразить свой веб-сайт и вернуть более структурированный контент.Определить Payload Facebook Messenger Ruby
Итак, я пробовал несколько итераций этого и не уверен, где я сработал. Я начал, добавив событие обмена сообщениями:
messaging_event["entry"].first["messaging"].each do |msg|
puts msg
sender = msg["sender"]["id"]
if msg["message"] && msg["message"]["text"]
payload = msg["message"][“payload”]
я сделал что-то очень похожее на добавление текста, который был:
post '/webhook/' do
messaging_event = JSON.parse(request.body.read)
puts messaging_event
messaging_event["entry"].first["messaging"].each do |msg|
puts msg
sender = msg["sender"]["id"]
if msg["message"] && msg["message"]["text"]
text = msg["message"]["text"]
puts "Sender ID: #{sender}, Text: #{text}"
Таким образом, на данный момент, я не уверен, что мне нужно для дальнейшего DEF полезной нагрузки, как:
def payload(sender, payload)
data = {
recipient: { id: sender },
message: payload
}
send_message(data)
end
Или, если я просто нужно создать переменную и вызвать эту переменную в моем объекте модуля, как:
module Messages
SIMPLE_ONE_BUTTON_PAYLOAD = {
"attachment":{
"type":"template",
"payload":{
"template_type":"button",
"text":"Here's a simple button message",
"buttons":[
"type":"postback",
"title":"Button One",
"payload":"[variable I need to call]",
]
}
}
}
end
Итак, здесь есть две вещи: нужно ли мне событие обмена полезной нагрузкой и определить полезную нагрузку и что мне нужно для вызова внутри объекта? Любые мысли или отзывы здесь были бы очень полезными. Заранее спасибо!
Не уверен, что я слишком поздно, но я создал драгоценный камень для обработки этих прецедентов: https://github.com/tinkerbox/message_quickly – Jaryl