我使用私人回复API调用将Messenger中的消息发送给在Facebook帖子上发表评论的人。如果the doc说我应该返回消息id和user_id,我只会得到消息id作为响应:
body:'{“id”:“m_ZpLkUdJGAoJ9WCpeROAvWJaHycesSPGVPmoNH0SXTUB8WYqRqHl0ru0y3mniMP3q7YL9rl1lfuQr0x9fyNP
这是我在ruby中的API调用代码:
url = "https://graph.facebook.com/v3.1/" + @comment_id + "/private_replies?message=" + @trigger_message + "&access_token=" + @page_access_token
uri = URI.parse(url)
https = Net::HTTP.new(uri.host,uri.port)
https.use_ssl = true
request = Net::HTTP::Post.new(uri, initheader = {'Content-Type' =>'application/json'})
resp = https.request(request)
为什么我没有得到user_id?
Facebook私人回复API应该返回App范围ID或ASID,虽然发布了新的应用验证或大约那个时间,他们已经停止将ASID提供给私人回复API - 很可能是因为他们正朝着返回页面范围ID或PSID(PSID Migration) )
虽然你仍然可以从以下任何一个获得ASID:
一个。可以提供评论ID的webhook,它应该提供ASID作为sender_id 湾来自解析注释ID的字段。这用于解析单个注释节点,您可以找到更多信息here
请记住ASID到PSID迁移......