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

6 + 1 Telefoniefunktionen, die Sie 2026 benötigen

Im Jahr 2026 muss ein modernes Telefonsystem weit über einfache Anruffunktionen hinausgehen. Zu den Kernanforderungen gehören nun integrierte KI für eine intelligentere Anrufbearbeitung und Transkription, Echtzeit-Analyse-Dashboards für Transparenz und Kontrolle, flexible automatische Vermittlungsstellen für eine effiziente Anrufweiterleitung, nahtlose Microsoft Teams-Integration und robuste mobile Apps, die hybrides und Remote-Arbeiten unterstützen. Eine klare Trennung zwischen geschäftlichen und privaten Anrufen schützt die Work-Life-Balance, während erstklassiger Support dafür sorgt, dass diese Funktionen in realen Umgebungen reibungslos funktionieren, wenn sich die Anforderungen weiterentwickeln.

January 30, 2026

Ihr veraltetes Telefonsystem kostet Ihr Unternehmen Geld

Ältere Telefonsysteme funktionieren zwar möglicherweise noch, sind jedoch oft mit versteckten Kosten, eingeschränkter Skalierbarkeit und geringer Unterstützung für hybrides Arbeiten verbunden. Veraltete Hardware, laufende Wartungskosten und eine starre Infrastruktur können das Wachstum von Unternehmen unbemerkt behindern. Cloud-basierte VoIP-Systeme beseitigen diese Einschränkungen, indem sie die Telefoniekosten senken, die Flexibilität verbessern und Teams eine nahtlose Kommunikation von überall aus ermöglichen. Für viele Unternehmen ist die Modernisierung der Geschäftstelefonie nicht mehr optional, sondern ein praktischer Schritt in Richtung Effizienz und Ausfallsicherheit.

January 29, 2026

Vodia kündigt Integration mit der Sprach-KI-Plattform ElevenLabs an

Eine optimierte Integration verbindet die Vodia-Telefonanlage mit der ElevenLabs Voice AI-Plattform mithilfe eines schlanken IVR-JavaScript-Skripts und nativem SIP REFER für die Anrufweiterleitung. Die Audio- und Anrufsteuerung erfolgt vollständig über Standard-SIP-Signalisierung, während die gesamte Gesprächslogik, die Eingabeaufforderungen, die Sprachauswahl und die Weiterleitungsregeln im ElevenLabs-Dashboard konfiguriert werden. Durch diesen Ansatz sind keine Webhooks oder WebSocket-Verbindungen erforderlich und die PBX-Seite bleibt bewusst minimalistisch, sodass die Bereitstellung übersichtlich und produktionsreif ist.

January 23, 2026