Technik

Servergesteuerte Prompts und Anrufflüsse durch IVR

Published on:

14.3.2025

Die IVR von Vodia ist durch die JavaScript-Steuerung noch leistungsfähiger geworden und ermöglicht dynamische Eingabeaufforderungen und Anpassungen des Anrufablaufs direkt von einem Server aus. Durch die Nutzung von HTTP-Anfragen kann die IVR Antworten in Echtzeit abrufen und so individuelle Begrüßungen, Ansagen und Anrufweiterleitungen basierend auf den Eingaben des Anrufers ermöglichen. So können beispielsweise per DTMF eingegebene Kundencodes über einen Server validiert werden, wodurch personalisierte Antworten ausgelöst und Anrufe an das entsprechende Ziel weitergeleitet werden.

Die Vodia IVR ist durch die Javascript-Steuerung und den Anrufablauf noch leistungsfähiger und intuitiver geworden.

Außer, abgesondert, ausgenommen Kommunikation mit KI (über Sprache) und einen leistungsstarken Anruffluss (der in einem anderen Blog behandelt wird), kann es auch auf vielfältige andere Weise viel flexibler (dank Javascript) verwendet werden. Eine davon besteht darin, die Ansagen und den Anruffluss vom Server aus zu steuern.

IVR-Einrichtung

Um einen Vodia IVR-Knoten für die Verwendung von Javascript einzurichten, wählen Sie einfach „Javascript“ aus dem Dropdown-Menü in den IVR-Knoteneinstellungen und speichern Sie. Es wird ein Textbereich angezeigt, in den Sie Ihren Javascript-Code eingeben können. Wenn Sie etwas mit dem Anruf tun möchten, der mit diesem IVR-Knoten verbunden ist (z. B. von einer externen Rufnummer, die in diesem IVR-Knoten gelandet ist), verwenden Sie das Anrufobjekt wie unten gezeigt.

Ansagen von einem Server abspielen

Um einen Prompt abzuspielen, können Sie Text to Speech im Anrufobjekt verwenden. Um zum Beispiel jemanden in einem mit dem IVR verbundenen Anruf zu begrüßen, rufen Sie einfach die Funktion „say“ des Anrufobjekts auf:

call.say(“Hallo, Sie haben die Firma ABC erreicht. Wie kann ich Ihnen heute helfen?”)

Der obige Text wird in Sprache umgewandelt und dem Anrufer vorgespielt.

Ebenso kann dieser Text von einem Server als Antwort auf eine HTTP-Anfrage basierend auf verschiedenen Situationen stammen, z. B. welcher Code (über DTMF) der Anrufer als Kunde angegeben hat usw.

HTTP-Beispiel

Hier sehen Sie, wie Sie eine HTTP-Anfrage an einen Server (ersetzen Sie SERVER_URL durch Ihre Server-URL) mit einem Textkörper mit einigen Zahlen posten. Es akzeptiert eine Javascript-Funktion als Rückruf, die aufgerufen wird, wenn eine Antwort vom Server mit dem Code, der Antwort und den Kopfzeilen empfangen wird - wie Sie unten sehen können. In diesem Beispiel liegt die Antwort im JSON-Format vor, so dass sie für die Nachricht geparst wird und die Nachricht dem Anrufer mit call.say(res.message) vorgespielt wird.

  var body = “123456  var args = {
    'method':'POST',
    'url': 'https://SERVER_UTL',
    'header': [ { name: 'Content-Type', value: 'text/plain'} ],
    'callback': callback
  }
  if (body) {
    args.body = body
  }
  system.http(args)

  function callback(code, response, headers) {
    console.log("IVR response:" + code.toString())
    var res = JSON.parse(response)
    if (res.message) call.say(res.message)
  }

Steuerung des Anrufflusses von einem Server aus

Wenn Sie den mit dem IVR verbundenen Anruf an eine andere Nebenstelle, Gruppe, IVR oder einen anderen Ort weiterleiten möchten, rufen Sie einfach die Weiterleitungsfunktion des Anrufobjekts mit dem Ziel auf. Zum Beispiel, um an eine andere IVR 87 zu übergeben:

call.transfer(“87”)

Ähnlich wie im obigen Beispiel kann dieses Ziel vom Server als Antwort auf eine HTTP-Anfrage kommen.

Ein einfaches Beispiel

Angenommen, wir möchten den Kunden auffordern, einen Kundencode einzugeben, diesen an einen Server zu senden und, falls er gefunden wird, eine Aufforderung zu geben, gefolgt von einer Weiterleitung an die Kundendienstabteilung, sagen wir Konto 42. Wenn der Code nicht gefunden wird, wird eine andere Aufforderung gegeben, gefolgt von einer Weiterleitung zu einem anderen IVR (sagen wir 70).

'use strict';

call.say('Welcome to company ABC. Please enter your 8 digit customer number.')

var digits = ''
call.dtmf(ondtmf)
function ondtmf(digit) {
  digits += digit
  if (digits.length == 8) {
    send(digits)
    digits = ''
  }
}

function send(digits) {
  var body = digits
  var args = {
    'method':'POST',
    'url': 'https://SERVER_URL',
    'header': [ { name: 'Content-Type', value: 'text/plain'} ],
    'callback': callback
  }
  if (body) {
    args.body = body
  }
  system.http(args)

  function callback(code, response, headers) {
    console.log("IVR response:" + code.toString())
    var res = JSON.parse(response)
    if (res.message) call.say(res.message)
    if (res.transfer) setTimeout(function(){
      call.transfer(res.destination)
    }, 5000)  
  }
}

