Five9
Transférez les appels de Five9 VCC vers ElevenAgents avec Five9 AI Agent Connect.
Avant de suivre ce guide, consultez le guide sur le trunking SIP pour comprendre comment ElevenLabs prend en charge les trunks SIP et les en-têtes SIP personnalisés.
Vue d’ensemble
Ce guide explique comment intégrer ElevenAgents au Virtual Contact Center (VCC) de Five9 avec Five9 AI Agent Connect. Five9 transfère un appel en direct vers un numéro de téléphone ElevenLabs, l’agent ElevenLabs gère la conversation, puis ElevenLabs renvoie à Five9 des données de routage ou de qualification afin que le flux Five9 puisse se poursuivre.
Fonctionnement de l’intégration Five9
Five9 AI Agent Connect utilise un transfert externe via SIP, le contexte de l’appel étant échangé dans les deux sens au moyen d’en-têtes SIP X- personnalisés :
- Transfert entrant : le module de transfert externe IVR de Five9 transfère l’appel vers un numéro de téléphone ElevenLabs et envoie le contexte de l’appel sous forme d’en-têtes SIP
X-dans l’INVITE. - Conversation : ElevenLabs répond à l’appel et l’achemine vers le bon agent, éventuellement via un agent routeur, puis gère la conversation avec l’appelant.
- Chemin de retour : lorsque la conversation se termine, ElevenLabs ajoute les données de routage et de qualification au message SIP BYE sous forme d’en-têtes
X-. - Routage après IA : Five9 associe les en-têtes renvoyés à des variables d’appel et poursuit le flux d’appel, par exemple en transférant vers un agent humain, en terminant l’appel ou en enregistrant une qualification.
Prérequis
Avant de configurer l’intégration Five9, assurez-vous de disposer de :
- Un domaine Five9 VCC actif avec AI Agent Connect activé.
- Un accès administrateur à la configuration Five9, ou d’une équipe d’implémentation Five9 pour effectuer les modifications.
- Un compte ElevenLabs et d’un agent pour gérer les appels transférés.
- Un numéro de téléphone de trunk SIP importé dans ElevenLabs pour servir de destination de transfert Five9.
AI Agent Connect est un module complémentaire payant de Five9 VCC et n’est pas activé par défaut. Contactez votre responsable de compte Five9 pour l’activer sur votre domaine avant de commencer cette intégration.
Les deux équipes doivent convenir du numéro de téléphone de transfert, des noms d’en-têtes envoyés dans chaque sens, des valeurs de routage et du plan de test avant de commencer la configuration.
Configuration d’ElevenLabs
Importez le numéro de téléphone de transfert
Suivez le guide sur le trunking SIP pour importer le numéro de téléphone vers lequel Five9 transférera les appels. Les en-têtes SIP personnalisés et les en-têtes BYE nécessitent un numéro de téléphone de trunk SIP.
Importez le numéro au format E.164 avec un indicatif pays +1 (par exemple, +18005550100). Five9 envoie le transfert dans ce format, et toute différence entraînera l’échec du transfert.
Attribuez un agent
Si un seul agent traite tous les appels de Five9, attribuez-le directement au numéro de téléphone dans le Dashboard Phone Numbers.
Si plusieurs agents partagent un numéro de transfert, attribuez plutôt un agent routeur et suivez la section Router plusieurs agents via un même numéro.
Configurez les en-têtes renvoyés
Associez les variables dynamiques que votre agent définit pendant la conversation aux noms d’en-têtes SIP BYE attendus par Five9. Consultez Configuration des en-têtes BYE.
Effectuez des appels de test
Effectuez des appels de test avec Five9 et vérifiez que les en-têtes entrants arrivent comme variables dynamiques et que les en-têtes BYE sont renvoyés comme prévu. Les valeurs des en-têtes entrants sont visibles dans l’historique des conversations, sous l’onglet Phone Call.
Router plusieurs agents via un même numéro
Pour router les appels vers plusieurs agents ElevenLabs via un seul numéro de transfert Five9, attribuez un agent routeur au numéro de téléphone et demandez à Five9 d’envoyer l’agent cible dans un en-tête tel que X-AgentID.
Les en-têtes X- entrants sont exposés en tant que variables dynamiques. X-AgentID est donc disponible pour l’agent routeur sous la forme {{sip_agentid}}. Configurez l’agent routeur avec l’outil de transfert d’agent et ajoutez une règle de transfert pour chaque valeur X-AgentID attendue, en l’associant à l’agent qui doit prendre l’appel.
Vous évitez ainsi de provisionner un numéro de téléphone distinct pour chaque agent.
En-têtes envoyés de Five9 vers ElevenLabs
Five9 peut envoyer des métadonnées d’appel sous forme d’en-têtes SIP X- dans l’INVITE. Les noms d’en-têtes sont normalisés en supprimant le préfixe X-, en les convertissant en minuscules, en remplaçant les traits d’union par des traits de soulignement et en ajoutant le préfixe sip_.
Utilisez ces variables dans les prompts, les premiers messages et les outils des agents pour personnaliser la conversation.
Les en-têtes réservés X-Call-ID et X-Caller-ID sont associés aux variables dynamiques
système system__call_sid et
system__caller_id. Five9 envoie les versions sans trait d’union X-CallID et X-CallANI, qui sont plutôt normalisées en
sip_callid et sip_callani. Vérifiez quelles variables sont renseignées lors des appels de test avant d’y faire
référence dans les prompts.
En-têtes renvoyés d’ElevenLabs vers Five9
ElevenLabs renvoie des données de routage et de reporting dans le message SIP BYE. Les noms d’en-têtes suivants constituent la convention recommandée pour Five9 AI Agent Connect :
Vous pouvez renvoyer tout en-tête X- supplémentaire requis par votre flux Five9. Chaque valeur d’en-tête provient d’une variable dynamique de l’agent ; l’agent doit donc définir ces variables pendant la conversation.
Configuration des en-têtes BYE
Les en-têtes BYE renvoient à Five9 les valeurs finales des variables dynamiques de l’agent. Associez chaque nom de variable dynamique à un nom d’en-tête avec attributes_to_headers dans l’inbound_trunk_config du numéro de téléphone. Vous pouvez associer les variables définies par votre agent et les variables dynamiques système, telles que system__conversation_id :
La valeur de l’en-tête correspond à celle de la variable dynamique à la fin de la conversation, y compris les valeurs définies pendant l’appel via les outils de l’agent ou les remplacements par webhook. Un appel qui se termine avec l’agent définissant route_type sur SkillTransfer et route_value sur billing_support produit les en-têtes BYE suivants :
Five9 route alors l’appelant vers la compétence billing_support.
Valeurs de routage recommandées
Gardez les valeurs X-RouteType simples et prévisibles afin que le flux Five9 puisse créer directement des branches à partir de celles-ci.
Configuration Five9
Votre équipe d’implémentation Five9 devra généralement :
- Activer AI Agent Connect pour votre domaine Five9.
- Configurer le flux de transfert IVR Five9.
- Ajouter le numéro de téléphone ElevenLabs comme destination de transfert.
- Configurer le module de transfert externe.
- Configurer les en-têtes
X-sortants envoyés à ElevenLabs. - Configurer les en-têtes
X-entrants renvoyés par ElevenLabs. - Associer les en-têtes renvoyés à des variables d’appel Five9.
- Configurer la logique de routage post-IA qui crée des branches selon ces variables.
- Tester les appels de bout en bout.
Résolution des problèmes
Les appels transférés ne parviennent pas à se connecter
- Vérifiez que le numéro de téléphone ElevenLabs est importé comme numéro de trunk SIP et qu’un agent lui est attribué.
- Vérifiez que la destination de transfert configurée dans le module de transfert externe Five9 correspond au numéro importé.
- Vérifiez que votre pare-feu autorise le trafic de signalisation SIP sur le transport et le port configurés, et que les ports RTP ne sont pas bloqués.
Les en-têtes entrants ne sont pas disponibles en tant que variables dynamiques
- Vérifiez que Five9 envoie les en-têtes avec un préfixe
X-dans l’INVITE. - Vérifiez le nom de variable normalisé.
X-AgentIDdevient{{sip_agentid}}, et non{{X-AgentID}}ou{{agent_id}}. - Consultez l’historique des conversations sous l’onglet Phone Call pour voir quels en-têtes sont arrivés.
- Les en-têtes personnalisés ne peuvent pas remplacer les variables système
system__call_sidetsystem__caller_id.
Les en-têtes BYE sont absents ou vides
- Vérifiez que
attributes_to_headersest défini dansinbound_trunk_configpour le numéro de téléphone qui reçoit l’appel. - Vérifiez que les clés sont des noms de variables dynamiques et les valeurs des noms d’en-têtes, et non l’inverse.
- Assurez-vous que l’agent définit bien ces variables dynamiques pendant la conversation. Une variable non définie ne produit aucune valeur d’en-tête.
L’agent routeur transfère vers le mauvais agent
- Vérifiez que Five9 envoie
X-AgentIDà chaque appel transféré. - Vérifiez que chaque valeur
X-AgentIDdispose d’une règle de transfert correspondante sur l’agent routeur. - Vérifiez que les règles de transfert de l’agent routeur font référence à
{{sip_agentid}}.