pub struct Bot {
pub adapter: Arc<dyn Adapter>,
pub ctx: Arc<Context>,
pub platform: String,
pub self_id: String,
pub state: LoginStatus,
pub user: User,
}Expand description
Bot 结构体,代表一个机器人实例
Fields§
§adapter: Arc<dyn Adapter>Bot所属的适配器实例
ctx: Arc<Context>Bot配置 Bot 所在的Context实例
platform: StringBot的所在平台名称
self_id: StringBot在平台上的 ID
state: LoginStatusBot的登录状态
user: UserBot的用户信息
Implementations§
Source§impl Bot
impl Bot
Sourcepub async fn start(self: Arc<Self>) -> FrameworkResult<()>
pub async fn start(self: Arc<Self>) -> FrameworkResult<()>
Sourcepub async fn stop(self: Arc<Self>) -> FrameworkResult<()>
pub async fn stop(self: Arc<Self>) -> FrameworkResult<()>
Sourcepub async fn create_reaction(
&self,
message_id: &str,
channel_id: &str,
emoji: &str,
) -> FrameworkResult<()>
pub async fn create_reaction( &self, message_id: &str, channel_id: &str, emoji: &str, ) -> FrameworkResult<()>
向特定消息添加某个特定表态
Sourcepub async fn delete_reaction(
&self,
message_id: &str,
channel_id: &str,
emoji: &str,
user_id: &str,
) -> FrameworkResult<()>
pub async fn delete_reaction( &self, message_id: &str, channel_id: &str, emoji: &str, user_id: &str, ) -> FrameworkResult<()>
从特定消息删除某个用户添加的特定表态
Sourcepub async fn clear_reaction(
&self,
message_id: &str,
channel_id: &str,
emoji: &str,
) -> FrameworkResult<()>
pub async fn clear_reaction( &self, message_id: &str, channel_id: &str, emoji: &str, ) -> FrameworkResult<()>
从特定消息清除某个特定表态
Sourcepub async fn get_reaction_list(
&self,
message_id: &str,
channel_id: &str,
emoji: &str,
next: Option<&str>,
) -> FrameworkResult<Vec<User>>
pub async fn get_reaction_list( &self, message_id: &str, channel_id: &str, emoji: &str, next: Option<&str>, ) -> FrameworkResult<Vec<User>>
获取添加特定消息的特定表态的用户列表
Sourcepub async fn get_channel(&self, channel_id: &str) -> FrameworkResult<Channel>
pub async fn get_channel(&self, channel_id: &str) -> FrameworkResult<Channel>
获取频道信息
Sourcepub async fn get_channel_list(
&self,
guild_id: &str,
next: Option<&str>,
) -> FrameworkResult<Vec<Channel>>
pub async fn get_channel_list( &self, guild_id: &str, next: Option<&str>, ) -> FrameworkResult<Vec<Channel>>
获取某个群组的频道列表
Sourcepub async fn create_channel(
&self,
guild_id: &str,
data: Channel,
) -> FrameworkResult<Channel>
pub async fn create_channel( &self, guild_id: &str, data: Channel, ) -> FrameworkResult<Channel>
创建群组频道
Sourcepub async fn update_channel(
&self,
channel_id: &str,
data: Channel,
) -> FrameworkResult<()>
pub async fn update_channel( &self, channel_id: &str, data: Channel, ) -> FrameworkResult<()>
修改群组频道
Sourcepub async fn delete_channel(&self, channel_id: &str) -> FrameworkResult<()>
pub async fn delete_channel(&self, channel_id: &str) -> FrameworkResult<()>
删除群组频道
Sourcepub async fn create_direct_channel(
&self,
user_id: &str,
) -> FrameworkResult<Channel>
pub async fn create_direct_channel( &self, user_id: &str, ) -> FrameworkResult<Channel>
创建私聊频道
Sourcepub async fn set_guild_member_role(
&self,
guild_id: &str,
user_id: &str,
role_id: &str,
) -> FrameworkResult<()>
pub async fn set_guild_member_role( &self, guild_id: &str, user_id: &str, role_id: &str, ) -> FrameworkResult<()>
设置群组内用户的角色
Sourcepub async fn unset_guild_member_role(
&self,
guild_id: &str,
user_id: &str,
role_id: &str,
) -> FrameworkResult<()>
pub async fn unset_guild_member_role( &self, guild_id: &str, user_id: &str, role_id: &str, ) -> FrameworkResult<()>
取消群组内用户的角色
Sourcepub async fn get_guild_member_role_list(
&self,
guild_id: &str,
next: Option<&str>,
) -> FrameworkResult<Vec<GuildRole>>
pub async fn get_guild_member_role_list( &self, guild_id: &str, next: Option<&str>, ) -> FrameworkResult<Vec<GuildRole>>
获取群组内用户的角色列表
Sourcepub async fn create_guild_role(
&self,
guild_id: &str,
role_name: &str,
) -> FrameworkResult<GuildRole>
pub async fn create_guild_role( &self, guild_id: &str, role_name: &str, ) -> FrameworkResult<GuildRole>
创建群组角色
Sourcepub async fn update_guild_role(
&self,
guild_id: &str,
role_id: &str,
role: GuildRole,
) -> FrameworkResult<()>
pub async fn update_guild_role( &self, guild_id: &str, role_id: &str, role: GuildRole, ) -> FrameworkResult<()>
修改群组角色
Sourcepub async fn delete_guild_role(
&self,
guild_id: &str,
role_id: &str,
) -> FrameworkResult<()>
pub async fn delete_guild_role( &self, guild_id: &str, role_id: &str, ) -> FrameworkResult<()>
删除群组角色
Sourcepub async fn send_message(
&self,
channel_id: &str,
elements: &[MessageElement],
) -> FrameworkResult<Vec<String>>
pub async fn send_message( &self, channel_id: &str, elements: &[MessageElement], ) -> FrameworkResult<Vec<String>>
向特定频道发送消息
Sourcepub async fn send_private_message(
&self,
user_id: &str,
guild_id: &str,
elements: &[MessageElement],
) -> FrameworkResult<Vec<String>>
pub async fn send_private_message( &self, user_id: &str, guild_id: &str, elements: &[MessageElement], ) -> FrameworkResult<Vec<String>>
向特定用户发送私信
Sourcepub async fn get_message(
&self,
channel_id: &str,
message_id: &str,
) -> FrameworkResult<Message>
pub async fn get_message( &self, channel_id: &str, message_id: &str, ) -> FrameworkResult<Message>
获取特定消息
Sourcepub async fn delete_message(
&self,
channel_id: &str,
message_id: &str,
) -> FrameworkResult<()>
pub async fn delete_message( &self, channel_id: &str, message_id: &str, ) -> FrameworkResult<()>
撤回特定消息
Sourcepub async fn update_message(
&self,
channel_id: &str,
message_id: &str,
elements: &[MessageElement],
) -> FrameworkResult<()>
pub async fn update_message( &self, channel_id: &str, message_id: &str, elements: &[MessageElement], ) -> FrameworkResult<()>
修改特定消息
Sourcepub async fn get_message_list(
&self,
channel_id: &str,
next: Option<&str>,
directory: Option<&str>,
) -> FrameworkResult<Vec<Message>>
pub async fn get_message_list( &self, channel_id: &str, next: Option<&str>, directory: Option<&str>, ) -> FrameworkResult<Vec<Message>>
获取频道消息列表
Sourcepub async fn broadcast(
&self,
channels: Vec<String>,
elements: &[MessageElement],
) -> FrameworkResult<()>
pub async fn broadcast( &self, channels: Vec<String>, elements: &[MessageElement], ) -> FrameworkResult<()>
向多个频道广播消息
Sourcepub async fn get_user(&self, user_id: &str) -> FrameworkResult<User>
pub async fn get_user(&self, user_id: &str) -> FrameworkResult<User>
获取用户信息
Sourcepub async fn get_friend_list(
&self,
next: Option<&str>,
) -> FrameworkResult<Vec<User>>
pub async fn get_friend_list( &self, next: Option<&str>, ) -> FrameworkResult<Vec<User>>
获取机器人的好友列表
Sourcepub async fn handle_friend_request(
&self,
message_id: &str,
accept: bool,
comment: Option<&str>,
) -> FrameworkResult<()>
pub async fn handle_friend_request( &self, message_id: &str, accept: bool, comment: Option<&str>, ) -> FrameworkResult<()>
处理好友请求
Sourcepub async fn get_guild(&self, guild_id: &str) -> FrameworkResult<Guild>
pub async fn get_guild(&self, guild_id: &str) -> FrameworkResult<Guild>
获取群组信息
Sourcepub async fn get_guild_list(
&self,
next: Option<&str>,
) -> FrameworkResult<Vec<Guild>>
pub async fn get_guild_list( &self, next: Option<&str>, ) -> FrameworkResult<Vec<Guild>>
获取机器人加入的群组列表
Sourcepub async fn handle_guild_invite(
&self,
message_id: &str,
accept: bool,
comment: Option<&str>,
) -> FrameworkResult<()>
pub async fn handle_guild_invite( &self, message_id: &str, accept: bool, comment: Option<&str>, ) -> FrameworkResult<()>
处理来自群组的邀请
Sourcepub async fn get_guild_member(
&self,
guild_id: &str,
user_id: &str,
) -> FrameworkResult<GuildMember>
pub async fn get_guild_member( &self, guild_id: &str, user_id: &str, ) -> FrameworkResult<GuildMember>
获取群成员信息
Sourcepub async fn get_guild_member_list(
&self,
guild_id: &str,
next: Option<&str>,
) -> FrameworkResult<Vec<GuildMember>>
pub async fn get_guild_member_list( &self, guild_id: &str, next: Option<&str>, ) -> FrameworkResult<Vec<GuildMember>>
获取群成员列表
Sourcepub async fn kick_guild_member(
&self,
guild_id: &str,
user_id: &str,
permanent: Option<bool>,
) -> FrameworkResult<()>
pub async fn kick_guild_member( &self, guild_id: &str, user_id: &str, permanent: Option<bool>, ) -> FrameworkResult<()>
将某个用户踢出群组
Sourcepub async fn mute_guild_member(
&self,
guild_id: &str,
user_id: &str,
duration: Option<u64>,
reason: &str,
) -> FrameworkResult<()>
pub async fn mute_guild_member( &self, guild_id: &str, user_id: &str, duration: Option<u64>, reason: &str, ) -> FrameworkResult<()>
禁言某个用户
Sourcepub async fn handle_guild_request(
&self,
message_id: &str,
accept: bool,
comment: Option<&str>,
) -> FrameworkResult<()>
pub async fn handle_guild_request( &self, message_id: &str, accept: bool, comment: Option<&str>, ) -> FrameworkResult<()>
处理加群请求
Sourcepub async fn get_login(&self) -> FrameworkResult<Login>
pub async fn get_login(&self) -> FrameworkResult<Login>
获取登陆状态
Auto Trait Implementations§
impl !RefUnwindSafe for Bot
impl !UnwindSafe for Bot
impl Freeze for Bot
impl Send for Bot
impl Sync for Bot
impl Unpin for Bot
impl UnsafeUnpin for Bot
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more