EFChat 适配器提供了多个事件类型,用于处理消息和通知:
表示 EFChat 中的通用消息事件,包括 房间消息 和 私聊消息。
| 属性 | 说明 |
|---|---|
event.message |
消息内容 |
event.trip |
加密身份标识 |
event.nick |
发送者的用户 ID |
EFChat 适配器提供了以下方法,用于发送消息:
通用消息发送方法
await bot.send(event, message="你好!", at_sender=True, reply_message=False)| 参数 | 类型 | 说明 |
|---|---|---|
event |
MessageEvent |
事件对象 |
message |
str 或 MessageSegment |
要发送的消息内容 |
at_sender |
bool |
是否 @ 发送者 |
reply_message |
bool |
是否回复原消息 |
发送 房间消息:
await bot.send_chat_message(message="Hello!", show=True)
# show参数不是必填的,默认为 False , 即该消息不保存到历史记录中| 参数 | 类型 | 说明 |
|---|---|---|
message |
str 或 MessageSegment |
要发送的内容 |
show |
bool |
是否保存在聊天记录 (True 保存, False 不保存) |
空
发送 私聊消息:
await bot.send_whisper_message(target="105", message="Hello EFChat!")| 参数 | 类型 | 说明 |
|---|---|---|
target |
str |
目标用户昵称 |
message |
str 或 MessageSegment |
要发送的内容 |
空
以下 API 方法用于控制 Bot:
移动 Bot 到指定房间:
await bot.move("PrivateRoom")| 参数 | 类型 | 说明 |
|---|---|---|
new_channel |
str |
目标房间名称 |
空,bot 会直接进入新的房间
修改 Bot 昵称:
await bot.change_nick("EFChatBot")| 参数 | 类型 | 说明 |
|---|---|---|
new_nick |
str |
目标昵称 |
空,随后服务器会下发ChangeNickEvent事件,父事件为NoticeEvent
获取 历史聊天记录:
await bot.get_chat_history(num=50)| 参数 | 类型 | 说明 |
|---|---|---|
num |
int |
要获取的消息数量 |
注意:如果值为1,则返回当天的历史聊天记录;如果值为100,则返回全部历史聊天记录。
空,随后服务器会下发ListHistoryEvent事件,父事件为NoticeEvent
EFChat 适配器支持 API 调用,用于执行各种命令:
调用适配器 API:
await bot.call_api("chat", text="Hello, EFChat!")| 参数 | 类型 | 说明 |
|---|---|---|
api |
str |
API 方法名称 |
kwargs |
dict |
额外参数 |