Démarrer avec l'API SMS de Vonage
Le Short Message Service (SMS) est un service de messagerie textuelle qui utilise des protocoles de communication standardisés pour envoyer des messages textuels courts vers ou entre des appareils. Ces messages sont transmis via les réseaux cellulaires.
Les API de communication, comme l'API Messages de Vonage, vous permettent d'envoyer des SMS par programmation en effectuant une demande HTTP à un point de terminaison de l'API. Le message est ensuite transmis en aval au réseau cellulaire pour être livré à l'appareil du destinataire.
L'API Messages et l'API SMS
Il existe actuellement deux Messages API de Vonage avec lesquels vous pouvez envoyer des SMS :
- Les Messages API
- Les SMS API
Il existe certaines différences entre les deux API que vous pouvez prendre en compte lorsque vous décidez de l'utiliser.
Messages API
- L'API Messages est une API de messagerie multicanal qui prend en charge d'autres canaux de messagerie ainsi que les SMS.
- Cela inclut d'autres canaux basés sur le réseau, tels que MMS et RCS, ainsi que des canaux OTT tels que WhatsApp et Facebook Messenger.
- Tous les canaux utilisent le même point d'arrivée et la même structure de base pour les données utiles des requêtes, de sorte que plusieurs canaux peuvent être utilisés par le biais d'une seule intégration.
- L'API Messages continuera d'être améliorée avec de nouvelles fonctionnalités et la prise en charge des chaînes basées sur le réseau et des chaînes OTT
- L'API Messages fournit un webhook d'état des messages qui prend en charge les états suivants :
submitteddeliveredrejectedundeliverable
SMS API
- L'API SMS est adaptée aux cas d'utilisation à haut débit (par exemple > 500 messages/seconde) (des niveaux de débit plus élevés ne sont disponibles que sur demande).
- L'API SMS fournit Conformité HIPAA
- L'API SMS fournit Récépissés de livraison pour les segments de messages individuels (lorsqu'un long message a été divisé en plusieurs parties pour la livraison).
- L'API SMS Récépissés de livraison prennent en charge les statuts suivants :
accepteddeliveredbufferedexpiredfailedrejectedunknown
Les clients qui envoient des SMS aux États-Unis en utilisant des numéros de téléphone géographiques à 10 chiffres devront se conformer aux directives réglementaires concernant les 10 DLC. Voir notre 10 Documentation DLC pour plus d'informations.
Envoyer un SMS
Cet exemple vous montre comment envoyer un SMS au numéro de votre choix.
Cet exemple est spécifiquement destiné à être utilisé avec l'API SMS
Premièrement, s'inscrire à un compte Vonage si vous n'en avez pas déjà un, et notez votre clé d'API et votre secret dans le fichier page de démarrage du tableau de bord.
Remplacez les valeurs de remplacement suivantes dans l'exemple de code :
| Clé | Description |
|---|---|
VONAGE_API_KEY | Votre clé API Vonage. |
VONAGE_API_SECRET | Votre secret API Vonage. |
Rédiger le code
Ajouter ce qui suit à send-sms.sh:
curl -X POST https://rest.nexmo.com/sms/json \
-u "$VONAGE_API_KEY:$VONAGE_API_SECRET" \
-d "from=${SMS_SENDER_ID}" \
-d "to=${SMS_TO_NUMBER}" \
-d 'text=A text message sent using the Vonage SMS API'
Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
npm install @vonage/server-sdkCréez un fichier nommé send.js et ajoutez le code suivant :
const { Vonage } = require('@vonage/server-sdk');
const vonage = new Vonage({
apiKey: VONAGE_API_KEY,
apiSecret: VONAGE_API_SECRET,
});Rédiger le code
Ajouter ce qui suit à send.js:
vonage.sms.send({
to: SMS_TO_NUMBER,
from: SMS_SENDER_ID,
text: 'A text message sent using the Vonage SMS API',
})
.then((resp) => {
console.log('Message sent successfully');
console.log(resp);
})
.catch((err) => {
console.log('There was an error sending the messages.');
console.error(err);
});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é SendMessage et ajoutez le code suivant à la méthode main:
val client = Vonage {
apiKey(VONAGE_API_KEY)
apiSecret(VONAGE_API_SECRET)
}Rédiger le code
Ajouter ce qui suit à la méthode main du fichier SendMessage:
val response = client.sms.sendText(
from = SMS_SENDER_ID,
to = SMS_TO_NUMBER,
message = "Hello from Vonage SMS API"
)
println(
if (response.wasSuccessfullySent())
"Message sent successfully."
else
"Message failed with error: ${response[0].errorText}"
)Exécutez votre code
Nous pouvons utiliser le plugin Applications 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') : ''Exécutez la commande gradle suivante pour exécuter votre application, en remplaçant com.vonage.quickstart.kt.sms par le paquet contenant SendMessage:
Conditions préalables
Ajouter ce qui suit à build.gradle:
implementation 'com.vonage:server-sdk:9.3.1'Créez un fichier nommé SendMessage et ajoutez le code suivant à la méthode main:
VonageClient client = VonageClient.builder().apiKey(VONAGE_API_KEY).apiSecret(VONAGE_API_SECRET).build();Rédiger le code
Ajouter ce qui suit à la méthode main du fichier SendMessage:
TextMessage message = new TextMessage(
SMS_SENDER_ID, SMS_TO_NUMBER,
"A text message sent using the Vonage SMS API"
);
SmsSubmissionResponse response = client.getSmsClient().submitMessage(message);
if (response.getMessages().get(0).getStatus() == MessageStatus.OK) {
System.out.println("Message sent successfully.");
} else {
System.out.println("Message failed with error: " + response.getMessages().get(0).getErrorText());
}Exécutez votre code
Nous pouvons utiliser le plugin Applications 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') : ''Exécutez la commande gradle suivante pour exécuter votre application, en remplaçant com.vonage.quickstart.sms par le paquet contenant SendMessage:
Conditions préalables
Install-Package VonageCréez un fichier nommé SendSms.cs et ajoutez le code suivant :
using Vonage;
using Vonage.Request;Ajouter ce qui suit à SendSms.cs:
var credentials = Credentials.FromApiKeyAndSecret(
vonageApiKey,
vonageApiSecret
);
var vonageClient = new VonageClient(credentials);Rédiger le code
Ajouter ce qui suit à SendSms.cs:
var response = await vonageClient.SmsClient.SendAnSmsAsync(new Vonage.Messaging.SendSmsRequest()
{
To = SMS_TO_NUMBER,
From = SMS_SENDER_ID,
Text = "A text message sent using the Vonage SMS API"
});
Console.WriteLine(response.Messages[0].To);Conditions préalables
composer require vonage/clientCréez un fichier nommé send-sms.php et ajoutez le code suivant :
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-an-sms.py:
from vonage import Auth, Vonage
from vonage_sms import SmsMessage, SmsResponse
client = Vonage(Auth(api_key=VONAGE_API_KEY, api_secret=VONAGE_API_SECRET))
message = SmsMessage(
to=SMS_TO_NUMBER,
from_=SMS_SENDER_ID,
text="A text message sent using the Vonage SMS API.",
)
response: SmsResponse = client.sms.send(message)
print(response)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.rb et ajoutez le code suivant :
Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Dépannage
Si vous rencontrez des problèmes lors des appels à l'API, assurez-vous de vérifier les données renvoyées. champ d'état pour des codes d'erreur.
Important : Si vous êtes un client américain et que vous utilisez l'API SMS pour envoyer du trafic à partir d'un code pays +1 code long à 10 chiffres (10 DLC) vers les réseaux américains, vous devez enregistrer une marque et une campagne afin d'obtenir l'autorisation d'envoi. Une fois l'approbation obtenue, vous devez associer un numéro à la campagne. Voir l 10 Section support DLC.
Concepts de l'API SMS de Vonage
Avant d'utiliser l'API SMS de Vonage, familiarisez-vous avec ce qui suit :
Format des nombres - L'API SMS nécessite des numéros de téléphone au format E.164.
Authentification - L'API SMS s'authentifie à l'aide de la clé API et du secret de votre compte.
Crochets Web - L'API SMS envoie des requêtes HTTP au serveur web de votre application afin que vous puissiez les traiter. Par exemple : les SMS entrants et les accusés de réception.