From 4c57ba1f1ed896996b1b7c30a56cda7803f8e6c0 Mon Sep 17 00:00:00 2001 From: Vufer Date: Mon, 14 Jul 2025 12:06:55 +0000 Subject: [PATCH] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D1=8F=20=D0=B2=20=D0=BF=D1=80=D0=BE=D0=B4=D0=B0=D0=BA?= =?UTF-8?q?=D1=88=D0=B5=D0=BD=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bot.js | 34 ++++++++++++++++++++++++++-------- promptGen.js | 6 +++--- 2 files changed, 29 insertions(+), 11 deletions(-) diff --git a/bot.js b/bot.js index 29a3475..2b507e0 100644 --- a/bot.js +++ b/bot.js @@ -30,15 +30,33 @@ class TelegramHistoryBot { this.init(); } - async isAdmin(ctx, userId = ctx.from.id) { - try { - const member = await ctx.getChatMember(userId) - return ['creator', 'administrator'].includes(member.status) - } catch (error) { - logger.error('Ошибка проверки статуса пользователя:', error) - return false + + +async isAdmin(ctx, userId = ctx.from.id) { + try { + const superAdminId = parseInt(process.env.SUPERADMIN_ID, 10) + + if (userId === superAdminId) { + return true } + + const member = await ctx.getChatMember(userId) + return ['creator', 'administrator'].includes(member.status) + } catch (error) { + logger.error('Ошибка проверки статуса пользователя:', error) + return false } +} + +// async isAdmin(ctx, userId = ctx.from.id) { +// try { +// const member = await ctx.getChatMember(userId) +// return ['creator', 'administrator'].includes(member.status) +// } catch (error) { +// logger.error('Ошибка проверки статуса пользователя:', error) +// return false +// } +// } getUniqueChatIds() { const chatMap = new Map(); @@ -616,4 +634,4 @@ if (!BOT_TOKEN) { const bot = new TelegramHistoryBot(BOT_TOKEN); -module.exports = TelegramHistoryBot; \ No newline at end of file +module.exports = TelegramHistoryBot; diff --git a/promptGen.js b/promptGen.js index fa4553c..da6d15a 100644 --- a/promptGen.js +++ b/promptGen.js @@ -33,7 +33,7 @@ const INSTRUCTIONS = `Ты генератор промптов для созда - Мемы/медиа - [как персонаж это воспринимает] - Споры - [как персонаж видит конфликты] - НЕ используй теги пользователей, НЕ используй форматирование -- Длина: 2-4 абзаца максимум +- Длина: 3-6 абзаца максимум ОЧЕНЬ ВАЖНО: - Игнорируй словесные игры @@ -47,7 +47,7 @@ const INSTRUCTIONS = `Ты генератор промптов для созда ПРАВИЛА ГЕНЕРАЦИИ: 1. Для ИЗВЕСТНЫХ ЛИЧНОСТЕЙ: -- Используй их реальные черты характера, манеру речи, мировоззрение +- Используй их реальные черты характера, манеру речи, мировоззрение, фразочки - Адаптируй их под современные реалии чата - Сохраняй узнаваемость персонажа @@ -70,4 +70,4 @@ const INSTRUCTIONS = `Ты генератор промптов для созда ВАЖНО: Не используй в промпте форматирование и теги пользователей!` -module.exports = INSTRUCTIONS \ No newline at end of file +module.exports = INSTRUCTIONS