设为 True 在绝大部分情况下能保证消息一定能发出去,但缺点是有时一条消息会重复发送。设为 False 则相反,消息不会重复发送,但有时消息发送不出去。
总之因为这个 1202 代码的不确定性,没有完美的解决办法。请根据各自的实际情况选择 resendOn1202 的值。
第一个参数 contact 必须是通过 bot.List 返回的 QContact 对象、或回调函数 onQQMessage 传递进来的第一个参数。示例:
# 向 QQ 为 12345 的好友发消息
>>> bl = bot.List('buddy', '12345')
>>> if bl:
>>> b = bl[0]
>>> bot.SendTo(b, 'hello')
(4) bot.GroupXXX(group, membs[, arg]) --> ['成功:...', '成功:...', '错误:...']
对应第三节的群管理命令,共四个接口:
设置/取消管理员: bot.GroupSetAdmin(group, membs, admin=True)
设置/取消群成员名片: bot.GroupSetCard(group, membs, card)
禁止群成员发言: bot.GroupShut(group, membs, t=60)
踢除群成员: bot.GroupKick(group, membs)
其中第一个参数 group 为 群对象( ctype 等于 'group' 的 QContact 对象),第二个参数 membs 为被操作的成员列表。返回值为 membs 中各成员的操作信息。示例代码:
# 禁止 群“456班” 中名称为 jack 的成员发言(120秒)
gl = bot.List('group', '456班')
if gl:
group = gl[0]
membs = bot.List(group, 'jack')
if membs:
bot.GroupShut(group, membs, 120)
注意: 1) 第二个参数 membs 是一个 list 对象(如: [memb0,memb1,...] ),而不是一个 QContact 对象; 2) 若 membs 中的某个成员是管理员,则除 SetCard 外的其他接口可能对其无效,尽管此时返回成功信息。 3) 使用这四个接口时,请自行保证登录的用户是该群的管理员,且 membs 中的各成员均属于该群。
(5) bot.conf
bot.conf 中保存全局的配置信息,各项配置详见本文档第七节。如 bot.conf.termServerPort 保存 QQBot 命令行服务器的端口号, bot.conf.qq 保存本次登录的 QQ 号码。
注意: bot.conf 中保存的配置信息是只读的,请勿修改这些配置信息。
注册回调函数、被他人 @ 的通知、判断是否是自己发的消息、定制定时任务
注册回调函数
除了上面提到的 onQQMessage 响应函数,还可以注册 onInit/onQrcode/onStartupComplete/onInterval/onUpdate/onPlug/onUnplug/onExit 共计九种事件的回调函数,所有事件的回调函数参数格式、含义及示例详见 sampleslots.py 。
程序的运行流程以及各回调函数的调用时机如下
再次提醒:注册的回调函数的函数名以及函数参数(数量和名称)都不得更改 。
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-65875-6.html
中国大地思想的大旗又高高举起和飘扬了