Facebook Messenger API 发件人姓名不可用
Facebook messenger API sender name not available
我有一个使用 Facebook Messenger 的机器人 API/webhook。
当 Facebook 发送消息时,发件人只设置了 ID,没有设置名称。
所以我尝试使用图 API 使用
获取名称
https://graph.facebook.com/v2.6/<sender-id>?fields=first_name,last_name&access_token=<page-token>
它给你的发件人 ID 似乎不是真实的 ID,所以使用你的应用程序令牌不起作用,但使用页面令牌似乎也不是一直有效。
从我的日志中,我看到它在某些时候有效,而在其他时候则无效。
我收到错误,
(#100) No matching user found
我唯一的猜测是,如果它是一个较旧的对话,它给你的 id 在某处已经过期,所以你无法获取名字?
还有其他人遇到这个问题,或者找到解决办法了吗?
好的,明白了,是用户错误。
问题是我在测试该页面时将另一个应用程序链接到该页面,但我没有删除 webhook。所以 webhook 被调用了两次,其中一个由于其他原因有一个错误的令牌。
无论如何从其他应用程序中删除 webhook 解决了这个问题。
我有一个使用 Facebook Messenger 的机器人 API/webhook。 当 Facebook 发送消息时,发件人只设置了 ID,没有设置名称。
所以我尝试使用图 API 使用
获取名称https://graph.facebook.com/v2.6/<sender-id>?fields=first_name,last_name&access_token=<page-token>
它给你的发件人 ID 似乎不是真实的 ID,所以使用你的应用程序令牌不起作用,但使用页面令牌似乎也不是一直有效。
从我的日志中,我看到它在某些时候有效,而在其他时候则无效。 我收到错误,
(#100) No matching user found
我唯一的猜测是,如果它是一个较旧的对话,它给你的 id 在某处已经过期,所以你无法获取名字?
还有其他人遇到这个问题,或者找到解决办法了吗?
好的,明白了,是用户错误。
问题是我在测试该页面时将另一个应用程序链接到该页面,但我没有删除 webhook。所以 webhook 被调用了两次,其中一个由于其他原因有一个错误的令牌。
无论如何从其他应用程序中删除 webhook 解决了这个问题。