This repository has been archived by the owner on Jan 23, 2021. It is now read-only.
Releases: Ray-Eldath/Avalon
Releases · Ray-Eldath/Avalon
bugfix; adjustments
major update: new function, bugs fix, adjustments
重大更新!Major update!
In this update, I fixed many bugs and improve experience greatly. So I decide to use this version number: v1.3.0
.
新功能
- 新增
avalon (heartbeat|hb)
:测试Avalon是否仍然存活(对这就是用来维护的 哈哈)
大量Bug修复
- 修复一个Snyk指出的漏洞
- 修复由
enableMap
的错误处理逻辑导致的bug - 修复
RunningData
中的bug
调整
- 给大多数指令添加了短语 这样就不用打那么多字啦=-=
- 交互文本优化 提升用户体验
New function
avalon (heartbeat|hb)
:Test if Avalon still alive. (Yep this is for the maintenance)
Bugs fix
- Fix a vulnerability pointed by Snyk.
- Fix bugs caused by wrong working logic for
enableMap
. - Fix errors caused by
RunningData
.
Adjustments
- Add shortcuts to most of the commands.
- Optimize interactive text and thus improves the user experience.
Globalization, support Discord, adjustment
国际化
- 现已支持英语。
支持Discord
- 您可在
config.json
中配置backend.backend
为Discord
并配置token
为您在Discord - My Apps上获取的token以启用Discord支持。
一些调整
- 添加对H2数据库的支持并默认使用它。下一版本将移除对SQLite数据库的支持。
- 指令前缀识别交由Avalon,而非下放至指令实现。
- 修改
avalon manager
匹配规则:不匹配指令前缀。 - 指令响应器现可限定激活的国家(地区)。
- 性能优化和bugfix。
Globalization
- English now supported.
Support Discord
- You can set
backend.backend
toDiscord
andtoken
to your token from Discord - My Apps to enable support for Discord.
Adjustment
- Support H2 database and set it as default database. Next version will remove support for SQLite database.
- The recognition of command prefix is now handled by Avalon, rather by the implementation of command responder.
- Modify the matching rule of
avalon manager
: Do not matching command prefix. - Command responder now can limit only in specified countries it is available.
- Performance improvement and bugfix.
新功能;策略修改;重命名等
新功能
- 新增
avalon reboot
指令:重启Avalon(WIndows系统下测试通过,Linux系统未测试)。 - 新增ServiceChecker:提前检测服务可用性。
- 新增
run_on_pc
配置项:若为true
,avalon version
将显示“Avalon在个人计算机上运行”的信息。 - 控制台彩色化
策略修改
- 修改
cooling
策略:只提示一次 -> 每隔5条被屏蔽消息后提示一次。 - 修改日志记录策略:只有控制台回显 -> 日志还会被记录至
log
文件夹内。 - 修改好友消息处理策略:不处理 -> 提示“Avalon暂不支持”。
重命名
config.json
- 原
servlet
配置块被重命名为backend
配置块。 - 原
servlet.servlet
配置项被重命名为backend.backend
配置项。 - 原
plugin_config
配置块被重命名为function_config
配置块。 - 原
responder_config.Execute.servlet
配置项被重命名为responder_config.Execute.backend
配置项。
- 原
其它
- Bugfix:Blacklist bug等。
注释
- 由于配置块和配置块的重命名,旧版本配置文件将无法直接使用。
- 由于Windows自带命令提示符不支持ANSI颜色代码,请使用cmder或其它第三方命令行工具执行
Avalon.bat
。Linux端不存在此问题。
新功能;Bugfix
新功能
- 新增插件
BuildStatus
:推送指定项目CI的构建状态。现支持TravisCI和AppVeyor。
Bugfix
- Glot-RunAPI修改导致bug。
- Executive bug。
- Blacklist bug。
其它
- 部分提示语句未更新。
- 优化性能
新功能;API修改;其他优化
新功能
- 新增全局Responder禁用功能:允许在
config.json -> responders
的enable
和disable
配置项中配置全局启用 / 禁用的Responder。注意,disable
中的配置将会被优先禁用,未在两配置项中出现的Responder则默认禁用。 - 新增
cooling_duration
配置项:该项用于配置冷却时间,即两次指令间的最短间隔。 - 新增
avalon blacklist list
指令:<管理员> 用于列出当前黑名单中的账户。 avalon help
新增标记添加机制:自动为需要添加标签的Responder添加<已禁用>
、<管理员>
等标签。
API修改
- 封装Responder相关信息至
ResponderInfo
。原getHelpMessage(): String
、getKeyWordRegex(): Pattern
等方法返回均封装于RespoderInfo
中。 ResponderInfo
提供:manageable : Boolean = true
:是否可管理。设置为false
的Responder将无法被avalon manager
指令管理。默认为true
。permission : ResponderPermission = ResponderPermission.ALL
:调用权限。Responder调用权限判断前移至Avalon内部(意味着Responder不需判断调用权限♪(^∇^*))。默认为ALL
,可改为ADMIN
或OWNER
。
优化
- 修改屏蔽词策略。
- 使用
by lazy
优化性能。
其它&注释
- fix #7
- 一些基础Responder默认无法管理。
- Bugfix。
new Responders, new `Executive`, `Hitokoto` and `RSSFeeder`
v1.1.0:更多响应器,新增代码执行器、“一言”推送器和RSS订阅器
非常好的一次更新!(雾
本版主要增加了一些好玩的响应器和一些定时功能。
v1.0.0去哪了
我也不知道。 似乎GitHub把我的RELEASE给吞了(雾
我README
文件都改好了 结果RELEASE里根本没有v1.0.0
...
本版修复/更新
- 改进配置文件:
group.json
:增添配置项permission
和blacklist
的默认值。
- 增添多个指令响应器:
- 服务 / Execute:执行给定代码并返回输出。(安全问题已解决)
- ExecuteInfo:输出代码执行器相关信息。(支持语言列表等)
- 服务 / Hitokoto:获取并返回一条一言。
- 服务 / Quote:记录给定的语录到数据库。
- 服务 / Execute:执行给定代码并返回输出。(安全问题已解决)
- 新增定时任务:
RSSFeeder
:检查给定的RSS是否更新。若更新则推送到群中。Hitokoto
:当存在配置项plugin_config -> Hitokoto -> push_when_start
(默认值为false
)且值为true
时,将在每次Avalon启动时推送一条一言。
- BugFix:
- 响应器正则匹配修改为“必须头部相同”以防止攻击。
- 消息频率限制器不工作。
file.encoding
编码问题。
- 安全优化:使用
PreparedStatement
及UrlEncoded
完成所有的关键数据库操作以防止SQL注入攻击。 - 巨型重构:由于Gradle太垃圾,因此使用Kotlin重写所有的Scala以保证正常
build
。(累死了...趴_(:3 」∠ )_ - 其它一些修复 / 改进。
注释
- 配置项
plugin_config -> Hitokoto ->category
为获取一言时的category
取值。见一言网API接口说明 - 参数。
deprecated MessageHook, significantly modify the configuration and APIs
改进配置方法和API:v0.0.2
本版主要改进了配置方法和API。
本版修复/更新
- 改进配置方法:将
config.json
分拆为group.json
和config.json
,从而提供对不同QQ群的不同配置。为v0.0.1
及更早版本编写的配置文件将不能在本版本及以后版本直接使用。 - 改进API:将原有的
MessageHook
方式标记为deprecated
(将在下一版本正式移除),并使用CustomGroupResponder
机制替代。基于v0.0.1
及更早版本编写的插件将不能在本版本及以后版本加载。 - (暂时)移去指令相应器
Execute
:由于安全问题及其他问题,本版本中已移去指令响应器Execute
及相关支持方法/类。将于下一版本重新提供基于Avalon-Executive的指令响应器Execute
。 - 更换日志系统
- 大量Bug修复
下一版本可能的修复/更新
- 重新提供更安全的指令响应器
Execute
- 降低配置复杂度,重新合并配置文件
使用须知
-
以下配置文件为必须自定义的:
config.json
:主配置文件,配置指令响应器、禁止词及Debug
选项等。group.json
:群配置文件,配置各个群的Admin
及指令响应器权限分配等。
以下配置文件为可选择自定义的:
database.properties
:消息记录功能的数据库配置文件:默认使用SQLite数据库,若想使用MySQL数据库请修改此配置文件。servlet.json
:配置使用的Servlet
及相关监听地址。请保证与CoolQ HTTP API中的配置或Mojo-Webqq中的配置一致。data/plugin/plugins.json
:配置插件相关信息。若无装载的插件则不需修改。
未在此列表中的文件均为运行所需文件。请勿编辑或删除这些运行所需文件。
-
由于基于腾讯WebQQ协议的Mojo-Webqq容易由于腾讯删API导致不可用,建议使用稳定得多的CoolQ作为
Servlet
。 -
若使用CoolQ作为
Servlet
,除了安装CoolQ本体之外,还请安装并配置CoolQ HTTP API并保证其配置与servlet.json
中的配置一致。 -
若需使用指令响应器
AnswerMe
,请下载并安装Mojo-Weixin并在运行Avalon前执行脚本bin\Mojo-Weixin.pl
。 -
请解压后运行Avalon。否则可能导致“找不到主类”。
replacement protocol, more responder
正式版本:v0.0.1
终于可以发布正式版本了...
原计划该版本是等到Avalon-Game能够工作之后再发布的,但经过冰封的一番调戏教育还是不要吝啬版本号了(づ  ̄ ³ ̄)づ
本版修复/更新
- 增加了对CoolQ协议的支持,大幅提升稳定性。
- 新增指令响应器:
- 一般 / ShowAdmin:输出管理员列表
- 一般 / Execute:(不完善,存在安全问题,不建议启用)编译&运行给定的程序并输出回显
- 一般 / Wolfram:向Wolfram Alpha问问题
- BugFix:
ShowMsg
不工作 - 改善:去除
Echo
的权限限制。 - 其他一些修复 / 改善
下一版本可能的修复/更新
- 部分代码使用Scala重写
- 完善Execute指令的安全及性能
使用须知
- !! 由于Jython的standalone版本过于庞大,将其打包至RELEASE文件中将会极大增加文件大小,因此请在百度云,微云或码云自行下载
jython-standalone-2.7.1-rc2.jar
文件并将其拷贝至RELEASE
文件中的lib
目录中。 - 若要使用CoolQ作为服务后端,请在酷Q Air处下载、安装CooQ并安装CoolQ HTTP API。
- 配置文件有一些调整,请看RELEASE文件内的
config.json
、servlet.json
和database.properties
。
patch: fix problem, pass the test.
Pre-release/patch版本:v0.0.1b
在上一没有测试的版本发布之后,Mojo-Webqq修复了Mojo-Webqq中存在的问题,我就可以测试了。
果不其然,一测试,就有bug。
所以以后都不测试了吧!
本版修复/更新
- 能够跑起来
- 全功能测试√