@m1kad0/hannah-proto 5.3.0 → 5.5.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.
Files changed (97) hide show
  1. package/dist/compat_versions.js +1 -0
  2. package/dist/descriptor.binpb +0 -0
  3. package/dist/google/protobuf/descriptor.d.ts +1 -0
  4. package/dist/google/protobuf/descriptor.js +22 -15
  5. package/dist/options.d.ts +1 -0
  6. package/dist/options.js +3 -2
  7. package/dist/v1/activity_log.d.ts +1 -0
  8. package/dist/v1/activity_log.js +3 -2
  9. package/dist/v1/agent.d.ts +1 -0
  10. package/dist/v1/agent.js +9 -6
  11. package/dist/v1/automation.d.ts +1 -0
  12. package/dist/v1/automation.js +9 -6
  13. package/dist/v1/car_state.d.ts +1 -0
  14. package/dist/v1/car_state.js +3 -2
  15. package/dist/v1/channel.d.ts +1 -0
  16. package/dist/v1/channel.js +3 -2
  17. package/dist/v1/control.d.ts +1 -0
  18. package/dist/v1/control.js +39 -26
  19. package/dist/v1/device_control_menu.d.ts +1 -0
  20. package/dist/v1/device_control_menu.js +3 -2
  21. package/dist/v1/event_stream.d.ts +1 -0
  22. package/dist/v1/event_stream.js +3 -2
  23. package/dist/v1/hannah.d.ts +1 -0
  24. package/dist/v1/hannah.js +3 -2
  25. package/dist/v1/infrastructure.d.ts +1 -0
  26. package/dist/v1/infrastructure.js +9 -6
  27. package/dist/v1/logging.d.ts +1 -0
  28. package/dist/v1/logging.js +9 -6
  29. package/dist/v1/messages.d.ts +1 -0
  30. package/dist/v1/messages.js +3 -2
  31. package/dist/v1/satellite.d.ts +1 -0
  32. package/dist/v1/satellite.js +3 -2
  33. package/dist/v1/satellite_provisioning.d.ts +1 -0
  34. package/dist/v1/satellite_provisioning.js +3 -2
  35. package/dist/v1/satellite_proxy.d.ts +1 -0
  36. package/dist/v1/satellite_proxy.js +3 -2
  37. package/dist/v1/shared.d.ts +1 -0
  38. package/dist/v1/shared.js +3 -2
  39. package/dist/v1/speaker_enrollment.d.ts +1 -0
  40. package/dist/v1/speaker_enrollment.js +3 -2
  41. package/dist/v1/timer_admin.d.ts +1 -0
  42. package/dist/v1/timer_admin.js +3 -2
  43. package/dist/v1/timer_service.d.ts +1 -0
  44. package/dist/v1/timer_service.js +3 -2
  45. package/dist/v1/user_registry.d.ts +1 -0
  46. package/dist/v1/user_registry.js +3 -2
  47. package/dist/v1/wakeword_capture.d.ts +1 -0
  48. package/dist/v1/wakeword_capture.js +3 -2
  49. package/dist/v1/weather.d.ts +1 -0
  50. package/dist/v1/weather.js +3 -2
  51. package/dist/v2/activity_log.d.ts +1 -0
  52. package/dist/v2/activity_log.js +3 -2
  53. package/dist/v2/agent.d.ts +7 -2
  54. package/dist/v2/agent.js +33 -6
  55. package/dist/v2/automation.d.ts +1 -0
  56. package/dist/v2/automation.js +9 -6
  57. package/dist/v2/car_state.d.ts +1 -0
  58. package/dist/v2/car_state.js +3 -2
  59. package/dist/v2/channel.d.ts +1 -0
  60. package/dist/v2/channel.js +3 -2
  61. package/dist/v2/control.d.ts +1 -0
  62. package/dist/v2/control.js +39 -26
  63. package/dist/v2/device_control_menu.d.ts +1 -0
  64. package/dist/v2/device_control_menu.js +3 -2
  65. package/dist/v2/device_model.d.ts +1 -0
  66. package/dist/v2/device_model.js +3 -2
  67. package/dist/v2/event_stream.d.ts +1 -0
  68. package/dist/v2/event_stream.js +3 -2
  69. package/dist/v2/hannah.d.ts +27 -1
  70. package/dist/v2/hannah.js +16 -2
  71. package/dist/v2/infrastructure.d.ts +5 -0
  72. package/dist/v2/infrastructure.js +33 -8
  73. package/dist/v2/logging.d.ts +1 -0
  74. package/dist/v2/logging.js +9 -6
  75. package/dist/v2/messages.d.ts +1 -0
  76. package/dist/v2/messages.js +3 -2
  77. package/dist/v2/satellite.d.ts +11 -0
  78. package/dist/v2/satellite.js +88 -2
  79. package/dist/v2/satellite_provisioning.d.ts +1 -0
  80. package/dist/v2/satellite_provisioning.js +3 -2
  81. package/dist/v2/satellite_proxy.d.ts +1 -0
  82. package/dist/v2/satellite_proxy.js +3 -2
  83. package/dist/v2/shared.d.ts +1 -0
  84. package/dist/v2/shared.js +3 -2
  85. package/dist/v2/speaker_enrollment.d.ts +1 -0
  86. package/dist/v2/speaker_enrollment.js +3 -2
  87. package/dist/v2/timer_admin.d.ts +1 -0
  88. package/dist/v2/timer_admin.js +3 -2
  89. package/dist/v2/timer_service.d.ts +1 -0
  90. package/dist/v2/timer_service.js +3 -2
  91. package/dist/v2/user_registry.d.ts +1 -0
  92. package/dist/v2/user_registry.js +3 -2
  93. package/dist/v2/wakeword_capture.d.ts +1 -0
  94. package/dist/v2/wakeword_capture.js +3 -2
  95. package/dist/v2/weather.d.ts +1 -0
  96. package/dist/v2/weather.js +3 -2
  97. package/package.json +3 -3
