не увеличивать incoming messages при возможных ошибках на бекенде

This commit is contained in:
mihalin 2022-02-19 05:38:03 +03:00
parent 994d96885f
commit 6004f9d9af

View File

@ -56,9 +56,6 @@ async def message_handler(message: types.Message, *args, **kwargs):
return SendMessage(chat_id=message.chat.id, return SendMessage(chat_id=message.chat.id,
text="Вы заблокированы в этом боте") text="Вы заблокированы в этом боте")
bot.incoming_messages_count = F("incoming_messages_count") + 1
await bot.save(update_fields=["incoming_messages_count"])
# Пересылаем сообщение в супер-чат # Пересылаем сообщение в супер-чат
if is_super_group: if is_super_group:
thread_first_message = await _redis.get(_thread_uniqie_id(bot.pk, message.chat.id)) thread_first_message = await _redis.get(_thread_uniqie_id(bot.pk, message.chat.id))
@ -81,6 +78,9 @@ async def message_handler(message: types.Message, *args, **kwargs):
await _redis.set(_message_unique_id(bot.pk, new_message.message_id), message.chat.id, await _redis.set(_message_unique_id(bot.pk, new_message.message_id), message.chat.id,
pexpire=ServerSettings.redis_timeout_ms()) pexpire=ServerSettings.redis_timeout_ms())
bot.incoming_messages_count = F("incoming_messages_count") + 1
await bot.save(update_fields=["incoming_messages_count"])
# И отправить пользователю специальный текст, если он указан # И отправить пользователю специальный текст, если он указан
if bot.second_text: if bot.second_text:
return SendMessage(chat_id=message.chat.id, text=bot.second_text) return SendMessage(chat_id=message.chat.id, text=bot.second_text)
@ -121,6 +121,7 @@ async def message_handler(message: types.Message, *args, **kwargs):
bot.outgoing_messages_count = F("outgoing_messages_count") + 1 bot.outgoing_messages_count = F("outgoing_messages_count") + 1
await bot.save(update_fields=["outgoing_messages_count"]) await bot.save(update_fields=["outgoing_messages_count"])
elif super_chat_id > 0: elif super_chat_id > 0:
# в супер-чате кто-то пишет сообщение сам себе, только для личных сообщений # в супер-чате кто-то пишет сообщение сам себе, только для личных сообщений
await message.forward(super_chat_id) await message.forward(super_chat_id)