使用FbGraph API进行私人消息传递

时间:2011-08-04 10:45:59

标签: ruby-on-rails facebook facebook-graph-api

HIII 我是fbgraph api的新用户。 我想使用该api向我的朋友发送私信。我见过一些使用facebook messaging api发送消息的网站。 我能用同样的东西吗?或者有没有其他方法可以发送私信? 有没有限制? 请指导我这个。 谢谢

4 个答案:

答案 0 :(得分:2)

您无法使用Graph API发送私信,但您可以使用发送对话框:

http://developers.facebook.com/docs/reference/dialogs/send/

答案 1 :(得分:2)

您可以使用Facebook Chat API发送私信,以下是使用xmpp4r_facebook gem的Ruby中的示例:

sender_chat_id = "-#{sender_uid}@chat.facebook.com"
receiver_chat_id = "-#{receiver_uid}@chat.facebook.com"
message_body = "message body"
message_subject = "message subject"

jabber_message = Jabber::Message.new(receiver_chat_id, message_body)
jabber_message.subject = message_subject

client = Jabber::Client.new(Jabber::JID.new(sender_chat_id))
client.connect
client.auth_sasl(Jabber::SASL::XFacebookPlatform.new(client,
   ENV.fetch('FACEBOOK_APP_ID'), facebook_auth.token,
   ENV.fetch('FACEBOOK_APP_SECRET')), nil)
client.send(jabber_message)
client.close

答案 2 :(得分:0)

我尝试了xmpp4r_facebook gem / Jabber方法,它运行正常。

问题是,如果您发送一个链接到您的网站并且它包含Open Graph元标记信息,它们就不会被加载,因此您有一个漂亮的徽标和共享消息,例如:

<meta property="fb:app_id" content="1234567890"/>
<meta property="og:title" content="GreatApp"/>
<meta property="og:type" content="website"/>
<meta property="og:url" content="http://greatapp.com"/>
<meta property="og:image" content="http://greatapp.com/logo.jpg"/>
<meta property="og:site_name" content="GreatApp"/>
<meta property="og:description" content="The Greatest App Ever"/>

当你手动或通过方法通过Facebook聊天手动使用Facebook发送私人消息UI时,会加载此内容                              在上面,没有考虑这些信息,这会破坏发送邀请的整个用户体验。

我会尝试其他方法。

答案 3 :(得分:0)