feat(tools-pve/asr-pipeline): multi-backend ASR web app with LiteLLM routing
Build image / build (push) Canceled after 0s
Build ASR Pipeline / image (push) Canceled after 0s

This commit is contained in:
Codex
2026-11-01 22:07:57 -08:00
parent d1790a05b0
commit 2367c5eb4e
23 changed files with 2462 additions and 451 deletions
@@ -15,21 +15,28 @@ def send(status: str, filename: str = "", detail: str = "") -> bool:
chat = os.getenv("TELEGRAM_CHAT_ID", "")
if not token or not chat:
return False
body = parse.urlencode({"chat_id": chat,
"text": "\n".join(x for x in (status, filename, detail) if x)}).encode()
req = request.Request(f"https://api.telegram.org/bot{token}/sendMessage",
data=body, method="POST")
body = parse.urlencode({
"chat_id": chat,
"text": "\n".join(x for x in (status, filename, detail) if x),
}).encode()
req = request.Request(
f"https://api.telegram.org/bot{token}/sendMessage",
data=body, method="POST")
elif backend == "hermes":
url = os.getenv("HERMES_WEBHOOK_URL", "")
secret = os.getenv("HERMES_WEBHOOK_SECRET", "")
if not url or not secret:
return False
body = json.dumps({"status": status, "filename": filename, "detail": detail},
ensure_ascii=False).encode()
body = json.dumps(
{"status": status, "filename": filename, "detail": detail},
ensure_ascii=False).encode()
sig = hmac.new(secret.encode(), body, hashlib.sha256).hexdigest()
req = request.Request(url, data=body, method="POST",
headers={"Content-Type": "application/json",
"X-Webhook-Signature": sig})
req = request.Request(
url, data=body, method="POST",
headers={
"Content-Type": "application/json",
"X-Webhook-Signature": sig,
})
else:
return False
with request.urlopen(req, timeout=10) as response: