hvordan å stoppe bot for å ikke gå videre med mindre enhet er løser

stemmer
1
    var intent = args.intent;
    var number = builder.EntityRecognizer.findEntity(intent.entities, 'builtin.numer');

når jeg bruker findentity det gå videre hvis svaret er riktig eller ikke hvordan kan jeg bruke enheten beslutning på det som ikke builtin entites

    var location1 = builder.EntityRecognizer.findEntity(intent.entities, 'Location');
    var time = builder.EntityRecognizer.resolveTime(intent.entities);

når jeg bruker løse gangen spør againand igjen med mindre foretaket er løse;

    var alarm = session.dialogData.alarm = {
      number: number ? number.entity : null,
      timestamp: time ? time.getTime() : null,
      location1: location1? location1.entity :null
    };
    /*  if (!number & !location1 time)
     {} */


    // Prompt for number
    if (!alarm.number) {
        builder.Prompts.text(session, 'how many people you are');
    } else {
        next();
    }
},
function (session, results, next) {
    var alarm = session.dialogData.alarm;

    if (results.response) {
        alarm.number = results.response;
    }
Publisert på 17/11/2016 klokken 14:49
kilden bruker
På andre språk...                            


1 svar

stemmer
0

Jeg tror jeg allerede har svart på dette spørsmålet på Stackoverflow: " Botframework Prompt dialoger Til nett ferdig ".

Du må lage en mini-dialog, som vil ha minst to foss trinn. Ditt første skritt vil ta noen argsog sjekke / bruke dem som potensielle verdien din chatbot venter på. Det vil be brukeren om å bekrefte at dette er de riktige verdiene. Hvis ingen argsble vedtatt i, eller dataene ikke var gyldig, blir brukeren bedt om å levere verdi chatbot venter på.

Det andre trinnet vil ta brukerens respons på det første trinnet og enten sette verdien til et sessiondataobjekt (som session.userDataeller session.conversationData) eller start-dialogen ved å bruke session.replaceDialog () eller session.beginDialog () .

I hoveddialogen vil du endre trinnet hvor du bruker din EntityRecognizersfor å inkludere en if-setning som begynner mini-dialogen. For å utløse if-setningen, kan du bruke samme design som vist i dette GitHub eksempel eller i koden. Denne koden kan se ut som følger:

var location1 = builder.EntityRecognizer.findEntity(intent.entities, 'Location');

session.userData.location1 = location1 ? location1.entity : null;

if(!session.userData.location1) {
    session.beginDialog('<get-location-dialog>');
}
Svarte 16/04/2017 kl. 20:26
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more