Messenger Bot en PHP: Pas de réponse Retour

voix
2

Je suis en train de construire un bot messager de test en PHP. Mon crochet Web obtient la configuration parfaitement et même l'abonnement page est fait correctement. Cependant, mon bot ne répond à aucun texte dans le messager. J'ai essayé de changer ID d'application, ID de page, juste pour se assurer en cas de problèmes avec tout cela. J'ai aussi essayé diverses méthodes , y compris boucle de base comme indiqué ici: Facebook chat bot (PHP webhook) envoyer plusieurs réponses

et essayé 2 différentes bibliothèques php: https://github.com/Fritak/messenger-platform https://github.com/pimax/fb-messenger-php

Je reçois aucune erreur PHP, le défi est toujours un succès à la fin de Facebook. Mon certificat SSL est très bien, mais je ne peux pas obtenir le répondre bot.

Toute aide à ce sujet sera grandement appréciée.

Créé 15/04/2016 à 21:46
source utilisateur
Dans d'autres langues...                            


5 réponses

voix
0

Vous devez envoyer une réponse par vous - même lorsque vous messages reciving (voir la documentation ).

Je ne sais pas comment vous le faire pour API Pimax, désolé, mais pour mon API , vous pouvez le faire de cette façon:

// Messenger is calling your URL, someone is sending a message...
$messages = $bot->getMessagesReceived();

// Now you need an ID
$userToSendMessage = $messages[0]->messaging[0]->sender->id;

// Send answer
$bot->sendMessage($userToSendMessage, 'Hi!');
Créé 15/04/2016 à 22:20
source utilisateur

voix
1

Assurez -vous que CURL est correctement installé. Essayez cette Gist simple, https://gist.github.com/visitdigital/58c71acb123870d1ac2ec714d7536587

$challenge = $_REQUEST['hub_challenge'];
$verify_token = $_REQUEST['hub_verify_token'];

// Set this Verify Token Value on your Facebook App 
if ($verify_token === 'YOURVERIFYTOKEN') {
  echo $challenge;
}

$input = json_decode(file_get_contents('php://input'), true);

// Get the Senders Graph ID
$sender = $input['entry'][0]['messaging'][0]['sender']['id'];

// Get the returned message
$message = $input['entry'][0]['messaging'][0]['message']['text'];

//API Url and Access Token, generate this token value on your Facebook App Page

$url = 'https://graph.facebook.com/v2.6/me/messages?access_token=ACCESSTOKEN';
//Initiate cURL.
$ch = curl_init($url);
//The JSON data.
$jsonData = '{
    "recipient":{
        "id":"' . $sender . '"
    }, 
    "message":{
        "text":"The message you want to return"
    }
}';

//Tell cURL that we want to send a POST request.
curl_setopt($ch, CURLOPT_POST, 1);

//Attach our encoded JSON string to the POST fields.
curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonData);

//Set the content type to application/json
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));

//Execute the request but first check if the message is not empty.
if(!empty($input['entry'][0]['messaging'][0]['message'])){
  $result = curl_exec($ch);
}
Créé 25/04/2016 à 13:54
source utilisateur

voix
0

Pouvez-vous vérifier les choses suivantes.

  1. Vous êtes l'administrateur de cette page et que vous envoyez un message à partir du compte admin uniquement.
  2. Recevez-vous des messages envoyés par vous sur le script log ces messages dans certains fichiers pour vérifier?
  3. Sur votre compte page ne fb vous donner un avertissement comme votre page ne reçoit pas msg. Sinon, msg vous est envoyé avec succès problème réside dans votre réponse.
  4. Assurez-vous que vous avez créé un jeton lors de la création webhook est placé est correcte.
  5. Avez-vous copié le jeton généré.

plz également envoyer votre code.

Créé 18/06/2016 à 19:24
source utilisateur

voix
0

J'ai eu le même problème, la réponse était que mon serveur web a été réoriente la demande (l'ajout d'une barre oblique a été à la fin de l'URL).

Créé 11/09/2016 à 11:14
source utilisateur

voix
0

1-Verify que cURL est correctement installé sur votre ordinateur
2 essayer de l' envoyer manuellement à l' aide du code ci - dessous ce dans votre terminal, assurez - vous de mettre votre jeton d' accès et l'identifiant du destinataire. i hade le même problème que vous .Bien j'avais installé cURL dans mon ordinateur (windows) il ne serait pas envoyer la demande .Lorsque je l' ai changé pour linux il fonctionnait très bien.
Essaie.

curl -X POST -H "Content-Type: application/json" -d '{
  "recipient": {
    "id": "USER_ID"
  },
  "message": {
    "text": "hello, world!"
  }
}' "https://graph.facebook.com/v2.6/me/messages?access_token=PAGE_ACCESS_TOKEN"
Créé 18/02/2017 à 16:30
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more