Beta Test!
Asterisk-Schulungen und Consulting vom Autor dieses Buches finden Sie auf http://www.amooma.de. |
Wir haben im letzten Kapitel gesehen, dass die Sprachaufnahme mit der HTTP-Post Methode zu einem Skript namens aufnahme-2-vxml.php
gesendet wird. Dieses Vorgehen ist vergleichbar mit dem Hochladen einer Datei vom Webbrowser aus. In beiden Fällen muß der Webserver Aktionen einleiten, um die empfangenen Daten zu verarbeiten. Dies kann auf unterschiedlichste Arten geschehen, je nach dem welche serverseitige Technologie zum Einsatz kommt. In unserem Beispiel verwenden wir ein kleines PHP-Skript:
Beispiel 10.5. aufnahme-2-vxml.php
<?php echo '<?xml version="1.0" encoding="UTF-8"?>'; $filename = $_FILES['aufnahme']['name']; move_uploaded_file($_FILES['aufnahme']['tmp_name'], "./aufnahmen/" . $filename); ?> <vxml version="2.0"> <form> <block><prompt>Ihre Nachricht war:<break time="300ms"/></prompt></block> <block><prompt> <audio src="./aufnahmen/<?php echo $filename; ?>"></audio> <break time="300ms"/> </prompt></block> </form> </vxml>
Das Beispielscript speichert die empfangene Sounddatei im Pfad aufnahmen
ab. Alternativ könnte man die Aufnahme natürlich auch in einer Datenbank abspeichern oder als Email versenden. Bei der obigen Variante sollte man allerdings darauf achten, dass der Webserver die erforderlichen Zugriffsrechte hat, um in das aufnahmen
-Verzeichnis schreiben zu können.
Damit der Anrufer seine aufgenommenen Worte hören kann, sendet der Webserver ein passendes VoiceXML Dokument zurück. Der Aufbau dieses Dokuments mit dem <audio> Element wurde schon im Kapitel "Abspielen von Sounddateien" behandelt.
Mit dem Hastenix Skript können Sie dieses Beispiel interaktiv testen, indem Sie Ihren Dialplan einmal mehr erweitern und die 4294 wählen:
; ; Hastenix Beispiel zur Sprachaufnahme ; exten => 4294,1,Answer exten => 4294,2,AGI(hastenix.pl|http://hastenix.hawhaw.de/aaw/aufnahme-1.vxml) exten => 4294,3,Hangup
Bevor Sie während des Tests eventuell unüberlegte Äußerungen machen: Seien Sie sich bewußt, dass Ihre Worte auf den HAWHAW-Server übertragen und dort wie oben beschrieben abgespeichert werden!
© by Stefan Wintermeyer