• 欢迎来到小可 · Wiki,人人可编辑的,多平台聊天机器人“小可”的官方文档资源。
  • 小可很可爱,请给我们打钱
  • 原 MkDocs 已迁入本站。若发现 404 属正常现象,请点击左上角搜索您想要的模块。

可调用对象列表:修订间差异

来自小可 · Wiki,人人可编辑的,QQ机器人“小可”的官方文档资源
(文本替换 - 替换“对话”为“会话”)
 
第34行: 第34行:
MsgInfo(target_id=TEST|Console|0, sender_id=TEST|0, sender_name=Console, target_from=TEST|Console, sender_from=TEST, client_name=TEST, message_id=0, reply_id=None)
MsgInfo(target_id=TEST|Console|0, sender_id=TEST|0, sender_name=Console, target_from=TEST|Console, sender_from=TEST, client_name=TEST, message_id=0, reply_id=None)
</pre>
</pre>
* {{Instructor param||int}}{{Instructor param|target.target_id|str}}: 话 ID
* {{Instructor param||int}}{{Instructor param|target.target_id|str}}: 话 ID
* {{Instructor param||int}}{{Instructor param|target.sender_id|str}}:发送者 ID
* {{Instructor param||int}}{{Instructor param|target.sender_id|str}}:发送者 ID
* {{Instructor param|target.sender_name|str}}:发送者名称
* {{Instructor param|target.sender_name|str}}:发送者名称
* {{Instructor param|target.target_from|str}}: 话来源
* {{Instructor param|target.target_from|str}}: 话来源
* {{Instructor param|target.sender_from|str}}:发送者来源
* {{Instructor param|target.sender_from|str}}:发送者来源
* {{Instructor param|target.client_name|str}}:平台名称
* {{Instructor param|target.client_name|str}}:平台名称
第44行: 第44行:


=== <code>MessageSession.session</code> ===
=== <code>MessageSession.session</code> ===
 此方法记录了一条 话消息。
 此方法记录了一条 话消息。
<pre>
<pre>
Session(message=~ping, target=TEST|Console|0, sender=TEST|0)
Session(message=~ping, target=TEST|Console|0, sender=TEST|0)
</pre>
</pre>
* <code>session.message</code>: 话消息
* <code>session.message</code>: 话消息
* <code>session.target</code>: 话 ID
* <code>session.target</code>: 话 ID
* <code>session.sender</code>:发送者 ID
* <code>session.sender</code>:发送者 ID


第68行: 第68行:


=== <code>MessageSession.options</code> ===
=== <code>MessageSession.options</code> ===
 此方法可以查看机器人在 话中的所有设置。
 此方法可以查看机器人在 话中的所有设置。
* {{Instructor param|options|dict}}:所有设置
* {{Instructor param|options|dict}}:所有设置


=== <code>MessageSession.custom_admins</code> ===
=== <code>MessageSession.custom_admins</code> ===
 此方法可以查看机器人在 话中的所有自定义管理员。
 此方法可以查看机器人在 话中的所有自定义管理员。
* {{Instructor param|custom_admins|list}}:自定义管理员
* {{Instructor param|custom_admins|list}}:自定义管理员


=== <code>MessageSession.enabled_modules</code> ===
=== <code>MessageSession.enabled_modules</code> ===
 此方法可以查看机器人在 话中的所有已开启模块。
 此方法可以查看机器人在 话中的所有已开启模块。
* {{Instructor param|custom_admins|list}}:已开启模块
* {{Instructor param|custom_admins|list}}:已开启模块


=== <code>MessageSession.locale</code> ===
=== <code>MessageSession.locale</code> ===
 此方法可以查看机器人在 话中的语言设置。
 此方法可以查看机器人在 话中的语言设置。
* {{Instructor param|locale|list}}:语言代码
* {{Instructor param|locale|list}}:语言代码


第92行: 第92行:


=== <code>MessageSession.timezone_offset</code> ===
=== <code>MessageSession.timezone_offset</code> ===
 此方法可以查看机器人在 话中的时间偏移值。
 此方法可以查看机器人在 话中的时间偏移值。
* <code>timezone_offset</code>:时间偏移值,使用 timedelta 类型
* <code>timezone_offset</code>:时间偏移值,使用 timedelta 类型


