StreamerProtocol 类
可以发送活动的流式传输区块的组件。
构造函数
StreamerProtocol(*args, **kwargs)
方法
| clear_text |
放弃到目前为止累积的任何文本,以便最终活动仅使用卡片。 |
| close |
关闭流。 |
| emit |
发出活动区块。 |
| on_chunk |
为区块事件注册处理程序。 |
| on_close |
注册用于关闭事件的处理程序。 |
| update |
在发出之前发送状态更新(例如“思考...”)。 |
clear_text
放弃到目前为止累积的任何文本,以便最终活动仅使用卡片。
clear_text() -> None
close
关闭流。
async close() -> SentActivity | None
emit
发出活动区块。
emit(activity: MessageActivityInput | TypingActivityInput | str) -> None
参数
| 名称 | 说明 |
|---|---|
|
activity
必需
|
|
on_chunk
为区块事件注册处理程序。
on_chunk(handler: Callable[[SentActivity], Awaitable[None]]) -> None
参数
| 名称 | 说明 |
|---|---|
|
handler
必需
|
将为每个区块活动调用的异步函数 |
on_close
注册用于关闭事件的处理程序。
on_close(handler: Callable[[SentActivity], Awaitable[None]]) -> None
参数
| 名称 | 说明 |
|---|---|
|
handler
必需
|
流关闭时将调用的异步函数 |
update
在发出之前发送状态更新(例如“思考...”)。
update(text: str) -> None
参数
| 名称 | 说明 |
|---|---|
|
text
必需
|
要发送的状态文本。 |
属性
canceled
流是否已取消。 例如,当用户按下“停止”按钮或超过 2 分钟的超时时间时。
closed
是否发送了最终流消息。
count
要发送的区块总数。
sequence
序列号,表示发送的流活动数。
由于 API 速率限制的差异,可以将多个区块聚合到一个流活动中。