Skip to main content

OrdrWebsocket

Struct OrdrWebsocket 

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

Connection to the o!rdr websocket.

Await events with OrdrWebsocket::next_event.

To gracefully shut the connection down, use OrdrWebsocket::disconnect.

Verified bots that should also receive events about their private and unlisted renders must call OrdrWebsocket::authenticate after connecting.

Implementations§

Source§

impl OrdrWebsocket

Source

pub async fn connect() -> Result<Self, WebsocketError>

Connect to the o!rdr websocket.

Source

pub async fn next_event(&mut self) -> Result<RawEvent, WebsocketError>

Await the next o!rdr websocket event.

This can block indefinitely when the connection is alive but no events arrive, so apply an idle timeout around it if that should count as a dead connection.

Source

pub async fn authenticate(&mut self, key: &str) -> Result<(), WebsocketError>

Authenticate this connection as a verified bot.

Emits the bot_auth event with the bot’s API key and waits for the server’s reply on the same event. Once authenticated, events about the bot’s private and unlisted renders are included in the stream.

Like OrdrWebsocket::next_event, this can block indefinitely while the connection is alive. Events that arrive before the authentication reply are dropped.

Source

pub async fn disconnect(self) -> Result<(), WebsocketError>

Gracefully disconnect from the websocket.

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> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

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

fn try_from(value: U) -> Result<T, !>

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<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more