Vous avez peut-être entendu parler ou entendu parler de la fonctionnalité de filtrage des appels déployée par Google pour ses téléphones Pixel aux États-Unis. L'idée est géniale : lorsque vous recevez un appel entrant, l'assistant virtuel commence à communiquer, tandis que vous voyez cette conversation sous la forme d'un chat et à tout moment vous pouvez commencer à parler à la place de l'assistant. C'est très utile de nos jours où presque
Architecture
Je vous suggère de ne pas perdre de temps à expliquer le fonctionnement de Voximplant et Dialogflow ; si vous le souhaitez, vous pouvez facilement trouver des informations sur Internet. Faisons donc connaissance avec le concept même de notre Call Screening.
Supposons que vous disposez déjà d'un certain numéro de téléphone que vous utilisez quotidiennement et sur lequel vous recevez des appels importants. Dans ce cas, nous aurons besoin d'un deuxième numéro, qui sera indiqué partout - dans le courrier, sur une carte de visite, lorsque vous remplirez des formulaires en ligne, etc. Ce numéro sera connecté à un système de traitement du langage naturel (dans notre cas, Dialogflow) et renverra les appels vers votre numéro principal uniquement si vous le souhaitez. Sous forme de diagramme, cela ressemble à ceci (l'image est cliquable) :
Comprenant l'architecture, nous pouvons nous charger de la mise en œuvre, mais avec un bémol : nous ne le ferons pas mobile application pour afficher un dialogue entre Dialogflow et un appelant entrant, nous allons créer un simple web-une application avec un moteur de rendu de dialogue pour montrer clairement comment fonctionne le filtrage des appels. Cette application aura un bouton Intervenir, en appuyant sur lequel Voximplant connectera l'abonné entrant avec l'abonné appelé, si ce dernier décide de parler lui-même.
exécution
ойдите в
Ouvrir
Rendez-vous ensuite sur l'application de dépistage, dans la rubrique « Numéros », onglet « Disponible ». Ici, vous verrez le numéro que vous venez d'acheter. Liez-le à l'application à l'aide du bouton « Attacher » - dans la fenêtre qui apparaît, laissez toutes les valeurs par défaut et cliquez sur « Attacher ».
Une fois dans l'application, allez dans l'onglet "Scripts" et créez un script myscreening - nous y utilisons le code de l'article
ATTENTION : vous devrez remplacer la valeur de la variable serveur par le nom de votre serveur ngrok (les détails sur ngrok seront ci-dessous). Remplacez également vos valeurs à la ligne 31, où votre numéro de téléphone est votre numéro principal (par exemple, votre téléphone portable personnel) et le numéro de voximplant est le numéro que vous avez récemment acheté.
outbound_call = VoxEngine.callPSTN(“YOUR PHONE NUMBER”, “VOXIMPLANT NUMBER”)
L'appel callPSTN aura lieu au moment où vous décidez d'entrer dans la conversation et de parler personnellement avec l'abonné entrant.
Après avoir enregistré le script, vous devez le lier au numéro acheté. Pour ce faire, toujours dans votre application, allez dans l'onglet "Routage" pour créer une nouvelle règle - le bouton "Nouvelle règle" dans le coin supérieur droit. Fournissez un nom (par exemple, allcalls), laissez le masque par défaut (.* - ce qui signifie que tous les appels entrants seront traités par les scripts sélectionnés pour cette règle) et spécifiez le script myscreening.
Enregistrez la règle.
Désormais, le numéro de téléphone est lié au script. La dernière chose que vous devez faire est de lier le bot à l'application. Pour cela, rendez-vous dans l'onglet « Connecteur Dialogflow », cliquez sur le bouton « Ajouter un agent Dialogflow » dans le coin supérieur droit et téléchargez le fichier JSON de votre agent Dialogflow.
Si vous avez besoin d'un agent par exemple/test, vous pouvez prendre le nôtre sur ce lien :
Backend simple sur NodeJS
Déployons un simple backend sur un nœud, par exemple, comme ceci :
Il s'agit d'une application simple qui ne nécessite que deux commandes pour s'exécuter :
npm install
node index.js
Le serveur fonctionnera sur le port 3000 de votre machine, donc pour le connecter au cloud Voximplant, nous utilisons l'utilitaire ngrok. Lorsque vous installez
ngrok http 3000
Vous verrez le nom de domaine généré par ngrok pour votre serveur local - copiez-le et collez-le dans la variable du serveur.
Client
L'application client ressemble à un simple chat que vous pouvez
Copiez simplement tous les fichiers dans un répertoire de votre serveur Web et cela fonctionnera. Dans le fichier script.js, remplacez la variable du serveur par le nom de domaine ngrok et la variable de l'appelé par le numéro que vous avez acheté. Enregistrez le fichier et lancez l'application dans votre navigateur. Si tout va bien, vous verrez la connexion WebSocket dans le panneau du développeur.
Démo
Vous pouvez voir l'application en action dans cette vidéo :
PS Si vous cliquez sur le bouton Intervenir, l'appelant sera dirigé vers mon numéro de téléphone, et si vous cliquez sur Déconnecter, ce sera... ? C'est vrai, l'appel sera déconnecté.
Source: habr.com