Erstellen Sie Ihr eigenes Google Call Screening basierend auf Voximplant und Dialogflow

Erstellen Sie Ihr eigenes Google Call Screening basierend auf Voximplant und Dialogflow
Möglicherweise haben Sie von der Anrufüberwachungsfunktion gehört oder gelesen, die Google für seine Pixel-Telefone in den USA eingeführt hat. Die Idee ist großartig: Wenn Sie einen eingehenden Anruf erhalten, beginnt der virtuelle Assistent zu kommunizieren, während Sie dieses Gespräch in Form eines Chats sehen und jederzeit anstelle des Assistenten zu sprechen beginnen können. Dies ist heutzutage sehr nützlich, wenn fast Die Hälfte der Anrufe sind Spam, aber Sie möchten keine wichtigen Anrufe von jemandem verpassen, der nicht auf Ihrer Kontaktliste steht. Der einzige Haken ist, dass diese Funktionalität nur auf dem Pixel-Telefon und nur in den USA verfügbar ist. Nun ja, Hindernisse müssen überwunden werden, oder? Aus diesem Grund haben wir uns entschlossen, Ihnen zu erklären, wie Sie mit Voximplant und Dialogflow eine ähnliche Lösung erstellen können. Bitte unter Kat.

Architektur

Ich empfehle Ihnen, keine Zeit damit zu verschwenden, die Funktionsweise von Voximplant und Dialogflow zu erklären. Wenn Sie möchten, können Sie Informationen problemlos im Internet finden. Machen wir uns also mit dem Konzept unseres Call Screenings vertraut.

Nehmen wir an, dass Sie bereits über eine bestimmte Telefonnummer verfügen, die Sie täglich nutzen und unter der Sie wichtige Anrufe erhalten. In diesem Fall benötigen wir eine zweite Nummer, die überall angegeben wird – in der Post, auf einer Visitenkarte, beim Ausfüllen von Online-Formularen usw. Diese Nummer wird mit einem System zur Verarbeitung natürlicher Sprache (in unserem Fall Dialogflow) verbunden und leitet Anrufe nur dann an Ihre Hauptnummer weiter, wenn Sie dies wünschen. In Diagrammform sieht es so aus (Bild ist anklickbar):
Erstellen Sie Ihr eigenes Google Call Screening basierend auf Voximplant und Dialogflow
Wenn wir die Architektur verstehen, können wir die Implementierung übernehmen, aber mit einer Einschränkung: Das werden wir nicht tun Handy, Mobiltelefon Um einen Dialog zwischen Dialogflow und einem eingehenden Anrufer anzuzeigen, erstellen wir eine einfache Anwendung Web-eine Anwendung mit einem Dialog-Renderer, um deutlich zu zeigen, wie Call Screening funktioniert. Diese Anwendung verfügt über eine Schaltfläche zum Eingreifen, durch deren Betätigung Voximplant den eingehenden Teilnehmer mit dem angewählten Teilnehmer verbindet, wenn dieser sich dazu entschließt, selbst zu sprechen.

Implementierung

Einloggen Ihr Voximplant-Konto und erstellen Sie eine neue Anwendung, zum Beispiel Screening:

Erstellen Sie Ihr eigenes Google Call Screening basierend auf Voximplant und Dialogflow
Öffnen Rubrik „Zimmer“ und kaufen Sie eine Nummer, die als Vermittler fungiert:

Erstellen Sie Ihr eigenes Google Call Screening basierend auf Voximplant und Dialogflow
Gehen Sie als Nächstes zur Screening-Anwendung im Abschnitt „Nummern“ auf der Registerkarte „Verfügbar“. Hier sehen Sie die Nummer, die Sie gerade gekauft haben. Verknüpfen Sie es über die Schaltfläche „Anhängen“ mit der Anwendung. Behalten Sie im angezeigten Fenster alle Standardwerte bei und klicken Sie auf „Anhängen“.

Sobald Sie sich in der Anwendung befinden, gehen Sie zur Registerkarte „Skripte“ und erstellen Sie ein Myscreening-Skript – darin verwenden wir den Code aus dem Artikel So verwenden Sie den Dialogflow Connector. In diesem Fall wird der Code leicht geändert, da wir den Dialog zwischen dem Anrufer und dem Assistenten „sehen“ müssen; Jeder Code ist möglich hierher bringen.

