@stinkycomputing/sesame-api-client 1.5.0-alpha.2 → 1.5.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -270,6 +270,17 @@ ws.send(buildTransportControlFrame('transport-ctrl', {
270
270
 
271
271
  `buildAudioControlFrame(trackName, request)` and `buildTransportControlFrame(trackName, request)` both return a ready-to-send `Uint8Array`.
272
272
 
273
+ ### Sending Binary Data
274
+
275
+ Send opaque binary payloads on a named metadata track:
276
+
277
+ ```typescript
278
+ import { buildBinaryDataFrame } from '@stinkycomputing/sesame-api-client';
279
+
280
+ const payload = new Uint8Array([0xF0, 0x15, 0x31, /* ... */ 0xF7]);
281
+ ws.send(buildBinaryDataFrame('my-binary-track', payload));
282
+ ```
283
+
273
284
  ---
274
285
 
275
286
  ## StatusApi
@@ -22768,6 +22768,7 @@ var sesame = $root.sesame = (() => {
22768
22768
  PublishMetadataRequest.prototype.nodeId = "";
22769
22769
  PublishMetadataRequest.prototype.metadataId = "";
22770
22770
  PublishMetadataRequest.prototype.payload = $util.newBuffer([]);
22771
+ PublishMetadataRequest.prototype.dataType = 0;
22771
22772
  PublishMetadataRequest.create = function create(properties) {
22772
22773
  return new PublishMetadataRequest(properties);
22773
22774
  };
@@ -22789,6 +22790,11 @@ var sesame = $root.sesame = (() => {
22789
22790
  /* id 3, wireType 2 =*/
22790
22791
  26
22791
22792
  ).bytes(message.payload);
22793
+ if (message.dataType != null && Object.hasOwnProperty.call(message, "dataType"))
22794
+ writer.uint32(
22795
+ /* id 4, wireType 0 =*/
22796
+ 32
22797
+ ).int32(message.dataType);
22792
22798
  return writer;
22793
22799
  };
22794
22800
  PublishMetadataRequest.encodeDelimited = function encodeDelimited(message, writer) {
@@ -22815,6 +22821,10 @@ var sesame = $root.sesame = (() => {
22815
22821
  message.payload = reader.bytes();
22816
22822
  break;
22817
22823
  }
22824
+ case 4: {
22825
+ message.dataType = reader.int32();
22826
+ break;
22827
+ }
22818
22828
  default:
22819
22829
  reader.skipType(tag & 7);
22820
22830
  break;
@@ -22842,6 +22852,19 @@ var sesame = $root.sesame = (() => {
22842
22852
  if (!(message.payload && typeof message.payload.length === "number" || $util.isString(message.payload)))
22843
22853
  return "payload: buffer expected";
22844
22854
  }
22855
+ if (message.dataType != null && message.hasOwnProperty("dataType"))
22856
+ switch (message.dataType) {
22857
+ default:
22858
+ return "dataType: enum value expected";
22859
+ case 0:
22860
+ case 1:
22861
+ case 2:
22862
+ case 3:
22863
+ case 4:
22864
+ case 5:
22865
+ case 6:
22866
+ break;
22867
+ }
22845
22868
  return null;
22846
22869
  };
22847
22870
  PublishMetadataRequest.fromObject = function fromObject(object) {
@@ -22858,6 +22881,42 @@ var sesame = $root.sesame = (() => {
22858
22881
  else if (object.payload.length >= 0)
22859
22882
  message.payload = object.payload;
22860
22883
  }
22884
+ switch (object.dataType) {
22885
+ default:
22886
+ if (typeof object.dataType === "number") {
22887
+ message.dataType = object.dataType;
22888
+ break;
22889
+ }
22890
+ break;
22891
+ case "DATA_TYPE_UNSPECIFIED":
22892
+ case 0:
22893
+ message.dataType = 0;
22894
+ break;
22895
+ case "DATA_TYPE_JSON":
22896
+ case 1:
22897
+ message.dataType = 1;
22898
+ break;
22899
+ case "DATA_TYPE_TRANSPORT_STATUS":
22900
+ case 2:
22901
+ message.dataType = 2;
22902
+ break;
22903
+ case "DATA_TYPE_AUDIO_STATE":
22904
+ case 3:
22905
+ message.dataType = 3;
22906
+ break;
22907
+ case "DATA_TYPE_TRANSPORT_CONTROL":
22908
+ case 4:
22909
+ message.dataType = 4;
22910
+ break;
22911
+ case "DATA_TYPE_AUDIO_CONTROL":
22912
+ case 5:
22913
+ message.dataType = 5;
22914
+ break;
22915
+ case "DATA_TYPE_BINARY":
22916
+ case 6:
22917
+ message.dataType = 6;
22918
+ break;
22919
+ }
22861
22920
  return message;
22862
22921
  };
22863
22922
  PublishMetadataRequest.toObject = function toObject(message, options) {
@@ -22874,6 +22933,7 @@ var sesame = $root.sesame = (() => {
22874
22933
  if (options.bytes !== Array)
22875
22934
  object.payload = $util.newBuffer(object.payload);
22876
22935
  }
22936
+ object.dataType = options.enums === String ? "DATA_TYPE_UNSPECIFIED" : 0;
22877
22937
  }
22878
22938
  if (message.nodeId != null && message.hasOwnProperty("nodeId"))
22879
22939
  object.nodeId = message.nodeId;
@@ -22881,6 +22941,8 @@ var sesame = $root.sesame = (() => {
22881
22941
  object.metadataId = message.metadataId;
22882
22942
  if (message.payload != null && message.hasOwnProperty("payload"))
22883
22943
  object.payload = options.bytes === String ? $util.base64.encode(message.payload, 0, message.payload.length) : options.bytes === Array ? Array.prototype.slice.call(message.payload) : message.payload;
22944
+ if (message.dataType != null && message.hasOwnProperty("dataType"))
22945
+ object.dataType = options.enums === String ? $root.sesame.v1.wire.DataType[message.dataType] === void 0 ? message.dataType : $root.sesame.v1.wire.DataType[message.dataType] : message.dataType;
22884
22946
  return object;
22885
22947
  };
22886
22948
  PublishMetadataRequest.prototype.toJSON = function toJSON() {
@@ -23440,6 +23502,7 @@ var sesame = $root.sesame = (() => {
23440
23502
  values[valuesById[3] = "DATA_TYPE_AUDIO_STATE"] = 3;
23441
23503
  values[valuesById[4] = "DATA_TYPE_TRANSPORT_CONTROL"] = 4;
23442
23504
  values[valuesById[5] = "DATA_TYPE_AUDIO_CONTROL"] = 5;
23505
+ values[valuesById[6] = "DATA_TYPE_BINARY"] = 6;
23443
23506
  return values;
23444
23507
  }();
23445
23508
  wire.DataFrameData = function() {
@@ -23515,6 +23578,7 @@ var sesame = $root.sesame = (() => {
23515
23578
  case 3:
23516
23579
  case 4:
23517
23580
  case 5:
23581
+ case 6:
23518
23582
  break;
23519
23583
  }
23520
23584
  if (message.trackName != null && message.hasOwnProperty("trackName")) {
@@ -23558,6 +23622,10 @@ var sesame = $root.sesame = (() => {
23558
23622
  case 5:
23559
23623
  message.dataType = 5;
23560
23624
  break;
23625
+ case "DATA_TYPE_BINARY":
23626
+ case 6:
23627
+ message.dataType = 6;
23628
+ break;
23561
23629
  }
23562
23630
  if (object.trackName != null)
23563
23631
  message.trackName = String(object.trackName);
@@ -24342,6 +24410,8 @@ function parseDataFrame(frame) {
24342
24410
  trackName,
24343
24411
  request: sesame.v1.audio.AudioControlRequest.decode(payload)
24344
24412
  };
24413
+ case sesame.v1.wire.DataType.DATA_TYPE_BINARY:
24414
+ return { dataType: "binary", trackName, data: payload };
24345
24415
  default:
24346
24416
  return null;
24347
24417
  }
@@ -24369,6 +24439,15 @@ function buildTransportControlFrame(trackName, request) {
24369
24439
  payload
24370
24440
  );
24371
24441
  }
24442
+ function buildBinaryDataFrame(trackName, payload) {
24443
+ return WireProtocol.serialize(
24444
+ {
24445
+ type: sesame.v1.wire.FrameType.FRAME_TYPE_DATA,
24446
+ data: { dataType: sesame.v1.wire.DataType.DATA_TYPE_BINARY, trackName }
24447
+ },
24448
+ payload
24449
+ );
24450
+ }
24372
24451
  var PREFIX_SIZE = 4;
24373
24452
  var WireProtocol = class {
24374
24453
  /**
@@ -24865,6 +24944,7 @@ export {
24865
24944
  StatusApi,
24866
24945
  WireProtocol,
24867
24946
  buildAudioControlFrame,
24947
+ buildBinaryDataFrame,
24868
24948
  buildTransportControlFrame,
24869
24949
  getLogger,
24870
24950
  log,