from __future__ import annotations import html WELCOME_RICH_HTML = """
Я помогаю писать посты для соцсетей.
Сначала познакомь меня с твоим аккаунтом. Пришли примеры публикаций и расскажи, о чём ты пишешь и для кого. Это поможет мне лучше понимать темы, аудиторию и подачу.
Потом можешь в любое время дополнять «Обучение» новыми постами и информацией об аккаунте. Я буду учитывать всё это в дальнейшей работе.
Когда понадобится новый пост, открой «Генерацию» и отправь запрос. Я предложу несколько вариантов черновика, которые можно самостоятельно опубликовать в нужной социальной сети.
Для начала выбери «Обучение» в меню ниже.
""" HELP_MENU_TITLE = "Помощь по боту" HELP_MENU_INTRO = "Выбери раздел — откроется только он. Из любого раздела можно перейти в любой." HELP_SECTIONS: dict[str, tuple[str, str]] = { "posts": ( "✍️ Написать пост", """В сообщениях с вариантами будет только текст поста: без нумерации и вступлений, с абзацами, переносами строк и уместными эмодзи.
""", ), "tone": ( "🎨 Tone of Voice", """Пришли скриншоты постов, текстовые примеры или просто расскажи об аккаунте. Можно отправить голосовое или аудиофайл. Я буду постепенно накапливать и обновлять профиль аккаунта и Tone of Voice; новые сведения дополняют прежние.
Чтобы начать обучение заново и удалить накопленное, нажми «Сбросить данные» и подтверди действие.
""", ), "edit": ( "✏️ Правка поста", """Ответь реплаем на сообщение с вариантом и укажи, что изменить. Например: «Сделай короче и добавь призыв». Я учту оригинальный текст и верну три новых варианта отдельными сообщениями.
""", ), "idea": ( "💡 Идея для поста", """Напиши «предложи идею для поста», «о чём написать?» или «накидай тему» — верну одну идею. Команда /idea работает так же.
Идеи сохраняются, чтобы не повторяться: каждая новая идея отличается от предыдущих.
""", ), "subscription": ( "💳 Подписка", """У тебя есть пробный период — 3 дня бесплатно. Дальше — подписка на 30 дней за 100 звёзд.
/balance — узнать статус: сколько осталось дней триала или подписки./subscribe — оплатить подписку на 30 дней.При открытии раздела «Подписка» бот сразу показывает активный период и сколько дней осталось. Нажми «Продлить подписку», чтобы открыть счёт в звёздах. Когда период закончится, генерация постов и идей станет недоступна.
""", ), "commands": ( "⌨️ Команды", """Основные команды доступны в любом разделе: /start — главное меню; /training — настройка стиля; /generate — создание постов; /subscription — подписка; /help — помощь.
Действия открываются в соответствующем разделе: /style и /clear — настройка стиля; /post и /idea — создание постов; /balance и /subscribe — подписка. /clear и кнопка «Сбросить данные» сначала запрашивают подтверждение; подписка и пробный период не меняются.
Для создания поста можно попросить идею обычными словами: «предложи идею для поста», «о чём написать?», «накидай тему».
""", ), "support": ( "🆘 Поддержка", """В разделе «Помощь» нажми «🆘 Поддержка» или отправь /support. В ответ придёт приветствие оператора — напиши текстом, чем помочь; можно приложить фото, документ или голосовое.
Оператор видит твоё сообщение и отвечает прямо в этом чате. Можно вернуться к обращению позже и дописать.
Кнопка «Главное меню» завершает обращение. Оно не удаляется: при следующем нажатии «Поддержка» оператор увидит всю историю.
""", ), } HELP_SECTION_ORDER: tuple[str, ...] = tuple(HELP_SECTIONS) def help_menu_html(current: str | None = None) -> str: return ( f"{HELP_MENU_INTRO}
" f"Я помогаю писать и редактировать посты для соцсетей. " f"Генерирую посты только по явной просьбе.
" ) def help_section_html(section: str) -> str: title, body = HELP_SECTIONS[section] return f"