ACHTUNG: Sie müssen den Wert der Servervariablen in den Namen Ihres Ngrok-Servers ändern (Details zu Ngrok finden Sie weiter unten). Ersetzen Sie Ihre Werte auch in Zeile 31, wobei Ihre Telefonnummer Ihre Hauptnummer ist (z. B. Ihr persönliches Mobiltelefon) und die Voximplant-Nummer die Nummer ist, die Sie kürzlich gekauft haben.

outbound_call = VoxEngine.callPSTN(“YOUR PHONE NUMBER”, “VOXIMPLANT NUMBER”)

Der PSTN-Anruf erfolgt in dem Moment, in dem Sie sich entscheiden, in das Gespräch einzusteigen und persönlich mit dem eingehenden Teilnehmer zu sprechen.

Nachdem Sie das Skript gespeichert haben, müssen Sie es mit der gekauften Nummer verknüpfen. Gehen Sie dazu noch in Ihrer Anwendung auf die Registerkarte „Routing“, um eine neue Regel zu erstellen – die Schaltfläche „Neue Regel“ in der oberen rechten Ecke. Geben Sie einen Namen ein (z. B. allcalls), belassen Sie die Standardmaske (.* – was bedeutet, dass alle eingehenden Anrufe von den für diese Regel ausgewählten Skripten verarbeitet werden) und geben Sie das myscreening-Skript an.

Erstellen Sie Ihr eigenes Google Call Screening basierend auf Voximplant und Dialogflow
Speichern Sie die Regel.

Von nun an ist die Telefonnummer mit dem Skript verknüpft. Als letztes müssen Sie den Bot mit der Anwendung verknüpfen. Gehen Sie dazu auf die Registerkarte „Dialogflow Connector“, klicken Sie oben rechts auf die Schaltfläche „Dialogflow-Agent hinzufügen“ und laden Sie die JSON-Datei Ihres Dialogflow-Agenten hoch.

Erstellen Sie Ihr eigenes Google Call Screening basierend auf Voximplant und Dialogflow
Wenn Sie einen Agenten zum Beispiel/Testen benötigen, können Sie unseren unter folgendem Link nutzen: github.com/aylarov/callscreening/tree/master/dialogflow. Fordern Sie einfach nicht zu viel davon, dies ist nur ein Beispiel, das Sie nach Belieben wiederholen und die Ergebnisse gerne teilen können :)

Einfaches Backend auf NodeJS

Stellen wir beispielsweise ein einfaches Backend auf einem Knoten bereit, etwa so:
github.com/aylarov/callscreening/tree/master/nodejs

Dies ist eine einfache Anwendung, für deren Ausführung nur zwei Befehle erforderlich sind:

npm install
node index.js

Der Server wird auf Port 3000 Ihres Computers ausgeführt. Um ihn mit der Voximplant-Cloud zu verbinden, verwenden wir das Dienstprogramm ngrok. Bei der Installation Ngrok, führen Sie es mit dem folgenden Befehl aus:

ngrok http 3000

Sie sehen den Domänennamen, den ngrok für Ihren lokalen Server generiert hat – kopieren Sie ihn und fügen Sie ihn in die Servervariable ein.

Auftraggeber

Die Client-Anwendung sieht aus wie ein einfacher Chat, den Sie können Holen Sie es hier ab.

Kopieren Sie einfach alle Dateien in ein Verzeichnis auf Ihrem Webserver und es wird funktionieren. Ersetzen Sie in der Datei „script.js“ die Servervariable durch den ngrok-Domänennamen und die Callee-Variable durch die von Ihnen erworbene Nummer. Speichern Sie die Datei und starten Sie die Anwendung in Ihrem Browser. Wenn alles in Ordnung ist, sehen Sie die WebSocket-Verbindung im Entwicklerpanel.

Demo

In diesem Video können Sie die Anwendung in Aktion sehen:


PS: Wenn Sie auf die Schaltfläche „Eingreifen“ klicken, wird der Anrufer zu meiner Telefonnummer weitergeleitet, und wenn Sie auf „Trennen“ klicken, wird er...? Richtig, der Anruf wird getrennt.

Source: habr.com

Kommentar hinzufügen