UNPKG

@abbott-platform/abbott-framework

Version:

Abbott Framework is a framework to bring productivity and abstractions to help you to build awesome chatbots.

65 lines (52 loc) 1.46 kB
const ChatAnalyticsBase = require('../analytics-base'); const request = require('request'); module.exports = class extends ChatAnalyticsBase { constructor(abbottController, options) { super(abbottController, options); } _getDefaultPayload(message) { return { url: 'https://chatbase.com/api/message', method: 'POST', json: { api_key: this.options.api_key, time_stamp: (new Date().getTime()) / 1000, platform: this.abbottController.botkitType, message: message, } }; } _sendRequest(payload) { try { request(payload, (err, httpRsp, body) => { if ((err) || (body.status !== 200)) { console.error(err, body); } }); } catch (err) { console.error(err); } } sendUserMessageAnayltics(message, userId, intent = null) { let payload = this._getDefaultPayload(message); payload.json.user_id = userId; payload.json.type = 'user'; if (intent) { payload.json.intent = intent; } else { payload.json.not_handled = true; } this._sendRequest(payload); } sendBOTMessageAnayltics(message, intent = null) { let payload = this._getDefaultPayload(message); payload.json.user_id = '[bot-user]'; payload.json.type = 'agent'; if (intent) { payload.json.intent = intent; } else { payload.json.not_handled = true; } this._sendRequest(payload); } };