AGFEO Klick - Sprachansage oder Klangdatei bei Anruf

In einem anderen Beitrag erklären wir euch die Vorteile des AGFEO Klick als TAPI Alternative für CTI-Funktionen.

Nachfolgend zwei Beispielscripte, die man auch unter MS Windows direkt ausprobieren kann und welche die AGFEO Klick Funktion nutzen.

Ziel:

Jeder ankommende Anruf soll über den PC-Lautsprecher unter MS Windows akustisch angesagt werden. Sicher nicht nur bei Sehschwäche interessant.

Nachtrag Februar 2019:
Anstelle einer Sprachansage eine WAV-Datei abspielen, wenn ein Ruf eingeht. Sinnvoll z.B. an einem PC-Arbeitsplatz in Verbindung mit einem DECT HeadSet IP.

Act 1 - VBS-Scriptdatei erstellen:

Kopiert und speichert Euch nachfolgenden Programmcode einfach in eine Textdatei mit Endung .vbs ab (z.B. "TTS.vbs") und legt diese in ein Verzeichnis ab, wo Ihr Schreibrechte habt.

'Sprachausgabe Speak-API-Objekt definieren
set VObj = CreateObject("SAPI.SpVoice")
  with VObj
   	  Set .voice = .getvoices.item(0)
      .Volume = 100
  end with

'Auslösegrund des ScriptAufrufs durch AGFEO Klick feststellen
invokefrom = WScript.Arguments(0)

' Rufnummer ermitteln
t1 = Wscript.Arguments(1)

If invokefrom = "called" then
   ' Gesamttext T3 bilden
   t3 = "Anruf von: " & t1
      ' Sprachausgabe des gesamten Strings
      VObj.Speak T3
      VObj.WaitUntilDone(1000)
End If

' Quit Visual Basic Script
WScript.Quit()

Act 2: Einrichtung TK-Suite Client:

Nun öffnet den TK-Suite Client ES und konfiguriert Euch die AGFEO Klick Funktion (TK-Suite Professional Menü /Datei/Einstellungen - TK-Suite Client ES Menü /Tools/Konten).

Nachfolgend die Einrichtung am Beispiel des TK-Suite Client ES:

  • Neues Konto vom Typ "AGFEO Klick" anlegen.

Bei dem obigen Script handelt es sich um Visual Basic Code. Dieser kann vom TK-Suite Client direkt über den Windows Scripting Host aufgerufen werden. Dazu ist als auszuführendes Programm wscript.exe einzugeben.

Als Parameter 1 ist nun die zuvor erstellte .vbs Datei (z.B. "TTS.vbs") inkl. des vollständigen Pfads anzugeben. Die weiteren Parameter sind mittels Drag'nDrop und 1:1 gemäß der nachfolgenden Grafik zu konfigurieren. Die Reihenfolge ist unbedingt beizubehalten!

Hinweis
Damit wirklich jeder Ruf angesagt wird, ist die Option Automatisch zur Rufverfolgung aufrufen zu aktivieren.

Ergebnis

Als Ergebnis wird nun bei jedem ankommenden Anruf über die in MS Windows eingebaute Sprachsynthese die Rufnummer über die PC-Lautsprecher vorgelesen.

Berücksichtigt bitte, dass die in MS Windows eingebaute Sprachengine erst ab MS Windows 10 über eine akzeptable Qualität verfügt, so dass dieses Beispiel in älteren MS Windows Versionen mitunter zu einigen Schmunzeleffekten führen dürfte.

TIPP:
Erweitert den Code doch noch um etwas mehr Intelligenz. Übergebt z.B. nicht nur die Rufnummer, sondern laßt Euch auch Vor- und Nachnamen des Kontakts ansagen. Ihr könnt z.B. auch die Rufnummer durch einen beliebigen Text ersetzen lassen oder gebt den Auslösegrund aus "Anruf von XYZ nicht angenommen" oder "... wurde beendet"...

Klang abspielen an Stelle einer Sprachansage

Nachtrag Februar 2019
Über den gleichen Weg ist auch das Abspielen einer WAV-Datei zur Signalisierung eines eingehenden Rufes möglich. Diese Funktion kann z.B. für ein DECT HeadSet IP in Verbindung mit einem PC-Arbeitsplatz sinnvoll sein.

Dazu ist eine Batchdatei als auszuführendes AGFEO Klick Kommando zu erstellen. Speichert dazu die nachstehenden Befehle in einer Textdatei ab und ändert die Dateiendung danach in .bat.

@Echo off

if "%1" == "called" POWERSHELL -c (New-Object Media.SoundPlayer "C:\Windows\Media\tada.wav").Play(); Start-Sleep -s 5; Exit 5

:ende
Exit 1

In den AGFEO Klick Einstellungen ist dann als auszuführendes Programm diese .bat Datei einzubinden mit %invoked_from% als einzigem (!) Parameter.

Wenn nun ein Anruf eingeht, übergibt der CTI Client den Auslösegrund an die Batchdatei und im Falle eines eingehenden Anrufs wird dann über den PC-Lautsprecher die eingebundene Klangdatei "tada.wav" für max. 5 Sekunden (Sleep-Befehl mit Wert 5) abgespielt. Denkbar wäre auch, dass bei Annahme des Gespräches (=Auslösegrund "connect") auch der Lautsprecher stumm- und beim Beenden (="finished") wieder angeschaltet wird.

Übrigens,

wir freuen uns über Eure Facebook-Kommentare mit Programmierbeispielen!