diff --git a/dist/src/builtin/sentiment.js b/dist/src/builtin/sentiment.js index d1691d584..6361ebf43 100644 --- a/dist/src/builtin/sentiment.js +++ b/dist/src/builtin/sentiment.js @@ -28,19 +28,27 @@ function init() { client.login('_', botapi_1.finalAction); client.on(msg_types.MESSAGE, (message) => __awaiter(this, void 0, void 0, function* () { var _a; - if (((_a = message.author) === null || _a === void 0 ? void 0 : _a.bot) !== botPrefix && - message.content !== '/bot install sentiment') - return; + // if ( + // message.author?.bot !== botPrefix && + // message.content !== '/bot install sentiment' + // ) + // return const arr = (message.content && message.content.split(' ')) || []; const tribe = (yield models_1.models.Chat.findOne({ where: { uuid: message.channel.id }, })); if (!interval) { + const bot = (yield models_1.models.ChatBot.findOne({ + where: { chatId: tribe.id, botPrefix, tenant: tribe.tenant }, + })); + if (!bot) + return; + let meta = JSON.parse(bot.meta || `{}`); interval = setInterval(() => { (0, sentiment_1.checkThreshold)(tribe, botName, botPrefix, interval, 'threshold', message); - }, (0, sentiment_1.timerMs)(60)); + }, (0, sentiment_1.timerMs)(meta.timer || 60)); } - if (arr[0] === botPrefix) { + if (arr[0] === botPrefix && ((_a = message.author) === null || _a === void 0 ? void 0 : _a.bot) === botPrefix) { const cmd = arr[1]; switch (cmd) { case 'threshold': diff --git a/dist/src/builtin/sentiment.js.map b/dist/src/builtin/sentiment.js.map index 6885836f9..dd982454f 100644 --- a/dist/src/builtin/sentiment.js.map +++ b/dist/src/builtin/sentiment.js.map @@ -1 +1 @@ -{"version":3,"file":"sentiment.js","sourceRoot":"","sources":["../../../src/builtin/sentiment.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"sentiment.js","sourceRoot":"","sources":["../../../src/builtin/sentiment.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/src/builtin/utill/sentiment.js b/dist/src/builtin/utill/sentiment.js index 0bc212cbd..287a03923 100644 --- a/dist/src/builtin/utill/sentiment.js +++ b/dist/src/builtin/utill/sentiment.js @@ -97,12 +97,13 @@ function checkThreshold(tribe, botName, botPrefix, interval, command, message) { if (typeof newResult === 'number') { const last_result = (meta === null || meta === void 0 ? void 0 : meta.last_result) || 0; const threshold = (meta === null || meta === void 0 ? void 0 : meta.threshold) || 10; - const maximum_result = 100; - const diff = (Math.abs(newResult - last_result) / maximum_result) * 100; - console.log('++++++++++++ Difference', diff); + const diff = (Math.abs(newResult - last_result) / last_result) * 100; if (diff >= threshold) { + let direction = 'increased'; + if (newResult < last_result) + direction = 'decreased'; // Send Alert to tribe - botResponse(botName, 'Sentiment has increased by some percentage', botPrefix, tribe.id, message, command || 'threshold'); + botResponse(botName, `Sentiment has ${direction} by ${Math.round(diff)}%`, botPrefix, tribe.id, message, ''); } yield bot.update({ meta: JSON.stringify(Object.assign(Object.assign({}, meta), { last_result: newResult })), diff --git a/dist/src/builtin/utill/sentiment.js.map b/dist/src/builtin/utill/sentiment.js.map index c8f0bb3ba..f67d904fc 100644 --- a/dist/src/builtin/utill/sentiment.js.map +++ b/dist/src/builtin/utill/sentiment.js.map @@ -1 +1 @@ -{"version":3,"file":"sentiment.js","sourceRoot":"","sources":["../../../../src/builtin/utill/sentiment.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"sentiment.js","sourceRoot":"","sources":["../../../../src/builtin/utill/sentiment.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/builtin/sentiment.ts b/src/builtin/sentiment.ts index 2e52dee88..cd70c2c6f 100644 --- a/src/builtin/sentiment.ts +++ b/src/builtin/sentiment.ts @@ -8,6 +8,7 @@ import { timer, updateUrl, timerMs, + SentimentMeta, } from './utill/sentiment' const msg_types = Sphinx.MSG_TYPE @@ -25,11 +26,11 @@ export function init() { client.login('_', finalAction) client.on(msg_types.MESSAGE, async (message: Sphinx.Message) => { - if ( - message.author?.bot !== botPrefix && - message.content !== '/bot install sentiment' - ) - return + // if ( + // message.author?.bot !== botPrefix && + // message.content !== '/bot install sentiment' + // ) + // return const arr = (message.content && message.content.split(' ')) || [] const tribe = (await models.Chat.findOne({ @@ -37,6 +38,13 @@ export function init() { })) as ChatRecord if (!interval) { + const bot = (await models.ChatBot.findOne({ + where: { chatId: tribe.id, botPrefix, tenant: tribe.tenant }, + })) as ChatRecord + + if (!bot) return + let meta: SentimentMeta = JSON.parse(bot.meta || `{}`) + interval = setInterval(() => { checkThreshold( tribe, @@ -46,10 +54,10 @@ export function init() { 'threshold', message ) - }, timerMs(60)) + }, timerMs(meta.timer || 60)) } - if (arr[0] === botPrefix) { + if (arr[0] === botPrefix && message.author?.bot === botPrefix) { const cmd = arr[1] switch (cmd) { case 'threshold': diff --git a/src/builtin/utill/sentiment.ts b/src/builtin/utill/sentiment.ts index 3c8c8687a..b0d58efc7 100644 --- a/src/builtin/utill/sentiment.ts +++ b/src/builtin/utill/sentiment.ts @@ -4,7 +4,7 @@ import { ChatBotRecord, ChatRecord, models } from '../../models' import { sphinxLogger, logging } from '../../utils/logger' import fetch from 'node-fetch' -interface SentimentMeta { +export interface SentimentMeta { threshold: number last_result: number timer: number @@ -165,19 +165,21 @@ export async function checkThreshold( if (typeof newResult === 'number') { const last_result = meta?.last_result || 0 + const threshold = meta?.threshold || 10 - const maximum_result = 100 - const diff = (Math.abs(newResult - last_result) / maximum_result) * 100 - console.log('++++++++++++ Difference', diff) + const diff = (Math.abs(newResult - last_result) / last_result) * 100 + if (diff >= threshold) { + let direction = 'increased' + if (newResult < last_result) direction = 'decreased' // Send Alert to tribe botResponse( botName, - 'Sentiment has increased by some percentage', + `Sentiment has ${direction} by ${Math.round(diff)}%`, botPrefix, tribe.id, message, - command || 'threshold' + '' ) } await bot.update({