Кто-нибудь знает, как запросить и получить возврат из базы данных, используя VXML? - PullRequest
0 голосов
/ 17 апреля 2019

Я хочу создать сервер 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 (говорит голосом). Итак, как прочитать его как число, а затем как отправить число в базу данных и попросить его отправить данные из базы данных?

...