pub struct CSGOClient<'a> { /* private fields */ }Expand description
CS:GO Service for interacting with the Game Coordinator and Matchmaking Service.
Implementations§
Source§impl<'a> CSGOClient<'a>
impl<'a> CSGOClient<'a>
pub fn new(client: &'a mut SteamClient) -> Self
Sourcepub async fn send_hello(&mut self) -> Result<(), SteamError>
pub async fn send_hello(&mut self) -> Result<(), SteamError>
Send a hello message to the CS:GO Game Coordinator.
This is required to start a session with the CS:GO GC.
Sourcepub async fn get_player_profile(
&mut self,
steam_id: SteamID,
) -> Result<Vec<CsgoClientHello>, SteamError>
pub async fn get_player_profile( &mut self, steam_id: SteamID, ) -> Result<Vec<CsgoClientHello>, SteamError>
Request a player’s CS:GO profile and await the response.
Sends a ClientRequestPlayersProfile message to the GC and waits for
the PlayersProfile response (usually takes 400-800ms).
Returns the parsed profile(s).
Sourcepub async fn party_search(
&mut self,
prime: bool,
game_type: u32,
) -> Result<Vec<CsgoPartyEntry>, SteamError>
pub async fn party_search( &mut self, prime: bool, game_type: u32, ) -> Result<Vec<CsgoPartyEntry>, SteamError>
Initiate a party search and return the results.
Sends a Party_Search request to the CS:GO GC and waits for the Party_SearchResults response.
Sourcepub async fn create_lobby(
&mut self,
max_members: i32,
lobby_type: i32,
) -> Result<u64, SteamError>
pub async fn create_lobby( &mut self, max_members: i32, lobby_type: i32, ) -> Result<u64, SteamError>
Create a lobby via Matchmaking Service (MMS).
Sourcepub async fn invite_to_lobby(
&mut self,
lobby_id: u64,
user_id: SteamID,
) -> Result<(), SteamError>
pub async fn invite_to_lobby( &mut self, lobby_id: u64, user_id: SteamID, ) -> Result<(), SteamError>
Invite a user to a lobby.
Sourcepub async fn set_rich_presence(
&mut self,
rp: &CsgoRichPresence,
) -> Result<(), SteamError>
pub async fn set_rich_presence( &mut self, rp: &CsgoRichPresence, ) -> Result<(), SteamError>
Set CS:GO Rich Presence (Fake Score).
This allows setting competitive rank, wins, and other status information that appears on the friends list.
Sourcepub async fn join_lobby(
&mut self,
lobby_id: u64,
) -> Result<JoinLobbyResult, SteamError>
pub async fn join_lobby( &mut self, lobby_id: u64, ) -> Result<JoinLobbyResult, SteamError>
Join an existing lobby.
Returns detailed information about the lobby including current members.
Sourcepub async fn leave_lobby(&mut self, lobby_id: u64) -> Result<(), SteamError>
pub async fn leave_lobby(&mut self, lobby_id: u64) -> Result<(), SteamError>
Leave a lobby.
Sourcepub async fn update_lobby(
&mut self,
lobby_id: u64,
config: &LobbyConfig,
) -> Result<u64, SteamError>
pub async fn update_lobby( &mut self, lobby_id: u64, config: &LobbyConfig, ) -> Result<u64, SteamError>
Update lobby settings and metadata.
Use this to change lobby configuration after creation.
Sourcepub async fn get_lobby_data(
&mut self,
lobby_id: u64,
) -> Result<LobbyData, SteamError>
pub async fn get_lobby_data( &mut self, lobby_id: u64, ) -> Result<LobbyData, SteamError>
Get data about a specific lobby.
Returns lobby details including members, settings, and metadata.
Sourcepub async fn create_and_invite(
&mut self,
config: &LobbyConfig,
users: &[SteamID],
) -> Result<u64, SteamError>
pub async fn create_and_invite( &mut self, config: &LobbyConfig, users: &[SteamID], ) -> Result<u64, SteamError>
Create a lobby, update its settings, then invite users.
This is a convenience method that combines create_lobby, update_lobby, and invite_to_lobby into a single workflow.
Sourcepub async fn party_register(
&mut self,
prime: bool,
game_type: u32,
) -> Result<(), SteamError>
pub async fn party_register( &mut self, prime: bool, game_type: u32, ) -> Result<(), SteamError>
Register a party (L2P advertisement) with the CS:GO GC.
This makes the account visible in the “Looking to Play” dashboard.
Sourcepub async fn acknowledge_penalty(&mut self) -> Result<(), SteamError>
pub async fn acknowledge_penalty(&mut self) -> Result<(), SteamError>
Acknowledge a competitive cooldown/penalty with the CS:GO GC.
This is equivalent to clicking the “Acknowledge” button in the CS:GO UI to clear the penalty banner after a cooldown has expired.
Auto Trait Implementations§
impl<'a> Freeze for CSGOClient<'a>
impl<'a> !RefUnwindSafe for CSGOClient<'a>
impl<'a> Send for CSGOClient<'a>
impl<'a> Sync for CSGOClient<'a>
impl<'a> Unpin for CSGOClient<'a>
impl<'a> UnsafeUnpin for CSGOClient<'a>
impl<'a> !UnwindSafe for CSGOClient<'a>
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more