我正在尝试实现与Dropbox上的共享功能类似的功能,允许您向Facebook好友发送邀请。
您需要登录/创建一个帐户并拥有一个共享文件夹才能看到它。
这个功能只展示了一个Facebook对话,它给了它应用程序的权限 - 我不知道它是如何设法发送私信 - 从我做过的研究中我甚至不可能,其次,我不知道如何在不使用Facebook对话的情况下实现它 - 它使用它自己的模态框。
到目前为止,我已经设法将Facebook好友列表拉入jquery ui自动完成,但现在不知道如何将私人消息发送给选定的朋友,因为我有他们的身份。
我能想到如何做到这一点的唯一方法是通过id@facebook.com向用户发送电子邮件,但不知道如何将图像,描述,链接等附加到正常的墙上/时间表帖子。
我希望这里的一些Facebook专家可以提供他们的想法和意见吗?
答案 0 :(得分:4)
我所知道的唯一方法是让应用向非应用用户发送私信,方法是Chat API。 为此你需要要求" xmpp_login"其中:
提供与Facebook Chat集成的应用程序 登录用户
如果你有,你可以成为用户的xmpp客户端,从用户朋友那里获得状态更新(并且你可以知道用户的哪些朋友在线),你可以发送代表用户发送给朋友的消息,但在这里,facebook要求消息来自用户,这可能是保管箱中的模态对话框。
这个api不是一个简单的API,因为它需要你的应用程序有一个xmpp客户端。 有一些客户端实现(flash甚至js clients)但我没有相关经验,另一方面我可以从经验告诉你,每个登录客户端管理xmpp可能很棘手,所以尽量避免它,除非你真的需要它。
您可以删除Facebook中Dropbox的应用程序然后重新添加,然后您将看到权限是什么,看看他们是否真的要求" xmpp_login"如果没有,请告诉我他们要求的内容。
你让我很好奇,所以我自己尝试了,而你是对的,他们并没有要求" xmpp_login"权限,仅限" offline_access"和" publish_stream"。
我无法解释他们是如何解决这个问题的,他们不会在客户端做到这一点,我可以看到请求发送到他们的服务器。 我最好的猜测是他们拥有facebook的特权,我知道他们会与一些公司合作。
如果我对此感到满意,那么有两种选择:使用发送对话框或使用聊天API。
答案 1 :(得分:1)
在Dropbox中,他们使用他们的Facebook电子邮件地址向特定用户发送电子邮件(eg.username@facebook.com)
您可以在Facebook常规帐户设置中查看此电子邮件地址。你可以在下面看到这个说明:
“您的Facebook电子邮件基于您的公共用户名。发送到此地址的电子邮件将发送到Facebook消息。”
您只需要检索用户的电子邮件ID和他们朋友的用户名....
你也可以发送附件...... !!