SDK更新日志
v0.4.0
发布时间:2026-06-30
重大更新
- 多适配器架构重构,API 升级到 0.4.0 版本。新增交互式消息 Action Session 框架、跨平台社交账号绑定、合并转发消息等核心功能。
🏗️ 多适配器架构
- Framework - 核心框架:
IAdapter接口新增InstanceId、DisplayName、StartupConnect属性,支持同类型适配器多实例部署。 - 新增
AdapterFieldDeclaration接口,适配器可声明配置字段,前端自动生成配置表单。 framework命名空间新增GetAdapterById方法,支持按实例 ID 精确查询适配器。EasyEvent新增AdapterInstanceId属性,事件中可区分同类型多实例的来源。
🔄 跨平台社交账号绑定
- 新增 Bridge 数据包类型:
ConfirmBindPacket、CrossBindNotifyPacket、QueryBindStatusPacket、ConfirmBindResultPacket、QueryBindStatusResultPacket。 - 新增
BindStatusAccount、CrossBindRequest接口。
🎯 交互式消息 Action Session 框架
- 全新
ActionOption接口:定义可点击操作按钮。 - 新增
ActionHandleType枚举(Continue / Complete / Aborted / Retry / TimedOut / Cancelled / Superseded)。 - 新增
ActionHandleResult类:控制会话生命周期。 - 新增
ActionCallbackContext类:回调上下文,提供UpdateActions、UpdateAction、UpdateClicked、UpdateMessage、Done等辅助方法。 - 新增
ActionExceptionContext类:异常处理上下文。 - 新增
ActionRecord接口:记录用户每次点击操作。 IAdapterContext.WaitForAction():新增交互式消息方法,支持发送带按钮的消息并阻塞等待用户操作。
📡 适配器上下文 API 扩展
SendDirectMessageAsync:新增可选的groupId参数,支持在私聊中关联群组上下文。SendForwardMessage:新增合并转发消息方法。EditMessage:新增编辑已发送消息方法(平台不支持时降级为删除重发)。EditMessageActions:新增编辑消息按钮方法。SetMessageInteraction:新增token参数。
📝 消息片段扩展
- 新增
NodeSegment类:合并转发节点片段,包含Id、Name、UserId、Chain属性。 MessageChain新增Node()方法:流式构建合并转发节点。
📊 数据模型更新
Group接口重构:主键从单一Id改为GroupId+Platform+FromAdapterInstance三字段复合键,新增Path只读属性。RobotProfile扩展:新增Received、Sent、Started属性。MemberInfo/UserProfile类型完善:可空字段标注| null。
🗄️ 数据库 API 更新
db.GetGroups():新增重载GetGroups(platform, groupId)按平台和群ID查询。db.GetGroup()、CreateGroup()、UpdateGroup()、DeleteGroup():新增adapterInstanceId参数。
🎉 事件系统更新
- 新增
bot_ready_event— 适配器就绪。 - 新增
bot_offline_event— 适配器掉线。 - 新增
group_message_interaction_event— 群消息表情交互事件。 send_packet_brfore_event拼写修正为send_packet_before_event。IMessageContext.Reply()新增文本重载Reply(text: string),返回值改为Promise<string>。
🔧 其他改进
- 类型系统强化:所有 C# 集合类型映射统一为
IList<T>。 - 注释完善:为所有新增 API 添加完整的中文 JSDoc 注释。
easybot.d.ts新增bridge-events.d.ts引用。
⚠️ 破坏性变更
Group接口:Id属性已移除,改用GroupId+Platform+FromAdapterInstance组合标识。db.GetGroup()/CreateGroup()/UpdateGroup()/DeleteGroup():必须传入adapterInstanceId参数。SendDirectMessageAsync():签名变更(新增可选的groupId参数)。IMessageContext.Reply():返回值从Promise<void>改为Promise<string>。- 事件名拼写修正:
send_packet_brfore_event→send_packet_before_event。
📦 依赖
- EasyBot Framework ≥ v4.0.0
v0.3.2
发布时间:2026-06-05
重大更新
- API 升级到 0.3.2 版本,新增 4 个核心模块,扩展插件能力边界。
新增模块
- WebKit - 自定义页面与菜单: 新增
webkit命名空间,支持在 EasyBot WebUI 中注册自定义页面和菜单项。插件可通过PluginMenuRegister注册菜单分组和页面,实现完整的前后端交互。- Archive - 文件读取: 新增
archive命名空间,支持多文件插件读取自身包内的文本和二进制文件,包括同步/异步读取、目录遍历等功能。- Wblist - 黑白名单: 新增
blacklist和whitelist命名空间,提供玩家黑名单(封禁/解封)和白名单(准入/移除)管理功能。- Network - HTTP 客户端: 新增
network命名空间,取代旧版httpClient。 内置支持 GET/POST/PUT/DELETE/HEAD 方法,响应自动 JSON 反序列化。新增事件
- menu_ready: WebKit 菜单系统就绪事件,插件在此事件中注册自定义菜单。
- config_changed / config_enabled / config_disabled: 配置变更生命周期事件,支持拦截配置变更。
更新与优化
- Config:
- 新增类型化配置读取方法:
getString、getNumber、getInt、getBoolean、getArray。- Forms:
- 新增
SelectComponent(下拉选择组件),支持addOption添加选项。- 旧版
httpClient命名空间仍可使用,但建议迁移至network。
v0.3.1
发布时间:2026-01-15
更新与优化
- Forms:
- 新增
SelectComponent(下拉选择组件),支持addOption添加选项。- 优化了部分 API 的 TypeScript 类型声明。
- 修复了若干已知问题。
v0.2.0
发布时间:2025-12-29
重大更新
- API 全面升级到 0.2.0 版本,包含大量重构和新特性。
新增模块
- RPC - 远程过程调用: 新增
rpc命名空间,支持插件间通信。- Config - 配置系统: 新增
config命名空间,支持读写 JSON/YAML 配置文件。- Forms - 动态表单: 新增
forms命名空间,支持创建交互式表单。- Puppeteer - 浏览器自动化: 新增
puppeteer命名空间,支持网页截图和自动化操作。- 消息发送生命周期事件: 支持拦截消息发送,自定义处理逻辑。
Bridge强化
- 新增 RpcInvoke 方法,支持远程调用服务器端方法。
- 新增 GetExtensions 方法,支持获取服务器安装的扩展列表。
更新与优化
- Thread:
- 新增
Mutex互斥锁支持 (createMutex,WaitOne,ReleaseMutex),用于多线程同步。其他
- 修正了部分文档的拼写错误 (如
events/intro.md)。- 更新了
manifest.json规范,新增icon字段说明。
preview.1
发布时间:2025-12-20
新增
preview.0
发布时间:2025-10-02