@@ -1,14 +1,15 @@
1
1
  "use strict";
2
2
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
3
3
  // versions:
4
- // protoc-gen-ts_proto v2.12.1
4
+ // protoc-gen-ts_proto v2.18.0
5
5
  // protoc unknown
6
6
  // source: hannah/v2/control.proto
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.DeleteCarRequest = exports.UpdateCarRequest = exports.CreateCarResponse = exports.CreateCarRequest = exports.GetCarsResponse = exports.Car = exports.DeletePresenceSourceRequest = exports.UpdatePresenceSourceRequest = exports.CreatePresenceSourceResponse = exports.CreatePresenceSourceRequest = exports.GetPresenceSourcesResponse = exports.PresenceSource = exports.DeleteBleTagRequest = exports.UpdateBleTagRequest = exports.CreateBleTagResponse = exports.CreateBleTagRequest = exports.GetBleTagsResponse = exports.BleTag = exports.UpdateConfigRequest = exports.SettingUpdate = exports.GetSettingsResponse = exports.Setting = exports.Category = exports.DeleteAlarmRequest = exports.UpdateAlarmRequest = exports.CreateAlarmResponse = exports.CreateAlarmRequest = exports.GetAlarmsResponse = exports.Alarm = exports.DeleteTriggerRequest = exports.UpdateTriggerRequest = exports.CreateTriggerRequest = exports.GetTriggersResponse = exports.Trigger = exports.SetGroupSatellitesRequest = exports.DeleteGroupRequest = exports.UpdateGroupRequest = exports.CreateGroupRequest = exports.GetGroupsResponse = exports.Group = exports.GroupSatellite = exports.GetRoomsResponse = exports.Room = exports.AnnounceRequest = exports.SubmitVoiceResponse = exports.SubmitVoiceRequest = exports.SubmitTextResponse = exports.SubmitTextRequest = exports.protobufPackage = void 0;
8
+ exports.DeleteCarRequest = exports.UpdateCarRequest = exports.CreateCarResponse = exports.CreateCarRequest = exports.GetCarsResponse = exports.Car = exports.DeletePresenceSourceRequest = exports.UpdatePresenceSourceRequest = exports.CreatePresenceSourceResponse = exports.CreatePresenceSourceRequest = exports.GetPresenceSourcesResponse = exports.PresenceSource = exports.DeleteBleTagRequest = exports.UpdateBleTagRequest = exports.CreateBleTagResponse = exports.CreateBleTagRequest = exports.GetBleTagsResponse = exports.BleTag = exports.UpdateConfigRequest = exports.SettingUpdate = exports.GetSettingsResponse = exports.Setting = exports.Category = exports.DeleteAlarmRequest = exports.UpdateAlarmRequest = exports.CreateAlarmResponse = exports.CreateAlarmRequest = exports.GetAlarmsResponse = exports.Alarm = exports.DeleteTriggerRequest = exports.UpdateTriggerRequest = exports.CreateTriggerRequest = exports.GetTriggersResponse = exports.Trigger = exports.SetGroupSatellitesRequest = exports.DeleteGroupRequest = exports.UpdateGroupRequest = exports.CreateGroupRequest = exports.GetGroupsResponse = exports.Group = exports.GroupSatellite = exports.GetRoomsResponse = exports.Room = exports.AnnounceRequest = exports.SubmitVoiceResponse = exports.SubmitVoiceRequest = exports.SubmitTextResponse = exports.SubmitTextRequest = exports.protobufFileName = exports.protobufPackage = void 0;
9
9
  /* eslint-disable */
10
10
  const wire_1 = require("@bufbuild/protobuf/wire");
11
11
  exports.protobufPackage = "hannah.v2";
12
+ exports.protobufFileName = "hannah/v2/control.proto";
12
13
  function createBaseSubmitTextRequest() {
13
14
  return { text: "", sourceService: "", sourceUserId: "" };
14
15
  }
