no-name-here commited on
Commit
113efd6
·
verified ·
1 Parent(s): 99109ae

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +15 -5
app.py CHANGED
@@ -1920,12 +1920,22 @@ async def telegram_webhook_endpoint(request: Request):
1920
  response_data = await handle_telegram_update(update)
1921
 
1922
  if isinstance(response_data, list):
1923
- for item in response_data:
1924
- if item and isinstance(item, dict) and item.get("method") in (
1925
- "sendMessage", "editMessageText", "answerCallbackQuery"
1926
- ):
 
 
 
 
 
 
 
 
 
1927
  return item
1928
- return response_data[0] if response_data else {"status": "ok"}
 
1929
 
1930
  return response_data
1931
 
 
1920
  response_data = await handle_telegram_update(update)
1921
 
1922
  if isinstance(response_data, list):
1923
+ # Flatten and filter valid response dicts
1924
+ items = [i for i in response_data if i and isinstance(i, dict) and i.get("method")]
1925
+
1926
+ # Prefer sendMessage / editMessageText over answerCallbackQuery
1927
+ # so the user always sees a real message response.
1928
+ for priority in ("sendMessage", "editMessageText"):
1929
+ for item in items:
1930
+ if item.get("method") == priority:
1931
+ return item
1932
+
1933
+ # Fall back to answerCallbackQuery (e.g. show_alert cases)
1934
+ for item in items:
1935
+ if item.get("method") == "answerCallbackQuery":
1936
  return item
1937
+
1938
+ return {"status": "ok"}
1939
 
1940
  return response_data
1941