Envoyer un message sur Facebook
Vous pouvez ensuite utiliser l'API Messages pour répondre au message entrant reçu de l'utilisateur Facebook.
Dans l'exemple ci-dessous, remplacez les variables suivantes par des valeurs réelles :
| Clé | Description |
|---|---|
FB_SENDER_ID |
Votre ID de page. L'identifiant FB_SENDER_ID est la même que celle de la to.id que vous avez reçue dans l'événement de messagerie entrante sur votre URL Inbound Message Webhook. |
FB_RECIPIENT_ID |
Le PSID de l'utilisateur auquel vous souhaitez répondre. Le PSID de l'utilisateur auquel vous voulez répondre. FB_RECIPIENT_ID est le PSID de l'utilisateur Facebook auquel vous envoyez un message. Cette valeur est la from.id que vous avez reçue dans l'événement de messagerie entrante sur votre URL Inbound Message Webhook. |
Exemple
Rédiger le code
Ajouter ce qui suit à send-text.sh:
curl -X POST "${MESSAGES_API_URL}" \
-H "Authorization: Bearer "$JWT\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d $'{
"to": "'${MESSENGER_RECIPIENT_ID}'",
"from": "'${MESSENGER_SENDER_ID}'",
"channel": "messenger",
"message_type": "text",
"text": "This is a Facebook Messenger text message sent using the Vonage Messages API."
}'
Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
npm install @vonage/server-sdk @vonage/messagesCréez un fichier nommé send-text.js et ajoutez le code suivant :
const { Vonage } = require('@vonage/server-sdk');
const { Channels } = require('@vonage/messages');
/**
* It is best to send messages using JWT instead of basic auth. If you leave out
* apiKey and apiSecret, the messages SDK will send requests using JWT tokens
*
* @link https://developer.vonage.com/en/messages/technical-details#authentication
*/
const vonage = new Vonage(
{
applicationId: VONAGE_APPLICATION_ID,
privateKey: VONAGE_PRIVATE_KEY,
},
{
...(MESSAGES_API_URL ? {apiHost: MESSAGES_API_URL} : {}),
},
);Rédiger le code
Ajouter ce qui suit à send-text.js:
vonage.messages.send({
messageType: 'text',
channel: Channels.MESSENGER,
text: 'This is a Facebook Messenger text message sent using the Messages API',
to: MESSENGER_RECIPIENT_ID,
from: MESSENGER_SENDER_ID,
})
.then(({ messageUUID }) => console.log(messageUUID))
.catch((error) => console.error(error));Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
Ajouter ce qui suit à build.gradle:
implementation 'com.vonage:server-sdk-kotlin:2.1.1'Créez un fichier nommé SendMessengerText et ajoutez le code suivant à la méthode main:
val client = Vonage {
applicationId(VONAGE_APPLICATION_ID)
privateKeyPath(VONAGE_PRIVATE_KEY_PATH)
}Rédiger le code
Ajouter ce qui suit à la méthode main du fichier SendMessengerText:
val messageId = client.messages.send(
messengerText {
to(MESSENGER_SENDER_ID)
from(MESSENGER_RECIPIENT_ID)
text("This is a Facebook Messenger text message sent using the Messages API")
}
)Exécutez votre code
Nous pouvons utiliser le plugin application pour Gradle afin de simplifier l'exécution de notre application. Mettez à jour votre build.gradle avec ce qui suit :
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Lancez la commande suivante gradle pour exécuter votre application, en remplaçant com.vonage.quickstart.kt.messages.messenger par le paquet contenant SendMessengerText:
Conditions préalables
Ajouter ce qui suit à build.gradle:
implementation 'com.vonage:server-sdk:9.3.1'Créez un fichier nommé SendMessengerText et ajoutez le code suivant à la méthode main:
VonageClient client = VonageClient.builder()
.applicationId(VONAGE_APPLICATION_ID)
.privateKeyPath(VONAGE_PRIVATE_KEY_PATH)
.build();Rédiger le code
Ajouter ce qui suit à la méthode main du fichier SendMessengerText:
var response = client.getMessagesClient().sendMessage(
MessengerTextRequest.builder()
.from(MESSENGER_SENDER_ID)
.to(MESSENGER_RECIPIENT_ID)
.text("This is a Facebook Messenger Message sent from the Messages API")
.build()
);
System.out.println("Message sent successfully. ID: "+response.getMessageUuid());Exécutez votre code
Nous pouvons utiliser le plugin application pour Gradle afin de simplifier l'exécution de notre application. Mettez à jour votre build.gradle avec ce qui suit :
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Lancez la commande suivante gradle pour exécuter votre application, en remplaçant com.vonage.quickstart.messages.messenger par le paquet contenant SendMessengerText:
Conditions préalables
Install-Package VonageRédiger le code
Ajouter ce qui suit à SendMessengerText.cs:
var credentials = Credentials.FromAppIdAndPrivateKeyPath(VONAGE_APPLICATION_ID, VONAGE_PRIVATE_KEY_PATH);
var vonageClient = new VonageClient(credentials);
var request = new MessengerTextRequest
{
To = MESSENGER_RECIPIENT_ID,
From = MESSENGER_SENDER_ID,
Text = "This is a Facebook Messenger Message sent from the Messages API"
};
var response = await vonageClient.MessagesClient.SendAsync(request);Conditions préalables
composer require vonage/clientCréez un fichier nommé send-text.php et ajoutez le code suivant :
$keypair = new \Vonage\Client\Credentials\Keypair(
file_get_contents(VONAGE_APPLICATION_PRIVATE_KEY_PATH),
VONAGE_APPLICATION_ID
);
$client = new \Vonage\Client($keypair);Rédiger le code
Ajouter ce qui suit à send-text.php:
$message = new \Vonage\Messages\Channel\Messenger\MessengerText(
TO_NUMBER,
FROM_NUMBER,
'This is a text message sent using the Vonage PHP SDK'
);
$client->messages()->send($message);Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
pip install vonage python-dotenvRédiger le code
Ajouter ce qui suit à send-text.py:
from vonage import Auth, Vonage
from vonage_messages import MessengerText
client = Vonage(
Auth(
application_id=VONAGE_APPLICATION_ID,
private_key=VONAGE_PRIVATE_KEY,
)
)
message = MessengerText(
to=MESSENGER_RECIPIENT_ID,
from_=MESSENGER_SENDER_ID,
text='Hello from the Vonage Messages API.',
)
try:
response = client.messages.send(message)
print(response)
except Exception as e:
print(e)
print(client.http_client.last_request.url)Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
gem install vonageCréez un fichier nommé send-text.rb et ajoutez le code suivant :
client = Vonage::Client.new(
application_id: VONAGE_APPLICATION_ID,
private_key: VONAGE_PRIVATE_KEY
)Rédiger le code
Ajouter ce qui suit à send-text.rb:
message = client.messaging.messenger(
type: 'text',
message: "This is a Facebook Messenger text message sent using the Vonage Messages API"
)
client.messaging.send(
from: MESSENGER_SENDER_ID,
to: MESSENGER_RECIPIENT_ID,
**message
)Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
TIP : Si vous testez avec Curl, vous aurez besoin d'un JWT. Vous pouvez voir comment en créer un dans la documentation de créer un JWT.
Envoi d'un message Facebook Messenger
L'API Messages permet d'envoyer des messages à différents canaux, notamment Facebook Messenger, SMS, WhatsApp et Viber. Cette tâche porte sur l'utilisation de l'API Messages pour envoyer un message à Facebook Messenger.