simbot-component-onebot
simbot-component-onebot copied to clipboard
feat: 适配 Universal 连接方式
希望能够适配Universal的连接方式,从而在一条连接上同时使用两种服务,从而无需同时配置Http和WebSocket服务,现阶段apiServerHost无法使用WebSocket连接
根据配置的不同,连接用户提供的 URL 的客户端有三种:API 客户端、Event 客户端和 Universal 客户端。API 客户端提供 API 调用服务;Event 客户端提供事件推送服务;Universal 客户端在一条连接上同时提供两种服务。
注意
只要服务器能够正确区分,API 客户端和 Event 客户端可以向同一个 URL 建立连接,但这是两条连接,和 Universal 客户端不同。
Universal 比起同时配置 HTTP 和 ws 两种服务来讲似乎并不会带来 太多 的好处。对于API来讲,Http的"一问一答"更便于控制、更直观、也更利于 API 与 bot 之间的分离。
我们认为API使用HTTP是最好的方式。对 Universal 做出支持虽然需要修改或增加不少内容,但倒也不是不可以,只是觉得必要性不大。
是否有更具体的应用场景案例,使得此场景下必须使用 Universal 也就是共用ws的方式,或者此场景 Universal 能带来远超使用两种连接方式的好处呢?