Ereignisse aufrufen
Alle Ereignisse, die den Zustand von Telefongesprächen darstellen, haben gemeinsame Felder und Bedeutungen, unabhängig davon, ob sie als Reaktion auf Anrufsteuerungsmethoden oder durch Abfrage von Ereignissen oder über Webhook geliefert werden. Alle Anrufereignisse haben die folgenden Eigenschaften:
| Eigentum | Beschreibung |
|---|---|
id | Die eindeutige Kennung des Ereignisses |
userId | Die mit dem Ereignis verbundene VIS-Benutzerkennung |
accountId | Die mit dem Ereignis verbundene VIS-Kontonummer |
externalId | Die vom externen Kommunikationsanbieter bereitgestellte eindeutige Kennung des Ereignisses, die nur zu Informationszwecken verwendet wird |
direction | Entweder INBOUND oder OUTBOUND |
phoneNumber | Die Telefonnummer des anderen Teilnehmers |
callerId | Der Name des Fernteilnehmers |
state | Der Rufzustand, siehe Ereigniszustände unten |
duration | Die Dauer des Anrufs (in Millisekunden) |
startTime | ISO-8601-Datum/Uhrzeit des Beginns des Anrufs. Bei ausgehenden Anrufen markiert die Startzeit den Zeitpunkt, an dem der Anruf getätigt wurde; bei eingehenden Anrufen markiert sie den Zeitpunkt, an dem der Anruf zum ersten Mal empfangen wurde |
answerTime | ISO-8601-Datum/Uhrzeit, zu der der Anruf entgegengenommen wurde |
endTime | Ein ISO-8601-Datum/Uhrzeit, zu der der Anruf beendet wurde |
Ereignis Staaten
Die VIS-APIs stellen ein Ereignisstatusmodell für Telefonanrufe dar, das die Unterschiede und Komplexität von Vonage Business Communications und Vonage Enterprise verbirgt. Diese Ereigniszustände werden als Antwort auf Methoden-APIs (z. B. Anruf platzieren, Anrufe abrufen) geliefert und sind in Webhook-Ereignisbenachrichtigungen enthalten. Das Verständnis des Ereignisstatusmodells ist für die Erstellung externer Integrationen von entscheidender Bedeutung.
Der folgende endliche Zustandsautomat beschreibt die zulässigen Zustandsübergänge:
Der einzige Ausgangszustand ist Initializing. Die einzigen zulässigen Endzustände sind Answered, Cancelled, Rejectedund Missed. Anrufzustände, die sich in einem der endgültigen Endzustände befinden, bleiben immer in diesem Endzustand.
| Staat | Ursprüngliche | Finale | Richtung | Erlaubte Übergänge | Beschreibung |
|---|---|---|---|---|---|
| Initialisierung | Ja | Nein | Eingehend | Klingeln, Beantwortet | Ein Anruf wurde getätigt, aber die andere Teilnehmergruppe wurde noch nicht benachrichtigt |
| Klingeln | Nein | Nein | Eingehend, Ausgehend | Aktiv, Beantwortet, Abgebrochen, Abgelehnt, Fehlend | Der Fernteilnehmer wird benachrichtigt (abgehend) oder es erfolgt ein ankommender Anruf |
| Aktiv | Nein | Nein | Eingehend, Ausgehend | Beantwortet, gehalten, ferngehalten | Ein Anruf ist aktiv und die Teilnehmer sprechen |
| Gehalten | Nein | Nein | Eingehend, Ausgehend | Aktiv | Ein aktiver Anruf wird gerade gehalten |
| Ferngesteuert | Nein | Nein | Eingehend, Ausgehend | Aktiv | Ein entfernter Teilnehmer eines aktiven Anrufs wird gerade gehalten |
| Antwortet | Nein | Ja | Eingehend, Ausgehend | Ein Anruf mit einer Dauer ungleich Null ist beendet | |
| Abgebrochen | Nein | Ja | Ausgehend von | Ein ausgehender Anruf wurde abgebrochen, bevor der andere Teilnehmer geantwortet hat. | |
| Verpasst | Nein | Ja | Eingehend | Ein eingehender Anruf wurde nicht angenommen | |
| Abgelehnt | Nein | Ja | Eingehend | Ein eingehender Anruf wurde abgewiesen oder an die Mailbox weitergeleitet, ohne dass er beantwortet wurde |
Für jeden Staat werden die Werte für startTime, answerTime, endTimeund duration wird bestimmten Regeln folgen.
Alle Anrufzustände haben einen gültigen startTime. Nur Active, Held, Remote Heldund Answered haben eine gültige answerTime.
Die endTime bleibt null, bis der Aufruf einen endgültigen Zustand erreicht (Answered, Cancelled, Missed, Rejected).
Nur Anrufe, die die letzte Stufe erreicht haben Answered Zustand eine Dauer ungleich Null haben wird.
Anrufereignisse erhalten
Die API unterstützt das Abrufen von Anrufereignissen für aktive oder beendete Anrufe. Da die Anzahl der Anrufereignisdatensätze sehr groß sein kann, kann die Antwort in mehreren Abschnitten erfolgen. In der Regel rufen Applications die Gesamtzahl der Datensätze für einen bestimmten Satz von Abfrageparametern ab und rufen dann die Ereignisse über einen Zeitraum von mehreren API-Aufrufen ab, wobei sie denselben Satz von Abfrageparametern und eine maximale Anzahl von Ereignissen pro Aufruf verwenden.