Dies ist natürlich nur ein Beispiel. Dies kann auf unterschiedliche Weise und mit geeigneten Kontrollen und Logs usw. erreicht werden.

Die Funktion call.ondtmf() nimmt eine Funktion als Callback, die jedes Mal aufgerufen wird, wenn eine Ziffer (DTMF) gedrückt wird, wobei der Wert der Ziffer als Argument übergeben wird. In diesem Beispiel werden die Ziffern zu einer Zeichenkette verkettet und schließlich an den Server gesendet. In diesem Beispiel antwortet der Server mit einer JSON-Antwort mit einer Nachricht (zum Abspielen als Sprache) und einem Ziel (wohin der Anruf nach dem Abspielen der Nachricht weitergeleitet werden soll).

Wenn also die Nummer gefunden wird, könnte sie etwa Folgendes zurückgeben:

{

  “message”:“Danke, Herr Jones für die Nummer. Ich werde Sie jetzt an den Kundendienst weiterleiten.”

  “Destination”:“42”

}

Wenn die Nummer nicht gefunden wird, könnte sie etwa Folgendes zurückgeben:

{

  “message”:“Entschuldigung. Die von Ihnen angegebene Nummer existiert nicht.”

  “Destination”:“70”

}

Wenn die Antwort empfangen und analysiert wird, wird die Nachricht abgespielt und der Anruf dann an das Ziel weitergeleitet. Die Weiterleitung erfolgt nach einer Zeitüberschreitung von 5 Sekunden (5000 ms), damit die Nachricht vor der Weiterleitung des Anrufs vollständig abgespielt werden kann.

if (res.message) call.say(res.message)
if (res.transfer) setTimeout(function(){
  call.transfer(res.destination)
}, 5000)

Das IVR-System von Vodia mit JavaScript-Steuerung bietet Unternehmen mehr Flexibilität und Leistung und ermöglicht es ihnen, den Anruffluss dynamisch zu verwalten, Prompts zu personalisieren und Echtzeit-Serverantworten zu integrieren. Durch die Nutzung von HTTP-Anfragen und die Verarbeitung von DTMF-Eingaben kann das IVR-System maßgeschneiderte Interaktionen anbieten und so die Effizienz des gesamten Kundenservices verbessern. Ob es um die Überprüfung von Kundeninformationen oder die Weiterleitung von Anrufen auf der Grundlage von Serverantworten geht, die Lösung von Vodia verbessert das IVR-Erlebnis und ermöglicht es Unternehmen, intelligentere, reaktionsschnellere Kommunikationssysteme zu schaffen. Für weitere Informationen kontaktieren Sie uns unter sales@vodia.com oder rufen Sie uns an unter +49 (30) 55578749.

Neueste Artikel

Alles ansehen

V70 Preview Release: Ein erster Blick auf die kommenden Neuerungen

Die V70-Vorschauversion steht nun zum Testen bereit und bietet Partnern und Administratoren die Möglichkeit, frühzeitig die aktualisierte Administrationsschnittstelle, die verbesserte Leistung durch Multicore-Medienverarbeitung, mandantenübergreifende BLF, die Erstellung und Wiederherstellung von Snapshots, die zentralisierte Remote-Bereitstellung sowie aktualisierte Debian- und CentOS-Builds zu erkunden. Diese Vorabversion dient der Evaluierung und dem Feedback, während wir die produktionsreife Version für Anfang 2026 fertigstellen.

November 20, 2025

6 + 1 Gründe, warum Vodia das beste Telefonsystem für Gesundheitsdienstleister ist

Vodia bietet ein sicheres, skalierbares Kommunikationssystem, das für HIPAA-konforme Abläufe, KI-gesteuerte Automatisierung und nahtlose Integrationen mit Tools wie CallSmart und Cliniko entwickelt wurde. Es optimiert die Terminplanung, die Wiederherstellung verpasster Anrufe und die täglichen Arbeitsabläufe und unterstützt gleichzeitig konformes Faxen, Telemedizin und Telegesundheit. Von Kliniken bis hin zur Langzeitpflege stärkt Vodia die Koordination des Personals, schützt Patientendaten und verbessert das gesamte Patientenerlebnis durch eine einheitliche, zuverlässige Kommunikationsplattform.

November 18, 2025

MS Teams-Integration und die Vorteile der Microsoft-Zertifizierung für die Kommunikation

Microsoft Teams ist zu einem Eckpfeiler der modernen Geschäftskommunikation geworden und bietet weltweit über 250 Millionen Nutzern Tools für Zusammenarbeit, Automatisierung und Produktivität. Teams eignet sich zwar hervorragend für die interne Kommunikation, bietet jedoch keine native Unterstützung für herkömmliche Telefonsysteme und analoge Geräte. Hier kommen zertifizierte Integrationen wie die Vodia PBX ins Spiel. Als Microsoft-zertifizierte Lösung verbindet Vodia Teams mit SIP-Telefonen, VoIP-Geräten und analogen Endgeräten, sodass Unternehmen externe Anrufe direkt in Teams tätigen und empfangen können.

November 4, 2025