pub trait PluginStreamMessage {
// Required methods
fn send_message_stream_start(
&self,
stream_type: &str,
metadata: Option<&str>,
) -> Result<String, StreamError>;
fn send_message_stream(
&self,
stream_id: &str,
chunk: &str,
is_final: bool,
) -> Result<(), StreamError>;
fn send_message_stream_end(
&self,
stream_id: &str,
success: bool,
error_msg: Option<&str>,
) -> Result<(), StreamError>;
fn send_message_stream_pause(
&self,
stream_id: &str,
) -> Result<(), StreamError>;
fn send_message_stream_resume(
&self,
stream_id: &str,
) -> Result<(), StreamError>;
fn send_message_stream_cancel(
&self,
stream_id: &str,
) -> Result<(), StreamError>;
fn get_stream_status(&self, stream_id: &str) -> Option<StreamStatus>;
fn list_active_streams(&self) -> Vec<String>;
fn send_message_stream_batch(
&self,
stream_id: &str,
chunks: &[&str],
) -> Result<(), StreamError>;
}
Expand description
插件流式消息发送器
Required Methods§
Sourcefn send_message_stream_start(
&self,
stream_type: &str,
metadata: Option<&str>,
) -> Result<String, StreamError>
fn send_message_stream_start( &self, stream_type: &str, metadata: Option<&str>, ) -> Result<String, StreamError>
开始流式传输,返回流ID
Sourcefn send_message_stream(
&self,
stream_id: &str,
chunk: &str,
is_final: bool,
) -> Result<(), StreamError>
fn send_message_stream( &self, stream_id: &str, chunk: &str, is_final: bool, ) -> Result<(), StreamError>
发送流式数据块
Sourcefn send_message_stream_end(
&self,
stream_id: &str,
success: bool,
error_msg: Option<&str>,
) -> Result<(), StreamError>
fn send_message_stream_end( &self, stream_id: &str, success: bool, error_msg: Option<&str>, ) -> Result<(), StreamError>
结束流式传输
Sourcefn send_message_stream_pause(&self, stream_id: &str) -> Result<(), StreamError>
fn send_message_stream_pause(&self, stream_id: &str) -> Result<(), StreamError>
暂停流式传输
Sourcefn send_message_stream_resume(&self, stream_id: &str) -> Result<(), StreamError>
fn send_message_stream_resume(&self, stream_id: &str) -> Result<(), StreamError>
恢复流式传输
Sourcefn send_message_stream_cancel(&self, stream_id: &str) -> Result<(), StreamError>
fn send_message_stream_cancel(&self, stream_id: &str) -> Result<(), StreamError>
取消流式传输
Sourcefn get_stream_status(&self, stream_id: &str) -> Option<StreamStatus>
fn get_stream_status(&self, stream_id: &str) -> Option<StreamStatus>
获取流状态
Sourcefn list_active_streams(&self) -> Vec<String>
fn list_active_streams(&self) -> Vec<String>
列出活跃的流
Sourcefn send_message_stream_batch(
&self,
stream_id: &str,
chunks: &[&str],
) -> Result<(), StreamError>
fn send_message_stream_batch( &self, stream_id: &str, chunks: &[&str], ) -> Result<(), StreamError>
批量发送流式数据