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"