Electron IMLib API 参考

Electron IMLib 的类与枚举 API 参考:覆盖类继承关系、方法概要、参数/返回/错误码的详细说明,以及数据结构字段与全部客户端枚举。所有签名逐字取自 sdk-bindings.json 的 methodMap,语义取自 IDL,文档与接口零漂移。

13
类 / 数据结构 / 监听器
14
枚举
103
IDL 语义方法
16
事件类型

本平台共 103 个 IDL 语义操作,其中 103 个已在本平台绑定中导出;类 / 数据结构 = 13 个,枚举 = 14 个。

文档导航​

页面内容
概览程序包、类、枚举、监听器摘要与本平台版本信息
程序包包名、安装路径与按类型分组的完整清单
类类 / 数据结构 / 监听器列表
枚举全部客户端枚举与取值数
已过时 API已过时接口清单与过时策略
索引类、方法、枚举、事件与枚举值的 A–Z 索引
所有类全部类的平铺列表

类摘要​

类 / 接口类型说明
Chatroom数据结构聊天室资料:在线态会话,不落离线历史,默认只广播在线成员
ChatroomMember数据结构聊天室成员:userId、昵称、在线状态与加入时间
Conversation数据结构会话聚合视图:未读数、@ 未读、置顶、草稿、提醒级别与最后一条消息
Events监听器事件监听:addEventListener(event, handler) 返回取消函数 / remove…
Friend数据结构好友条目:userId、昵称、头像、备注、在线状态与黑名单标记
FriendRequest数据结构好友请求:请求 ID、发起/接收双方、附言与处理状态(pending / accepted / rejected)
Group数据结构群组资料:群名、群主、成员、管理员、禁言映射、公告与成员上限
GroupMember数据结构群成员:userId、昵称、角色(群主/管理员/成员)、禁言截止时间与加入时间
IMClient类IMLib 入口类:连接、消息、会话、群组、聊天室等 103 个方法
Message数据结构消息实体
MessageContent数据结构消息内容联合体:按 type 取不同字段,序列化后不超过 5KB
ReadReceipt数据结构已读回执:会话、读者、已读消息列表、各消息已读人数与会话总人数
UserProfile数据结构用户资料:userId、昵称与头像 URL

枚举摘要​

枚举取值数说明
ChatroomEventKind5聊天室事件类型
ConnectionStatus4连接状态
ContentType9消息内容类型
ConversationType5会话类型
Direction2消息方向
ErrorCode43错误码
EventType16事件类型
FriendEventKind3好友事件类型
FriendRequestStatus3好友请求状态
GroupRole3群成员角色
GroupType2群组类型
MentionType2@ 提及类型
NotificationLevel3会话提醒级别
SystemType8系统通知子类型

服务端枚举 CallbackEventType、ServiceKey 不属于客户端 SDK,见服务端 API 文档。

监听器摘要​

事件载荷说明
CONNECTING{attempt:int}连接建立中:每次建连/重连尝试时触发,载荷含重试次数 attempt。
CONNECTED{userId:string, sessionId?:string}连接建立成功:收到服务端 hello 之后触发,可开始发送请求。
DISCONNECT{code:int, reason:string}连接断开:主动断开、鉴权失败或放弃重连时触发。
SUSPEND{code:int, reason:string}连接挂起:异常断开后 SDK 进入指数退避重连,期间业务请求会失败。
MESSAGES{messages:Message[]}收到消息:在线消息与离线补发消息都通过该事件下发,载荷为 Message 列表。
CONVERSATION{conversation:Conversation}会话变更:未读数、置顶、提醒级别、草稿或最后一条消息变化时触发。
MESSAGE_RECALLED{message:Message}消息被撤回:收到服务端撤回帧,载荷为被撤回的 Message。
READ_RECEIPTReadReceipt已读回执:收到对方已读上报,载荷为 ReadReceipt。
TYPING{conversationType:ConversationType,targetId:string,userId:string,typing:bool,timestamp:int64}输入状态:收到“正在输入”状态帧。
FRIEND_EVENT{kind:FriendEventKind,request?:FriendRequest,fromUserId?:string,toUserId?:string,timestamp:int64}好友事件:好友请求、接受、拒绝等事件,载荷含 FriendRequest。
CHATROOM_EVENT{chatroomId:string,kind:ChatroomEventKind,userId?:string,onlineCount?:uint32,chatroom?:Chatroom,timestamp:int64}聊天室事件:成员加入/退出/被移出、成员变更、聊天室销毁。
KICKED{code:int,reason:string}被踢下线:多端互踢或账号封禁,SDK 不再自动重连。
MESSAGE_REACTION_CHANGED{messageId:string,conversationType:ConversationType,targetId:string,reactionId:string,operation:added|removed|cleared,userId:string,reactionTime:int64,totalCount:uint32,users:string[]?}—
MESSAGE_EXPANSION_CHANGED{messageId:string,conversationType:ConversationType,targetId:string,updated:Record<string,string>?,removed:string[]?,timestamp:int64}—
STREAM_MESSAGE_CHANGED{streamId:string,messageId:string,conversationType:ConversationType,targetId:string,senderId:string,delta:string,seq:uint32,text:string,status:streaming|ended,complete:bool,timestamp:int64}—
PRESENCE_CHANGED{userId:string,online:bool,lastSeenAt:int64,timestamp:int64,reason:connect|disconnect|kick|deactivate}—

签名来源与零漂移​

本页所有签名都来自冻结 IDL 与平台绑定,生成器不做任何手写或改写:

IDL 文件提供内容本页用法
sdk-imlib.json62 个语义操作、事件载荷、返回信封本页 103 个方法签名与方法说明
sdk-bindings.json各平台公开符号与 methodMapElectron 的类名、常量、方法签名(逐字引用)
domain.json14 个枚举、26 个 schema数据结构字段与枚举取值
errors.json33 个错误码详细成员说明中的错误码与 ErrorCode 枚举

平台绑定来源:sdk-bindings.json → bindings.electron.imlib;绑定语言 JavaScript (ESM) + TypeScript declarations; Electron main process owns IMLib + SQLite, preload exposes a whitelisted bridge, renderer is a thin proxy,异步模型 Promise<RcResult<T>>;同步方法仅 getConnectionStatus/getCurrentUserId 等本地无 IO 读取。

版本与冻结信息​

项值
IDL 版本1.0.0
冻结状态frozen
冻结时间2026-10-30T01:15:00.000Z
冻结修订35
manifest SHA-256fe6759a23897…
生成时间2026-10-28T17:23:27.374Z

下一步​