Skip to main content

origin_sdk/protocol/
common.rs

1use serde::{Deserialize, Serialize};
2
3use crate::protocol::errors::OriginError;
4
5#[derive(Debug, Serialize, Deserialize)]
6pub struct ErrorSuccess {
7    #[serde(rename = "@Code")]
8    pub code: OriginError,
9    #[serde(rename = "@Description")]
10    pub description: String,
11}
12
13#[derive(Debug, Serialize, Deserialize)]
14pub struct Event {
15    #[serde(rename = "@EventId")]
16    pub event_id: String,
17    #[serde(rename = "EventParam", default)]
18    pub attributes: Vec<EventParam>,
19}
20
21#[derive(Debug, Serialize, Deserialize)]
22pub struct EventParam {
23    #[serde(rename = "@Name")]
24    pub name: String,
25    #[serde(rename = "@Value")]
26    pub value: String,
27}
28
29#[derive(Debug, Serialize, Deserialize)]
30pub enum Facility {
31    #[serde(rename = "SDK")]
32    Sdk,
33    #[serde(rename = "PROFILE")]
34    Profile,
35    #[serde(rename = "PRESENCE")]
36    Presence,
37    #[serde(rename = "FRIENDS")]
38    Friends,
39    #[serde(rename = "COMMERCE")]
40    Commerce,
41    #[serde(rename = "RECENTPLAYER")]
42    RecentPlayer,
43    #[serde(rename = "IGO")]
44    Igo,
45    #[serde(rename = "MISC")]
46    Misc,
47    #[serde(rename = "LOGIN")]
48    Login,
49    #[serde(rename = "UTILITY")]
50    Utility,
51    #[serde(rename = "XMPP")]
52    Xmpp,
53    #[serde(rename = "CHAT")]
54    Chat,
55    #[serde(rename = "IGO_EVENT")]
56    IgoEvent,
57    #[serde(rename = "EALS_EVENTS")]
58    EalsEvents,
59    #[serde(rename = "LOGIN_EVENT")]
60    LoginEvent,
61    #[serde(rename = "INVITE_EVENT")]
62    InviteEvent,
63    #[serde(rename = "PROFILE_EVENT")]
64    ProfileEvent,
65    #[serde(rename = "PRESENCE_EVENT")]
66    PresenceEvent,
67    #[serde(rename = "FRIENDS_EVENT")]
68    FriendsEvent,
69    #[serde(rename = "COMMERCE_EVENT")]
70    CommerceEvent,
71    #[serde(rename = "CHAT_EVENT")]
72    ChatEvent,
73    #[serde(rename = "DOWNLOAD_EVENT")]
74    DownloadEvent,
75    #[serde(rename = "PERMISSION")]
76    Permission,
77    #[serde(rename = "RESOURCES")]
78    Resources,
79    #[serde(rename = "BLOCKED_USERS")]
80    BlockedUsers,
81    #[serde(rename = "BLOCKED_USER_EVENT")]
82    BlockedUserEvent,
83    #[serde(rename = "GET_USERID")]
84    GetUserId,
85    #[serde(rename = "ONLINE_STATUS_EVENT")]
86    OnlineStatusEvent,
87    #[serde(rename = "ACHIEVEMENT")]
88    Achievement,
89    #[serde(rename = "ACHIEVEMENT_EVENT")]
90    AchievementEvent,
91    #[serde(rename = "BROADCAST_EVENT")]
92    BroadcastEvent,
93    #[serde(rename = "PROGRESSIVE_INSTALLATION")]
94    ProgressiveInstallation,
95    #[serde(rename = "PROGRESSIVE_INSTALLATION_EVENT")]
96    ProgressiveInstallationEvent,
97    #[serde(rename = "CONTENT")]
98    Content,
99}
100
101#[derive(Debug, Serialize, Deserialize)]
102pub struct Image {
103    #[serde(rename = "@ImageId")]
104    pub image_id: String,
105    #[serde(rename = "@Width")]
106    pub width: i32,
107    #[serde(rename = "@Height")]
108    pub height: i32,
109    #[serde(rename = "@ResourcePath")]
110    pub resource_path: String,
111}
112
113#[derive(Debug, Serialize, Deserialize)]
114pub struct QueryImage {
115    #[serde(rename = "@ImageId")]
116    pub image_id: String,
117    #[serde(rename = "@Width")]
118    pub width: i32,
119    #[serde(rename = "@Height")]
120    pub height: i32,
121}
122
123#[derive(Debug, Serialize, Deserialize)]
124pub struct QueryImageResponse {
125    #[serde(rename = "@Result")]
126    pub result: i32,
127    #[serde(rename = "Image", default)]
128    pub images: Vec<Image>,
129}