pub struct ActivityResponseData {
pub activity: ActivityPayload,
/* private fields */
}Expand description
Data received in response from the server after sending a SET_ACTIVITY command.
Note that this struct doesn’t fully cover the schema of the actual response since most of the fields that are found are the same as the actual activity that is sent.
More importantly, open-source implementations of RPC (e.g. arRPC) have different response styles so the actual output of this struct may vary depending on what client you are using.
Fields§
§activity: ActivityPayloadThe activity payload which came in response to the send.
Implementations§
Source§impl ActivityResponseData
impl ActivityResponseData
Sourcepub fn application_id(&self) -> Option<&str>
pub fn application_id(&self) -> Option<&str>
The ID of the application
Sourcepub fn platform(&self) -> Option<&str>
pub fn platform(&self) -> Option<&str>
The platform of the host.
Examples found in repository?
examples/indefinite.rs (line 20)
8async fn main() -> Result<(), PresenceError> {
9 let mut runner = PresenceRunner::new("1463450870480900160")
10 .on_ready(|data| {
11 println!(
12 "RPC version: v{}; Connected to user: {}",
13 data.version(),
14 data.user.global_name().unwrap_or_default(),
15 )
16 })
17 .on_activity_send(|data| {
18 println!(
19 "Activity sent to app! (running on {})\nCreated at: {}",
20 data.platform().unwrap_or_default(),
21 data.activity.created_at()
22 );
23 })
24 .on_disconnect(|f| println!("Disconnected: {f:?}"))
25 .show_errors() // enables verbose error logging
26 .on_retry(move |c| {
27 if c % 10 == 0 {
28 println!("Retry count {c}; is Discord open?");
29 }
30 });
31
32 let client = runner.run(true).await?;
33
34 // the activity can include any combination of builder function calls
35 let activity = Activity::new()
36 .activity_type(ActivityType::Playing)
37 .details("epic game")
38 .details_url("https://github.com/hitblast")
39 .status_display_type(StatusDisplayType::Details)
40 .large_image("game_icon")
41 .large_text("Playing a game")
42 .large_url("https://hitblast.github.io/")
43 .small_image("status")
44 .small_text("Online")
45 .build()?;
46
47 client.set_activity(activity).await?;
48
49 // indefinitely block here
50 runner.wait().await?;
51
52 Ok(())
53}pub fn metadata(&self) -> Option<&Value>
Trait Implementations§
Source§impl Clone for ActivityResponseData
impl Clone for ActivityResponseData
Source§fn clone(&self) -> ActivityResponseData
fn clone(&self) -> ActivityResponseData
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ActivityResponseData
impl Debug for ActivityResponseData
Source§impl<'de> Deserialize<'de> for ActivityResponseData
impl<'de> Deserialize<'de> for ActivityResponseData
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ActivityResponseData
impl RefUnwindSafe for ActivityResponseData
impl Send for ActivityResponseData
impl Sync for ActivityResponseData
impl Unpin for ActivityResponseData
impl UnsafeUnpin for ActivityResponseData
impl UnwindSafe for ActivityResponseData
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