Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/03494.jsonl.gz/430

Die Information in diesem Artikel betrifft die folgenden Produkte:
Der Niederländische SwyxWare Distributor
hat zum Valentinestag am 14.02.2003 eine besondere Telefon- bzw. Gruß-EMail Aktion veranstaltet.
Nachdem sich ein Teilnehmer über eine Webseite kostenlos angemeldet und dort eine PIN erhalten hat, konnte er über eine gebührenpflichtige Rufnummer einen Valentinsgruß aufzeichnen. Dieser wurde dann per EMail als WAV Datei Attachment am Valentinstag an die zuvor auf den Webseiten angegebene EMail Adresse verschickt.
Dieser Artikel beschreibt das GSE Skipt zum Aufzeichnen des Grußes welches übrigens in weniger als einer Stunde entwickelt wurde. Es ist damit ein ausgezeichnetes Beispiel dafür, wie effektiv and kreativ man die SwyxWare einsetzen kann.
Zunächst wird der Rufablauf erklärt
Installation des Skripts
C:\Dokumente und Einstellungen\All Users\ Anwedungsdaten\Swyx\Share\User\Valentines\ PhoneClient\Voicemail
D:\Valentinesan, in welches die aufgezeichneten Nachrichten gespeichert werden. Sollten Sie ein anderers Verzeichnis verwenden wollen, so müssen Sie die zweite Anweisung im VBScript Code entsprechend ändern:
' Folder to store all messages in (with tailing "\")
Const SAVE_DIR = "d:\valentines\"
Installation der Datenbank
Funktion des Skripts
Neben den Standard GSE Blöcken beinhaltet dieses Skript 3 zusätzliche Funktionen, die als eigener VBScript Code hinzugefügt wurden.
Diese 3 Funktionen ergeben sich aus den Anforderungen an die Anwendung:
Die Funktion "ValidPin()"
Diese Funktion wird über den Variable Auswerten Block Valid PIN ? aufgerufen:
Die Funktion erhält als Parameter die PIN die zuvor in dem Enter PIN Block eingegeben wurde. Der sogenannte Connecstring für den Datenbank Zugriff DB_DSN ist in der ersten Anweisung des VBScript Codes definiert
' Data Source Name und kann dort auch entsprechend an andere Datenbanken angepasst werden.
Const DB_DSN = "valentines"
Function ValidPin ( sPin )Die Funktion liest alle Datensätze aus der Tabelle users die im Feld pin die eigegebene PIN haben. An dem EOF Flag des Ergebnisse wird erkannt, ob es entsprechende Einträge gibt. Das Flag ist True wenn keine Ergebnisse geliefert wurden, es also keinen entsprechenden Eintrag in der Tabelle gibt. Da die Funktion ValidPin() aber in diesem Fall False zurück liefern soll, wird das Flag einfach negiert.
Dim bReturn bReturn = false
' open connection to database Dim db Set db = CreateObject("ADODB.Connection") db.Open DB_DSN
' open recordset Dim sSQL Dim rs sSQL = "select * from users where pin = '" _ & sPin & "'"
Set rs = CreateObject("ADODB.Recordset") rs.Open sSQL, db, adOpenDynamic, _ adLockOptimistic, adCmdText bReturn = not rs.EOF
rs.Close Set rs = Nothing
db.Close Set db = Nothing
ValidPin = bReturn
End Function
Die Funktion "PlayLastMessage ()"
Diese Funktion wird innerhalb des Variable setzen Blocks Play Message aufgerufen. Bitte beachten Sie, dass wir diesen Block nur benutzen, um die Funktion aufzurufen. An dem Ergebnis, welches in diesem Fall in eine Dummy Variable gespeichert wird, sind wir nicht interessiert.
Der GSE liefert z.Zt. leider keine direkte Möglichkeit mit der die zuletzt aufgezeichnete Nachricht abgespielt werden kann. Es gibt aber sehr wohl eine entsprechende Möglichkeit mittels eigenen VBScript Codes:
Function PlayLastMessage ()
Dim retVal Dim sFileName
' get name of last recorded file sFileName = PBXCall.LastRecordedMessage ' play last recorded file retVal = PBXCall.PlayMessage(sFileName)
PlayLastMessage = True
End Function
Die Funktion "SaveMessage()"
Diese Funktion hat zwei Aufgaben:
Function SaveMessage( sPin )
Dim sFileName, sNewFileName
' get name of last recorded file sFileName = PBXCall.LastRecordedMessage ' cal new file name sNewFileName = SAVE_DIR & sPin & ".wav" ' create FileSystemObject Dim fso Set fso = CreateObject("Scripting.FileSystemObject") fso.CopyFile sFileName, sNewFileName Set fso = Nothing
' open connection to database Dim db Set db = CreateObject("ADODB.Connection") db.Open DB_DSN
' update record Dim sSQL sSQL = "update users set message = '" & _ sNewFileName & "' where pin = '" & _ sPin & "'" db.Execute(sSQL)
db.Close Set db = Nothing
SaveMessage = True
End Function
Bitte beachten Sie noch, dass die Ansagen in der Download-Datei nicht den endgültigen Ansagen während der Valentines Aktion entsprechen, sondern lediglich Testansagen darstellen.
Weitere Informationen zu der Valentins Aktion
Natürlich bestand die gesamte Aktion nicht nur aus dem gezeigten GSE Skript. Auf den folgenden Webseiten war eine Anmledung zu der Aktion möglich:
Die Webseiten wurden erstellt von der Firma Web Power (www.webpower.nl) welche auch für den Versandt der Valentins EMail verantworlich war.
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.
Erstellt: 13.02.2003