@babelforce/babelconnect-sdk 0.1.0

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.
@@ -0,0 +1,3086 @@
1
+ // @generated by protoc-gen-es v1.10.1 with parameter "target=ts"
2
+ // @generated from file babelconnect/v1/babelconnect.proto (package babelconnect.v1, syntax proto3)
3
+ /* eslint-disable */
4
+ // @ts-nocheck
5
+ import { Message, proto3, protoInt64 } from "@bufbuild/protobuf";
6
+ /**
7
+ * @generated from enum babelconnect.v1.AgentState
8
+ */
9
+ export var AgentState;
10
+ (function (AgentState) {
11
+ /**
12
+ * @generated from enum value: AGENT_STATE_UNSPECIFIED = 0;
13
+ */
14
+ AgentState[AgentState["UNSPECIFIED"] = 0] = "UNSPECIFIED";
15
+ /**
16
+ * @generated from enum value: AGENT_STATE_OFFLINE = 1;
17
+ */
18
+ AgentState[AgentState["OFFLINE"] = 1] = "OFFLINE";
19
+ /**
20
+ * @generated from enum value: AGENT_STATE_AVAILABLE = 2;
21
+ */
22
+ AgentState[AgentState["AVAILABLE"] = 2] = "AVAILABLE";
23
+ /**
24
+ * @generated from enum value: AGENT_STATE_IN_CALL = 3;
25
+ */
26
+ AgentState[AgentState["IN_CALL"] = 3] = "IN_CALL";
27
+ /**
28
+ * @generated from enum value: AGENT_STATE_WRAP_UP = 4;
29
+ */
30
+ AgentState[AgentState["WRAP_UP"] = 4] = "WRAP_UP";
31
+ /**
32
+ * @generated from enum value: AGENT_STATE_PAUSED = 5;
33
+ */
34
+ AgentState[AgentState["PAUSED"] = 5] = "PAUSED";
35
+ /**
36
+ * @generated from enum value: AGENT_STATE_RINGING = 6;
37
+ */
38
+ AgentState[AgentState["RINGING"] = 6] = "RINGING";
39
+ /**
40
+ * @generated from enum value: AGENT_STATE_BUSY = 7;
41
+ */
42
+ AgentState[AgentState["BUSY"] = 7] = "BUSY";
43
+ })(AgentState || (AgentState = {}));
44
+ // Retrieve enum metadata with: proto3.getEnumType(AgentState)
45
+ proto3.util.setEnumType(AgentState, "babelconnect.v1.AgentState", [
46
+ { no: 0, name: "AGENT_STATE_UNSPECIFIED" },
47
+ { no: 1, name: "AGENT_STATE_OFFLINE" },
48
+ { no: 2, name: "AGENT_STATE_AVAILABLE" },
49
+ { no: 3, name: "AGENT_STATE_IN_CALL" },
50
+ { no: 4, name: "AGENT_STATE_WRAP_UP" },
51
+ { no: 5, name: "AGENT_STATE_PAUSED" },
52
+ { no: 6, name: "AGENT_STATE_RINGING" },
53
+ { no: 7, name: "AGENT_STATE_BUSY" },
54
+ ]);
55
+ /**
56
+ * @generated from enum babelconnect.v1.CallDirection
57
+ */
58
+ export var CallDirection;
59
+ (function (CallDirection) {
60
+ /**
61
+ * @generated from enum value: CALL_DIRECTION_UNSPECIFIED = 0;
62
+ */
63
+ CallDirection[CallDirection["UNSPECIFIED"] = 0] = "UNSPECIFIED";
64
+ /**
65
+ * @generated from enum value: CALL_DIRECTION_INBOUND = 1;
66
+ */
67
+ CallDirection[CallDirection["INBOUND"] = 1] = "INBOUND";
68
+ /**
69
+ * @generated from enum value: CALL_DIRECTION_OUTBOUND = 2;
70
+ */
71
+ CallDirection[CallDirection["OUTBOUND"] = 2] = "OUTBOUND";
72
+ })(CallDirection || (CallDirection = {}));
73
+ // Retrieve enum metadata with: proto3.getEnumType(CallDirection)
74
+ proto3.util.setEnumType(CallDirection, "babelconnect.v1.CallDirection", [
75
+ { no: 0, name: "CALL_DIRECTION_UNSPECIFIED" },
76
+ { no: 1, name: "CALL_DIRECTION_INBOUND" },
77
+ { no: 2, name: "CALL_DIRECTION_OUTBOUND" },
78
+ ]);
79
+ /**
80
+ * @generated from enum babelconnect.v1.CallLifecycle
81
+ */
82
+ export var CallLifecycle;
83
+ (function (CallLifecycle) {
84
+ /**
85
+ * @generated from enum value: CALL_LIFECYCLE_UNSPECIFIED = 0;
86
+ */
87
+ CallLifecycle[CallLifecycle["UNSPECIFIED"] = 0] = "UNSPECIFIED";
88
+ /**
89
+ * @generated from enum value: CALL_LIFECYCLE_INIT = 1;
90
+ */
91
+ CallLifecycle[CallLifecycle["INIT"] = 1] = "INIT";
92
+ /**
93
+ * offer present; client should answer
94
+ *
95
+ * @generated from enum value: CALL_LIFECYCLE_RINGING = 2;
96
+ */
97
+ CallLifecycle[CallLifecycle["RINGING"] = 2] = "RINGING";
98
+ /**
99
+ * @generated from enum value: CALL_LIFECYCLE_IN_PROGRESS = 3;
100
+ */
101
+ CallLifecycle[CallLifecycle["IN_PROGRESS"] = 3] = "IN_PROGRESS";
102
+ /**
103
+ * media flowing both ways
104
+ *
105
+ * @generated from enum value: CALL_LIFECYCLE_BRIDGED = 4;
106
+ */
107
+ CallLifecycle[CallLifecycle["BRIDGED"] = 4] = "BRIDGED";
108
+ /**
109
+ * @generated from enum value: CALL_LIFECYCLE_COMPLETED = 5;
110
+ */
111
+ CallLifecycle[CallLifecycle["COMPLETED"] = 5] = "COMPLETED";
112
+ /**
113
+ * @generated from enum value: CALL_LIFECYCLE_FAILED = 6;
114
+ */
115
+ CallLifecycle[CallLifecycle["FAILED"] = 6] = "FAILED";
116
+ })(CallLifecycle || (CallLifecycle = {}));
117
+ // Retrieve enum metadata with: proto3.getEnumType(CallLifecycle)
118
+ proto3.util.setEnumType(CallLifecycle, "babelconnect.v1.CallLifecycle", [
119
+ { no: 0, name: "CALL_LIFECYCLE_UNSPECIFIED" },
120
+ { no: 1, name: "CALL_LIFECYCLE_INIT" },
121
+ { no: 2, name: "CALL_LIFECYCLE_RINGING" },
122
+ { no: 3, name: "CALL_LIFECYCLE_IN_PROGRESS" },
123
+ { no: 4, name: "CALL_LIFECYCLE_BRIDGED" },
124
+ { no: 5, name: "CALL_LIFECYCLE_COMPLETED" },
125
+ { no: 6, name: "CALL_LIFECYCLE_FAILED" },
126
+ ]);
127
+ /**
128
+ * @generated from enum babelconnect.v1.CallSource
129
+ */
130
+ export var CallSource;
131
+ (function (CallSource) {
132
+ /**
133
+ * @generated from enum value: CALL_SOURCE_UNSPECIFIED = 0;
134
+ */
135
+ CallSource[CallSource["UNSPECIFIED"] = 0] = "UNSPECIFIED";
136
+ /**
137
+ * @generated from enum value: CALL_SOURCE_API = 1;
138
+ */
139
+ CallSource[CallSource["API"] = 1] = "API";
140
+ /**
141
+ * @generated from enum value: CALL_SOURCE_WEBRTC = 2;
142
+ */
143
+ CallSource[CallSource["WEBRTC"] = 2] = "WEBRTC";
144
+ /**
145
+ * @generated from enum value: CALL_SOURCE_QUEUE = 3;
146
+ */
147
+ CallSource[CallSource["QUEUE"] = 3] = "QUEUE";
148
+ /**
149
+ * @generated from enum value: CALL_SOURCE_TRANSFER = 4;
150
+ */
151
+ CallSource[CallSource["TRANSFER"] = 4] = "TRANSFER";
152
+ /**
153
+ * @generated from enum value: CALL_SOURCE_DIALER = 5;
154
+ */
155
+ CallSource[CallSource["DIALER"] = 5] = "DIALER";
156
+ /**
157
+ * @generated from enum value: CALL_SOURCE_CONFERENCE = 6;
158
+ */
159
+ CallSource[CallSource["CONFERENCE"] = 6] = "CONFERENCE";
160
+ /**
161
+ * @generated from enum value: CALL_SOURCE_CALLBACK = 7;
162
+ */
163
+ CallSource[CallSource["CALLBACK"] = 7] = "CALLBACK";
164
+ })(CallSource || (CallSource = {}));
165
+ // Retrieve enum metadata with: proto3.getEnumType(CallSource)
166
+ proto3.util.setEnumType(CallSource, "babelconnect.v1.CallSource", [
167
+ { no: 0, name: "CALL_SOURCE_UNSPECIFIED" },
168
+ { no: 1, name: "CALL_SOURCE_API" },
169
+ { no: 2, name: "CALL_SOURCE_WEBRTC" },
170
+ { no: 3, name: "CALL_SOURCE_QUEUE" },
171
+ { no: 4, name: "CALL_SOURCE_TRANSFER" },
172
+ { no: 5, name: "CALL_SOURCE_DIALER" },
173
+ { no: 6, name: "CALL_SOURCE_CONFERENCE" },
174
+ { no: 7, name: "CALL_SOURCE_CALLBACK" },
175
+ ]);
176
+ /**
177
+ * @generated from message babelconnect.v1.AuthenticateRequest
178
+ */
179
+ export class AuthenticateRequest extends Message {
180
+ /**
181
+ * Optional: token may instead be supplied via "authorization" metadata.
182
+ *
183
+ * @generated from field: string token = 1;
184
+ */
185
+ token = "";
186
+ constructor(data) {
187
+ super();
188
+ proto3.util.initPartial(data, this);
189
+ }
190
+ static runtime = proto3;
191
+ static typeName = "babelconnect.v1.AuthenticateRequest";
192
+ static fields = proto3.util.newFieldList(() => [
193
+ { no: 1, name: "token", kind: "scalar", T: 9 /* ScalarType.STRING */ },
194
+ ]);
195
+ static fromBinary(bytes, options) {
196
+ return new AuthenticateRequest().fromBinary(bytes, options);
197
+ }
198
+ static fromJson(jsonValue, options) {
199
+ return new AuthenticateRequest().fromJson(jsonValue, options);
200
+ }
201
+ static fromJsonString(jsonString, options) {
202
+ return new AuthenticateRequest().fromJsonString(jsonString, options);
203
+ }
204
+ static equals(a, b) {
205
+ return proto3.util.equals(AuthenticateRequest, a, b);
206
+ }
207
+ }
208
+ /**
209
+ * SubscribeRequest opens the StateUpdate stream for the authenticated agent (the
210
+ * bearer token rides in "authorization" metadata, like every call). Empty today;
211
+ * reserved for future subscription filters.
212
+ *
213
+ * @generated from message babelconnect.v1.SubscribeRequest
214
+ */
215
+ export class SubscribeRequest extends Message {
216
+ constructor(data) {
217
+ super();
218
+ proto3.util.initPartial(data, this);
219
+ }
220
+ static runtime = proto3;
221
+ static typeName = "babelconnect.v1.SubscribeRequest";
222
+ static fields = proto3.util.newFieldList(() => []);
223
+ static fromBinary(bytes, options) {
224
+ return new SubscribeRequest().fromBinary(bytes, options);
225
+ }
226
+ static fromJson(jsonValue, options) {
227
+ return new SubscribeRequest().fromJson(jsonValue, options);
228
+ }
229
+ static fromJsonString(jsonString, options) {
230
+ return new SubscribeRequest().fromJsonString(jsonString, options);
231
+ }
232
+ static equals(a, b) {
233
+ return proto3.util.equals(SubscribeRequest, a, b);
234
+ }
235
+ }
236
+ /**
237
+ * Ack is the empty reply to Send. It only confirms the server accepted the
238
+ * command for processing — the resulting state (or an Error) is delivered on the
239
+ * Subscribe stream, the same way Session reports it.
240
+ *
241
+ * @generated from message babelconnect.v1.Ack
242
+ */
243
+ export class Ack extends Message {
244
+ constructor(data) {
245
+ super();
246
+ proto3.util.initPartial(data, this);
247
+ }
248
+ static runtime = proto3;
249
+ static typeName = "babelconnect.v1.Ack";
250
+ static fields = proto3.util.newFieldList(() => []);
251
+ static fromBinary(bytes, options) {
252
+ return new Ack().fromBinary(bytes, options);
253
+ }
254
+ static fromJson(jsonValue, options) {
255
+ return new Ack().fromJson(jsonValue, options);
256
+ }
257
+ static fromJsonString(jsonString, options) {
258
+ return new Ack().fromJsonString(jsonString, options);
259
+ }
260
+ static equals(a, b) {
261
+ return proto3.util.equals(Ack, a, b);
262
+ }
263
+ }
264
+ /**
265
+ * GetStateRequest fetches the current AgentView (the unary "get current state").
266
+ * Empty; the bearer token rides in "authorization" metadata like every call.
267
+ *
268
+ * @generated from message babelconnect.v1.GetStateRequest
269
+ */
270
+ export class GetStateRequest extends Message {
271
+ constructor(data) {
272
+ super();
273
+ proto3.util.initPartial(data, this);
274
+ }
275
+ static runtime = proto3;
276
+ static typeName = "babelconnect.v1.GetStateRequest";
277
+ static fields = proto3.util.newFieldList(() => []);
278
+ static fromBinary(bytes, options) {
279
+ return new GetStateRequest().fromBinary(bytes, options);
280
+ }
281
+ static fromJson(jsonValue, options) {
282
+ return new GetStateRequest().fromJson(jsonValue, options);
283
+ }
284
+ static fromJsonString(jsonString, options) {
285
+ return new GetStateRequest().fromJsonString(jsonString, options);
286
+ }
287
+ static equals(a, b) {
288
+ return proto3.util.equals(GetStateRequest, a, b);
289
+ }
290
+ }
291
+ /**
292
+ * HistoryRequest pages the agent's call history (newest first).
293
+ *
294
+ * @generated from message babelconnect.v1.HistoryRequest
295
+ */
296
+ export class HistoryRequest extends Message {
297
+ /**
298
+ * page size (default 50)
299
+ *
300
+ * @generated from field: int32 max = 1;
301
+ */
302
+ max = 0;
303
+ /**
304
+ * 1-based page (default 1)
305
+ *
306
+ * @generated from field: int32 page = 2;
307
+ */
308
+ page = 0;
309
+ constructor(data) {
310
+ super();
311
+ proto3.util.initPartial(data, this);
312
+ }
313
+ static runtime = proto3;
314
+ static typeName = "babelconnect.v1.HistoryRequest";
315
+ static fields = proto3.util.newFieldList(() => [
316
+ { no: 1, name: "max", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
317
+ { no: 2, name: "page", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
318
+ ]);
319
+ static fromBinary(bytes, options) {
320
+ return new HistoryRequest().fromBinary(bytes, options);
321
+ }
322
+ static fromJson(jsonValue, options) {
323
+ return new HistoryRequest().fromJson(jsonValue, options);
324
+ }
325
+ static fromJsonString(jsonString, options) {
326
+ return new HistoryRequest().fromJsonString(jsonString, options);
327
+ }
328
+ static equals(a, b) {
329
+ return proto3.util.equals(HistoryRequest, a, b);
330
+ }
331
+ }
332
+ /**
333
+ * HistoryResponse is one page of past calls.
334
+ *
335
+ * @generated from message babelconnect.v1.HistoryResponse
336
+ */
337
+ export class HistoryResponse extends Message {
338
+ /**
339
+ * @generated from field: repeated babelconnect.v1.CallRecord calls = 1;
340
+ */
341
+ calls = [];
342
+ constructor(data) {
343
+ super();
344
+ proto3.util.initPartial(data, this);
345
+ }
346
+ static runtime = proto3;
347
+ static typeName = "babelconnect.v1.HistoryResponse";
348
+ static fields = proto3.util.newFieldList(() => [
349
+ { no: 1, name: "calls", kind: "message", T: CallRecord, repeated: true },
350
+ ]);
351
+ static fromBinary(bytes, options) {
352
+ return new HistoryResponse().fromBinary(bytes, options);
353
+ }
354
+ static fromJson(jsonValue, options) {
355
+ return new HistoryResponse().fromJson(jsonValue, options);
356
+ }
357
+ static fromJsonString(jsonString, options) {
358
+ return new HistoryResponse().fromJsonString(jsonString, options);
359
+ }
360
+ static equals(a, b) {
361
+ return proto3.util.equals(HistoryResponse, a, b);
362
+ }
363
+ }
364
+ /**
365
+ * CallRecord is one past call for the history list (a flattened conversation).
366
+ *
367
+ * @generated from message babelconnect.v1.CallRecord
368
+ */
369
+ export class CallRecord extends Message {
370
+ /**
371
+ * @generated from field: string id = 1;
372
+ */
373
+ id = "";
374
+ /**
375
+ * @generated from field: babelconnect.v1.CallDirection direction = 2;
376
+ */
377
+ direction = CallDirection.UNSPECIFIED;
378
+ /**
379
+ * @generated from field: string from = 3;
380
+ */
381
+ from = "";
382
+ /**
383
+ * @generated from field: string to = 4;
384
+ */
385
+ to = "";
386
+ /**
387
+ * phonebook label for the other party, if known
388
+ *
389
+ * @generated from field: string contact = 5;
390
+ */
391
+ contact = "";
392
+ /**
393
+ * unix seconds of the call
394
+ *
395
+ * @generated from field: int64 time = 6;
396
+ */
397
+ time = protoInt64.zero;
398
+ /**
399
+ * @generated from field: int32 duration_ms = 7;
400
+ */
401
+ durationMs = 0;
402
+ /**
403
+ * @generated from field: bool has_recording = 8;
404
+ */
405
+ hasRecording = false;
406
+ /**
407
+ * playback URL when a recording exists
408
+ *
409
+ * @generated from field: string recording_url = 9;
410
+ */
411
+ recordingUrl = "";
412
+ constructor(data) {
413
+ super();
414
+ proto3.util.initPartial(data, this);
415
+ }
416
+ static runtime = proto3;
417
+ static typeName = "babelconnect.v1.CallRecord";
418
+ static fields = proto3.util.newFieldList(() => [
419
+ { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
420
+ { no: 2, name: "direction", kind: "enum", T: proto3.getEnumType(CallDirection) },
421
+ { no: 3, name: "from", kind: "scalar", T: 9 /* ScalarType.STRING */ },
422
+ { no: 4, name: "to", kind: "scalar", T: 9 /* ScalarType.STRING */ },
423
+ { no: 5, name: "contact", kind: "scalar", T: 9 /* ScalarType.STRING */ },
424
+ { no: 6, name: "time", kind: "scalar", T: 3 /* ScalarType.INT64 */ },
425
+ { no: 7, name: "duration_ms", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
426
+ { no: 8, name: "has_recording", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
427
+ { no: 9, name: "recording_url", kind: "scalar", T: 9 /* ScalarType.STRING */ },
428
+ ]);
429
+ static fromBinary(bytes, options) {
430
+ return new CallRecord().fromBinary(bytes, options);
431
+ }
432
+ static fromJson(jsonValue, options) {
433
+ return new CallRecord().fromJson(jsonValue, options);
434
+ }
435
+ static fromJsonString(jsonString, options) {
436
+ return new CallRecord().fromJsonString(jsonString, options);
437
+ }
438
+ static equals(a, b) {
439
+ return proto3.util.equals(CallRecord, a, b);
440
+ }
441
+ }
442
+ /**
443
+ * @generated from message babelconnect.v1.Identity
444
+ */
445
+ export class Identity extends Message {
446
+ /**
447
+ * Agent UUID, hyphen-normalized
448
+ *
449
+ * @generated from field: string agent_id = 1;
450
+ */
451
+ agentId = "";
452
+ /**
453
+ * customer / account id
454
+ *
455
+ * @generated from field: string account = 2;
456
+ */
457
+ account = "";
458
+ /**
459
+ * agent's number, if any
460
+ *
461
+ * @generated from field: string number = 3;
462
+ */
463
+ number = "";
464
+ /**
465
+ * @generated from field: string username = 4;
466
+ */
467
+ username = "";
468
+ /**
469
+ * current presence
470
+ *
471
+ * @generated from field: babelconnect.v1.AgentState state = 5;
472
+ */
473
+ state = AgentState.UNSPECIFIED;
474
+ constructor(data) {
475
+ super();
476
+ proto3.util.initPartial(data, this);
477
+ }
478
+ static runtime = proto3;
479
+ static typeName = "babelconnect.v1.Identity";
480
+ static fields = proto3.util.newFieldList(() => [
481
+ { no: 1, name: "agent_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
482
+ { no: 2, name: "account", kind: "scalar", T: 9 /* ScalarType.STRING */ },
483
+ { no: 3, name: "number", kind: "scalar", T: 9 /* ScalarType.STRING */ },
484
+ { no: 4, name: "username", kind: "scalar", T: 9 /* ScalarType.STRING */ },
485
+ { no: 5, name: "state", kind: "enum", T: proto3.getEnumType(AgentState) },
486
+ ]);
487
+ static fromBinary(bytes, options) {
488
+ return new Identity().fromBinary(bytes, options);
489
+ }
490
+ static fromJson(jsonValue, options) {
491
+ return new Identity().fromJson(jsonValue, options);
492
+ }
493
+ static fromJsonString(jsonString, options) {
494
+ return new Identity().fromJsonString(jsonString, options);
495
+ }
496
+ static equals(a, b) {
497
+ return proto3.util.equals(Identity, a, b);
498
+ }
499
+ }
500
+ /**
501
+ * AgentView is the complete per-agent state the server owns and renders to. A
502
+ * snapshot carries the whole view; patches carry entity-level deltas.
503
+ *
504
+ * @generated from message babelconnect.v1.AgentView
505
+ */
506
+ export class AgentView extends Message {
507
+ /**
508
+ * @generated from field: babelconnect.v1.AgentInfo agent = 1;
509
+ */
510
+ agent;
511
+ /**
512
+ * calls currently in flight for this agent
513
+ *
514
+ * @generated from field: repeated babelconnect.v1.CallState active_calls = 2;
515
+ */
516
+ activeCalls = [];
517
+ /**
518
+ * @generated from field: babelconnect.v1.WrapUpStatus wrap_up = 3;
519
+ */
520
+ wrapUp;
521
+ /**
522
+ * SMS thread summaries (full history on demand)
523
+ *
524
+ * @generated from field: repeated babelconnect.v1.SmsConversation sms = 4;
525
+ */
526
+ sms = [];
527
+ /**
528
+ * active multi-party conferences (usually 0 or 1)
529
+ *
530
+ * @generated from field: repeated babelconnect.v1.Conference conferences = 5;
531
+ */
532
+ conferences = [];
533
+ /**
534
+ * which surfaces this deployment/account shows
535
+ *
536
+ * @generated from field: babelconnect.v1.AppConfig config = 6;
537
+ */
538
+ config;
539
+ constructor(data) {
540
+ super();
541
+ proto3.util.initPartial(data, this);
542
+ }
543
+ static runtime = proto3;
544
+ static typeName = "babelconnect.v1.AgentView";
545
+ static fields = proto3.util.newFieldList(() => [
546
+ { no: 1, name: "agent", kind: "message", T: AgentInfo },
547
+ { no: 2, name: "active_calls", kind: "message", T: CallState, repeated: true },
548
+ { no: 3, name: "wrap_up", kind: "message", T: WrapUpStatus },
549
+ { no: 4, name: "sms", kind: "message", T: SmsConversation, repeated: true },
550
+ { no: 5, name: "conferences", kind: "message", T: Conference, repeated: true },
551
+ { no: 6, name: "config", kind: "message", T: AppConfig },
552
+ ]);
553
+ static fromBinary(bytes, options) {
554
+ return new AgentView().fromBinary(bytes, options);
555
+ }
556
+ static fromJson(jsonValue, options) {
557
+ return new AgentView().fromJson(jsonValue, options);
558
+ }
559
+ static fromJsonString(jsonString, options) {
560
+ return new AgentView().fromJsonString(jsonString, options);
561
+ }
562
+ static equals(a, b) {
563
+ return proto3.util.equals(AgentView, a, b);
564
+ }
565
+ }
566
+ /**
567
+ * AppConfig is the server-resolved, per-agent feature configuration the client
568
+ * renders against (UI = f(view)): which surfaces are shown and their per-feature
569
+ * settings. Resolved server-side per deployment + account, so the client is a
570
+ * pure renderer. Carried on the snapshot (no patch) — config applies on next connect.
571
+ *
572
+ * @generated from message babelconnect.v1.AppConfig
573
+ */
574
+ export class AppConfig extends Message {
575
+ /**
576
+ * @generated from field: babelconnect.v1.FeatureCalls calls = 1;
577
+ */
578
+ calls;
579
+ /**
580
+ * @generated from field: babelconnect.v1.FeatureMessaging messaging = 2;
581
+ */
582
+ messaging;
583
+ /**
584
+ * @generated from field: babelconnect.v1.FeatureHistory history = 3;
585
+ */
586
+ history;
587
+ /**
588
+ * @generated from field: babelconnect.v1.FeatureAccount account = 4;
589
+ */
590
+ account;
591
+ /**
592
+ * @generated from field: babelconnect.v1.FeatureOutbound outbound = 5;
593
+ */
594
+ outbound;
595
+ /**
596
+ * @generated from field: babelconnect.v1.FeatureCti cti = 6;
597
+ */
598
+ cti;
599
+ /**
600
+ * Contacts (phonebook) tab
601
+ *
602
+ * @generated from field: babelconnect.v1.FeaturePhonebook phonebook = 7;
603
+ */
604
+ phonebook;
605
+ /**
606
+ * build version for the Status/About surface; reserve 8–14
607
+ *
608
+ * @generated from field: string server_version = 15;
609
+ */
610
+ serverVersion = "";
611
+ constructor(data) {
612
+ super();
613
+ proto3.util.initPartial(data, this);
614
+ }
615
+ static runtime = proto3;
616
+ static typeName = "babelconnect.v1.AppConfig";
617
+ static fields = proto3.util.newFieldList(() => [
618
+ { no: 1, name: "calls", kind: "message", T: FeatureCalls },
619
+ { no: 2, name: "messaging", kind: "message", T: FeatureMessaging },
620
+ { no: 3, name: "history", kind: "message", T: FeatureHistory },
621
+ { no: 4, name: "account", kind: "message", T: FeatureAccount },
622
+ { no: 5, name: "outbound", kind: "message", T: FeatureOutbound },
623
+ { no: 6, name: "cti", kind: "message", T: FeatureCti },
624
+ { no: 7, name: "phonebook", kind: "message", T: FeaturePhonebook },
625
+ { no: 15, name: "server_version", kind: "scalar", T: 9 /* ScalarType.STRING */ },
626
+ ]);
627
+ static fromBinary(bytes, options) {
628
+ return new AppConfig().fromBinary(bytes, options);
629
+ }
630
+ static fromJson(jsonValue, options) {
631
+ return new AppConfig().fromJson(jsonValue, options);
632
+ }
633
+ static fromJsonString(jsonString, options) {
634
+ return new AppConfig().fromJsonString(jsonString, options);
635
+ }
636
+ static equals(a, b) {
637
+ return proto3.util.equals(AppConfig, a, b);
638
+ }
639
+ }
640
+ /**
641
+ * FeatureCalls gates the call surface (Phone tab) and its in-call actions.
642
+ * Recording stays gated by AgentInfo.can_record (not duplicated here); device
643
+ * (browser/telephone) by AgentInfo.webrtc_enabled.
644
+ *
645
+ * @generated from message babelconnect.v1.FeatureCalls
646
+ */
647
+ export class FeatureCalls extends Message {
648
+ /**
649
+ * @generated from field: bool enabled = 1;
650
+ */
651
+ enabled = false;
652
+ /**
653
+ * cold transfer action
654
+ *
655
+ * @generated from field: bool allow_transfer = 2;
656
+ */
657
+ allowTransfer = false;
658
+ /**
659
+ * conference action (own bucket later when that surface lands)
660
+ *
661
+ * @generated from field: bool allow_conference = 3;
662
+ */
663
+ allowConference = false;
664
+ constructor(data) {
665
+ super();
666
+ proto3.util.initPartial(data, this);
667
+ }
668
+ static runtime = proto3;
669
+ static typeName = "babelconnect.v1.FeatureCalls";
670
+ static fields = proto3.util.newFieldList(() => [
671
+ { no: 1, name: "enabled", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
672
+ { no: 2, name: "allow_transfer", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
673
+ { no: 3, name: "allow_conference", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
674
+ ]);
675
+ static fromBinary(bytes, options) {
676
+ return new FeatureCalls().fromBinary(bytes, options);
677
+ }
678
+ static fromJson(jsonValue, options) {
679
+ return new FeatureCalls().fromJson(jsonValue, options);
680
+ }
681
+ static fromJsonString(jsonString, options) {
682
+ return new FeatureCalls().fromJsonString(jsonString, options);
683
+ }
684
+ static equals(a, b) {
685
+ return proto3.util.equals(FeatureCalls, a, b);
686
+ }
687
+ }
688
+ /**
689
+ * @generated from message babelconnect.v1.FeatureMessaging
690
+ */
691
+ export class FeatureMessaging extends Message {
692
+ /**
693
+ * @generated from field: bool enabled = 1;
694
+ */
695
+ enabled = false;
696
+ constructor(data) {
697
+ super();
698
+ proto3.util.initPartial(data, this);
699
+ }
700
+ static runtime = proto3;
701
+ static typeName = "babelconnect.v1.FeatureMessaging";
702
+ static fields = proto3.util.newFieldList(() => [
703
+ { no: 1, name: "enabled", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
704
+ ]);
705
+ static fromBinary(bytes, options) {
706
+ return new FeatureMessaging().fromBinary(bytes, options);
707
+ }
708
+ static fromJson(jsonValue, options) {
709
+ return new FeatureMessaging().fromJson(jsonValue, options);
710
+ }
711
+ static fromJsonString(jsonString, options) {
712
+ return new FeatureMessaging().fromJsonString(jsonString, options);
713
+ }
714
+ static equals(a, b) {
715
+ return proto3.util.equals(FeatureMessaging, a, b);
716
+ }
717
+ }
718
+ /**
719
+ * @generated from message babelconnect.v1.FeatureHistory
720
+ */
721
+ export class FeatureHistory extends Message {
722
+ /**
723
+ * @generated from field: bool enabled = 1;
724
+ */
725
+ enabled = false;
726
+ constructor(data) {
727
+ super();
728
+ proto3.util.initPartial(data, this);
729
+ }
730
+ static runtime = proto3;
731
+ static typeName = "babelconnect.v1.FeatureHistory";
732
+ static fields = proto3.util.newFieldList(() => [
733
+ { no: 1, name: "enabled", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
734
+ ]);
735
+ static fromBinary(bytes, options) {
736
+ return new FeatureHistory().fromBinary(bytes, options);
737
+ }
738
+ static fromJson(jsonValue, options) {
739
+ return new FeatureHistory().fromJson(jsonValue, options);
740
+ }
741
+ static fromJsonString(jsonString, options) {
742
+ return new FeatureHistory().fromJsonString(jsonString, options);
743
+ }
744
+ static equals(a, b) {
745
+ return proto3.util.equals(FeatureHistory, a, b);
746
+ }
747
+ }
748
+ /**
749
+ * FeatureAccount gates the Account tab and its sections.
750
+ *
751
+ * @generated from message babelconnect.v1.FeatureAccount
752
+ */
753
+ export class FeatureAccount extends Message {
754
+ /**
755
+ * @generated from field: bool enabled = 1;
756
+ */
757
+ enabled = false;
758
+ /**
759
+ * browser/telephone selector + agent-number field
760
+ *
761
+ * @generated from field: bool allow_device_switch = 2;
762
+ */
763
+ allowDeviceSwitch = false;
764
+ /**
765
+ * the Status/About section
766
+ *
767
+ * @generated from field: bool show_status = 3;
768
+ */
769
+ showStatus = false;
770
+ constructor(data) {
771
+ super();
772
+ proto3.util.initPartial(data, this);
773
+ }
774
+ static runtime = proto3;
775
+ static typeName = "babelconnect.v1.FeatureAccount";
776
+ static fields = proto3.util.newFieldList(() => [
777
+ { no: 1, name: "enabled", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
778
+ { no: 2, name: "allow_device_switch", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
779
+ { no: 3, name: "show_status", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
780
+ ]);
781
+ static fromBinary(bytes, options) {
782
+ return new FeatureAccount().fromBinary(bytes, options);
783
+ }
784
+ static fromJson(jsonValue, options) {
785
+ return new FeatureAccount().fromJson(jsonValue, options);
786
+ }
787
+ static fromJsonString(jsonString, options) {
788
+ return new FeatureAccount().fromJsonString(jsonString, options);
789
+ }
790
+ static equals(a, b) {
791
+ return proto3.util.equals(FeatureAccount, a, b);
792
+ }
793
+ }
794
+ /**
795
+ * @generated from message babelconnect.v1.FeatureOutbound
796
+ */
797
+ export class FeatureOutbound extends Message {
798
+ /**
799
+ * @generated from field: bool enabled = 1;
800
+ */
801
+ enabled = false;
802
+ constructor(data) {
803
+ super();
804
+ proto3.util.initPartial(data, this);
805
+ }
806
+ static runtime = proto3;
807
+ static typeName = "babelconnect.v1.FeatureOutbound";
808
+ static fields = proto3.util.newFieldList(() => [
809
+ { no: 1, name: "enabled", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
810
+ ]);
811
+ static fromBinary(bytes, options) {
812
+ return new FeatureOutbound().fromBinary(bytes, options);
813
+ }
814
+ static fromJson(jsonValue, options) {
815
+ return new FeatureOutbound().fromJson(jsonValue, options);
816
+ }
817
+ static fromJsonString(jsonString, options) {
818
+ return new FeatureOutbound().fromJsonString(jsonString, options);
819
+ }
820
+ static equals(a, b) {
821
+ return proto3.util.equals(FeatureOutbound, a, b);
822
+ }
823
+ }
824
+ /**
825
+ * FeatureCti gates CTI/integration behavior (screen-pop + app→host call events).
826
+ *
827
+ * @generated from message babelconnect.v1.FeatureCti
828
+ */
829
+ export class FeatureCti extends Message {
830
+ /**
831
+ * @generated from field: bool enabled = 1;
832
+ */
833
+ enabled = false;
834
+ /**
835
+ * emit cti.call to an embedding host on each transition
836
+ *
837
+ * @generated from field: bool emit_call_events = 2;
838
+ */
839
+ emitCallEvents = false;
840
+ /**
841
+ * surface screen-pop notifications
842
+ *
843
+ * @generated from field: bool screen_pop = 3;
844
+ */
845
+ screenPop = false;
846
+ constructor(data) {
847
+ super();
848
+ proto3.util.initPartial(data, this);
849
+ }
850
+ static runtime = proto3;
851
+ static typeName = "babelconnect.v1.FeatureCti";
852
+ static fields = proto3.util.newFieldList(() => [
853
+ { no: 1, name: "enabled", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
854
+ { no: 2, name: "emit_call_events", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
855
+ { no: 3, name: "screen_pop", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
856
+ ]);
857
+ static fromBinary(bytes, options) {
858
+ return new FeatureCti().fromBinary(bytes, options);
859
+ }
860
+ static fromJson(jsonValue, options) {
861
+ return new FeatureCti().fromJson(jsonValue, options);
862
+ }
863
+ static fromJsonString(jsonString, options) {
864
+ return new FeatureCti().fromJsonString(jsonString, options);
865
+ }
866
+ static equals(a, b) {
867
+ return proto3.util.equals(FeatureCti, a, b);
868
+ }
869
+ }
870
+ /**
871
+ * @generated from message babelconnect.v1.FeaturePhonebook
872
+ */
873
+ export class FeaturePhonebook extends Message {
874
+ /**
875
+ * @generated from field: bool enabled = 1;
876
+ */
877
+ enabled = false;
878
+ constructor(data) {
879
+ super();
880
+ proto3.util.initPartial(data, this);
881
+ }
882
+ static runtime = proto3;
883
+ static typeName = "babelconnect.v1.FeaturePhonebook";
884
+ static fields = proto3.util.newFieldList(() => [
885
+ { no: 1, name: "enabled", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
886
+ ]);
887
+ static fromBinary(bytes, options) {
888
+ return new FeaturePhonebook().fromBinary(bytes, options);
889
+ }
890
+ static fromJson(jsonValue, options) {
891
+ return new FeaturePhonebook().fromJson(jsonValue, options);
892
+ }
893
+ static fromJsonString(jsonString, options) {
894
+ return new FeaturePhonebook().fromJsonString(jsonString, options);
895
+ }
896
+ static equals(a, b) {
897
+ return proto3.util.equals(FeaturePhonebook, a, b);
898
+ }
899
+ }
900
+ /**
901
+ * AgentInfo is the agent block of the view (identity + live presence + caps).
902
+ *
903
+ * @generated from message babelconnect.v1.AgentInfo
904
+ */
905
+ export class AgentInfo extends Message {
906
+ /**
907
+ * Agent UUID (hyphen-normalized)
908
+ *
909
+ * @generated from field: string id = 1;
910
+ */
911
+ id = "";
912
+ /**
913
+ * @generated from field: string name = 2;
914
+ */
915
+ name = "";
916
+ /**
917
+ * @generated from field: string number = 3;
918
+ */
919
+ number = "";
920
+ /**
921
+ * @generated from field: babelconnect.v1.AgentState presence = 4;
922
+ */
923
+ presence = AgentState.UNSPECIFIED;
924
+ /**
925
+ * @generated from field: bool webrtc_enabled = 5;
926
+ */
927
+ webrtcEnabled = false;
928
+ /**
929
+ * currently selected outbound number
930
+ *
931
+ * @generated from field: string display_as = 6;
932
+ */
933
+ displayAs = "";
934
+ /**
935
+ * @generated from field: repeated string available_numbers = 7;
936
+ */
937
+ availableNumbers = [];
938
+ /**
939
+ * @generated from field: bool can_record = 8;
940
+ */
941
+ canRecord = false;
942
+ /**
943
+ * Presence selector: the options the agent may switch to (AVAILABLE plus any
944
+ * configured pause reasons), and the current presence's exact name+label. The
945
+ * `presence` enum above stays the coarse bucket for icons/colors; these carry
946
+ * the precise presence name+label the client renders + selects.
947
+ *
948
+ * @generated from field: repeated babelconnect.v1.PresenceOption presence_options = 9;
949
+ */
950
+ presenceOptions = [];
951
+ /**
952
+ * current presence name, e.g. "available", "break"
953
+ *
954
+ * @generated from field: string presence_name = 10;
955
+ */
956
+ presenceName = "";
957
+ /**
958
+ * current presence label, e.g. "Available", "Break"
959
+ *
960
+ * @generated from field: string presence_label = 11;
961
+ */
962
+ presenceLabel = "";
963
+ /**
964
+ * recording tags the agent may apply
965
+ *
966
+ * @generated from field: repeated string available_tags = 12;
967
+ */
968
+ availableTags = [];
969
+ /**
970
+ * dial-from contacts + recent numbers
971
+ *
972
+ * @generated from field: repeated babelconnect.v1.PhonebookEntry phonebook = 13;
973
+ */
974
+ phonebook = [];
975
+ /**
976
+ * account records every outbound automatically
977
+ *
978
+ * @generated from field: bool always_record_outbound = 14;
979
+ */
980
+ alwaysRecordOutbound = false;
981
+ /**
982
+ * Identity for the shell/Status surface (resolved at auth, no extra fetch).
983
+ *
984
+ * login / email
985
+ *
986
+ * @generated from field: string username = 15;
987
+ */
988
+ username = "";
989
+ /**
990
+ * customer / account id
991
+ *
992
+ * @generated from field: string account_id = 16;
993
+ */
994
+ accountId = "";
995
+ /**
996
+ * account / company display name, when known
997
+ *
998
+ * @generated from field: string account_name = 17;
999
+ */
1000
+ accountName = "";
1001
+ constructor(data) {
1002
+ super();
1003
+ proto3.util.initPartial(data, this);
1004
+ }
1005
+ static runtime = proto3;
1006
+ static typeName = "babelconnect.v1.AgentInfo";
1007
+ static fields = proto3.util.newFieldList(() => [
1008
+ { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1009
+ { no: 2, name: "name", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1010
+ { no: 3, name: "number", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1011
+ { no: 4, name: "presence", kind: "enum", T: proto3.getEnumType(AgentState) },
1012
+ { no: 5, name: "webrtc_enabled", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
1013
+ { no: 6, name: "display_as", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1014
+ { no: 7, name: "available_numbers", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true },
1015
+ { no: 8, name: "can_record", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
1016
+ { no: 9, name: "presence_options", kind: "message", T: PresenceOption, repeated: true },
1017
+ { no: 10, name: "presence_name", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1018
+ { no: 11, name: "presence_label", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1019
+ { no: 12, name: "available_tags", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true },
1020
+ { no: 13, name: "phonebook", kind: "message", T: PhonebookEntry, repeated: true },
1021
+ { no: 14, name: "always_record_outbound", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
1022
+ { no: 15, name: "username", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1023
+ { no: 16, name: "account_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1024
+ { no: 17, name: "account_name", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1025
+ ]);
1026
+ static fromBinary(bytes, options) {
1027
+ return new AgentInfo().fromBinary(bytes, options);
1028
+ }
1029
+ static fromJson(jsonValue, options) {
1030
+ return new AgentInfo().fromJson(jsonValue, options);
1031
+ }
1032
+ static fromJsonString(jsonString, options) {
1033
+ return new AgentInfo().fromJsonString(jsonString, options);
1034
+ }
1035
+ static equals(a, b) {
1036
+ return proto3.util.equals(AgentInfo, a, b);
1037
+ }
1038
+ }
1039
+ /**
1040
+ * PhonebookEntry is one dialable contact (or a recent number) for the dialer's
1041
+ * autocomplete.
1042
+ *
1043
+ * @generated from message babelconnect.v1.PhonebookEntry
1044
+ */
1045
+ export class PhonebookEntry extends Message {
1046
+ /**
1047
+ * contact name, or "recent" for a recently dialed number
1048
+ *
1049
+ * @generated from field: string label = 1;
1050
+ */
1051
+ label = "";
1052
+ /**
1053
+ * @generated from field: string number = 2;
1054
+ */
1055
+ number = "";
1056
+ constructor(data) {
1057
+ super();
1058
+ proto3.util.initPartial(data, this);
1059
+ }
1060
+ static runtime = proto3;
1061
+ static typeName = "babelconnect.v1.PhonebookEntry";
1062
+ static fields = proto3.util.newFieldList(() => [
1063
+ { no: 1, name: "label", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1064
+ { no: 2, name: "number", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1065
+ ]);
1066
+ static fromBinary(bytes, options) {
1067
+ return new PhonebookEntry().fromBinary(bytes, options);
1068
+ }
1069
+ static fromJson(jsonValue, options) {
1070
+ return new PhonebookEntry().fromJson(jsonValue, options);
1071
+ }
1072
+ static fromJsonString(jsonString, options) {
1073
+ return new PhonebookEntry().fromJsonString(jsonString, options);
1074
+ }
1075
+ static equals(a, b) {
1076
+ return proto3.util.equals(PhonebookEntry, a, b);
1077
+ }
1078
+ }
1079
+ /**
1080
+ * PhonebookRequest / PhonebookResponse re-pull the agent's merged contacts +
1081
+ * recent numbers on demand (refresh). `query` filters by label/number server-side.
1082
+ *
1083
+ * @generated from message babelconnect.v1.PhonebookRequest
1084
+ */
1085
+ export class PhonebookRequest extends Message {
1086
+ /**
1087
+ * page size (default 200)
1088
+ *
1089
+ * @generated from field: int32 max = 1;
1090
+ */
1091
+ max = 0;
1092
+ /**
1093
+ * 1-based page (default 1)
1094
+ *
1095
+ * @generated from field: int32 page = 2;
1096
+ */
1097
+ page = 0;
1098
+ /**
1099
+ * optional label/number filter
1100
+ *
1101
+ * @generated from field: string query = 3;
1102
+ */
1103
+ query = "";
1104
+ constructor(data) {
1105
+ super();
1106
+ proto3.util.initPartial(data, this);
1107
+ }
1108
+ static runtime = proto3;
1109
+ static typeName = "babelconnect.v1.PhonebookRequest";
1110
+ static fields = proto3.util.newFieldList(() => [
1111
+ { no: 1, name: "max", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
1112
+ { no: 2, name: "page", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
1113
+ { no: 3, name: "query", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1114
+ ]);
1115
+ static fromBinary(bytes, options) {
1116
+ return new PhonebookRequest().fromBinary(bytes, options);
1117
+ }
1118
+ static fromJson(jsonValue, options) {
1119
+ return new PhonebookRequest().fromJson(jsonValue, options);
1120
+ }
1121
+ static fromJsonString(jsonString, options) {
1122
+ return new PhonebookRequest().fromJsonString(jsonString, options);
1123
+ }
1124
+ static equals(a, b) {
1125
+ return proto3.util.equals(PhonebookRequest, a, b);
1126
+ }
1127
+ }
1128
+ /**
1129
+ * @generated from message babelconnect.v1.PhonebookResponse
1130
+ */
1131
+ export class PhonebookResponse extends Message {
1132
+ /**
1133
+ * @generated from field: repeated babelconnect.v1.PhonebookEntry entries = 1;
1134
+ */
1135
+ entries = [];
1136
+ constructor(data) {
1137
+ super();
1138
+ proto3.util.initPartial(data, this);
1139
+ }
1140
+ static runtime = proto3;
1141
+ static typeName = "babelconnect.v1.PhonebookResponse";
1142
+ static fields = proto3.util.newFieldList(() => [
1143
+ { no: 1, name: "entries", kind: "message", T: PhonebookEntry, repeated: true },
1144
+ ]);
1145
+ static fromBinary(bytes, options) {
1146
+ return new PhonebookResponse().fromBinary(bytes, options);
1147
+ }
1148
+ static fromJson(jsonValue, options) {
1149
+ return new PhonebookResponse().fromJson(jsonValue, options);
1150
+ }
1151
+ static fromJsonString(jsonString, options) {
1152
+ return new PhonebookResponse().fromJsonString(jsonString, options);
1153
+ }
1154
+ static equals(a, b) {
1155
+ return proto3.util.equals(PhonebookResponse, a, b);
1156
+ }
1157
+ }
1158
+ /**
1159
+ * PresenceOption is one selectable agent presence — "Available" or a configured
1160
+ * pause reason. `available` is whether the agent can receive calls in it.
1161
+ *
1162
+ * @generated from message babelconnect.v1.PresenceOption
1163
+ */
1164
+ export class PresenceOption extends Message {
1165
+ /**
1166
+ * e.g. "available", "break"
1167
+ *
1168
+ * @generated from field: string name = 1;
1169
+ */
1170
+ name = "";
1171
+ /**
1172
+ * e.g. "Available", "Break"
1173
+ *
1174
+ * @generated from field: string label = 2;
1175
+ */
1176
+ label = "";
1177
+ /**
1178
+ * @generated from field: bool available = 3;
1179
+ */
1180
+ available = false;
1181
+ constructor(data) {
1182
+ super();
1183
+ proto3.util.initPartial(data, this);
1184
+ }
1185
+ static runtime = proto3;
1186
+ static typeName = "babelconnect.v1.PresenceOption";
1187
+ static fields = proto3.util.newFieldList(() => [
1188
+ { no: 1, name: "name", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1189
+ { no: 2, name: "label", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1190
+ { no: 3, name: "available", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
1191
+ ]);
1192
+ static fromBinary(bytes, options) {
1193
+ return new PresenceOption().fromBinary(bytes, options);
1194
+ }
1195
+ static fromJson(jsonValue, options) {
1196
+ return new PresenceOption().fromJson(jsonValue, options);
1197
+ }
1198
+ static fromJsonString(jsonString, options) {
1199
+ return new PresenceOption().fromJsonString(jsonString, options);
1200
+ }
1201
+ static equals(a, b) {
1202
+ return proto3.util.equals(PresenceOption, a, b);
1203
+ }
1204
+ }
1205
+ /**
1206
+ * CallState is one call as the server sees it. Replace-by-id on upsert.
1207
+ *
1208
+ * @generated from message babelconnect.v1.CallState
1209
+ */
1210
+ export class CallState extends Message {
1211
+ /**
1212
+ * server call id
1213
+ *
1214
+ * @generated from field: string id = 1;
1215
+ */
1216
+ id = "";
1217
+ /**
1218
+ * @generated from field: babelconnect.v1.CallDirection direction = 2;
1219
+ */
1220
+ direction = CallDirection.UNSPECIFIED;
1221
+ /**
1222
+ * @generated from field: babelconnect.v1.CallLifecycle state = 3;
1223
+ */
1224
+ state = CallLifecycle.UNSPECIFIED;
1225
+ /**
1226
+ * @generated from field: babelconnect.v1.CallSource source = 4;
1227
+ */
1228
+ source = CallSource.UNSPECIFIED;
1229
+ /**
1230
+ * @generated from field: string from = 5;
1231
+ */
1232
+ from = "";
1233
+ /**
1234
+ * @generated from field: string to = 6;
1235
+ */
1236
+ to = "";
1237
+ /**
1238
+ * @generated from field: string queue_name = 7;
1239
+ */
1240
+ queueName = "";
1241
+ /**
1242
+ * unix seconds when the call bridged (0 until then)
1243
+ *
1244
+ * @generated from field: int64 established_at = 8;
1245
+ */
1246
+ establishedAt = protoInt64.zero;
1247
+ /**
1248
+ * @generated from field: bool muted = 9;
1249
+ */
1250
+ muted = false;
1251
+ /**
1252
+ * @generated from field: bool on_hold = 10;
1253
+ */
1254
+ onHold = false;
1255
+ /**
1256
+ * @generated from field: bool recording = 11;
1257
+ */
1258
+ recording = false;
1259
+ /**
1260
+ * @generated from field: bool anonymous = 12;
1261
+ */
1262
+ anonymous = false;
1263
+ /**
1264
+ * SDP offer the client answers; set while RINGING
1265
+ *
1266
+ * @generated from field: string webrtc_offer = 13;
1267
+ */
1268
+ webrtcOffer = "";
1269
+ /**
1270
+ * active recording id (for stop/flag/tags)
1271
+ *
1272
+ * @generated from field: string recording_id = 14;
1273
+ */
1274
+ recordingId = "";
1275
+ /**
1276
+ * @generated from field: repeated string recording_tags = 15;
1277
+ */
1278
+ recordingTags = [];
1279
+ /**
1280
+ * @generated from field: bool recording_flagged = 16;
1281
+ */
1282
+ recordingFlagged = false;
1283
+ /**
1284
+ * STUN/TURN servers the client applies; for off-host NAT traversal
1285
+ *
1286
+ * @generated from field: repeated babelconnect.v1.IceServer ice_servers = 17;
1287
+ */
1288
+ iceServers = [];
1289
+ constructor(data) {
1290
+ super();
1291
+ proto3.util.initPartial(data, this);
1292
+ }
1293
+ static runtime = proto3;
1294
+ static typeName = "babelconnect.v1.CallState";
1295
+ static fields = proto3.util.newFieldList(() => [
1296
+ { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1297
+ { no: 2, name: "direction", kind: "enum", T: proto3.getEnumType(CallDirection) },
1298
+ { no: 3, name: "state", kind: "enum", T: proto3.getEnumType(CallLifecycle) },
1299
+ { no: 4, name: "source", kind: "enum", T: proto3.getEnumType(CallSource) },
1300
+ { no: 5, name: "from", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1301
+ { no: 6, name: "to", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1302
+ { no: 7, name: "queue_name", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1303
+ { no: 8, name: "established_at", kind: "scalar", T: 3 /* ScalarType.INT64 */ },
1304
+ { no: 9, name: "muted", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
1305
+ { no: 10, name: "on_hold", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
1306
+ { no: 11, name: "recording", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
1307
+ { no: 12, name: "anonymous", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
1308
+ { no: 13, name: "webrtc_offer", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1309
+ { no: 14, name: "recording_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1310
+ { no: 15, name: "recording_tags", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true },
1311
+ { no: 16, name: "recording_flagged", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
1312
+ { no: 17, name: "ice_servers", kind: "message", T: IceServer, repeated: true },
1313
+ ]);
1314
+ static fromBinary(bytes, options) {
1315
+ return new CallState().fromBinary(bytes, options);
1316
+ }
1317
+ static fromJson(jsonValue, options) {
1318
+ return new CallState().fromJson(jsonValue, options);
1319
+ }
1320
+ static fromJsonString(jsonString, options) {
1321
+ return new CallState().fromJsonString(jsonString, options);
1322
+ }
1323
+ static equals(a, b) {
1324
+ return proto3.util.equals(CallState, a, b);
1325
+ }
1326
+ }
1327
+ /**
1328
+ * IceServer is a STUN/TURN server the client applies to its WebRTC peer
1329
+ * connection (RTCIceServer shape). Carried on CallState so an off-host client
1330
+ * (e.g. a phone) can relay media through TURN when it can't reach the server's
1331
+ * host ICE candidates. Empty in the in-cluster/LAN case.
1332
+ *
1333
+ * @generated from message babelconnect.v1.IceServer
1334
+ */
1335
+ export class IceServer extends Message {
1336
+ /**
1337
+ * e.g. ["turn:host:3478?transport=tcp"]
1338
+ *
1339
+ * @generated from field: repeated string urls = 1;
1340
+ */
1341
+ urls = [];
1342
+ /**
1343
+ * @generated from field: string username = 2;
1344
+ */
1345
+ username = "";
1346
+ /**
1347
+ * @generated from field: string credential = 3;
1348
+ */
1349
+ credential = "";
1350
+ constructor(data) {
1351
+ super();
1352
+ proto3.util.initPartial(data, this);
1353
+ }
1354
+ static runtime = proto3;
1355
+ static typeName = "babelconnect.v1.IceServer";
1356
+ static fields = proto3.util.newFieldList(() => [
1357
+ { no: 1, name: "urls", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true },
1358
+ { no: 2, name: "username", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1359
+ { no: 3, name: "credential", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1360
+ ]);
1361
+ static fromBinary(bytes, options) {
1362
+ return new IceServer().fromBinary(bytes, options);
1363
+ }
1364
+ static fromJson(jsonValue, options) {
1365
+ return new IceServer().fromJson(jsonValue, options);
1366
+ }
1367
+ static fromJsonString(jsonString, options) {
1368
+ return new IceServer().fromJsonString(jsonString, options);
1369
+ }
1370
+ static equals(a, b) {
1371
+ return proto3.util.equals(IceServer, a, b);
1372
+ }
1373
+ }
1374
+ /**
1375
+ * WrapUpStatus is the after-call-work countdown.
1376
+ *
1377
+ * @generated from message babelconnect.v1.WrapUpStatus
1378
+ */
1379
+ export class WrapUpStatus extends Message {
1380
+ /**
1381
+ * @generated from field: bool active = 1;
1382
+ */
1383
+ active = false;
1384
+ /**
1385
+ * @generated from field: int32 remaining_seconds = 2;
1386
+ */
1387
+ remainingSeconds = 0;
1388
+ /**
1389
+ * @generated from field: string last_call_type = 3;
1390
+ */
1391
+ lastCallType = "";
1392
+ /**
1393
+ * @generated from field: bool can_cancel = 4;
1394
+ */
1395
+ canCancel = false;
1396
+ /**
1397
+ * @generated from field: bool can_extend = 5;
1398
+ */
1399
+ canExtend = false;
1400
+ constructor(data) {
1401
+ super();
1402
+ proto3.util.initPartial(data, this);
1403
+ }
1404
+ static runtime = proto3;
1405
+ static typeName = "babelconnect.v1.WrapUpStatus";
1406
+ static fields = proto3.util.newFieldList(() => [
1407
+ { no: 1, name: "active", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
1408
+ { no: 2, name: "remaining_seconds", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
1409
+ { no: 3, name: "last_call_type", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1410
+ { no: 4, name: "can_cancel", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
1411
+ { no: 5, name: "can_extend", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
1412
+ ]);
1413
+ static fromBinary(bytes, options) {
1414
+ return new WrapUpStatus().fromBinary(bytes, options);
1415
+ }
1416
+ static fromJson(jsonValue, options) {
1417
+ return new WrapUpStatus().fromJson(jsonValue, options);
1418
+ }
1419
+ static fromJsonString(jsonString, options) {
1420
+ return new WrapUpStatus().fromJsonString(jsonString, options);
1421
+ }
1422
+ static equals(a, b) {
1423
+ return proto3.util.equals(WrapUpStatus, a, b);
1424
+ }
1425
+ }
1426
+ /**
1427
+ * StateUpdate is the single server → client message on the Session stream. On
1428
+ * open the client receives a snapshot; thereafter partial patches. `seq` is
1429
+ * monotonic across snapshot+patch — a gap means the client should resubscribe
1430
+ * for a fresh snapshot. `error` is an out-of-band notice (command rejection /
1431
+ * server warning) and does NOT advance `seq`.
1432
+ *
1433
+ * @generated from message babelconnect.v1.StateUpdate
1434
+ */
1435
+ export class StateUpdate extends Message {
1436
+ /**
1437
+ * @generated from field: uint64 seq = 1;
1438
+ */
1439
+ seq = protoInt64.zero;
1440
+ /**
1441
+ * @generated from oneof babelconnect.v1.StateUpdate.update
1442
+ */
1443
+ update = { case: undefined };
1444
+ constructor(data) {
1445
+ super();
1446
+ proto3.util.initPartial(data, this);
1447
+ }
1448
+ static runtime = proto3;
1449
+ static typeName = "babelconnect.v1.StateUpdate";
1450
+ static fields = proto3.util.newFieldList(() => [
1451
+ { no: 1, name: "seq", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
1452
+ { no: 2, name: "snapshot", kind: "message", T: AgentView, oneof: "update" },
1453
+ { no: 3, name: "patch", kind: "message", T: Patch, oneof: "update" },
1454
+ { no: 4, name: "error", kind: "message", T: Error, oneof: "update" },
1455
+ ]);
1456
+ static fromBinary(bytes, options) {
1457
+ return new StateUpdate().fromBinary(bytes, options);
1458
+ }
1459
+ static fromJson(jsonValue, options) {
1460
+ return new StateUpdate().fromJson(jsonValue, options);
1461
+ }
1462
+ static fromJsonString(jsonString, options) {
1463
+ return new StateUpdate().fromJsonString(jsonString, options);
1464
+ }
1465
+ static equals(a, b) {
1466
+ return proto3.util.equals(StateUpdate, a, b);
1467
+ }
1468
+ }
1469
+ /**
1470
+ * Patch is an entity-level delta applied mechanically by the client cache:
1471
+ * replace the agent block, upsert/remove a call by id, or set wrap-up.
1472
+ *
1473
+ * @generated from message babelconnect.v1.Patch
1474
+ */
1475
+ export class Patch extends Message {
1476
+ /**
1477
+ * @generated from oneof babelconnect.v1.Patch.change
1478
+ */
1479
+ change = { case: undefined };
1480
+ constructor(data) {
1481
+ super();
1482
+ proto3.util.initPartial(data, this);
1483
+ }
1484
+ static runtime = proto3;
1485
+ static typeName = "babelconnect.v1.Patch";
1486
+ static fields = proto3.util.newFieldList(() => [
1487
+ { no: 1, name: "agent", kind: "message", T: AgentInfo, oneof: "change" },
1488
+ { no: 2, name: "call_upsert", kind: "message", T: CallState, oneof: "change" },
1489
+ { no: 3, name: "call_remove", kind: "scalar", T: 9 /* ScalarType.STRING */, oneof: "change" },
1490
+ { no: 4, name: "wrap_up", kind: "message", T: WrapUpStatus, oneof: "change" },
1491
+ { no: 5, name: "notification", kind: "message", T: Notification, oneof: "change" },
1492
+ { no: 6, name: "sms_upsert", kind: "message", T: SmsConversation, oneof: "change" },
1493
+ { no: 7, name: "sms_remove", kind: "scalar", T: 9 /* ScalarType.STRING */, oneof: "change" },
1494
+ { no: 8, name: "conference_upsert", kind: "message", T: Conference, oneof: "change" },
1495
+ { no: 9, name: "conference_remove", kind: "scalar", T: 9 /* ScalarType.STRING */, oneof: "change" },
1496
+ { no: 10, name: "config", kind: "message", T: AppConfig, oneof: "change" },
1497
+ ]);
1498
+ static fromBinary(bytes, options) {
1499
+ return new Patch().fromBinary(bytes, options);
1500
+ }
1501
+ static fromJson(jsonValue, options) {
1502
+ return new Patch().fromJson(jsonValue, options);
1503
+ }
1504
+ static fromJsonString(jsonString, options) {
1505
+ return new Patch().fromJsonString(jsonString, options);
1506
+ }
1507
+ static equals(a, b) {
1508
+ return proto3.util.equals(Patch, a, b);
1509
+ }
1510
+ }
1511
+ /**
1512
+ * Notification is a transient one-shot the client surfaces (a CTI screen-pop /
1513
+ * pushed agent data). It is NOT stored in the AgentView snapshot — it fires once.
1514
+ *
1515
+ * @generated from message babelconnect.v1.Notification
1516
+ */
1517
+ export class Notification extends Message {
1518
+ /**
1519
+ * e.g. "cti.message"
1520
+ *
1521
+ * @generated from field: string kind = 1;
1522
+ */
1523
+ kind = "";
1524
+ /**
1525
+ * @generated from field: string title = 2;
1526
+ */
1527
+ title = "";
1528
+ /**
1529
+ * @generated from field: string body = 3;
1530
+ */
1531
+ body = "";
1532
+ /**
1533
+ * arbitrary pushed payload, JSON-encoded
1534
+ *
1535
+ * @generated from field: string data_json = 4;
1536
+ */
1537
+ dataJson = "";
1538
+ /**
1539
+ * @generated from field: int64 ts = 5;
1540
+ */
1541
+ ts = protoInt64.zero;
1542
+ constructor(data) {
1543
+ super();
1544
+ proto3.util.initPartial(data, this);
1545
+ }
1546
+ static runtime = proto3;
1547
+ static typeName = "babelconnect.v1.Notification";
1548
+ static fields = proto3.util.newFieldList(() => [
1549
+ { no: 1, name: "kind", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1550
+ { no: 2, name: "title", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1551
+ { no: 3, name: "body", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1552
+ { no: 4, name: "data_json", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1553
+ { no: 5, name: "ts", kind: "scalar", T: 3 /* ScalarType.INT64 */ },
1554
+ ]);
1555
+ static fromBinary(bytes, options) {
1556
+ return new Notification().fromBinary(bytes, options);
1557
+ }
1558
+ static fromJson(jsonValue, options) {
1559
+ return new Notification().fromJson(jsonValue, options);
1560
+ }
1561
+ static fromJsonString(jsonString, options) {
1562
+ return new Notification().fromJsonString(jsonString, options);
1563
+ }
1564
+ static equals(a, b) {
1565
+ return proto3.util.equals(Notification, a, b);
1566
+ }
1567
+ }
1568
+ /**
1569
+ * @generated from message babelconnect.v1.Error
1570
+ */
1571
+ export class Error extends Message {
1572
+ /**
1573
+ * @generated from field: string code = 1;
1574
+ */
1575
+ code = "";
1576
+ /**
1577
+ * @generated from field: string message = 2;
1578
+ */
1579
+ message = "";
1580
+ /**
1581
+ * optional: the call the rejected command targeted
1582
+ *
1583
+ * @generated from field: string call_id = 3;
1584
+ */
1585
+ callId = "";
1586
+ constructor(data) {
1587
+ super();
1588
+ proto3.util.initPartial(data, this);
1589
+ }
1590
+ static runtime = proto3;
1591
+ static typeName = "babelconnect.v1.Error";
1592
+ static fields = proto3.util.newFieldList(() => [
1593
+ { no: 1, name: "code", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1594
+ { no: 2, name: "message", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1595
+ { no: 3, name: "call_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1596
+ ]);
1597
+ static fromBinary(bytes, options) {
1598
+ return new Error().fromBinary(bytes, options);
1599
+ }
1600
+ static fromJson(jsonValue, options) {
1601
+ return new Error().fromJson(jsonValue, options);
1602
+ }
1603
+ static fromJsonString(jsonString, options) {
1604
+ return new Error().fromJsonString(jsonString, options);
1605
+ }
1606
+ static equals(a, b) {
1607
+ return proto3.util.equals(Error, a, b);
1608
+ }
1609
+ }
1610
+ /**
1611
+ * @generated from message babelconnect.v1.Command
1612
+ */
1613
+ export class Command extends Message {
1614
+ /**
1615
+ * @generated from oneof babelconnect.v1.Command.command
1616
+ */
1617
+ command = { case: undefined };
1618
+ constructor(data) {
1619
+ super();
1620
+ proto3.util.initPartial(data, this);
1621
+ }
1622
+ static runtime = proto3;
1623
+ static typeName = "babelconnect.v1.Command";
1624
+ static fields = proto3.util.newFieldList(() => [
1625
+ { no: 1, name: "register", kind: "message", T: Register, oneof: "command" },
1626
+ { no: 2, name: "place_call", kind: "message", T: PlaceCall, oneof: "command" },
1627
+ { no: 3, name: "answer", kind: "message", T: AnswerCall, oneof: "command" },
1628
+ { no: 4, name: "hangup", kind: "message", T: Hangup, oneof: "command" },
1629
+ { no: 5, name: "mute", kind: "message", T: Mute, oneof: "command" },
1630
+ { no: 6, name: "hold", kind: "message", T: Hold, oneof: "command" },
1631
+ { no: 7, name: "dtmf", kind: "message", T: SendDigits, oneof: "command" },
1632
+ { no: 8, name: "set_display_as", kind: "message", T: SetDisplayAs, oneof: "command" },
1633
+ { no: 9, name: "transfer", kind: "message", T: Transfer, oneof: "command" },
1634
+ { no: 10, name: "set_presence", kind: "message", T: SetPresence, oneof: "command" },
1635
+ { no: 11, name: "wrap_up_extend", kind: "message", T: WrapUpExtend, oneof: "command" },
1636
+ { no: 12, name: "wrap_up_cancel", kind: "message", T: WrapUpCancel, oneof: "command" },
1637
+ { no: 13, name: "reset_line_status", kind: "message", T: ResetLineStatus, oneof: "command" },
1638
+ { no: 14, name: "start_recording", kind: "message", T: StartRecording, oneof: "command" },
1639
+ { no: 15, name: "stop_recording", kind: "message", T: StopRecording, oneof: "command" },
1640
+ { no: 16, name: "flag_recording", kind: "message", T: FlagRecording, oneof: "command" },
1641
+ { no: 17, name: "set_recording_tags", kind: "message", T: SetRecordingTags, oneof: "command" },
1642
+ { no: 18, name: "set_webrtc", kind: "message", T: SetWebrtc, oneof: "command" },
1643
+ { no: 19, name: "set_agent_number", kind: "message", T: SetAgentNumber, oneof: "command" },
1644
+ { no: 20, name: "send_sms", kind: "message", T: SendSmsRequest, oneof: "command" },
1645
+ { no: 21, name: "start_conference", kind: "message", T: StartConference, oneof: "command" },
1646
+ { no: 22, name: "add_conference_member", kind: "message", T: AddConferenceMember, oneof: "command" },
1647
+ { no: 23, name: "kick_conference_member", kind: "message", T: KickConferenceMember, oneof: "command" },
1648
+ { no: 24, name: "end_conference", kind: "message", T: EndConference, oneof: "command" },
1649
+ { no: 25, name: "leave_conference", kind: "message", T: LeaveConference, oneof: "command" },
1650
+ { no: 26, name: "hold_conference_member", kind: "message", T: HoldConferenceMember, oneof: "command" },
1651
+ { no: 27, name: "mute_conference_member", kind: "message", T: MuteConferenceMember, oneof: "command" },
1652
+ { no: 28, name: "set_conversation_open", kind: "message", T: SetConversationOpen, oneof: "command" },
1653
+ { no: 29, name: "mark_conversation_read", kind: "message", T: MarkConversationRead, oneof: "command" },
1654
+ ]);
1655
+ static fromBinary(bytes, options) {
1656
+ return new Command().fromBinary(bytes, options);
1657
+ }
1658
+ static fromJson(jsonValue, options) {
1659
+ return new Command().fromJson(jsonValue, options);
1660
+ }
1661
+ static fromJsonString(jsonString, options) {
1662
+ return new Command().fromJsonString(jsonString, options);
1663
+ }
1664
+ static equals(a, b) {
1665
+ return proto3.util.equals(Command, a, b);
1666
+ }
1667
+ }
1668
+ /**
1669
+ * @generated from message babelconnect.v1.Register
1670
+ */
1671
+ export class Register extends Message {
1672
+ /**
1673
+ * advisory, e.g. ["webrtc"]
1674
+ *
1675
+ * @generated from field: repeated string capabilities = 1;
1676
+ */
1677
+ capabilities = [];
1678
+ constructor(data) {
1679
+ super();
1680
+ proto3.util.initPartial(data, this);
1681
+ }
1682
+ static runtime = proto3;
1683
+ static typeName = "babelconnect.v1.Register";
1684
+ static fields = proto3.util.newFieldList(() => [
1685
+ { no: 1, name: "capabilities", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true },
1686
+ ]);
1687
+ static fromBinary(bytes, options) {
1688
+ return new Register().fromBinary(bytes, options);
1689
+ }
1690
+ static fromJson(jsonValue, options) {
1691
+ return new Register().fromJson(jsonValue, options);
1692
+ }
1693
+ static fromJsonString(jsonString, options) {
1694
+ return new Register().fromJsonString(jsonString, options);
1695
+ }
1696
+ static equals(a, b) {
1697
+ return proto3.util.equals(Register, a, b);
1698
+ }
1699
+ }
1700
+ /**
1701
+ * @generated from message babelconnect.v1.PlaceCall
1702
+ */
1703
+ export class PlaceCall extends Message {
1704
+ /**
1705
+ * @generated from field: string to = 1;
1706
+ */
1707
+ to = "";
1708
+ /**
1709
+ * service number shown to the consumer
1710
+ *
1711
+ * @generated from field: string display_as_to = 2;
1712
+ */
1713
+ displayAsTo = "";
1714
+ /**
1715
+ * number shown to the agent
1716
+ *
1717
+ * @generated from field: string display_as_from = 3;
1718
+ */
1719
+ displayAsFrom = "";
1720
+ /**
1721
+ * start recording the call from answer (recording.autostart)
1722
+ *
1723
+ * @generated from field: bool record = 4;
1724
+ */
1725
+ record = false;
1726
+ /**
1727
+ * opaque CTI/embedding correlation (from session.set)
1728
+ *
1729
+ * @generated from field: map<string, string> session = 5;
1730
+ */
1731
+ session = {};
1732
+ constructor(data) {
1733
+ super();
1734
+ proto3.util.initPartial(data, this);
1735
+ }
1736
+ static runtime = proto3;
1737
+ static typeName = "babelconnect.v1.PlaceCall";
1738
+ static fields = proto3.util.newFieldList(() => [
1739
+ { no: 1, name: "to", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1740
+ { no: 2, name: "display_as_to", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1741
+ { no: 3, name: "display_as_from", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1742
+ { no: 4, name: "record", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
1743
+ { no: 5, name: "session", kind: "map", K: 9 /* ScalarType.STRING */, V: { kind: "scalar", T: 9 /* ScalarType.STRING */ } },
1744
+ ]);
1745
+ static fromBinary(bytes, options) {
1746
+ return new PlaceCall().fromBinary(bytes, options);
1747
+ }
1748
+ static fromJson(jsonValue, options) {
1749
+ return new PlaceCall().fromJson(jsonValue, options);
1750
+ }
1751
+ static fromJsonString(jsonString, options) {
1752
+ return new PlaceCall().fromJsonString(jsonString, options);
1753
+ }
1754
+ static equals(a, b) {
1755
+ return proto3.util.equals(PlaceCall, a, b);
1756
+ }
1757
+ }
1758
+ /**
1759
+ * @generated from message babelconnect.v1.AnswerCall
1760
+ */
1761
+ export class AnswerCall extends Message {
1762
+ /**
1763
+ * the RINGING call's id
1764
+ *
1765
+ * @generated from field: string call_id = 1;
1766
+ */
1767
+ callId = "";
1768
+ /**
1769
+ * WebRTC SDP answer
1770
+ *
1771
+ * @generated from field: string sdp = 2;
1772
+ */
1773
+ sdp = "";
1774
+ constructor(data) {
1775
+ super();
1776
+ proto3.util.initPartial(data, this);
1777
+ }
1778
+ static runtime = proto3;
1779
+ static typeName = "babelconnect.v1.AnswerCall";
1780
+ static fields = proto3.util.newFieldList(() => [
1781
+ { no: 1, name: "call_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1782
+ { no: 2, name: "sdp", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1783
+ ]);
1784
+ static fromBinary(bytes, options) {
1785
+ return new AnswerCall().fromBinary(bytes, options);
1786
+ }
1787
+ static fromJson(jsonValue, options) {
1788
+ return new AnswerCall().fromJson(jsonValue, options);
1789
+ }
1790
+ static fromJsonString(jsonString, options) {
1791
+ return new AnswerCall().fromJsonString(jsonString, options);
1792
+ }
1793
+ static equals(a, b) {
1794
+ return proto3.util.equals(AnswerCall, a, b);
1795
+ }
1796
+ }
1797
+ /**
1798
+ * @generated from message babelconnect.v1.Hangup
1799
+ */
1800
+ export class Hangup extends Message {
1801
+ /**
1802
+ * @generated from field: string call_id = 1;
1803
+ */
1804
+ callId = "";
1805
+ constructor(data) {
1806
+ super();
1807
+ proto3.util.initPartial(data, this);
1808
+ }
1809
+ static runtime = proto3;
1810
+ static typeName = "babelconnect.v1.Hangup";
1811
+ static fields = proto3.util.newFieldList(() => [
1812
+ { no: 1, name: "call_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1813
+ ]);
1814
+ static fromBinary(bytes, options) {
1815
+ return new Hangup().fromBinary(bytes, options);
1816
+ }
1817
+ static fromJson(jsonValue, options) {
1818
+ return new Hangup().fromJson(jsonValue, options);
1819
+ }
1820
+ static fromJsonString(jsonString, options) {
1821
+ return new Hangup().fromJsonString(jsonString, options);
1822
+ }
1823
+ static equals(a, b) {
1824
+ return proto3.util.equals(Hangup, a, b);
1825
+ }
1826
+ }
1827
+ /**
1828
+ * @generated from message babelconnect.v1.Mute
1829
+ */
1830
+ export class Mute extends Message {
1831
+ /**
1832
+ * @generated from field: string call_id = 1;
1833
+ */
1834
+ callId = "";
1835
+ /**
1836
+ * @generated from field: bool on = 2;
1837
+ */
1838
+ on = false;
1839
+ constructor(data) {
1840
+ super();
1841
+ proto3.util.initPartial(data, this);
1842
+ }
1843
+ static runtime = proto3;
1844
+ static typeName = "babelconnect.v1.Mute";
1845
+ static fields = proto3.util.newFieldList(() => [
1846
+ { no: 1, name: "call_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1847
+ { no: 2, name: "on", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
1848
+ ]);
1849
+ static fromBinary(bytes, options) {
1850
+ return new Mute().fromBinary(bytes, options);
1851
+ }
1852
+ static fromJson(jsonValue, options) {
1853
+ return new Mute().fromJson(jsonValue, options);
1854
+ }
1855
+ static fromJsonString(jsonString, options) {
1856
+ return new Mute().fromJsonString(jsonString, options);
1857
+ }
1858
+ static equals(a, b) {
1859
+ return proto3.util.equals(Mute, a, b);
1860
+ }
1861
+ }
1862
+ /**
1863
+ * @generated from message babelconnect.v1.Hold
1864
+ */
1865
+ export class Hold extends Message {
1866
+ /**
1867
+ * @generated from field: string call_id = 1;
1868
+ */
1869
+ callId = "";
1870
+ /**
1871
+ * @generated from field: bool on = 2;
1872
+ */
1873
+ on = false;
1874
+ constructor(data) {
1875
+ super();
1876
+ proto3.util.initPartial(data, this);
1877
+ }
1878
+ static runtime = proto3;
1879
+ static typeName = "babelconnect.v1.Hold";
1880
+ static fields = proto3.util.newFieldList(() => [
1881
+ { no: 1, name: "call_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1882
+ { no: 2, name: "on", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
1883
+ ]);
1884
+ static fromBinary(bytes, options) {
1885
+ return new Hold().fromBinary(bytes, options);
1886
+ }
1887
+ static fromJson(jsonValue, options) {
1888
+ return new Hold().fromJson(jsonValue, options);
1889
+ }
1890
+ static fromJsonString(jsonString, options) {
1891
+ return new Hold().fromJsonString(jsonString, options);
1892
+ }
1893
+ static equals(a, b) {
1894
+ return proto3.util.equals(Hold, a, b);
1895
+ }
1896
+ }
1897
+ /**
1898
+ * @generated from message babelconnect.v1.SendDigits
1899
+ */
1900
+ export class SendDigits extends Message {
1901
+ /**
1902
+ * @generated from field: string call_id = 1;
1903
+ */
1904
+ callId = "";
1905
+ /**
1906
+ * DTMF, e.g. "1", "#"
1907
+ *
1908
+ * @generated from field: string digits = 2;
1909
+ */
1910
+ digits = "";
1911
+ constructor(data) {
1912
+ super();
1913
+ proto3.util.initPartial(data, this);
1914
+ }
1915
+ static runtime = proto3;
1916
+ static typeName = "babelconnect.v1.SendDigits";
1917
+ static fields = proto3.util.newFieldList(() => [
1918
+ { no: 1, name: "call_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1919
+ { no: 2, name: "digits", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1920
+ ]);
1921
+ static fromBinary(bytes, options) {
1922
+ return new SendDigits().fromBinary(bytes, options);
1923
+ }
1924
+ static fromJson(jsonValue, options) {
1925
+ return new SendDigits().fromJson(jsonValue, options);
1926
+ }
1927
+ static fromJsonString(jsonString, options) {
1928
+ return new SendDigits().fromJsonString(jsonString, options);
1929
+ }
1930
+ static equals(a, b) {
1931
+ return proto3.util.equals(SendDigits, a, b);
1932
+ }
1933
+ }
1934
+ /**
1935
+ * @generated from message babelconnect.v1.SetDisplayAs
1936
+ */
1937
+ export class SetDisplayAs extends Message {
1938
+ /**
1939
+ * outbound number to present
1940
+ *
1941
+ * @generated from field: string number = 1;
1942
+ */
1943
+ number = "";
1944
+ constructor(data) {
1945
+ super();
1946
+ proto3.util.initPartial(data, this);
1947
+ }
1948
+ static runtime = proto3;
1949
+ static typeName = "babelconnect.v1.SetDisplayAs";
1950
+ static fields = proto3.util.newFieldList(() => [
1951
+ { no: 1, name: "number", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1952
+ ]);
1953
+ static fromBinary(bytes, options) {
1954
+ return new SetDisplayAs().fromBinary(bytes, options);
1955
+ }
1956
+ static fromJson(jsonValue, options) {
1957
+ return new SetDisplayAs().fromJson(jsonValue, options);
1958
+ }
1959
+ static fromJsonString(jsonString, options) {
1960
+ return new SetDisplayAs().fromJsonString(jsonString, options);
1961
+ }
1962
+ static equals(a, b) {
1963
+ return proto3.util.equals(SetDisplayAs, a, b);
1964
+ }
1965
+ }
1966
+ /**
1967
+ * @generated from message babelconnect.v1.SetPresence
1968
+ */
1969
+ export class SetPresence extends Message {
1970
+ /**
1971
+ * presence to switch to, e.g. "available" or a pause reason
1972
+ *
1973
+ * @generated from field: string name = 1;
1974
+ */
1975
+ name = "";
1976
+ constructor(data) {
1977
+ super();
1978
+ proto3.util.initPartial(data, this);
1979
+ }
1980
+ static runtime = proto3;
1981
+ static typeName = "babelconnect.v1.SetPresence";
1982
+ static fields = proto3.util.newFieldList(() => [
1983
+ { no: 1, name: "name", kind: "scalar", T: 9 /* ScalarType.STRING */ },
1984
+ ]);
1985
+ static fromBinary(bytes, options) {
1986
+ return new SetPresence().fromBinary(bytes, options);
1987
+ }
1988
+ static fromJson(jsonValue, options) {
1989
+ return new SetPresence().fromJson(jsonValue, options);
1990
+ }
1991
+ static fromJsonString(jsonString, options) {
1992
+ return new SetPresence().fromJsonString(jsonString, options);
1993
+ }
1994
+ static equals(a, b) {
1995
+ return proto3.util.equals(SetPresence, a, b);
1996
+ }
1997
+ }
1998
+ /**
1999
+ * Transfer hands the current call to a target. Exactly one target is set:
2000
+ * `to` (external number), `agent_id` (another agent), or `application_id` (a
2001
+ * queue/voice application). `warm` selects attended (consult-then-drop) vs
2002
+ * blind/cold (single action).
2003
+ *
2004
+ * @generated from message babelconnect.v1.Transfer
2005
+ */
2006
+ export class Transfer extends Message {
2007
+ /**
2008
+ * @generated from field: string call_id = 1;
2009
+ */
2010
+ callId = "";
2011
+ /**
2012
+ * external number target
2013
+ *
2014
+ * @generated from field: string to = 2;
2015
+ */
2016
+ to = "";
2017
+ /**
2018
+ * true = attended/warm, false = blind/cold
2019
+ *
2020
+ * @generated from field: bool warm = 3;
2021
+ */
2022
+ warm = false;
2023
+ /**
2024
+ * transfer to another agent
2025
+ *
2026
+ * @generated from field: string agent_id = 4;
2027
+ */
2028
+ agentId = "";
2029
+ /**
2030
+ * transfer to a queue / voice application
2031
+ *
2032
+ * @generated from field: string application_id = 5;
2033
+ */
2034
+ applicationId = "";
2035
+ constructor(data) {
2036
+ super();
2037
+ proto3.util.initPartial(data, this);
2038
+ }
2039
+ static runtime = proto3;
2040
+ static typeName = "babelconnect.v1.Transfer";
2041
+ static fields = proto3.util.newFieldList(() => [
2042
+ { no: 1, name: "call_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2043
+ { no: 2, name: "to", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2044
+ { no: 3, name: "warm", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
2045
+ { no: 4, name: "agent_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2046
+ { no: 5, name: "application_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2047
+ ]);
2048
+ static fromBinary(bytes, options) {
2049
+ return new Transfer().fromBinary(bytes, options);
2050
+ }
2051
+ static fromJson(jsonValue, options) {
2052
+ return new Transfer().fromJson(jsonValue, options);
2053
+ }
2054
+ static fromJsonString(jsonString, options) {
2055
+ return new Transfer().fromJsonString(jsonString, options);
2056
+ }
2057
+ static equals(a, b) {
2058
+ return proto3.util.equals(Transfer, a, b);
2059
+ }
2060
+ }
2061
+ /**
2062
+ * WrapUpExtend adds time to the agent's after-call-work countdown.
2063
+ *
2064
+ * @generated from message babelconnect.v1.WrapUpExtend
2065
+ */
2066
+ export class WrapUpExtend extends Message {
2067
+ /**
2068
+ * extra wrap-up seconds to add (e.g. 30)
2069
+ *
2070
+ * @generated from field: int32 seconds = 1;
2071
+ */
2072
+ seconds = 0;
2073
+ constructor(data) {
2074
+ super();
2075
+ proto3.util.initPartial(data, this);
2076
+ }
2077
+ static runtime = proto3;
2078
+ static typeName = "babelconnect.v1.WrapUpExtend";
2079
+ static fields = proto3.util.newFieldList(() => [
2080
+ { no: 1, name: "seconds", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
2081
+ ]);
2082
+ static fromBinary(bytes, options) {
2083
+ return new WrapUpExtend().fromBinary(bytes, options);
2084
+ }
2085
+ static fromJson(jsonValue, options) {
2086
+ return new WrapUpExtend().fromJson(jsonValue, options);
2087
+ }
2088
+ static fromJsonString(jsonString, options) {
2089
+ return new WrapUpExtend().fromJsonString(jsonString, options);
2090
+ }
2091
+ static equals(a, b) {
2092
+ return proto3.util.equals(WrapUpExtend, a, b);
2093
+ }
2094
+ }
2095
+ /**
2096
+ * WrapUpCancel ends the agent's after-call-work early.
2097
+ *
2098
+ * @generated from message babelconnect.v1.WrapUpCancel
2099
+ */
2100
+ export class WrapUpCancel extends Message {
2101
+ constructor(data) {
2102
+ super();
2103
+ proto3.util.initPartial(data, this);
2104
+ }
2105
+ static runtime = proto3;
2106
+ static typeName = "babelconnect.v1.WrapUpCancel";
2107
+ static fields = proto3.util.newFieldList(() => []);
2108
+ static fromBinary(bytes, options) {
2109
+ return new WrapUpCancel().fromBinary(bytes, options);
2110
+ }
2111
+ static fromJson(jsonValue, options) {
2112
+ return new WrapUpCancel().fromJson(jsonValue, options);
2113
+ }
2114
+ static fromJsonString(jsonString, options) {
2115
+ return new WrapUpCancel().fromJsonString(jsonString, options);
2116
+ }
2117
+ static equals(a, b) {
2118
+ return proto3.util.equals(WrapUpCancel, a, b);
2119
+ }
2120
+ }
2121
+ /**
2122
+ * ResetLineStatus clears a blocked line state (busy/unreachable/declined) so the
2123
+ * agent can receive calls again.
2124
+ *
2125
+ * @generated from message babelconnect.v1.ResetLineStatus
2126
+ */
2127
+ export class ResetLineStatus extends Message {
2128
+ constructor(data) {
2129
+ super();
2130
+ proto3.util.initPartial(data, this);
2131
+ }
2132
+ static runtime = proto3;
2133
+ static typeName = "babelconnect.v1.ResetLineStatus";
2134
+ static fields = proto3.util.newFieldList(() => []);
2135
+ static fromBinary(bytes, options) {
2136
+ return new ResetLineStatus().fromBinary(bytes, options);
2137
+ }
2138
+ static fromJson(jsonValue, options) {
2139
+ return new ResetLineStatus().fromJson(jsonValue, options);
2140
+ }
2141
+ static fromJsonString(jsonString, options) {
2142
+ return new ResetLineStatus().fromJsonString(jsonString, options);
2143
+ }
2144
+ static equals(a, b) {
2145
+ return proto3.util.equals(ResetLineStatus, a, b);
2146
+ }
2147
+ }
2148
+ /**
2149
+ * StartRecording begins recording the given call.
2150
+ *
2151
+ * @generated from message babelconnect.v1.StartRecording
2152
+ */
2153
+ export class StartRecording extends Message {
2154
+ /**
2155
+ * @generated from field: string call_id = 1;
2156
+ */
2157
+ callId = "";
2158
+ constructor(data) {
2159
+ super();
2160
+ proto3.util.initPartial(data, this);
2161
+ }
2162
+ static runtime = proto3;
2163
+ static typeName = "babelconnect.v1.StartRecording";
2164
+ static fields = proto3.util.newFieldList(() => [
2165
+ { no: 1, name: "call_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2166
+ ]);
2167
+ static fromBinary(bytes, options) {
2168
+ return new StartRecording().fromBinary(bytes, options);
2169
+ }
2170
+ static fromJson(jsonValue, options) {
2171
+ return new StartRecording().fromJson(jsonValue, options);
2172
+ }
2173
+ static fromJsonString(jsonString, options) {
2174
+ return new StartRecording().fromJsonString(jsonString, options);
2175
+ }
2176
+ static equals(a, b) {
2177
+ return proto3.util.equals(StartRecording, a, b);
2178
+ }
2179
+ }
2180
+ /**
2181
+ * StopRecording ends the call's active recording.
2182
+ *
2183
+ * @generated from message babelconnect.v1.StopRecording
2184
+ */
2185
+ export class StopRecording extends Message {
2186
+ /**
2187
+ * @generated from field: string call_id = 1;
2188
+ */
2189
+ callId = "";
2190
+ constructor(data) {
2191
+ super();
2192
+ proto3.util.initPartial(data, this);
2193
+ }
2194
+ static runtime = proto3;
2195
+ static typeName = "babelconnect.v1.StopRecording";
2196
+ static fields = proto3.util.newFieldList(() => [
2197
+ { no: 1, name: "call_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2198
+ ]);
2199
+ static fromBinary(bytes, options) {
2200
+ return new StopRecording().fromBinary(bytes, options);
2201
+ }
2202
+ static fromJson(jsonValue, options) {
2203
+ return new StopRecording().fromJson(jsonValue, options);
2204
+ }
2205
+ static fromJsonString(jsonString, options) {
2206
+ return new StopRecording().fromJsonString(jsonString, options);
2207
+ }
2208
+ static equals(a, b) {
2209
+ return proto3.util.equals(StopRecording, a, b);
2210
+ }
2211
+ }
2212
+ /**
2213
+ * FlagRecording toggles the "flagged" mark on the call's active recording.
2214
+ *
2215
+ * @generated from message babelconnect.v1.FlagRecording
2216
+ */
2217
+ export class FlagRecording extends Message {
2218
+ /**
2219
+ * @generated from field: string call_id = 1;
2220
+ */
2221
+ callId = "";
2222
+ constructor(data) {
2223
+ super();
2224
+ proto3.util.initPartial(data, this);
2225
+ }
2226
+ static runtime = proto3;
2227
+ static typeName = "babelconnect.v1.FlagRecording";
2228
+ static fields = proto3.util.newFieldList(() => [
2229
+ { no: 1, name: "call_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2230
+ ]);
2231
+ static fromBinary(bytes, options) {
2232
+ return new FlagRecording().fromBinary(bytes, options);
2233
+ }
2234
+ static fromJson(jsonValue, options) {
2235
+ return new FlagRecording().fromJson(jsonValue, options);
2236
+ }
2237
+ static fromJsonString(jsonString, options) {
2238
+ return new FlagRecording().fromJsonString(jsonString, options);
2239
+ }
2240
+ static equals(a, b) {
2241
+ return proto3.util.equals(FlagRecording, a, b);
2242
+ }
2243
+ }
2244
+ /**
2245
+ * SetRecordingTags replaces the tags on the call's active recording.
2246
+ *
2247
+ * @generated from message babelconnect.v1.SetRecordingTags
2248
+ */
2249
+ export class SetRecordingTags extends Message {
2250
+ /**
2251
+ * @generated from field: string call_id = 1;
2252
+ */
2253
+ callId = "";
2254
+ /**
2255
+ * @generated from field: repeated string tags = 2;
2256
+ */
2257
+ tags = [];
2258
+ constructor(data) {
2259
+ super();
2260
+ proto3.util.initPartial(data, this);
2261
+ }
2262
+ static runtime = proto3;
2263
+ static typeName = "babelconnect.v1.SetRecordingTags";
2264
+ static fields = proto3.util.newFieldList(() => [
2265
+ { no: 1, name: "call_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2266
+ { no: 2, name: "tags", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true },
2267
+ ]);
2268
+ static fromBinary(bytes, options) {
2269
+ return new SetRecordingTags().fromBinary(bytes, options);
2270
+ }
2271
+ static fromJson(jsonValue, options) {
2272
+ return new SetRecordingTags().fromJson(jsonValue, options);
2273
+ }
2274
+ static fromJsonString(jsonString, options) {
2275
+ return new SetRecordingTags().fromJsonString(jsonString, options);
2276
+ }
2277
+ static equals(a, b) {
2278
+ return proto3.util.equals(SetRecordingTags, a, b);
2279
+ }
2280
+ }
2281
+ /**
2282
+ * SetWebrtc enables or disables the browser phone (WebRTC). Off = bridge calls to
2283
+ * the external-telephone number instead.
2284
+ *
2285
+ * @generated from message babelconnect.v1.SetWebrtc
2286
+ */
2287
+ export class SetWebrtc extends Message {
2288
+ /**
2289
+ * @generated from field: bool on = 1;
2290
+ */
2291
+ on = false;
2292
+ constructor(data) {
2293
+ super();
2294
+ proto3.util.initPartial(data, this);
2295
+ }
2296
+ static runtime = proto3;
2297
+ static typeName = "babelconnect.v1.SetWebrtc";
2298
+ static fields = proto3.util.newFieldList(() => [
2299
+ { no: 1, name: "on", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
2300
+ ]);
2301
+ static fromBinary(bytes, options) {
2302
+ return new SetWebrtc().fromBinary(bytes, options);
2303
+ }
2304
+ static fromJson(jsonValue, options) {
2305
+ return new SetWebrtc().fromJson(jsonValue, options);
2306
+ }
2307
+ static fromJsonString(jsonString, options) {
2308
+ return new SetWebrtc().fromJsonString(jsonString, options);
2309
+ }
2310
+ static equals(a, b) {
2311
+ return proto3.util.equals(SetWebrtc, a, b);
2312
+ }
2313
+ }
2314
+ /**
2315
+ * SetAgentNumber sets the external phone number the agent's calls bridge to.
2316
+ *
2317
+ * @generated from message babelconnect.v1.SetAgentNumber
2318
+ */
2319
+ export class SetAgentNumber extends Message {
2320
+ /**
2321
+ * @generated from field: string number = 1;
2322
+ */
2323
+ number = "";
2324
+ constructor(data) {
2325
+ super();
2326
+ proto3.util.initPartial(data, this);
2327
+ }
2328
+ static runtime = proto3;
2329
+ static typeName = "babelconnect.v1.SetAgentNumber";
2330
+ static fields = proto3.util.newFieldList(() => [
2331
+ { no: 1, name: "number", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2332
+ ]);
2333
+ static fromBinary(bytes, options) {
2334
+ return new SetAgentNumber().fromBinary(bytes, options);
2335
+ }
2336
+ static fromJson(jsonValue, options) {
2337
+ return new SetAgentNumber().fromJson(jsonValue, options);
2338
+ }
2339
+ static fromJsonString(jsonString, options) {
2340
+ return new SetAgentNumber().fromJsonString(jsonString, options);
2341
+ }
2342
+ static equals(a, b) {
2343
+ return proto3.util.equals(SetAgentNumber, a, b);
2344
+ }
2345
+ }
2346
+ /**
2347
+ * SmsConversation is one SMS thread summary carried in the AgentView (the full
2348
+ * thread history is fetched on demand, not held in the snapshot). Upsert-by-id;
2349
+ * the reducer keeps the list sorted by last_ts descending.
2350
+ *
2351
+ * @generated from message babelconnect.v1.SmsConversation
2352
+ */
2353
+ export class SmsConversation extends Message {
2354
+ /**
2355
+ * conversation id
2356
+ *
2357
+ * @generated from field: string id = 1;
2358
+ */
2359
+ id = "";
2360
+ /**
2361
+ * the other party's number
2362
+ *
2363
+ * @generated from field: string peer = 2;
2364
+ */
2365
+ peer = "";
2366
+ /**
2367
+ * INBOUND = received, OUTBOUND = sent
2368
+ *
2369
+ * @generated from field: babelconnect.v1.CallDirection last_direction = 3;
2370
+ */
2371
+ lastDirection = CallDirection.UNSPECIFIED;
2372
+ /**
2373
+ * latest message preview
2374
+ *
2375
+ * @generated from field: string last_text = 4;
2376
+ */
2377
+ lastText = "";
2378
+ /**
2379
+ * unix seconds of the latest message
2380
+ *
2381
+ * @generated from field: int64 last_ts = 5;
2382
+ */
2383
+ lastTs = protoInt64.zero;
2384
+ /**
2385
+ * unread message count
2386
+ *
2387
+ * @generated from field: uint32 unread = 6;
2388
+ */
2389
+ unread = 0;
2390
+ /**
2391
+ * phonebook label for the peer, if known
2392
+ *
2393
+ * @generated from field: string contact_label = 7;
2394
+ */
2395
+ contactLabel = "";
2396
+ /**
2397
+ * conversation open (unresolved) vs closed
2398
+ *
2399
+ * @generated from field: bool open = 8;
2400
+ */
2401
+ open = false;
2402
+ constructor(data) {
2403
+ super();
2404
+ proto3.util.initPartial(data, this);
2405
+ }
2406
+ static runtime = proto3;
2407
+ static typeName = "babelconnect.v1.SmsConversation";
2408
+ static fields = proto3.util.newFieldList(() => [
2409
+ { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2410
+ { no: 2, name: "peer", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2411
+ { no: 3, name: "last_direction", kind: "enum", T: proto3.getEnumType(CallDirection) },
2412
+ { no: 4, name: "last_text", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2413
+ { no: 5, name: "last_ts", kind: "scalar", T: 3 /* ScalarType.INT64 */ },
2414
+ { no: 6, name: "unread", kind: "scalar", T: 13 /* ScalarType.UINT32 */ },
2415
+ { no: 7, name: "contact_label", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2416
+ { no: 8, name: "open", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
2417
+ ]);
2418
+ static fromBinary(bytes, options) {
2419
+ return new SmsConversation().fromBinary(bytes, options);
2420
+ }
2421
+ static fromJson(jsonValue, options) {
2422
+ return new SmsConversation().fromJson(jsonValue, options);
2423
+ }
2424
+ static fromJsonString(jsonString, options) {
2425
+ return new SmsConversation().fromJsonString(jsonString, options);
2426
+ }
2427
+ static equals(a, b) {
2428
+ return proto3.util.equals(SmsConversation, a, b);
2429
+ }
2430
+ }
2431
+ /**
2432
+ * SendSmsRequest sends an SMS. `from` defaults to the agent's SMS-capable number
2433
+ * when empty. `session` carries opaque
2434
+ * CTI/embedding correlation keys (e.g. from session.set), like PlaceCall.
2435
+ *
2436
+ * @generated from message babelconnect.v1.SendSmsRequest
2437
+ */
2438
+ export class SendSmsRequest extends Message {
2439
+ /**
2440
+ * @generated from field: string to = 1;
2441
+ */
2442
+ to = "";
2443
+ /**
2444
+ * @generated from field: string text = 2;
2445
+ */
2446
+ text = "";
2447
+ /**
2448
+ * @generated from field: string from = 3;
2449
+ */
2450
+ from = "";
2451
+ /**
2452
+ * @generated from field: map<string, string> session = 4;
2453
+ */
2454
+ session = {};
2455
+ constructor(data) {
2456
+ super();
2457
+ proto3.util.initPartial(data, this);
2458
+ }
2459
+ static runtime = proto3;
2460
+ static typeName = "babelconnect.v1.SendSmsRequest";
2461
+ static fields = proto3.util.newFieldList(() => [
2462
+ { no: 1, name: "to", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2463
+ { no: 2, name: "text", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2464
+ { no: 3, name: "from", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2465
+ { no: 4, name: "session", kind: "map", K: 9 /* ScalarType.STRING */, V: { kind: "scalar", T: 9 /* ScalarType.STRING */ } },
2466
+ ]);
2467
+ static fromBinary(bytes, options) {
2468
+ return new SendSmsRequest().fromBinary(bytes, options);
2469
+ }
2470
+ static fromJson(jsonValue, options) {
2471
+ return new SendSmsRequest().fromJson(jsonValue, options);
2472
+ }
2473
+ static fromJsonString(jsonString, options) {
2474
+ return new SendSmsRequest().fromJsonString(jsonString, options);
2475
+ }
2476
+ static equals(a, b) {
2477
+ return proto3.util.equals(SendSmsRequest, a, b);
2478
+ }
2479
+ }
2480
+ /**
2481
+ * SmsMessage is one message inside a conversation thread, fetched on demand via
2482
+ * GetSmsThread (the AgentView only carries the lightweight SmsConversation
2483
+ * summary, not the full history). Oldest-first; the client bubbles it by
2484
+ * direction. `state` is the message status (received/sent/delivered/failed/
2485
+ * scheduled) for display only.
2486
+ *
2487
+ * @generated from message babelconnect.v1.SmsMessage
2488
+ */
2489
+ export class SmsMessage extends Message {
2490
+ /**
2491
+ * @generated from field: string id = 1;
2492
+ */
2493
+ id = "";
2494
+ /**
2495
+ * INBOUND = received, OUTBOUND = sent
2496
+ *
2497
+ * @generated from field: babelconnect.v1.CallDirection direction = 2;
2498
+ */
2499
+ direction = CallDirection.UNSPECIFIED;
2500
+ /**
2501
+ * @generated from field: string from = 3;
2502
+ */
2503
+ from = "";
2504
+ /**
2505
+ * @generated from field: string to = 4;
2506
+ */
2507
+ to = "";
2508
+ /**
2509
+ * @generated from field: string text = 5;
2510
+ */
2511
+ text = "";
2512
+ /**
2513
+ * unix seconds (dateCreated)
2514
+ *
2515
+ * @generated from field: int64 ts = 6;
2516
+ */
2517
+ ts = protoInt64.zero;
2518
+ /**
2519
+ * received/sent/delivered/failed/scheduled (display only)
2520
+ *
2521
+ * @generated from field: string state = 7;
2522
+ */
2523
+ state = "";
2524
+ constructor(data) {
2525
+ super();
2526
+ proto3.util.initPartial(data, this);
2527
+ }
2528
+ static runtime = proto3;
2529
+ static typeName = "babelconnect.v1.SmsMessage";
2530
+ static fields = proto3.util.newFieldList(() => [
2531
+ { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2532
+ { no: 2, name: "direction", kind: "enum", T: proto3.getEnumType(CallDirection) },
2533
+ { no: 3, name: "from", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2534
+ { no: 4, name: "to", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2535
+ { no: 5, name: "text", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2536
+ { no: 6, name: "ts", kind: "scalar", T: 3 /* ScalarType.INT64 */ },
2537
+ { no: 7, name: "state", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2538
+ ]);
2539
+ static fromBinary(bytes, options) {
2540
+ return new SmsMessage().fromBinary(bytes, options);
2541
+ }
2542
+ static fromJson(jsonValue, options) {
2543
+ return new SmsMessage().fromJson(jsonValue, options);
2544
+ }
2545
+ static fromJsonString(jsonString, options) {
2546
+ return new SmsMessage().fromJsonString(jsonString, options);
2547
+ }
2548
+ static equals(a, b) {
2549
+ return proto3.util.equals(SmsMessage, a, b);
2550
+ }
2551
+ }
2552
+ /**
2553
+ * SmsThreadRequest / SmsThreadResponse page the messages of one SMS conversation.
2554
+ *
2555
+ * @generated from message babelconnect.v1.SmsThreadRequest
2556
+ */
2557
+ export class SmsThreadRequest extends Message {
2558
+ /**
2559
+ * @generated from field: string conversation_id = 1;
2560
+ */
2561
+ conversationId = "";
2562
+ /**
2563
+ * page size (default 50)
2564
+ *
2565
+ * @generated from field: int32 max = 2;
2566
+ */
2567
+ max = 0;
2568
+ /**
2569
+ * 1-based page (default 1)
2570
+ *
2571
+ * @generated from field: int32 page = 3;
2572
+ */
2573
+ page = 0;
2574
+ constructor(data) {
2575
+ super();
2576
+ proto3.util.initPartial(data, this);
2577
+ }
2578
+ static runtime = proto3;
2579
+ static typeName = "babelconnect.v1.SmsThreadRequest";
2580
+ static fields = proto3.util.newFieldList(() => [
2581
+ { no: 1, name: "conversation_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2582
+ { no: 2, name: "max", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
2583
+ { no: 3, name: "page", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
2584
+ ]);
2585
+ static fromBinary(bytes, options) {
2586
+ return new SmsThreadRequest().fromBinary(bytes, options);
2587
+ }
2588
+ static fromJson(jsonValue, options) {
2589
+ return new SmsThreadRequest().fromJson(jsonValue, options);
2590
+ }
2591
+ static fromJsonString(jsonString, options) {
2592
+ return new SmsThreadRequest().fromJsonString(jsonString, options);
2593
+ }
2594
+ static equals(a, b) {
2595
+ return proto3.util.equals(SmsThreadRequest, a, b);
2596
+ }
2597
+ }
2598
+ /**
2599
+ * @generated from message babelconnect.v1.SmsThreadResponse
2600
+ */
2601
+ export class SmsThreadResponse extends Message {
2602
+ /**
2603
+ * @generated from field: repeated babelconnect.v1.SmsMessage messages = 1;
2604
+ */
2605
+ messages = [];
2606
+ constructor(data) {
2607
+ super();
2608
+ proto3.util.initPartial(data, this);
2609
+ }
2610
+ static runtime = proto3;
2611
+ static typeName = "babelconnect.v1.SmsThreadResponse";
2612
+ static fields = proto3.util.newFieldList(() => [
2613
+ { no: 1, name: "messages", kind: "message", T: SmsMessage, repeated: true },
2614
+ ]);
2615
+ static fromBinary(bytes, options) {
2616
+ return new SmsThreadResponse().fromBinary(bytes, options);
2617
+ }
2618
+ static fromJson(jsonValue, options) {
2619
+ return new SmsThreadResponse().fromJson(jsonValue, options);
2620
+ }
2621
+ static fromJsonString(jsonString, options) {
2622
+ return new SmsThreadResponse().fromJsonString(jsonString, options);
2623
+ }
2624
+ static equals(a, b) {
2625
+ return proto3.util.equals(SmsThreadResponse, a, b);
2626
+ }
2627
+ }
2628
+ /**
2629
+ * SetConversationOpen opens (reopens) or closes (resolves) an SMS conversation.
2630
+ * The server flips SmsConversation.open optimistically and re-confirms.
2631
+ *
2632
+ * @generated from message babelconnect.v1.SetConversationOpen
2633
+ */
2634
+ export class SetConversationOpen extends Message {
2635
+ /**
2636
+ * @generated from field: string conversation_id = 1;
2637
+ */
2638
+ conversationId = "";
2639
+ /**
2640
+ * @generated from field: bool open = 2;
2641
+ */
2642
+ open = false;
2643
+ constructor(data) {
2644
+ super();
2645
+ proto3.util.initPartial(data, this);
2646
+ }
2647
+ static runtime = proto3;
2648
+ static typeName = "babelconnect.v1.SetConversationOpen";
2649
+ static fields = proto3.util.newFieldList(() => [
2650
+ { no: 1, name: "conversation_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2651
+ { no: 2, name: "open", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
2652
+ ]);
2653
+ static fromBinary(bytes, options) {
2654
+ return new SetConversationOpen().fromBinary(bytes, options);
2655
+ }
2656
+ static fromJson(jsonValue, options) {
2657
+ return new SetConversationOpen().fromJson(jsonValue, options);
2658
+ }
2659
+ static fromJsonString(jsonString, options) {
2660
+ return new SetConversationOpen().fromJsonString(jsonString, options);
2661
+ }
2662
+ static equals(a, b) {
2663
+ return proto3.util.equals(SetConversationOpen, a, b);
2664
+ }
2665
+ }
2666
+ /**
2667
+ * MarkConversationRead clears the unread count on an SMS conversation (the agent
2668
+ * opened its thread).
2669
+ *
2670
+ * @generated from message babelconnect.v1.MarkConversationRead
2671
+ */
2672
+ export class MarkConversationRead extends Message {
2673
+ /**
2674
+ * @generated from field: string conversation_id = 1;
2675
+ */
2676
+ conversationId = "";
2677
+ constructor(data) {
2678
+ super();
2679
+ proto3.util.initPartial(data, this);
2680
+ }
2681
+ static runtime = proto3;
2682
+ static typeName = "babelconnect.v1.MarkConversationRead";
2683
+ static fields = proto3.util.newFieldList(() => [
2684
+ { no: 1, name: "conversation_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2685
+ ]);
2686
+ static fromBinary(bytes, options) {
2687
+ return new MarkConversationRead().fromBinary(bytes, options);
2688
+ }
2689
+ static fromJson(jsonValue, options) {
2690
+ return new MarkConversationRead().fromJson(jsonValue, options);
2691
+ }
2692
+ static fromJsonString(jsonString, options) {
2693
+ return new MarkConversationRead().fromJsonString(jsonString, options);
2694
+ }
2695
+ static equals(a, b) {
2696
+ return proto3.util.equals(MarkConversationRead, a, b);
2697
+ }
2698
+ }
2699
+ /**
2700
+ * Conference is one multi-party call the agent is in. The server folds multi-party
2701
+ * call updates into this entity and emits conference_upsert/remove patches. The
2702
+ * client is a dumb renderer that shows the participant panel and sends conference
2703
+ * intents. Usually 0 or 1 per agent. Upsert-by-id; removed when the conference
2704
+ * finishes or the agent's own member leaves.
2705
+ *
2706
+ * @generated from message babelconnect.v1.Conference
2707
+ */
2708
+ export class Conference extends Message {
2709
+ /**
2710
+ * conference id
2711
+ *
2712
+ * @generated from field: string id = 1;
2713
+ */
2714
+ id = "";
2715
+ /**
2716
+ * created|finishing|finished
2717
+ *
2718
+ * @generated from field: string state = 2;
2719
+ */
2720
+ state = "";
2721
+ /**
2722
+ * all members incl. the moderator and me
2723
+ *
2724
+ * @generated from field: repeated babelconnect.v1.ConferenceMember members = 3;
2725
+ */
2726
+ members = [];
2727
+ /**
2728
+ * resolved server-side: is this agent the moderator?
2729
+ *
2730
+ * @generated from field: bool i_am_moderator = 4;
2731
+ */
2732
+ iAmModerator = false;
2733
+ /**
2734
+ * the agent's own member id (used for Leave)
2735
+ *
2736
+ * @generated from field: string my_member_id = 5;
2737
+ */
2738
+ myMemberId = "";
2739
+ constructor(data) {
2740
+ super();
2741
+ proto3.util.initPartial(data, this);
2742
+ }
2743
+ static runtime = proto3;
2744
+ static typeName = "babelconnect.v1.Conference";
2745
+ static fields = proto3.util.newFieldList(() => [
2746
+ { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2747
+ { no: 2, name: "state", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2748
+ { no: 3, name: "members", kind: "message", T: ConferenceMember, repeated: true },
2749
+ { no: 4, name: "i_am_moderator", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
2750
+ { no: 5, name: "my_member_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2751
+ ]);
2752
+ static fromBinary(bytes, options) {
2753
+ return new Conference().fromBinary(bytes, options);
2754
+ }
2755
+ static fromJson(jsonValue, options) {
2756
+ return new Conference().fromJson(jsonValue, options);
2757
+ }
2758
+ static fromJsonString(jsonString, options) {
2759
+ return new Conference().fromJsonString(jsonString, options);
2760
+ }
2761
+ static equals(a, b) {
2762
+ return proto3.util.equals(Conference, a, b);
2763
+ }
2764
+ }
2765
+ /**
2766
+ * ConferenceMember is one participant. `display` is the resolved label (agent
2767
+ * name, else the caller/dialed number, else "Anonymous"). `state` drives the UI:
2768
+ * pending = ringing, added = live, removing/removed/failed = gone (clients filter
2769
+ * removed/failed out of the participant list).
2770
+ *
2771
+ * @generated from message babelconnect.v1.ConferenceMember
2772
+ */
2773
+ export class ConferenceMember extends Message {
2774
+ /**
2775
+ * member id
2776
+ *
2777
+ * @generated from field: string id = 1;
2778
+ */
2779
+ id = "";
2780
+ /**
2781
+ * pending|added|removing|removed|failed
2782
+ *
2783
+ * @generated from field: string state = 2;
2784
+ */
2785
+ state = "";
2786
+ /**
2787
+ * resolved participant label
2788
+ *
2789
+ * @generated from field: string display = 3;
2790
+ */
2791
+ display = "";
2792
+ /**
2793
+ * this member is the conference moderator
2794
+ *
2795
+ * @generated from field: bool moderator = 4;
2796
+ */
2797
+ moderator = false;
2798
+ /**
2799
+ * this member is the current agent
2800
+ *
2801
+ * @generated from field: bool is_me = 5;
2802
+ */
2803
+ isMe = false;
2804
+ /**
2805
+ * the member's call leg id
2806
+ *
2807
+ * @generated from field: string call_id = 6;
2808
+ */
2809
+ callId = "";
2810
+ /**
2811
+ * member is on hold
2812
+ *
2813
+ * @generated from field: bool on_hold = 7;
2814
+ */
2815
+ onHold = false;
2816
+ /**
2817
+ * agent UUID when the member is an agent
2818
+ *
2819
+ * @generated from field: string agent_id = 8;
2820
+ */
2821
+ agentId = "";
2822
+ /**
2823
+ * phone number when the member is an external party
2824
+ *
2825
+ * @generated from field: string number = 9;
2826
+ */
2827
+ number = "";
2828
+ constructor(data) {
2829
+ super();
2830
+ proto3.util.initPartial(data, this);
2831
+ }
2832
+ static runtime = proto3;
2833
+ static typeName = "babelconnect.v1.ConferenceMember";
2834
+ static fields = proto3.util.newFieldList(() => [
2835
+ { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2836
+ { no: 2, name: "state", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2837
+ { no: 3, name: "display", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2838
+ { no: 4, name: "moderator", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
2839
+ { no: 5, name: "is_me", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
2840
+ { no: 6, name: "call_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2841
+ { no: 7, name: "on_hold", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
2842
+ { no: 8, name: "agent_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2843
+ { no: 9, name: "number", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2844
+ ]);
2845
+ static fromBinary(bytes, options) {
2846
+ return new ConferenceMember().fromBinary(bytes, options);
2847
+ }
2848
+ static fromJson(jsonValue, options) {
2849
+ return new ConferenceMember().fromJson(jsonValue, options);
2850
+ }
2851
+ static fromJsonString(jsonString, options) {
2852
+ return new ConferenceMember().fromJsonString(jsonString, options);
2853
+ }
2854
+ static equals(a, b) {
2855
+ return proto3.util.equals(ConferenceMember, a, b);
2856
+ }
2857
+ }
2858
+ /**
2859
+ * StartConference opens a conference around the agent's current call. `hold` puts
2860
+ * the existing party on hold while the first new member is dialed.
2861
+ *
2862
+ * @generated from message babelconnect.v1.StartConference
2863
+ */
2864
+ export class StartConference extends Message {
2865
+ /**
2866
+ * @generated from field: bool hold = 1;
2867
+ */
2868
+ hold = false;
2869
+ constructor(data) {
2870
+ super();
2871
+ proto3.util.initPartial(data, this);
2872
+ }
2873
+ static runtime = proto3;
2874
+ static typeName = "babelconnect.v1.StartConference";
2875
+ static fields = proto3.util.newFieldList(() => [
2876
+ { no: 1, name: "hold", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
2877
+ ]);
2878
+ static fromBinary(bytes, options) {
2879
+ return new StartConference().fromBinary(bytes, options);
2880
+ }
2881
+ static fromJson(jsonValue, options) {
2882
+ return new StartConference().fromJson(jsonValue, options);
2883
+ }
2884
+ static fromJsonString(jsonString, options) {
2885
+ return new StartConference().fromJsonString(jsonString, options);
2886
+ }
2887
+ static equals(a, b) {
2888
+ return proto3.util.equals(StartConference, a, b);
2889
+ }
2890
+ }
2891
+ /**
2892
+ * AddConferenceMember invites a participant — exactly one of agent_id / number.
2893
+ * Starts a conference first if none is active.
2894
+ *
2895
+ * @generated from message babelconnect.v1.AddConferenceMember
2896
+ */
2897
+ export class AddConferenceMember extends Message {
2898
+ /**
2899
+ * @generated from field: string agent_id = 1;
2900
+ */
2901
+ agentId = "";
2902
+ /**
2903
+ * @generated from field: string number = 2;
2904
+ */
2905
+ number = "";
2906
+ constructor(data) {
2907
+ super();
2908
+ proto3.util.initPartial(data, this);
2909
+ }
2910
+ static runtime = proto3;
2911
+ static typeName = "babelconnect.v1.AddConferenceMember";
2912
+ static fields = proto3.util.newFieldList(() => [
2913
+ { no: 1, name: "agent_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2914
+ { no: 2, name: "number", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2915
+ ]);
2916
+ static fromBinary(bytes, options) {
2917
+ return new AddConferenceMember().fromBinary(bytes, options);
2918
+ }
2919
+ static fromJson(jsonValue, options) {
2920
+ return new AddConferenceMember().fromJson(jsonValue, options);
2921
+ }
2922
+ static fromJsonString(jsonString, options) {
2923
+ return new AddConferenceMember().fromJsonString(jsonString, options);
2924
+ }
2925
+ static equals(a, b) {
2926
+ return proto3.util.equals(AddConferenceMember, a, b);
2927
+ }
2928
+ }
2929
+ /**
2930
+ * KickConferenceMember removes a member from the conference (moderator only).
2931
+ *
2932
+ * @generated from message babelconnect.v1.KickConferenceMember
2933
+ */
2934
+ export class KickConferenceMember extends Message {
2935
+ /**
2936
+ * @generated from field: string member_id = 1;
2937
+ */
2938
+ memberId = "";
2939
+ constructor(data) {
2940
+ super();
2941
+ proto3.util.initPartial(data, this);
2942
+ }
2943
+ static runtime = proto3;
2944
+ static typeName = "babelconnect.v1.KickConferenceMember";
2945
+ static fields = proto3.util.newFieldList(() => [
2946
+ { no: 1, name: "member_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
2947
+ ]);
2948
+ static fromBinary(bytes, options) {
2949
+ return new KickConferenceMember().fromBinary(bytes, options);
2950
+ }
2951
+ static fromJson(jsonValue, options) {
2952
+ return new KickConferenceMember().fromJson(jsonValue, options);
2953
+ }
2954
+ static fromJsonString(jsonString, options) {
2955
+ return new KickConferenceMember().fromJsonString(jsonString, options);
2956
+ }
2957
+ static equals(a, b) {
2958
+ return proto3.util.equals(KickConferenceMember, a, b);
2959
+ }
2960
+ }
2961
+ /**
2962
+ * EndConference tears down the whole conference (moderator only).
2963
+ *
2964
+ * @generated from message babelconnect.v1.EndConference
2965
+ */
2966
+ export class EndConference extends Message {
2967
+ constructor(data) {
2968
+ super();
2969
+ proto3.util.initPartial(data, this);
2970
+ }
2971
+ static runtime = proto3;
2972
+ static typeName = "babelconnect.v1.EndConference";
2973
+ static fields = proto3.util.newFieldList(() => []);
2974
+ static fromBinary(bytes, options) {
2975
+ return new EndConference().fromBinary(bytes, options);
2976
+ }
2977
+ static fromJson(jsonValue, options) {
2978
+ return new EndConference().fromJson(jsonValue, options);
2979
+ }
2980
+ static fromJsonString(jsonString, options) {
2981
+ return new EndConference().fromJsonString(jsonString, options);
2982
+ }
2983
+ static equals(a, b) {
2984
+ return proto3.util.equals(EndConference, a, b);
2985
+ }
2986
+ }
2987
+ /**
2988
+ * LeaveConference hangs up only the agent's own leg; the others stay connected.
2989
+ *
2990
+ * @generated from message babelconnect.v1.LeaveConference
2991
+ */
2992
+ export class LeaveConference extends Message {
2993
+ constructor(data) {
2994
+ super();
2995
+ proto3.util.initPartial(data, this);
2996
+ }
2997
+ static runtime = proto3;
2998
+ static typeName = "babelconnect.v1.LeaveConference";
2999
+ static fields = proto3.util.newFieldList(() => []);
3000
+ static fromBinary(bytes, options) {
3001
+ return new LeaveConference().fromBinary(bytes, options);
3002
+ }
3003
+ static fromJson(jsonValue, options) {
3004
+ return new LeaveConference().fromJson(jsonValue, options);
3005
+ }
3006
+ static fromJsonString(jsonString, options) {
3007
+ return new LeaveConference().fromJsonString(jsonString, options);
3008
+ }
3009
+ static equals(a, b) {
3010
+ return proto3.util.equals(LeaveConference, a, b);
3011
+ }
3012
+ }
3013
+ /**
3014
+ * HoldConferenceMember holds or unholds an individual member (moderator only).
3015
+ *
3016
+ * @generated from message babelconnect.v1.HoldConferenceMember
3017
+ */
3018
+ export class HoldConferenceMember extends Message {
3019
+ /**
3020
+ * @generated from field: string member_id = 1;
3021
+ */
3022
+ memberId = "";
3023
+ /**
3024
+ * @generated from field: bool on = 2;
3025
+ */
3026
+ on = false;
3027
+ constructor(data) {
3028
+ super();
3029
+ proto3.util.initPartial(data, this);
3030
+ }
3031
+ static runtime = proto3;
3032
+ static typeName = "babelconnect.v1.HoldConferenceMember";
3033
+ static fields = proto3.util.newFieldList(() => [
3034
+ { no: 1, name: "member_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
3035
+ { no: 2, name: "on", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
3036
+ ]);
3037
+ static fromBinary(bytes, options) {
3038
+ return new HoldConferenceMember().fromBinary(bytes, options);
3039
+ }
3040
+ static fromJson(jsonValue, options) {
3041
+ return new HoldConferenceMember().fromJson(jsonValue, options);
3042
+ }
3043
+ static fromJsonString(jsonString, options) {
3044
+ return new HoldConferenceMember().fromJsonString(jsonString, options);
3045
+ }
3046
+ static equals(a, b) {
3047
+ return proto3.util.equals(HoldConferenceMember, a, b);
3048
+ }
3049
+ }
3050
+ /**
3051
+ * MuteConferenceMember mutes or unmutes an individual member (moderator only).
3052
+ *
3053
+ * @generated from message babelconnect.v1.MuteConferenceMember
3054
+ */
3055
+ export class MuteConferenceMember extends Message {
3056
+ /**
3057
+ * @generated from field: string member_id = 1;
3058
+ */
3059
+ memberId = "";
3060
+ /**
3061
+ * @generated from field: bool on = 2;
3062
+ */
3063
+ on = false;
3064
+ constructor(data) {
3065
+ super();
3066
+ proto3.util.initPartial(data, this);
3067
+ }
3068
+ static runtime = proto3;
3069
+ static typeName = "babelconnect.v1.MuteConferenceMember";
3070
+ static fields = proto3.util.newFieldList(() => [
3071
+ { no: 1, name: "member_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
3072
+ { no: 2, name: "on", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
3073
+ ]);
3074
+ static fromBinary(bytes, options) {
3075
+ return new MuteConferenceMember().fromBinary(bytes, options);
3076
+ }
3077
+ static fromJson(jsonValue, options) {
3078
+ return new MuteConferenceMember().fromJson(jsonValue, options);
3079
+ }
3080
+ static fromJsonString(jsonString, options) {
3081
+ return new MuteConferenceMember().fromJsonString(jsonString, options);
3082
+ }
3083
+ static equals(a, b) {
3084
+ return proto3.util.equals(MuteConferenceMember, a, b);
3085
+ }
3086
+ }