插件内的 onPlug 和 onUnplug 回调函数
插件被加载时,会执行 reload(pluginName) ,因此插件内的所有代码都会被执行一次
当采用 hot-plug 的方式加载时,插件内的 onPlug 函数会紧接在 reload 成功后被执行
当采用 auto-plug-at-start 方式加载时,插件在启动时、登录之前被加载,但插件内的 onPlug 函数会延迟到登录成功后才被执行
插件被卸载时,插件内的 onUnplug 被执行
插件的编写编写插件主要就是编写回调函数或定时任务函数
插件列表

命令行模式下使用 IRC 聊天
linux 系统下,由于无法使用 QQ 客户端,可以使用插件 qqbot.plugins.miniirc 来实现用 IRC 聊天的功能。加载方式: qq plug qqbot.plugins.miniirc ,或启动时加载: qqbot -pl qqbot.plugins.miniirc ,或者在配置文件中的 plugins 选项中加入 'qqbot.plugins.miniirc' 。
插件加载后将在 6667 端口开启一个微型的 IRC 服务器,用户可以使用 IRC 客户端(如 weechat, irssi 等)连接此服务器来实现命令行模式下的聊天。以下以 weechat 为例介绍使用方法:
启动 weechat : weechat
连接本服务器: /connect localhost
进入 群聊天 会话: /join group-name
进入 讨论组聊天 会话: /join !discuss-name
进入 好友聊天 会话: /query buddy-name
进入 聊天会话 后,直接敲入文本并回车就可以向对方发送消息了。所有接收到的 QQ 消息也会被转发给相应的 聊天会话 。
在聊天会话之间切换: ctrl+P 或 ctrl+N
显示所有 群和讨论组 的名称: /list
以上几乎就是此微型 IRC 服务器所提供的所有功能了,但已经足够用来和 QQ 好友/群/讨论组 聊天了。
smartqq 协议支持及限制
本项目已实现绝大部分 smartqq 协议支持的功能,如下:
消息收/发
联系人(包括 好友/群/讨论组/群成员/讨论组成员)资料获取和查询(包括 QQ号/昵称/名称/备注名/群成员名片)
联系人资料根据需要动态更新
被群内其他成员 @ 的通知
群管理功能: 设置/取消管理员 、 设置/删除群名片 、 群成员禁言 以及 踢除群成员
发送、接收表情
其他功能:
调用系统默认图片浏览器显示登录二维码、将登录二维码发送至邮箱、开启一个 http 服务器用来显示登录二维码、在命令行窗口使用文本模式显示二维码
用 qq 命令行工具发消息、查询|更新联系人、群管理
提供 HTTP-API 接口发消息、查询|更新联系人、群管理
提供 miniirc 插件,可以在命令行模式下使用 IRC 客户端聊天
掉线后自动重启功能(有时需要手工扫码)
定时执行任务(通过 qqbotsched 实现)
因 smartqq 协议的限制,以下问题没有好的解决办法:
无法长时间保持状态,每次登录成功后的 cookie 会每在 1 ~ 2 天后失效,将被腾讯服务器强制下线,此时 必须 手工扫码重新登录。可以打开邮箱模式和自动重启模式,并配合 qqbot.plugins.schedrestart 插件使用,每天在固定的时间扫码登录一次,基本上可以稳定的保持状态。
无法发送图片、文件、音频、 xml 卡片消息
无法获取到自己通过其他客户端(手机 QQ 、PC-QQ)发送的 好友 消息(提示:自己发送的 群/讨论组 消息可以获取到)
当 好友/群/群成员 存在同名现象或名称中含特殊字符时,无法绑定其实际 QQ
无法在群内 @ 其他成员,即便用本程序在群里发送了 “@jack xxx” 这样的消息, jack 也只能收到这个纯文本,收不到“有人@我”的提醒。
无法向 群/讨论组 内的其他非好友成员发消息,也无法收到非好友成员发过来的临时会话消息
在非常少的情况下,发消息时会重复发送多次,也可能对方已收到消息但返回发送失败的结果
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-65875-12.html
台湾普通民众根本不了结大陆
密封后无氧是不会生蛆