gewe_core/video_account/
scan.rs

1use super::common::{FinderContactProfile, FinderRawData};
2use serde::{Deserialize, Serialize};
3
4#[derive(Debug, Clone, Serialize)]
5#[serde(rename_all = "camelCase")]
6pub struct ScanFollowRequest<'a> {
7    #[serde(rename = "appId")]
8    pub app_id: &'a str,
9    #[serde(rename = "proxyIp")]
10    pub proxy_ip: &'a str,
11    #[serde(rename = "myUserName")]
12    pub my_user_name: &'a str,
13    #[serde(rename = "myRoleType")]
14    pub my_role_type: i32,
15    #[serde(rename = "qrContent")]
16    pub qr_content: &'a str,
17    #[serde(rename = "objectId")]
18    pub object_id: &'a str,
19    #[serde(rename = "objectNonceId")]
20    pub object_nonce_id: &'a str,
21}
22
23#[derive(Debug, Clone, Serialize)]
24#[serde(rename_all = "camelCase")]
25pub struct ScanBrowseRequest<'a> {
26    #[serde(rename = "appId")]
27    pub app_id: &'a str,
28    #[serde(rename = "myUserName")]
29    pub my_user_name: &'a str,
30    #[serde(rename = "myRoleType")]
31    pub my_role_type: i32,
32    #[serde(rename = "qrContent")]
33    pub qr_content: &'a str,
34    #[serde(rename = "objectId")]
35    pub object_id: i64,
36}
37
38#[derive(Debug, Clone, Serialize)]
39#[serde(rename_all = "camelCase")]
40pub struct ScanFavRequest<'a> {
41    #[serde(rename = "appId")]
42    pub app_id: &'a str,
43    #[serde(rename = "myUserName")]
44    pub my_user_name: &'a str,
45    #[serde(rename = "myRoleType")]
46    pub my_role_type: i32,
47    #[serde(rename = "qrContent")]
48    pub qr_content: &'a str,
49    #[serde(rename = "objectId")]
50    pub object_id: i64,
51}
52
53pub type ScanLikeRequest<'a> = ScanFavRequest<'a>;
54
55#[derive(Debug, Clone, Serialize)]
56#[serde(rename_all = "camelCase")]
57pub struct ScanCommentRequest<'a> {
58    #[serde(rename = "appId")]
59    pub app_id: &'a str,
60    #[serde(rename = "myUserName")]
61    pub my_user_name: &'a str,
62    #[serde(rename = "myRoleType")]
63    pub my_role_type: i32,
64    #[serde(rename = "qrContent")]
65    pub qr_content: &'a str,
66    #[serde(rename = "objectId")]
67    pub object_id: i64,
68    #[serde(rename = "commentContent")]
69    pub comment_content: &'a str,
70    #[serde(rename = "replyUsername", skip_serializing_if = "Option::is_none")]
71    pub reply_username: Option<&'a str>,
72    #[serde(rename = "refCommentId", skip_serializing_if = "Option::is_none")]
73    pub ref_comment_id: Option<i64>,
74    #[serde(rename = "rootCommentId", skip_serializing_if = "Option::is_none")]
75    pub root_comment_id: Option<i64>,
76}
77
78#[derive(Debug, Clone, Serialize)]
79#[serde(rename_all = "camelCase")]
80pub struct ScanQrCodeRequest<'a> {
81    #[serde(rename = "appId")]
82    pub app_id: &'a str,
83    #[serde(rename = "myUserName")]
84    pub my_user_name: &'a str,
85    #[serde(rename = "myRoleType")]
86    pub my_role_type: i32,
87    #[serde(rename = "qrContent")]
88    pub qr_content: &'a str,
89}
90
91#[derive(Debug, Clone, Serialize)]
92#[serde(rename_all = "camelCase")]
93pub struct ScanLoginChannelsRequest<'a> {
94    #[serde(rename = "appId")]
95    pub app_id: &'a str,
96    #[serde(rename = "qrContent")]
97    pub qr_content: &'a str,
98}
99
100#[derive(Debug, Clone, Serialize, Deserialize, Default)]
101#[serde(rename_all = "camelCase")]
102pub struct ScanLoginFinderInfo {
103    #[serde(rename = "finderUsername", skip_serializing_if = "Option::is_none")]
104    pub finder_username: Option<String>,
105    #[serde(skip_serializing_if = "Option::is_none")]
106    pub nickname: Option<String>,
107    #[serde(rename = "headImgUrl", skip_serializing_if = "Option::is_none")]
108    pub head_img_url: Option<String>,
109    #[serde(rename = "coverImgUrl", skip_serializing_if = "Option::is_none")]
110    pub cover_img_url: Option<String>,
111    #[serde(rename = "spamFlag", skip_serializing_if = "Option::is_none")]
112    pub spam_flag: Option<i32>,
113    #[serde(rename = "acctType", skip_serializing_if = "Option::is_none")]
114    pub acct_type: Option<i32>,
115    #[serde(rename = "authIconType", skip_serializing_if = "Option::is_none")]
116    pub auth_icon_type: Option<i32>,
117    #[serde(rename = "ownerWxUin", skip_serializing_if = "Option::is_none")]
118    pub owner_wx_uin: Option<i64>,
119    #[serde(rename = "adminNickname", skip_serializing_if = "Option::is_none")]
120    pub admin_nickname: Option<String>,
121    #[serde(rename = "categoryFlag", skip_serializing_if = "Option::is_none")]
122    pub category_flag: Option<String>,
123    #[serde(rename = "uniqId", skip_serializing_if = "Option::is_none")]
124    pub uniq_id: Option<String>,
125    #[serde(rename = "isMasterFinder", skip_serializing_if = "Option::is_none")]
126    pub is_master_finder: Option<bool>,
127}
128
129#[derive(Debug, Clone, Serialize, Deserialize, Default)]
130#[serde(rename_all = "camelCase")]
131pub struct ScanLoginChannelsResponse {
132    #[serde(rename = "sessionId")]
133    pub session_id: String,
134    #[serde(rename = "finderList")]
135    pub finder_list: Vec<ScanLoginFinderInfo>,
136    #[serde(rename = "acctStatus")]
137    pub acct_status: i32,
138}
139
140pub type ScanFollowResponse = FinderContactProfile;
141pub type ScanQrCodeResponse = FinderRawData;
142pub type ScanCommentResponse = FinderRawData;