addDialogs() { let dialog = new LuisDialog(this.luisUrl); console.log('dialog is ', dialog); this.bot.add('/', dialog); dialog.on('FindItemLevel', [ this.processLanguage, this.getCharacterName, this.getRealm, this.getIlvl ]); dialog.onDefault(DialogAction.send("I could not understand your request.")); }
function (session, results) { builder.LuisDialog.recognize(session.message.text, modelUri, function (err, intents, entities) { if (null != err) { session.endDialog("Unexpected error while parsing your answer. Try again after sometime!"); return; } session.userData.nameAlreadyAsked = true; var entity = builder.EntityRecognizer.findEntity(entities, 'name'); if (null != entity) { session.userData.name = entity.entity; session.beginDialog("/showOffer"); } else { session.send("I am sorry, i did not understand your answser. Please provide your name again."); //session.replaceDialog("/userProfile"); } }); }
function (session, results, next) { if (results.response) { builder.LuisDialog.recognize(session.message.text, modelUri, function (err, intents, entities) { if (null != err) { session.endDialog("Unexpected error while parsing your answer. Try again after sometime!"); return; } var entity = builder.EntityRecognizer.findEntity(entities, 'sub-product'); if (null != entity) { switch (entity.entity) { case "tv": var captionText = "We have found a perfect offer for you. Please check this.\n"; var reply = new builder.Message() .setText(session, captionText) .addAttachment({ text: "50/50 Mbps Internet + Custom TV + Phone starting at $79.99/mo", title: session.userData.selectedOffer + " offer for TV", titleLink: "http://www.verizon.com/home/fiostv/", contentType: "image/jpeg", contentUrl: "http://www.verizon.com/cs/groups/public/documents/adacct/mob_ocw_ftp_ofr2_0403.png" }); //session.send("50/50 Mbps Internet + Custom TV + Phone starting at $79.99/mo"); session.send(reply); builder.Prompts.confirm(session, "Do you like to proceed " + session.userData.name + "?\nPlease confirm." ); break; case "internet": var captionText = "We have found a perfect offer for you. Please check this.\n"; var reply = new builder.Message() .setText(session, captionText) .addAttachment({ text: "150/150 Mbps Internet + Custom TV + Phone starting at $89.99/mo", title: session.userData.selectedOffer + " offer for Internet", titleLink: "http://www.verizon.com/home/fios-fastest-internet/", contentType: "image/jpeg", contentUrl: "http://www.verizon.com/cs/groups/public/documents/adacct/mob_ocw_ftp_ofr2_0403.png" }); //session.send("50/50 Mbps Internet + Custom TV + Phone starting at $79.99/mo"); session.send(reply); builder.Prompts.confirm(session, + "Do you like to proceed?\nPlease confirm " + session.userData.name); break; case "phone": var captionText = "We have found a perfect offer for you. Please check this.\n"; var reply = new builder.Message() .setText(session, captionText) .addAttachment({ text: "100/100 Mbps Internet + Custom TV + Phone starting at $69.99/mo", title: session.userData.selectedOffer + " offer for Phone", titleLink: "http://www.verizon.com/home/fios-fastest-internet/", contentType: "image/jpeg", contentUrl: "http://www.verizon.com/cs/groups/public/documents/adacct/mob_ocw_ftp_ofr2_0403.png" }); //session.send("50/50 Mbps Internet + Custom TV + Phone starting at $79.99/mo"); session.send(reply); builder.Prompts.confirm(session, "Do you like to proceed?\nPlease confirm " + session.userData.name); break; default: session.send("I am sorry, i did not understand your answser... Please tell me which one do you use more..like internet/tv/phone..."); //session.replaceDialog("/showOffer"); break; } } else { session.send("I am sorry, i did not understand your answser... Please tell me which one do you use more..like internet/tv/phone..."); //session.replaceDialog("/showOffer"); } }); } },
/// <reference path="typings/tsd.d.ts" /> const fs = require('fs'); const restify = require('restify'); const skype = require('skype-sdk'); const builder = require('botbuilder'); import stockClient = require('./stockclient'); import luisclient = require('./luis-client'); var luisBaseUrl = "https://api.projectoxford.ai/luis/v1/application"; var applicationId = "<LUIS APPLICATION ID>"; var subscriptionKey = "<SUBSCIPTION KEY>"; var model = process.env.model || `${luisBaseUrl}?id=${applicationId}&subscription-key=${subscriptionKey}&q=`; var dialog = new builder.LuisDialog(model); const botService = new skype.BotService({ messaging: { botId: process.env.BOT_ID || "64509262-bbb5-468b-bbc3-9d48cf11791d", serverUrl: "https://apis.skype.com", requestTimeout: 15000, appId: process.env.APP_ID || "30a5ed7b-8880-4025-b765-50094b992afc", appSecret: process.env.APP_SECRET || "<APP KEY>" } }); // Create bot and add dialogs var skypebot = new builder.SkypeBot(botService); var textbot = new builder.TextBot(botService); skypebot.add('/', dialog); textbot.add('/', dialog);
let prompts = require('../prompts'); import { IRouteProvider, RouteList, Route, LuisLocation } from '../lib/interfaces'; import { RejseplanenRoutesProvider } from '../lib/rejseplanen'; import { GoogleMapsRoutesProvider } from '../lib/googlemaps'; let providers = { google: new GoogleMapsRoutesProvider({key: process.env.GOOGLE_MAPS_KEY}), rejseplanen: new RejseplanenRoutesProvider(process.env.REJSEPLANEN_BASE_URL) } // let googleProvider: IRouteProvider = new GoogleMapsRoutesProvider({key: process.env.GOOGLE_MAPS_KEY}); // let rejseplanenProvider: IRouteProvider = new RejseplanenRoutesProvider(process.env.REJSEPLANEN_BASE_URL); // let routeProvider = googleProvider; /** Return a LuisDialog that points at our model and then add intent handlers. */ let model = process.env.LUIS_AI_MODEL let luisDialog = new builder.LuisDialog(model); module.exports = luisDialog; /** Answer users help requests. We can use a DialogAction to send a static message. */ // luisDialog.on('None', function(session) { // console.log('Intent Triggered: None') // session.send(prompts.helpMessage); // }); luisDialog.onDefault((session) => { if (session.message.text.toLowerCase().indexOf('google') != -1) { session.userData.routeProvider = 'google'; session.send("Ok, I'll use google."); } else if (session.message.text.toLowerCase().indexOf('rejseplanen') != -1) { session.userData.routeProvider = 'rejseplanen'; session.send("Ok, I'll use rejseplanen.")
/*proxy = http://v631754:glAbundance03g$@proxy.ebiz.verizon.com:80 http - proxy=http://v631754:glAbundance03g$@proxy.ebiz.verizon.com:8080 https - proxy=http://v631754:glAbundance03g$@proxy.ebiz.verizon.com:8080 process.env.proxy = "http://*****:*****@proxy.ebiz.verizon.com:80"; process.env.http_proxy = "http://*****:*****@proxy.ebiz.verizon.com:80"; process.env.https_proxy = "http://*****:*****@proxy.ebiz.verizon.com:8080"; globalTunnel.initialize(); */ var model = process.env.model || "https://api.projectoxford.ai/luis/v1/application?id=573c0d0c-060c-4549-8ef5-650218618c08&subscription-key=b27a7109bc1046fb9cc7cfa874e3f819&q="; var modelUri = "https://api.projectoxford.ai/luis/v1/application?id=573c0d0c-060c-4549-8ef5-650218618c08&subscription-key=b27a7109bc1046fb9cc7cfa874e3f819"; var dialog = new builder.LuisDialog(model); var bot = new builder.BotConnectorBot(); //new builder.TextBot(); //globalTunnel.end(); //start with waterfall... bot.add("/", [ function (session, args, next) { if (session.message.text.indexOf("set tv package") == -1) { if (!session.userData.channelSearchResultsShown) { if (null == session.userData.selectedPackageName || session.userData.selectedPackageName.length == 0) { session.userData.selectedPackageName = fiosTVPackages["custom_tv_essentials"]; } var packageInfo = "Your current TV package selection is " + session.userData.selectedPackageName; builder.Prompts.confirm(session, packageInfo + "<br/>Are you looking for any specific channels in your package?"); }
/*----------------------------------------------------------------------------- This is a sample bot. @author: giriganapathy @since: May 5, 2016 01:32 PM -----------------------------------------------------------------------------*/ var restify = require("restify"); var builder = require("botbuilder"); var model = process.env.model || "https://api.projectoxford.ai/luis/v1/application?id=83b0d263-bcb7-4ded-b197-95b25ee68030&subscription-key=b27a7109bc1046fb9cc7cfa874e3f819&q="; var key = "embct6154"; var dialog = new builder.LuisDialog(model); var bot = new builder.BotConnectorBot();//new builder.TextBot(); bot.add("/", dialog); dialog.on("intent.pnr.enquiry", [ function (session, args, next) { var entity = builder.EntityRecognizer.findEntity(args.entities, 'pnr-number'); if (null != entity) { var pnrNumber = entity.entity; if (null != pnrNumber) { session.userData.pnrNumber = pnrNumber; var Client = require('node-rest-client').Client; var client = new Client(); // set content-type header and data as json in args parameter var options = { headers: { "Content-Type": "application/json" } };