Scénario client
Les hôtels, les compagnies aériennes et les entreprises proposant des programmes VIP souhaitent privilégier les appels VIP pour un service exceptionnel. Ils recherchent un moyen efficace d'identifier et d'orienter ces appels vers une assistance dédiée.
Opportunité
Le fait d’orienter rapidement les clients directement vers les services VIP renforcera leur fidélité et fournira la prestation exceptionnelle qu’attendent les VIP.
Solution
- Reconnaissez automatiquement les appelants VIP en vérifiant leur numéro de téléphone dans votre base de données clients à l'aide de requêtes HTTP.
- Si le numéro n'est pas reconnu, demandez aux appelants de saisir leur identifiant client ou un code de sécurité via le clavier de leur téléphone.
- Une fois que vous avez identifié l'appelant comme un client VIP, vous pouvez ensuite le diriger directement vers les services VIP.
Cliquez sur les onglets ci-dessous pour obtenir un guide étape par étape sur la façon de prioriser les clients VIP dans votre PBX :
Commencer
Prérequis
- Nœuds avancés activés.
- Un point API pour accéder à votre base de données clients, par exemple www.votreentreprise.com/client/isVIPCustomer?{phoneNumber}.
- Jeton d'accès à l'API (si nécessaire à votre système).
- Votre code de sécurité de file d'attente VIP.
Créez un nouveau SVI ou utilisez-en un existant
- S'il s'agit de votre premier IVR, veuillez vous référer à l'article support pour obtenir des informations sur la configuration d'un IVR avec des nœuds standard : Comment configurer vos services PBX .
- L'image de droite est un exemple de configuration SVI complète adaptée à ce cas d'utilisation. Utilisez-la comme référence pour créer votre propre flux SVI dans le portail d'administration .
- Les étapes suivante svous guideront dans la configuration des nœuds avancés marqués en vert dans le flux IVR.
Recherche HTTP du numéro entrant
Ajouter un nœud de requête HTTP
Choisissez une case vide dans votre SVI et cliquez sur Avancé > Requête HTTP pour ajouter le nœud.
Dans ce nœud, nous vérifierons si le numéro de téléphone du client existe dans votre base de données clients, en envoyant une requête HTTP à votre API.
URL
Saisissez l'adresse URL de la requête HTTP. Pour inclure le numéro de téléphone de l'appelant, saisissez {system.caller}. Le numéro sera envoyé au format E.164 (par exemple, +46706170786).
Gardez à l’esprit que la demande est envoyée depuis le réseau Telavox, ce qui signifie que le système doit autoriser les demandes provenant du réseau 80.83.208.0/20.
Qu'est-ce qu'une requête HTTP ?
HTTP fonctionne comme un protocole de requête-réponse entre un client et un système. Les informations que vous pouvez recevoir du système et comment y accéder sont spécifiées dans son API.
Cet exemple nécessite un point API capable d'accepter une requête contenant un numéro de commande et de renvoyer une réponse indiquant le statut de la commande correspondante. Le système auquel la requête est envoyée peut être le vôtre ou l'API d'un fournisseur que vous utilisez.
Nom de la variable
Choisissez le nom que vous souhaitez donner à la réponse de la requête HTTP. Plus la description est précise, plus elle sera facile à comprendre pour le prochain nœud.
La variable enregistrée ici est accessible ultérieurement dans d'autres nœuds avancés ou dans un widget d'appel . Un widget d'appel peut afficher des informations sur un appel à l'agent qui y répond.
Quelle sera la réponse ?
La réponse peut varier selon la conception de votre API. Dans cet exemple, elle est soit vraie, soit fausse, et nous l'appellerons isVIPCustomer.
JSON-Path
Choisissez cette option en fonction du format dans lequel la réponse de l'API sera.
Si la réponse de votre système est déjà exactement ce que vous souhaitez enregistrer dans la variable, comme « true » ou « false » dans ce cas, alors il n'est pas nécessaire d'écrire un JSON-path.
Mais si la réponse est un objet d'information, où vous devez extraire la partie spécifique nécessaire à la variable, entrez ici le chemin d'accès à cette partie.
Exemple d'un JSON object :
{
“customer”: {
“name”: “John Doe”,
“phoneNumber”: “+46706170786”,
“hasVIPMembership”: true,
}
}
Pour enregistrer la partie d'adhésion VIP dans la variable, entrez customer.hasVIPMembership comme chemin JSON-Path.
Méthode HTTP
Spécifiez la méthode utilisée par le point de terminaison de l'API, GET ou POST.
Dans cet exemple, nous utilisons GET car c'est la méthode standard pour une requête qui affiche des informations de la base de données système (comme l'adhésion VIP).
Quand dois-je utiliser POST ?
Dans la plupart des cas, POST est utilisé lorsque la requête API ne vise pas à afficher des informations, mais à mettre à jour la base de données système. Par exemple, une requête API vise à ajouter le numéro appelant à une liste de la base de données.
En-têtes HTTP
Vous avez ici la possibilité d'insérer des en-têtes dans la requête si votre système les requiert. Cela peut être à des fins d'authentification, par exemple. Une autre façon de s'authentifier sans utiliser d'en-têtes est de vérifier que le pare-feu de votre service autorise les requêtes provenant de l'adresse 80.83.208.0/20.
Après avoir saisi un nom et une valeur, cliquez sur le bouton pour ajouter cet en-tête à la requête. Vous pouvez ajouter plusieurs en-têtes.
Existe-t-il des limites à ce que je peux envoyer dans un en-tête ?
Il n'est pas possible d'envoyer des objets imbriqués/JSON. Il n'y a qu'un seul nom et une seule valeur en texte brut par en-tête.
Nous ne prenons pas en charge OAuth, une méthode d'authentification utilisée notamment par Microsoft Dynamics. Elle nécessite l'envoi et la transmission d'un jeton, ce qui n'est pas possible avec Advanced Nodes.
Routage d'appel en fonction de la réponse
Ajouter un nœud de condition
Sélectionnez une case vide dans votre SVI et cliquez sur Avancé > Condition pour ajouter le nœud. Ce nœud vérifiera si la réponse à la requête HTTP indique que le client est membre VIP ou non.
Nom de la variable
Entrez le nom de la variable que ce nœud doit vérifier, dans cet exemple isVIPCustomer .
Conditions
Il existe plusieurs types de conditions. Cliquez sur « En savoir plus » pour en savoir plus et choisir l'option qui correspond à vos besoins.
Dans cet exemple, la réponse de l'API est soit « true » si le client est membre VIP, soit « false » dans le cas contraire. Nous choisissons donc « EqualTo » et définissons la valeur sur « true ».
Égal à ou Contient ?
Choisissez EqualTo lorsque la variable doit correspondre exactement à la valeur. Contains est utilisé lorsque la valeur doit être présente dans la variable et en faire partie. Par exemple, +46 123123123 contient +46 .
Que dois-je faire si je dois ajouter 100 conditions EqualTo différentes ?
Chaque condition doit être ajoutée manuellement, mais au lieu d'ajouter autant de conditions, il existe certaines options à considérer.
- Si vous devez ajouter 100 conditions différentes, vous pouvez créer un point de terminaison d'API dans votre système et utiliser le nœud HTTP à la place. Le point de terminaison recevra alors le numéro et pourra renvoyer une réponse correspondante de votre base de données, par exemple le numéro de la file d'attente à laquelle envoyer l'appel.
- Si vous avez une série de nombres qui doit tous aboutir au même résultat, par exemple les nombres 1 à 5 devant tous être dirigés vers la file d'attente de support externe, vous pouvez utiliser GreaterThanOrEqual et LessThanOrEqual au lieu de EqualTo. Utilisez deux nœuds de condition au lieu d'un. Dans le premier, choisissez
GreaterThanOrEqual:1. Tous les nombres correspondant à cette condition passeront au nœud de condition suivant, où la condition sera LessThanOrEqualTo: 5. Si un nombre remplit également cette condition, vous savez qu'il est compris entre 1 et 5 et pouvez l'envoyer vers la file d'attente externe.
Enregistrer l'entrée du clavier d'un appelant
Ajouter un nœud Enregistrer l’entrée du clavier
Choisissez une case vide dans votre SVI et cliquez sur Avancé > Enregistrer l'entrée du clavier pour ajouter le nœud.
Nous avons ajouté ceci à deux endroits pour couvrir à la fois le cas où la requête HTTP échoue et celui où elle réussit, mais le numéro de téléphone n'est pas trouvé dans la liste des numéros VIP.
Ce nœud donnera à l'appelant la possibilité de saisir un code de sécurité pour vérifier l'adhésion VIP, si la requête HTTP n'a pas pu le vérifier.
Nom de la variable
Nom de la variable où les digits seront enregistrés, dans ce cas nous l'appellerons securityCode .
Le son qui est joué
Ajoutez une phrase invitant l’appelant à saisir son code de sécurité s’il en possède un.
Chiffres minimum et maximum
Spécifier le nombre de chiffres qu'un numéro valide doit comporter peut permettre de savoir plus facilement quel type de numéro le client doit saisir.
Vérifiez si le bon code de sécurité a été saisi
Ajouter un nœud de condition
Choisissez une case vide dans votre SVI et cliquez sur Avancé > Condition pour ajouter le nœud.
Ce nœud vérifiera si l'appelant est un membre VIP en vérifiant le code de sécurité saisi par rapport à vos conditions.
Nom de la variable
Entrez le nom de la variable que ce nœud doit vérifier, dans cet exemple securityCode .
Conditions
Il existe plusieurs types de conditions. Cliquez sur « En savoir plus » pour plus d'informations et choisir l'option qui correspond à vos besoins.
Dans cet exemple, tous les membres VIP possèdent un abonnement Gold ou Silver, avec un code correspondant. Nous allons donc définir deux conditions pour vérifier si le code saisi correspond à un abonnement Silver ou Gold. Dans ce cas, 101010 est le code attribué à tous les membres Gold et 202020 celui attribué aux membres Silver.
Si chaque client possède son propre mot de passe, ou si vous lui demandez de saisir son identifiant client pour s'identifier comme client VIP, vous pouvez ajouter un autre nœud HTTP et envoyer {SecurityCode} à votre système. Ce dernier pourra alors répondre par « vrai » ou « faux » si le client est considéré comme membre VIP ou non.
Égal à ou Contient ?
Choisissez « Égal à » lorsque la variable doit correspondre exactement à la valeur. « Contient » est utilisé lorsque la valeur doit être présente dans la variable et en faire partie. Par exemple, +46 123123123 contient + 46 .
Que dois-je faire si je dois ajouter 100 conditions EqualTo différentes ?
Chaque condition doit être ajoutée manuellement, mais au lieu d'ajouter autant de conditions, il existe certaines options à considérer.
- Si vous devez ajouter 100 conditions différentes, vous pouvez créer un point de terminaison d'API dans votre système et utiliser le nœud HTTP à la place. Le point de terminaison recevra alors le numéro et renverra une réponse correspondante de votre base de données, par exemple le numéro de la file d'attente à laquelle envoyer l'appel.
- Si vous avez une série de nombres qui doit aboutir au même résultat, par exemple les nombres 1 à 5 devant tous être dirigés vers la file d'attente de support externe, vous pouvez utiliser « Supérieur à » et « Inférieur à » au lieu d'« Égal à ». Utilisez deux nœuds de condition au lieu d'un. Dans le premier, choisissez « Supérieur à » : 1. Tous les nombres correspondant à cette condition passeront au nœud de condition suivant, où la condition sera « Inférieur à » : 5. Si un nombre remplit également cette condition, vous savez qu'il est compris entre 1 et 5 et pouvez l'envoyer vers la file d'attente externe.