HOWTO

Eigener VBScript Code - Call Logging in Textdatei (kb2217)

Die Information in diesem Artikel betrifft die folgenden Produkte:

  • Grafischer Skript Editor v4.00
  • SwyxIt! v4.00
  • SwyxWare v4.00

[ Zusammenfassung | Information | Referenzen ]


Zusammenfassung

Ab der SwyxWare v4.00 ist es möglich eigenen Skript Code in den Grafischen Skript Editor (GSE) einzufügen. Die Funktionalität des GSE steht Ihnen nur zur Verfügung, wenn Sie das Option Pack - Extended Call Routing lizensiert haben.

Dieser Artikel beschreibt wie man ein einfaches Anruf Logging in eine Textdatei implementiert.

Weitere Artikel dieser Serie:

 

Weitere Informationen zu den Neuerungen im Grafischen Skript Editor finden Sie in dem Artikel:


Information

Installation der Beispielregeln

Laden Sie alle Beispielregeln über den unten angegebenen Link herunter und kopieren Sie die Datein in das Verzeichnis c:\gse_demo Um die Datei LogFile.rse in den Call Routing Manager (CRM) bzw. Grafischen Skript Editor (GSE) zu laden, gehen Sie bitte wie folgt vor:

 

  • Starten Sie den Call Routing Manager.
  • Klicken Sie auf Neu...
  • Wählen Sie den Grafischen Skript Editor und klicken Sie auf Ok.
  • Öffnen Sie das Menü Datei | Impotieren... im GSE.
  • Wählen Sie die Datei LogFile.rse. Die Regel wird nun importiert und sieht wie folgt aus:

    Grafischer Skript Editor
    Grafischer Skript Editor
    Zum Vergrern anklicken ...

  • Speichern Sie die Regel über das Menü Datei | Speichern.
  • Schliessen Sie den GSE.
  • Aktivieren Sie die neue Regel durch Verschieben in die rechte Liste im CRM.

    Call Routing Manager
    Call Routing Manager
    Zum Vergrern anklicken ...

 

Wie das Skript funktioniert

Eigener Skriptcode kann nur in dem Regel Start Block hinzugefügt werden. Alle Konstanten, Variablen und Funktionen die Sie hier definieren stehen Ihnen in allen Blöcken dieses Skriptes zur Verfügung, z.B. im Auswerten Block. Bitte beachten Sie, dass der GSE dem finalen Skript das VBScript Statement option explicit hinzufügt. Dies hat zur Folge, dass Sie alle Variablen innerhalb des Skriptes vor der Benutzung definieren müssen.

Eigenschaften - Regel Start
Eigenschaften - Regel Start
Zum Vergrern anklicken ...

Wie Sie in diesem Beispiel sehen können, wird innerhalb des Regel Start Blocks eine Funktion definiert, welche später innerhalb eines Variable setzen aufgerufen wird. Dies ist ein kleiner Trick: es ist in diesem Beispiel nicht unbedingt nötig, eine Variable zu setzen, jedoch ist dies ein guter Ort um eine Funktion aufzurufen.

Eigenschaften - Insert Call into File
Eigenschaften - Insert Call into File
Zum Vergrern anklicken ...

Die Funktion InsertCallIntoFile öffnet eine Textdatei und hängt an deren Ende die Rufnummer des Anrufers und das aktuelle Datum/Uhrzeit ein. Und so sieht der Skriptcode aus:

 

  1. ' FileOpen iomode Values
  2. Const fsoForReading = 1
  3. Const fsoForWriting = 2
  4. Const fsoForAppending = 8
  5.  
  6. Const fsoCreateIfNotExist = True
  7.  
  8. Function InsertCallIntoFile(ByVal callerID)
  9.  
  10.     Const filename = "c:\gse_demo\test.txt"
  11.  
  12.     Dim fso
  13.     Dim file
  14.  
  15.     ' Create FileSystemObejct
  16.     fso = CreateObject("Scripting.FileSystemObject")
  17.  
  18.     ' Open text file
  19.     file = fso.OpenTextFile(filename, _
  20.       fsoForAppending, fsoCreateIfNotExist)
  21.  
  22.     ' Write (append) CallerID into file
  23.     file.WriteLine("""" & callerID & """,""" & _
  24.       CStr(now) & """")
  25.  
  26.     file.Close()
  27.  
  28.     file = Nothing
  29.     fso = Nothing
  30.  
  31. End Function

Nachdem Sie diese Regel aktiviert haben werden alle ankommenden Rufe in einer Textdatei protokolliert. Bitte beachten Sie, dass wir die Regel über den Aufgang Regel übersprungen verlassen. Dies ermöglicht es uns im Anschluss noch weitere Regeln in unserem Callrouting auszuführen.

Hinweise

 

  • Alle Callrouting Skripte, und somit auch der eigene Skript Code, werden unter dem SwyxWare Service Account ausgeführt. Achten Sie also bitte darauf, dass dieser Account die nötigen Rechte hat, die Datei/Datenbank an dem gewünschten Ort zu bearbeiten.

  • Das Skript in diesem Beispiel enthält um es übersichtlich zu halten, keine Fehlerbehandlung. Das heisst, wenn z.B. bei dem Zugriff auf die Datei/Datenbank ein Fehler auftritt, wird dieser nicht abgefangen, sondern führt statt dessen dazu, dass das Skript beendet wird, und der Ruf verloren geht. Sollten Sie das Server Tracing für SvrScript auf Info3 gesetzt haben, so wird die originale Fehlermeldung der Microsoft Script Engine dort protokolliert.

    Um eine eigene Fehlerbehandlung einzufügen müssen Sie zunächst die Standard-Fehlerbehandlung der Script Engine ausschalten:

     

    1. On Error Resume Next

     

    Diese Zeile fügen Sie am Besten als erste Zeile in Ihren Funktionen einen. Nun muss nach jedem Aufruf der Potentiell zu einem Fehler führen kann, eine Fehlerabfrage erfolgen:

     

    1. ' Open connection to Database
    2. db.Open sDsn
    3. If Err <> 0 then
    4.     'do something, e.g.:
    5.     FunctionName = False
    6.     Exit Function
    7. End If

     


Referenzen

Soweit die von uns gelieferte oder/und verwendete Software Open Source Elemente beinhaltet, gelten zusätzlich die unter https://www.swyx.de/open-source einsehbaren zusätzlichen Bedingungen. Welche Produkte aus dem Swyx Portfolio Open Source Elemente beinhalten und welche Open Source Lizenz einschlägig ist, ergibt sich aus der unter folgender URL einsehbaren Liste https://www.swyx.de/open-source.

Informationen anderer Anbieter, die in diesem Artikel zur Verfügung gestellt werden, sollen bei der Suche nach technischen Informationen helfen. Die Inhalte können ohne weitere Ankündigung geändert werden. Swyx garantiert weder für die Güte von Inhalten anderer Anbieter, noch ist Swyx für diese verantwortlich.


Kommentar

Hat Ihnen dieser Artikel weitergeholfen? Kommentieren Sie diesen Artikel



Sollten sich Fragen aus Ihrem Kommentar ergeben, wie können wir Sie erreichen?

E-Mail Adresse (optional)


Hinweis

Dieses Kommentar-Feld steht Ihnen nicht für Support-Anfragen zur Verfügung. Diese richten Sie bitte ausschliesslich an Ihren Swyx Händler bzw. Distributor.