refactor: 移除企微Webhook机器人代码,修复VLM日志

- 删除 wechat_service.send_webhook_alarm 方法
- 删除 config.py 中 webhook_url 配置
- 简化 notify_dispatch 通知逻辑(仅保留应用消息)
- 修复 vlm_service 使用项目统一 logger
- 添加 VLM 调用 URL 调试日志

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-09 15:35:32 +08:00
parent 0fbc1ca7a0
commit 24c94ccfbe
4 changed files with 8 additions and 72 deletions

View File

@@ -176,51 +176,6 @@ class WeChatService:
logger.error(f"发送文本消息异常: {e}")
return False
async def send_webhook_alarm(
self,
webhook_url: str,
alarm_id: str,
alarm_type: str,
area_name: str,
camera_name: str,
description: str,
event_time: str,
alarm_level: int = 2,
detail_url: str = "",
) -> bool:
"""通过群机器人 Webhook 发送告警通知无需IP白名单"""
type_names = {"leave_post": "人员离岗", "intrusion": "周界入侵"}
level_names = {1: "提醒", 2: "一般", 3: "严重", 4: "紧急"}
type_name = type_names.get(alarm_type, alarm_type)
level_name = level_names.get(alarm_level, "一般")
content = (
f"## 【{level_name}{type_name}告警\n"
f"> 区域:<font color=\"warning\">{area_name}</font>\n"
f"> 摄像头:{camera_name}\n"
f"> 时间:{event_time}\n"
f"> AI描述**{description}**\n"
)
if detail_url:
content += f"> [查看详情]({detail_url})\n"
msg = {"msgtype": "markdown", "markdown": {"content": content}}
try:
async with httpx.AsyncClient(timeout=10) as client:
resp = await client.post(webhook_url, json=msg)
data = resp.json()
if data.get("errcode") != 0:
logger.error(f"Webhook发送失败: {data}")
return False
logger.info(f"Webhook告警已发送: alarm={alarm_id}")
return True
except Exception as e:
logger.error(f"Webhook发送异常: {e}")
return False
# 全局单例
_wechat_service: Optional[WeChatService] = None