Wiadomości głosowe
SpeechCall to rodzaj wiadomości z interaktywną odpowiedzią głosową (IVR), który umożliwia wykonywanie automatycznych połączeń głosowych za pomocą opcji menu i interakcji w formacie DTMF (dual-tone multi-frequency).
Przegląd
SpeechCall umożliwia firmom: - Wykonuj automatyczne połączenia głosowe z klientami - Odtwórz wstępne wiadomości audio - Przedstaw interaktywne opcje menu - Obsługa reakcji na naciśnięcie klawisza DTMF (0-9, *, #) - Zdefiniuj niestandardowe zachowanie dla nieprawidłowych danych wejściowych/przekroczenia limitu czasu - Wyzwalaj webhooki z niestandardowymi treściami i nagłówkami w oparciu o wybory użytkownika - Zarządzaj dynamicznie przepływem połączeń (nawiguj pomiędzy menu)
Przypadki użycia
- Ankiety konsumenckie - Zbieraj opinie za pomocą opcji menu telefonu
- Przypomnienia o spotkaniach - Potwierdź lub przełóż spotkanie za pomocą interakcji głosowej
- Śledzenie zamówienia - Zapewnia aktualizacje statusu zamówienia
- Interaktywne powiadomienia - Dostarczaj ważne informacje wraz z opcjami działania
- Weryfikacja głosowa - Uwierzytelnianie wieloskładnikowe za pośrednictwem połączeń głosowych
Format żądania
Podstawowa struktura
KOD_BLOKU_0
Opis parametru
| Parametr | Wpisz | Wymagane | Opis |
|---|---|---|---|
od |
ciąg | Tak | Identyfikator nadawcy (nazwa alfa lub identyfikator) |
do |
ciąg | Tak | Numer telefonu odbiorcy w formacie międzynarodowym |
tekst |
ciąg | Tak | Wartość tekstowa, zazwyczaj „ivr” dla SpeechCall |
typ |
ciąg | Tak | Musi być "rozmowa" |
menu |
tablica | Tak | Tablica konfiguracji menu dla połączenia |
Konfiguracja menu
Każdy obiekt menu zawiera:
| Parametr | Wpisz | Wymagane | Opis |
|---|---|---|---|
introUrl |
ciąg | Tak | Adres URL lub identyfikator wstępnego pliku audio |
idleTimeoutMs |
liczba całkowita | Nie | Limit czasu w milisekundach oczekiwania na naciśnięcie klawisza (np. „10000”). Jeśli użytkownik nie zareaguje, zostaną wykonane akcje skonfigurowane pod klawiszem zły |
dtmfActions |
obiekt | Tak | Mapa kluczy DTMF do akcji |
Akcje DTMF
Obiekt dtmfActions odwzorowuje klucze DTMF lub warunki specjalne na tablice akcji:
| Klucz DTMF | Opis |
|---|---|
d0 |
Naciśnij 0 |
d1 |
Naciśnij 1 |
d2 |
Naciśnij 2 |
| ... | ... |
d9 |
Naciśnij 9 |
d* |
Naciśnij * |
d# |
Naciśnij # |
| „źle” | Wywołuje się po naciśnięciu nieprawidłowego klawisza lub osiągnięciu idleTimeoutMsec bez wprowadzania danych |
Każdy klucz/warunek DTMF jest odwzorowywany na tablicę akcji, które będą wykonywane sekwencyjnie.
Obsługiwane akcje
| Akcja | Parametry | Opis |
|---|---|---|
webhook |
url (string, wymagany)treść (obiekt, opcjonalny)headers (obiekt, opcjonalny) |
Wysyła żądanie HTTP POST w formacie JSON na podany adres URL. Obiekt „treść” zostanie zagnieżdżony w polu „akcja” w żądaniu webhooka. Nagłówki niestandardowe są dołączane jako nagłówki HTTP. |
| „rozłącz” | Brak | Kończy połączenie |
gotoMenu |
menu (ciąg znaków lub liczba całkowita) |
Przechodzi wywołanie do innego menu w tablicy menu przy użyciu indeksu opartego na 0 (np. `"1") |
Format dostarczania webhooka
Kiedy zostanie uruchomiona akcja webhook, system wysyła żądanie HTTP POST do skonfigurowanego url z Content-Type: application/json.
Nagłówki żądań webhooka
Jeśli akcja jest skonfigurowana z parametrem „headers”, te pary klucz-wartość zostaną uwzględnione w żądaniu jako nagłówki HTTP.
Treść żądania webhooka
Ładunek JSON wysłany na adres URL webhooka ma następującą strukturę:
KOD_BLOKU_1
| Pole | Wpisz | Opis |
|---|---|---|
od |
ciąg | Numer telefonu osoby dzwoniącej / ID nadawcy |
do |
ciąg | Numer telefonu odbiorcy |
środek |
ciąg | Identyfikator wiadomości |
akcja |
obiekt | Niestandardowy obiekt JSON zdefiniowany w polu treść akcji |
Kompletny przykład
Prosty IVR z limitem czasu i walidacją danych wejściowych
KOD_BLOKU_2
Złożony IVR z wieloma menu i routingiem DTMF
Ten przykład pokazuje, jak zdefiniować wiele menu i nawigować między nimi za pomocą akcji „gotoMenu”, gdy użytkownik wprowadzi nieprawidłowy klucz lub upłynie limit czasu wywołania. Pokazuje także niestandardowe treści i niestandardowe nagłówki HTTP wysyłane z wyzwalaczami elementu webhook.
KOD_BLOKU_3
Format odpowiedzi
Odpowiedź pomyślna
KOD_BLOKU_4
Obsługa błędów
| Stan HTTP | Opis |
|---|---|
| 200 | Żądanie powiodło się |
| 400 | Nieprawidłowy format żądania |
| 401 | Uwierzytelnienie nie powiodło się |
| 429 | Przekroczono limit stawki |
| 500 | Wewnętrzny błąd serwera |
cURL Przykład
KOD_BLOKU_5
Najlepsze praktyki
- Pliki audio — upewnij się, że początkowe adresy URL są dostępne, a pliki audio mają obsługiwane formaty
- Niezawodność webhooka – Projektuj webhooki tak, aby szybko reagowały (w ciągu 2 sekund)
- Opcje DTMF – Ogranicz opcje menu do 4–6 opcji, aby zapewnić lepszą wygodę użytkowania
- Obsługa limitu czasu - Użyj
idleTimeoutMsec, aby określić niestandardowe limity braku aktywności (np. 10000 ms) i skonfigurować płynne przywracanie ustawień awaryjnych podzłymklawiszem DTMF (np. powtarzanie menu lub rozłączanie się) - Przepływ połączeń w wielu menu – Używaj
gotoMenuostrożnie, aby zapobiec nieskończonym pętlom podczas przekierowywania użytkowników z powrotem do poprzednich menu - Strategia awaryjna – Używaj wiadomości zastępczych dla użytkowników, którzy nie odbierają lub nie rozłączają się
Powiązane tematy
- Wyślij wiadomość - Ogólna instrukcja wysyłania wiadomości
- Połączenie błyskawiczne - Proste połączenia z weryfikacją głosową
- Sprawdź stan - Śledź stan dostarczenia wiadomości
- Typy wiadomości - Przegląd wszystkich obsługiwanych typów wiadomości