手机登录网页版qq帐号 Python&QQBot:一个简单、好用的QQ机器人(4)

电脑杂谈  发布时间:2018-02-07 19:44:49  来源:网络整理

contact 代表消息发送者,其 ctype 属性可以为 'buddy'/'group'/'discuss' ,代表 好友/群/讨论组 对象,表示本消息是 好友消息/群消息/讨论组消息 。

member 仅当本消息为 群消息或讨论组消息 时有效,代表实际发消息的成员,它的 ctype 属性可以为 'group-member'/'discuss-member' ,代表 群成员/讨论组成员 对象。当本消息为 好友消息 时, member 等于 None 。

contact 和 member 都是 QContact 对象,不同类型的 QContact 对象所具有的属性含义见: qcontact-attr 。注意所有 QContact 对象都是 只读对象 ,只能读取它的属性,不能设置它的属性,也不能向它添加额外的属性。

可以调用 QQBot 对象的 SendTo 接口向 QContact 对象发送消息,但要注意:只可以向 好友/群/讨论组 发消息, 不可以向 群成员/讨论组成员 发送消息 。也就是说,只可以调用 bot.SendTo(contact, 'xxx') , 不可以调用 bot.SendTo(member, 'xxx') 。

五、 QQBot 对象的公开接口和属性

QQBot 对象提供 List/Update/SendTo/GroupSetAdmin/GroupSetCard/GroupShut/GroupKick/Plug/Unplug/Login/Stop/Restart/FreshRestart 共计 11 个公开接口,这些接口的第一个字母都是大写的。另外,提供一个公开属性 conf 保存全局的配置信息。

一般情况下,请勿 调用/存取 此对象的其他 方法/属性 。特别的, 请勿在子线程中调用这些接口 。 以下介绍前 7 个接口和 conf 属性。

如果需要在 IDE 或 python-shell 中运行或测试以上接口,需要先关闭 qqbot 进程,并在 IDE 或 python-shell 中运行以下代码进行登录:

>>> from qqbot import _bot as bot

>>> bot.Login(['-q', '1234'])

(1) bot.List(tinfo, [cinfo]) --> [contact0, contact1, ..., ]/[]/None

对应本文档第三节的 list 命令。返回联系人对象( QContact 对象)列表或者 None 。第一个参数 tinfo 是联系人列表的代号,第二个参数是可选的(和 list 命令的第三个参数格式一致)。

参数 tinfo 用来代表某个联系人列表,该参数在联系人的查询中非常重要,请务必理解以下两种情况 :

tinfo 的含义(情况1): tinfo 可以为 'buddy'/'group'/'discuss' ,分别代表 好友列表/群列表/讨论组列表 。示例:

# 返回 好友列表:

>>> bot.List('buddy')

# 返回名为 'jack' 的好友的列表:

>>> bot.List('buddy', 'jack')

# 返回 群列表:

>>> bot.List('group')

# 返回名为 “机器人测试” 的群的列表:

>>> bot.List('group', '机器人测试')

tinfo 的含义(情况2): tinfo 也可以是一个 ctype 等于 'group'/'discuss' 的 QContact 对象,代表该 群/讨论组 的成员列表。如以下第二句和第三句分别返回 群“456班” 的成员列表和该群中名片为 “jack” 的成员列表:


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-65875-4.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...