VT2020-Voice First Development-Demo

From air
Revision as of 18:02, 22 November 2020 by Samuel.Courthial (talk | contribs) (→‎Création de l'application)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Prérequis

  • Node.js

Création de l'application

L'application est créée avec le framework Violet.

Installation de Violet

npm init -y
npm install violet --save


Fichier principal

Cette application se contente de dire bonjour quand on lui demande.

// Load the Violet Module
const violet = require('violet').script();

// The Controller
var app = {
    helloInFrench: (response)=>{
        response.say("Bonjour!");
    },
    helloInEnglish: (response)=>{
        response.say("Hello!");
    }
}

// The Script
violet.addFlowScript(`<app>
    <<choice id="launch">
        <expecting>à quoi sert tu</expecting>
        <say>Je peux dire bonjour en français ou en anglais</say>
    </choice>

    <choice id="list">
    <expecting>dis bonjour</expecting>
    <say>Bien sur!</say>
    <decision>
        <ask>Dois-je dire bonjour en français ou en anglais?</ask>
        <choice>
            <expecting>en français</expecting>
            <resolve value="app.helloInFrench(response)"/>
        </choice>
        <choice>
            <expecting>en anglais</expecting>
            <resolve value="app.helloInEnglish(response)"/>
        </choice>
    </decision>
    </choice>
</app>`, {app});

L'application complète est disponible sur github ici.

Déploiement

Le déploiement a été fait sur Heroku. Elle est accessible à l'adresse https://bonjourbot.herokuapp.com/

La branche master du projet github a été utilisé comme base pour le déploiement.

Violet est configuré directement pour faciliter le processus. Aucune manipulation supplémentaire n'a été nécessaire.

Test par Dialogflow

L'application est testé en utilisant un agent dialogflow.

Le but d'utiliser un tel agent est d'avoir accès aux composants manquant pour que notre application fonctionne (Text to Speech, Speech to Text, NLG, NLU).

De plus, Dialogflow donne accès à un simulateur permettant d'executer directement l'application avec entrée et sortie vocale.