Technische Details
HINWEIS: Dieser Abschnitt der Dokumentation beschreibt Applikationen V2 Funktionalität.
Eine Vonage API-Anwendung enthält die Sicherheits- und Konfigurationsinformationen, die Sie benötigen, um sich mit Vonage Endpunkten zu verbinden und die Vonage APIs zu nutzen.
Jede von Vonage erstellte Anwendung kann mehrere Funktionen unterstützen - so können Sie beispielsweise eine Anwendung erstellen, die die Nutzung der Voice-, Messages- und RTC-APIs unterstützt.

Zur Veranschaulichung der Verwendung von Vonage Applications wird hier eine kurze Zusammenfassung zur Erstellung und Verwendung einer Vonage Sprachanwendung gegeben:
- Erstellen Sie eine Vonage-Applikation über die CLI, das Dashboard oder die Application API.
- Stellen Sie sicher, dass Sie Ihre Webhook-URLs konfigurieren. Vonage wird Sie unter diesen URLs mit wichtigen Informationen zurückrufen.
- Verknüpfen Sie eine Vonage-Nummer mit Ihrer Vonage-Anwendung.
- Schreiben Sie Ihre Webanwendung. Implementieren Sie die Webhook-Endpunkte, die Sie in Schritt 2 konfiguriert haben, und verwenden Sie die Vonage-APIs wie erforderlich.
Wenn Sie zum Beispiel eine Anwendung erstellen möchten, die leitet eingehende Anrufe weiter auf ein Zieltelefon zu übertragen, führen Sie die folgenden Schritte aus:
- Sie erstellen eine Vonage-Anwendung, die über Sprachfunktionen verfügt.
- Sie konfigurieren die Antwort- und Ereignis-Webhook-URLs.
- Sie verknüpfen eine Vonage-Nummer mit Ihrer Vonage-Anwendung.
- Sie implementieren eine Webanwendung, die auf Rückrufe über die Webhook-URLs reagiert.
- Wenn ein eingehender Anruf an die der Vonage-Anwendung zugeordnete Vonage-Nummer getätigt wird, wird ein NCCO wird auf der Seite
answer_url.
Andere Arten von Applikationen, wie z. B. solche mit Nachrichten- und Versandfunktionen, haben einen etwas anderen Prozess, der in den entsprechenden Abschnitten dieses Dokuments beschrieben wird. Dokumentation.
In den folgenden Abschnitten werden die Applications von Vonage näher erläutert.
Struktur
Jede Anwendung hat die folgenden Merkmale:
| Name | Beschreibung |
|---|---|
id | Dient zur Identifizierung jeder Anwendung und wird in Verbindung mit private_key um JWTs zu erzeugen. |
name | Der Name der Anwendung. |
capabilities | Beschreibt die Arten von Funktionen, die diese Anwendung unterstützen wird. Die Fähigkeiten voice, messages, rtc, vbc. Es können beliebig viele dieser Funktionen in einer Anwendung unterstützt werden. Sie setzen auch webhooks für jede angegebene Fähigkeit. Vonage sendet und holt Informationen über die Webhook-Endpunkte ab. |
keys | Enthält private_key und public_key. Sie verwenden den privaten Schlüssel, um die JWTs zu generieren, die zur Authentifizierung Ihrer Anrufe bei den Vonage-APIs verwendet werden. Der öffentliche Schlüssel wird von Vonage verwendet, um das JWT in Ihren Anfragen an die Vonage API zu authentifizieren. |
Fähigkeiten
Eine Vonage-Anwendung kann verschiedene APIs nutzen, darunter Voice, Messages und Dispatch, Conversation und Client SDK.
Bei der Erstellung einer Anwendung können Sie angeben, welche Funktionen Ihre Anwendung unterstützen soll. Für jede Fähigkeit können Sie Webhooks festlegen, je nachdem, welche Fähigkeiten Sie wünschen, z. B. für eine Anwendung mit einer rtc Fähigkeit können Sie eine Ereignis-URL angeben, um RTC-Ereignisse zu empfangen. Wenn Ihre Anwendung auch die voice können Sie auch eine Antwort-URL für den Empfang eines beantworteten Anrufs, eine Fallback-URL für den Fall, dass Ihre Antwort-URL ausfällt, und eine weitere Ereignis-URL für den Empfang von Ereignissen im Zusammenhang mit Sprachanrufen festlegen.
Eine Zusammenfassung der Fähigkeiten ist in der folgenden Tabelle enthalten:
| Fähigkeit | Beschreibung |
|---|---|
voice | Wird zur Unterstützung von Sprachfunktionen verwendet. |
messages | Wird zur Unterstützung von Messages- und Dispatch API-Funktionen verwendet. |
rtc | Wird zur Unterstützung von WebRTC-Funktionen verwendet. Normalerweise für die Verwendung mit Client SDK. |
vbc | Dient der Preisermittlung, hat aber derzeit keine weiteren Funktionen. |
Webhaken
Die Webhook-URLs, die Sie beim Erstellen einer Anwendung angeben, hängen von den erforderlichen Anwendungsfunktionen ab. In der folgenden Tabelle sind die Webhooks zusammengefasst:
| Fähigkeit | Verwendete API | Webhooks verfügbar |
|---|---|---|
voice | Stimme | answer_url, fallback_answer_url, event_url |
messages | Nachrichten und Versand | inbound_url, status_url |
rtc | Client SDK | event_url |
vbc | VBC | Keine |
Webhook-Typen
Die folgende Tabelle beschreibt die verfügbaren Webhooks pro Fähigkeit:
| Fähigkeit | Webhook | API | Beispiel | Beschreibung |
|---|---|---|---|---|
voice | answer_url | Stimme | https://example.com/webhooks/answer | Die URL, an die Vonage eine Anfrage stellt, wenn ein Anruf getätigt/empfangen wird. Muss einen NCCO zurückgeben. |
voice | fallback_answer_url | Stimme | https://example.com/webhooks/fallback | Wenn die fallback_answer_url gesetzt ist, stellt Vonage eine Anfrage an ihn, wenn die answer_url offline ist oder einen HTTP-Fehlercode zurückgibt oder die event_url offline ist oder einen Fehlercode zurückgibt und von einem Ereignis erwartet wird, dass es einen NCCO zurückgibt. Die Website fallback_answer_url muss einen NCCO zurückschicken. Wenn Ihr fallback_answer_url nach zwei Versuchen für einen ersten NCCO fehlschlägt, wird der Anruf beendet. Wenn Ihr fallback_answer_url nach zwei Versuchen für ein laufendes Gespräch fehlschlägt, wird der Gesprächsfluss fortgesetzt. |
voice | event_url | Stimme | https://example.com/webhooks/event | Vonage sendet Anrufereignisse (z. B. Klingeln, Annahme) an diese URL. |
messages | inbound_url | Nachrichten, Versenden | https://example.com/webhooks/inbound | Vonage wird eingehende Nachrichten an diese URL weiterleiten. |
messages | status_url | Nachrichten, Versenden | https://example.com/webhooks/status | Vonage sendet Aktualisierungen des Nachrichtenstatus (z. B., delivered, seen) zu dieser URL. |
rtc | event_url | Client SDK, Konversation | https://example.com/webhooks/rtcevent | Vonage sendet RTC-Ereignisse an diese URL. |
vbc | Keine | Sprach-Endpunkt | Keine | Nicht verwendet |
Webhook-Zeitüberschreitungen
Für die voice können Sie Zeitüberschreitungen für Webhooks festlegen. Es gibt zwei Zeitüberschreitungen, die festgelegt werden können: connection_timeout und socket_timeout. Diese Parameter gelten für die answer, eventund fallback Webhooks, und werden in Millisekunden angegeben. Die folgende Tabelle enthält weitere Informationen:
| Parameter | Beispiel | Beschreibung |
|---|---|---|
connection_timeout | 1000 | Wenn Vonage für die angegebene Zeitspanne keine Verbindung zur Webhook-URL herstellen kann, unternimmt Vonage einen weiteren Versuch, eine Verbindung zum Webhook-Endpunkt herzustellen. Dies ist ein ganzzahliger Wert, der in Millisekunden angegeben wird. |
socket_timeout | 3000 | Wenn eine Antwort von der Webhook-URL für diese angegebene Zeitspanne nicht gelesen werden kann, unternimmt Vonage einen weiteren Versuch, den Webhook-Endpunkt zu lesen. Dies ist ein ganzzahliger Wert, der in Millisekunden angegeben wird. |
Bei der Erstellung oder Aktualisierung einer Applikation können diese direkt eingestellt oder nach Bedarf aktualisiert werden, zum Beispiel:
...
"capabilities": {
"voice": {
"webhooks": {
"answer_url": {
"address": "https://example.com/webhooks/answer",
"http_method": "POST",
"connection_timeout": 500,
"socket_timeout": 3000
},
"fallback_answer_url": {
"address": "https://fallback.example.com/webhooks/answer",
"http_method": "POST",
"connection_timeout": 500,
"socket_timeout": 3000
},
"event_url": {
"address": "https://example.com/webhooks/event",
"http_method": "POST",
"connection_timeout": 500,
"socket_timeout": 3000
}
}
}
...
Wenn diese Werte beim Erstellen oder Aktualisieren der Anwendung nicht angegeben werden, werden Standardwerte verwendet. Die Standardwerte für diese Timeouts hängen von dem jeweiligen Webhook ab, wie in der folgenden Tabelle dargestellt:
| Webhook | Standard connection_timeout | Standard socket_timeout |
|---|---|---|
answer | 1000 | 5000 |
event | 1000 | 10000 |
fallback | 1000 | 5000 |
HINWEIS: Zeitüberschreitungen werden in Millisekunden angegeben.
Weitere Erläuterungen zu Webhook-Zeitüberschreitungen finden Sie in der Webhook-Dokumentation.
Erstellen von Applications
Es gibt im Wesentlichen vier Möglichkeiten, eine Anwendung zu erstellen:
- In der Vonage Dashboard. Die Applications werden dann in der Liste Ihre Applikationen Abschnitt des Dashboards.
- Die Verwendung des Vonage CLI.
- Die Verwendung des Application API.
- Mit einem der Vonage Server-SDKs.
Verwaltung von Applications mit der CLI
Code-Schnipsel
- Application / Anwendung aktualisieren
- Application / Bewerbung anfordern
- Application / Erstellen einer Applikation
- Application / Liste Applications
- Application / Löschen einer Applikation
- User / Benutzer aktualisieren
- User / Benutzer auflisten
- User / Benutzer erhalten
- User / Einen Benutzer erstellen
- User / Einen Benutzer löschen