UNPKG

wa-chat-server

Version:

Watson Assistant powered chat server

48 lines (47 loc) 2.5 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.healthCheckAPI = healthCheckAPI; const express_1 = __importDefault(require("express")); const Session_1 = require("../class/Session/Session"); const WatsonWrapper_1 = require("../class/WatsonWrapper"); const ServicesRegistrator_1 = require("../class/ServicesRegistrator"); function healthCheckAPI(logger, config) { return (watsonAdapter) => { const router = express_1.default.Router(); router.get('/', (req, res) => __awaiter(this, void 0, void 0, function* () { try { const registrator = new ServicesRegistrator_1.ServicesRegistrator(logger, config); const preProcessingServices = registrator.getPreProcessingServices(); const postProcessingServices = registrator.getPostProcessingServices(); const conversationServices = registrator.getConversationServices(); const payload = { alternate_intents: true, // eslint-disable-line context: {}, input: { text: '', }, }; const session = yield new Session_1.Session(null).start(); const watson = new WatsonWrapper_1.WatsonWrapper(logger, watsonAdapter, conversationServices, preProcessingServices, postProcessingServices, payload, null, session); yield watson.getResponse(); res.json({ ok: true }); } catch (e) { res.json({ ok: false, error: e.toString() }); } })); return router; }; }