Technische Details der Messages API
Mit der Messages API können Sie Nachrichten über SMS, MMS, RCS, Facebook Messenger, Viber und WhatsApp senden und in einigen Fällen auch empfangen. Weitere Kanäle werden möglicherweise in Zukunft unterstützt.
Hinweis: Die großen US-Carrier haben ihre Anforderungen für einen neuen Standard für Application-to-Person (A2P)-Nachrichten in den USA bekannt gegeben, der für alle Nachrichten über 10-stellige geografische Telefonnummern, auch bekannt als 10 DLC, gilt. Wenn Sie SMS/MMS-Verkehr von einem +1 Country Code 10 Digit Long Code in US-Netze senden oder dies planen, müssen Sie eine Marke und eine Kampagne registrieren, um eine Genehmigung für den Versand von Nachrichten zu erhalten. Siehe die 10 DLC-Dokumentation für Einzelheiten.
Das folgende Diagramm veranschaulicht, wie die Vonage Messages API es Ihnen ermöglicht, Nachrichten für den Anwendungsfall Ihrer Wahl über mehrere Kanäle von einem einzigen Endpunkt aus zu versenden; zum Beispiel könnten Sie Benachrichtigungen über WhatsApp und SMS versenden:
Unterstützte Funktionen
| Kanal | Ausgehender Text | Ausgehendes Bild | Ausgehendes Audio | Ausgehendes Video | Ausgehende Datei | Outbound-Vorlage |
|---|---|---|---|---|---|---|
| SMS | k.A. | k.A. | k.A. | k.A. | k.A. | |
| MMS | k.A. | |||||
| RCS | k.A. | k.A. | ||||
| Facebook Messenger | ||||||
| Viber Business-Nachrichten | k.A. |
| Kanal | Eingehender Text | Eingehendes Bild | Eingehendes Audio | Eingehendes Video | Eingehende Datei | Eingehender Standort |
|---|---|---|---|---|---|---|
| SMS | k.A. | k.A. | k.A. | k.A. | k.A. | |
| MMS | k.A. | |||||
| RCS | ||||||
| Facebook Messenger | ||||||
| Viber Business-Nachrichten | k.A. | k.A. |
Begrenzte Unterstützung wird auch gewährt für benutzerdefinierte Objekte:
| Kanal | Ausgehende Schaltfläche | Ausgehender Standort | Ausgehender Kontakt |
|---|---|---|---|
| SMS | k.A. | k.A. | k.A. |
| MMS | k.A. | k.A. | k.A. |
| RCS | k.A. | ||
| Facebook Messenger | k.A. | k.A. | |
| Viber Business-Nachrichten | k.A. | k.A. |
Schlüssel:
= Unterstützt. = Wird vom Sender unterstützt, aber nicht von Vonage. - n/a = wird vom Kanal nicht unterstützt.
Anmerkungen:
- Für RCS ist die
customTyp ist veraltet. Schaltflächen- und Standortmeldungen werden unterstützt als Anregung Chips intext,cardundcarouselMeldungen eingeben
Authentifizierung
Die Messages API unterstützt entweder Basis-Authentifizierung oder JWT (JSON Web Token)-Authentifizierung, aber es gibt einige wichtige Unterschiede zwischen den beiden, die Sie beachten sollten:
- Die Basisauthentifizierung verwendet ein verschlüsseltes API-Schlüssel und Geheimnisund beglaubigt am Account Ebene.
- Die JWT-Authentifizierung verwendet eine JSON-Web-Token die mit einem privaten Schlüssel und einer Anwendungs-ID erzeugt werden. JWTs unterstützen erweiterte Funktionen wie ACLs und Authentifizierung auf der Applikation Ebene, d.h. Sie können auf die Einstellungen Ihrer Vonage-Applikation zugreifen, wie z.B. auf die Anwendungs Webhaken und Sichere eingehende Medien.
Wir empfehlen, dass Sie JWT-Authentifizierung in der Produktion für die meisten Anwendungsfälle. Eine einfache Authentifizierung kann ausreichen, wenn Sie die API ausprobieren, z. B. bei der Verwendung der Messages Sandbox, oder für einige grundlegende Anwendungsfälle (z. B. wenn Webhooks nicht erforderlich sind).
Wenn Sie unser Server-SDKs um mit der Messages API zu interagieren, können diese automatisch JWTs für Sie erstellen.
Externe Accounts API
Die Externe Accounts API wird verwendet, um Ihre Konten für Viber Business Messages, Facebook Messenger und WhatsApp zu verwalten, wenn Sie diese Kanäle mit den Messages- und Dispatch-APIs nutzen.
Erste Schritte
In diesem Beispiel müssen Sie die folgenden Variablen mit einer beliebigen Methode durch aktuelle Werte ersetzen:
| Schlüssel | Beschreibung |
|---|---|
VONAGE_API_KEY | Vonage API-Schlüssel, den Sie von Ihrem Vonage API Dashboard. |
VONAGE_API_SECRET | Vonage-API-Geheimnis, das Sie von Ihrem Vonage API Dashboard. |
FROM_NUMBER | Eine eigene Telefonnummer oder ein Text zur Identifizierung des Absenders. |
TO_NUMBER | Die Nummer des Telefons, an das die Nachricht gesendet werden soll. |
HINWEIS: Verwenden Sie kein führendes + oder 00 Wenn Sie eine Telefonnummer eingeben, beginnen Sie mit der Landesvorwahl, z. B. 447700900000.
Der folgende Code zeigt, wie eine SMS-Nachricht mithilfe der Messages API gesendet wird:
Schreiben Sie den Code
Fügen Sie Folgendes zu send-sms-basic-auth.sh hinzu:
-u "${VONAGE_API_KEY}:${VONAGE_API_SECRET}" \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d $'{
"to": "'${MESSAGES_TO_NUMBER}'",
"from": "'${SMS_SENDER_ID}'",
"channel": "sms",
"message_type": "text",
"text": "This is an SMS sent using the Vonage Messages API."
}'
Führen Sie Ihren Code aus
Speichern Sie diese Datei auf Ihrem Rechner und führen Sie sie aus:
Voraussetzungen
npm install @vonage/server-sdk @vonage/messagesErstellen Sie eine Datei mit dem Namen send-sms-basic-auth.js und fügen Sie den folgenden Code hinzu:
const { Vonage } = require('@vonage/server-sdk');
const { Channels } = require('@vonage/messages');
/**
* By leaving out the applicationId and privateKey parameters, the Vonage
* SDK will use basic authentication to authenticate with the Messages API.
*
* @link https://developer.vonage.com/en/messages/technical-details#authentication
*/
const vonage = new Vonage(
{
apiKey: VONAGE_API_KEY,
apiSecret: VONAGE_API_SECRET,
},
{
...(MESSAGES_API_URL ? {apiHost: MESSAGES_API_URL} : {}),
},
);Schreiben Sie den Code
Fügen Sie Folgendes zu send-sms-basic-auth.js hinzu:
vonage.messages.send({
messageType: 'sms',
channel: Channels.SMS,
text: 'This is an SMS text message sent using the Messages API',
to: MESSAGES_TO_NUMBER,
from: SMS_SENDER_ID,
})
.then(({ messageUUID }) => console.log(messageUUID))
.catch((error) => console.error(error));Führen Sie Ihren Code aus
Speichern Sie diese Datei auf Ihrem Rechner und führen Sie sie aus: