Flux d'appels

Vue d'ensemble

Toute interaction vocale commence par un appel. Ce guide décrit comment les appels sont traités dans différents scénarios.

Inbound Les appels sont effectués vers la plateforme Vonage par l'une des méthodes suivantes :

  • à un Numéro Vonage à partir d'un téléphone ordinaire,
  • à un Domaine SIP attribuée à l'application à partir d'un PBX ou de tout autre logiciel/matériel compatible SIP,
  • à partir d'une application client à l'aide de la fonction Client SDK.

Sortie sont des appels effectués à partir de la plateforme Vonage à destination de

  • un numéro de téléphone normal,
  • un point d'extrémité SIP,
  • l'application client, ou
  • WebSocket serveur.

Les appels sortants sont généralement lancés en réponse à une demande de création d'un nouvel appel via l'API REST. Les appels sortants peuvent également être effectués à partir du flux d'appels d'un appel existant (entrant ou sortant) à l'aide de la fonction connect dans le cadre de l'action BCN. Ce scénario est généralement utilisé pour le transfert d'appels.

Il existe deux types d'appels différents en termes de flux d'appels :

  • "Appel "scriptésLorsque le flux est déterminé par une séquence d'étapes (actions) de questions-réponses ;
  • Conversation en directLe téléphone portable est un outil de communication qui relie deux ou plusieurs participants à une conversation.

Voir les deux concepts décrits ci-dessous, notamment commutation sans rupture entre l'un et l'autre.

Appels scriptés

Les appels entrants et sortants suivent initialement le même flux d'appels une fois qu'ils ont été pris. Ce flux d'appels est contrôlé par un NCCO. Un NCCO est un script d'actions à exécuter dans le contexte de l'appel. Les actions sont exécutées dans l'ordre où elles apparaissent dans le script, l'action suivante commençant lorsque l'exécution de l'action précédente est terminée. Pour plus d'informations sur les NCCO, voir le document Référence NCCO.

Lorsque la plateforme API de Vonage reçoit un appel sur votre numéro Vonage, elle fait une demande HTTP au serveur de l'API de Vonage. answer_url fourni. Pour les appels entrants, le answer_url est configuré dans votre Applications vocales. Pour les appels sortants, vous fournissez un answer_url dans la demande d'API qui crée l'appel.

ApplicationVonageUserApplicationVonageUserinbound callanswer URLNCCONCCO action

Inbound call

Vous pouvez choisir de fournir votre NCCO dans le cadre de la demande que vous envoyez pour créer un appel au lieu de fournir un numéro d'identification de l'appelant. answer_url. Pour ce faire, il faut fournir un ncco dans l'objet NCCO de votre demande.

ApplicationVonageUserApplicationVonageUserNCCOPOST /callsoutbound callNCCO action

Outbound call with embedded NCCO

Pendant l'appel, Vonage fait des demandes de rappel à l'application au niveau de l'écran d'accueil. event_url, défini dans la configuration de l'application ou dans l'action NCCO, s'il y en a une dans le NCCO. Il existe deux types de rappels :

  • par exemple, un changement d'état de l'appel ;
  • demande d'instructions, par exemple, sur un input ou notify rappel - pour ces événements, Vonage attend de l'application qu'elle fournisse un nouveau NCCO à traiter, ce qui permet de mettre en œuvre différents flux d'appels logiques.

Les appels établis avec succès passent par les États suivants :

  • started
  • ringing
  • answered
  • completed

La plateforme Vonage envoie des rappels d'événements correspondants pour chaque statut. Vous trouverez plus de détails dans la section Référence des webhooks.

NCCO et les webhooks permettent de scénariser l'appel sous la forme d'une série de messages et de questions adressés à l'utilisateur, ce qui est applicable à notifications vocales, SVI, assistants vocaux et d'autres scénarios avec une liste prédéfinie d'événements possibles. Avec un NCCO, l'application peut demander à la plateforme Vonage de diffuser le message audio (synthèse vocale ou préenregistré) et attend ensuite l'entrée de l'utilisateur soit avec DTMF ou discours. Lorsque l'utilisateur a sélectionné un menu, votre application en est informée et peut diriger l'appel de manière appropriée en fournissant de nouvelles instructions d'appel sous la forme d'un NCCO.

ApplicationVonageUserApplicationVonageUsertalk...inputinbound callanswer URLNCCONCCO action 1: talkNCCO action N: inputinputevent URLanalyse inputNCCONCCO action

Typical IVR flow

Conversation en direct

Dans certains scénarios, par exemple, un communication vocale privée Dans un cas d'utilisation classique, vous souhaitez connecter deux participants ou plus pour établir une conversation en direct. Chaque appel, entrant ou sortant, est automatiquement ajouté à la nouvelle conversation en coulisses. Pour le connecter à un autre appel avec un NCCO, l'application peut soit

  • Créez un nouvel appel sortant avec l'option connect elle sera automatiquement jointe à la même conversation ;

  • Déplacez l'appel vers une conversation nommée existante (ou nouvelle) à l'aide de la touche conversation action.

Pendant la conversation, l'appel ne suit plus une séquence d'actions, il s'agit maintenant d'une interaction en direct entre deux ou plusieurs membres. Pour contrôler l'appel pendant la conversation, par exemple pour couper ou rétablir le son d'un membre, l'application doit utiliser la fonction API REST.

User 2ApplicationVonageUser 1User 2ApplicationVonageUser 1connectConversation startsinbound callanswer URLNCCOoutbound callPUT /calls/idmodify call

Live conversation flow

En utilisant une séquence de connect Applications, l'application peut ajouter d'autres membres à la conversation (jusqu'à un total de 50 participants à la conversation).

Étant donné que n'importe quel type de terminal vocal peut être utilisé dans l'application connect le deuxième membre n'est pas nécessairement un être humain : il peut s'agir d'un robot vocal qui s'adresse à l'utilisateur en utilisant les médias transmis par l'intermédiaire de l'interface utilisateur. WebSocket connexion.

Passer d'un appel scénarisé à une conversation en direct

Le SVI propose généralement une ou plusieurs options pour parler à un agent, à un vendeur ou à une personne chargée de l'assistance en direct. Par ailleurs, dans certains cas, une conversation en direct peut comporter des parties scénarisées. C'est le cas, par exemple, d'une enquête de satisfaction auprès des clients. La Voice API permet de passer d'une forme d'interaction à une autre, de sorte que le flux d'appels peut se composer de trois parties (ou plus dans les cas complexes) :

  • IVR initial, contrôlé par NCCO et webhooks ; se termine par connect ou conversation action →

  • Conversation en direct avec une personne (ou conférence multipartite), contrôlée par REST API ; se termine par PUT /calls/{id} Appel à l'API REST avec transfer action →

  • L'enquête, contrôlée par le NCCO

AgentApplicationVonageUserAgentApplicationVonageUsertalkinputconversationconversationConversationtransfer: NCCOtalkinputtalkinbound callanswer URLNCCOquestionanswerinput callbackNCCOPOST /callsoutbound callhang upcompletedPUT /calls/idquestionanswerinput callbacksave resultNCCOmessageend call

Switching from scripted call to live conversation and back

Le scénario décrit ci-dessus est un exemple typique ; cependant, l'application peut avoir n'importe quelle combinaison de parties scénarisées et en direct en fonction d'un certain cas d'utilisation. Voir l'exemple de l'application Tutoriel sur l'augmentation des centres de contact pour apprendre à mettre en œuvre, étape par étape, le scénario décrit.