diff --git a/web/server.py b/web/server.py index 1ae85a8..4679742 100644 --- a/web/server.py +++ b/web/server.py @@ -1,7 +1,6 @@ import json import logging import os -import queue import threading from flask import Flask, Response, jsonify, render_template, request, stream_with_context, abort @@ -20,24 +19,6 @@ from intradesk.handler import handle_webhook log = logging.getLogger(__name__) app = Flask(__name__, template_folder=os.path.join(os.path.dirname(__file__), "templates")) -# ── Очередь вебхуков (последовательная обработка) ───────────────────────────── - -_webhook_queue: queue.Queue = queue.Queue() - - -def _webhook_worker(): - while True: - data = _webhook_queue.get() - try: - handle_webhook(data) - except Exception: - log.exception("Unhandled error in webhook worker") - finally: - _webhook_queue.task_done() - - -threading.Thread(target=_webhook_worker, daemon=True, name="webhook-worker").start() - # ── Авторизация ──────────────────────────────────────────────────────────────── @@ -116,7 +97,7 @@ def webhook(): if not data: return jsonify({"error": "Invalid JSON"}), 400 - _webhook_queue.put(data) + threading.Thread(target=handle_webhook, args=(data,), daemon=True).start() return jsonify({"ok": True}), 200