Skip to content

v2.1.0

Latest

Choose a tag to compare

@Zaitonn Zaitonn released this 15 Jul 07:01
· 7 commits to main since this release

GitHub release (latest by date)

这是一次主要更新,主要完善了插件和网页API功能并修复了一坨Bug

主要变化

web_light

新增

  • 04f019e 添加更多属性和函数方便JS插件调用
  • aa6a41e 添加玩家列表变量
  • 1b9cd6b 支持获取绑定Id #117
  • 5fc8841 允许JS插件在事件中返回Promise并等待
  • 3dbe412 添加更多JS接口
  • 7a14c77 支持Cli启动或停止网页服务器
  • 7a14c77 为网页设置的白名单添加默认值
  • 7a14c77 添加HTTP请求事件
  • 7a14c77 支持手动释放网页文件
  • 7a14c77 支持Swan日志输出到文件
  • a2541da 支持在命令参数中决定是否使用Unicode字符
  • 895d8cb 支持广播连接和插件日志输出
  • 895d8cb 添加频道事件
  • 895d8cb 添加logger输出事件
  • 38d2636 支持发送频道消息
  • dc80cfa 支持解析为消息段发送
  • dc80cfa 为Plus添加日志控制台
  • db4d26a 支持匹配Satori和OneBot12消息
  • db4d26a 启动后可自动启动连接
  • 24f071e 更新Plus的设置页面
  • 24f071e 完善Plus的连接设置
  • 735860c 完成新的命令格式和数据包处理器
  • 510b127 支持OneBotV12协议
  • b76d10e 支持Satori协议 #83
  • 30fcd9b 添加更多api
  • 52c0077 更新Restful Api
  • ac5719f 添加Plus的文件拖入窗口处理
  • 9de77af 添加下载新版本更新并替换功能
  • 2c3b848 添加网页控制台嵌入文件,在启动时会尝试自动释放文件
  • 1ec88a7 改进服务器启动逻辑,更改使用虚拟终端不需要重启即可生效

修复

  • 0d524fe 应用部分为空的变量时会返回原变量的值
  • e73482d 部分测试在非Windows系统运行失败
  • c623370 .NET插件在构造函数中使用resolve无法得到正确的值
  • 7a14c77 Cli的标题不会自动更新
  • 7a14c77 无法使用Id含有大写字母的服务器变量
  • 7a14c77 使用API修改设置未被保存
  • 7a14c77 某些平台上使用虚拟终端退出时会导致Serein崩溃
  • 38d2636 连接功能接收的数据部分字符未解码
  • 510b127 反应功能运行时会修改命令对象
  • 223c8c6 停止Host后部分服务未终止
  • 223c8c6 使用网页接口开启WebSocket连接时崩溃
  • 2c3b848 Lite的插件管理器在某些时候会引发异常

测试

其他

不兼容更新

Warning

如果你正在从v2.0.x升级到这个版本,你可能需要注意以下问题,并在必要时备份数据

设置

  • 为兼容OneBot V12和Satori协议,连接设置结构发生变化,原有的连接设置大部分内容将会丢失
  • application.disableBinderWhenServerClosed➡️application.disableBindingManagerWhenAllServersStopped
  • application.pluginEventMaxWaitingTime➡️application.maximumWaitTimeForPluginEvents
  • application.jsGlobalAssemblies➡️application.jsDefaultAssemblies
  • application.jsPatternToSkipLoadingSingleFile➡️application.jsFilesToExcludeFromLoading
  • application.regexForCheckingGameId➡️application.gameIdValidationPattern
  • application.pattenForEnableMatchingMuiltLines➡️application.multiLineMatchingPatterns

用户 Id 类型变更

为适配 OneBot V12 和 Satori 协议,内部用户 Id 类型均由 long 改为 string

binding-records.sqlite.db 表结构发生变化

  • 储存数据的表名由 Records 改为 Datas
  • 因用户 Id 类型变更,主键的类型由 INTEGER 改为 TEXT

Tip

解决方法

手动执行 SQLite 命令

-- 使用在线SQLite编辑器或本地编辑器

INSERT INTO Datas (UserId, GameIds, Time, ShownName)
SELECT 
   CAST(UserId AS TEXT),  -- 将整数UserId转换为文本类型
   GameIds, 
   Time, 
   ShownName
FROM Records;

permission-groups.json 文件部分属性发生变化

原属性 members: number[] 改为 users: string[]

Js插件

部分函数或属性弃用或更改

  • serein.connection.active➡️serein.connection.isActive
  • serein.connection.sendData➡️serein.connection.sendDataAsync
  • serein.connection.sendGroupMsg/serein.connection.sendPrivateMsg➡️serein.connection.sendMessageAsync
  • serein.setting➡️serein.settings.value
  • serein.metadata➡️serein.app

网页接口

  • 旧版本中部分GET方法操作请求(如启动服务器、停止服务器等)现需使用POSTDELETE方法请求,详见文档
  • 现在DELETE方法请求返回的状态码是204

Tip

  • 如果你是第一次使用Serein,你可以先阅读一下安装教程,这会对你有很大帮助!
  • 如果你打算从v1的旧版本迁移到v2的新版本,你可以参考一下这个迁移教程,这会节约你很多时间
  • 此版本支持基岩版服务器+Endstone插件加载器/LeviLamina插件加载器,但你需要在服务器配置项中手动启用使用虚拟终端选项

Note

不知道下面哪个文件适合你?看看这个文档