2010-02-26 2 views
1

J'essaye d'envoyer un email via l'API Facebook. J'ai ajouté l'application et lui ai donné l'autorisation étendue de courrier électronique. J'ai suivi les instructions à http://wiki.developers.facebook.com/index.php/Notifications.sendEmail et je utilise leur exemple de code (mais avec userids correct à la place de ceux qu'ils liste):J'ai des difficultés avec Notifications.sendEmail de l'API Facebook en utilisant PHP

$uids = array(12345,67890,13579); 
$csv = implode(",", $uids); 
$result=$facebook->api_client->notifications_sendEmail($csv,"Test: this should appear in the subject", "This should appear in the body (plain text)", "Test: <b><i><u>this should appear in the body</u></i></b> (HTML)"); 
echo "sent to $result targets of ". count(str_getcsv("$csv",",")) . "total."; 

L'appel api retourne pas d'erreur, mais $ résultat est vide indiquant aucun des emails ont été envoyés (confirmé par le vide de ma boîte de réception). J'ai essayé ceci dans et hors du mode bac à sable. Demander Facebook pour contact_email, proxied_email et email, tous retournent des résultats corrects. Si vous tentez d'envoyer un e-mail à l'adresse renvoyée par proxied_email, aucun e-mail ne sera reçu.

J'ai également essayé d'envoyer des notifications normales et d'ajouter des éléments d'actualité au tableau de bord, les deux fonctionnent sans problème. Je ne suis pas sûr du paramétrage de l'application ou de la configuration qui me manque. Toutes les suggestions pour le dépannage seraient très appréciées.

+0

Avez-vous connecté en premier? FB a besoin d'une session pour utiliser l'API. –

+0

Je suis connecté avec une session au moment où j'essaye de faire l'appel, bien que cet appel api particulier ne l'exige pas pour les applications Web à ma compréhension. Il devrait juste avoir besoin de l'application secrète. À partir du lien ci-dessus "Remarque: Une clé de session est toujours requise pour les applications de bureau, elle n'est jamais requise pour les applications Web." – LogicWolfe

Répondre

2

Facebook est en train d'abandonner la possibilité d'envoyer des emails via un appel d'API le 1er mars. Pour compenser, ils permettent aux applications de demander directement l'adresse e-mail d'un utilisateur. Si vous définissez le domaine de messagerie dans les paramètres de votre application, le fait de demander l'autorisation étendue de courrier électronique vous permet d'envoyer l'adresse e-mail de l'utilisateur plutôt que d'envoyer un e-mail via l'API.

À partir du 1er mars, l'API cessera de fonctionner et vous serez laissé seul pour trouver votre propre solution de messagerie. Cela vaut pour les notifications régulières, à la fois utilisateur à utilisateur et application à utilisateur, ainsi

+0

Etes-vous sûr que c'est le cas? Je suis conscient qu'ils sont en train de quitter les notifications, mais je ne savais pas qu'ils supprimeraient également la possibilité d'envoyer des emails via l'API. http://wiki.developers.facebook.com/index.php/Notifications.send indique que Notifications.send est obsolète mais que http://wiki.developers.facebook.com/index.php/Notifications.sendEmail ne contient pas avertissement pour Notifications.sendEmail. – LogicWolfe

+0

http://forum.developers.facebook.com/viewtopic.php?pid=200634 fourni plus d'informations à ce sujet. On dirait que vous avez raison même si cela ne semble pas être bien documenté. Merci de me sortir du mauvais cap. – LogicWolfe

Questions connexes