Ich muss über Facebook die Benutzerinformationen verbinden und eine private Nachricht an alle seine Freunde senden. Ist es möglich?
Ich muss über Facebook die Benutzerinformationen verbinden und eine private Nachricht an alle seine Freunde senden. Ist es möglich?
Antworten:
Das Senden einer privaten Nachricht über die API ist jetzt möglich.
Dieses Ereignis zum Senden einer Nachricht auslösen (die Initialisierung des Facebook-Objekts sollte vorher erfolgen).
to:user
ID von Facebook
function facebook_send_message(to) {
FB.ui({
app_id:'xxxxxxxx',
method: 'send',
name: "sdfds jj jjjsdj j j ",
link: 'https://apps.facebook.com/xxxxxxxaxsa',
to:to,
description:'sdf sdf sfddsfdd s d fsf s '
});
}
Eigenschaften
app_id
Die Kennung Ihrer Anwendung. Erforderlich, wird jedoch von den meisten SDKs automatisch angegeben.
redirect_uri
Die URL, zu der umgeleitet werden soll, nachdem der Benutzer im Dialogfeld auf die Schaltflächen Senden oder Abbrechen geklickt hat. Erforderlich, wird jedoch von den meisten SDKs automatisch angegeben.
display
Der Anzeigemodus, in dem der Dialog gerendert werden soll. Dies wird von den meisten SDKs automatisch angegeben.
an
Eine Benutzer-ID oder ein Benutzername, an den die Nachricht gesendet werden soll. Sobald der Dialog angezeigt wird, kann der Benutzer zusätzliche Benutzer, Facebook-Gruppen und E-Mail-Adressen angeben, an die die Nachricht gesendet werden soll. Wenn Sie Inhalte an eine Facebook-Gruppe senden, werden diese an der Pinnwand der Gruppe veröffentlicht.
Link
(erforderlich) Der Link, der in der Nachricht gesendet werden soll.
Bild
Standardmäßig wird ein Bild über den angegebenen Link aufgenommen. Die URL eines Bildes, das in die Nachricht aufgenommen werden soll. Das Bild wird neben dem Link angezeigt.
name Standardmäßig wird ein Titel von dem angegebenen Link übernommen. Der Name des Links, dh der anzuzeigende Text, auf den der Benutzer klicken wird.
Beschreibung
Standardmäßig wird eine Beschreibung von dem angegebenen Link übernommen. Beschreibender Text, der unter dem Link angezeigt wird.
Sehen Sie hier mehr
@VishwaKumar:
Zum Senden von Nachrichten mit benutzerdefiniertem Text müssen Sie den Parameter 'message' hinzufügen FB.ui
, aber ich denke, diese Funktion ist veraltet. Sie können die Nachricht nicht mehr vorab ausfüllen. Aber versuchen Sie es einmal.
FB.ui({
method: 'send',
to: '1234',
message: 'A request especially for one person.',
data: 'tracking information for the user'
});
Siehe diesen Link: http://fbdevwiki.com/wiki/FB.ui
Nein, das ist nicht möglich. Damit Sie Nachrichten jeglicher Art an einen Facebook-Benutzer senden können, benötigen Sie die Erlaubnis dieses Benutzers.
Wenn sich jemand mit Facebook Connect auf Ihrer Website anmeldet, erklärt er sich ausdrücklich damit einverstanden, seine Facebook-Daten mit Ihrer Website zu teilen. Anschließend können Sie dieser Person eine Nachricht über die normalen Kanäle senden . Sie könnten auch ihre Freundesliste abrufen. Sie können jedoch keine Nachrichten an die Freunde senden.
Dies ist derzeit nicht möglich, aber es gibt eine Problemumgehung. Sie können mit dem Benutzer im öffentlichen Bereich in Kontakt treten und ihn bitten, Ihnen private Nachrichten zu senden. Sie können jedoch keine privaten Nachrichten zurücksenden, sondern nur öffentliche. Dies hängt natürlich alles davon ab, ob der Benutzer Ihnen die richtigen Berechtigungen erteilt.
Wenn Sie die Berechtigung zum Zugriff auf die Freunde einer Person erteilt haben, können Sie theoretisch auf dieser Benutzerwand Verweise auf jeden einzelnen Freund veröffentlichen und ihn bitten, öffentlich mit Ihnen zu interagieren und Sie dann möglicherweise privat zu benachrichtigen.
Freunde finden
#if authenticated
https://graph.facebook.com/me/friends
http://developers.facebook.com/docs/reference/api/user/
Post in der Public Domain
http://developers.facebook.com/docs/reference/api/status/
Nachrichten an diesen Benutzer senden lassen (sofern eine Berechtigung erteilt wurde)
http://developers.facebook.com/docs/reference/api/message/
Sie können die Facebook-Chat-API verwenden, um private Nachrichten zu senden. Hier ist ein Beispiel in Ruby mit xmpp4r_facebook
gem:
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
Eine Problemumgehung ist die Verwendung der neuen E-Mail-Adresse @ facebook.com. Dies hat einige Nachteile:
1) Nicht jeder (zum Zeitpunkt dieser Veröffentlichung) hat die neue Nachrichtenanwendung in seinem Konto aktiviert.
2) Nicht jeder hat seine @ facebook.com-E-Mail in seiner Nachrichten-App eingerichtet.
3) Nicht jeder wählt seinen Benutzernamen (wenn er überhaupt einen Facebook-Benutzernamen hat) als E-Mail-Adresse.
Für mobile Anwendungen habe ich eine Lösung gefunden, indem ich Javascript in die Dialogansicht eingefügt habe. In meiner iOS-App befindet sich eine versteckte Webansicht. Das lade die fb message send dialog api .. dann füge ich etwas Javascript ein, um die Felder "to" und "message" zu setzen und das Formular zu senden .. Damit der Endbenutzer nichts tun muss. Nachricht still an Facebook-Posteingang gesendet ...
Es gibt keine Grafik-API dafür, Sie müssen Facebook xmpp Chat-API verwenden, um die Nachricht zu senden. Eine gute Nachricht ist: Ich habe eine PHP-Klasse erstellt, die zu einfach zu verwenden ist. Rufen Sie eine Funktion auf und die Nachricht wird gesendet Open Source, check it out: Facebook-Nachricht api php die Beschreibung sagt, es ist eine Closed Source, aber die wurde später Open Source gemacht, siehe den ersten Kommentar, können Sie von Github klonen. Es ist jetzt eine Open Source.
In diesem Thread heißt es, dass Sie keine privaten Nachrichten an eine Gruppe von Freunden auf Facebook senden können, aber ich habe diese https://developers.facebook.com/docs/sharing/reference/send-dialog gefunden