第169行: 第169行:
* {{Instructor param|delete|bool}}:是否在触发后删除消息,默认 False
* {{Instructor param|delete|bool}}:是否在触发后删除消息,默认 False
* {{Instructor param|timeout|int}}:超时时间,超时后抛出 <code>WaitCancelException</code> 异常,若为 None 则禁用超时,默认 120
* {{Instructor param|timeout|int}}:超时时间,超时后抛出 <code>WaitCancelException</code> 异常,若为 None 则禁用超时,默认 120
* {{Instructor param|all_|bool}}:是否将触发条件设置为 话内所有人有效,默认 False
* {{Instructor param|all_|bool}}:是否将触发条件设置为 话内所有人有效,默认 False
* {{Instructor param|append_instruction|bool}}:是否显示提示语,默认 True
* {{Instructor param|append_instruction|bool}}:是否显示提示语,默认 True
* 返回:回复消息的消息链
* 返回:回复消息的消息链
第178行: 第178行:
async def wait_anyone(self, message_chain=None, quote=True, delete=False, timeout=120):
async def wait_anyone(self, message_chain=None, quote=True, delete=False, timeout=120):
</syntaxhighlight>
</syntaxhighlight>
 此异步方法用于等待发送者所在 话的任意成员确认。
 此异步方法用于等待发送者所在 话的任意成员确认。
* <code>message_chain</code>:消息链,若传入字符串则自动创建一条带有 Plain 元素的消息链,可留空
* <code>message_chain</code>:消息链,若传入字符串则自动创建一条带有 Plain 元素的消息链,可留空
* {{Instructor param|quote|bool}}:是否引用原消息,默认 True
* {{Instructor param|quote|bool}}:是否引用原消息,默认 True
第190行: 第190行:
def as_display(self, text_only=False):
def as_display(self, text_only=False):
</syntaxhighlight>
</syntaxhighlight>
 此方法用于将 话消息转换为字符串。
 此方法用于将 话消息转换为字符串。
* {{Instructor param|text_only|bool}}:是否只保留纯文本,默认 False
* {{Instructor param|text_only|bool}}:是否只保留纯文本,默认 False
* 返回:字符串形式的消息
* 返回:字符串形式的消息
第199行: 第199行:
def to_message_chain(self):
def to_message_chain(self):
</syntaxhighlight>
</syntaxhighlight>
 此方法用于将 话消息转换为消息链。
 此方法用于将 话消息转换为消息链。
* 返回:消息链
* 返回:消息链


第206行: 第206行:
def delete(self):
def delete(self):
</syntaxhighlight>
</syntaxhighlight>
 此方法用于删除 话消息。
 此方法用于删除 话消息。
* 返回:若删除成功返回 True,反之则返回 False
* 返回:若删除成功返回 True,反之则返回 False


第214行: 第214行:
def check_permission(self):
def check_permission(self):
</syntaxhighlight>
</syntaxhighlight>
 此方法用于检查发送者在 话内的机器人管理员权限。
 此方法用于检查发送者在 话内的机器人管理员权限。
* 返回:若符合返回 True,反之则返回 False
* 返回:若符合返回 True,反之则返回 False



2024年11月15日 (五) 09:48的最新版本

注意
此处的列表为简单粗略的整理,具体请见 Github 源码。

本文整理了一些常用的机器人可调用对象,以及其说明。

目录

MessageSession

此部分可用于机器人记录消息内容并处理消息。

MessageSession.target

此方法记录了一条消息的详细说明。

MsgInfo(target_id=TEST|Console|0, sender_id=TEST|0, sender_name=Console, target_from=TEST|Console, sender_from=TEST, client_name=TEST, message_id=0, reply_id=None)
  • 整数 字符串 target.target_id:会话 ID
  • 整数 字符串 target.sender_id:发送者 ID
  • 字符串 target.sender_name:发送者名称
  • 字符串 target.target_from:会话来源
  • 字符串 target.sender_from:发送者来源
  • 字符串 target.client_name:平台名称
  • 整数 字符串 target.message_id:消息 ID
  • 整数 字符串 target.reply_id:回复消息 ID

MessageSession.session

此方法记录了一条会话消息。

Session(message=~ping, target=TEST|Console|0, sender=TEST|0)
  • session.message:会话消息
  • session.target:会话 ID
  • session.sender:发送者 ID

MessageSession.sent

此方法记录了发送的消息链。

  • 列表 sent:已发送的消息链

