Personalizacja Twilio

Skonfiguruj personalizację przychodzących połączeń Twilio za pomocą webhooków.

Omówienie

Gdy odbierasz połączenia przychodzące Twilio, możesz dynamicznie pobierać dane inicjujące rozmowę przez webhook. Pozwala to dostosować działanie agenta na podstawie informacji o rozmówcy i innych danych kontekstowych.

Informacje o tym, kiedy webhook jest wywoływany i jak wygląda żądanie, znajdziesz w sekcji Webhooki inicjujące rozmowę.

Jak to działa

  1. Gdy nadejdzie połączenie Twilio, ElevenAgents wywoła webhook pod wskazanym adresem endpointu, przekazując jako argumenty informacje o połączeniu (caller_id, agent_id, called_number, call_sid, conversation_id)
  2. Twój webhook zwraca dane klienta inicjujące rozmowę, w tym zmienne dynamiczne i nadpisania (przykład poniżej)
  3. Dane są używane do rozpoczęcia rozmowy

System wykorzystuje czas łączenia/wydzwaniania Twilio do równoległego pobrania danych webhooka, zapewniając płynne działanie, w którym:

  • Użytkownicy słyszą oczekiwany dźwięk łączenia telefonicznego
  • Równolegle ElevenAgents pobiera potrzebne dane webhooka
  • Rozmowa rozpoczyna się z pobranymi danymi, gdy połączenie audio zostanie nawiązane

Konfiguracja

1

Skonfiguruj szczegóły webhooka

Na stronie ustawień ElevenAgents skonfiguruj adres URL webhooka i dodaj sekrety potrzebne do uwierzytelniania.

Włącz webhook

Kliknij webhook, aby zmienić, które sekrety są wysyłane w nagłówkach.

Dodaj sekrety do nagłówków

2

Włącz pobieranie danych inicjujących rozmowę

Na karcie „Security” na stronie agenta włącz pobieranie danych inicjujących rozmowę dla przychodzących połączeń Twilio i zdefiniuj pola, które można nadpisywać.

Włącz webhook

3

Zaimplementuj endpoint webhooka do odbierania danych Twilio

Webhook otrzyma żądanie POST z następującymi parametrami:

ParametrTypOpis
caller_idstringNumer telefonu rozmówcy
agent_idstringID agenta odbierającego połączenie
called_numberstringNumer Twilio, na który zadzwoniono
call_sidstringUnikalny identyfikator połączenia Twilio
conversation_idstringIdentyfikator rozmowy ElevenLabs
4

Zwróć dane klienta inicjujące rozmowę

Twój webhook musi zwrócić odpowiedź JSON zawierającą dane inicjujące dla agenta.

Pole dynamic_variables musi zawierać wszystkie zmienne dynamiczne zdefiniowane dla agenta. Nadpisania są natomiast całkowicie opcjonalne. Więcej informacji o zmiennych dynamicznych i nadpisaniach znajdziesz w dokumentacji zmiennych dynamicznych i nadpisań.

Przykładowa odpowiedź może wyglądać tak:

{
"type": "conversation_initiation_client_data",
"conversation_config_override": {
"agent": {
"prompt": {
"prompt": "The customer's bank account balance is $100. They are based in San Francisco.",
"llm": "gpt-5.6-luna"
},
"first_message": "Hi, how can I help you today?",
"language": "en"
},
"tts": {
"voice_id": "new-voice-id"
},
"conversation": {
"text_only": false
}
},
"dynamic_variables": {
"customer_name": "John Doe",
"account_status": "premium",
"last_interaction": "2026-01-15"
},
"branch_id": "agtbrch_xxxx",
"environment": "production"
}

ElevenAgents użyje zmiennych dynamicznych do uzupełnienia danych inicjujących rozmowę, a rozmowa rozpocznie się płynnie.

Upewnij się, że webhook odpowiada w rozsądnym czasie, aby uniknąć opóźnień w obsłudze połączenia.

Zabezpieczenia

  • Używaj tylko endpointów HTTPS
  • Zaimplementuj uwierzytelnianie za pomocą nagłówków żądań
  • Przechowuj poufne wartości jako sekrety przez menedżer sekretów ElevenLabs
  • Sprawdzaj parametry przychodzących żądań