@kusinta/iot-schema 0.2.0-beta.21 → 0.2.0-beta.22

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kusinta/iot-schema",
3
- "version": "0.2.0-beta.21",
3
+ "version": "0.2.0-beta.22",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "files": ["src"],
@@ -332,9 +332,7 @@ export declare type DeviceAcl = Message<"kusinta.iot.access.v1.DeviceAcl"> & {
332
332
  export declare const DeviceAclSchema: GenMessage<DeviceAcl>;
333
333
 
334
334
  /**
335
- * Every DeviceAcl in force for one user on one gateway, at valid_at — except that what the
336
- * user newly sees of a home as service appears only from the next quarter hour (see
337
- * webrtc.v1.LivePermissionUpdate).
335
+ * Every DeviceAcl in force for one user on one gateway, at valid_at.
338
336
  *
339
337
  * ADVISORY WHEN SENT TO AN APP. The gateway is the sole authority and enforces every
340
338
  * read, write, invoke and subscription against its own copy, whether or not the app has
@@ -439,8 +437,8 @@ export enum ServiceSignal {
439
437
  * bridged_by naming a device the recipient may not see, such as a bridge a resident owns,
440
438
  * is unset. Always disclosed together with FIRMWARE, whose
441
439
  * version it carries. Not when it was claimed: the only times service is given of a
442
- * device are the quarter hours of its webrtc.v1.ServiceStatus, and the moment it is taken
443
- * away from them.
440
+ * device are the quarter hours of its webrtc.v1.ServiceStatus, and the moments it appears
441
+ * to them, changes and is taken away from them, which they see as they happen.
444
442
  *
445
443
  * @generated from enum value: SERVICE_SIGNAL_FILING = 6;
446
444
  */
@@ -456,8 +454,8 @@ export enum ServiceSignal {
456
454
 
457
455
  /**
458
456
  * Which of the building's devices are linked to which, for what, and whether device to
459
- * device or through the gateway — not how a link is set or what it is doing, and no
460
- * sooner than the quarter hour after it was made; its removal, at once.
457
+ * device or through the gateway — not how a link is set or what it is doing. A link shows
458
+ * as it is made and as it is removed, and changes for service at no other time.
461
459
  *
462
460
  * @generated from enum value: SERVICE_SIGNAL_LINKS = 8;
463
461
  */
@@ -199,8 +199,8 @@ export declare const PermissionActionSchema: GenEnum<PermissionAction>;
199
199
  * RoomClimate.state_withheld marking what is not shown, and its links with
200
200
  * DeviceLink.details_withheld; modes on a home are not sent to them at all. Service
201
201
  * that reaches the apartment itself also gets its climate summary over the disclosed
202
- * period. What they newly see of the home reaches them at quarter hours; what they
203
- * lose, at once.
202
+ * period. What they newly see of the home reaches them as it happens; what they lose,
203
+ * at once.
204
204
  * * Not at all — RESIDENT on a building or floor above it. Living in a building is not
205
205
  * living in every apartment in it.
206
206
  *
@@ -226,7 +226,7 @@ export declare const PermissionActionSchema: GenEnum<PermissionAction>;
226
226
  * to nobody else. An owner who stops living in the home it is filed in gives it up: it is
227
227
  * released, with no owner, and stays filed in the home alone, as one of the building's own
228
228
  * devices there. A device given up so, or released, then appears to service as any device
229
- * newly in the home does, at a quarter hour; that much a release shows.
229
+ * newly in the home does, as it happens; that much a release shows.
230
230
  *
231
231
  * Who may change a home's members, move its spaces or file devices into and out of it is
232
232
  * restricted by the gateway, and a refused caller gets NOT_ENTITLED. This keeps a home's
@@ -103,8 +103,8 @@ export const MembershipRelationSchema = /*@__PURE__*/
103
103
  * RoomClimate.state_withheld marking what is not shown, and its links with
104
104
  * DeviceLink.details_withheld; modes on a home are not sent to them at all. Service
105
105
  * that reaches the apartment itself also gets its climate summary over the disclosed
106
- * period. What they newly see of the home reaches them at quarter hours; what they
107
- * lose, at once.
106
+ * period. What they newly see of the home reaches them as it happens; what they lose,
107
+ * at once.
108
108
  * * Not at all — RESIDENT on a building or floor above it. Living in a building is not
109
109
  * living in every apartment in it.
110
110
  *
@@ -130,7 +130,7 @@ export const MembershipRelationSchema = /*@__PURE__*/
130
130
  * to nobody else. An owner who stops living in the home it is filed in gives it up: it is
131
131
  * released, with no owner, and stays filed in the home alone, as one of the building's own
132
132
  * devices there. A device given up so, or released, then appears to service as any device
133
- * newly in the home does, at a quarter hour; that much a release shows.
133
+ * newly in the home does, as it happens; that much a release shows.
134
134
  *
135
135
  * Who may change a home's members, move its spaces or file devices into and out of it is
136
136
  * restricted by the gateway, and a refused caller gets NOT_ENTITLED. This keeps a home's
@@ -103,8 +103,7 @@ export declare type Space = Message<"kusinta.iot.space.v1.Space"> & {
103
103
  * Filled according to who asks, since a membership list says who lives where:
104
104
  *
105
105
  * * a caller holding ROLE_PROPERTY_OWNER or ROLE_GATEWAY_ADMIN who reaches the space
106
- * sees every member — for a home they see as service, as it stood at the last
107
- * quarter hour, so that a move in or out is not timed by polling;
106
+ * sees every member, in a home they see as service too, as the members change;
108
107
  * * a resident of an apartment sees every member filed on it or on its rooms — who they
109
108
  * live with, and anyone filed on their home as service, since being filed on a home
110
109
  * is an act on it its residents should see. Service reach from a building or floor
@@ -17,8 +17,8 @@ export declare const file_kusinta_iot_webrtc_v1_device_state: GenFile;
17
17
 
18
18
  /**
19
19
  * Full device state sent to the app on initial WebRTC connection. Devices the recipient sees
20
- * as service are as they stood at the last quarter hour, less any since taken away, each
21
- * with its ServiceStatus.
20
+ * as service are as they are now, by description only, each with its ServiceStatus once
21
+ * one has been evaluated for them (see service_statuses).
22
22
  *
23
23
  * @generated from message kusinta.iot.webrtc.v1.DeviceStateSnapshot
24
24
  */
@@ -82,9 +82,9 @@ export declare type ServiceStatus = Message<"kusinta.iot.webrtc.v1.ServiceStatus
82
82
  * device, nor, for a resident, than their current residency — each start taken at the
83
83
  * first quarter hour at or after it. When that start moves because the recipient becomes
84
84
  * a resident, the app drops the status it held and is sent one again from the new start at
85
- * the next quarter hour. These quarter hours, and the moment a device is
86
- * taken away, are the only times service is given of a device in a home (see
87
- * access.v1.MembershipRelation). Pushed and in a
85
+ * the next quarter hour. These quarter hours, and the moments a device appears to service,
86
+ * changes and is taken away, which they see as they happen, are the only times service is
87
+ * given of a device in a home (see access.v1.MembershipRelation). Pushed and in a
88
88
  * snapshot alike, so an unchanged status carries the same as_of however it arrived.
89
89
  *
90
90
  * @generated from field: google.protobuf.Timestamp as_of = 2;
@@ -207,8 +207,8 @@ export declare const PropertyReportSchema: GenMessage<PropertyReport>;
207
207
  * Carries the full Device, descriptor plus current typed properties, so the app can
208
208
  * render it without a follow-up read — the same payload DeviceStateSnapshot gives
209
209
  * per device. To a recipient who sees it as service, the Device carries its description
210
- * only, as in a snapshot, and is sent at the next quarter hour (see
211
- * access.v1.DeviceAcl.relation).
210
+ * only, as in a snapshot, and is sent as it appears; its ServiceStatus follows from the
211
+ * next quarter hour (see access.v1.DeviceAcl.relation).
212
212
  *
213
213
  * Apply as an upsert keyed on descriptor.device_id, never as an insert: a device can
214
214
  * be in the snapshot and then announced, or announced twice across a connector
@@ -485,8 +485,7 @@ export declare const PairingStartedSchema: GenMessage<PairingStarted>;
485
485
  * One message per request, not per device: a batch window attributes several, and a client
486
486
  * given one message each has nothing telling it the window is over and no defined moment to
487
487
  * stop waiting. The devices are listed here; each also arrives as an ordinary DeviceAdded
488
- * as it appears — for a device the caller sees as service, at the next quarter hour — so a
489
- * client may show them as they come and use this to finish.
488
+ * as it appears, so a client may show them as they come and use this to finish.
490
489
  *
491
490
  * An error and a non-empty device list are not exclusive. A batch of five that attributed
492
491
  * three and then expired reports both — three devices and NO_DEVICE_APPEARED — because
@@ -540,11 +539,10 @@ export declare const PairingFinishedSchema: GenMessage<PairingFinished>;
540
539
  *
541
540
  * Sent only for links the recipient is entitled to see. An unfiltered one would say
542
541
  * which devices exist and how they are arranged, to somebody entitled to neither. A link
543
- * with an end in a home is not pushed to a recipient who sees it as service when it is made
544
- * or changes — when its residents make one is theirs to know; service reads a home's links
545
- * by ListDeviceLinks, where a new one appears from the next quarter hour. Its removal is
546
- * pushed to them at once, with details_withheld, as every loss is — to those whose view
547
- * held it at a quarter hour since it was made, and to nobody else.
542
+ * with an end in a home reaches a recipient who sees it as service with details_withheld,
543
+ * and is pushed to them only when it appears and when it is removed — never for anything
544
+ * else, its state and settings included, which are not theirs to see. Its removal is pushed
545
+ * to them at once, as every loss is — to those who were shown it, and to nobody else.
548
546
  *
549
547
  * @generated from message kusinta.iot.webrtc.v1.LinkChanged
550
548
  */
@@ -679,9 +677,9 @@ export declare const ConnectorsAnnouncedSchema: GenMessage<ConnectorsAnnounced>;
679
677
  * held at, its condition. Apply as an upsert keyed on room.space_id. Sent only for rooms
680
678
  * the recipient may see, and whenever any field the recipient is sent moves — a knob
681
679
  * turned by hand shows up here without the app asking. To a recipient who sees the room
682
- * as service, what is new is sent at the next quarter hour and what is lost at once. A
683
- * recipient who is sent the room with state_withheld is therefore not sent it when only
684
- * withheld fields move.
680
+ * as service, what is new is sent as it happens and what is lost at once. A recipient who
681
+ * is sent the room with state_withheld is therefore not sent it when only withheld fields
682
+ * move.
685
683
  *
686
684
  * @generated from message kusinta.iot.webrtc.v1.RoomClimateChanged
687
685
  */
@@ -86,8 +86,7 @@ export declare const CreateSpaceSchema: GenMessage<CreateSpace>;
86
86
  * filed on the apartment, where it was in it — and any link it would carry across a
87
87
  * boundary is removed. Changing the type of a space that has members needs
88
88
  * ROLE_PROPERTY_OWNER or ROLE_GATEWAY_ADMIN, who see them, and is refused if it would
89
- * leave a RESIDENT membership on a room — which can tell them of a membership change since
90
- * the last quarter hour; that much this refusal discloses.
89
+ * leave a RESIDENT membership on a room.
91
90
  *
92
91
  * Every descriptive field carries explicit presence: absent means leave it alone, present
93
92
  * means set it to this — including to the empty string, which is how a description is
@@ -478,8 +477,8 @@ export declare const ListSpacesSchema: GenMessage<ListSpaces>;
478
477
  * device_ids on each Space are filtered to what the caller may see. An
479
478
  * unfiltered tree would list every device on the gateway by id, which is the
480
479
  * enumeration channel the snapshot filter exists to close. To a caller who sees a home as
481
- * service, what is new in it is listed from the next quarter hour and what is gone at once
482
- * — except its members, which change only at quarter hours (see Space.members).
480
+ * service, what is new in it is listed as it happens and what is gone at once, its members
481
+ * included where they are shown (see Space.members).
483
482
  *
484
483
  * @generated from message kusinta.iot.webrtc.v1.SpaceTree
485
484
  */
@@ -652,7 +651,7 @@ export declare const UpdateDeviceLinkSchema: GenMessage<UpdateDeviceLink>;
652
651
  *
653
652
  * A link with an end in a home reaches a caller who sees it as service with
654
653
  * DeviceLink.details_withheld set, and what that withholds unset — a new link
655
- * from the next quarter hour, a removed one at once — and not at all when either end is a
654
+ * as it is made, a removed one at once — and not at all when either end is a
656
655
  * device a resident owns.
657
656
  *
658
657
  * @generated from message kusinta.iot.webrtc.v1.ListDeviceLinks
@@ -814,11 +813,11 @@ export declare const ConfigureRoomClimateSchema: GenMessage<ConfigureRoomClimate
814
813
  *
815
814
  * In a home, only its residents may switch one on or off: whether a home stands empty is
816
815
  * theirs to say. A caller who reaches it as service is refused as NOT_ENTITLED — except
817
- * that, while the home had no resident at the last quarter hour, ROLE_PROPERTY_OWNER or
818
- * ROLE_GATEWAY_ADMIN may switch off a mode that was on then and whose setter is not a
819
- * resident now, so that no mode outlives everyone who could end it. Any other switch-off
820
- * from them — no mode on, or one that is a resident's — is accepted and does nothing, so
821
- * the answer tells them nothing of whether a mode was on or whether anyone has moved in.
816
+ * that, while the home has no resident, ROLE_PROPERTY_OWNER or ROLE_GATEWAY_ADMIN may
817
+ * switch off a mode that is on and whose setter is not a resident, so that no mode
818
+ * outlives everyone who could end it. Any other switch-off from them — no mode on, or one
819
+ * that is a resident's — is accepted and does nothing, so the answer tells them nothing of
820
+ * whether a mode was on or whether anyone has moved in.
822
821
  *
823
822
  * @generated from message kusinta.iot.webrtc.v1.SetClimateMode
824
823
  */
@@ -862,8 +861,8 @@ export declare const SetClimateModeSchema: GenMessage<SetClimateMode>;
862
861
  * one the caller can reach; naming a space narrows it to that space and those below.
863
862
  *
864
863
  * A caller who reaches a room inside an apartment as service gets it with
865
- * RoomClimate.state_withheld set — what is new from the next quarter hour, what is gone at
866
- * once — and gets no ClimateMode set on that apartment or its rooms.
864
+ * RoomClimate.state_withheld set — what is new as it happens, what is gone at once — and
865
+ * gets no ClimateMode set on that apartment or its rooms.
867
866
  *
868
867
  * @generated from message kusinta.iot.webrtc.v1.ListRoomClimates
869
868
  */
@@ -945,8 +944,7 @@ export declare type PrivacyDisclosure = Message<"kusinta.iot.webrtc.v1.PrivacyDi
945
944
  * role the gateway has not yet learnt, counts as ROLE_UNSPECIFIED. The gateway's
946
945
  * administrator is always listed. So the list reads the same whether or not anyone lives
947
946
  * in the home, and never understates who has reach or what they see. Devices a resident
948
- * owns are not shown to service at all. To a caller who sees the space as service, it is
949
- * answered as it stood at the last quarter hour.
947
+ * owns are not shown to service at all.
950
948
  *
951
949
  * @generated from field: repeated kusinta.iot.webrtc.v1.ServiceParty service_parties = 5;
952
950
  */
@@ -13,24 +13,21 @@ import type { DeviceId, SpaceId } from "../../identity/v1/identity_pb.js";
13
13
  export declare const file_kusinta_iot_webrtc_v1_permission_push: GenFile;
14
14
 
15
15
  /**
16
- * Pushed to the app whenever the user's effective permissions change. A change that takes
17
- * away what the user may see or do takes effect and is sent at once. What a user newly sees
18
- * of a home as service — a device filed into it, a home newly reached — is judged at
19
- * quarter hours instead: here and in a snapshot it is as it stood at the last one, even
20
- * when the push is for another change, and it is sent at the next quarter hour with
21
- * change_reason empty and new_permissions.valid_at that quarter hour, so that no push
22
- * tells when, or why, a home changed. A resident who becomes service loses the resident
23
- * view at once — the home's devices are listed in removed_devices, so the app drops what it
24
- * holds of them — and gains the service view at the next quarter hour, when they come back
25
- * in added_devices as service and their stretch of seeing the home as service begins. A
26
- * member who becomes a resident gains the resident view at once: the home's devices come
27
- * again in added_devices, each with a DeviceAdded carrying its full Device, and the app
28
- * drops the ServiceStatus it held of them until their next one. A quarter-hour
29
- * push that brings a home newly seen as service lists it in reset_spaces, so the app reads
30
- * its rooms and links then.
16
+ * Pushed to the app whenever the user's effective permissions change, as they change. A
17
+ * change that takes away what the user may see or do takes effect and is sent at once; what
18
+ * a user newly sees of a home as service — a device filed into it, a home newly reached —
19
+ * is sent as it happens too, with new_permissions.valid_at the moment it took effect. A
20
+ * resident who becomes service loses the resident view at once — the home's devices are
21
+ * listed in removed_devices, so the app drops what it holds of them — and gains the service
22
+ * view at once, in a push that follows, where they come back in added_devices as service
23
+ * and their stretch of seeing the home as service begins. A member who becomes a resident
24
+ * gains the resident view at once: the home's devices come again in added_devices, each
25
+ * with a DeviceAdded carrying its full Device, and the app drops the ServiceStatus it held
26
+ * of them until their next one. A push that brings a home newly seen as service lists it in
27
+ * reset_spaces, so the app reads its rooms and links then.
31
28
  * change_reason values: "DEVICE_ASSIGNED", "DEVICE_UNASSIGNED", "RESIDENT_CHANGED",
32
29
  * "CONSTRAINT_UPDATED"; empty whenever the change concerns a home the user sees, or saw, as
33
- * service — held or not — so that no push says why a home changed.
30
+ * service, so that no push says why a home changed.
34
31
  *
35
32
  * @generated from message kusinta.iot.webrtc.v1.LivePermissionUpdate
36
33
  */
@@ -68,8 +65,8 @@ export declare type LivePermissionUpdate = Message<"kusinta.iot.webrtc.v1.LivePe
68
65
  * space, or newly see it as service. The app drops everything it holds of each and of the
69
66
  * spaces beneath it, and reads them again (ListSpaces, ListRoomClimates, ListDeviceLinks)
70
67
  * if it may.
71
- * A loss, or a wider view as a resident, is sent at once; a home newly seen as service, at
72
- * the quarter hour it is seen from.
68
+ * Each is sent as the change happens: a loss, a wider view as a resident and a home newly
69
+ * seen as service alike.
73
70
  *
74
71
  * @generated from field: repeated kusinta.iot.identity.v1.SpaceId reset_spaces = 5;
75
72
  */