Spaces:
Running
Running
Update main.py
Browse files
main.py
CHANGED
@@ -1111,7 +1111,8 @@ async def lifespan(app: Starlette):
|
|
1111 |
current_info = await ptb_app.bot.get_webhook_info(); deleted_ok = True
|
1112 |
if current_info and current_info.url:
|
1113 |
logger.info(f"Deleting existing webhook: {current_info.url}...")
|
1114 |
-
try:
|
|
|
1115 |
except Exception as e: logger.warning(f"WH delete error: {e}"); deleted_ok = False; await asyncio.sleep(1)
|
1116 |
|
1117 |
host = os.environ.get("SPACE_HOST"); path="/webhook";
|
@@ -1127,11 +1128,19 @@ async def lifespan(app: Starlette):
|
|
1127 |
if not await ptb_app.bot.set_webhook(**args): raise RuntimeError("set_webhook returned False.")
|
1128 |
await asyncio.sleep(1.5); info = await ptb_app.bot.get_webhook_info()
|
1129 |
if not (info and info.url == wh_url): raise RuntimeError(f"WH verify fail! Expected '{wh_url}', Got: {info}")
|
|
|
|
|
1130 |
logger.info(f"WH set & verified: URL='{info.url}', Secret={'YES' if WEBHOOK_SECRET else 'NO'}")
|
1131 |
-
if info.last_error_message:
|
1132 |
-
|
1133 |
-
|
1134 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
1135 |
elif not deleted_ok: raise RuntimeError("Failed to delete previous webhook.")
|
1136 |
|
1137 |
logger.info("Lifespan: Startup complete."); yield
|
|
|
1111 |
current_info = await ptb_app.bot.get_webhook_info(); deleted_ok = True
|
1112 |
if current_info and current_info.url:
|
1113 |
logger.info(f"Deleting existing webhook: {current_info.url}...")
|
1114 |
+
try:
|
1115 |
+
deleted_ok = await ptb_app.bot.delete_webhook(drop_pending_updates=True); logger.info("WH deleted." if deleted_ok else "WH delete failed.")
|
1116 |
except Exception as e: logger.warning(f"WH delete error: {e}"); deleted_ok = False; await asyncio.sleep(1)
|
1117 |
|
1118 |
host = os.environ.get("SPACE_HOST"); path="/webhook";
|
|
|
1128 |
if not await ptb_app.bot.set_webhook(**args): raise RuntimeError("set_webhook returned False.")
|
1129 |
await asyncio.sleep(1.5); info = await ptb_app.bot.get_webhook_info()
|
1130 |
if not (info and info.url == wh_url): raise RuntimeError(f"WH verify fail! Expected '{wh_url}', Got: {info}")
|
1131 |
+
|
1132 |
+
# --- Both Previous Fixes Applied ---
|
1133 |
logger.info(f"WH set & verified: URL='{info.url}', Secret={'YES' if WEBHOOK_SECRET else 'NO'}")
|
1134 |
+
if info.last_error_message:
|
1135 |
+
logger.warning(f"WH status error: {info.last_error_message}")
|
1136 |
+
|
1137 |
+
# --- This Line Corrected Now ---
|
1138 |
+
await ptb_app.start()
|
1139 |
+
logger.info("PTB started (webhook).")
|
1140 |
+
|
1141 |
+
except Exception as e:
|
1142 |
+
logger.error(f"FATAL: WH setup error: {e}", exc_info=True)
|
1143 |
+
raise RuntimeError(f"WH setup fail: {e}") from e
|
1144 |
elif not deleted_ok: raise RuntimeError("Failed to delete previous webhook.")
|
1145 |
|
1146 |
logger.info("Lifespan: Startup complete."); yield
|