Ma Zl's Blog

作者 主题: 基于mirai的webqq(?)  (阅读 80 次)

admin

  • Administrator
  • Authors
  • *****
  • 帖子: 21
基于mirai的webqq(?)
« 于: 2021-06-07,00:40:32 »
此项目停止开发,无重大问题不会维护。非专业开发者,code写的很难看。


背景
emmm腾讯webqq停了好几年了,反正我还是挺怀念的。刚开始做的跟eyeos差不多,就像个完整的系统,好像有挺多基于web的应用的,后来升级就剩个qq了(改名叫smart qq了),最后直接砍掉了。当时最早的正式版还有个主页专门介绍这东西。

正好接触到mirai,寒假利用几天多时间写了个简单的调用api的示例。至于功能和界面。。。反正功能是基本的聊天可以用,界面我不会弄,拿个jquery mobile糊弄一下就过去了。

介绍
具体的介绍其实没什么可以说的,可以取群列表和群成员列表和好友列表,可以发消息接收消息,带了几个程序化回复演示(骰子,b站数据、tts那个api被我玩坏了暂时用不了)。

使用时要求你有一个可以在你那里访问的mirai的ip地址(可以是localhost),这个mirai要安装mirai-api-http,之后照着填就行了。
发消息用的是消息链,格式就是[<json>,<json>]这种,<json>是消息对象。

特性与已知问题
  • 支持的消息事件:群聊里mirai-http-api返回的所有消息事件(卡片等事件不解析直接类型和值),几乎所有成员变动事件(加入,退群,改名,踢出,禁言,解禁),机器人事件只支持上下线。
  • 发消息的时候如果要用工具栏就不要动文本框,否则工具栏没法编辑
  • 不处理接收到的消息,存在xss等漏洞
  • 提示超时后请求其实还在发送(没做xhr.abort())
  • 所有请求都是ajax(轮询,不是websocket,不会弄),问就是不会弄fetch,弄不明白什么promise
见附件

我做的那个东西的许可协议继承mirai的AGPLv3协议(貌似是兼容于 CC BY-SA 4.0 )。
mirai-api-http的repo url是https://github.com/project-mirai/mirai-api-http
mirai的repo url是https://github.com/mamoe/mirai

许可协议(源码很烂)
程序代码: [选择]
Copyright (C) 2020-2021 Mzltest

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.
« 最后编辑时间: 2021-08-22,23:06:49 作者 admin »
如未作说明,所有内容均为原创。文章的许可协议为
知识共享许可协议 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。
在转载本站点的文章时,应在对应版权声明处注明来源并添加指向原始文章的超链接,且转载的文章必须使用与原始文章相同的许可协议,文章所在页面不得包含任何广告如果目标平台限制无法达成以上的一个或多个条件,则不得转载本站点文章)。
小部分引用(撰写的作品超过500字<不包含控制代码等非可读字符,下同>且引用本站点所有原创文章字数不多于总字数的20%且不超过300字)时如果平台有限制,来源可以不使用超链接形式,但必须包含原始来源网址。如果引用内容字数不多于所撰写文章的20%且不超过300字,且所撰写文章超过1000字且有较高原创性,则可用于商业用途(例如:公开售卖),无需使用相同协议(可以禁止转载),但仍需按照上述要求注明来源