Hoppa till navigering

Five9

Överför samtal från Five9 VCC till ElevenAgents med Five9 AI Agent Connect.

Innan du följer den här guiden kan du läsa guiden om SIP- trunkar för att förstå hur ElevenLabs stöder SIP- trunkar och anpassade SIP-rubriker.

Översikt

Den här guiden förklarar hur du integrerar ElevenAgents med Five9 Virtual Contact Center (VCC) med Five9 AI Agent Connect. Five9 överför ett aktivt samtal till ett ElevenLabs-telefonnummer, ElevenLabs-agenten hanterar konversationen och ElevenLabs skickar routing- eller dispositionsdata tillbaka till Five9 så att Five9-flödet kan fortsätta.

Så fungerar Five9-integrationen

Five9 AI Agent Connect använder en extern överföring via SIP, där samtalskontext utbyts genom anpassade SIP-X--rubriker i båda riktningarna:

  1. Inkommande överföring: Five9 IVR External Transfer Module överför samtalet till ett ElevenLabs-telefonnummer och skickar samtalskontext som SIP-X--rubriker i INVITE.
  2. Konversation: ElevenLabs besvarar samtalet och dirigerar det till rätt agent, valfritt via en routeragent, och hanterar sedan konversationen med den som ringer.
  3. Returväg: När konversationen avslutas lägger ElevenLabs till routing- och dispositionsdata i SIP BYE som X--rubriker.
  4. Routing efter AI: Five9 mappar de returnerade rubrikerna till samtalsvariabler och fortsätter samtalsflödet, till exempel genom att överföra till en mänsklig agent, avsluta samtalet eller registrera en disposition.

Krav

Innan du konfigurerar Five9-integrationen ska du säkerställa att du har:

  1. En aktiv Five9 VCC-domän med AI Agent Connect aktiverat.
  2. Administratörsåtkomst till Five9-konfigurationen, eller ett Five9-implementeringsteam som kan göra ändringarna.
  3. Ett ElevenLabs-konto och en agent som kan hantera de överförda samtalen.
  4. Ett SIP-trunktelefonnummer som har importerats till ElevenLabs och ska användas som Five9:s överföringsdestination.

AI Agent Connect är ett betalt tillägg till Five9 VCC och är inte aktiverat som standard. Kontakta din Five9- kundansvariga för att aktivera det för din domän innan du påbörjar den här integreringen.

Båda teamen bör komma överens om telefonnumret för överföring, rubriknamnen som skickas i respektive riktning, routningsvärdena och testplanen innan konfigurationen börjar.

Konfigurera ElevenLabs

1

Importera telefonnumret för överföring

Följ guiden om SIP-trunkar för att importera telefonnumret som Five9 ska överföra samtal till. Anpassade SIP-rubriker och BYE-rubriker kräver ett SIP-trunktelefonnummer.

Importera numret i E.164-format med landskoden +1 (till exempel +18005550100). Five9 skickar överföringen i detta format och en avvikelse gör att överföringen misslyckas.

2

Tilldela en agent

Om en enda agent hanterar alla samtal från Five9 tilldelar du den direkt till telefonnumret i instrumentpanelen för telefonnummer.

Om flera agenter delar ett överföringsnummer tilldelar du i stället en routeragent och följer Dirigera flera agenter via ett nummer.

3

Konfigurera returnerade rubriker

Mappa de dynamiska variabler som agenten anger under konversationen till de SIP BYE-rubriknamn som Five9 förväntar sig. Se Konfigurera BYE-rubriker.

4

Gör testsamtal

Ring testsamtal med Five9 och bekräfta att de inkommande rubrikerna kommer fram som dynamiska variabler och att BYE-rubrikerna returneras som förväntat. Inkommande rubrikvärden visas i konversationshistoriken under fliken Phone Call.

Dirigera flera agenter via ett nummer

För att dirigera samtal till flera ElevenLabs-agenter via ett enda Five9-överföringsnummer tilldelar du en routeragent till telefonnumret och låter Five9 skicka målagenten i en rubrik som X-AgentID.

Inkommande X--rubriker exponeras som dynamiska variabler, så X-AgentID är tillgänglig för routeragenten som {{sip_agentid}}. Konfigurera routeragenten med verktyget agentöverföring och lägg till en överföringsregel för varje X-AgentID-värde du förväntar dig, och mappa det till agenten som ska ta samtalet.

Detta gör att du slipper tillhandahålla ett separat telefonnummer för varje agent.

Rubriker som skickas från Five9 till ElevenLabs

Five9 kan skicka metadata om samtal som SIP-X--rubriker i INVITE. Rubriknamn normaliseras genom att ta bort prefixet X-, konvertera till gemener, ersätta bindestreck med understreck och lägga till prefixet sip_.

RubrikDynamisk variabelBeskrivning
X-CallANI{{sip_callani}}Telefonnumret till den som ringer.
X-CallDNIS{{sip_calldnis}}Det uppringda telefonnumret.
X-CallID{{sip_callid}}Unik samtalsidentifierare för Five9.
X-CallSessionID{{sip_callsessionid}}Identifierare för den aktuella sessionen.
X-CallCampaign{{sip_callcampaign}}Namn på Five9-kampanjen.
X-AgentID{{sip_agentid}}Målagent i ElevenLabs, används för routing via en routeragent.

Använd dessa variabler i agentprompter, första meddelanden och verktyg för att anpassa konversationen.

