Would you like to clone this notebook?

When you clone a notebook you are able to make changes without affecting the original notebook.

Cancel

QB

node v10.24.1
version: 1.0.0
endpointsharetweet
const express = require('express'); const app = express() app.use(express.json()); app.get('/', (req, res) => res.send('Hello World!')) app.listen(3000, () => console.log('Example app listening on port 3000!')) // POST method route app.post('/', function (req, res) { console.log(req); let action = req.body.queryResult.action; console.log(action); let responseJson = {}; responseJson.fulfillmentText = 'This is an endpoint published to RunKit'; // displayed response if(action === 'getScore'){ let responseJson = {}; let parameters = req.body.queryResult.parameters; let contexts = req.body.queryResult.outputContexts; console.log('Parameters:'+JSON.stringify(parameters)); console.log('Input Contexts:'+JSON.stringify(contexts)); var item = contexts.find(item => item.name.endsWith('session-vars')); if(item){ console.log('SessionVars:'+JSON.stringify(item)); console.log('SessionVars Params:'+JSON.stringify(item.parameters)); let score1 = parseInt(item.parameters.score1); let score2 = parseInt(item.parameters.score2); let score3 = parseInt(item.parameters.score3); let prefixResponse = ''; if (score3 === 0){ prefixResponse = 'Correct!'; } else{ prefixResponse = 'Incorrect! The correct answer is Fallback Intent'; } let fullScore = score1+score2+score3; //responseJson.fulfillmentText = 'Your final score is '+fullScore+' out of 3'; responseJson.fulfillmentMessages = []; let simpleResponses = []; let simpleResponse = {}; let textToSpeech = prefixResponse+'. Your final score is '+fullScore+' out of 3'; simpleResponse.textToSpeech = textToSpeech; simpleResponses.push(simpleResponse); let fulfillmentMessage = {}; fulfillmentMessage.platform = 'ACTIONS_ON_GOOGLE'; fulfillmentMessage.simpleResponses = simpleResponses; responseJson.fulfillmentMessages.push(fulfillmentMessage); console.log('Response:'+JSON.stringify(responseJson)); res.json(responseJson); /* "fulfillmentMessages": [ { "platform": "ACTIONS_ON_GOOGLE", "simpleResponses": { "simpleResponses": [ { "textToSpeech": "Correct! Which feature helps you tune the accuracy of your chatbot's intent mapping?" } ] } }, { "platform": "ACTIONS_ON_GOOGLE", "suggestions": { "suggestions": [ { "title": "Export Agent" }, { "title": "Followup Intent" }, { "title": "ML Threshold" } ] } } ] */ } else{ responseJson.fulfillmentText = 'There was an error'; console.log('Response:'+JSON.stringify(responseJson)); res.json(responseJson); } } })
Loading…

no comments

    sign in to comment