origin_sdk/protocol/
profile.rs1use serde::{Deserialize, Serialize};
2
3use crate::protocol::user::User;
4
5#[derive(Debug, Serialize, Deserialize)]
6pub struct GetProfile {
7 #[serde(rename = "@index")]
8 pub index: i32,
9}
10
11#[derive(Debug, Serialize, Deserialize)]
12pub struct GetProfileResponse {
13 #[serde(rename = "@UserIndex")]
14 pub user_index: i32,
15 #[serde(rename = "@UserId")]
16 pub user_id: u64,
17 #[serde(rename = "@PersonaId")]
18 pub persona_id: u64,
19 #[serde(rename = "@Persona")]
20 pub persona: String,
21 #[serde(rename = "@AvatarId")]
22 pub avatar_id: String,
23 #[serde(rename = "@Country")]
24 pub country: String,
25 #[serde(rename = "@IsUnderAge")]
26 pub is_under_age: bool,
27 #[serde(rename = "@IsSubscriber")]
28 pub is_subscriber: bool,
29 #[serde(rename = "@IsTrialSubscriber")]
30 pub is_trial_subscriber: bool,
31 #[serde(rename = "@SubscriberLevel")]
32 pub subscriber_level: i32,
33 #[serde(rename = "@GeoCountry")]
34 pub geo_country: String,
35 #[serde(rename = "@CommerceCountry")]
36 pub commerce_country: String,
37 #[serde(rename = "@CommerceCurrency")]
38 pub commerce_currency: String,
39 #[serde(rename = "@IsSteamSubscriber")]
40 pub is_steam_subscriber: bool,
41}
42
43#[derive(Debug, Serialize, Deserialize)]
44pub struct GetUserProfileByEmailorEaid {
45 #[serde(rename = "@KeyWord")]
46 pub key_word: String,
47}
48
49#[derive(Debug, Serialize, Deserialize)]
50pub struct GetUserProfileByEmailorEaidResponse {
51 #[serde(rename = "@Return")]
52 pub r#return: String,
53 #[serde(rename = "User", default)]
54 pub user: Vec<User>,
55}
56
57#[derive(Debug, Serialize, Deserialize)]
58pub struct ProfileEvent {
59 #[serde(rename = "@Changed")]
60 pub changed: ProfileStateChange,
61 #[serde(rename = "@UserId")]
62 pub user_id: u64,
63}
64
65#[derive(Debug, Serialize, Deserialize)]
66pub enum ProfileStateChange {
67 #[serde(rename = "UNKNOWN")]
68 Unknown,
69 #[serde(rename = "EAID")]
70 Eaid,
71 #[serde(rename = "AVATAR")]
72 Avatar,
73 #[serde(rename = "SUBSCRIPTION")]
74 Subscription,
75}