"""QQ Bot Gateway 常量定义""" class Opcode: DISPATCH = 0 HEARTBEAT = 1 IDENTIFY = 2 RESUME = 6 RECONNECT = 7 INVALID_SESSION = 9 HELLO = 10 HEARTBEAT_ACK = 11 class ECode: UNKNOWN_ERROR = 4000 UNKNOWN_OPCODE = 4001 DECODE_ERROR = 4002 NOT_AUTHENTICATED = 4003 AUTHENTICATION_FAILED = 4004 RATE_LIMITED = 4008 SESSION_TIMEOUT = 4009 INVALID_SHARD = 4010 INVALID_SHARD_COUNT = 4011 INVALID_INTENT = 4012 INVALID_API_VERSION = 4013 INVALID_SEQ = 4014 BOT_REMOVED = 4100 ACCOUNT_BANNED = 4101 FATAL_CLOSE = 4914 FATAL_ERROR = 4915 class Intent: GUILDS = 1 << 0 GUILD_MEMBERS = 1 << 1 GUILD_MESSAGES = 1 << 9 GUILD_MESSAGE_REACTIONS = 1 << 10 GUILD_DIRECT_MESSAGES = 1 << 12 GROUP_AND_C2C = 1 << 25 INTERACTION = 1 << 26 AUDIO_ACTION = 1 << 29 AT_MESSAGES = 1 << 30 DEFAULT = GUILD_MESSAGES | AT_MESSAGES | GUILD_DIRECT_MESSAGES ALL = DEFAULT | GROUP_AND_C2C | INTERACTION class EventType: READY = "READY" RESUMED = "RESUMED" AT_MESSAGE_CREATE = "AT_MESSAGE_CREATE" DIRECT_MESSAGE_CREATE = "DIRECT_MESSAGE_CREATE" C2C_MESSAGE_CREATE = "C2C_MESSAGE_CREATE" GROUP_AT_MESSAGE_CREATE = "GROUP_AT_MESSAGE_CREATE" MESSAGE_CREATE = "MESSAGE_CREATE" INTERACTION_CREATE = "INTERACTION_CREATE" MESSAGE_DELETE = "MESSAGE_DELETE" PUBLIC_MESSAGE_DELETE = "PUBLIC_MESSAGE_DELETE" CLOSE_CODE_MAP: dict[int, str] = { ECode.UNKNOWN_ERROR: "unknown_error", ECode.UNKNOWN_OPCODE: "unknown_opcode", ECode.DECODE_ERROR: "decode_error", ECode.NOT_AUTHENTICATED: "not_authenticated", ECode.AUTHENTICATION_FAILED: "authentication_failed", ECode.RATE_LIMITED: "rate_limited", ECode.SESSION_TIMEOUT: "session_timeout", ECode.INVALID_SHARD: "invalid_shard", ECode.INVALID_SHARD_COUNT: "invalid_shard_count", ECode.INVALID_INTENT: "invalid_intent", ECode.INVALID_API_VERSION: "invalid_api_version", ECode.INVALID_SEQ: "invalid_seq", ECode.BOT_REMOVED: "bot_removed", ECode.ACCOUNT_BANNED: "account_banned", 4015: "invalid_shard_id", 4102: "bot_removed_group", } SERVER_CLOSE_CODE_MAP: dict[int, str] = { 4900: "server_internal_error", 4901: "server_overload", 4902: "server_maintenance", 4903: "server_network_error", 4904: "gateway_overload", 4905: "gateway_maintenance", 4906: "gateway_internal_error", 4907: "gateway_network_error", 4908: "gateway_unavailable", 4909: "service_degraded", 4910: "database_error", 4911: "cache_error", 4912: "rate_limit_server", 4913: "server_timeout", } DM_CHAT_PREFIX = "dm_" GROUP_CHAT_PREFIX = "group_" WS_OP_DISPATCH = Opcode.DISPATCH WS_OP_HEARTBEAT = Opcode.HEARTBEAT WS_OP_HEARTBEAT_ACK = Opcode.HEARTBEAT_ACK WS_OP_HELLO = Opcode.HELLO WS_OP_IDENTIFY = Opcode.IDENTIFY WS_OP_INVALID_SESSION = Opcode.INVALID_SESSION WS_OP_RECONNECT = Opcode.RECONNECT