Kgshop commited on
Commit
aafc69c
·
verified ·
1 Parent(s): f1f6785

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -6
app.py CHANGED
@@ -1,4 +1,3 @@
1
-
2
  from flask import Flask, render_template_string, request, redirect, url_for, send_file, flash, jsonify
3
  import json
4
  import os
@@ -273,11 +272,15 @@ def save_data(data):
273
  def start_bot_polling():
274
  if bot and dp:
275
  logging.info("Starting Aiogram bot polling...")
276
- try:
277
- # handle_signals=False критически важен, так как мы запускаем бот в отдельном потоке
278
- asyncio.run(dp.start_polling(bot, handle_signals=False))
279
- except Exception as e:
280
- logging.error(f"Failed to start bot polling: {e}")
 
 
 
 
281
 
282
  async def broadcast_message(user_ids, text):
283
  # Создаем новый экземпляр бота для рассылки, чтобы избежать конфликта Event Loop
 
 
1
  from flask import Flask, render_template_string, request, redirect, url_for, send_file, flash, jsonify
2
  import json
3
  import os
 
272
  def start_bot_polling():
273
  if bot and dp:
274
  logging.info("Starting Aiogram bot polling...")
275
+ # Используем бесконечный цикл для перезапуска при ошибках сети
276
+ while True:
277
+ try:
278
+ # handle_signals=False критически важен при запуске в отдельном потоке
279
+ # asyncio.run создает и закрывает цикл событий автоматически
280
+ asyncio.run(dp.start_polling(bot, handle_signals=False))
281
+ except Exception as e:
282
+ logging.error(f"Bot polling crashed: {e}. Restarting in 10 seconds...")
283
+ time.sleep(10)
284
 
285
  async def broadcast_message(user_ids, text):
286
  # Создаем новый экземпляр бота для рассылки, чтобы избежать конфликта Event Loop