我正在尝试开发一个Facebook应用程序,以便它将检索用户信息,如果我需要,我可以使用java使用xmpp / smack api与用户聊天。
我已成功使用原始身份证发送Facebook聊天。
例如:
对于用户facebook.com/xxxxxxxxx,原始ID为" 10000xxxxxxxxxx" 。(我们可以使用graph.facebook.com/xxxxxxx获得),我们可以通过以下方式与用户聊天:-10000xxxxxxxxx@chat.facebook.com
但问题是,通过使用Facebook应用程序,我们无法获得用户的原始ID。从2014年4月30日之后创建的Facebook应用程序中,即使用户允许访问其原始数据,我们也无法从Facebook应用程序中获取原始用户ID。
请参阅facebook文档:
developers.facebook.com/docs/apps/upgrading
[ 1.应用范围的用户ID
当人们第一次登录时,Facebook将开始发布应用范围的用户ID 进入针对API的v2.0编码的应用程序实例。同 应用范围的ID,同一用户的ID之间会有所不同 应用
那么即使我们获得用户的同意聊天,如何使用app scoped Id与facebook用户聊天?
对于用户" 10000xxxxxxxxx"我得到应用程序作用域ID" 764965xxxxxxxxxx"。
这些是用户接受我的聊天请求时获得的JSON数据。
{ "id": "7649xxxxxxx", "bio": "....", "email": "xxxxxxxxx\u0040gmail.com", "first_name": "xxxxxxxxxxx", "gender": "male", "last_name": "xxxxxxxx", "link": "facebook.com/app_scoped_user_id/7649xxxxxxxx/", "locale": "en_US", "name": "xxxxxxxxxxx", "timezone": 5.5, "updated_time": "2014-06-07T06:49:04+0000", "verified": true }
请帮我一个忙,并提出解决方案,以便与应用范围内的ID进行聊天(我不会违反facebook条款,我会通知用户并获得他的许可,我会获得用户信息)。
提前致谢,