AnzhiZhang / ChatHub

GNU General Public License v3.0
28 stars 7 forks source link

feat: ✨ add daemon thread for kook receiver #8

Closed 401U closed 1 year ago

401U commented 1 year ago

为kook机器人添加了一个守护进程,通过定时访问kook的api来确认机器人在线状态,并在机器人下线时重启ws

功能测试正常,但代码结构组织方面可能有待改进,因为

我的预期中,守护进程守护的只是KookReceiver,故不应该与KookSender相关,这方面是否需要重构呢?

AnzhiZhang commented 1 year ago

之前是为了省事把接口坐在了 KookSender 里,若方便的话欢迎单独做一层与kook交互的功能 代码简单看了一下,looks good for me

401U commented 1 year ago

之前是为了省事把接口坐在了 KookSender 里,若方便的话欢迎单独做一层与kook交互的功能

我的重构思路是这样的:将kook和mc作为分别的adaptor来分包,eventhub和各个adaptor通信/调用,至于每个adaptor和上游平台的交互层、守护进程等等都放在相应adaptor包下实现

如果你认同这个思路,后面我可以尝试重构一下,否则直接合并此pr即可

AnzhiZhang commented 1 year ago

我的重构思路是这样的:将kook和mc作为分别的adaptor来分包,eventhub和各个adaptor通信/调用,至于每个adaptor和上游平台的交互层、守护进程等等都放在相应adaptor包下实现

如果你认同这个思路,后面我可以尝试重构一下,否则直接合并此pr即可

目前基本也是这样的结构,mc、kook、qq 有自己的 receiver 和 sender,在 core.EventHub 集中通信。我比较认同单独分包的重构方式,具体细节可以再讨论一下,这个pr作为单独的功能先合并了吧