@barumetric/contracts 1.2.13 → 1.2.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/gen/ts/auth.ts +43 -0
- package/gen/ts/presence.ts +4 -81
- package/package.json +1 -1
- package/proto/auth.proto +34 -0
- package/proto/presence.proto +2 -49
package/gen/ts/auth.ts
CHANGED
|
@@ -111,6 +111,34 @@ export interface DeviceInfo {
|
|
|
111
111
|
type: string;
|
|
112
112
|
}
|
|
113
113
|
|
|
114
|
+
export interface VkInitResponse {
|
|
115
|
+
url: string;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
export interface VkVerifyRequest {
|
|
119
|
+
idToken: string;
|
|
120
|
+
accessToken: string;
|
|
121
|
+
metadata: SessionMetadata | undefined;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
export interface VkVerifyResponse {
|
|
125
|
+
sessionId?: string | undefined;
|
|
126
|
+
accessToken?: string | undefined;
|
|
127
|
+
refreshToken?: string | undefined;
|
|
128
|
+
sessionToken?: string | undefined;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
export interface VkConsumeRequest {
|
|
132
|
+
sessionId: string;
|
|
133
|
+
metadata: SessionMetadata | undefined;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
export interface VkConsumeResponse {
|
|
137
|
+
accessToken: string;
|
|
138
|
+
refreshToken: string;
|
|
139
|
+
sessionToken: string;
|
|
140
|
+
}
|
|
141
|
+
|
|
114
142
|
export const AUTH_V1_PACKAGE_NAME = "auth.v1";
|
|
115
143
|
|
|
116
144
|
export interface AuthServiceClient {
|
|
@@ -129,6 +157,12 @@ export interface AuthServiceClient {
|
|
|
129
157
|
telegramComplete(request: TelegramCompleteRequest): Observable<TelegramCompleteResponse>;
|
|
130
158
|
|
|
131
159
|
telegramConsume(request: TelegramConsumeRequest): Observable<TelegramConsumeResponse>;
|
|
160
|
+
|
|
161
|
+
vkInit(request: Empty): Observable<VkInitResponse>;
|
|
162
|
+
|
|
163
|
+
vkVerify(request: VkVerifyRequest): Observable<VkVerifyResponse>;
|
|
164
|
+
|
|
165
|
+
vkConsume(request: VkConsumeRequest): Observable<VkConsumeResponse>;
|
|
132
166
|
}
|
|
133
167
|
|
|
134
168
|
export interface AuthServiceController {
|
|
@@ -153,6 +187,12 @@ export interface AuthServiceController {
|
|
|
153
187
|
telegramConsume(
|
|
154
188
|
request: TelegramConsumeRequest,
|
|
155
189
|
): Promise<TelegramConsumeResponse> | Observable<TelegramConsumeResponse> | TelegramConsumeResponse;
|
|
190
|
+
|
|
191
|
+
vkInit(request: Empty): Promise<VkInitResponse> | Observable<VkInitResponse> | VkInitResponse;
|
|
192
|
+
|
|
193
|
+
vkVerify(request: VkVerifyRequest): Promise<VkVerifyResponse> | Observable<VkVerifyResponse> | VkVerifyResponse;
|
|
194
|
+
|
|
195
|
+
vkConsume(request: VkConsumeRequest): Promise<VkConsumeResponse> | Observable<VkConsumeResponse> | VkConsumeResponse;
|
|
156
196
|
}
|
|
157
197
|
|
|
158
198
|
export function AuthServiceControllerMethods() {
|
|
@@ -166,6 +206,9 @@ export function AuthServiceControllerMethods() {
|
|
|
166
206
|
"telegramVerify",
|
|
167
207
|
"telegramComplete",
|
|
168
208
|
"telegramConsume",
|
|
209
|
+
"vkInit",
|
|
210
|
+
"vkVerify",
|
|
211
|
+
"vkConsume",
|
|
169
212
|
];
|
|
170
213
|
for (const method of grpcMethods) {
|
|
171
214
|
const descriptor: any = Reflect.getOwnPropertyDescriptor(constructor.prototype, method);
|
package/gen/ts/presence.ts
CHANGED
|
@@ -13,33 +13,15 @@ export const protobufPackage = "presence.v1";
|
|
|
13
13
|
|
|
14
14
|
export interface GetUserStatusRequest {
|
|
15
15
|
userId: string;
|
|
16
|
+
/** WebSocket connection ID */
|
|
17
|
+
connectionId?: string | undefined;
|
|
16
18
|
}
|
|
17
19
|
|
|
18
20
|
export interface GetUserStatusResponse {
|
|
19
21
|
/** "online" | "away" | "offline" */
|
|
20
22
|
status: string;
|
|
21
23
|
/** timestamp */
|
|
22
|
-
lastSeen:
|
|
23
|
-
/** "web" | "mobile" */
|
|
24
|
-
device: string;
|
|
25
|
-
updatedAt: Timestamp | undefined;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export interface GetUsersStatusRequest {
|
|
29
|
-
userIds: string[];
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
export interface GetUsersStatusResponse {
|
|
33
|
-
statuses: UserStatus[];
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export interface UserStatus {
|
|
37
|
-
userId: string;
|
|
38
|
-
/** "online" | "away" | "offline" */
|
|
39
|
-
status: string;
|
|
40
|
-
lastSeen: number;
|
|
41
|
-
device: string;
|
|
42
|
-
updatedAt: Timestamp | undefined;
|
|
24
|
+
lastSeen: Timestamp | undefined;
|
|
43
25
|
}
|
|
44
26
|
|
|
45
27
|
export interface UpdateStatusRequest {
|
|
@@ -67,30 +49,6 @@ export interface RemoveConnectionResponse {
|
|
|
67
49
|
status: string;
|
|
68
50
|
}
|
|
69
51
|
|
|
70
|
-
export interface SubscribeToStatusRequest {
|
|
71
|
-
/** кто подписывается */
|
|
72
|
-
userId: string;
|
|
73
|
-
/** за какими пользователями следить */
|
|
74
|
-
contactIds: string[];
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
export interface StatusUpdate {
|
|
78
|
-
userId: string;
|
|
79
|
-
/** "online" | "away" | "offline" */
|
|
80
|
-
status: string;
|
|
81
|
-
lastSeen: number;
|
|
82
|
-
device: string;
|
|
83
|
-
updatedAt: Timestamp | undefined;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
export interface UnsubscribeFromStatusRequest {
|
|
87
|
-
userId: string;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
export interface UnsubscribeFromStatusResponse {
|
|
91
|
-
ok: boolean;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
52
|
export const PRESENCE_V1_PACKAGE_NAME = "presence.v1";
|
|
95
53
|
|
|
96
54
|
export interface PresenceServiceClient {
|
|
@@ -98,10 +56,6 @@ export interface PresenceServiceClient {
|
|
|
98
56
|
|
|
99
57
|
getUserStatus(request: GetUserStatusRequest): Observable<GetUserStatusResponse>;
|
|
100
58
|
|
|
101
|
-
/** Получить статусы нескольких пользователей */
|
|
102
|
-
|
|
103
|
-
getUsersStatus(request: GetUsersStatusRequest): Observable<GetUsersStatusResponse>;
|
|
104
|
-
|
|
105
59
|
/** Обновить статус пользователя (heartbeat) */
|
|
106
60
|
|
|
107
61
|
updateStatus(request: UpdateStatusRequest): Observable<UpdateStatusResponse>;
|
|
@@ -109,14 +63,6 @@ export interface PresenceServiceClient {
|
|
|
109
63
|
/** Удалить соединение пользователя (при отключении) */
|
|
110
64
|
|
|
111
65
|
removeConnection(request: RemoveConnectionRequest): Observable<RemoveConnectionResponse>;
|
|
112
|
-
|
|
113
|
-
/** Подписаться на изменения статуса (stream) */
|
|
114
|
-
|
|
115
|
-
subscribeToStatus(request: SubscribeToStatusRequest): Observable<StatusUpdate>;
|
|
116
|
-
|
|
117
|
-
/** Отписаться от изменений статуса */
|
|
118
|
-
|
|
119
|
-
unsubscribeFromStatus(request: UnsubscribeFromStatusRequest): Observable<UnsubscribeFromStatusResponse>;
|
|
120
66
|
}
|
|
121
67
|
|
|
122
68
|
export interface PresenceServiceController {
|
|
@@ -126,12 +72,6 @@ export interface PresenceServiceController {
|
|
|
126
72
|
request: GetUserStatusRequest,
|
|
127
73
|
): Promise<GetUserStatusResponse> | Observable<GetUserStatusResponse> | GetUserStatusResponse;
|
|
128
74
|
|
|
129
|
-
/** Получить статусы нескольких пользователей */
|
|
130
|
-
|
|
131
|
-
getUsersStatus(
|
|
132
|
-
request: GetUsersStatusRequest,
|
|
133
|
-
): Promise<GetUsersStatusResponse> | Observable<GetUsersStatusResponse> | GetUsersStatusResponse;
|
|
134
|
-
|
|
135
75
|
/** Обновить статус пользователя (heartbeat) */
|
|
136
76
|
|
|
137
77
|
updateStatus(
|
|
@@ -143,28 +83,11 @@ export interface PresenceServiceController {
|
|
|
143
83
|
removeConnection(
|
|
144
84
|
request: RemoveConnectionRequest,
|
|
145
85
|
): Promise<RemoveConnectionResponse> | Observable<RemoveConnectionResponse> | RemoveConnectionResponse;
|
|
146
|
-
|
|
147
|
-
/** Подписаться на изменения статуса (stream) */
|
|
148
|
-
|
|
149
|
-
subscribeToStatus(request: SubscribeToStatusRequest): Observable<StatusUpdate>;
|
|
150
|
-
|
|
151
|
-
/** Отписаться от изменений статуса */
|
|
152
|
-
|
|
153
|
-
unsubscribeFromStatus(
|
|
154
|
-
request: UnsubscribeFromStatusRequest,
|
|
155
|
-
): Promise<UnsubscribeFromStatusResponse> | Observable<UnsubscribeFromStatusResponse> | UnsubscribeFromStatusResponse;
|
|
156
86
|
}
|
|
157
87
|
|
|
158
88
|
export function PresenceServiceControllerMethods() {
|
|
159
89
|
return function (constructor: Function) {
|
|
160
|
-
const grpcMethods: string[] = [
|
|
161
|
-
"getUserStatus",
|
|
162
|
-
"getUsersStatus",
|
|
163
|
-
"updateStatus",
|
|
164
|
-
"removeConnection",
|
|
165
|
-
"subscribeToStatus",
|
|
166
|
-
"unsubscribeFromStatus",
|
|
167
|
-
];
|
|
90
|
+
const grpcMethods: string[] = ["getUserStatus", "updateStatus", "removeConnection"];
|
|
168
91
|
for (const method of grpcMethods) {
|
|
169
92
|
const descriptor: any = Reflect.getOwnPropertyDescriptor(constructor.prototype, method);
|
|
170
93
|
GrpcMethod("PresenceService", method)(constructor.prototype[method], method, descriptor);
|
package/package.json
CHANGED
package/proto/auth.proto
CHANGED
|
@@ -14,6 +14,10 @@ service AuthService {
|
|
|
14
14
|
rpc TelegramVerify (TelegramVerifyRequest) returns (TelegramVerifyResponse);
|
|
15
15
|
rpc TelegramComplete (TelegramCompleteRequest) returns (TelegramCompleteResponse);
|
|
16
16
|
rpc TelegramConsume (TelegramConsumeRequest) returns (TelegramConsumeResponse);
|
|
17
|
+
|
|
18
|
+
rpc VkInit (google.protobuf.Empty) returns (VkInitResponse);
|
|
19
|
+
rpc VkVerify (VkVerifyRequest) returns (VkVerifyResponse);
|
|
20
|
+
rpc VkConsume (VkConsumeRequest) returns (VkConsumeResponse);
|
|
17
21
|
}
|
|
18
22
|
|
|
19
23
|
message SendOtpRequest {
|
|
@@ -113,3 +117,33 @@ message DeviceInfo {
|
|
|
113
117
|
string os = 2;
|
|
114
118
|
string type = 3;
|
|
115
119
|
}
|
|
120
|
+
|
|
121
|
+
message VkInitResponse {
|
|
122
|
+
string url = 1;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
message VkVerifyRequest {
|
|
126
|
+
string id_token = 1;
|
|
127
|
+
string access_token = 2;
|
|
128
|
+
SessionMetadata metadata = 3;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
message VkVerifyResponse {
|
|
132
|
+
oneof result {
|
|
133
|
+
string session_id = 1;
|
|
134
|
+
string access_token = 2;
|
|
135
|
+
string refresh_token = 3;
|
|
136
|
+
string session_token = 4;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
message VkConsumeRequest {
|
|
141
|
+
string session_id = 1;
|
|
142
|
+
SessionMetadata metadata = 2;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
message VkConsumeResponse {
|
|
146
|
+
string access_token = 1;
|
|
147
|
+
string refresh_token = 2;
|
|
148
|
+
string session_token = 3;
|
|
149
|
+
}
|
package/proto/presence.proto
CHANGED
|
@@ -8,47 +8,22 @@ service PresenceService {
|
|
|
8
8
|
// Получить статус пользователя
|
|
9
9
|
rpc GetUserStatus (GetUserStatusRequest) returns (GetUserStatusResponse);
|
|
10
10
|
|
|
11
|
-
// Получить статусы нескольких пользователей
|
|
12
|
-
rpc GetUsersStatus (GetUsersStatusRequest) returns (GetUsersStatusResponse);
|
|
13
|
-
|
|
14
11
|
// Обновить статус пользователя (heartbeat)
|
|
15
12
|
rpc UpdateStatus (UpdateStatusRequest) returns (UpdateStatusResponse);
|
|
16
13
|
|
|
17
14
|
// Удалить соединение пользователя (при отключении)
|
|
18
15
|
rpc RemoveConnection (RemoveConnectionRequest) returns (RemoveConnectionResponse);
|
|
19
16
|
|
|
20
|
-
// Подписаться на изменения статуса (stream)
|
|
21
|
-
rpc SubscribeToStatus (SubscribeToStatusRequest) returns (stream StatusUpdate);
|
|
22
|
-
|
|
23
|
-
// Отписаться от изменений статуса
|
|
24
|
-
rpc UnsubscribeFromStatus (UnsubscribeFromStatusRequest) returns (UnsubscribeFromStatusResponse);
|
|
25
17
|
}
|
|
26
18
|
|
|
27
19
|
message GetUserStatusRequest {
|
|
28
20
|
string user_id = 1;
|
|
21
|
+
optional string connection_id = 2; // WebSocket connection ID
|
|
29
22
|
}
|
|
30
23
|
|
|
31
24
|
message GetUserStatusResponse {
|
|
32
25
|
string status = 1; // "online" | "away" | "offline"
|
|
33
|
-
|
|
34
|
-
string device = 3; // "web" | "mobile"
|
|
35
|
-
google.protobuf.Timestamp updated_at = 4;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
message GetUsersStatusRequest {
|
|
39
|
-
repeated string user_ids = 1;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
message GetUsersStatusResponse {
|
|
43
|
-
repeated UserStatus statuses = 1;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
message UserStatus {
|
|
47
|
-
string user_id = 1;
|
|
48
|
-
string status = 2; // "online" | "away" | "offline"
|
|
49
|
-
int64 last_seen = 3;
|
|
50
|
-
string device = 4;
|
|
51
|
-
google.protobuf.Timestamp updated_at = 5;
|
|
26
|
+
google.protobuf.Timestamp last_seen = 2; // timestamp
|
|
52
27
|
}
|
|
53
28
|
|
|
54
29
|
message UpdateStatusRequest {
|
|
@@ -71,25 +46,3 @@ message RemoveConnectionResponse {
|
|
|
71
46
|
bool ok = 1;
|
|
72
47
|
string status = 2; // текущий статус после удаления
|
|
73
48
|
}
|
|
74
|
-
|
|
75
|
-
message SubscribeToStatusRequest {
|
|
76
|
-
string user_id = 1; // кто подписывается
|
|
77
|
-
repeated string contact_ids = 2; // за какими пользователями следить
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
message StatusUpdate {
|
|
81
|
-
string user_id = 1;
|
|
82
|
-
string status = 2; // "online" | "away" | "offline"
|
|
83
|
-
int64 last_seen = 3;
|
|
84
|
-
string device = 4;
|
|
85
|
-
google.protobuf.Timestamp updated_at = 5;
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
message UnsubscribeFromStatusRequest {
|
|
89
|
-
string user_id = 1;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
message UnsubscribeFromStatusResponse {
|
|
93
|
-
bool ok = 1;
|
|
94
|
-
}
|
|
95
|
-
|