magic-wand_4/CONFIG.MD

51 lines
4.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

### Все настройки бота делаются в файле magic.ini
Секция **bot_config**
+ debug - отладка или продакшен. при отладке пишется расширенный лог и все сообщения присылаемые и отправляемые ботом.
+ auth_from_db - настройка для продвинутых пользователей, см. секцию **bot_db_account**.
+ io_write - записывать или не записывать все сообщения в базу SQLite.
+ logfile_name - имя файла лога.
Секция **bot_admins**
+ admins_ids - перечисление **user_id** администраторов бота. Эти telegram аккаунты смогут смотреть статистику работы
бота и делать массовые рассылки пользователям.
+ Разделитель, знак точка с запятой. При единственном админе можно не ставить.
Команды, доступные для администраторов:
+ `-mw` - присылает статистику работы бота: аптайм, количество пользователей, обработанных сообщений и ошибок.
+ `-send` <сообщение> - посылает сообщение всем пользователям бота, используется для рассылки рекламы, сервисных сообщений и.т.д.
Сообщение отделено пробелом от слова send и дойдет до пользователей вместе с форматированием (жирный/курсив и другие) и ссылками.
Секция **bot_telegram_account**
+ Для получения api_id и api_hash вам надо залогиниться на сайте [my.telegram.org], перейти в раздел **API development
tools** и зарегистрировать свое приложение. Если сервер выдает пустую ошибку (error) заполните поле "описание проекта".
+ session_name - имя файла для хранения сессии бота, может быть любым.
+ bot_token - токен вашего бота, который дает телеграм аккаунт **@BotFather**.
Секция **bot_db_account**
Бот может использовать базу данных PostgreSQL для хранения ключей аутентификации. Для использования такого варианта вам
надо:
+ отредактировать в файле **tg_utils.py** класс **PgServer**, вписав в __init__ имя вашей БД, пользователя и пароль.
+ создать в своей базе таблицу **parameters** из двух текстовых полей **name** и **value**.
+ выбрать имя для своего аккаунта, например Vasya, записать в таблицу два параметра с именами Vasya_api_id и
Vasya_api_hash.
+ записать в ini файл account = Vasya
+ выбрать имя для своего бота, например Bot_Vasi, записать в таблицу его токен с именем Bot_Vasi_key.
+ записать в ini файл bot_account = Bot_Vasi
Все, ваши данные надежно спрятаны от посторонних глаз.
Так же вы найдете несколько полезных классов и функций для **PostgreSQL** и **telegram** в файле **tg_utils.py**.
Поскольку документацию никто и никогда не читает, самая последняя настройка описана здесь:
параметр **bot_stats**, по умолчанию включен, и разрешает отправлять мне анонимную статистику работы.
Через час после запуска и потом каждые сутки отсылается версия приложения, аптайм и количество событий класса ERROR. Мне
интересно, сколько ботов на этом ядре будет сделано. Никакие личные данные не собираются, можете проверить, посмотрев в
файле **magic.py** функцию **stat_upload()**. Можете легко это отключить, назначив параметру значение **False**.
[my.telegram.org]:https://my.telegram.org/apps