新增 Zalo OA 官方账号完整集成能力,包含: 1. 基础通信能力:消息编解码、目标归一化、文本分块 2. 安全与校验:Webhook 签名验证、DM 策略管理、配对流程 3. 辅助工具:重复事件去重、请求限流、异常告警 4. 管理功能:账号多实例管理、配置验证、健康诊断 5. 扩展能力:媒体托管、视觉识别、TTS 语音合成 6. 运维支持:审计日志、状态监控、目录同步
22 lines
504 B
Python
22 lines
504 B
Python
from __future__ import annotations
|
|
|
|
import re
|
|
|
|
TARGET_PREFIXES = ("zalo_oa:", "zoa:", "zl:")
|
|
_LOOKS_LIKE_USER_ID = re.compile(r"^\d+$")
|
|
|
|
|
|
def normalize_messaging_target(target: str) -> str:
|
|
for prefix in TARGET_PREFIXES:
|
|
if target.lower().startswith(prefix):
|
|
return target[len(prefix) :]
|
|
return target
|
|
|
|
|
|
def looks_like_user_id(target: str) -> bool:
|
|
return bool(_LOOKS_LIKE_USER_ID.match(target))
|
|
|
|
|
|
def build_target_id(user_id: str) -> str:
|
|
return f"zalo_oa:{user_id}"
|