Задать вопрос
NeMoMGE
@NeMoMGE
НЕ Джун в python

Почему бот в телеграмме не видит сообщения?

Бот должен считал сколько сообщений было отправлено и при команде /stat выдавал эти значения
Но при вызове /stat значения по 0
import telebot as tg
from telebot import types


token = ''


msg_stat = 0
sticker_stat = 0
media_stat = 0
poll_stat = 0


bot = tg.TeleBot(token)

@bot.message_handler(commands = ['start'])
def start(massage):
    chat = massage.chat.id
    bot.send_message(chat, f'Привет, {massage.from_user.first_name}\n'
                           f'Я бот созданый @HumanIsDaed\n'
                           f'Я был создан для модерации Secret чата\n'
                           f'Только тссс...')

@bot.message_handler(commands = ['stat'])
def stat(massage):
    chat = massage.chat.id
    bot.send_message(chat, f'{massage.from_user.first_name} ты отправил\n'
                           f'{msg_stat} сообщений\n'
                           f'{sticker_stat} сикеров\n'
                           f'{media_stat} медиа\n'
                           f'{poll_stat} голосований\n')

@bot.message_handler(content_types = ['text', 'voice', 'sticker', 'photo', 'audio', 'video', 'poll'])
def count(massage):
    global msg_stat
    global sticker_stat
    global media_stat
    global poll_stat

    if massage.content_type == ['text'] or massage.content_type == ['voice']:
        msg_stat += 1

    elif massage.content_type == ['sticker']:
        sticker_stat += 1

    elif massage.content_type == ['photo'] or massage.content_type == ['audio'] or massage.content_type == ['video']:
        media_stat += 1

    elif massage.content_type == ['poll']:
        poll_stat += 1


bot.infinity_polling()
  • Вопрос задан
  • 306 просмотров
Подписаться 2 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 3
phaggi
@phaggi
лужу, паяю, ЭВМы починяю
Возможно, дело в том, что massage.content_type скорее всего возвращает строку, а вы сравниваете massage.content_type со списком.
Ответ написан
Комментировать
@itsoftoff
Для начала, создай БД и туда вноси значения. А там просто при каждом новом сообщении обновляй поле в БД.
Ответ написан
@correligionist
была такая проблема, решил просто сменой токена от бота.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы