feat: 添加飞书集成和审计API密钥认证 - 在数据库配置中添加飞书模型导入 - 添加审计API密钥配置项和认证中间件 - 实现飞书事件重复处理防止机制 - 为审批路由添加API密钥认证 - 优化AI适配器错误处理并添加JSON解析异常捕获 - 更新测试用例以包含新的认证和事件处理逻辑 ```
49 lines
1.2 KiB
Python
49 lines
1.2 KiB
Python
from enum import StrEnum
|
|
|
|
|
|
class FeishuReceiveIdType(StrEnum):
|
|
CHAT_ID = "chat_id"
|
|
|
|
|
|
class FeishuMessageType(StrEnum):
|
|
TEXT = "text"
|
|
INTERACTIVE = "interactive"
|
|
|
|
|
|
class FeishuPayloadKey(StrEnum):
|
|
HEADER = "header"
|
|
EVENT = "event"
|
|
EVENT_ID = "event_id"
|
|
EVENT_TYPE = "event_type"
|
|
MESSAGE = "message"
|
|
MESSAGE_ID = "message_id"
|
|
RECEIVE_ID = "receive_id"
|
|
RECEIVE_ID_TYPE = "receive_id_type"
|
|
MESSAGE_TYPE = "msg_type"
|
|
CONTENT = "content"
|
|
TEXT = "text"
|
|
CODE = "code"
|
|
TENANT_ACCESS_TOKEN = "tenant_access_token"
|
|
EXPIRE = "expire"
|
|
APP_ID = "app_id"
|
|
APP_SECRET = "app_secret"
|
|
FEISHU_ERROR = "feishu_error"
|
|
CARD = "card"
|
|
|
|
|
|
class FeishuCommandKey(StrEnum):
|
|
TEXT = "text"
|
|
CHAT_ID = "chat_id"
|
|
ACTOR = "actor"
|
|
|
|
|
|
FEISHU_TENANT_TOKEN_PATH = "/auth/v3/tenant_access_token/internal"
|
|
FEISHU_MESSAGE_PATH = "/im/v1/messages"
|
|
FEISHU_AUTH_MISSING = "Feishu app credentials are not configured"
|
|
FEISHU_RECEIVE_ID_MISSING = "receive_id or FEISHU_DEFAULT_CHAT_ID is required"
|
|
FEISHU_SUCCESS_CODE = 0
|
|
FEISHU_DEFAULT_TOKEN_EXPIRE_SECONDS = 7200
|
|
FEISHU_TOKEN_EXPIRE_SAFETY_SECONDS = 300
|
|
FEISHU_WEBHOOK_EVENT_ACTION = "webhook_event"
|
|
FEISHU_LONG_CONNECTION_EVENT_ACTION = "long_connection_event"
|