@@ -1577,11 +1578,13 @@ exports.Alarm = {
1577
1578
  if (message.time !== "") {
1578
1579
  writer.uint32(26).string(message.time);
1579
1580
  }
1580
- writer.uint32(34).fork();
1581
- for (const v of message.weekdays) {
1582
- writer.int32(v);
1581
+ if (message.weekdays.length !== 0) {
1582
+ writer.uint32(34).fork();
1583
+ for (const v of message.weekdays) {
1584
+ writer.int32(v);
1585
+ }
1586
+ writer.join();
1583
1587
  }
1584
- writer.join();
1585
1588
  for (const v of message.skipDates) {
1586
1589
  writer.uint32(42).string(v);
1587
1590
  }
@@ -1773,11 +1776,13 @@ exports.CreateAlarmRequest = {
1773
1776
  if (message.time !== "") {
1774
1777
  writer.uint32(18).string(message.time);
1775
1778
  }
1776
- writer.uint32(26).fork();
1777
- for (const v of message.weekdays) {
1778
- writer.int32(v);
1779
+ if (message.weekdays.length !== 0) {
1780
+ writer.uint32(26).fork();
1781
+ for (const v of message.weekdays) {
1782
+ writer.int32(v);
1783
+ }
1784
+ writer.join();
1779
1785
  }
1780
- writer.join();
1781
1786
  if (message.oneShotDate !== "") {
1782
1787
  writer.uint32(34).string(message.oneShotDate);
1783
1788
  }
@@ -1964,11 +1969,13 @@ exports.UpdateAlarmRequest = {
1964
1969
  if (message.time !== "") {
1965
1970
  writer.uint32(26).string(message.time);
1966
1971
  }
1967
- writer.uint32(34).fork();
1968
- for (const v of message.weekdays) {
1969
- writer.int32(v);
1972
+ if (message.weekdays.length !== 0) {
1973
+ writer.uint32(34).fork();
1974
+ for (const v of message.weekdays) {
1975
+ writer.int32(v);
1976
+ }
1977
+ writer.join();
1970
1978
  }
1971
- writer.join();
1972
1979
  for (const v of message.skipDates) {
1973
1980
  writer.uint32(42).string(v);
1974
1981
  }
@@ -3415,11 +3422,13 @@ exports.Car = {
3415
3422
  if (message.homeAddress !== "") {
3416
3423
  writer.uint32(26).string(message.homeAddress);
3417
3424
  }
3418
- writer.uint32(34).fork();
3419
- for (const v of message.ownerUserIds) {
3420
- writer.int32(v);
3425
+ if (message.ownerUserIds.length !== 0) {
3426
+ writer.uint32(34).fork();
3427
+ for (const v of message.ownerUserIds) {
3428
+ writer.int32(v);
3429
+ }
3430
+ writer.join();
3421
3431
  }
3422
- writer.join();
3423
3432
  if (message.name !== "") {
3424
3433
  writer.uint32(42).string(message.name);
3425
3434
  }
@@ -3567,11 +3576,13 @@ exports.CreateCarRequest = {
3567
3576
  if (message.homeAddress !== "") {
3568
3577
  writer.uint32(18).string(message.homeAddress);
3569
3578
  }
3570
- writer.uint32(26).fork();
3571
- for (const v of message.ownerUserIds) {
3572
- writer.int32(v);
3579
+ if (message.ownerUserIds.length !== 0) {
3580
+ writer.uint32(26).fork();
3581
+ for (const v of message.ownerUserIds) {
3582
+ writer.int32(v);
3583
+ }
3584
+ writer.join();
3573
3585
  }
3574
- writer.join();
3575
3586
  if (message.name !== "") {
3576
3587
  writer.uint32(34).string(message.name);
3577
3588
  }
@@ -3736,11 +3747,13 @@ exports.UpdateCarRequest = {
3736
3747
  if (message.homeAddress !== "") {
3737
3748
  writer.uint32(26).string(message.homeAddress);
3738
3749
  }
3739
- writer.uint32(34).fork();
3740
- for (const v of message.ownerUserIds) {
3741
- writer.int32(v);
3750
+ if (message.ownerUserIds.length !== 0) {
3751
+ writer.uint32(34).fork();
3752
+ for (const v of message.ownerUserIds) {
3753
+ writer.int32(v);
3754
+ }
3755
+ writer.join();
3742
3756
  }
3743
- writer.join();
3744
3757
  if (message.name !== "") {
3745
3758
  writer.uint32(42).string(message.name);
3746
3759
  }
@@ -1,6 +1,7 @@
1
1
  import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
2
2
  import { DeviceClass, DeviceSubtype, Slot, SlotValue } from "./device_model";
3
3
  export declare const protobufPackage = "hannah.v2";
4
+ export declare const protobufFileName = "hannah/v2/device_control_menu.proto";
4
5
  /**
5
6
  * A device for control menus (WebUI, Telegram), in the typed device model: the class
6
7
  * says what it is, the slots carry its current values and what can be controlled.
@@ -1,15 +1,16 @@
1
1
  "use strict";
2
2
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
3
3
  // versions:
4
- // protoc-gen-ts_proto v2.12.1
4
+ // protoc-gen-ts_proto v2.18.0
5
5
  // protoc unknown
6
6
  // source: hannah/v2/device_control_menu.proto
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.ControlDeviceRequest = exports.GetDevicesResponse = exports.RoomInfo = exports.DeviceInfo = exports.protobufPackage = void 0;
8
+ exports.ControlDeviceRequest = exports.GetDevicesResponse = exports.RoomInfo = exports.DeviceInfo = exports.protobufFileName = exports.protobufPackage = void 0;
9
9
  /* eslint-disable */
10
10
  const wire_1 = require("@bufbuild/protobuf/wire");
11
11
  const device_model_1 = require("./device_model");
12
12
  exports.protobufPackage = "hannah.v2";
13
+ exports.protobufFileName = "hannah/v2/device_control_menu.proto";
13
14
  function createBaseDeviceInfo() {
14
15
  return { id: "", name: "", deviceClass: 0, slots: [], available: false, subtype: 0 };
15
16
  }
@@ -1,5 +1,6 @@
1
1
  import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
2
2
  export declare const protobufPackage = "hannah.v2";
3
+ export declare const protobufFileName = "hannah/v2/device_model.proto";
3
4
  /**
4
5
  * What kind of device this is. A class exists per family of verbs, not per feature:
5
6
  * a measuring socket is a SOCKET with a filled POWER slot, not a class of its own.
@@ -1,14 +1,15 @@
1
1
  "use strict";
2
2
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
3
3
  // versions:
4
- // protoc-gen-ts_proto v2.12.1
4
+ // protoc-gen-ts_proto v2.18.0
5
5
  // protoc unknown
6
6
  // source: hannah/v2/device_model.proto
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.SetSlot = exports.DeviceAvailability = exports.SlotUpdate = exports.TypedDeviceSnapshot = exports.TypedDevice = exports.Slot = exports.SlotValue = exports.SlotKind = exports.DeviceSubtype = exports.DeviceClass = exports.protobufPackage = void 0;
8
+ exports.SetSlot = exports.DeviceAvailability = exports.SlotUpdate = exports.TypedDeviceSnapshot = exports.TypedDevice = exports.Slot = exports.SlotValue = exports.SlotKind = exports.DeviceSubtype = exports.DeviceClass = exports.protobufFileName = exports.protobufPackage = void 0;
9
9
  /* eslint-disable */
10
10
  const wire_1 = require("@bufbuild/protobuf/wire");
11
11
  exports.protobufPackage = "hannah.v2";
12
+ exports.protobufFileName = "hannah/v2/device_model.proto";
12
13
  /**
13
14
  * What kind of device this is. A class exists per family of verbs, not per feature:
14
15
  * a measuring socket is a SOCKET with a filled POWER slot, not a class of its own.
@@ -1,6 +1,7 @@
1
1
  import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
2
2
  import { CarStateProto } from "./car_state";
3
3
  export declare const protobufPackage = "hannah.v2";
4
+ export declare const protobufFileName = "hannah/v2/event_stream.proto";
4
5
  export interface EventFilter {
5
6
  /** If empty, subscribe to all event types. */
6
7
  eventTypes: string[];
@@ -1,15 +1,16 @@
1
1
  "use strict";
2
2
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
3
3
  // versions:
4
- // protoc-gen-ts_proto v2.12.1
4
+ // protoc-gen-ts_proto v2.18.0
5
5
  // protoc unknown
6
6
  // source: hannah/v2/event_stream.proto
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.ResidentEventProto = exports.TriggerSatelliteRestartRequest = exports.TriggerFirmwareUpdateRequest = exports.FirmwareEventProto = exports.SystemNotificationEvent = exports.HannahEvent = exports.EventFilter = exports.protobufPackage = void 0;
8
+ exports.ResidentEventProto = exports.TriggerSatelliteRestartRequest = exports.TriggerFirmwareUpdateRequest = exports.FirmwareEventProto = exports.SystemNotificationEvent = exports.HannahEvent = exports.EventFilter = exports.protobufFileName = exports.protobufPackage = void 0;
9
9
  /* eslint-disable */
10
10
  const wire_1 = require("@bufbuild/protobuf/wire");
11
11
  const car_state_1 = require("./car_state");
12
12
  exports.protobufPackage = "hannah.v2";
13
+ exports.protobufFileName = "hannah/v2/event_stream.proto";
13
14
  function createBaseEventFilter() {
14
15
  return { eventTypes: [] };
15
16
  }
@@ -10,7 +10,7 @@ import { ControlDeviceRequest, GetDevicesResponse } from "./device_control_menu"
10
10
  import { EventFilter, HannahEvent, TriggerFirmwareUpdateRequest, TriggerSatelliteRestartRequest } from "./event_stream";
11
11
  import { InfrastructureFilter, InfrastructureMessage, LogCollectorCommand, LogCollectorMessage } from "./infrastructure";
12
12
  import { CreateMessageRequest, DeleteMessageRequest, ListMessagesRequest, ListMessagesResponse } from "./messages";
13
- import { DeleteSatelliteRequest, GetSatellitesResponse, SetSatelliteDisplayNameRequest, SetSatelliteOwnerRequest, SetSatelliteRoomRequest, SetSatelliteSmalltalkFollowupRequest } from "./satellite";
13
+ import { DeleteSatelliteRequest, GetSatellitesResponse, SetSatelliteDisplayNameRequest, SetSatelliteLedBrightnessRequest, SetSatelliteOwnerRequest, SetSatelliteRoomRequest, SetSatelliteSmalltalkFollowupRequest } from "./satellite";
14
14
  import { ProvisionSatelliteRequest } from "./satellite_provisioning";
15
15
  import { ProxyCommand, ProxyHeartbeat, SatelliteRegistration, SubmitSatelliteAudioRequest, SubmitSatelliteAudioResponse } from "./satellite_proxy";
16
16
  import { Empty, StatusResponse } from "./shared";
@@ -20,6 +20,7 @@ import { TimerCommand, TimerMessage } from "./timer_service";
20
20
  import { CreateLinkTokenRequest, CreateLinkTokenResponse, CreateUserRequest, CreateUserResponse, DeleteUserRequest, GetResidentsResponse, GetUserRequest, GetUsersRequest, GetUsersResponse, LinkAccountRequest, LoginRequest, SetAutomationRequest, SetSystemMessagesRequest, SetTrustLevelRequest, UnlinkAccountRequest, UpdateUserRequest, UserResponse } from "./user_registry";
21
21
  import { CaptureCommand, CollectorMessage, SatelliteAudioChunk, SatelliteCaptureRequest, SatelliteCaptureResponse, TriggerPlinkRequest } from "./wakeword_capture";
22
22
  export declare const protobufPackage = "hannah.v2";
23
+ export declare const protobufFileName = "hannah/v2/hannah.proto";
23
24
  export interface HeartbeatRequest {
24
25
  }
25
26
  export interface HeartbeatResponse {
@@ -277,6 +278,19 @@ export declare const HannahServiceService: {
277
278
  readonly responseSerialize: (value: StatusResponse) => Buffer;
278
279
  readonly responseDeserialize: (value: Buffer) => StatusResponse;
279
280
  };
281
+ /**
282
+ * Set the brightness of the satellite's LED ring (0-100 percent, 0 = ring off). Core stores
283
+ * the value per satellite and passes it on to the satellite. #27
284
+ */
285
+ readonly setSatelliteLedBrightness: {
286
+ readonly path: "/hannah.v2.HannahService/SetSatelliteLedBrightness";
287
+ readonly requestStream: false;
288
+ readonly responseStream: false;
289
+ readonly requestSerialize: (value: SetSatelliteLedBrightnessRequest) => Buffer;
290
+ readonly requestDeserialize: (value: Buffer) => SetSatelliteLedBrightnessRequest;
291
+ readonly responseSerialize: (value: StatusResponse) => Buffer;
292
+ readonly responseDeserialize: (value: Buffer) => StatusResponse;
293
+ };
280
294
  /** Delete existing satellite */
281
295
  readonly deleteSatellite: {
282
296
  readonly path: "/hannah.v2.HannahService/DeleteSatellite";
@@ -1035,6 +1049,11 @@ export interface HannahServiceServer extends UntypedServiceImplementation {
1035
1049
  * waiting for wake-word/PTT again (silence-timeout lives in the satellite firmware). #158
1036
1050
  */
1037
1051
  setSatelliteSmalltalkFollowup: handleUnaryCall<SetSatelliteSmalltalkFollowupRequest, StatusResponse>;
1052
+ /**
1053
+ * Set the brightness of the satellite's LED ring (0-100 percent, 0 = ring off). Core stores
1054
+ * the value per satellite and passes it on to the satellite. #27
1055
+ */
1056
+ setSatelliteLedBrightness: handleUnaryCall<SetSatelliteLedBrightnessRequest, StatusResponse>;
1038
1057
  /** Delete existing satellite */
1039
1058
  deleteSatellite: handleUnaryCall<DeleteSatelliteRequest, StatusResponse>;
1040
1059
  /** --- Rooms/Groups (Admin-UI, #27 Phase 1) --- */
@@ -1345,6 +1364,13 @@ export interface HannahServiceClient extends Client {
1345
1364
  setSatelliteSmalltalkFollowup(request: SetSatelliteSmalltalkFollowupRequest, callback: (error: ServiceError | null, response: StatusResponse) => void): ClientUnaryCall;
1346
1365
  setSatelliteSmalltalkFollowup(request: SetSatelliteSmalltalkFollowupRequest, metadata: Metadata, callback: (error: ServiceError | null, response: StatusResponse) => void): ClientUnaryCall;
1347
1366
  setSatelliteSmalltalkFollowup(request: SetSatelliteSmalltalkFollowupRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: StatusResponse) => void): ClientUnaryCall;
1367
+ /**
1368
+ * Set the brightness of the satellite's LED ring (0-100 percent, 0 = ring off). Core stores
1369
+ * the value per satellite and passes it on to the satellite. #27
1370
+ */
1371
+ setSatelliteLedBrightness(request: SetSatelliteLedBrightnessRequest, callback: (error: ServiceError | null, response: StatusResponse) => void): ClientUnaryCall;
1372
+ setSatelliteLedBrightness(request: SetSatelliteLedBrightnessRequest, metadata: Metadata, callback: (error: ServiceError | null, response: StatusResponse) => void): ClientUnaryCall;
1373
+ setSatelliteLedBrightness(request: SetSatelliteLedBrightnessRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: StatusResponse) => void): ClientUnaryCall;
1348
1374
  /** Delete existing satellite */
1349
1375
  deleteSatellite(request: DeleteSatelliteRequest, callback: (error: ServiceError | null, response: StatusResponse) => void): ClientUnaryCall;
1350
1376
  deleteSatellite(request: DeleteSatelliteRequest, metadata: Metadata, callback: (error: ServiceError | null, response: StatusResponse) => void): ClientUnaryCall;
package/dist/v2/hannah.js CHANGED
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
3
3
  // versions:
4
- // protoc-gen-ts_proto v2.12.1
4
+ // protoc-gen-ts_proto v2.18.0
5
5
  // protoc unknown
6
6
  // source: hannah/v2/hannah.proto
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.HannahServiceClient = exports.HannahServiceService = exports.HeartbeatResponse = exports.HeartbeatRequest = exports.protobufPackage = void 0;
8
+ exports.HannahServiceClient = exports.HannahServiceService = exports.HeartbeatResponse = exports.HeartbeatRequest = exports.protobufFileName = exports.protobufPackage = void 0;
9
9
  /* eslint-disable */
10
10
  const wire_1 = require("@bufbuild/protobuf/wire");
11
11
  const grpc_js_1 = require("@grpc/grpc-js");
@@ -29,6 +29,7 @@ const timer_service_1 = require("./timer_service");
29
29
  const user_registry_1 = require("./user_registry");
30
30
  const wakeword_capture_1 = require("./wakeword_capture");
31
31
  exports.protobufPackage = "hannah.v2";
32
+ exports.protobufFileName = "hannah/v2/hannah.proto";
32
33
  function createBaseHeartbeatRequest() {
33
34
  return {};
34
35
  }
@@ -359,6 +360,19 @@ exports.HannahServiceService = {
359
360
  responseSerialize: (value) => Buffer.from(shared_1.StatusResponse.encode(value).finish()),
360
361
  responseDeserialize: (value) => shared_1.StatusResponse.decode(value),
361
362
  },
363
+ /**
364
+ * Set the brightness of the satellite's LED ring (0-100 percent, 0 = ring off). Core stores
365
+ * the value per satellite and passes it on to the satellite. #27
366
+ */
367
+ setSatelliteLedBrightness: {
368
+ path: "/hannah.v2.HannahService/SetSatelliteLedBrightness",
369
+ requestStream: false,
370
+ responseStream: false,
371
+ requestSerialize: (value) => Buffer.from(satellite_1.SetSatelliteLedBrightnessRequest.encode(value).finish()),
372
+ requestDeserialize: (value) => satellite_1.SetSatelliteLedBrightnessRequest.decode(value),
373
+ responseSerialize: (value) => Buffer.from(shared_1.StatusResponse.encode(value).finish()),
374
+ responseDeserialize: (value) => shared_1.StatusResponse.decode(value),
375
+ },
362
376
  /** Delete existing satellite */
363
377
  deleteSatellite: {
364
378
  path: "/hannah.v2.HannahService/DeleteSatellite",
@@ -1,5 +1,6 @@
1
1
  import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
2
2
  export declare const protobufPackage = "hannah.v2";
3
+ export declare const protobufFileName = "hannah/v2/infrastructure.proto";
3
4
  /**
4
5
  * Infrastructure services that Hannah Core announces to all connected components
5
6
  * (service discovery). Typed on purpose — a new kind of service gets a new enum value,
@@ -18,6 +19,8 @@ export interface ServiceEndpoint {
18
19
  port: number;
19
20
  /** informational */
20
21
  version: string;
22
+ /** UDP port of the collector's syslog receiver on `host`; 0 = none */
23
+ syslogPort: number;
21
24
  }
22
25
  /** Which kinds of service the subscriber cares about. Empty = all kinds. */
23
26
  export interface InfrastructureFilter {
@@ -61,6 +64,8 @@ export interface LogCollectorRegister {
61
64
  port: number;
62
65
  /** informational */
63
66
  version: string;
67
+ /** UDP port of the syslog receiver, on the same host; 0 = no receiver */
68
+ syslogPort: number;
64
69
  }
65
70
  /** Sent by Hannah Core over the LogCollectorConnect stream. */
66
71
  export interface LogCollectorCommand {
@@ -1,14 +1,15 @@
1
1
  "use strict";
2
2
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
3
3
  // versions:
4
- // protoc-gen-ts_proto v2.12.1
4
+ // protoc-gen-ts_proto v2.18.0
5
5
  // protoc unknown
6
6
  // source: hannah/v2/infrastructure.proto
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.LogCollectorRegistered = exports.LogCollectorCommand = exports.LogCollectorRegister = exports.LogCollectorMessage = exports.ServiceUnavailable = exports.ServiceAvailable = exports.InfrastructureSnapshot = exports.InfrastructureMessage = exports.InfrastructureFilter = exports.ServiceEndpoint = exports.ServiceKind = exports.protobufPackage = void 0;
8
+ exports.LogCollectorRegistered = exports.LogCollectorCommand = exports.LogCollectorRegister = exports.LogCollectorMessage = exports.ServiceUnavailable = exports.ServiceAvailable = exports.InfrastructureSnapshot = exports.InfrastructureMessage = exports.InfrastructureFilter = exports.ServiceEndpoint = exports.ServiceKind = exports.protobufFileName = exports.protobufPackage = void 0;
9
9
  /* eslint-disable */
10
10
  const wire_1 = require("@bufbuild/protobuf/wire");
11
11
  exports.protobufPackage = "hannah.v2";
12
+ exports.protobufFileName = "hannah/v2/infrastructure.proto";
12
13
  /**
13
14
  * Infrastructure services that Hannah Core announces to all connected components
14
15
  * (service discovery). Typed on purpose — a new kind of service gets a new enum value,
@@ -21,7 +22,7 @@ var ServiceKind;
21
22
  ServiceKind[ServiceKind["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
22
23
  })(ServiceKind || (exports.ServiceKind = ServiceKind = {}));
23
24
  function createBaseServiceEndpoint() {
24
- return { kind: 0, instance: "", host: "", port: 0, version: "" };
25
+ return { kind: 0, instance: "", host: "", port: 0, version: "", syslogPort: 0 };
25
26
  }
26
27
  exports.ServiceEndpoint = {
27
28
  encode(message, writer = new wire_1.BinaryWriter()) {
@@ -40,6 +41,9 @@ exports.ServiceEndpoint = {
40
41
  if (message.version !== "") {
41
42
  writer.uint32(42).string(message.version);
42
43
  }
44
+ if (message.syslogPort !== 0) {
45
+ writer.uint32(48).int32(message.syslogPort);
46
+ }
43
47
  return writer;
44
48
  },
45
49
  decode(input, length) {
@@ -90,6 +94,13 @@ exports.ServiceEndpoint = {
90
94
  message.version = reader.string();
91
95
  continue;
92
96
  }
97
+ case 6: {
98
+ if (tag !== 48) {
99
+ break;
100
+ }
101
+ message.syslogPort = reader.int32();
102
+ continue;
103
+ }
93
104
  }
94
105
  if ((tag & 7) === 4 || tag === 0) {
95
106
  break;
@@ -112,6 +123,7 @@ exports.ServiceEndpoint = {
112
123
  message.host = object.host ?? "";
113
124
  message.port = object.port ?? 0;
114
125
  message.version = object.version ?? "";
126
+ message.syslogPort = object.syslogPort ?? 0;
115
127
  return message;
116
128
  },
117
129
  };
@@ -120,11 +132,13 @@ function createBaseInfrastructureFilter() {
120
132
  }
121
133
  exports.InfrastructureFilter = {
122
134
  encode(message, writer = new wire_1.BinaryWriter()) {
123
- writer.uint32(10).fork();
124
- for (const v of message.kinds) {
125
- writer.int32(v);
135
+ if (message.kinds.length !== 0) {
136
+ writer.uint32(10).fork();
137
+ for (const v of message.kinds) {
138
+ writer.int32(v);
139
+ }
140
+ writer.join();
126
141
  }
127
- writer.join();
128
142
  return writer;
129
143
  },
130
144
  decode(input, length) {
@@ -474,7 +488,7 @@ exports.LogCollectorMessage = {
474
488
  },
475
489
  };
476
490
  function createBaseLogCollectorRegister() {
477
- return { instance: "", host: "", port: 0, version: "" };
491
+ return { instance: "", host: "", port: 0, version: "", syslogPort: 0 };
478
492
  }
479
493
  exports.LogCollectorRegister = {
480
494
  encode(message, writer = new wire_1.BinaryWriter()) {
@@ -490,6 +504,9 @@ exports.LogCollectorRegister = {
490
504
  if (message.version !== "") {
491
505
  writer.uint32(34).string(message.version);
492
506
  }
507
+ if (message.syslogPort !== 0) {
508
+ writer.uint32(40).int32(message.syslogPort);
509
+ }
493
510
  return writer;
494
511
  },
495
512
  decode(input, length) {
@@ -533,6 +550,13 @@ exports.LogCollectorRegister = {
533
550
  message.version = reader.string();
534
551
  continue;
535
552
  }
553
+ case 5: {
554
+ if (tag !== 40) {
555
+ break;
556
+ }
557
+ message.syslogPort = reader.int32();
558
+ continue;
559
+ }
536
560
  }
537
561
  if ((tag & 7) === 4 || tag === 0) {
538
562
  break;
@@ -554,6 +578,7 @@ exports.LogCollectorRegister = {
554
578
  message.host = object.host ?? "";
555
579
  message.port = object.port ?? 0;
556
580
  message.version = object.version ?? "";
581
+ message.syslogPort = object.syslogPort ?? 0;
557
582
  return message;
558
583
  },
559
584
  };
@@ -2,6 +2,7 @@ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
2
2
  import { type CallOptions, type ChannelCredentials, Client, type ClientOptions, type ClientReadableStream, type ClientUnaryCall, type ClientWritableStream, type handleClientStreamingCall, type handleServerStreamingCall, type handleUnaryCall, type Metadata, type ServiceError, type UntypedServiceImplementation } from "@grpc/grpc-js";
3
3
  import { Empty } from "./shared";
4
4
  export declare const protobufPackage = "hannah.v2";
5
+ export declare const protobufFileName = "hannah/v2/logging.proto";
5
6
  export declare enum LogLevel {
6
7
  LOG_LEVEL_UNSPECIFIED = 0,
7
8
  LOG_LEVEL_DEBUG = 1,
@@ -1,16 +1,17 @@
1
1
  "use strict";
2
2
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
3
3
  // versions:
4
- // protoc-gen-ts_proto v2.12.1
4
+ // protoc-gen-ts_proto v2.18.0
5
5
  // protoc unknown
6
6
  // source: hannah/v2/logging.proto
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.LogServiceClient = exports.LogServiceService = exports.ExportChunk = exports.ExportRequest = exports.GetSourcesResponse = exports.LogSource = exports.ShipAck = exports.LogGap = exports.LogEntry = exports.ShipHello = exports.ShipMessage = exports.LogCategory = exports.LogLevel = exports.protobufPackage = void 0;
8
+ exports.LogServiceClient = exports.LogServiceService = exports.ExportChunk = exports.ExportRequest = exports.GetSourcesResponse = exports.LogSource = exports.ShipAck = exports.LogGap = exports.LogEntry = exports.ShipHello = exports.ShipMessage = exports.LogCategory = exports.LogLevel = exports.protobufFileName = exports.protobufPackage = void 0;
9
9
  /* eslint-disable */
10
10
  const wire_1 = require("@bufbuild/protobuf/wire");
11
11
  const grpc_js_1 = require("@grpc/grpc-js");
12
12
  const shared_1 = require("./shared");
13
13
  exports.protobufPackage = "hannah.v2";
14
+ exports.protobufFileName = "hannah/v2/logging.proto";
14
15
  var LogLevel;
15
16
  (function (LogLevel) {
16
17
  LogLevel[LogLevel["LOG_LEVEL_UNSPECIFIED"] = 0] = "LOG_LEVEL_UNSPECIFIED";
@@ -604,11 +605,13 @@ exports.ExportRequest = {
604
605
  for (const v of message.components) {
605
606
  writer.uint32(26).string(v);
606
607
  }
607
- writer.uint32(34).fork();
608
- for (const v of message.excludeCategories) {
609
- writer.int32(v);
608
+ if (message.excludeCategories.length !== 0) {
609
+ writer.uint32(34).fork();
610
+ for (const v of message.excludeCategories) {
611
+ writer.int32(v);
612
+ }
613
+ writer.join();
610
614
  }
611
- writer.join();
612
615
  return writer;
613
616
  },
614
617
  decode(input, length) {
@@ -1,5 +1,6 @@
1
1
  import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
2
2
  export declare const protobufPackage = "hannah.v2";
3
+ export declare const protobufFileName = "hannah/v2/messages.proto";
3
4
  export interface Message {
4
5
  id: number;
5
6
  userId: number;
@@ -1,14 +1,15 @@
1
1
  "use strict";
2
2
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
3
3
  // versions:
4
- // protoc-gen-ts_proto v2.12.1
4
+ // protoc-gen-ts_proto v2.18.0
5
5
  // protoc unknown
6
6
  // source: hannah/v2/messages.proto
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.DeleteMessageRequest = exports.ListMessagesResponse = exports.ListMessagesRequest = exports.CreateMessageRequest = exports.Message = exports.protobufPackage = void 0;
8
+ exports.DeleteMessageRequest = exports.ListMessagesResponse = exports.ListMessagesRequest = exports.CreateMessageRequest = exports.Message = exports.protobufFileName = exports.protobufPackage = void 0;
9
9
  /* eslint-disable */
10
10
  const wire_1 = require("@bufbuild/protobuf/wire");
11
11
  exports.protobufPackage = "hannah.v2";
12
+ exports.protobufFileName = "hannah/v2/messages.proto";
12
13
  function createBaseMessage() {
13
14
  return { id: 0, userId: 0, content: "", source: "", createdAt: "", senderUserId: 0, replyToId: 0 };
14
15
  }
@@ -1,5 +1,6 @@
1
1
  import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
2
2
  export declare const protobufPackage = "hannah.v2";
3
+ export declare const protobufFileName = "hannah/v2/satellite.proto";
3
4
  export interface Satellite {
4
5
  deviceId: string;
5
6
  /** live-reported room (UDP/proxy registration); empty if not connected */
@@ -29,6 +30,8 @@ export interface Satellite {
29
30
  newVersion?: string | undefined;
30
31
  /** #158: mic reopens after a Smalltalk answer instead of waiting for wake-word/PTT again */
31
32
  smalltalkFollowupListen: boolean;
33
+ /** brightness of the LED ring in percent (0-100, 0 = ring off); absent = Core does not know the field. #27 */
34
+ ledBrightness?: number | undefined;
32
35
  }
33
36
  export interface GetSatellitesResponse {
34
37
  satellites: Satellite[];
@@ -59,6 +62,13 @@ export interface SetSatelliteSmalltalkFollowupRequest {
59
62
  /** requestor */
60
63
  requestorId: number;
61
64
  }
65
+ export interface SetSatelliteLedBrightnessRequest {
66
+ deviceId: string;
67
+ /** 0-100, 0 = ring off */
68
+ percent: number;
69
+ /** requestor */
70
+ requestorId: number;
71
+ }
62
72
  export interface DeleteSatelliteRequest {
63
73
  deviceId: string;
64
74
  /** requestor */
@@ -70,6 +80,7 @@ export declare const SetSatelliteRoomRequest: MessageFns<SetSatelliteRoomRequest
70
80
  export declare const SetSatelliteDisplayNameRequest: MessageFns<SetSatelliteDisplayNameRequest>;
71
81
  export declare const SetSatelliteOwnerRequest: MessageFns<SetSatelliteOwnerRequest>;
72
82
  export declare const SetSatelliteSmalltalkFollowupRequest: MessageFns<SetSatelliteSmalltalkFollowupRequest>;
83
+ export declare const SetSatelliteLedBrightnessRequest: MessageFns<SetSatelliteLedBrightnessRequest>;
73
84
  export declare const DeleteSatelliteRequest: MessageFns<DeleteSatelliteRequest>;
74
85
  type Builtin = Date | Function | Uint8Array | string | number | boolean | bigint | undefined;
75
86
  export type DeepPartial<T> = T extends bigint ? string | number | bigint : T extends Builtin ? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {