IVR auf Webhook



Ein Online-Chatbot ist ein aktueller Trend auf dem Markt. Aber wie kann man mit den Clients interagieren, die offline sind? Ein erheblicher Prozentsatz der Menschen zieht es vor, über das Telefon zu interagieren. Und das Unternehmen benötigt entweder eine große Anzahl von Betreibern oder eine Lösung zur Automatisierung der Sprachkommunikation. Wir bieten eine Lösung zur Reduzierung von Arbeitsbelastung und Kosten (und werden die Geschäftigkeit Ihrer Entwickler kaum beeinträchtigen).

Wie kann man schnell und einfach ein Sprachmenü, einen Autoinformanten oder eine Robotersekretärin mit einer angehängten Client-Datenbank programmieren?

Spoiler-Alarm: Alles wird durch die Implementierung von Webhooks erledigt und wir verwenden ein PHP-Beispiel.

Was und warum?

Sie haben beispielsweise einen Lieferservice oder einen Online-Shop mit eigener Logistik. Einige Kunden rufen an, um zu sehen, was mit ihren Paketen los ist, und das kann einfach automatisiert werden. Gleiches gilt für die Geolokalisierung von Kabinen, einige Datenerfassungen oder einzelne Informationen, die dem Kunden gemeldet werden können, ohne dass menschliche Energie verschwendet wird.

Es kann leicht automatisiert werden. Im Folgenden finden Sie ein Beispiel. Oh, und es kann völlig kostenlos gemacht werden.

Warum nicht dein eigenes Sternchen?

Natürlich kann alles mit Asterisk erledigt werden, aber neben dem Entwickler benötigen Sie auch einen Administrator, der auch mit der Sicherheit der Sprachkommunikation vertraut ist (da diese häufig gehackt werden).
Wir werden also den einfachsten Weg zur Lösung der Aufgabe diskutieren - mit Webhooks.

Liste der Methoden

Sie benötigen nur zwei neue Methoden für den Job, aber jede bietet Ihnen viele Möglichkeiten und vor allem unbegrenzte Zyklen. Mithilfe dieser Zyklen erhalten Sie ein mehrstufiges Sprachmenü und einen Informanten für jedes Thema.

Hauptmethoden:

  • NOTIFY_START - Der Beginn eines eingehenden Anrufs in der TK-Anlage
  • NOTIFY_IVR - Antwort des Anrufers auf eine bestimmte Aktion

Die detaillierte Methodenbeschreibung kann in die API-Beschreibung kopiert und eingefügt werden.

Für NOTIFY_START- und NOTIFY_IVR-Anforderungen können Sie Szenarien während des Anrufs ändern, indem Sie mit einer der folgenden Optionen antworten:








Ein Kunde ruft an und hört die Begrüßung, wählt dann eine bestimmte Nummer (z. B. einen Tracking-Code), wir senden eine Benachrichtigung mit den eingegebenen Ziffern, das Skript prüft mit der Datenbank und sendet die Antwort an uns. Die Antwort kann eine Sprachdatei-ID oder eine Standard-Sprachantwort enthalten.

Wir haben ein Standard-Zahlenspielsystem, sodass Sie keine Antwort im Voraus aufzeichnen müssen. Das heißt, die entsprechende Benachrichtigung wird aus der Datenbank ausgewählt und von einem Roboter als Nummer abgespielt. Oder Sie können bis zu hundert Standard-Sprachnachrichten erstellen und diese verwenden, um Kunden zu antworten (z. B. "Ihre Lieferung erfolgt im Lager", "Sie können Ihr Paket jeden Tag zwischen 9.00 und 22.00 Uhr erhalten").

Das Implementierungsminimum

Damit der Antwortende antworten kann, benötigen Sie mindestens eine Telefonnummer und eine TK-Anlage. Sie sollten auch die möglichen Antworten hochladen oder eingeben.

Einrichten



  1. Die kostenlose Telefonanlage für diese Aufgabe kann mit drei Klicks eingestellt werden (wählen Sie die Anzahl der Mitarbeiter und das Sprachmenü kann später eingestellt werden).
  2. Telefonnummern für PBX können aus 100 Ländern auf der ganzen Welt verbunden werden. Die Nummer wird nach Abschluss der ID-Überprüfung automatisch verbunden (falls dies für das Land Ihrer Wahl erforderlich ist). Sie können auch kostenlos eine Ihrer eigenen Nummern verbinden
  3. Um die Sprachmenüs einzustellen, gehen Sie zur Seite „Eingehende Anrufe und IVR“ und wählen Sie eine Option, die am besten zu Ihnen passt. Oder Sie können Ihre Dateien hochladen oder einen Text eingeben, der vom Roboter automatisch gelesen wird. Es stehen 16 Sprachen mit jeweils mehreren Stimmen zur Verfügung (14 Stimmen in Englisch). Sie können bis zu 100 Grüße in Ihrem persönlichen Konto speichern.



PHP Beispiel

Um verschiedene Optionen zu demonstrieren, haben wir 4 Beispiele für die IVR-Leistung unter PHP erstellt.

  1. Das System erkennt die letzten 3 Ziffern von CallerID (Beispiel für die Arbeit mit Informationen über Zahlen und das Aussprechen von Ziffern).
  2. Der Benutzer gibt sein Geburtsdatum in DTMF ein und das System gibt an, wie viele Tage bis zum Geburtstag verbleiben (Arbeiten mit DTMF und Aussprechen von Ziffern).
  3. Endloses mehrstufiges Menü: Der Benutzer kann Ziffern eingeben und zum nächsten / vorherigen Menü gelangen (Beispiel dafür, wie Sie mit einem einfachen Zyklus eine beliebige Anzahl von Sprachmenüs erstellen können).
  4. Beispiel für die Berechtigung zum Erhalt des Kontostands (nützlich für viele Lebenssituationen)

Die ersten drei Beispiele sind auf GitHub verfügbar. Dort haben Sie alle erforderlichen Elemente, Sie müssen nur die Dateien mit der Füllung einfügen (die müssen vor dem Hochladen oder Einlesen in PBX sein).

Aufgabe 4 : Der Anrufer hört die Begrüßung und wird aufgefordert, die Identifikationsnummer einzugeben. Nach Eingabe des Systems teilt er den Kontostand mit, verabschiedet sich mit einem beliebten Satz aus der Liste und beendet den Anruf.

Hier ist ein Beispiel für Code für die beschriebene Aufgabe.
PHP-Code

$request = new Request(); $notify = self::getEvent([AbstractNotify::EVENT_START, AbstractNotify::EVENT_IVR]); if (!$notify) { return; } switch ($notify->event){ case AbstractNotify::EVENT_START: $request ->setIvrPlay(self::INFO_FILE_ID) ->setWaitDtmf(TIMEOUT , ATTEMPTS, MAXDIGITS, DTMF_NAME, DEFAULT_BEHAVIOUR); break; case AbstractNotify::EVENT_IVR: if (!empty($notify->wait_dtmf->digits)) { $balance = getBalance($notify->wait_dtmf->digits); $request->setIvrSayNumber($balance, 'en'); } elseif (!empty($notify->ivr_saynumber)) { $request->setIvrSayPopular(POPULAR_PHRASE_NUM, 'en'); } else { $request->setHangup(); } } $request->send(); 

Wir möchten unsere Methodenfunktionen weiter ausbauen und Feedback in den Kommentaren unten sammeln. Wir haben auch andere Webhook-Methoden und APIs zur Verfügung. Die vollständige Liste finden Sie auf der Website .

Source: https://habr.com/ru/post/de474178/


All Articles