From 2ccc0c6ca23892c6ec55f667b119b34a9f401008 Mon Sep 17 00:00:00 2001 From: GotPPay Date: Thu, 18 Jan 2018 19:08:51 +0100 Subject: [PATCH] dialog test --- backend/components/alexa.js | 29 +++++++++---- backend/helpers/amazon.js | 83 +++++++++++++++++++++++++++++++++---- 2 files changed, 96 insertions(+), 16 deletions(-) diff --git a/backend/components/alexa.js b/backend/components/alexa.js index 3445d71..3d2d5d4 100644 --- a/backend/components/alexa.js +++ b/backend/components/alexa.js @@ -63,15 +63,30 @@ module.exports = { }, slots: [ { - 'name': 'Name', - 'type': 'AMAZON.US_FIRST_NAME', - 'samples': ['My name is {Name}', 'I am {Name}', '{Name}'], + name:'Name', + type:'AMAZON.US_FIRST_NAME', + samples:[ + 'My name is {-|Name}', + 'I am {-|Name}', + '{-|Name}' + ] }, { - 'name': 'Color', - 'type': 'AMAZON.Color', - 'samples':['My favorite color is {Color}', '{Color}'] + "name": "Email", + "type": "emailSlot", + "samples": [ + "{blablablabla@blablabla.blabla.blabla|Email}", + "My email is {blablablabla@blablabla.blabla.blabla|Email}" + ] }, + { + "name": "Message", + "type": "emailMessage", + "samples": [ + "{Quick brown fox jumps over lazy dog. Quick brown fox jumps over lazy dog. Quick brown fox jumps over lazy dog.|Message}", + "My message is {Quick brown fox jumps over lazy dog. Quick brown fox jumps over lazy dog. Quick brown fox jumps over lazy dog.|Message}" + ] + } ], utterances: [ 'I would like to send a message', @@ -80,9 +95,9 @@ module.exports = { ], }, (request, response) => { - console.log ('Completed : ' + request.getDialog.isCompleted ()); console.log('Name : ' + request.slot('Name')); console.log('Color : ' + request.slot('Color')); + } ); diff --git a/backend/helpers/amazon.js b/backend/helpers/amazon.js index a380b3e..d1f8df5 100644 --- a/backend/helpers/amazon.js +++ b/backend/helpers/amazon.js @@ -58,6 +58,7 @@ var generateInteractionModel = function (skill) { let allIntents = []; let allPrompts = []; let dialogIntents = []; + let allTypes = []; let defaultIntents = [ { @@ -98,11 +99,19 @@ var generateInteractionModel = function (skill) { ] }, { - "name": "Color", - "type": "AMAZON.Color", + "name": "Email", + "type": "emailSlot", "samples": [ - "{Color}", - "My favorite color is {Color}" + "{Email}", + "My email is {Email}" + ] + }, + { + "name": "Message", + "type": "emailMessage", + "samples": [ + "{Message}", + "My message is {Message}" ] } ] @@ -126,11 +135,27 @@ var generateInteractionModel = function (skill) { "variations": [ { "type": "PlainText", - "value": "Tell me your favorite color" + "value": "What is your email" }, { "type": "PlainText", - "value": "What is your favorite color" + "value": "Tell me your email" + } + ] + } + ); + + allPrompts.push( + { + "id": "Elicit.Intent-EmailIntent.IntentSlot-Message", + "variations": [ + { + "type": "PlainText", + "value": "What is your message ?" + }, + { + "type": "PlainText", + "value": "What is the message ?" } ] } @@ -152,12 +177,51 @@ var generateInteractionModel = function (skill) { } }, { - "name": "Color", - "type": "AMAZON.Color", + "name": "Email", + "type": "emailSlot", "elicitationRequired": true, "confirmationRequired": false, "prompts": { - "elicitation": "Elicit.Intent-EmailIntent.IntentSlot-Color" + "elicitation": "Elicit.Intent-EmailIntent.IntentSlot-Email" + } + }, + { + "name": "Message", + "type": "emailMessage", + "elicitationRequired": true, + "confirmationRequired": false, + "prompts": { + "elicitation": "Elicit.Intent-EmailIntent.IntentSlot-Message" + } + } + ] + } + ); + + allTypes.push( + { + "name": "emailMessage", + "values": [ + { + "id": null, + "name": { + "value": "Quick brown fox jumps over lazy dog. Quick brown fox jumps over lazy dog. Quick brown fox jumps over lazy dog.", + "synonyms": [] + } + } + ] + } + ); + + allTypes.push( + { + "name": "emailSlot", + "values": [ + { + "id": null, + "name": { + "value": "blablablabla@blablabla.blabla.blabla", + "synonyms": [] } } ] @@ -221,6 +285,7 @@ var generateInteractionModel = function (skill) { intents: allIntents, }; + result.interactionModel.types = allTypes; result.interactionModel.prompts = allPrompts; result.interactionModel.dialog = {}; result.interactionModel.dialog.intents = dialogIntents;