Skip to content

Commit

Permalink
Merge pull request #98 from bostrot/v3.1.1
Browse files Browse the repository at this point in the history
Fixed auto replay not sending reply
  • Loading branch information
bostrot authored Jun 22, 2022
2 parents d06c46b + 6255e40 commit efac390
Show file tree
Hide file tree
Showing 2 changed files with 43 additions and 43 deletions.
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM node:16-alpine3.11
FROM node:16-alpine
WORKDIR /bot

COPY . /bot
Expand Down
84 changes: 42 additions & 42 deletions src/users.ts
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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} ` +
`<a href="${link}">` +
`${middleware.escapeText(message.from.first_name)}</a> ${cache.config.language.language}: ` +
`${message.from.language_code}\n\n` +
`${middleware.escapeText(message.text)}\n\n` +
`<i>${autoReplyInfo}</i>`;
`#T${ticket.toString().padStart(6, '0')} ${cache.config.language.from} ` +
`<a href="${link}">` +
`${middleware.escapeText(message.from.first_name)}</a> ${cache.config.language.language}: ` +
`${message.from.language_code}\n\n` +
`${middleware.escapeText(message.text)}\n\n` +
`<i>${autoReplyInfo}</i>`;
}

/** Ticket auto reply for common questions
Expand All @@ -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` +
`<i>${cache.config.language.automatedReply}</i>`;

// Send message with keyboard
middleware.reply(msg, Extra.HTML())
middleware.reply(ctx, msg);
return true;
}
}
Expand All @@ -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) {
Expand All @@ -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));
});
}
Expand Down

0 comments on commit efac390

Please sign in to comment.