NCCO-Referenz
Ein Anrufsteuerungsobjekt (NCCO) wird durch ein JSON-Array dargestellt. Sie können es verwenden, um den Ablauf eines Voice API-Aufrufs zu steuern. Damit Ihr NCCO korrekt ausgeführt werden kann, müssen die JSON-Objekte gültig sein.
Beim Entwickeln und Testen von NCCOs können Sie den Voice Playground nutzen, um NCCOs interaktiv auszuprobieren. Sie können Lesen Sie mehr darüber in der Voice API Übersicht oder direkt zum Voice Playground im Dashboard gehen.
NCCO-Aktionen
Die Reihenfolge der Aktionen im NCCO steuert den Ablauf des Aufrufs. Aktionen, die abgeschlossen sein müssen, bevor die nächste Aktion ausgeführt werden kann, sind synchron. Andere Aktionen sind asynchrone. Das heißt, sie sollen die folgenden Aktionen fortsetzen, bis eine Bedingung erfüllt ist. Zum Beispiel, eine record Aktion wird beendet, wenn die endOnSilence Option erfüllt ist. Wenn alle Aktionen im NCCO abgeschlossen sind, endet der Aufruf.
Die NCCO-Aktionen und die Optionen und Typen für jede Aktion sind:
| Aktion | Beschreibung | Synchron |
|---|---|---|
| Eintrag | Ganzer oder teilweiser Aufruf | Nein |
| Gespräch | Erstellen oder Verbinden eines bestehenden Konversation | Ja |
| verbinden | An einen verbindungsfähigen Endpunkt wie eine Telefonnummer oder eine VBC-Nebenstelle. | Ja |
| sprechen | Senden Sie synthetisierte Sprache an eine Konversation. | Ja, es sei denn bargeIn=true |
| Strom | Senden Sie Audiodateien an eine Konversation. | Ja, es sei denn bargeIn=true |
| Eingabe | Erfassen Sie Ziffern oder Spracheingaben des Gesprächspartners, den Sie anrufen. | Ja |
| benachrichtigen | Senden Sie eine Anfrage an Ihre Anwendung, um den Fortschritt durch ein NCCO zu verfolgen | Ja |
| warten | Ausführung für eine bestimmte Anzahl von Sekunden unterbrechen | Ja |
| Übertragung | Verschieben von Gesprächsteilen aus einem laufenden Gespräch in ein anderes bestehendes Gespräch | Ja |
Hinweis: Einen eingehenden Anruf verbinden enthält ein Beispiel dafür, wie Sie Ihre NCCOs an Vonage übermitteln, nachdem ein Anruf oder eine Konferenz eingeleitet wurde.
Beachten Sie, dass bei allen Aktionen die eventUrl Parameter MUSS ein Array sein, auch wenn er nur einen einzigen Wert enthält.
Datensatz
Verwenden Sie die record Aktion, um einen Anruf oder einen Teil eines Anrufs aufzuzeichnen:
[
{
"action": "record",
"eventUrl": ["https://example.com/recordings"]
},
{
"action": "connect",
"eventUrl": ["https://example.com/events"],
"from":"447700900000",
"endpoint": [
{
"type": "phone",
"number": "447700900001"
}
]
}
]
Die Aufzeichnungsaktion ist asynchron.
Sie können eine synchrone Bedingung definieren - endOnSilence, timeOut oder endOnKey - um die Aufzeichnung zu beenden, wenn sie erfüllt ist.
Wenn keine Bedingung festgelegt ist, arbeitet die Aufzeichnung asynchron und fährt sofort mit der nächsten Aktion fort, während der Anruf weiter aufgezeichnet wird. Die Aufzeichnung wird erst dann beendet und das entsprechende Ereignis gesendet, wenn der Anruf beendet wird.
Dies wird für ähnliche Szenarien wie die Anrufüberwachung verwendet.
Sie können eine Aufnahme mit der Funktion transcription Option. Sobald die Transkription der Aufnahme abgeschlossen ist, wird ein Rückruf an eine eventUrl. Mit den Transkriptionseinstellungen können Sie eine benutzerdefinierte eventUrl und language für Ihre Transkriptionen. Bitte beachten Sie, dass dies eine kostenpflichtige Funktion ist; die genauen Preise finden Sie auf der Seite Voice API-Preise Seite unter 'Programmierbare Funktionen'.
Informationen über den Arbeitsablauf finden Sie unter Aufnahme.
Sie können die folgenden Optionen verwenden, um eine record Aktion:
| Option | Beschreibung | Erforderlich |
|---|---|---|
format | Zeichnen Sie den Anruf in einem bestimmten Format auf. Die Optionen sind:
mp3, oder wav wenn Sie mehr als 2 Kanäle aufnehmen. | Nein |
split | Nehmen Sie den gesendeten und den empfangenen Ton in getrennten Kanälen eines Stereo-Aufnahmegeräts auf, um conversation um dies zu ermöglichen. | Nein |
channels | Die Anzahl der aufzuzeichnenden Kanäle (maximal 32). Übersteigt die Zahl der Teilnehmer channels alle weiteren Teilnehmer werden dem letzten Kanal in der Datei hinzugefügt. split conversation muss ebenfalls aktiviert sein. | Nein |
endOnSilence | Stoppen Sie die Aufnahme nach n Sekunden Stille. Sobald die Aufnahme gestoppt ist, werden die Aufnahmedaten an event_url. Der Bereich der möglichen Werte ist 3<=endOnSilence<=10. | Nein |
endOnKey | Stoppt die Aufnahme, wenn eine Ziffer auf dem Hörer gedrückt wird. Mögliche Werte sind: *, # oder eine einzelne Ziffer, z. B. 9. | Nein |
timeOut | Die maximale Länge einer Aufzeichnung in Sekunden. Wenn die Aufzeichnung gestoppt wird, werden die Aufzeichnungsdaten an event_url. Der Bereich der möglichen Werte liegt zwischen 3 Sekunden und 7200 Sekunden (2 Stunden). | Nein |
beepStart | Eingestellt auf true um einen Signalton abzuspielen, wenn eine Aufnahme beginnt. | Nein |
eventUrl | Die URL zum Webhook-Endpunkt, der asynchron aufgerufen wird, wenn eine Aufzeichnung beendet ist. Wenn die Nachrichtenaufzeichnung von Vonage gehostet wird, enthält dieser Webhook die URL, die Sie zum Herunterladen der Aufzeichnung und anderer Metadaten benötigen. | Nein |
eventMethod | Die HTTP-Methode, die für die Anfrage an eventUrl. Der Standardwert ist POST. | Nein |
transcription [Beta] | Auf ein leeres Objekt setzen, {}, um die Standardwerte zu verwenden oder sie mit Transkriptionseinstellungen | Nein |
Transkriptionseinstellungen
| Option | Beschreibung | Erforderlich |
|---|---|---|
language | Die Sprache (BCP-47 Format) für die Aufnahme, die Sie transkribieren. Derzeit werden dieselben Sprachen wie bei der automatischen Sprachaufzeichnung unterstützt, und eine Liste ist verfügbar hier. | Nein |
eventUrl | Die URL zum Webhook-Endpunkt, der asynchron aufgerufen wird, wenn eine Transkription beendet ist. | Nein |
eventMethod | Die HTTP-Methode, die Vonage für die Anfrage an eventUrl. Der Standardwert ist POST. | Nein |
sentimentAnalysis [Entwickler-Vorschau] | Führt eine Stimmungsanalyse für die Transkriptionssegmente der Anrufaufzeichnung durch. Gibt für jedes Segment einen Wert zwischen -1 (negative Stimmung) und 1 (positive Stimmung) zurück. Standardmäßig wird false. | Nein |
Bitte beachten Sie: Für die Transkription von Sprachanrufen gilt eine Höchstdauer von 2 Stunden.
Satzrückgabeparameter
Siehe die Webhook-Referenz für Datensatz- oder Transkriptionsparameter, die an den eventUrl.
Konversation
Sie können die conversation Aktion zur Erstellung von Standard- oder moderierten Konferenzen, wobei der Kommunikationskontext erhalten bleibt. Verwendung von conversation mit demselben name verwendet die gleiche persistierte Konversation. Die erste Person, die die dem Gespräch zugewiesene virtuelle Nummer anruft, erstellt es. Diese Aktion ist synchron.
Hinweis: Sie können bis zu 200 Personen zu Ihrer Konversation einladen.
Die folgenden NCCO-Beispiele zeigen, wie Sie verschiedene Arten von Konversationen konfigurieren können. Sie können die answer_url Webhook-GET-Anforderungsparameter, um sicherzustellen, dass Sie ein NCCO an die Teilnehmer und ein anderes an den Moderator übermitteln.
[
{
"action": "conversation",
"name": "nexmo-conference-standard",
"record": true,
"transcription": {
"eventUrl": [ "https://example.com/transcription" ],
"eventMethod": "POST",
"language": "he-IL"
}
}
]
// As the customer is the first person to join, there is no canHear/canSpeak entry
// The customer's leg ID is 6a4d6af0-55a6-4667-be90-8614e4c8e83c
[
{
"action": "conversation",
"name": "selective-audio-demo",
"startOnEnter": false,
"musicOnHoldUrl": ["https://nexmo-community.github.io/ncco-examples/assets/voice_api_audio_streaming.mp3"],
}
]
// The agent joins and can both hear, and speak to the customer
// The agent's leg ID is 533c0874-f43d-446c-a153-f35bf30783fa
[
{
"action": "conversation",
"name": "selective-audio-demo",
"startOnEnter": true,
"record": true,
"canHear": ["6a4d6af0-55a6-4667-be90-8614e4c8e83c"], // Customer leg ID
"canSpeak": ["6a4d6af0-55a6-4667-be90-8614e4c8e83c"] // Customer leg ID
}
]
// Finally, the supervisor joins the conversation. They can hear both the customer
// and the agent, but only speak to the agent
// The supervisor's leg ID is e2833e43-db39-4c1a-b689-d17ad2cf3529
[
{
"action": "conversation",
"name": "selective-audio-demo",
"startOnEnter": true,
"record": true,
"canHear": ["6a4d6af0-55a6-4667-be90-8614e4c8e83c", "533c0874-f43d-446c-a153-f35bf30783fa"] // Customer leg ID, Agent leg ID
"canSpeak": ["533c0874-f43d-446c-a153-f35bf30783fa"] // Agent leg ID
}
]
[
{
"action": "conversation",
"name": "nexmo-conference-moderated",
"record": true,
"startOnEnter": true
}
]
[
{
"action": "talk",
"text": "Welcome to a Vonage moderated conference. We will connect you when an agent is available"
},
{
"action": "conversation",
"name": "nexmo-conference-moderated",
"startOnEnter": false,
"musicOnHoldUrl": ["https://nexmo-community.github.io/ncco-examples/assets/voice_api_audio_streaming.mp3"]
}
]
Sie können die folgenden Optionen verwenden, um eine Gespräch Aktion:
| Option | Beschreibung | Erforderlich |
|---|---|---|
name | Der Name des Konversationsraums. Die Namen werden bis zur Anwendungsebene mit einem Namensraum versehen und Region. | Ja |
musicOnHoldUrl | Eine URL zum mp3 Datei an die Teilnehmer übertragen, bis das Gespräch beginnt. Standardmäßig beginnt das Gespräch, wenn die erste Person die mit Ihrer Voice-App verbundene virtuelle Nummer anruft. Um diese mp3-Datei zu streamen, bevor der Moderator dem Gespräch beitritt, setzen Sie startOnEnter zu falsch für alle Benutzer mit Ausnahme des Moderators. | Nein |
startOnEnter | Der Standardwert von wahr stellt sicher, dass das Gespräch beginnt, wenn dieser Anrufer dem Gespräch beitritt name. Einstellen auf falsch für die Teilnehmer in einem moderierten Gespräch. | Nein |
endOnExit | Gibt an, ob ein moderiertes Gespräch beendet wird, wenn der Moderator auflegt. Dies ist festgelegt auf falsch Das bedeutet, dass das Gespräch erst beendet wird, wenn der letzte verbleibende Teilnehmer auflegt, unabhängig davon, ob der Moderator noch im Gespräch ist. einstellen endOnExit zu wahr um das Gespräch zu beenden, wenn der Moderator auflegt. | Nein |
record | Eingestellt auf wahr um dieses Gespräch aufzuzeichnen. Bei Standardkonversationen beginnen die Aufzeichnungen, wenn ein oder mehrere Teilnehmer eine Verbindung zu der Konversation herstellen. Bei moderierten Konversationen beginnt die Aufzeichnung, wenn der Moderator der Konversation beitritt. Das heißt, wenn ein NCCO für die genannte Konversation ausgeführt wird, bei dem startOnEnter wird eingestellt auf wahr. Wenn die Aufzeichnung beendet wird, wird die URL, von der Sie die Aufzeichnung herunterladen, an die Ereignis-URL gesendet. Sie können die Standard-URL des Aufzeichnungsereignisses und die Standard-HTTP-Methode außer Kraft setzen, indem Sie benutzerdefinierte eventUrl und eventMethod Optionen in der conversation Aktionsdefinition. Standardmäßig wird Audio im MP3-Format aufgezeichnet. Siehe die Aufnahme Leitfaden für weitere Einzelheiten. | Nein |
canSpeak | Eine Liste von Bein-UUIDs, von denen dieser Teilnehmer gehört werden kann. Wenn keine Liste angegeben wird, kann der Teilnehmer von jedem gehört werden. Wenn eine leere Liste angegeben wird, kann der Teilnehmer von niemandem gehört werden. | Nein |
canHear | Eine Liste der Bein-UUIDs, die dieser Teilnehmer hören kann. Wenn keine Liste angegeben wird, kann der Teilnehmer alle hören. Wenn eine leere Liste angegeben wird, kann der Teilnehmer keine anderen Teilnehmer hören. | Nein |
mute | Eingestellt auf wahr um den Teilnehmer stumm zu schalten. Der Ton des Teilnehmers wird im Gespräch nicht wiedergegeben und nicht aufgezeichnet. Wenn Sie canSpeakdie mute Parameter wird nicht unterstützt. | Nein |
transcription | Einstellungen für die Transkription. Falls vorhanden (auch als leeres Objekt), ist die Transkription aktiviert. Der Parameter record muss auf wahr. Siehe Transkriptionseinstellungen oben für weitere Einzelheiten. | Nein |
Verbinden Sie
Sie können die connect Aktion, um einen Anruf mit Endpunkten wie Telefonnummern oder einer VBC-Nebenstelle zu verbinden.
Diese Aktion ist synchron, nach einer verbinden wird die nächste Aktion im NCCO-Stapel abgearbeitet. Eine Verbindungsaktion endet, wenn der angerufene Endpunkt besetzt oder nicht verfügbar ist. Sie rufen Endpunkte nacheinander an, indem Sie Verbindungsaktionen verschachteln.
Die folgenden NCCO-Beispiele zeigen, wie man verschiedene Arten von Verbindungen konfiguriert.
[
{
"action": "talk",
"text": "Please wait while we connect you"
},
{
"action": "connect",
"eventUrl": ["https://example.com/events"],
"timeout": "45",
"from": "447700900000",
"endpoint": [
{
"type": "phone",
"number": "447700900001",
"dtmfAnswer": "2p02p"
}
]
}
]
[
{
"action": "talk",
"text": "Please wait while we connect you"
},
{
"action": "connect",
"eventType": "synchronous",
"eventUrl": [
"https://example.com/events"
],
"from": "447700900000",
"endpoint": [
{
"type": "websocket",
"uri": "ws://example.com/socket",
"content-type": "audio/l16;rate=16000",
"headers": {
"name": "J Doe",
"age": 40,
"address": {
"line_1": "Apartment 14",
"line_2": "123 Example Street",
"city": "New York City"
},
"system_roles": [183493, 1038492, 22],
"enable_auditing": false
}
}
]
}
]
[
{
"action": "talk",
"text": "Please wait while we connect you"
},
{
"action": "connect",
"eventUrl": [
"https://example.com/events"
],
"from": "447700900000",
"endpoint": [
{
"type": "app",
"user": "jamie"
}
]
}
]
[
{
"action": "talk",
"text": "Please wait while we connect you"
},
{
"action": "connect",
"eventUrl": [
"https://example.com/events"
],
"from": "447700900000",
"endpoint": [
{
"type": "sip",
"uri": "sip:rebekka@sip.mcrussell.com",
"headers": { "location": "New York City", "occupation": "developer" }
}
]
}
]
Sie können für Anrufe, bei denen keine Verbindung zustande kommt, ein Fallback einrichten. Dazu setzen Sie den eventType zu synchronous und geben einen NCCO aus dem eventUrl wenn der Anruf einen der folgenden Zustände annimmt:
timeout- Ihr Benutzer hat Ihren Anruf nicht mitringing_timerSekundenfailed- der Anruf konnte nicht abgeschlossen werdenrejected- der Anruf wurde abgewiesenunanswered- der Anruf wurde nicht entgegengenommenbusy- der Angerufene war in einem anderen Gespräch
[
{
"action": "connect",
"from": "447700900000",
"timeout": 5,
"eventType": "synchronous",
"eventUrl": [
"https://example.com/event-fallback"
],
"endpoint": [
{
"type": "phone",
"number": "447700900001"
}
]
}
]
[
{
"action": "record",
"eventUrl": ["https://example.com/recordings"]
},
{
"action": "connect",
"eventUrl": ["https://example.com/events"],
"from": "447700900000",
"endpoint": [
{
"type": "phone",
"number": "447700900001"
}
]
}
]
[
{
"action": "talk",
"voiceName": "Russell",
"text": "Thank you for calling. Connecting you to extension."
},
{
"action": "connect",
"endpoint": [
{
"type": "vbc",
"extension": "111"
}
]
}
]
[
{
"action": "talk",
"text": "Please wait while we connect you"
},
{
"action": "connect",
"eventUrl": [
"https://example.com/events"
],
"from": "447700900000",
"endpoint": [
{
"type": "sip",
"user": "john",
"domain": "vonage-developer",
"headers":
{
"location": "New York City",
"occupation": "developer"
}
}
]
}
]
Sie können die folgenden Optionen verwenden, um eine connect Aktion:
| Option | Beschreibung | Erforderlich |
|---|---|---|
endpoint | Array von endpoint Objekte, mit denen eine Verbindung hergestellt werden soll. Unterstützt derzeit eine maximal eines endpoint Objekt. Verfügbare Endpunkttypen. | Ja |
from | Eine Nummer in E.164 Format, das den Anrufer identifiziert. Dies muss eine Ihrer virtuellen Vonage-Nummern sein, wenn Sie eine Verbindung zu einem echten Telefon herstellen, da der Anruf sonst nicht zustande kommt. | Nein |
randomFromNumber | Eingestellt auf true um eine zufällige Rufnummer als from. Die Nummer wird aus der Liste der Nummern ausgewählt, die der aktuellen Anwendung zugeordnet sind. Die Anwendung versucht, Nummern aus dem gleichen Land wie das Ziel zu verwenden (falls verfügbar). randomFromNumber: true kann nicht zusammen verwendet werden mit from. Der Standardwert ist false. | Nein |
eventType | Eingestellt auf synchronous zu:
| Nein |
timeout | Wenn der Anruf nicht angenommen wird, legen Sie die Anzahl der Sekunden fest, bevor Vonage aufhört zu klingeln endpoint. Muss eine ganze Zahl sein zwischen 1 und 120. Der Standardwert ist 60. | Nein |
limit | Maximale Länge des Anrufs in Sekunden. Der Standard- und Höchstwert ist 7200 Sekunden (2 Stunden). | Nein |
machineDetection | Konfigurieren Sie das Verhalten, wenn Vonage feststellt, dass ein Ziel ein Anrufbeantworter ist. Stellen Sie entweder:
| Nein |
advancedMachineDetection | Konfigurieren Sie das Verhalten der erweiterten Maschinenerkennung von Vonage. Überschreibt machineDetection wenn beide eingestellt sind. Siehe die API-Referenz für Details zu den Parametern. Diese Funktion ist kostenpflichtig; die genauen Preise finden Sie auf der Seite Voice API-Preise Seite unter 'Programmierbare Funktionen'. | Nein |
eventUrl | Legen Sie den Webhook-Endpunkt fest, den Vonage asynchron auf jedem der möglichen Staaten anrufen. Wenn eventType wird eingestellt auf synchronous die eventUrl kann einen NCCO zurückgeben, der den aktuellen NCCO überschreibt, wenn eine Zeitüberschreitung auftritt. | Nein |
eventMethod | Die HTTP-Methode, die Vonage für die Anfrage an eventUrl. Der Standardwert ist POST. | Nein |
ringbackTone | Ein URL-Wert, der auf eine ringbackTone die in der Wiederholung an den Empfänger abgespielt werden Anruferdamit sie die Stille nicht hören. Die ringbackTone wird automatisch beendet, wenn der Anruf vollständig verbunden ist. Es wird nicht empfohlen, diesen Parameter zu verwenden, wenn Sie eine Verbindung zu einem Telefon-Endpunkt herstellen, da der Anbieter seine eigenen ringbackTone. Beispiel: "ringbackTone": "http://example.com/ringbackTone.wav". | Nein |
shaken | Für Vonage-Kunden, die von der FCC verpflichtet sind, ihre Anrufe in die USA selbst zu signieren, bieten wir die Möglichkeit, Voice API-Anrufe mit Ihrer eigenen Signatur zu tätigen. Diese Funktion ist nur auf Anfrage verfügbar. Anrufe mit einer ungültigen Signatur werden abgewiesen. Bitte kontaktieren Sie uns für weitere Informationen. Wenn Sie diese Option verwenden, müssen Sie den Inhalt des STIR/SHAKEN-Identitäts-Headers angeben, den Vonage für diesen Anruf verwenden muss. Das erwartete Format besteht aus:
| Nein |
Beispiel für den shaken Option:
eyJhbGciOiJFUzI1NiIsInBwdCI6InNoYWtlbiIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cHM6Ly9jZXJ0LmV4YW1wbGUuY29tL3Bhc3Nwb3J0LnBlbSJ9.eyJhdHRlc3QiOiJBIiwiZGVzdCI6eyJ0biI6WyIxMjEyNTU1MTIxMiJdfSwiaWF0IjoxNjk0ODcwNDAwLCJvcmlnIjp7InRuIjoiMTQxNTU1NTEyMzQifSwib3JpZ2lkIjoiMTIzZTQ1NjctZTg5Yi0xMmQzLWE0NTYtNDI2NjE0MTc0MDAwIn0.MEUCIQCrfKeMtvn9I6zXjE2VfGEcdjC2sm5M6cPqBvFyV9XkpQIgLxlvLNmC8DJEKexXZqTZ;info=<https://stir-provider.example.net/cert.cer>;alg=ES256;ppt="shaken"
Endpunkttypen und Werte
Telefon (PSTN) - Telefonnummern im E.164-Format
| Wert | Beschreibung |
|---|---|
type | Der Endpunkttyp: phone für einen PSTN-Endpunkt. |
number | Die Telefonnummer, mit der die Verbindung in E.164 Format. |
dtmfAnswer | Legen Sie die Ziffern fest, die an den Benutzer gesendet werden, sobald der Anruf angenommen wird. Die * und # Die Ziffern werden beachtet. Sie erstellen Pausen mit p. Jede Pause beträgt 500 ms. |
onAnswer | Ein JSON-Objekt, das eine erforderliche url Schlüssel. Die URL dient dazu, einen NCCO in der Nummer, mit der Sie verbunden sind, auszuführen, bevor der Anruf mit Ihrem bestehenden Gespräch verbunden wird. Optional kann die ringbackTone Schlüssel kann mit einem URL-Wert angegeben werden, der auf eine ringbackTone die in der Wiederholung an den Empfänger abgespielt werden AnruferSie hören also nicht nur Stille. Die ringbackTone wird automatisch beendet, wenn der Anruf vollständig verbunden ist. Beispiel: {"url":"https://example.com/answer", "ringbackTone":"http://example.com/ringbackTone.wav" }. Bitte beachten Sie, dass die Taste ringback wird weiterhin unterstützt. |
shaken | Für Vonage-Kunden, die von der FCC verpflichtet sind, ihre Anrufe in die USA selbst zu signieren, bieten wir die Möglichkeit, Voice API-Anrufe mit Ihrer eigenen Signatur zu tätigen. Diese Funktion ist nur auf Anfrage verfügbar. Anrufe mit einer ungültigen Signatur werden abgewiesen. Bitte kontaktieren Sie uns für weitere Informationen. Wenn Sie diese Option verwenden, müssen Sie den Inhalt des STIR/SHAKEN-Identitäts-Headers angeben, den Vonage für diesen Anruf verwenden muss. Das erwartete Format besteht aus:
|
Beispiel für den shaken Option:
eyJhbGciOiJFUzI1NiIsInBwdCI6InNoYWtlbiIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cHM6Ly9jZXJ0LmV4YW1wbGUuY29tL3Bhc3Nwb3J0LnBlbSJ9.eyJhdHRlc3QiOiJBIiwiZGVzdCI6eyJ0biI6WyIxMjEyNTU1MTIxMiJdfSwiaWF0IjoxNjk0ODcwNDAwLCJvcmlnIjp7InRuIjoiMTQxNTU1NTEyMzQifSwib3JpZ2lkIjoiMTIzZTQ1NjctZTg5Yi0xMmQzLWE0NTYtNDI2NjE0MTc0MDAwIn0.MEUCIQCrfKeMtvn9I6zXjE2VfGEcdjC2sm5M6cPqBvFyV9XkpQIgLxlvLNmC8DJEKexXZqTZ;info=<https://stir-provider.example.net/cert.cer>;alg=ES256;ppt="shaken"
App - Verbinden Sie den Anruf mit einer RTC-fähigen Anwendung
| Wert | Beschreibung |
|---|---|
type | Der Endpunkttyp: app für eine Applikation. |
user | Der Benutzername des Benutzers, mit dem eine Verbindung hergestellt werden soll. Dieser Benutzername muss als Benutzer hinzugefügt. |
WebSocket - der WebSocket, mit dem eine Verbindung hergestellt werden soll
| Wert | Beschreibung |
|---|---|
type | Der Endpunkttyp: websocket für einen WebSocket. |
uri | Der URI des Websockets, an den Sie streamen. |
content-type | den Internet-Medientyp für das zu streamende Audio. Mögliche Werte sind: audio/l16;rate=16000 oder audio/l16;rate=8000. |
headers | ein JSON-Objekt, das alle gewünschten Metadaten enthält. Siehe Verbindung zu einem Websocket zum Beispiel Kopfzeilen. |
SIP - der SIP-Endpunkt, mit dem eine Verbindung hergestellt werden soll
| Wert | Beschreibung |
|---|---|
type | Der Endpunkttyp: sip für SIP. |
uri | Die SIP-URI des Endpunkts, mit dem Sie sich verbinden, im Format sip:rebekka@sip.example.com. Zur Verwendung TLS und/oder SRTPumfassen jeweils transport=tls oder media=srtp an die URL mit dem Semikolon ; als Begrenzungszeichen, zum Beispiel: sip:rebekka@sip.example.com;transport=tls;media=srtp. Beachten Sie, dass diese Eigenschaft sich gegenseitig ausschließt mit user und domain. |
user | Die user Bestandteil des URI. Sie wird zusammen mit dem domain Eigenschaft, um den vollständigen SIP-URI zu erstellen. Wenn Sie diese Eigenschaft festlegen, müssen Sie auch domain und gehen uri nicht festgelegt. |
domain | Der Bezeichner für eine über das Dashboard erstellte Stammdatenbank. Es muss sich um eine erfolgreich bereitgestellte Domäne handeln, die mit dem SIP Trunking Dashboard oder die Programmierbare SIP-API. Die im Stamm bereitgestellten URIs werden entlang der user Eigenschaft, um den vollständigen SIP-URI zu erstellen. Wenn die URI im Stamm also zum Beispiel lautet: sip.example.com und user ist example_usersendet Vonage den Anruf an example_user@sip.example.com. Wenn Sie diese Eigenschaft einstellen, müssen Sie die uri nicht gesetzt. Beachten Sie, dass sich diese Eigenschaft auf den Domänennamen und nicht auf den Domänen-URI bezieht. |
headers | key => value String-Paare, die alle benötigten Metadaten enthalten, z. B. { "location": "New York City", "occupation": "developer" }. Die Header werden als Teil des SIP-INVITE übertragen als X-key: value Kopfzeilen. Im Beispiel werden also diese Kopfzeilen gesendet: X-location: New York City und X-occupation: developer. |
standardHeaders | Ein JSON-Objekt, das einen einzelnen Schlüssel enthält User-to-User. Dies wird verwendet, um Informationen von Benutzer zu Benutzer zu übermitteln, wenn dies vom Anbieter unterstützt wird, wie in RFC 7433. Anders als headerswird der Schlüssel nicht mit X-da sie genormt ist. Zum Beispiel: { "User-to-User": "342342ef34;encoding=hex" }. Vonage validiert den Inhalt des User-to-User-Headers nicht, sondern stellt nur sicher, dass er gültige Zeichen verwendet und die maximal zulässige Anzahl von Zeichen (256) nicht überschreitet. |
Wie Ihre Anwendung stattdessen SIP Custom Headers empfangen und verarbeiten kann, erfahren Sie auf der folgenden Seite Programmierbares SIP
VBC - die Vonage Business Cloud (VBC)-Erweiterung zur Verbindung mit
| Wert | Beschreibung |
|---|---|
type | Der Endpunkttyp: vbc für eine VBC-Erweiterung. |
extension | die VBC-Nebenstelle, mit der der Anruf verbunden werden soll. |
Gespräch
Die talk Aktion sendet synthetisierte Sprache an eine Konversation.
Der Text, der in der Talk-Aktion angegeben wird, kann entweder einfach sein oder mit SSML. SSML-Tags enthalten weitere Anweisungen für den Text-to-Speech-Synthesizer, mit denen Sie die Tonhöhe und die Aussprache festlegen und Text in mehreren Sprachen miteinander kombinieren können. SSML-Tags sind XML-basiert und werden inline im JSON-String gesendet.
Standardmäßig ist die Gesprächsaktion synchron. Wenn Sie jedoch bargeIn zu wahr müssen Sie eine Eingabe Aktion später im NCCO-Stack. Das folgende NCCO-Beispiel zeigt, wie man eine synthetische Sprachnachricht an eine Konversation oder einen Anruf sendet:
[
{
"action": "talk",
"text": "You are listening to a Call made with Voice API"
}
]
[
{
"action": "talk",
"text": "Welcome to a Voice API I V R. ",
"language": "en-GB",
"bargeIn": false
},
{
"action": "talk",
"text": "Press 1 for maybe and 2 for not sure followed by the hash key",
"language": "en-GB",
"bargeIn": true
},
{
"action": "input",
"submitOnHash": true,
"eventUrl": ["https://example.com/ivr"]
}
]
[
{
"action": "talk",
"text": "<speak><prosody rate='fast'>I can speak fast.</prosody></speak>"
}
]
Sie können die folgenden Optionen verwenden, um eine sprechen Aktion:
| Option | Beschreibung | Erforderlich |
|---|---|---|
text | Eine Zeichenkette von bis zu 1.500 Zeichen (ohne SSML-Tags), die die Nachricht enthält, die in dem Anruf oder der Konversation synthetisiert werden soll. Ein einzelnes Komma in text fügt der synthetisierten Sprache eine kurze Pause hinzu. Um eine längere Pause hinzuzufügen, muss ein break Tag muss in SSML verwendet werden. Zur Verwendung SSML Tags, müssen Sie den Text in einen speak Element. | Ja |
bargeIn | Eingestellt auf true so dass diese Aktion beendet wird, wenn der Benutzer mit der Anwendung interagiert, entweder mit DTMF oder ASR-Spracheingabe. Verwenden Sie diese Funktion, um Benutzern die Möglichkeit zu geben, eine Option auszuwählen, ohne die gesamte Nachricht in Ihrer Anwendung anhören zu müssen. Interaktive Sprachausgabe (IVR). Wenn Sie die bargeIn zu true die nächste Nicht-Gesprächs-Aktion im NCCO-Stapel muss ein sein input Aktion. Der Standardwert ist false. Sobald bargeIn wird eingestellt auf true es wird bleiben true (auch wenn bargeIn: false in einer folgenden Aktion gesetzt wird), bis eine input Aktion wird angetroffen | Nein |
loop | Die Anzahl der Male text wird wiederholt, bevor der Aufruf geschlossen wird. Der Standardwert ist 1. Setzen Sie ihn auf 0, um eine Endlosschleife zu erzeugen. | Nein |
level | Der Lautstärkepegel, mit dem die Sprache wiedergegeben wird. Dies kann ein beliebiger Wert sein zwischen -1 zu 1 mit 0 ist die Standardeinstellung. | Nein |
language | Die Sprache (BCP-47 Format) für die Nachricht, die Sie senden. Standard: en-US. Die möglichen Werte sind in der Tabelle Text-To-Speech-Anleitung. | Nein |
style | Der Gesangsstil (Stimmumfang, Tessitura und Timbre). Standard: 0. Die möglichen Werte sind in der Tabelle Text-To-Speech-Anleitung. | Nein |
premium | Eingestellt auf true um die Premium-Version des angegebenen Stils zu verwenden, falls verfügbar, andernfalls wird die Standard-Version verwendet. Der Standardwert ist false. Weitere Informationen über Premium Voices finden Sie in der Text-To-Speech-Anleitung. | Nein |
Gespräch Rückgabeparameter
Siehe Webhook-Referenz für die Parameter, die an den eventUrl.
Stream
Die stream Aktion können Sie einen Audiostrom an eine Konversation senden
Standardmäßig ist die Stream-Aktion synchron. Wenn Sie jedoch die Option bargeIn zu wahr müssen Sie eine Eingabe Aktion später im NCCO-Stapel.
Das folgende NCCO-Beispiel zeigt, wie man einen Audiostrom an eine Konversation oder einen Anruf sendet:
[
{
"action": "stream",
"streamUrl": ["https://acme.com/streams/music.mp3"]
}
]
[
{
"action": "stream",
"streamUrl": ["https://acme.com/streams/announcement.mp3"],
"bargeIn": "true"
},
{
"action": "input",
"submitOnHash": "true",
"eventUrl": ["https://example.com/ivr"]
}
]
Sie können die folgenden Optionen verwenden, um eine Strom Aktion:
| Option | Beschreibung | Erforderlich |
|---|---|---|
streamUrl | Ein Array, das eine einzelne URL zu einer mp3- oder wav-Audiodatei (16-Bit) enthält, die an den Anruf oder die Konversation gestreamt werden soll. | Ja |
level | Legt den Audiopegel des Streams im Bereich -1 >=level<=1 mit einer Genauigkeit von 0,1 fest. Der Standardwert ist 0. | Nein |
bargeIn | Eingestellt auf true so dass diese Aktion beendet wird, wenn der Benutzer mit der Anwendung interagiert, entweder mit DTMF oder ASR-Spracheingabe. Verwenden Sie diese Funktion, um Benutzern die Möglichkeit zu geben, eine Option auszuwählen, ohne die gesamte Nachricht in Ihrer Anwendung anhören zu müssen. Interaktive Sprachausgabe (IVR) ). Wenn Sie die bargeIn zu true auf eine weitere Stream-Aktion, dann auf die nächste Nicht-Stream-Aktion im NCCO-Stapel muss ein sein input Aktion. Der Standardwert ist false.Sobald bargeIn wird eingestellt auf true es wird bleiben true (auch wenn bargeIn: false in einer folgenden Aktion gesetzt wird), bis eine input Aktion angetroffen wird. | Nein |
loop | Die Anzahl der Male audio wird wiederholt, bevor der Aufruf geschlossen wird. Der Standardwert ist 1. Einstellen auf 0 zu einer Endlosschleife. | Nein |
Der angegebene Audiostrom sollte eine Datei im MP3- oder WAV-Format sein. Wenn Sie Probleme mit der Wiedergabe der Datei haben, kodieren Sie sie bitte gemäß der folgenden technischen Spezifikation: Welche Art von voraufgezeichneten Audiodateien kann ich verwenden?
Wenn Sie dieselbe Audiodatei mehrmals abspielen, z. B. dieselbe Aufnahme in vielen Anrufen verwenden, sollten Sie eine Cache-Kontrolle Header in der URL-Antwort mit den richtigen Werten.
Cache-Control: public, max-age=360000
Dadurch kann Vonage Ihre Audiodatei zwischenspeichern, anstatt sie jedes Mal herunterzuladen, was die Leistung und die Benutzerfreundlichkeit erheblich verbessern kann. Caching wird sowohl für HTTP- als auch für HTTPS-URLs unterstützt.
Stream Return Parameter
Siehe Webhook-Referenz für die Parameter, die an den eventUrl.
Eingabe
Sie können die input Aktion, um Ziffern oder Spracheingaben des Anrufers zu erfassen. Diese Aktion ist synchron, Vonage verarbeitet die Eingaben und leitet sie an die Parameter die an den eventUrl Webhook-Endpunkt, den Sie in Ihrer Anfrage konfigurieren. Ihr Webhook-Endpunkt sollte ein anderes NCCO zurückgeben, das das bestehende NCCO ersetzt und den Anruf auf der Grundlage der Benutzereingabe steuert. Sie können diese Funktionalität nutzen, um eine interaktive Sprachantwort (IVR) zu erstellen. Wenn Ihr Benutzer zum Beispiel drückt 4 oder "Verkauf" sagt, geben Sie eine verbinden NCCO, der den Anruf an Ihre Vertriebsabteilung weiterleitet.
Das folgende NCCO-Beispiel zeigt, wie man einen IVR-Endpunkt konfiguriert:
[
{
"action": "talk",
"text": "Please enter a digit or say something"
},
{
"action": "input",
"eventUrl": [
"https://example.com/ivr"
],
"type": [ "dtmf", "speech" ],
"dtmf": {
"maxDigits": 1
},
"speech": {
"context": [ "sales", "support" ]
}
}
]
Das folgende NCCO-Beispiel zeigt, wie man bargeIn um einem Benutzer die Unterbrechung einer talk Aktion. Beachten Sie, dass eine input Aktion muss folgen jeder Aktion, die eine bargeIn Eigenschaft (z.B. talk oder stream).
[
{
"action": "talk",
"text": "Please enter a digit or say something",
"bargeIn": true
},
{
"action": "input",
"eventUrl": [
"https://example.com/ivr"
],
"type": [ "dtmf", "speech" ],
"dtmf": {
"maxDigits": 1
},
"speech": {
"context": [ "sales", "support" ]
}
}
]
Die folgenden Optionen können verwendet werden, um eine input Aktion:
| Option | Beschreibung | Erforderlich |
|---|---|---|
type | Zulässiger Eingabetyp, kann eingestellt werden als [ "dtmf" ] nur für DTMF-Eingabe, [ "speech" ] nur für ASR, oder [ "dtmf", "speech" ] für beide. | Ja |
dtmf | DTMF-Einstellungen. | Nein |
speech | Einstellungen für die Spracherkennung. | Nein |
mode | Eingabeverarbeitungsmodus, gilt derzeit nur für DTMF. Gültige Werte sind synchronous (der Standard) und asynchronous. Bei Einstellung auf asynchronousalle DTMF-Einstellungen muss leer gelassen werden. Im asynchronen Modus werden die Ziffern nacheinander in Echtzeit an den Ereignis-Webhook gesendet. In der Standardeinstellung synchronous Modus wird dies stattdessen durch die DTMF-Einstellungen gesteuert, und die Eingaben werden im Stapel gesendet. | Nein |
eventUrl | Vonage sendet die vom Anrufer gedrückten Ziffern an diese URL 1) nach timeOut Pause in der Aktivität oder wenn # für DTMF gedrückt wird oder 2) nachdem der Benutzer aufhört zu sprechen oder 30 Sekunden Sprache für die Spracheingabe. | Nein |
eventMethod | Die HTTP-Methode, die zum Senden von Ereignisinformationen an event_url Der Standardwert ist POST. | Nein |
DTMF-Eingabeeinstellungen
Anmerkung: Diese Einstellungen gelten nicht, wenn die mode wird eingestellt auf asynchronous.
| Option | Beschreibung | Erforderlich |
|---|---|---|
timeOut | Das Ergebnis der Aktivität des Anrufers wird an den eventUrl Webhook-Endpunkt timeOut Sekunden nach der letzten Aktion. Der Standardwert ist 3. Maximal ist 10. | Nein |
maxDigits | Die Anzahl der Ziffern, die der Benutzer drücken kann. Der Höchstwert ist 20ist der Standardwert 4 Ziffern. | Nein |
submitOnHash | Eingestellt auf true so dass die Aktivität des Anrufers an Ihren Webhook-Endpunkt gesendet wird eventUrl nachdem sie auf #. Wenn # nicht gedrückt wird, wird das Ergebnis nach timeOut Sekunden. Der Standardwert ist false. Das heißt, das Ergebnis wird an Ihren Webhook-Endpunkt gesendet, nachdem timeOut Sekunden. | Nein |
Spracherkennungseinstellungen
| Option | Beschreibung | Erforderlich |
|---|---|---|
uuid | Die eindeutige ID des Gesprächsabschnitts, dessen Sprache der Benutzer erfassen soll, definiert als Array mit einem einzigen Element. Standardmäßig der erste verbundene Teil des Anrufs. | Nein |
endOnSilence | Legt fest, wie lange das System wartet, nachdem der Benutzer aufhört zu sprechen, um zu entscheiden, dass die Eingabe abgeschlossen ist. Der Standardwert ist 2.0 (Sekunden). Der Bereich der möglichen Werte liegt zwischen 0.4 Sekunden und 10.0 Sekunden. | Nein |
language | Erwartete Sprache der Sprache des Benutzers. Format: BCP-47. Standard: en-US. Liste der unterstützten Sprachen. | Nein |
context | Array mit Hinweisen (Strings) zur Verbesserung der Erkennungsqualität, wenn bestimmte Wörter vom Benutzer erwartet werden. | Nein |
startTimeout | Legt fest, wie lange das System wartet, bis der Benutzer zu sprechen beginnt. Der Bereich der möglichen Werte liegt zwischen 1 Sekunde und 60 Sekunden. Der Standardwert ist 10. | Nein |
maxDuration | Steuert die maximale Sprechdauer (ab dem Zeitpunkt, an dem der Benutzer zu sprechen beginnt). Der Standardwert ist 60 (Sekunden). Der Bereich der möglichen Werte liegt zwischen 1 und 60 Sekunden. | Nein |
saveAudio | Eingestellt auf true so dass die Spracheingangsaufzeichnung (recording_url) wird an Ihren Webhook-Endpunkt gesendet unter eventUrl. Der Standardwert ist false. | Nein |
sensitivity | Audioempfindlichkeit zur Unterscheidung von Lärm und Sprache. Ein ganzzahliger Wert, wobei 10 für geringe und 100 für maximale Empfindlichkeit steht. Standardwert ist 90. | Nein |
Das folgende Beispiel zeigt die Parameter, die an den eventUrl Webhook für DTMF-Eingabe:
{
"speech": { "results": [ ] },
"dtmf": {
"digits": "1234",
"timed_out": true
},
"from": "15551234567",
"to": "15557654321",
"uuid": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab",
"conversation_uuid": "bbbbbbbb-cccc-dddd-eeee-0123456789ab",
"timestamp": "2020-01-01T14:00:00.000Z"
}
Das folgende Beispiel zeigt die Parameter, die zurück an die eventUrl Webhook für Spracheingabe:
{
"speech": {
"recording_url": "https://api-us.nexmo.com/v1/files/eeeeeee-ffff-0123-4567-0123456789ab",
"timeout_reason": "end_on_silence_timeout",
"results": [
{
"confidence": "0.9405097",
"text": "sales"
},
{
"confidence": "0.70543784",
"text": "sails"
},
{
"confidence": "0.5949854",
"text": "sale"
}
]
},
"dtmf": {
"digits": null,
"timed_out": false
},
"from": "15551234567",
"to": "15557654321",
"uuid": "aaaaaaaa-bbbb-cccc-dddd-0123456789ab",
"conversation_uuid": "bbbbbbbb-cccc-dddd-eeee-0123456789ab",
"timestamp": "2020-01-01T14:00:00.000Z"
}
Eingabe Rückgabe Parameter
Siehe Webhook-Referenz für Eingabeparameter, die an den eventUrl.
benachrichtigen.
Verwenden Sie die notify Aktion, um eine benutzerdefinierte Nutzlast an Ihre Ereignis-URL zu senden. Ihr Webhook-Endpunkt kann ein anderes NCCO zurückgeben, das das vorhandene NCCO ersetzt, oder eine leere Nutzlast zurückgeben, was bedeutet, dass das vorhandene NCCO weiterhin ausgeführt wird.
[
{
"action": "notify",
"payload": {
"foo": "bar"
},
"eventUrl": [
"https://example.com/webhooks/event"
],
"eventMethod": "POST"
}
]
| Option | Beschreibung | Erforderlich |
|---|---|---|
payload | Der JSON-Body, der an Ihre Ereignis-URL gesendet wird. | Ja |
eventUrl | Die URL, an die Ereignisse gesendet werden sollen. Wenn Sie einen NCCO zurücksenden, wenn Sie eine Benachrichtigung erhalten, wird dieser den aktuellen NCCO ersetzen. | Ja |
eventMethod | Die zu verwendende HTTP-Methode beim Senden payload zu Ihrem eventUrl. | Nein |
Aufforderungen Spracheinstellungen
| Option | Beschreibung | Erforderlich |
|---|---|---|
language | Die Sprache (BCP-47 Format) für die Eingabeaufforderungen. Standard: en-US. Die möglichen Werte sind in der Tabelle Text-To-Speech-Anleitung. | Nein |
style | Der Gesangsstil (Stimmumfang, Tessitura und Timbre). Standard: 0. Die möglichen Werte sind in der Tabelle Text-To-Speech-Anleitung. | Nein |
Warten
Sie können die wait Aktion, um eine Wartezeit hinzuzufügen und die Ausführung des laufenden NCCO für eine bestimmte Anzahl von Sekunden anzuhalten.
Die Aktion ist synchron. Die Wartezeit beginnt, wenn die Warteaktion im NCCO ausgeführt wird, und endet nach dem angegebenen oder dem Standard-Timeout-Wert. Zu diesem Zeitpunkt setzt der NCCO die Ausführung fort.
Die Website timeout ist ein Float-Wert. Gültige Werte reichen von 0,1 Sekunden bis 7200 Sekunden. Werte unter 0,1 Sekunden sind standardmäßig 0,1 Sekunden, und Werte über 7200 sind standardmäßig 7200 Sekunden. Wird kein Wert angegeben, wird der Standardwert 10 Sekunden sein.
HinweisWenn Sie einen Rückruf benötigen, der Sie darüber informiert, dass die Warteaktion beendet wurde, fügen Sie eine Benachrichtigungsaktion nach der Warteaktion hinzu.
Das folgende NCCO-Beispiel zeigt, wie man die Warteaktion ausführt:
[
{
"action": "talk",
"text": "Welcome to a Vonage moderated conference"
},
{
"action": "wait",
"timeout": 0.5
},
{
"action": "talk",
"text": "We will connect you when an agent is available"
}
]
Sie können die folgenden Optionen verwenden, um eine wait Aktion:
| Option | Beschreibung | Erforderlich |
|---|---|---|
timeout | Steuert die Dauer der Wartezeit, bevor die nächste Aktion im NCCO ausgeführt wird. Dieser Parameter ist ein Float. Gültige Werte reichen von 0,1 Sekunden bis 7200 Sekunden. Werte unter 0,1 sind standardmäßig 0,1 Sekunden und Werte über 7200 sind standardmäßig 7200 Sekunden. Der Standardwert ist 10. | Nein |
Übertragung
Die transfer Aktion ist synchron. Sie können damit die Gesprächsabschnitte aus einem laufenden Gespräch in ein anderes bestehendes Gespräch verschieben. Die Seite transfer Die Aktion ist für das aktuelle Gespräch beendet, und der NCCO des Zielgesprächs steuert weiterhin das Verhalten des Zielgesprächs. Alle Teile der aktuellen Konversation werden in die Zielkonversation übertragen, wobei die Audioeinstellungen (canHear, canSpeak, mute), wenn sie zur Verfügung gestellt werden.
Das folgende NCCO-Beispiel zeigt, wie die Übertragungsaktion ausgeführt wird:
[
...
{
"action": "transfer",
"conversationId": "CON-f972836a-550f-45fa-956c-12a2ab5b7d22",
"canHear": [ "9c132730-8c22-4760-a4dc-40502f05b444" ]
}
...
]
Sie können die folgenden Optionen verwenden, um eine Übertragungsaktion zu steuern:
| Option | Beschreibung | Erforderlich |
|---|---|---|
conversation_id | Ziel-Conversation-ID, definiert als String. | Ja |
canHear | Eine Liste von Bein-UUIDs, die dieser Teilnehmer hören kann, definiert als ein Array von Strings. Wenn keine Liste angegeben wird, kann der Teilnehmer alle hören. Wenn eine leere Liste angegeben wird, kann der Teilnehmer keine anderen Teilnehmer hören. | Nein |
canSpeak | Eine Liste von Bein-UUIDs, von denen dieser Teilnehmer gehört werden kann, definiert als ein Array von Strings. Wenn nichts angegeben wird, kann der Teilnehmer von jedem gehört werden. Wenn eine leere Liste angegeben wird, wird der Teilnehmer von niemandem gehört. | Nein |
mute | Setzen Sie diese Option auf true, um den Teilnehmer stumm zu schalten. Der Ton des Teilnehmers wird nicht in das Gespräch eingespielt und nicht aufgezeichnet. Bei Verwendung von canSpeakdie mute Parameter wird nicht unterstützt. | Nein |