Как создать admin panel в телеграм боте, на языке python с использованием telebot?
Есть задумка, нужна админ панель в боте для определённого id с следующим функционалом: view stats - бот показывал статистику пользователей(сколько всего, сколько подключилось за 24 часа/за месяц, какой прирост за 24часа/месяц),
Send message to everyone/определённому пользователю(нужно для рассылки чего либо всем пользователям либо определённому пользователю) и BanID(что бы бот блокировал пользователя по ID)
Amalat, ну смотрите , насчёт того как считать пользователей за день и месяц - заводим список для месяца и для дня, ну и общий, когда новый пользователь логинится в Боте (команда /start) мы должны проверить есть ли он в общем списке(писал ли он нам вообще когда-то), если есть-просто общаемся если нету- добавляем в дневной, месячный и основной, в конце каждого дня мы просто сбрасываем дневной список и анологично в конце месяца сбрасываем месячный, но никогда не сбрасываем общий! когда надо узнать прирост за сегодня - пишем обработчик команды условно /prirost и когда команда обрабатывается - делаем 2 кнопки - за месяц и за день. и при нажатии выводится len() нашего списка, и да, забыл сказать что в список добавляем айди чата, он у каждого свой йи его нельзя сменить в отличии от Ника message. chat. id
что касается рассылки для всех - пишем обработчик который просит нас ввести сообщение для рассылки и в цикле for просто отправляем всем это сообщение , а что бы получить айди у нас уже есть список пользователей за все время)
for i in allUsers :
bot. send_message(str(i), <ваше заранее обработано сообщение>
Amalat, ну я тоже новичек, но я записывал все в текстовый файл, почитайте про работу с файлами, я сделал для чтения и записи отдельный класс
каждая строка файла типа id:value
и когда читаю я её разделяю на айди пользователя и его значение и записываю все в буфкрный словарь
Заранее хочу сказать что может я не совсем понял твой вопрос но все равно попробую ответить. Ну бот должен при старте проверять chat_id если это твой chat_id то тогда бот добавляет дополнительные команды.
А для создания статистики наверно лучше использовать бд, каждый день при нажатии кнопки старт у бота в переменную peopleToday добавляется 1. Каждый день эта переменная сохраняется в бд. Для рассылки так же нужна бд с id пользователей и при нажатии команды Send message to everyone создается цикл который проходит по всем пользователям в бд и отправляет им сообщение которое ты вписал. Для команды BanID так как при старте мы проверяем id всех пользователей если этот id забанен то ему приходит сообщение о том что он забанен.