pub struct SseSubscriber { /* private fields */ }Expand description
SSE subscriber for OpenCode events.
Implementations§
Source§impl SseSubscriber
impl SseSubscriber
Sourcepub fn new(
base_url: String,
directory: Option<String>,
workspace: Option<String>,
last_event_id: Arc<RwLock<Option<String>>>,
) -> Self
pub fn new( base_url: String, directory: Option<String>, workspace: Option<String>, last_event_id: Arc<RwLock<Option<String>>>, ) -> Self
Create a new SSE subscriber.
Sourcepub fn subscribe_session(
&self,
session_id: &str,
opts: SseOptions,
) -> Result<SseSubscription<Event>>
pub fn subscribe_session( &self, session_id: &str, opts: SseOptions, ) -> Result<SseSubscription<Event>>
Subscribe to events, optionally filtered by session ID.
OpenCode’s /event endpoint streams all events for the configured directory.
If session_id is provided, events will be filtered client-side to only
include events for that session.
§Errors
Returns an error if the subscription cannot be created.
Sourcepub fn subscribe(&self, opts: SseOptions) -> Result<SseSubscription<Event>>
pub fn subscribe(&self, opts: SseOptions) -> Result<SseSubscription<Event>>
Subscribe to all events for the configured directory.
This uses the /event endpoint which streams all events for the
directory specified via query parameters.
§Errors
Returns an error if the subscription cannot be created.
Sourcepub fn subscribe_global(
&self,
opts: SseOptions,
) -> Result<SseSubscription<GlobalEvent>>
pub fn subscribe_global( &self, opts: SseOptions, ) -> Result<SseSubscription<GlobalEvent>>
Subscribe to global events (all directories).
This uses the /global/event endpoint which streams events from all
OpenCode instances across all directories. Events are wrapped in a
GlobalEvent values with directory/workspace context.
§Errors
Returns an error if the subscription cannot be created.
Trait Implementations§
Source§impl Clone for SseSubscriber
impl Clone for SseSubscriber
Source§fn clone(&self) -> SseSubscriber
fn clone(&self) -> SseSubscriber
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more