De reserverade rubrikerna X-Call-ID och X-Caller-ID mappas till de dynamiska systemvariablerna system__call_sid och system__caller_id. Five9 skickar X-CallID och X-CallANI utan bindestreck, som i stället normaliseras till sip_callid och sip_callani. Bekräfta vilka variabler som fylls i under testsamtal innan du refererar till dem i prompter.

Rubriker som returneras från ElevenLabs till Five9

ElevenLabs returnerar routing- och rapporteringsdata i SIP BYE. Följande rubriknamn är den rekommenderade konventionen för Five9 AI Agent Connect:

RubrikBeskrivning
X-RouteTypeÅtgärden Five9 ska vidta, till exempel SkillTransfer.
X-RouteValueMålet för åtgärden, till exempel namnet på en Five9-kunskapsgrupp.
X-RouteReasonKontext för routingbeslutet, till exempel kundens avsikt.
X-ConversationIdElevenLabs konversationsidentifierare för loggkorrelation.

Du kan returnera ytterligare X--rubriker som ditt Five9-flöde behöver. Varje rubrikvärde kommer från en dynamisk variabel på agenten, så agenten måste ange dessa variabler under konversationen.

Konfigurera BYE-rubriker

BYE-rubriker returnerar slutvärdena för agentens dynamiska variabler till Five9. Mappa varje namn på en dynamisk variabel till ett rubriknamn med attributes_to_headers i telefonnumrets inbound_trunk_config. Både variabler som agenten anger och dynamiska systemvariabler som system__conversation_id kan mappas:

import os
from dotenv import load_dotenv
from elevenlabs import ElevenLabs, InboundSipTrunkConfigRequestModel
load_dotenv()
elevenlabs = ElevenLabs(api_key=os.getenv("ELEVENLABS_API_KEY"))
elevenlabs.conversational_ai.phone_numbers.update(
phone_number_id="phnum_8901k4t9z5defmb8vh3e9361y7nj",
inbound_trunk_config=InboundSipTrunkConfigRequestModel(
attributes_to_headers={
"route_type": "X-RouteType",
"route_value": "X-RouteValue",
"route_reason": "X-RouteReason",
"system__conversation_id": "X-ConversationId",
}
),
)

Rubrikvärdet är den dynamiska variabelns värde i slutet av konversationen, inklusive värden som angetts under samtalet via agentverktyg eller webhook-åsidosättningar. Ett samtal som avslutas med att agenten anger route_type till SkillTransfer och route_value till billing_support ger följande BYE-rubriker:

X-RouteType: SkillTransfer
X-RouteValue: billing_support
X-RouteReason: Customer needs help with an invoice
X-ConversationId: conv_7401k6a2b8cxyzmn9pq3r5s7t1uv

Five9 dirigerar sedan den som ringer till kunskapsgruppen billing_support.

Rekommenderade routningsvärden

Håll värdena för X-RouteType enkla och förutsägbara så att Five9-flödet kan förgrena sig direkt utifrån dem.

X-RouteTypeExempel på X-RouteValueBeskrivning
SkillTransferbilling_supportÖverför samtalet till en specifik Five9-kunskapskö.
PhoneTransfer+18005550199Överför samtalet till ett externt telefonnummer.
HangupTomtAvsluta samtalet efter AI-interaktionen.
DispositionOnlyResolvedAvsluta samtalet och registrera en specifik disposition.

Konfigurera Five9

Ditt Five9-implementeringsteam kommer vanligtvis att:

  1. Aktivera AI Agent Connect för din Five9-domän.
  2. Konfigurera Five9:s IVR-överföringsflöde.
  3. Lägga till ElevenLabs-telefonnumret som överföringsdestination.
  4. Konfigurera External Transfer Module.
  5. Konfigurera utgående X--rubriker som skickas till ElevenLabs.
  6. Konfigurera inkommande X--rubriker som returneras av ElevenLabs.
  7. Mappa de returnerade rubrikerna till Five9-samtalsvariabler.
  8. Konfigurera routningslogiken efter AI som förgrenar sig utifrån dessa variabler.
  9. Testa samtal från början till slut.

Felsökning

  • Bekräfta att ElevenLabs-telefonnumret har importerats som ett SIP-trunknummer och har en agent tilldelad.
  • Kontrollera att överföringsdestinationen som konfigurerats i Five9 External Transfer Module matchar det importerade numret.
  • Kontrollera att brandväggen tillåter SIP-signaltrafik på den konfigurerade transporten och porten, och att RTP-portar inte blockeras.
  • Bekräfta att Five9 skickar rubrikerna med prefixet X- i INVITE.
  • Kontrollera det normaliserade variabelnamnet. X-AgentID blir {{sip_agentid}}, inte {{X-AgentID}} eller {{agent_id}}.
  • Granska konversationshistoriken under fliken Phone Call för att se vilka rubriker som kom fram.
  • Anpassade rubriker kan inte åsidosätta systemvariablerna system__call_sid och system__caller_id.
  • Kontrollera att attributes_to_headers är inställt i inbound_trunk_config för telefonnumret som tar emot samtalet.
  • Bekräfta att nycklarna är namn på dynamiska variabler och att värdena är rubriknamn, inte tvärtom.
  • Se till att agenten faktiskt anger dessa dynamiska variabler under konversationen. En oinställd variabel ger inget rubrikvärde.
  • Bekräfta att Five9 skickar X-AgentID vid varje överfört samtal.
  • Kontrollera att varje X-AgentID-värde har en matchande överföringsregel i routeragenten.
  • Kontrollera att routeragentens överföringsregler refererar till {{sip_agentid}}.

Användbara länkar