jr-common-micro 1.1.112 → 1.1.114
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/dist/proto/micro/v1/mining/mining_messages_nest.d.ts +28 -0
- package/dist/proto/micro/v1/mining/mining_messages_pb.d.ts +12 -0
- package/dist/proto/micro/v1/mining/mining_messages_pb.js +8 -0
- package/dist/proto/micro/v1/notification/notification_messages_nest.d.ts +27 -0
- package/dist/proto/micro/v1/notification/notification_messages_pb.d.ts +15 -0
- package/dist/proto/micro/v1/notification/notification_messages_pb.js +18 -0
- package/dist/proto/micro/v1/support/services_connect.d.ts +13 -1
- package/dist/proto/micro/v1/support/services_connect.js +12 -0
- package/dist/proto/micro/v1/support/services_nest.d.ts +5 -1
- package/dist/proto/micro/v1/support/services_nest.js +2 -0
- package/dist/proto/micro/v1/support/support_messages_nest.d.ts +24 -0
- package/dist/proto/micro/v1/support/support_messages_pb.d.ts +56 -0
- package/dist/proto/micro/v1/support/support_messages_pb.js +125 -1
- package/package.json +1 -1
- package/proto/micro/v1/mining/mining_messages.proto +15 -1
- package/proto/micro/v1/notification/notification_messages.proto +15 -0
- package/proto/micro/v1/support/services.proto +4 -0
- package/proto/micro/v1/support/support_messages.proto +42 -1
|
@@ -329,6 +329,13 @@ export interface AdminTaskItem {
|
|
|
329
329
|
active: boolean;
|
|
330
330
|
sort: number;
|
|
331
331
|
completions_7d: number;
|
|
332
|
+
titles: {
|
|
333
|
+
[key: string]: string;
|
|
334
|
+
};
|
|
335
|
+
}
|
|
336
|
+
export interface AdminTaskItem_TitlesEntry {
|
|
337
|
+
key: string;
|
|
338
|
+
value: string;
|
|
332
339
|
}
|
|
333
340
|
export interface AdminTasksResponse {
|
|
334
341
|
status: ResponseStatus | undefined;
|
|
@@ -466,12 +473,26 @@ export interface AdminSetTaskRequest {
|
|
|
466
473
|
title_en: string;
|
|
467
474
|
max_count?: number | undefined;
|
|
468
475
|
sort?: number | undefined;
|
|
476
|
+
titles: {
|
|
477
|
+
[key: string]: string;
|
|
478
|
+
};
|
|
479
|
+
}
|
|
480
|
+
export interface AdminSetTaskRequest_TitlesEntry {
|
|
481
|
+
key: string;
|
|
482
|
+
value: string;
|
|
469
483
|
}
|
|
470
484
|
export interface AdminGiftPreviewRequest {
|
|
471
485
|
usernames: string[];
|
|
472
486
|
all_miners: boolean;
|
|
473
487
|
amount: string;
|
|
474
488
|
note: string;
|
|
489
|
+
notes: {
|
|
490
|
+
[key: string]: string;
|
|
491
|
+
};
|
|
492
|
+
}
|
|
493
|
+
export interface AdminGiftPreviewRequest_NotesEntry {
|
|
494
|
+
key: string;
|
|
495
|
+
value: string;
|
|
475
496
|
}
|
|
476
497
|
export interface AdminGiftRecipient {
|
|
477
498
|
user_id: string;
|
|
@@ -509,6 +530,13 @@ export interface AdminGift {
|
|
|
509
530
|
total_paid: string;
|
|
510
531
|
created_at: string;
|
|
511
532
|
finished_at: string;
|
|
533
|
+
notes: {
|
|
534
|
+
[key: string]: string;
|
|
535
|
+
};
|
|
536
|
+
}
|
|
537
|
+
export interface AdminGift_NotesEntry {
|
|
538
|
+
key: string;
|
|
539
|
+
value: string;
|
|
512
540
|
}
|
|
513
541
|
export interface AdminGiftResponse {
|
|
514
542
|
status: ResponseStatus | undefined;
|
|
@@ -674,6 +674,9 @@ export declare class AdminTaskItem extends Message<AdminTaskItem> {
|
|
|
674
674
|
active: boolean;
|
|
675
675
|
sort: number;
|
|
676
676
|
completions7d: number;
|
|
677
|
+
titles: {
|
|
678
|
+
[key: string]: string;
|
|
679
|
+
};
|
|
677
680
|
constructor(data?: PartialMessage<AdminTaskItem>);
|
|
678
681
|
static readonly runtime: typeof proto3;
|
|
679
682
|
static readonly typeName = "micro.v1.mining.AdminTaskItem";
|
|
@@ -947,6 +950,9 @@ export declare class AdminSetTaskRequest extends Message<AdminSetTaskRequest> {
|
|
|
947
950
|
titleEn: string;
|
|
948
951
|
maxCount?: number;
|
|
949
952
|
sort?: number;
|
|
953
|
+
titles: {
|
|
954
|
+
[key: string]: string;
|
|
955
|
+
};
|
|
950
956
|
constructor(data?: PartialMessage<AdminSetTaskRequest>);
|
|
951
957
|
static readonly runtime: typeof proto3;
|
|
952
958
|
static readonly typeName = "micro.v1.mining.AdminSetTaskRequest";
|
|
@@ -961,6 +967,9 @@ export declare class AdminGiftPreviewRequest extends Message<AdminGiftPreviewReq
|
|
|
961
967
|
allMiners: boolean;
|
|
962
968
|
amount: string;
|
|
963
969
|
note: string;
|
|
970
|
+
notes: {
|
|
971
|
+
[key: string]: string;
|
|
972
|
+
};
|
|
964
973
|
constructor(data?: PartialMessage<AdminGiftPreviewRequest>);
|
|
965
974
|
static readonly runtime: typeof proto3;
|
|
966
975
|
static readonly typeName = "micro.v1.mining.AdminGiftPreviewRequest";
|
|
@@ -1030,6 +1039,9 @@ export declare class AdminGift extends Message<AdminGift> {
|
|
|
1030
1039
|
totalPaid: string;
|
|
1031
1040
|
createdAt: string;
|
|
1032
1041
|
finishedAt: string;
|
|
1042
|
+
notes: {
|
|
1043
|
+
[key: string]: string;
|
|
1044
|
+
};
|
|
1033
1045
|
constructor(data?: PartialMessage<AdminGift>);
|
|
1034
1046
|
static readonly runtime: typeof proto3;
|
|
1035
1047
|
static readonly typeName = "micro.v1.mining.AdminGift";
|
|
@@ -1467,6 +1467,7 @@ class AdminTaskItem extends protobuf_1.Message {
|
|
|
1467
1467
|
active = false;
|
|
1468
1468
|
sort = 0;
|
|
1469
1469
|
completions7d = 0;
|
|
1470
|
+
titles = {};
|
|
1470
1471
|
constructor(data) {
|
|
1471
1472
|
super();
|
|
1472
1473
|
protobuf_1.proto3.util.initPartial(data, this);
|
|
@@ -1485,6 +1486,7 @@ class AdminTaskItem extends protobuf_1.Message {
|
|
|
1485
1486
|
{ no: 9, name: "active", kind: "scalar", T: 8 },
|
|
1486
1487
|
{ no: 10, name: "sort", kind: "scalar", T: 5 },
|
|
1487
1488
|
{ no: 11, name: "completions_7d", kind: "scalar", T: 5 },
|
|
1489
|
+
{ no: 12, name: "titles", kind: "map", K: 9, V: { kind: "scalar", T: 9 } },
|
|
1488
1490
|
]);
|
|
1489
1491
|
static fromBinary(bytes, options) {
|
|
1490
1492
|
return new AdminTaskItem().fromBinary(bytes, options);
|
|
@@ -2068,6 +2070,7 @@ class AdminSetTaskRequest extends protobuf_1.Message {
|
|
|
2068
2070
|
titleEn = "";
|
|
2069
2071
|
maxCount;
|
|
2070
2072
|
sort;
|
|
2073
|
+
titles = {};
|
|
2071
2074
|
constructor(data) {
|
|
2072
2075
|
super();
|
|
2073
2076
|
protobuf_1.proto3.util.initPartial(data, this);
|
|
@@ -2082,6 +2085,7 @@ class AdminSetTaskRequest extends protobuf_1.Message {
|
|
|
2082
2085
|
{ no: 5, name: "title_en", kind: "scalar", T: 9 },
|
|
2083
2086
|
{ no: 6, name: "max_count", kind: "scalar", T: 5, opt: true },
|
|
2084
2087
|
{ no: 7, name: "sort", kind: "scalar", T: 5, opt: true },
|
|
2088
|
+
{ no: 8, name: "titles", kind: "map", K: 9, V: { kind: "scalar", T: 9 } },
|
|
2085
2089
|
]);
|
|
2086
2090
|
static fromBinary(bytes, options) {
|
|
2087
2091
|
return new AdminSetTaskRequest().fromBinary(bytes, options);
|
|
@@ -2102,6 +2106,7 @@ class AdminGiftPreviewRequest extends protobuf_1.Message {
|
|
|
2102
2106
|
allMiners = false;
|
|
2103
2107
|
amount = "";
|
|
2104
2108
|
note = "";
|
|
2109
|
+
notes = {};
|
|
2105
2110
|
constructor(data) {
|
|
2106
2111
|
super();
|
|
2107
2112
|
protobuf_1.proto3.util.initPartial(data, this);
|
|
@@ -2113,6 +2118,7 @@ class AdminGiftPreviewRequest extends protobuf_1.Message {
|
|
|
2113
2118
|
{ no: 2, name: "all_miners", kind: "scalar", T: 8 },
|
|
2114
2119
|
{ no: 3, name: "amount", kind: "scalar", T: 9 },
|
|
2115
2120
|
{ no: 4, name: "note", kind: "scalar", T: 9 },
|
|
2121
|
+
{ no: 5, name: "notes", kind: "map", K: 9, V: { kind: "scalar", T: 9 } },
|
|
2116
2122
|
]);
|
|
2117
2123
|
static fromBinary(bytes, options) {
|
|
2118
2124
|
return new AdminGiftPreviewRequest().fromBinary(bytes, options);
|
|
@@ -2244,6 +2250,7 @@ class AdminGift extends protobuf_1.Message {
|
|
|
2244
2250
|
totalPaid = "";
|
|
2245
2251
|
createdAt = "";
|
|
2246
2252
|
finishedAt = "";
|
|
2253
|
+
notes = {};
|
|
2247
2254
|
constructor(data) {
|
|
2248
2255
|
super();
|
|
2249
2256
|
protobuf_1.proto3.util.initPartial(data, this);
|
|
@@ -2263,6 +2270,7 @@ class AdminGift extends protobuf_1.Message {
|
|
|
2263
2270
|
{ no: 10, name: "total_paid", kind: "scalar", T: 9 },
|
|
2264
2271
|
{ no: 11, name: "created_at", kind: "scalar", T: 9 },
|
|
2265
2272
|
{ no: 12, name: "finished_at", kind: "scalar", T: 9 },
|
|
2273
|
+
{ no: 13, name: "notes", kind: "map", K: 9, V: { kind: "scalar", T: 9 } },
|
|
2266
2274
|
]);
|
|
2267
2275
|
static fromBinary(bytes, options) {
|
|
2268
2276
|
return new AdminGift().fromBinary(bytes, options);
|
|
@@ -102,10 +102,23 @@ export interface SendNotificationRequest {
|
|
|
102
102
|
criteria: string;
|
|
103
103
|
title: string;
|
|
104
104
|
notificationMessage: SendNotificationRequest_NotificationMessage | undefined;
|
|
105
|
+
titles: {
|
|
106
|
+
[key: string]: string;
|
|
107
|
+
};
|
|
105
108
|
}
|
|
106
109
|
export interface SendNotificationRequest_NotificationMessage {
|
|
107
110
|
en: string;
|
|
108
111
|
tr: string;
|
|
112
|
+
es: string;
|
|
113
|
+
pt: string;
|
|
114
|
+
de: string;
|
|
115
|
+
ru: string;
|
|
116
|
+
id: string;
|
|
117
|
+
vi: string;
|
|
118
|
+
}
|
|
119
|
+
export interface SendNotificationRequest_TitlesEntry {
|
|
120
|
+
key: string;
|
|
121
|
+
value: string;
|
|
109
122
|
}
|
|
110
123
|
export interface SendUserPushRequest {
|
|
111
124
|
user_ids: string[];
|
|
@@ -120,11 +133,25 @@ export interface SendUserPushRequest {
|
|
|
120
133
|
collapse_id: string;
|
|
121
134
|
ttl_seconds: number;
|
|
122
135
|
priority: string;
|
|
136
|
+
titles: {
|
|
137
|
+
[key: string]: string;
|
|
138
|
+
};
|
|
139
|
+
bodies: {
|
|
140
|
+
[key: string]: string;
|
|
141
|
+
};
|
|
123
142
|
}
|
|
124
143
|
export interface SendUserPushRequest_DataEntry {
|
|
125
144
|
key: string;
|
|
126
145
|
value: string;
|
|
127
146
|
}
|
|
147
|
+
export interface SendUserPushRequest_TitlesEntry {
|
|
148
|
+
key: string;
|
|
149
|
+
value: string;
|
|
150
|
+
}
|
|
151
|
+
export interface SendUserPushRequest_BodiesEntry {
|
|
152
|
+
key: string;
|
|
153
|
+
value: string;
|
|
154
|
+
}
|
|
128
155
|
export interface SendChatMentionRequest {
|
|
129
156
|
user_ids: string[];
|
|
130
157
|
sender_username: string;
|
|
@@ -215,6 +215,9 @@ export declare class SendNotificationRequest extends Message<SendNotificationReq
|
|
|
215
215
|
criteria: string;
|
|
216
216
|
title: string;
|
|
217
217
|
notificationMessage?: SendNotificationRequest_NotificationMessage;
|
|
218
|
+
titles: {
|
|
219
|
+
[key: string]: string;
|
|
220
|
+
};
|
|
218
221
|
constructor(data?: PartialMessage<SendNotificationRequest>);
|
|
219
222
|
static readonly runtime: typeof proto3;
|
|
220
223
|
static readonly typeName = "micro.v1.notification.SendNotificationRequest";
|
|
@@ -227,6 +230,12 @@ export declare class SendNotificationRequest extends Message<SendNotificationReq
|
|
|
227
230
|
export declare class SendNotificationRequest_NotificationMessage extends Message<SendNotificationRequest_NotificationMessage> {
|
|
228
231
|
en: string;
|
|
229
232
|
tr: string;
|
|
233
|
+
es: string;
|
|
234
|
+
pt: string;
|
|
235
|
+
de: string;
|
|
236
|
+
ru: string;
|
|
237
|
+
id: string;
|
|
238
|
+
vi: string;
|
|
230
239
|
constructor(data?: PartialMessage<SendNotificationRequest_NotificationMessage>);
|
|
231
240
|
static readonly runtime: typeof proto3;
|
|
232
241
|
static readonly typeName = "micro.v1.notification.SendNotificationRequest.NotificationMessage";
|
|
@@ -249,6 +258,12 @@ export declare class SendUserPushRequest extends Message<SendUserPushRequest> {
|
|
|
249
258
|
collapseId: string;
|
|
250
259
|
ttlSeconds: number;
|
|
251
260
|
priority: string;
|
|
261
|
+
titles: {
|
|
262
|
+
[key: string]: string;
|
|
263
|
+
};
|
|
264
|
+
bodies: {
|
|
265
|
+
[key: string]: string;
|
|
266
|
+
};
|
|
252
267
|
constructor(data?: PartialMessage<SendUserPushRequest>);
|
|
253
268
|
static readonly runtime: typeof proto3;
|
|
254
269
|
static readonly typeName = "micro.v1.notification.SendUserPushRequest";
|
|
@@ -469,6 +469,7 @@ class SendNotificationRequest extends protobuf_1.Message {
|
|
|
469
469
|
criteria = "";
|
|
470
470
|
title = "";
|
|
471
471
|
notificationMessage;
|
|
472
|
+
titles = {};
|
|
472
473
|
constructor(data) {
|
|
473
474
|
super();
|
|
474
475
|
protobuf_1.proto3.util.initPartial(data, this);
|
|
@@ -479,6 +480,7 @@ class SendNotificationRequest extends protobuf_1.Message {
|
|
|
479
480
|
{ no: 1, name: "criteria", kind: "scalar", T: 9 },
|
|
480
481
|
{ no: 2, name: "title", kind: "scalar", T: 9 },
|
|
481
482
|
{ no: 3, name: "notificationMessage", kind: "message", T: SendNotificationRequest_NotificationMessage },
|
|
483
|
+
{ no: 4, name: "titles", kind: "map", K: 9, V: { kind: "scalar", T: 9 } },
|
|
482
484
|
]);
|
|
483
485
|
static fromBinary(bytes, options) {
|
|
484
486
|
return new SendNotificationRequest().fromBinary(bytes, options);
|
|
@@ -497,6 +499,12 @@ exports.SendNotificationRequest = SendNotificationRequest;
|
|
|
497
499
|
class SendNotificationRequest_NotificationMessage extends protobuf_1.Message {
|
|
498
500
|
en = "";
|
|
499
501
|
tr = "";
|
|
502
|
+
es = "";
|
|
503
|
+
pt = "";
|
|
504
|
+
de = "";
|
|
505
|
+
ru = "";
|
|
506
|
+
id = "";
|
|
507
|
+
vi = "";
|
|
500
508
|
constructor(data) {
|
|
501
509
|
super();
|
|
502
510
|
protobuf_1.proto3.util.initPartial(data, this);
|
|
@@ -506,6 +514,12 @@ class SendNotificationRequest_NotificationMessage extends protobuf_1.Message {
|
|
|
506
514
|
static fields = protobuf_1.proto3.util.newFieldList(() => [
|
|
507
515
|
{ no: 1, name: "en", kind: "scalar", T: 9 },
|
|
508
516
|
{ no: 2, name: "tr", kind: "scalar", T: 9 },
|
|
517
|
+
{ no: 3, name: "es", kind: "scalar", T: 9 },
|
|
518
|
+
{ no: 4, name: "pt", kind: "scalar", T: 9 },
|
|
519
|
+
{ no: 5, name: "de", kind: "scalar", T: 9 },
|
|
520
|
+
{ no: 6, name: "ru", kind: "scalar", T: 9 },
|
|
521
|
+
{ no: 7, name: "id", kind: "scalar", T: 9 },
|
|
522
|
+
{ no: 8, name: "vi", kind: "scalar", T: 9 },
|
|
509
523
|
]);
|
|
510
524
|
static fromBinary(bytes, options) {
|
|
511
525
|
return new SendNotificationRequest_NotificationMessage().fromBinary(bytes, options);
|
|
@@ -532,6 +546,8 @@ class SendUserPushRequest extends protobuf_1.Message {
|
|
|
532
546
|
collapseId = "";
|
|
533
547
|
ttlSeconds = 0;
|
|
534
548
|
priority = "";
|
|
549
|
+
titles = {};
|
|
550
|
+
bodies = {};
|
|
535
551
|
constructor(data) {
|
|
536
552
|
super();
|
|
537
553
|
protobuf_1.proto3.util.initPartial(data, this);
|
|
@@ -549,6 +565,8 @@ class SendUserPushRequest extends protobuf_1.Message {
|
|
|
549
565
|
{ no: 8, name: "collapse_id", kind: "scalar", T: 9 },
|
|
550
566
|
{ no: 9, name: "ttl_seconds", kind: "scalar", T: 5 },
|
|
551
567
|
{ no: 10, name: "priority", kind: "scalar", T: 9 },
|
|
568
|
+
{ no: 11, name: "titles", kind: "map", K: 9, V: { kind: "scalar", T: 9 } },
|
|
569
|
+
{ no: 12, name: "bodies", kind: "map", K: 9, V: { kind: "scalar", T: 9 } },
|
|
552
570
|
]);
|
|
553
571
|
static fromBinary(bytes, options) {
|
|
554
572
|
return new SendUserPushRequest().fromBinary(bytes, options);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CreateTicketRequest, DeleteMessageRequest, ReplyRequest, SetStatusRequest, TicketListRequest, TicketListResponse, TicketThreadResponse } from "./support_messages_pb.js";
|
|
1
|
+
import { CreateTicketRequest, DeleteMessageRequest, ReplyRequest, SetHiddenRequest, SetStatusRequest, TicketDraftsRequest, TicketDraftsResponse, TicketListRequest, TicketListResponse, TicketThreadResponse } from "./support_messages_pb.js";
|
|
2
2
|
import { MethodKind } from "@bufbuild/protobuf";
|
|
3
3
|
import { ByIdRequest, EmptyResponse } from "../general_pb.js";
|
|
4
4
|
export declare const PSupportService: {
|
|
@@ -52,6 +52,18 @@ export declare const PSupportService: {
|
|
|
52
52
|
readonly O: typeof TicketThreadResponse;
|
|
53
53
|
readonly kind: MethodKind.ServerStreaming;
|
|
54
54
|
};
|
|
55
|
+
readonly adminSetHidden: {
|
|
56
|
+
readonly name: "AdminSetHidden";
|
|
57
|
+
readonly I: typeof SetHiddenRequest;
|
|
58
|
+
readonly O: typeof TicketThreadResponse;
|
|
59
|
+
readonly kind: MethodKind.ServerStreaming;
|
|
60
|
+
};
|
|
61
|
+
readonly adminTicketDrafts: {
|
|
62
|
+
readonly name: "AdminTicketDrafts";
|
|
63
|
+
readonly I: typeof TicketDraftsRequest;
|
|
64
|
+
readonly O: typeof TicketDraftsResponse;
|
|
65
|
+
readonly kind: MethodKind.ServerStreaming;
|
|
66
|
+
};
|
|
55
67
|
readonly removeUserData: {
|
|
56
68
|
readonly name: "RemoveUserData";
|
|
57
69
|
readonly I: typeof ByIdRequest;
|
|
@@ -55,6 +55,18 @@ exports.PSupportService = {
|
|
|
55
55
|
O: support_messages_pb_js_1.TicketThreadResponse,
|
|
56
56
|
kind: protobuf_1.MethodKind.ServerStreaming,
|
|
57
57
|
},
|
|
58
|
+
adminSetHidden: {
|
|
59
|
+
name: "AdminSetHidden",
|
|
60
|
+
I: support_messages_pb_js_1.SetHiddenRequest,
|
|
61
|
+
O: support_messages_pb_js_1.TicketThreadResponse,
|
|
62
|
+
kind: protobuf_1.MethodKind.ServerStreaming,
|
|
63
|
+
},
|
|
64
|
+
adminTicketDrafts: {
|
|
65
|
+
name: "AdminTicketDrafts",
|
|
66
|
+
I: support_messages_pb_js_1.TicketDraftsRequest,
|
|
67
|
+
O: support_messages_pb_js_1.TicketDraftsResponse,
|
|
68
|
+
kind: protobuf_1.MethodKind.ServerStreaming,
|
|
69
|
+
},
|
|
58
70
|
removeUserData: {
|
|
59
71
|
name: "RemoveUserData",
|
|
60
72
|
I: general_pb_js_1.ByIdRequest,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Metadata } from "@grpc/grpc-js";
|
|
2
2
|
import { Observable } from "rxjs";
|
|
3
3
|
import { ByIdRequest, EmptyResponse } from "../general_nest";
|
|
4
|
-
import { CreateTicketRequest, DeleteMessageRequest, ReplyRequest, SetStatusRequest, TicketListRequest, TicketListResponse, TicketThreadResponse } from "./support_messages_nest";
|
|
4
|
+
import { CreateTicketRequest, DeleteMessageRequest, ReplyRequest, SetHiddenRequest, SetStatusRequest, TicketDraftsRequest, TicketDraftsResponse, TicketListRequest, TicketListResponse, TicketThreadResponse } from "./support_messages_nest";
|
|
5
5
|
export declare const protobufPackage = "micro.v1.support";
|
|
6
6
|
export declare const MICRO_V1_SUPPORT_PACKAGE_NAME = "micro.v1.support";
|
|
7
7
|
export interface PSupportServiceClient {
|
|
@@ -13,6 +13,8 @@ export interface PSupportServiceClient {
|
|
|
13
13
|
adminTickets(request: TicketListRequest, metadata?: Metadata): Observable<TicketListResponse>;
|
|
14
14
|
adminTicket(request: ByIdRequest, metadata?: Metadata): Observable<TicketThreadResponse>;
|
|
15
15
|
adminSetStatus(request: SetStatusRequest, metadata?: Metadata): Observable<TicketThreadResponse>;
|
|
16
|
+
adminSetHidden(request: SetHiddenRequest, metadata?: Metadata): Observable<TicketThreadResponse>;
|
|
17
|
+
adminTicketDrafts(request: TicketDraftsRequest, metadata?: Metadata): Observable<TicketDraftsResponse>;
|
|
16
18
|
removeUserData(request: ByIdRequest, metadata?: Metadata): Observable<EmptyResponse>;
|
|
17
19
|
}
|
|
18
20
|
export interface PSupportServiceController {
|
|
@@ -24,6 +26,8 @@ export interface PSupportServiceController {
|
|
|
24
26
|
adminTickets(request: TicketListRequest, metadata?: Metadata): Observable<TicketListResponse>;
|
|
25
27
|
adminTicket(request: ByIdRequest, metadata?: Metadata): Observable<TicketThreadResponse>;
|
|
26
28
|
adminSetStatus(request: SetStatusRequest, metadata?: Metadata): Observable<TicketThreadResponse>;
|
|
29
|
+
adminSetHidden(request: SetHiddenRequest, metadata?: Metadata): Observable<TicketThreadResponse>;
|
|
30
|
+
adminTicketDrafts(request: TicketDraftsRequest, metadata?: Metadata): Observable<TicketDraftsResponse>;
|
|
27
31
|
removeUserData(request: ByIdRequest, metadata?: Metadata): Observable<EmptyResponse>;
|
|
28
32
|
}
|
|
29
33
|
export declare function PSupportServiceControllerMethods(): (constructor: Function) => void;
|
|
@@ -19,6 +19,7 @@ export interface Ticket {
|
|
|
19
19
|
created_at: string;
|
|
20
20
|
updated_at: string;
|
|
21
21
|
closed_at: string;
|
|
22
|
+
hidden: boolean;
|
|
22
23
|
}
|
|
23
24
|
export interface TicketMessage {
|
|
24
25
|
id: string;
|
|
@@ -56,6 +57,28 @@ export interface SetStatusRequest {
|
|
|
56
57
|
ticket_id: string;
|
|
57
58
|
status: string;
|
|
58
59
|
}
|
|
60
|
+
export interface SetHiddenRequest {
|
|
61
|
+
ticket_id: string;
|
|
62
|
+
hidden: boolean;
|
|
63
|
+
}
|
|
64
|
+
export interface TicketCounts {
|
|
65
|
+
open: number;
|
|
66
|
+
answered: number;
|
|
67
|
+
closed: number;
|
|
68
|
+
all: number;
|
|
69
|
+
hidden: number;
|
|
70
|
+
}
|
|
71
|
+
export interface TicketDraftsRequest {
|
|
72
|
+
ticket_id: string;
|
|
73
|
+
refresh: boolean;
|
|
74
|
+
}
|
|
75
|
+
export interface TicketDraftsResponse {
|
|
76
|
+
status: ResponseStatus | undefined;
|
|
77
|
+
state: string;
|
|
78
|
+
drafts: string[];
|
|
79
|
+
uncertain: boolean;
|
|
80
|
+
for_message_id: string;
|
|
81
|
+
}
|
|
59
82
|
export interface TicketResponse {
|
|
60
83
|
status: ResponseStatus | undefined;
|
|
61
84
|
data?: Ticket | undefined;
|
|
@@ -65,6 +88,7 @@ export interface TicketListResponse {
|
|
|
65
88
|
data: Ticket[];
|
|
66
89
|
pagination?: PaginationMetaResult | undefined;
|
|
67
90
|
attention_count: number;
|
|
91
|
+
counts?: TicketCounts | undefined;
|
|
68
92
|
}
|
|
69
93
|
export interface TicketThreadResponse {
|
|
70
94
|
status: ResponseStatus | undefined;
|
|
@@ -20,6 +20,7 @@ export declare class Ticket extends Message<Ticket> {
|
|
|
20
20
|
createdAt: string;
|
|
21
21
|
updatedAt: string;
|
|
22
22
|
closedAt: string;
|
|
23
|
+
hidden: boolean;
|
|
23
24
|
constructor(data?: PartialMessage<Ticket>);
|
|
24
25
|
static readonly runtime: typeof proto3;
|
|
25
26
|
static readonly typeName = "micro.v1.support.Ticket";
|
|
@@ -113,6 +114,60 @@ export declare class SetStatusRequest extends Message<SetStatusRequest> {
|
|
|
113
114
|
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): SetStatusRequest;
|
|
114
115
|
static equals(a: SetStatusRequest | PlainMessage<SetStatusRequest> | undefined, b: SetStatusRequest | PlainMessage<SetStatusRequest> | undefined): boolean;
|
|
115
116
|
}
|
|
117
|
+
export declare class SetHiddenRequest extends Message<SetHiddenRequest> {
|
|
118
|
+
ticketId: string;
|
|
119
|
+
hidden: boolean;
|
|
120
|
+
constructor(data?: PartialMessage<SetHiddenRequest>);
|
|
121
|
+
static readonly runtime: typeof proto3;
|
|
122
|
+
static readonly typeName = "micro.v1.support.SetHiddenRequest";
|
|
123
|
+
static readonly fields: FieldList;
|
|
124
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): SetHiddenRequest;
|
|
125
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): SetHiddenRequest;
|
|
126
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): SetHiddenRequest;
|
|
127
|
+
static equals(a: SetHiddenRequest | PlainMessage<SetHiddenRequest> | undefined, b: SetHiddenRequest | PlainMessage<SetHiddenRequest> | undefined): boolean;
|
|
128
|
+
}
|
|
129
|
+
export declare class TicketCounts extends Message<TicketCounts> {
|
|
130
|
+
open: number;
|
|
131
|
+
answered: number;
|
|
132
|
+
closed: number;
|
|
133
|
+
all: number;
|
|
134
|
+
hidden: number;
|
|
135
|
+
constructor(data?: PartialMessage<TicketCounts>);
|
|
136
|
+
static readonly runtime: typeof proto3;
|
|
137
|
+
static readonly typeName = "micro.v1.support.TicketCounts";
|
|
138
|
+
static readonly fields: FieldList;
|
|
139
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): TicketCounts;
|
|
140
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): TicketCounts;
|
|
141
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): TicketCounts;
|
|
142
|
+
static equals(a: TicketCounts | PlainMessage<TicketCounts> | undefined, b: TicketCounts | PlainMessage<TicketCounts> | undefined): boolean;
|
|
143
|
+
}
|
|
144
|
+
export declare class TicketDraftsRequest extends Message<TicketDraftsRequest> {
|
|
145
|
+
ticketId: string;
|
|
146
|
+
refresh: boolean;
|
|
147
|
+
constructor(data?: PartialMessage<TicketDraftsRequest>);
|
|
148
|
+
static readonly runtime: typeof proto3;
|
|
149
|
+
static readonly typeName = "micro.v1.support.TicketDraftsRequest";
|
|
150
|
+
static readonly fields: FieldList;
|
|
151
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): TicketDraftsRequest;
|
|
152
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): TicketDraftsRequest;
|
|
153
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): TicketDraftsRequest;
|
|
154
|
+
static equals(a: TicketDraftsRequest | PlainMessage<TicketDraftsRequest> | undefined, b: TicketDraftsRequest | PlainMessage<TicketDraftsRequest> | undefined): boolean;
|
|
155
|
+
}
|
|
156
|
+
export declare class TicketDraftsResponse extends Message<TicketDraftsResponse> {
|
|
157
|
+
status?: ResponseStatus;
|
|
158
|
+
state: string;
|
|
159
|
+
drafts: string[];
|
|
160
|
+
uncertain: boolean;
|
|
161
|
+
forMessageId: string;
|
|
162
|
+
constructor(data?: PartialMessage<TicketDraftsResponse>);
|
|
163
|
+
static readonly runtime: typeof proto3;
|
|
164
|
+
static readonly typeName = "micro.v1.support.TicketDraftsResponse";
|
|
165
|
+
static readonly fields: FieldList;
|
|
166
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): TicketDraftsResponse;
|
|
167
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): TicketDraftsResponse;
|
|
168
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): TicketDraftsResponse;
|
|
169
|
+
static equals(a: TicketDraftsResponse | PlainMessage<TicketDraftsResponse> | undefined, b: TicketDraftsResponse | PlainMessage<TicketDraftsResponse> | undefined): boolean;
|
|
170
|
+
}
|
|
116
171
|
export declare class TicketResponse extends Message<TicketResponse> {
|
|
117
172
|
status?: ResponseStatus;
|
|
118
173
|
data?: Ticket;
|
|
@@ -130,6 +185,7 @@ export declare class TicketListResponse extends Message<TicketListResponse> {
|
|
|
130
185
|
data: Ticket[];
|
|
131
186
|
pagination?: PaginationMetaResult;
|
|
132
187
|
attentionCount: number;
|
|
188
|
+
counts?: TicketCounts;
|
|
133
189
|
constructor(data?: PartialMessage<TicketListResponse>);
|
|
134
190
|
static readonly runtime: typeof proto3;
|
|
135
191
|
static readonly typeName = "micro.v1.support.TicketListResponse";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TicketThreadResponse = exports.TicketListResponse = exports.TicketResponse = exports.SetStatusRequest = exports.DeleteMessageRequest = exports.ReplyRequest = exports.TicketListRequest = exports.CreateTicketRequest = exports.TicketMessage = exports.Ticket = void 0;
|
|
3
|
+
exports.TicketThreadResponse = exports.TicketListResponse = exports.TicketResponse = exports.TicketDraftsResponse = exports.TicketDraftsRequest = exports.TicketCounts = exports.SetHiddenRequest = exports.SetStatusRequest = exports.DeleteMessageRequest = exports.ReplyRequest = exports.TicketListRequest = exports.CreateTicketRequest = exports.TicketMessage = exports.Ticket = void 0;
|
|
4
4
|
const protobuf_1 = require("@bufbuild/protobuf");
|
|
5
5
|
const general_pb_js_1 = require("../general_pb.js");
|
|
6
6
|
class Ticket extends protobuf_1.Message {
|
|
@@ -22,6 +22,7 @@ class Ticket extends protobuf_1.Message {
|
|
|
22
22
|
createdAt = "";
|
|
23
23
|
updatedAt = "";
|
|
24
24
|
closedAt = "";
|
|
25
|
+
hidden = false;
|
|
25
26
|
constructor(data) {
|
|
26
27
|
super();
|
|
27
28
|
protobuf_1.proto3.util.initPartial(data, this);
|
|
@@ -47,6 +48,7 @@ class Ticket extends protobuf_1.Message {
|
|
|
47
48
|
{ no: 16, name: "created_at", kind: "scalar", T: 9 },
|
|
48
49
|
{ no: 17, name: "updated_at", kind: "scalar", T: 9 },
|
|
49
50
|
{ no: 18, name: "closed_at", kind: "scalar", T: 9 },
|
|
51
|
+
{ no: 19, name: "hidden", kind: "scalar", T: 8 },
|
|
50
52
|
]);
|
|
51
53
|
static fromBinary(bytes, options) {
|
|
52
54
|
return new Ticket().fromBinary(bytes, options);
|
|
@@ -248,6 +250,126 @@ class SetStatusRequest extends protobuf_1.Message {
|
|
|
248
250
|
}
|
|
249
251
|
}
|
|
250
252
|
exports.SetStatusRequest = SetStatusRequest;
|
|
253
|
+
class SetHiddenRequest extends protobuf_1.Message {
|
|
254
|
+
ticketId = "";
|
|
255
|
+
hidden = false;
|
|
256
|
+
constructor(data) {
|
|
257
|
+
super();
|
|
258
|
+
protobuf_1.proto3.util.initPartial(data, this);
|
|
259
|
+
}
|
|
260
|
+
static runtime = protobuf_1.proto3;
|
|
261
|
+
static typeName = "micro.v1.support.SetHiddenRequest";
|
|
262
|
+
static fields = protobuf_1.proto3.util.newFieldList(() => [
|
|
263
|
+
{ no: 1, name: "ticket_id", kind: "scalar", T: 9 },
|
|
264
|
+
{ no: 2, name: "hidden", kind: "scalar", T: 8 },
|
|
265
|
+
]);
|
|
266
|
+
static fromBinary(bytes, options) {
|
|
267
|
+
return new SetHiddenRequest().fromBinary(bytes, options);
|
|
268
|
+
}
|
|
269
|
+
static fromJson(jsonValue, options) {
|
|
270
|
+
return new SetHiddenRequest().fromJson(jsonValue, options);
|
|
271
|
+
}
|
|
272
|
+
static fromJsonString(jsonString, options) {
|
|
273
|
+
return new SetHiddenRequest().fromJsonString(jsonString, options);
|
|
274
|
+
}
|
|
275
|
+
static equals(a, b) {
|
|
276
|
+
return protobuf_1.proto3.util.equals(SetHiddenRequest, a, b);
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
exports.SetHiddenRequest = SetHiddenRequest;
|
|
280
|
+
class TicketCounts extends protobuf_1.Message {
|
|
281
|
+
open = 0;
|
|
282
|
+
answered = 0;
|
|
283
|
+
closed = 0;
|
|
284
|
+
all = 0;
|
|
285
|
+
hidden = 0;
|
|
286
|
+
constructor(data) {
|
|
287
|
+
super();
|
|
288
|
+
protobuf_1.proto3.util.initPartial(data, this);
|
|
289
|
+
}
|
|
290
|
+
static runtime = protobuf_1.proto3;
|
|
291
|
+
static typeName = "micro.v1.support.TicketCounts";
|
|
292
|
+
static fields = protobuf_1.proto3.util.newFieldList(() => [
|
|
293
|
+
{ no: 1, name: "open", kind: "scalar", T: 5 },
|
|
294
|
+
{ no: 2, name: "answered", kind: "scalar", T: 5 },
|
|
295
|
+
{ no: 3, name: "closed", kind: "scalar", T: 5 },
|
|
296
|
+
{ no: 4, name: "all", kind: "scalar", T: 5 },
|
|
297
|
+
{ no: 5, name: "hidden", kind: "scalar", T: 5 },
|
|
298
|
+
]);
|
|
299
|
+
static fromBinary(bytes, options) {
|
|
300
|
+
return new TicketCounts().fromBinary(bytes, options);
|
|
301
|
+
}
|
|
302
|
+
static fromJson(jsonValue, options) {
|
|
303
|
+
return new TicketCounts().fromJson(jsonValue, options);
|
|
304
|
+
}
|
|
305
|
+
static fromJsonString(jsonString, options) {
|
|
306
|
+
return new TicketCounts().fromJsonString(jsonString, options);
|
|
307
|
+
}
|
|
308
|
+
static equals(a, b) {
|
|
309
|
+
return protobuf_1.proto3.util.equals(TicketCounts, a, b);
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
exports.TicketCounts = TicketCounts;
|
|
313
|
+
class TicketDraftsRequest extends protobuf_1.Message {
|
|
314
|
+
ticketId = "";
|
|
315
|
+
refresh = false;
|
|
316
|
+
constructor(data) {
|
|
317
|
+
super();
|
|
318
|
+
protobuf_1.proto3.util.initPartial(data, this);
|
|
319
|
+
}
|
|
320
|
+
static runtime = protobuf_1.proto3;
|
|
321
|
+
static typeName = "micro.v1.support.TicketDraftsRequest";
|
|
322
|
+
static fields = protobuf_1.proto3.util.newFieldList(() => [
|
|
323
|
+
{ no: 1, name: "ticket_id", kind: "scalar", T: 9 },
|
|
324
|
+
{ no: 2, name: "refresh", kind: "scalar", T: 8 },
|
|
325
|
+
]);
|
|
326
|
+
static fromBinary(bytes, options) {
|
|
327
|
+
return new TicketDraftsRequest().fromBinary(bytes, options);
|
|
328
|
+
}
|
|
329
|
+
static fromJson(jsonValue, options) {
|
|
330
|
+
return new TicketDraftsRequest().fromJson(jsonValue, options);
|
|
331
|
+
}
|
|
332
|
+
static fromJsonString(jsonString, options) {
|
|
333
|
+
return new TicketDraftsRequest().fromJsonString(jsonString, options);
|
|
334
|
+
}
|
|
335
|
+
static equals(a, b) {
|
|
336
|
+
return protobuf_1.proto3.util.equals(TicketDraftsRequest, a, b);
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
exports.TicketDraftsRequest = TicketDraftsRequest;
|
|
340
|
+
class TicketDraftsResponse extends protobuf_1.Message {
|
|
341
|
+
status;
|
|
342
|
+
state = "";
|
|
343
|
+
drafts = [];
|
|
344
|
+
uncertain = false;
|
|
345
|
+
forMessageId = "";
|
|
346
|
+
constructor(data) {
|
|
347
|
+
super();
|
|
348
|
+
protobuf_1.proto3.util.initPartial(data, this);
|
|
349
|
+
}
|
|
350
|
+
static runtime = protobuf_1.proto3;
|
|
351
|
+
static typeName = "micro.v1.support.TicketDraftsResponse";
|
|
352
|
+
static fields = protobuf_1.proto3.util.newFieldList(() => [
|
|
353
|
+
{ no: 1, name: "status", kind: "message", T: general_pb_js_1.ResponseStatus },
|
|
354
|
+
{ no: 2, name: "state", kind: "scalar", T: 9 },
|
|
355
|
+
{ no: 3, name: "drafts", kind: "scalar", T: 9, repeated: true },
|
|
356
|
+
{ no: 4, name: "uncertain", kind: "scalar", T: 8 },
|
|
357
|
+
{ no: 5, name: "for_message_id", kind: "scalar", T: 9 },
|
|
358
|
+
]);
|
|
359
|
+
static fromBinary(bytes, options) {
|
|
360
|
+
return new TicketDraftsResponse().fromBinary(bytes, options);
|
|
361
|
+
}
|
|
362
|
+
static fromJson(jsonValue, options) {
|
|
363
|
+
return new TicketDraftsResponse().fromJson(jsonValue, options);
|
|
364
|
+
}
|
|
365
|
+
static fromJsonString(jsonString, options) {
|
|
366
|
+
return new TicketDraftsResponse().fromJsonString(jsonString, options);
|
|
367
|
+
}
|
|
368
|
+
static equals(a, b) {
|
|
369
|
+
return protobuf_1.proto3.util.equals(TicketDraftsResponse, a, b);
|
|
370
|
+
}
|
|
371
|
+
}
|
|
372
|
+
exports.TicketDraftsResponse = TicketDraftsResponse;
|
|
251
373
|
class TicketResponse extends protobuf_1.Message {
|
|
252
374
|
status;
|
|
253
375
|
data;
|
|
@@ -280,6 +402,7 @@ class TicketListResponse extends protobuf_1.Message {
|
|
|
280
402
|
data = [];
|
|
281
403
|
pagination;
|
|
282
404
|
attentionCount = 0;
|
|
405
|
+
counts;
|
|
283
406
|
constructor(data) {
|
|
284
407
|
super();
|
|
285
408
|
protobuf_1.proto3.util.initPartial(data, this);
|
|
@@ -291,6 +414,7 @@ class TicketListResponse extends protobuf_1.Message {
|
|
|
291
414
|
{ no: 2, name: "data", kind: "message", T: Ticket, repeated: true },
|
|
292
415
|
{ no: 3, name: "pagination", kind: "message", T: general_pb_js_1.PaginationMetaResult, opt: true },
|
|
293
416
|
{ no: 4, name: "attention_count", kind: "scalar", T: 5 },
|
|
417
|
+
{ no: 5, name: "counts", kind: "message", T: TicketCounts, opt: true },
|
|
294
418
|
]);
|
|
295
419
|
static fromBinary(bytes, options) {
|
|
296
420
|
return new TicketListResponse().fromBinary(bytes, options);
|
package/package.json
CHANGED
|
@@ -472,6 +472,9 @@ message AdminTaskItem {
|
|
|
472
472
|
int32 sort = 10;
|
|
473
473
|
// Completions in the last 7 days (for the panel's context).
|
|
474
474
|
int32 completions_7d = 11;
|
|
475
|
+
// The title in the app's other languages (es, pt, de, ru, id, vi); one
|
|
476
|
+
// missing reads title_en.
|
|
477
|
+
map<string, string> titles = 12;
|
|
475
478
|
}
|
|
476
479
|
|
|
477
480
|
message AdminTasksResponse {
|
|
@@ -682,6 +685,10 @@ message AdminSetTaskRequest {
|
|
|
682
685
|
string title_en = 5;
|
|
683
686
|
optional int32 max_count = 6;
|
|
684
687
|
optional int32 sort = 7;
|
|
688
|
+
// The other languages' titles (es, pt, de, ru, id, vi). Any key sent
|
|
689
|
+
// replaces them all ('' = that language reads title_en); none sent
|
|
690
|
+
// leaves them as they are.
|
|
691
|
+
map<string, string> titles = 8;
|
|
685
692
|
}
|
|
686
693
|
|
|
687
694
|
// ---- admin gifts ------------------------------------------------------------
|
|
@@ -693,8 +700,13 @@ message AdminGiftPreviewRequest {
|
|
|
693
700
|
bool all_miners = 2;
|
|
694
701
|
// JR per person, at most the weekly limit.
|
|
695
702
|
string amount = 3;
|
|
696
|
-
// Why
|
|
703
|
+
// Why, optional ('' = no note). In the panel's log and the person's
|
|
704
|
+
// history; the push carries it too.
|
|
697
705
|
string note = 4;
|
|
706
|
+
// The note per app language (tr, en, es, pt, de, ru, id, vi), all
|
|
707
|
+
// optional: a language without one reads the English, then the Turkish,
|
|
708
|
+
// then `note`.
|
|
709
|
+
map<string, string> notes = 5;
|
|
698
710
|
}
|
|
699
711
|
|
|
700
712
|
message AdminGiftRecipient {
|
|
@@ -744,6 +756,8 @@ message AdminGift {
|
|
|
744
756
|
string total_paid = 10;
|
|
745
757
|
string created_at = 11;
|
|
746
758
|
string finished_at = 12;
|
|
759
|
+
// The note per language, as sent (see AdminGiftPreviewRequest).
|
|
760
|
+
map<string, string> notes = 13;
|
|
747
761
|
}
|
|
748
762
|
|
|
749
763
|
message AdminGiftResponse {
|
|
@@ -125,12 +125,23 @@ message SendTestNotificationRequest {
|
|
|
125
125
|
|
|
126
126
|
message SendNotificationRequest {
|
|
127
127
|
string criteria = 1;
|
|
128
|
+
// The Turkish title (and every language's, before `titles`).
|
|
128
129
|
string title = 2;
|
|
130
|
+
// Body per app language; empty ones read the English, then the Turkish.
|
|
129
131
|
message NotificationMessage {
|
|
130
132
|
string en = 1;
|
|
131
133
|
string tr = 2;
|
|
134
|
+
string es = 3;
|
|
135
|
+
string pt = 4;
|
|
136
|
+
string de = 5;
|
|
137
|
+
string ru = 6;
|
|
138
|
+
string id = 7;
|
|
139
|
+
string vi = 8;
|
|
132
140
|
}
|
|
133
141
|
NotificationMessage notificationMessage = 3;
|
|
142
|
+
// Title per language (en, es, pt, de, ru, id, vi); one missing reads the
|
|
143
|
+
// English, then `title`.
|
|
144
|
+
map<string, string> titles = 4;
|
|
134
145
|
}
|
|
135
146
|
|
|
136
147
|
// Generic targeted push: one text per language, the same data for every
|
|
@@ -150,6 +161,10 @@ message SendUserPushRequest {
|
|
|
150
161
|
int32 ttl_seconds = 9;
|
|
151
162
|
// default | normal | high
|
|
152
163
|
string priority = 10;
|
|
164
|
+
// Language code (es, pt, de, ru, id, vi …) → text, for devices in the
|
|
165
|
+
// app's other languages; the _tr/_en fields above stay the fallback.
|
|
166
|
+
map<string, string> titles = 11;
|
|
167
|
+
map<string, string> bodies = 12;
|
|
153
168
|
}
|
|
154
169
|
|
|
155
170
|
// Targeted push for chat mentions (localized body built micro-side).
|
|
@@ -22,6 +22,10 @@ service PSupportService {
|
|
|
22
22
|
// The thread for an admin; marks the person's messages as read for admins.
|
|
23
23
|
rpc AdminTicket(ByIdRequest) returns(stream TicketThreadResponse) {}
|
|
24
24
|
rpc AdminSetStatus(SetStatusRequest) returns(stream TicketThreadResponse) {}
|
|
25
|
+
// Sets a ticket aside from the inbox, or brings it back.
|
|
26
|
+
rpc AdminSetHidden(SetHiddenRequest) returns(stream TicketThreadResponse) {}
|
|
27
|
+
// Yapay Zeka reply suggestions for the person's latest message.
|
|
28
|
+
rpc AdminTicketDrafts(TicketDraftsRequest) returns(stream TicketDraftsResponse) {}
|
|
25
29
|
|
|
26
30
|
rpc RemoveUserData(ByIdRequest) returns(stream EmptyResponse) {}
|
|
27
31
|
}
|
|
@@ -34,6 +34,8 @@ message Ticket {
|
|
|
34
34
|
string created_at = 16;
|
|
35
35
|
string updated_at = 17;
|
|
36
36
|
string closed_at = 18;
|
|
37
|
+
// Admin lists only: set aside from the inbox (the person sees no difference).
|
|
38
|
+
bool hidden = 19;
|
|
37
39
|
}
|
|
38
40
|
|
|
39
41
|
message TicketMessage {
|
|
@@ -58,7 +60,8 @@ message CreateTicketRequest {
|
|
|
58
60
|
message TicketListRequest {
|
|
59
61
|
int32 page = 1;
|
|
60
62
|
int32 per_page = 2;
|
|
61
|
-
// all | open | answered | closed
|
|
63
|
+
// all | open | answered | closed; admin lists also hidden. Every status but
|
|
64
|
+
// hidden leaves hidden tickets out.
|
|
62
65
|
string status = 3;
|
|
63
66
|
// Admin lists only: username / number / text search.
|
|
64
67
|
string search = 4;
|
|
@@ -81,6 +84,42 @@ message SetStatusRequest {
|
|
|
81
84
|
string status = 2;
|
|
82
85
|
}
|
|
83
86
|
|
|
87
|
+
message SetHiddenRequest {
|
|
88
|
+
string ticket_id = 1;
|
|
89
|
+
bool hidden = 2;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
// How many tickets each admin inbox tab holds (search does not change them).
|
|
93
|
+
// all and the statuses count the tickets that are not hidden.
|
|
94
|
+
message TicketCounts {
|
|
95
|
+
int32 open = 1;
|
|
96
|
+
int32 answered = 2;
|
|
97
|
+
int32 closed = 3;
|
|
98
|
+
int32 all = 4;
|
|
99
|
+
int32 hidden = 5;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
// Yapay Zeka reply suggestions for an admin. Generated on the first request
|
|
103
|
+
// after the person's latest message, then served from the database.
|
|
104
|
+
message TicketDraftsRequest {
|
|
105
|
+
string ticket_id = 1;
|
|
106
|
+
// Ask again even if suggestions exist, or the ticket is closed or hidden.
|
|
107
|
+
bool refresh = 2;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
message TicketDraftsResponse {
|
|
111
|
+
ResponseStatus status = 1;
|
|
112
|
+
// ready | not_needed (the team wrote last, or closed or hidden) |
|
|
113
|
+
// unavailable (not configured) | limit (the day's budget) | failed
|
|
114
|
+
string state = 2;
|
|
115
|
+
// Two suggestions when ready: a short one, then a fuller one.
|
|
116
|
+
repeated string drafts = 3;
|
|
117
|
+
// The knowledge did not cover the question well: read before sending.
|
|
118
|
+
bool uncertain = 4;
|
|
119
|
+
// The person's message these answer.
|
|
120
|
+
string for_message_id = 5;
|
|
121
|
+
}
|
|
122
|
+
|
|
84
123
|
message TicketResponse {
|
|
85
124
|
ResponseStatus status = 1;
|
|
86
125
|
optional Ticket data = 2;
|
|
@@ -92,6 +131,8 @@ message TicketListResponse {
|
|
|
92
131
|
optional PaginationMetaResult pagination = 3;
|
|
93
132
|
// Admin: tickets waiting for an answer; person: tickets with a new answer.
|
|
94
133
|
int32 attention_count = 4;
|
|
134
|
+
// Admin lists only.
|
|
135
|
+
optional TicketCounts counts = 5;
|
|
95
136
|
}
|
|
96
137
|
|
|
97
138
|
message TicketThreadResponse {
|