Skip to main content

Session

Struct Session 

Source
pub struct Session {
Show 21 fields pub app: Arc<Context>, pub bot: Arc<Bot>, pub channel: Channel, pub event: SessionEvent, pub user: User, pub author: Author, pub channel_id: String, pub channel_name: String, pub content: String, pub elements: Vec<MessageElement>, pub guild_id: String, pub guild_name: String, pub id: String, pub is_direct: bool, pub message_id: String, pub platform: String, pub quote: Option<Box<Message>>, pub self_id: String, pub timestamp: i64, pub type_: String, pub user_id: String,
}
Expand description

表示一个会话,封装了事件上下文并提供了便捷的交互方法。

Fields§

§app: Arc<Context>

当前会话的应用上下文。

§bot: Arc<Bot>

当前会话绑定的机器人实例。

§channel: Channel

当前会话绑定的频道数据

§event: SessionEvent

会话事件数据

§user: User

当前会话绑定的用户数据

§author: Author§channel_id: String§channel_name: String§content: String§elements: Vec<MessageElement>§guild_id: String§guild_name: String§id: String§is_direct: bool§message_id: String§platform: String§quote: Option<Box<Message>>§self_id: String§timestamp: i64§type_: String§user_id: String

Implementations§

Source§

impl Session

Source

pub fn new(bot: Arc<Bot>, event: SessionEvent) -> Self

创建一个新的会话实例。

§参数
  • bot - Bot 实例的 Arc 引用。
  • event - 触发会话的 SatoriEvent
Source

pub async fn send( &self, elements: &[MessageElement], ) -> FrameworkResult<Vec<String>>

在当前上下文发送消息

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> ErasedDestructor for T
where T: 'static,

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

Source§

type Output = T

Should always be Self
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> 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