Lezione 3. PHP Voice, generare VXML da PHP. Christian Lacetera |
|
<!-- INIZIO LEZIONE --!>
Il PHP e' un linguaggio molto versatile che vanta una comunita' di
sviluppatori molto attiva, e cosi' non poteva mancare una implementazione,
naturalmente open source, per generare dinamicamente delle pagine VoiceXML.
<?php
include ("../vxml.class.php"); $app = new gonx_vxml; $app->start_vxml(,,'en',,,'2.0'); app->load("message", array("","Hello World !","","hello.wav")); $app->end_vxml(); $app->generate(); ?> il codice VXML generato sara': <?xml version="1.0" encoding="UTF-8"?> <vxml xml:lang="en" xmlns="http://www.w3.org/2001/vxml" version="2.0"> <form> <block> <audio src="hello.wav">Hello World !</audio> </block> </form> </vxml> All'inizio troviamo l'inclusione della libreria attraverso il comando include: include ("../vxml.class.php"); ora e' possibile chiamare il costruttore della classe ed inizializzare l'oggetto gonx_vxml $app = new gonx_vxml; $app->start_vxml(,,'en',,,'2.0'); questo costruttore ha sei parametri che sono nell'ordine: In questo esempio utilizziamo solo xml_lang e vxml_version; il codice che verra' generato sara' il seguente: <?xml version="1.0" encoding="UTF-8"?> <vxml xml:lang="en" xmlns="http://www.w3.org/2001/vxml" version="2.0"> il restante codice mostra la procedura per chiamare un modulo aggiuntivo, e come passagli dei parametri: $app->load("message", array("","Hello World !","","hello.wav")); il modulo in questione si chiama message (lo trovate in vxml_mods/message.class.php) e ha come argomenti l'id del form, il messaggio, l'eventuale prossimo form, e il file adudio da riprodurre, di seguito trovate l'output vxml del modulo: <form> <block> <audio src="hello.wav"> Hello World ! </audio> </block> </form> In ultimo troviamo le istruzioni necessarie a chiudere il blocco VoiceXML aperto da start_vxml, e a generare tutta la pagina in VoiceXML: $app->end_vxml(); $app->generate(); Analizzando gli altri esempi potrete comprendere meglio l'utilita' di queste preziose classi, esse infatti permettono di separare il codice PHP dal VoiceXML. Cio' oltre a rendere le applicazioni piu' facilmente leggibili e manutenibili, ne' permette un piu' rapido e semplice sviluppo. L'unico svantaggio a mio avviso e' rappresentato dalla documentazione non troppo esaustiva che non permette ad utenti meno esperti di prendere immediatamente confidenza con questo ottimo strumento. Speriamo che nel futuro prossimo, il team di PHP Voice metta mano anche ad essa.
|
|