From 4e80cdbb63b24cd607bab47ec55a46c4aa0f02c2 Mon Sep 17 00:00:00 2001 From: Eric Date: Thu, 23 Jun 2022 00:12:54 +0200 Subject: [PATCH 1/2] Updated docker base image --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index fcd2e9f..1edbbc9 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM node:16-alpine3.11 +FROM node:16-alpine WORKDIR /bot COPY . /bot From 6255e40057a3a03c25c6607d935c3dc7f98ff3d1 Mon Sep 17 00:00:00 2001 From: Eric Date: Thu, 23 Jun 2022 00:14:07 +0200 Subject: [PATCH 2/2] Formatted file and fixed AutoReply #90 --- src/users.ts | 84 ++++++++++++++++++++++++++-------------------------- 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/src/users.ts b/src/users.ts index 5fb47c8..c386b06 100644 --- a/src/users.ts +++ b/src/users.ts @@ -2,7 +2,7 @@ import strings from '../config/strings'; import cache from './cache'; import * as db from './db'; import * as middleware from './middleware'; -const {Extra} = require('telegraf'); +const { Extra } = require('telegraf'); /** Message template helper * @param {String} ticket @@ -16,12 +16,12 @@ function ticketMsg(ticket, message, anon = true, autoReplyInfo) { link = `tg://user?id=${cache.ticketID}`; } return `${cache.config.language.ticket} ` + - `#T${ticket.toString().padStart(6, '0')} ${cache.config.language.from} ` + - `` + - `${middleware.escapeText(message.from.first_name)} ${cache.config.language.language}: ` + - `${message.from.language_code}\n\n` + - `${middleware.escapeText(message.text)}\n\n` + - `${autoReplyInfo}`; + `#T${ticket.toString().padStart(6, '0')} ${cache.config.language.from} ` + + `` + + `${middleware.escapeText(message.from.first_name)} ${cache.config.language.language}: ` + + `${message.from.language_code}\n\n` + + `${middleware.escapeText(message.text)}\n\n` + + `${autoReplyInfo}`; } /** Ticket auto reply for common questions @@ -33,15 +33,15 @@ function autoReply(ctx, bot, chat) { for (let i in strings) { if (ctx.message.text.toString().indexOf(strings[i][0]) > -1) { // Define message - let msg = `${cache.config.language.dear} `+ - `${middleware.escapeText(ctx.message.from.first_name)},\n\n`+ - `${middleware.escapeText(strings[i][1])}\n\n`+ - `${cache.config.language.regards}\n`+ - `${cache.config.language.automatedReplyAuthor}\n\n`+ + let msg = `${cache.config.language.dear} ` + + `${middleware.escapeText(ctx.message.from.first_name)},\n\n` + + `${middleware.escapeText(strings[i][1])}\n\n` + + `${cache.config.language.regards}\n` + + `${cache.config.language.automatedReplyAuthor}\n\n` + `${cache.config.language.automatedReply}`; // Send message with keyboard - middleware.reply(msg, Extra.HTML()) + middleware.reply(ctx, msg); return true; } } @@ -68,52 +68,52 @@ function chat(ctx, bot, chat) { cache.ticketStatus[cache.ticketID] = true; if (cache.ticketSent[cache.ticketID] === undefined) { // Get Ticket ID from DB - db.getOpen(chat.id, ctx.session.groupCategory, function(ticket) { - + db.getOpen(chat.id, ctx.session.groupCategory, function (ticket) { + if (!isAutoReply) - middleware.msg(chat.id, cache.config.language.contactMessage + - (cache.config.show_user_ticket ? cache.config.language.yourTicketId + ' #T' + - ticket.id.toString().padStart(6, '0') : ''), Extra.HTML()); + middleware.msg(chat.id, cache.config.language.contactMessage + + (cache.config.show_user_ticket ? cache.config.language.yourTicketId + ' #T' + + ticket.id.toString().padStart(6, '0') : ''), Extra.HTML()); // To staff middleware.msg(cache.config.staffchat_id, ticketMsg(ticket.id, ctx.message, cache.config.anonymous_tickets, autoReplyInfo), - Extra.HTML()); - + Extra.HTML()); + // Check if group flag is set and is not admin chat if (ctx.session.group !== undefined && ctx.session.group != cache.config.staffchat_id) { // Send to group-staff chat - middleware.msg(ctx.session.group, ticketMsg(ticket.id, ctx.message, cache.config.anonymous_tickets, autoReplyInfo), cache.config.allow_private ? { - parse_mode: 'html', - reply_markup: { - html: '', - inline_keyboard: [ - [ - { - 'text': cache.config.language.replyPrivate, - 'callback_data': ctx.from.id + - '---' + ctx.message.from.first_name + '---' + ctx.session.groupCategory + - '---' + ticket.id - } + middleware.msg(ctx.session.group, ticketMsg(ticket.id, ctx.message, cache.config.anonymous_tickets, autoReplyInfo), cache.config.allow_private ? { + parse_mode: 'html', + reply_markup: { + html: '', + inline_keyboard: [ + [ + { + 'text': cache.config.language.replyPrivate, + 'callback_data': ctx.from.id + + '---' + ctx.message.from.first_name + '---' + ctx.session.groupCategory + + '---' + ticket.id + } + ], ], - ], - }, - } : { - parse_mode: 'html', - }); + }, + } : { + parse_mode: 'html', + }); } }); // wait 5 minutes before this message appears again and do not // send notification sounds in that time to avoid spam - setTimeout(function() { + setTimeout(function () { cache.ticketSent[cache.ticketID] = undefined; }, cache.config.spam_time); cache.ticketSent[cache.ticketID] = 0; } else if (cache.ticketSent[cache.ticketID] < cache.config.spam_cant_msg) { cache.ticketSent[cache.ticketID]++; - db.getOpen(cache.ticketID, ctx.session.groupCategory, function(ticket) { - middleware.msg(cache.config.staffchat_id, + db.getOpen(cache.ticketID, ctx.session.groupCategory, function (ticket) { + middleware.msg(cache.config.staffchat_id, ticketMsg(ticket.id, ctx.message, cache.config.anonymous_tickets, autoReplyInfo), Extra.HTML()); if (ctx.session.group !== undefined) { @@ -124,10 +124,10 @@ function chat(ctx, bot, chat) { } else if (cache.ticketSent[cache.ticketID] === cache.config.spam_cant_msg) { cache.ticketSent[cache.ticketID]++; // eslint-disable-next-line new-cap - + middleware.msg(chat.id, cache.config.language.blockedSpam, Extra.HTML()); } - db.getOpen(cache.ticketID, ctx.session.groupCategory, function(ticket) { + db.getOpen(cache.ticketID, ctx.session.groupCategory, function (ticket) { console.log(ticketMsg(ticket.id, ctx.message, cache.config.anonymous_tickets, autoReplyInfo)); }); }