MessageSession.prefixes

此方法记录了所有可用的命令前缀,包括配置文件与自定义。默认以列表第 1 个前缀来展示命令。

  • 列表 prefixes:所有可用命令前缀

MessageSession.data

此方法可以调用机器人数据库。详见#BotDBUtil.TargetInfo

MessageSession.muted

此方法可以查看机器人是否被允许发言。

  • 布尔值 muted:是否被允许发言,默认 False(如果为 True,则不会返回消息)

MessageSession.options

此方法可以查看机器人在会话中的所有设置。

  • 字典 options:所有设置

MessageSession.custom_admins

此方法可以查看机器人在会话中的所有自定义管理员。

  • 列表 custom_admins:自定义管理员

MessageSession.enabled_modules

此方法可以查看机器人在会话中的所有已开启模块。

  • 列表 custom_admins:已开启模块

MessageSession.locale

此方法可以查看机器人在会话中的语言设置。

  • 列表 locale:语言代码

MessageSession.name

此方法可以查看机器人名称。

  • 字符串 name:带有本地化的机器人名称

MessageSession.tmp

此方法用于储存一些临时内容,一般不调用。

  • 字典 tmp:所有临时内容

MessageSession.timezone_offset

此方法可以查看机器人在会话中的时间偏移值。

  • timezone_offset:时间偏移值,使用 timedelta 类型

MessageSession.send_message

别名:MessageSession.sendMessage

async def send_message(self, message_chain, quote=True, disable_secret_check=False, allow_split_image=True, callback=None):

此异步方法用于向发送者返回消息。

  • message_chain:消息链,若传入字符串则自动创建一条带有 Plain 元素的消息链
  • 布尔值 quote:是否引用原消息,默认 True
  • 布尔值 disable_secret_check:是否禁用消息检查,默认 False
  • 布尔值 allow_split_image:是否允许拆分图片发送,默认 True
  • callback:回调方法,用于在消息发送完成后回复本消息执行的方法
  • 返回:被发送的消息链

MessageSession.finish

async def finish(self, message_chain, quote=True, disable_secret_check=False, allow_split_image=True, callback=None):

此异步方法用于向发送者返回消息并终结此次会话。

  • message_chain:消息链,若传入字符串则自动创建一条带有 Plain 元素的消息链
  • 布尔值 quote:是否引用原消息,默认 True
  • 布尔值 disable_secret_check:是否禁用消息检查,默认 False
  • 布尔值 allow_split_image:是否允许拆分图片发送,默认 True
  • callback:回调方法,用于在消息发送完成后回复本消息执行的方法
  • 返回:被发送的消息链

MessageSession.direct_message

别名:MessageSession.sendDirectMessage

async def send_direct_message(self, message_chain, quote=True, disable_secret_check=False, allow_split_image=True, callback=None):

此异步方法用于向发送者直接发送消息。

  • message_chain:消息链,若传入字符串则自动创建一条带有 Plain 元素的消息链
  • 布尔值 quote:是否引用原消息,默认 True
  • 布尔值 disable_secret_check:是否禁用消息检查,默认 False
  • 布尔值 allow_split_image:是否允许拆分图片发送,默认 True
  • callback:回调方法,用于在消息发送完成后回复本消息执行的方法
  • 返回:被发送的消息链

MessageSession.wait_confirm

别名:MessageSession.WaitConfirm

async def wait_confirm(self, message_chain=None, quote=True, delete=True, timeout=120, append_instruction=True):

此异步方法用于等待发送者确认。

  • message_chain:消息链,若传入字符串则自动创建一条带有 Plain 元素的消息链,可留空
  • 布尔值 quote:是否引用原消息,默认 True
  • 布尔值 delete:是否在触发后删除消息,默认 True
  • 整数 timeout:超时时间,超时后抛出 WaitCancelException 异常,若为 None 则禁用超时,默认 120
  • 布尔值 append_instruction:是否显示提示语,默认 True
  • 返回:若对象发送 confirm_command 中的其一文本时返回 True,反之则返回 False

MessageSession.wait_next_message

别名:MessageSession.waitNextMessage

async def wait_next_message(self, message_chain=None, quote=True, delete=False, timeout=120, append_instruction=True):

