origin_sdk/protocol/
auth.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Serialize, Deserialize)]
4pub struct AuthCode {
5 #[serde(rename = "@value")]
6 pub value: String,
7}
8
9#[derive(Debug, Serialize, Deserialize)]
10pub struct AuthToken {
11 #[serde(rename = "@value")]
12 pub value: String,
13}
14
15#[derive(Debug, Serialize, Deserialize)]
16pub struct Challenge {
17 #[serde(rename = "@key")]
18 pub key: String,
19 #[serde(rename = "@version")]
20 pub version: String,
21 #[serde(rename = "@build")]
22 pub build: String,
23}
24
25#[derive(Debug, Serialize, Deserialize)]
26pub struct ChallengeAccepted {
27 #[serde(rename = "@response")]
28 pub response: String,
29}
30
31#[derive(Debug, Serialize, Deserialize)]
32pub struct ChallengeResponse {
33 #[serde(rename = "@response")]
34 pub response: String,
35 #[serde(rename = "@key")]
36 pub key: String,
37 #[serde(rename = "@version")]
38 pub protocol_version: String,
39 #[serde(rename = "ContentId")]
40 pub content_id: String,
41 #[serde(rename = "Title")]
42 pub title: String,
43 #[serde(rename = "MultiplayerId")]
44 pub multiplayer_id: String,
45 #[serde(rename = "Language")]
46 pub language: String,
47 #[serde(rename = "Version")]
48 pub sdk_version: String,
49}
50
51#[derive(Debug, Serialize, Deserialize)]
52pub struct GetAuthCode {
53 #[serde(rename = "@UserId")]
54 pub user_id: u64,
55 #[serde(rename = "@ClientId")]
56 pub client_id: String,
57 #[serde(rename = "@Scope")]
58 pub scope: String,
59 #[serde(rename = "@AppendAuthSource")]
60 pub append_auth_source: bool,
61}
62
63#[derive(Debug, Serialize, Deserialize)]
64pub struct GetAuthToken;
65
66#[derive(Debug, Serialize, Deserialize)]
67pub struct Login {
68 #[serde(rename = "@IsLoggedIn")]
69 pub is_logged_in: bool,
70 #[serde(rename = "@UserIndex")]
71 pub user_index: i32,
72 #[serde(rename = "@LoginReasonCode")]
73 pub login_reason_code: LoginReasonCode,
74}
75
76#[derive(Debug, Serialize, Deserialize)]
77pub enum LoginReasonCode {
78 #[serde(rename = "UNDEFINED")]
79 Undefined,
80 #[serde(rename = "USER_INITIATED")]
81 UserInitiated,
82 #[serde(rename = "ALREADY_ONLINE")]
83 AlreadyOnline,
84 #[serde(rename = "NETWORK_ERROR")]
85 NetworkError,
86 #[serde(rename = "INVALID_CREDENTIALS")]
87 InvalidCredentials,
88 #[serde(rename = "ACCESSTOKEN_REFRESH_ERROR")]
89 AccesstokenRefreshError,
90}
91
92#[derive(Debug, Serialize, Deserialize)]
93pub struct Logout {
94 #[serde(rename = "@UserIndex")]
95 pub user_index: i32,
96}
97
98#[derive(Debug, Serialize, Deserialize)]
99pub struct PostWincodes {
100 #[serde(rename = "Code", default)]
101 pub codes: Vec<Wincode>,
102 #[serde(rename = "@AuthCode")]
103 pub auth_code: String,
104 #[serde(rename = "@UserId")]
105 pub user_id: u64,
106 #[serde(rename = "@PersonaId")]
107 pub persona_id: u64,
108}
109
110#[derive(Debug, Serialize, Deserialize)]
111pub struct Wincode {
112 #[serde(rename = "@key")]
113 pub key: String,
114 #[serde(rename = "@value")]
115 pub value: String,
116}