51 lines
4.7 KiB
Markdown
51 lines
4.7 KiB
Markdown
### Все настройки бота делаются в файле 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 |