此异步方法用于等待发送者的下一条消息。

  • message_chain:消息链,若传入字符串则自动创建一条带有 Plain 元素的消息链,可留空
  • 布尔值 quote:是否引用原消息,默认 True
  • 布尔值 delete:是否在触发后删除消息,默认 False
  • 整数 timeout:超时时间,超时后抛出 WaitCancelException 异常,若为 None 则禁用超时,默认 120
  • 布尔值 append_instruction:是否显示提示语,默认 True
  • 返回:下一条消息的消息链

MessageSession.wait_reply

别名:MessageSession.waitReply

async def wait_reply(self, message_chain=None, quote=True, delete=False, timeout=120, all_=False, append_instruction=True):

此异步方法用于等待发送者回复消息。

  • message_chain:消息链,若传入字符串则自动创建一条带有 Plain 元素的消息链,可留空
  • 布尔值 quote:是否引用原消息,默认 True
  • 布尔值 delete:是否在触发后删除消息,默认 False
  • 整数 timeout:超时时间,超时后抛出 WaitCancelException 异常,若为 None 则禁用超时,默认 120
  • 布尔值 all_:是否将触发条件设置为会话内所有人有效,默认 False
  • 布尔值 append_instruction:是否显示提示语,默认 True
  • 返回:回复消息的消息链

MessageSession.wait_anyone

别名:MessageSession.waitAnyone

async def wait_anyone(self, message_chain=None, quote=True, delete=False, timeout=120):

此异步方法用于等待发送者所在会话的任意成员确认。

  • message_chain:消息链,若传入字符串则自动创建一条带有 Plain 元素的消息链,可留空
  • 布尔值 quote:是否引用原消息,默认 True
  • 布尔值 delete:是否在触发后删除消息,默认 False
  • 整数 timeout:超时时间,超时后抛出 WaitCancelException 异常,若为 None 则禁用超时,默认 120
  • 返回:任意成员的下一条消息的消息链

MessageSession.as_display

别名:MessageSession.asDisplay

def as_display(self, text_only=False):

此方法用于将会话消息转换为字符串。

  • 布尔值 text_only:是否只保留纯文本,默认 False
  • 返回:字符串形式的消息

MessageSession.to_message_chain

别名:MessageSession.toMessageChain

def to_message_chain(self):

此方法用于将会话消息转换为消息链。

  • 返回:消息链

MessageSession.delete

def delete(self):

此方法用于删除会话消息。

  • 返回:若删除成功返回 True,反之则返回 False

MessageSession.check_permission

别名:MessageSession.checkPermission

def check_permission(self):

此方法用于检查发送者在会话内的机器人管理员权限。

  • 返回:若符合返回 True,反之则返回 False

MessageSession.check_native_permission

别名:MessageSession.checkNativePermission

def check_native_permission(self):

此方法用于检查发送者在平台的管理员权限。

  • 返回:若符合返回 True,反之则返回 False

MessageSession.fake_forward_msg

def fake_forward_msg(self, nodelist):

此方法用于在 QQ 平台发送假转发消息。

  • 列表 nodelist:转发消息节点
  • 返回:转发消息

MessageSession.get_text_channel_list

def fake_forward_msg(self, nodelist):

此方法用于在 QQ 平台获取子文字频道列表。

  • 返回:子文字频道列表

MessageSession.ts2strftime

def ts2strftime(self, timestamp, date=True, iso=False, time=True, seconds=True, timezone=True):

此方法用于将时间戳转换为可读的时间格式。

  • 浮点数 timestamp:UTC 时间戳
  • 布尔值 date:是否显示日期,默认 True
  • 布尔值 iso:是否以 ISO 格式显示,默认 False
  • 布尔值 time:是否显示时间,默认 True
  • 布尔值 time:是否显示秒,默认 True
  • 布尔值 timezone:是否显示时间偏移值,默认 True
  • 返回:格式化的时间字符串

MessageSession.check_super_user

别名:MessageSession.checkSuperUser

def check_super_user(self):

此方法用于检查发送者的超级用户权限。

  • 返回:若符合返回 True,反之则返回 False

MessageSession.sleep

async def sleep(s):

此异步方法用于让程序暂时休眠。

  • 浮点数 s:休眠时间

MessageSession.call_api

async def call_api(self, action, **params):

此异步方法用于呼叫框架 API。

  • 字符串 action:API 动作
Cookie帮助我们提供我们的服务。通过使用我们的服务,您同意我们使用cookie。