messages
feishu.im.messages
¶
send_message
¶
send_message(message: str, receive_id: str | None = None, receive_id_type: str | None = None, uuid: str = '', **kwargs)
send_message(message: dict, receive_id: str | None = None, receive_id_type: str | None = None, uuid: str = '', **kwargs)
send_message(message: str | dict | Stream, id: str | None = None, receive_id_type: str | None = None, message_type: str | None = None, uuid: str = '', **kwargs) -> NestedDict
发送消息
当 id
以 om_
开头时,回复消息。
否则,发送消息。
Parameters:
Name | Type | Description | Default |
---|---|---|---|
|
str | dict | Stream
|
消息内容 |
required |
|
str | None
|
接收者 ID 或消息 ID |
None
|
|
str | None
|
接收者 ID 类型。会根据 |
None
|
|
str | None
|
消息类型。默认为 |
None
|
|
str
|
消息唯一标识,用于消息去重。 |
''
|
功能 | 实现函数 |
---|---|
发送内容消息 | feishu.im.messages.send_message_content |
流式消息 | feishu.im.messages.stream_message |
回复消息 | feishu.im.messages.reply_message |
Source code in feishu/im/messages.py
send_message_content
¶
send_message_content(content: str, receive_id: str | None = None, receive_id_type: str | None = None, uuid: str = '', **kwargs)
send_message_content(content: dict, receive_id: str | None = None, receive_id_type: str | None = None, uuid: str = '', **kwargs)
send_message_content(message: str | dict, receive_id: str | None = None, receive_id_type: str | None = None, message_type: str | None = None, uuid: str = '', **kwargs) -> NestedDict
发送消息
Parameters:
Name | Type | Description | Default |
---|---|---|---|
|
str | dict
|
消息内容 |
required |
|
str | None
|
接收者 ID |
None
|
|
str | None
|
接收者 ID 类型。会根据 |
None
|
|
str | None
|
消息类型。默认为 |
None
|
|
str
|
消息唯一标识,用于消息去重。 |
''
|
飞书文档
Source code in feishu/im/messages.py
reply_message
¶
reply_message(message: str, message_id: str, message_type: str | None = None, reply_in_thread: bool | None = None, uuid: str | None = None, **kwargs)
reply_message(message: dict, message_id: str, message_type: str | None = None, reply_in_thread: bool | None = None, uuid: str | None = None, **kwargs)
reply_message(message: Stream, message_id: str, uuid: str | None = None, **kwargs)
reply_message(message: str | dict | Stream, message_id: str, message_type: str | None = None, reply_in_thread: bool | None = None, uuid: str = '', **kwargs) -> NestedDict
回复消息
Parameters:
Name | Type | Description | Default |
---|---|---|---|
|
str | dict | Stream
|
消息内容 |
required |
|
str
|
消息 ID |
required |
|
str | None
|
消息类型。默认为 |
None
|
|
bool | None
|
是否以话题形式回复;若要回复的消息已经是话题消息,则默认以话题形式进行回复。默认为 |
None
|
|
str
|
消息唯一标识,用于消息去重。 |
''
|
飞书文档
功能 | 实现函数 |
---|---|
回复内容消息 | feishu.im.messages.reply_message_content |
流式消息 | feishu.im.messages.stream_message |
Source code in feishu/im/messages.py
reply_message_content
¶
reply_message_content(message: str, message_id: str, message_type: str | None = None, reply_in_thread: bool | None = None, uuid: str | None = None, **kwargs)
reply_message_content(message: dict, message_id: str, message_type: str | None = None, reply_in_thread: bool | None = None, uuid: str | None = None, **kwargs)
reply_message_content(message: str | dict, message_id: str, message_type: str | None = None, reply_in_thread: bool | None = None, uuid: str = '', **kwargs) -> NestedDict
回复消息
Parameters:
Name | Type | Description | Default |
---|---|---|---|
|
str | dict
|
消息内容 |
required |
|
str
|
消息 ID |
required |
|
str | None
|
消息类型。默认为 |
None
|
|
bool | None
|
是否以话题形式回复;若要回复的消息已经是话题消息,则默认以话题形式进行回复。默认为 |
None
|
|
str
|
消息唯一标识,用于消息去重。 |
''
|
飞书文档
Source code in feishu/im/messages.py
stream_message
¶
stream_message(stream: Stream, receive_id: str, receive_id_type: str | None = None, uuid: str = '', **kwargs) -> NestedDict
传输流式消息
由于飞书暂时没有提供流式消息的直接支持,我们通过卡片消息的方式来模拟流式消息。
这个方法会先发送一个空的卡片消息,然后通过不断地更新这个消息来模拟流式消息。
Parameters:
Name | Type | Description | Default |
---|---|---|---|
|
Stream
|
消息内容流 |
required |
|
str
|
接收者 ID 或 消息 ID |
required |
|
str | None
|
接收者 ID 类型。会根据 |
None
|
|
str
|
消息唯一标识,用于消息去重。 |
''
|
Source code in feishu/im/messages.py
patch_message
async
¶
patch_message(message: str | dict, message_id: str, **kwargs)
更新应用发送的消息卡片
Warning
这是一个异步函数。
Parameters:
Name | Type | Description | Default |
---|---|---|---|
|
str | dict
|
消息内容 |
required |
|
str
|
消息 ID |
required |
飞书文档
Source code in feishu/im/messages.py
update_message
¶
update_message(message: str | dict, message_id: str, **kwargs)
编辑消息
Parameters:
Name | Type | Description | Default |
---|---|---|---|
|
str | dict
|
消息内容 |
required |
|
str
|
消息 ID |
required |
飞书文档
Source code in feishu/im/messages.py
recall_message
¶
recall_message(message_id: str, **kwargs)
get_message
¶
get_message(message_id: str, file_key: str | None = None, file_type: str | None = None, **kwargs)
获取消息
当 file_key
不为空时,获取消息中的资源文件。
否则,获取消息内容。
Parameters:
Name | Type | Description | Default |
---|---|---|---|
|
str
|
消息 ID |
required |
|
str | None
|
文件 Key |
None
|
|
str | None
|
文件类型 |
None
|
功能 | 实现函数 |
---|---|
获取消息内容 | feishu.im.messages.get_message_content |
获取消息中的资源文件 | feishu.im.messages.get_message_resource |
Source code in feishu/im/messages.py
get_message_content
¶
get_message_content(message_id: str, **kwargs)
获取消息内容
Parameters:
Name | Type | Description | Default |
---|---|---|---|
|
str
|
消息 ID |
required |
飞书文档
Source code in feishu/im/messages.py
get_message_resource
¶
get_message_resource(message_id: str, file_key: str, file_type: str, **kwargs)
获取消息中的资源文件
Parameters:
Name | Type | Description | Default |
---|---|---|---|
|
str
|
消息 ID |
required |
飞书文档
Source code in feishu/im/messages.py
get_messages
¶
get_messages(id: str, container_id_type: str = 'chat', max_num_messages: int | float = float('inf'), max_message_length: int | float = float('inf'), **kwargs)
get_messages(id: str, container_id_type: str = 'chat', start_time: int | None = None, end_time: int | None = None, sort_type: str = 'ByCreateTimeAsc', page_size: int = 50, page_token: str | None = None, **kwargs)
get_messages(id: str, container_id_type: str = 'chat', sort_type: str = 'ByCreateTimeDesc', max_num_messages: int | float = float('inf'), max_message_length: int | float = float('inf'), start_time: int | None = None, end_time: int | None = None, page_size: int = 50, page_token: str | None = None, **kwargs) -> NestedDict
获取消息
当 id
以 om_
开头时,获取消息及其回复链中所有消息的内容。
当 id
以其他方式开头时,获取会话历史消息。
Parameters:
Name | Type | Description | Default |
---|---|---|---|
|
str
|
消息 ID / 会话 ID |
required |
|
str
|
容器 ID 类型。默认为 |
'chat'
|
|
str
|
排序方式。默认为 |
'ByCreateTimeDesc'
|
|
int | float
|
最大历史消息数量。默认为正无穷。
只用于 |
float('inf')
|
|
int | float
|
最大历史消息长度。默认为正无穷。
只用于 |
float('inf')
|
|
int | None
|
开始时间。默认为 |
None
|
|
int | None
|
结束时间。默认为 |
None
|
|
int
|
每页数量。默认为 50。
只用于 |
50
|
|
str | None
|
分页标识。默认为 |
None
|
功能 | 实现函数 |
---|---|
获取消息及其回复链中所有消息的内容 | feishu.im.messages.get_messages_chain |
获取会话历史消息 | feishu.im.messages.get_messages_history |
Source code in feishu/im/messages.py
get_messages_chain
¶
get_messages_chain(message_id: str, sort_type: str = 'ByCreateTimeDesc', max_num_messages: int | float = float('inf'), max_message_length: int | float = float('inf'), **kwargs)
获取消息及其回复链中所有消息的内容
Parameters:
Name | Type | Description | Default |
---|---|---|---|
|
str
|
消息 ID |
required |
|
int | float
|
最大历史消息数量。默认为正无穷。 |
float('inf')
|
|
int | float
|
最大历史消息长度。默认为正无穷。 |
float('inf')
|
|
str
|
排序方式。默认为 |
'ByCreateTimeDesc'
|
飞书文档
Source code in feishu/im/messages.py
get_messages_history
¶
get_messages_history(container_id: str, container_id_type: str = 'chat', sort_type: str = 'ByCreateTimeDesc', start_time: int | None = None, end_time: int | None = None, page_size: int = 50, page_token: str | None = None, **kwargs)
获取会话历史消息
Parameters:
Name | Type | Description | Default |
---|---|---|---|
|
str
|
会话 ID |
required |
|
str
|
会话 ID 类型。默认为 |
'chat'
|
|
int | None
|
开始时间。默认为 |
None
|
|
int | None
|
结束时间。默认为 |
None
|
|
str
|
排序方式。默认为 |
'ByCreateTimeDesc'
|
|
int
|
每页数量。默认为 50。 |
50
|
|
str | None
|
分页标识。默认为 |
None
|
飞书文档
Source code in feishu/im/messages.py
forward_message
¶
forward_message(message_id: str, receive_id: str, receive_id_type: str | None = None, uuid: str = '', **kwargs)
forward_message(message_id_list: list[str], receive_id: str, receive_id_type: str | None = None, uuid: str = '', **kwargs)
forward_message(message_id: str | list[str], receive_id: str, receive_id_type: str | None = None, uuid: str = '', **kwargs) -> NestedDict
转发消息
当 message_id
为列表时,合并转发消息。
否则,转发消息。
Parameters:
Name | Type | Description | Default |
---|---|---|---|
|
str | list[str]
|
消息 ID |
required |
|
str
|
接收者 ID |
required |
|
str | None
|
接收者 ID 类型。会根据 |
None
|
功能 | 实现函数 |
---|---|
转发消息 | feishu.im.messages.forward_message |
合并转发多条消息 | feishu.im.messages.forward_message_list |
Source code in feishu/im/messages.py
forward_message_list
¶
forward_message_list(message_id_list: list[str], receive_id: str, receive_id_type: str | None = None, uuid: str = '', **kwargs)
合并转发消息
Parameters:
Name | Type | Description | Default |
---|---|---|---|
|
list[str]
|
消息 ID 列表 |
required |
|
str
|
接收者 ID |
required |
|
str | None
|
接收者 ID 类型。会根据 |
None
|
飞书文档
Source code in feishu/im/messages.py
read_users
¶
read_users(message_id: str, user_id_type: str = 'open_id', **kwargs)
查询消息已读信息
Parameters:
Name | Type | Description | Default |
---|---|---|---|
|
str
|
消息 ID |
required |
|
str
|
用户 ID 类型。默认为 |
'open_id'
|
飞书文档
Source code in feishu/im/messages.py
push_follow_up
¶
push_follow_up(message_id: str, follow_ups: str | dict, **kwargs)
添加跟随气泡
Parameters:
Name | Type | Description | Default |
---|---|---|---|
|
str
|
消息 ID |
required |
|
str | dict
|
跟随气泡内容 |
required |