Struct WebSocketClient

Source
pub struct WebSocketClient { /* private fields */ }
Expand description

Asynchronous WebSocket-based client for Misskey.

WebSocketClient can be constructed using WebSocketClient::connect or WebSocketClientBuilder. The latter is more flexible and intuitive.

You do not have to wrap this in Arc and Mutex to share it because WebSocketClient is already Clone and every methods of WebSocketClient takes &self, i.e. they does not require mutability.

Implementations§

Source§

impl WebSocketClient

Source

pub async fn connect(url: Url) -> Result<WebSocketClient, Error>

Connects to Misskey using WebSocket, and returns WebSocketClient.

Source

pub async fn connect_with_config( url: Url, reconnect_config: ReconnectConfig, ) -> Result<WebSocketClient, Error>

Connects to Misskey using WebSocket with a given reconnect configuration, and returns WebSocketClient.

Source

pub fn builder<T>(url: T) -> WebSocketClientBuilder
where T: TryInto<Url>, T::Error: Into<Error>,

Creates a new builder instance with url. All configurations are set to default.

This function is identical to WebSocketClientBuilder::new.

Source

pub fn subnote<E, Id>( &self, note_id: Id, ) -> BoxFuture<'static, Result<SubNote<E>, Error>>
where E: SubNoteEvent, Id: Into<String>,

Captures the note specified by id.

The returned SubNote implements Stream so that note events can be retrieved asynchronously via it.

Source

pub fn channel<R>( &self, request: R, ) -> BoxFuture<'static, Result<Channel<R::Incoming, R::Outgoing>, Error>>

Connects to the channel using request.

The returned Channel implements Stream and Sink so that you can exchange messages with channels on it.

Source

pub fn broadcast<E>(&self) -> BoxFuture<'static, Result<Broadcast<E>, Error>>
where E: BroadcastEvent,

Receive messages from the broadcast stream.

The returned Broadcast implements Stream so that broadcast events can be retrieved asynchronously via it.

Trait Implementations§

Source§

impl Client for WebSocketClient

Source§

type Error = Error

The error type produced by the client when an error occurs.
Source§

fn request<R: Request>( &self, request: R, ) -> BoxFuture<'_, Result<ApiResult<R::Response>, Error>>

Dispatch an API request. Read more
Source§

impl Clone for WebSocketClient

Source§

fn clone(&self) -> WebSocketClient

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for WebSocketClient

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl StreamingClient for WebSocketClient

Source§

type Error = Error

The error type produced by the client when an error occurs.
Source§

fn subnote<E>( &self, note_id: String, ) -> BoxFuture<'_, Result<BoxStream<'_, Result<E, Error>>, Error>>
where E: SubNoteEvent,

Captures the note specified by note_id.
Source§

fn channel<R>( &self, request: R, ) -> BoxFuture<'_, Result<ChannelStream<'_, R, Error>, Error>>

Connects to the channel using request.
Source§

fn broadcast<E>( &self, ) -> BoxFuture<'_, Result<BoxStream<'_, Result<E, Error>>, Error>>
where E: BroadcastEvent,

Receive messages from the broadcast stream.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> ErasedDestructor for T
where T: 'static,