Я хочу создать сервер VXML, чтобы быть более эффективным.
Но я не нахожу документацию о получении информации из БД в VXML.
Так ты можешь мне помочь? Я пробую кое-что, но ничего не получается ...
Схема:
- пользователь звонит по номеру связанного
- Сервер запускает звук на телефон пользователя.
- Меню начала описывать опции, используя сохраненный голос
- Пользователь должен выбрать один из 4 вариантов.
- Если он выберет второе, другое меню начнется с описания подопций
- Опять же, если пользователь выберет первый вариант, сохраненный голос попросит его ввести свой почтовый индекс.
- Сервер ищет в базе данных, какой код страны связан с ним, и отвечает: «Какая хорошая страна {Название страны}».
Позже это будет использоваться для запроса информации о заказе на сервере.
Он вернет 1, 2, 3 для: «Заказ в потрясающем», «Заказ готов», «Заказ доставлен»
База данных и схема vxml находятся на одном сервере, поэтому db - localhost.
Вот базовый код для схемы (без какой-либо функции).
'' '
<?xml version="1.0" ?>
<vxml version="2.0" xmlns="http://www.w3.org/2001/vxml" xml:lang="fr-FR" application="root.vxml">
<form>
<block>
<audio src="./audio/intro.wav"></audio>
<goto next="#acceuil"/>
</block>
</form>
<menu id="acceuil">
<audio src="./audio/menu.wav"></audio>
<choice dtmf="1" next="#menuBoutique">Boutique</choice>
<choice dtmf="2" next="#q_commande">Question Commande</choice>
<choice dtmf="3" next="#v_commande">Validation Commande</choice>
<choice dtmf="4" next="#contact">Expert Optique</choice>
</menu>
<menu id="menuBoutique">
<audio src="./audio/menuBoutique.wav"></audio>
<audio src="./audio/menuRetour.wav"></audio>
<choice dtmf="1" next="villes.vxml#paris">Paris</choice>
<choice dtmf="2" next="villes.vxml#lyon">Lyon</choice>
<choice dtmf="3" next="villes.vxml#marseille">Marseille</choice>
<choice dtmf="4" next="villes.vxml#lille">Lille</choice>
<choice dtmf="5" next="villes.vxml#toulouse">Toulouse</choice>
<choice dtmf="6" next="villes.vxml#bordeaux">Bordeaux</choice>
<choice dtmf="7" next="villes.vxml#nantes">Nantes</choice>
</menu>
<menu id="q_commande">
<audio src="./audio/menuCommande.wav"></audio>
<audio src="./audio/menuRetour.wav"></audio>
<choice dtmf="1" next="#suivi">Suivi</choice>
<choice dtmf="2" next="#copie">Copie</choice>
<choice dtmf="3" next="#conseiller">MER Conseiller technique</choice>
</menu>
<form id="suivi">
<field name="num" type="digits?minlength=5;maxlength=7">
<prompt><audio src="./audio/suiviNC.wav"></audio></prompt>
<filled>
<prompt>Je recherche</prompt>
<assign name="num" expr="application.numeroCommande"/>
<prompt>Oh quelle tres belle ville qu'est <value expr="FUNCTION THAT FIND THE NAME OF THE CITY"/></prompt>
</filled>
</field>
</form>
</vxml>
'' '
Основная функция скрипта:
'' '
<![CDATA[
function getCity(num) {
return parseInt(num) / 2 ;
}
]]>
'' '
На самом деле, когда я пытаюсь вставить какой-нибудь сценарий и просто вернуть число, деленное на 2, он отвечает NaN (говорит голосом). Итак, как прочитать его как число, а затем как отправить число в базу данных и попросить его отправить данные из базы данных?