Files

79 lines
3.5 KiB
Python

# /opt/trueconf_bot/utils/menu.py
import config.config as config
MENU_MAP = {}
MENU_TEXT = ""
WELCOME_TEXT = "" # 💡 Добавили шаблон для развернутого приветствия
def build_dynamic_menu():
global MENU_MAP, MENU_TEXT, WELCOME_TEXT
MENU_MAP.clear()
# Старый формат keycap-цифр (как в VK)
emoji_digits = {
1: "1⃣",
2: "2⃣",
3: "3⃣",
4: "4⃣",
5: "5⃣",
6: "6⃣",
7: "7⃣",
8: "8⃣",
9: "9⃣",
10: "🔟",
}
dynamic_items = []
counter = 1
# Безопасно проверяем флаги из конфига и наполняем массив пунктов
if getattr(config, 'ENABLE_LK', True):
num_char = emoji_digits.get(counter, str(counter))
MENU_MAP[str(counter)] = "LK"
MENU_MAP[num_char] = "LK"
dynamic_items.append(f"{num_char} — 👤 Личный кабинет")
counter += 1
if getattr(config, 'ENABLE_TRANSCRIPTION', True):
num_char = emoji_digits.get(counter, str(counter))
MENU_MAP[str(counter)] = "TRANSCRIPTION"
MENU_MAP[num_char] = "TRANSCRIPTION"
dynamic_items.append(f"{num_char} — 🎙 Расшифровка совещаний")
counter += 1
if getattr(config, 'ENABLE_SERVICE_DESK', True):
num_char = emoji_digits.get(counter, str(counter))
MENU_MAP[str(counter)] = "SD"
MENU_MAP[num_char] = "SD"
dynamic_items.append(f"{num_char} — 🎫 Создать заявку в Service Desk")
counter += 1
if getattr(config, 'ENABLE_PHOTO_BOT', True):
num_char = emoji_digits.get(counter, str(counter))
MENU_MAP[str(counter)] = "PHOTO"
MENU_MAP[num_char] = "PHOTO"
dynamic_items.append(f"{num_char} — Изменить фото профиля")
counter += 1
if getattr(config, 'ENABLE_SEARCH_BOT', True):
num_char = emoji_digits.get(counter, str(counter))
MENU_MAP[str(counter)] = "SEARCH"
MENU_MAP[num_char] = "SEARCH"
dynamic_items.append(f"{num_char} — Поиск по регламентам")
counter += 1
if counter == 1:
dynamic_items.append("<i>В данный момент бот находится на техническом обслуживании.</i>")
# 1️⃣ Сценарий Б: Короткий шаблон для возврата из подмодулей
MENU_TEXT = "🍀 <b>Главное меню:</b>\n\n" + "\n".join(dynamic_items)
# 2️⃣ Сценарий А: Длинный приветственный шаблон для старта/таймаута (с исправленной грамматикой)
WELCOME_TEXT = (
"🍀 <b>Здравствуйте! Я КЛЕВЕР — ваш персональный цифровой ассистент.</b>\n\n"
"С моей помощью вы можете быстро получить доступ к нижеперечисленным корпоративным сервисам.\n\n"
"👇 Пожалуйста, отправьте мне в чат цифру, соответствующую нужному пункту меню:\n\n"
) + "\n".join(dynamic_items)
# Gенерируем меню один раз при импорте файла
build_dynamic_menu()