@kusinta/iot-schema 0.2.0-beta.40 → 0.2.0-beta.42
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 +2 -1
- package/src/kusinta/iot/access/v1/acl_pb.d.ts +4 -3
- package/src/kusinta/iot/access/v1/roles_pb.d.ts +27 -1
- package/src/kusinta/iot/access/v1/roles_pb.js +17 -2
- package/src/kusinta/iot/commissioning/v1/commissioning_pb.d.ts +154 -2
- package/src/kusinta/iot/commissioning/v1/commissioning_pb.js +30 -1
- package/src/kusinta/iot/common/v1/types_pb.d.ts +57 -0
- package/src/kusinta/iot/common/v1/types_pb.js +16 -3
- package/src/kusinta/iot/connector/v1/connector_pb.d.ts +183 -1
- package/src/kusinta/iot/connector/v1/connector_pb.js +45 -23
- package/src/kusinta/iot/device/v1/descriptor_pb.d.ts +13 -3
- package/src/kusinta/iot/device/v1/descriptor_pb.js +1 -1
- package/src/kusinta/iot/reporting/v1/reporting_pb.d.ts +6 -3
- package/src/kusinta/iot/signaling/v1/signaling_pb.d.ts +16 -0
- package/src/kusinta/iot/signaling/v1/signaling_pb.js +1 -1
- package/src/kusinta/iot/space/v1/space_pb.d.ts +22 -0
- package/src/kusinta/iot/space/v1/space_pb.js +1 -1
- package/src/kusinta/iot/webrtc/v1/envelope_pb.d.ts +58 -1
- package/src/kusinta/iot/webrtc/v1/envelope_pb.js +2 -1
- package/src/kusinta/iot/webrtc/v1/household_pb.d.ts +490 -0
- package/src/kusinta/iot/webrtc/v1/household_pb.js +120 -0
- package/src/kusinta/iot/webrtc/v1/invite_pb.d.ts +19 -15
- package/src/kusinta/iot/webrtc/v1/management_pb.d.ts +265 -9
- package/src/kusinta/iot/webrtc/v1/management_pb.js +38 -2
- package/src/kusinta/iot/webrtc/v1/members_pb.d.ts +52 -10
- package/src/kusinta/iot/webrtc/v1/members_pb.js +1 -1
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
// @generated by protoc-gen-es v2.12.0 with parameter "target=js+dts,import_extension=js"
|
|
2
|
+
// @generated from file kusinta/iot/webrtc/v1/household.proto (package kusinta.iot.webrtc.v1, syntax proto3)
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
|
|
5
|
+
import { enumDesc, fileDesc, messageDesc, tsEnum } from "@bufbuild/protobuf/codegenv2";
|
|
6
|
+
import { file_google_protobuf_timestamp } from "@bufbuild/protobuf/wkt";
|
|
7
|
+
import { file_kusinta_iot_climate_v1_climate } from "../../climate/v1/climate_pb.js";
|
|
8
|
+
import { file_kusinta_iot_commissioning_v1_commissioning } from "../../commissioning/v1/commissioning_pb.js";
|
|
9
|
+
import { file_kusinta_iot_heating_v1_heating } from "../../heating/v1/heating_pb.js";
|
|
10
|
+
import { file_kusinta_iot_identity_v1_identity } from "../../identity/v1/identity_pb.js";
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Describes the file kusinta/iot/webrtc/v1/household.proto.
|
|
14
|
+
*/
|
|
15
|
+
export const file_kusinta_iot_webrtc_v1_household = /*@__PURE__*/
|
|
16
|
+
fileDesc("CiVrdXNpbnRhL2lvdC93ZWJydGMvdjEvaG91c2Vob2xkLnByb3RvEhVrdXNpbnRhLmlvdC53ZWJydGMudjEiewoURGVtb3RlSG91c2Vob2xkQWRtaW4SMQoHaG9tZV9pZBgBIAEoCzIgLmt1c2ludGEuaW90LmlkZW50aXR5LnYxLlNwYWNlSWQSMAoHdXNlcl9pZBgCIAEoCzIfLmt1c2ludGEuaW90LmlkZW50aXR5LnYxLlVzZXJJZCL7AQoQU3RhZmZBcHBvaW50bWVudBIyCglhcHBvaW50ZWUYASABKAsyHy5rdXNpbnRhLmlvdC5pZGVudGl0eS52MS5Vc2VySWQSNQoMYXBwb2ludGVkX2J5GAIgASgLMh8ua3VzaW50YS5pb3QuaWRlbnRpdHkudjEuVXNlcklkEhkKEWFwcG9pbnRlZF9ieV9uYW1lGAMgASgJEiYKAmF0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI5CgRraW5kGAUgASgOMisua3VzaW50YS5pb3Qud2VicnRjLnYxLlN0YWZmQXBwb2ludG1lbnRLaW5kIksKFlN0YXJ0SG91c2Vob2xkSGFuZG92ZXISMQoHaG9tZV9pZBgBIAEoCzIgLmt1c2ludGEuaW90LmlkZW50aXR5LnYxLlNwYWNlSWQiLwoYQ29uZmlybUhvdXNlaG9sZEhhbmRvdmVyEhMKC2hhbmRvdmVyX2lkGAEgASgJIi4KF0NhbmNlbEhvdXNlaG9sZEhhbmRvdmVyEhMKC2hhbmRvdmVyX2lkGAEgASgJIlEKFkxpc3RIb3VzZWhvbGRIYW5kb3ZlcnMSNwoNcm9vdF9zcGFjZV9pZBgBIAEoCzIgLmt1c2ludGEuaW90LmlkZW50aXR5LnYxLlNwYWNlSWQirAMKEUhvdXNlaG9sZEhhbmRvdmVyEhMKC2hhbmRvdmVyX2lkGAEgASgJEjEKB2hvbWVfaWQYAiABKAsyIC5rdXNpbnRhLmlvdC5pZGVudGl0eS52MS5TcGFjZUlkEjwKBXN0YXRlGAMgASgOMi0ua3VzaW50YS5pb3Qud2VicnRjLnYxLkhvdXNlaG9sZEhhbmRvdmVyU3RhdGUSMwoKc3RhcnRlZF9ieRgEIAEoCzIfLmt1c2ludGEuaW90LmlkZW50aXR5LnYxLlVzZXJJZBIXCg9zdGFydGVkX2J5X25hbWUYBSABKAkSGAoQc3RhcnRlZF9ieV9zdGFmZhgGIAEoCBIuCgpzdGFydGVkX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI6ChZzdGFmZl9jb25maXJtYWJsZV9mcm9tGAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIsCghlbmRlZF9hdBgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDwoHdmFjYXRlZBgKIAEoCCJOCgtTZXRIb21lTmFtZRIxCgdob21lX2lkGAEgASgLMiAua3VzaW50YS5pb3QuaWRlbnRpdHkudjEuU3BhY2VJZBIMCgRuYW1lGAIgASgJIlEKEkhvdXNlaG9sZEhhbmRvdmVycxI7CgloYW5kb3ZlcnMYASADKAsyKC5rdXNpbnRhLmlvdC53ZWJydGMudjEuSG91c2Vob2xkSGFuZG92ZXIiXAoTRXhwb3J0SG91c2Vob2xkRGF0YRIxCgdob21lX2lkGAEgASgLMiAua3VzaW50YS5pb3QuaWRlbnRpdHkudjEuU3BhY2VJZBISCgpwYXJ0X3Rva2VuGAIgASgJIrcDCg9Ib3VzZWhvbGRFeHBvcnQSMQoHaG9tZV9pZBgBIAEoCzIgLmt1c2ludGEuaW90LmlkZW50aXR5LnYxLlNwYWNlSWQSQAoNcm9vbV9jbGltYXRlcxgCIAEoCzInLmt1c2ludGEuaW90LmNsaW1hdGUudjEuUm9vbUNsaW1hdGVMaXN0SAASOwoMcm9vbV9oaXN0b3J5GAMgASgLMiMua3VzaW50YS5pb3QuY2xpbWF0ZS52MS5Sb29tSGlzdG9yeUgAEkoKD2NsaW1hdGVfc3VtbWFyeRgEIAEoCzIvLmt1c2ludGEuaW90LmNsaW1hdGUudjEuQXBhcnRtZW50Q2xpbWF0ZVN1bW1hcnlIABJLCg1jb21taXNzaW9uaW5nGAUgASgLMjIua3VzaW50YS5pb3QuY29tbWlzc2lvbmluZy52MS5Db21taXNzaW9uaW5nUHJvZmlsZUgAEjgKB2hlYXRpbmcYBiABKAsyJS5rdXNpbnRhLmlvdC5oZWF0aW5nLnYxLkhlYXRpbmdMYXlvdXRIABIXCg9uZXh0X3BhcnRfdG9rZW4YByABKAlCBgoEcGFydCqHAQoUU3RhZmZBcHBvaW50bWVudEtpbmQSJgoiU1RBRkZfQVBQT0lOVE1FTlRfS0lORF9VTlNQRUNJRklFRBAAEiEKHVNUQUZGX0FQUE9JTlRNRU5UX0tJTkRfSU5WSVRFEAESJAogU1RBRkZfQVBQT0lOVE1FTlRfS0lORF9QUk9NT1RJT04QAiqzAQoWSG91c2Vob2xkSGFuZG92ZXJTdGF0ZRIoCiRIT1VTRUhPTERfSEFORE9WRVJfU1RBVEVfVU5TUEVDSUZJRUQQABIkCiBIT1VTRUhPTERfSEFORE9WRVJfU1RBVEVfUEVORElORxABEiYKIkhPVVNFSE9MRF9IQU5ET1ZFUl9TVEFURV9DQU5DRUxMRUQQAhIhCh1IT1VTRUhPTERfSEFORE9WRVJfU1RBVEVfRE9ORRADQgJIAWIGcHJvdG8z", [file_google_protobuf_timestamp, file_kusinta_iot_climate_v1_climate, file_kusinta_iot_commissioning_v1_commissioning, file_kusinta_iot_heating_v1_heating, file_kusinta_iot_identity_v1_identity]);
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Describes the message kusinta.iot.webrtc.v1.DemoteHouseholdAdmin.
|
|
20
|
+
* Use `create(DemoteHouseholdAdminSchema)` to create a new message.
|
|
21
|
+
*/
|
|
22
|
+
export const DemoteHouseholdAdminSchema = /*@__PURE__*/
|
|
23
|
+
messageDesc(file_kusinta_iot_webrtc_v1_household, 0);
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Describes the message kusinta.iot.webrtc.v1.StaffAppointment.
|
|
27
|
+
* Use `create(StaffAppointmentSchema)` to create a new message.
|
|
28
|
+
*/
|
|
29
|
+
export const StaffAppointmentSchema = /*@__PURE__*/
|
|
30
|
+
messageDesc(file_kusinta_iot_webrtc_v1_household, 1);
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Describes the message kusinta.iot.webrtc.v1.StartHouseholdHandover.
|
|
34
|
+
* Use `create(StartHouseholdHandoverSchema)` to create a new message.
|
|
35
|
+
*/
|
|
36
|
+
export const StartHouseholdHandoverSchema = /*@__PURE__*/
|
|
37
|
+
messageDesc(file_kusinta_iot_webrtc_v1_household, 2);
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* Describes the message kusinta.iot.webrtc.v1.ConfirmHouseholdHandover.
|
|
41
|
+
* Use `create(ConfirmHouseholdHandoverSchema)` to create a new message.
|
|
42
|
+
*/
|
|
43
|
+
export const ConfirmHouseholdHandoverSchema = /*@__PURE__*/
|
|
44
|
+
messageDesc(file_kusinta_iot_webrtc_v1_household, 3);
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Describes the message kusinta.iot.webrtc.v1.CancelHouseholdHandover.
|
|
48
|
+
* Use `create(CancelHouseholdHandoverSchema)` to create a new message.
|
|
49
|
+
*/
|
|
50
|
+
export const CancelHouseholdHandoverSchema = /*@__PURE__*/
|
|
51
|
+
messageDesc(file_kusinta_iot_webrtc_v1_household, 4);
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Describes the message kusinta.iot.webrtc.v1.ListHouseholdHandovers.
|
|
55
|
+
* Use `create(ListHouseholdHandoversSchema)` to create a new message.
|
|
56
|
+
*/
|
|
57
|
+
export const ListHouseholdHandoversSchema = /*@__PURE__*/
|
|
58
|
+
messageDesc(file_kusinta_iot_webrtc_v1_household, 5);
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Describes the message kusinta.iot.webrtc.v1.HouseholdHandover.
|
|
62
|
+
* Use `create(HouseholdHandoverSchema)` to create a new message.
|
|
63
|
+
*/
|
|
64
|
+
export const HouseholdHandoverSchema = /*@__PURE__*/
|
|
65
|
+
messageDesc(file_kusinta_iot_webrtc_v1_household, 6);
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Describes the message kusinta.iot.webrtc.v1.SetHomeName.
|
|
69
|
+
* Use `create(SetHomeNameSchema)` to create a new message.
|
|
70
|
+
*/
|
|
71
|
+
export const SetHomeNameSchema = /*@__PURE__*/
|
|
72
|
+
messageDesc(file_kusinta_iot_webrtc_v1_household, 7);
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Describes the message kusinta.iot.webrtc.v1.HouseholdHandovers.
|
|
76
|
+
* Use `create(HouseholdHandoversSchema)` to create a new message.
|
|
77
|
+
*/
|
|
78
|
+
export const HouseholdHandoversSchema = /*@__PURE__*/
|
|
79
|
+
messageDesc(file_kusinta_iot_webrtc_v1_household, 8);
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* Describes the message kusinta.iot.webrtc.v1.ExportHouseholdData.
|
|
83
|
+
* Use `create(ExportHouseholdDataSchema)` to create a new message.
|
|
84
|
+
*/
|
|
85
|
+
export const ExportHouseholdDataSchema = /*@__PURE__*/
|
|
86
|
+
messageDesc(file_kusinta_iot_webrtc_v1_household, 9);
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Describes the message kusinta.iot.webrtc.v1.HouseholdExport.
|
|
90
|
+
* Use `create(HouseholdExportSchema)` to create a new message.
|
|
91
|
+
*/
|
|
92
|
+
export const HouseholdExportSchema = /*@__PURE__*/
|
|
93
|
+
messageDesc(file_kusinta_iot_webrtc_v1_household, 10);
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Describes the enum kusinta.iot.webrtc.v1.StaffAppointmentKind.
|
|
97
|
+
*/
|
|
98
|
+
export const StaffAppointmentKindSchema = /*@__PURE__*/
|
|
99
|
+
enumDesc(file_kusinta_iot_webrtc_v1_household, 0);
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* How a staff member appointed a household admin (STAFF APPOINTMENT).
|
|
103
|
+
*
|
|
104
|
+
* @generated from enum kusinta.iot.webrtc.v1.StaffAppointmentKind
|
|
105
|
+
*/
|
|
106
|
+
export const StaffAppointmentKind = /*@__PURE__*/
|
|
107
|
+
tsEnum(StaffAppointmentKindSchema);
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* Describes the enum kusinta.iot.webrtc.v1.HouseholdHandoverState.
|
|
111
|
+
*/
|
|
112
|
+
export const HouseholdHandoverStateSchema = /*@__PURE__*/
|
|
113
|
+
enumDesc(file_kusinta_iot_webrtc_v1_household, 1);
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* @generated from enum kusinta.iot.webrtc.v1.HouseholdHandoverState
|
|
117
|
+
*/
|
|
118
|
+
export const HouseholdHandoverState = /*@__PURE__*/
|
|
119
|
+
tsEnum(HouseholdHandoverStateSchema);
|
|
120
|
+
|
|
@@ -16,21 +16,25 @@ export declare const file_kusinta_iot_webrtc_v1_invite: GenFile;
|
|
|
16
16
|
/**
|
|
17
17
|
* Creates an invite on a space.
|
|
18
18
|
*
|
|
19
|
-
* relation is RESIDENT or
|
|
20
|
-
* will hold: a resident for RESIDENT, a technician for SERVICE.
|
|
21
|
-
* anywhere but a home (access.v1.MembershipRelation).
|
|
22
|
-
*
|
|
23
|
-
*
|
|
19
|
+
* relation is RESIDENT, SERVICE or HOUSEHOLD_ADMIN and nothing else, and it decides the role
|
|
20
|
+
* the person will hold: a resident for RESIDENT and HOUSEHOLD_ADMIN, a technician for SERVICE.
|
|
21
|
+
* RESIDENT is refused anywhere but a home (access.v1.MembershipRelation). HOUSEHOLD_ADMIN is
|
|
22
|
+
* a staff appointment, from a caller holding ROLE_PROPERTY_OWNER or ROLE_GATEWAY_ADMIN, on an
|
|
23
|
+
* empty home only, and refused as household.proto (STAFF APPOINTMENT) says; it never takes
|
|
24
|
+
* access_until. It must be bound to an address: one with no email is refused as
|
|
25
|
+
* INVALID_REQUEST with metadata {"reason": "email_required"}, and is never made a home key. No invite ever makes anyone a gateway administrator or a property owner:
|
|
26
|
+
* those come only by promotion of someone already a member, and any other relation is refused
|
|
27
|
+
* as INVALID_REQUEST.
|
|
24
28
|
*
|
|
25
29
|
* Who may create one is the gateway's decision, as for AssignUserToSpace. The gateway may
|
|
26
|
-
* let a home's
|
|
27
|
-
* home
|
|
28
|
-
* {"reason": "household_full"}.
|
|
30
|
+
* let a home's household admins invite residents into their own home only, within a limit per
|
|
31
|
+
* home; a resident who is not a household admin may not (household.proto). A caller over that
|
|
32
|
+
* limit is refused as FAILED_PRECONDITION with metadata {"reason": "household_full"}.
|
|
29
33
|
*
|
|
30
34
|
* Whether a RESIDENT invite with no address is a home key or a household invite (see the
|
|
31
35
|
* file header) is decided by who creates it, never asked for: a home key when the caller
|
|
32
36
|
* holds ROLE_PROPERTY_OWNER or ROLE_GATEWAY_ADMIN, whether or not they live in the home; a
|
|
33
|
-
* household invite when the caller creates it as a
|
|
37
|
+
* household invite when the caller creates it as a household admin of the home.
|
|
34
38
|
*
|
|
35
39
|
* A gateway holds at most 5000 invites whose secrets it reports
|
|
36
40
|
* (reporting.v1.ReportInviteRoutesRequest), used ones included until their secrets
|
|
@@ -154,11 +158,11 @@ export declare const MarkInviteEmailSentSchema: GenMessage<MarkInviteEmailSent>;
|
|
|
154
158
|
/**
|
|
155
159
|
* The pending invites and join requests of a space. Answered with SpaceInvites. Listed
|
|
156
160
|
* only to a caller who may create invites on the space; anyone else is refused as
|
|
157
|
-
* NOT_ENTITLED. A
|
|
161
|
+
* NOT_ENTITLED. A household admin is listed only the invites a resident of their home made,
|
|
158
162
|
* and the join requests those made: nothing they cannot act on.
|
|
159
163
|
*
|
|
160
|
-
* A household invite, and the join requests it made, are listed only to the
|
|
161
|
-
* that home, a property owner or an administrator included only if they live there:
|
|
164
|
+
* A household invite, and the join requests it made, are listed only to the household admins
|
|
165
|
+
* of that home, a property owner or an administrator included only if they live there:
|
|
162
166
|
* otherwise Invite.created_by and JoinRequest.invited_by would say where its maker lives.
|
|
163
167
|
*
|
|
164
168
|
* @generated from message kusinta.iot.webrtc.v1.ListSpaceInvites
|
|
@@ -181,8 +185,8 @@ export declare const ListSpaceInvitesSchema: GenMessage<ListSpaceInvites>;
|
|
|
181
185
|
* that relation gives. Answered with ManagementAck.
|
|
182
186
|
*
|
|
183
187
|
* Who may approve is the gateway's decision, by the kind of invite the request came from
|
|
184
|
-
* (see the file header): for a household invite, a
|
|
185
|
-
* property owner or an administrator who does not live there; for a SERVICE invite with no
|
|
188
|
+
* (see the file header): for a household invite, a household admin of that home alone, and
|
|
189
|
+
* not a property owner or an administrator who does not live there; for a SERVICE invite with no
|
|
186
190
|
* address, whoever may put people on that space. Anyone else is refused as NOT_ENTITLED.
|
|
187
191
|
*
|
|
188
192
|
* @generated from message kusinta.iot.webrtc.v1.ApproveJoinRequest
|
|
@@ -425,7 +429,7 @@ export declare const JoinRequestSchema: GenMessage<JoinRequest>;
|
|
|
425
429
|
* every session that may list it, so the app shows the change without reloading. A push
|
|
426
430
|
* always carries the whole of both lists for its space, as ListSpaceInvites would list
|
|
427
431
|
* them to that session: a household invite and its join requests reach only the sessions
|
|
428
|
-
* of that home's
|
|
432
|
+
* of that home's household admins.
|
|
429
433
|
*
|
|
430
434
|
* @generated from message kusinta.iot.webrtc.v1.SpaceInvites
|
|
431
435
|
*/
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
|
|
6
6
|
import type { Message } from "@bufbuild/protobuf";
|
|
7
|
-
import type { DeviceOwnershipType, SpaceType } from "../../common/v1/types_pb.js";
|
|
7
|
+
import type { AssetOwner, DeviceOwnershipType, SpaceType } from "../../common/v1/types_pb.js";
|
|
8
8
|
import type { ConnectorId, DeviceId, SpaceId, UserId } from "../../identity/v1/identity_pb.js";
|
|
9
9
|
import type { MembershipRelation, Role } from "../../access/v1/roles_pb.js";
|
|
10
10
|
import type { LorawanProvisioning } from "../../vendor/lorawan/v1/lorawan_pb.js";
|
|
@@ -12,6 +12,7 @@ import type { Space } from "../../space/v1/space_pb.js";
|
|
|
12
12
|
import type { LinkFunction, LinkMode, LinkSettings } from "../../link/v1/link_pb.js";
|
|
13
13
|
import type { ClimateModeKind, ClimateSummaryPeriod } from "../../climate/v1/climate_pb.js";
|
|
14
14
|
import type { Timestamp } from "@bufbuild/protobuf/wkt";
|
|
15
|
+
import type { CancelHouseholdHandover, ConfirmHouseholdHandover, DemoteHouseholdAdmin, ExportHouseholdData, ListHouseholdHandovers, SetHomeName, StaffAppointment, StartHouseholdHandover } from "./household_pb.js";
|
|
15
16
|
import type { ServiceSignal } from "../../access/v1/acl_pb.js";
|
|
16
17
|
import type { ComfortLoad, ComfortWindow, FloorZone, HeatingCircuit, HeatingPlant } from "../../heating/v1/heating_pb.js";
|
|
17
18
|
import type { LinkedService } from "../../accountlink/v1/account_link_pb.js";
|
|
@@ -33,6 +34,9 @@ export declare const file_kusinta_iot_webrtc_v1_management: GenFile;
|
|
|
33
34
|
* UpdateSpace is, and refused whatever the caller where UpdateSpace's structure rules would
|
|
34
35
|
* refuse it.
|
|
35
36
|
*
|
|
37
|
+
* An apartment is created by the property owner or the gateway's administrators, with a name
|
|
38
|
+
* that identifies it in the building (space.v1.Space.name); an empty name is INVALID_REQUEST.
|
|
39
|
+
*
|
|
36
40
|
* @generated from message kusinta.iot.webrtc.v1.CreateSpace
|
|
37
41
|
*/
|
|
38
42
|
export declare type CreateSpace = Message<"kusinta.iot.webrtc.v1.CreateSpace"> & {
|
|
@@ -93,6 +97,11 @@ export declare const CreateSpaceSchema: GenMessage<CreateSpace>;
|
|
|
93
97
|
* ROLE_PROPERTY_OWNER or ROLE_GATEWAY_ADMIN, who see them, and is refused if it would
|
|
94
98
|
* leave a RESIDENT membership on a room.
|
|
95
99
|
*
|
|
100
|
+
* The name of an apartment is the building's identifier for it (space.v1.Space.name), and is
|
|
101
|
+
* changed only by the property owner or the gateway's administrators: from anyone else, a
|
|
102
|
+
* request setting it is refused whole as NOT_ENTITLED. The household names its home with
|
|
103
|
+
* SetHomeName instead.
|
|
104
|
+
*
|
|
96
105
|
* Every descriptive field carries explicit presence: absent means leave it alone, present
|
|
97
106
|
* means set it to this — including to the empty string, which is how a description is
|
|
98
107
|
* cleared.
|
|
@@ -198,6 +207,12 @@ export declare const DeleteSpaceSchema: GenMessage<DeleteSpace>;
|
|
|
198
207
|
* Assigning a user who is already a member changes their relation to the space.
|
|
199
208
|
* RESIDENT is refused on a room; see access.v1.MembershipRelation.
|
|
200
209
|
*
|
|
210
|
+
* Nobody is made a household admin through it: HOUSEHOLD_ADMIN is refused as
|
|
211
|
+
* INVALID_REQUEST, since that comes only by promotion or appointment (household.proto). A
|
|
212
|
+
* HOUSEHOLD_ADMIN membership is never changed through it either: assigning onto one is refused
|
|
213
|
+
* as FAILED_PRECONDITION with metadata {"reason": "household_admin"}; DemoteHouseholdAdmin and
|
|
214
|
+
* RemoveUserFromSpace are how it ends.
|
|
215
|
+
*
|
|
201
216
|
* Who may change who belongs to a home is restricted by the gateway; a caller not allowed is
|
|
202
217
|
* refused as NOT_ENTITLED. Residents see who is filed on their home in Space.members.
|
|
203
218
|
*
|
|
@@ -239,9 +254,12 @@ export declare const AssignUserToSpaceSchema: GenMessage<AssignUserToSpace>;
|
|
|
239
254
|
* Removes a user's membership of a space. Losing reach also drops whatever the
|
|
240
255
|
* user was streaming from it, announced by LivePermissionUpdate.
|
|
241
256
|
*
|
|
242
|
-
* Removing someone else from a home is guarded as assigning is
|
|
243
|
-
*
|
|
244
|
-
*
|
|
257
|
+
* Removing someone else from a home is guarded as assigning is: within the household, it is a
|
|
258
|
+
* household admin's (household.proto). Anyone may remove themselves, save the last household
|
|
259
|
+
* admin of a home that has other residents ("last_household_admin", household.proto, LAST
|
|
260
|
+
* ADMIN, which also refuses a household admin removing another when that would leave none). A
|
|
261
|
+
* membership the caller is not told of under the user id given (see AssignUserToSpace) is
|
|
262
|
+
* answered as one that does not exist, and stays.
|
|
245
263
|
*
|
|
246
264
|
* user_id may be a residency id (access.v1.MembershipRelation, RESIDENCY IDS): it then ends
|
|
247
265
|
* that residency, if space_id is its home, and answers as for one that does not exist
|
|
@@ -274,9 +292,10 @@ export declare const RemoveUserFromSpaceSchema: GenMessage<RemoveUserFromSpace>;
|
|
|
274
292
|
*
|
|
275
293
|
* Into a home go only the building's own devices and devices its residents own, and a
|
|
276
294
|
* device belongs to one home at most; filing into, out of or beside a home is guarded by
|
|
277
|
-
* the gateway
|
|
278
|
-
*
|
|
279
|
-
*
|
|
295
|
+
* the gateway, and within the household it is a household admin's, save a device a resident
|
|
296
|
+
* owns, which its owner files (household.proto). A caller not allowed is refused as
|
|
297
|
+
* NOT_ENTITLED, and filing that would leave a link the caller can see across a home's
|
|
298
|
+
* boundary is refused whatever the caller; one they cannot see is removed instead.
|
|
280
299
|
*
|
|
281
300
|
* @generated from message kusinta.iot.webrtc.v1.PlaceDeviceInSpace
|
|
282
301
|
*/
|
|
@@ -997,6 +1016,17 @@ export declare type PrivacyDisclosure = Message<"kusinta.iot.webrtc.v1.PrivacyDi
|
|
|
997
1016
|
* @generated from field: bool names_withheld = 7;
|
|
998
1017
|
*/
|
|
999
1018
|
namesWithheld: boolean;
|
|
1019
|
+
|
|
1020
|
+
/**
|
|
1021
|
+
* Each staff appointment (household.proto, STAFF APPOINTMENT) of a member who lives in this
|
|
1022
|
+
* home now, made during their current residency — the one that began at an appointment
|
|
1023
|
+
* invite's redeem included — oldest first: whoever joins the household later learns who put
|
|
1024
|
+
* its admins there. Given to the home's residents only, and so never to a caller who sees it
|
|
1025
|
+
* as service: a client shows it to residents alone.
|
|
1026
|
+
*
|
|
1027
|
+
* @generated from field: repeated kusinta.iot.webrtc.v1.StaffAppointment staff_appointments = 8;
|
|
1028
|
+
*/
|
|
1029
|
+
staffAppointments: StaffAppointment[];
|
|
1000
1030
|
};
|
|
1001
1031
|
|
|
1002
1032
|
/**
|
|
@@ -1391,8 +1421,8 @@ export declare const SetComfortWindowsSchema: GenMessage<SetComfortWindows>;
|
|
|
1391
1421
|
|
|
1392
1422
|
/**
|
|
1393
1423
|
* Asks for a nonce to link one home's account at a third-party service
|
|
1394
|
-
* (accountlink.v1.AccountLinkNonce). Only a household admin of the home
|
|
1395
|
-
*
|
|
1424
|
+
* (accountlink.v1.AccountLinkNonce). Only a household admin of the home
|
|
1425
|
+
* (access.v1.MEMBERSHIP_RELATION_HOUSEHOLD_ADMIN) is issued one; anyone else is refused as
|
|
1396
1426
|
* NOT_ENTITLED, as is a home the caller cannot reach. A service this gateway does not
|
|
1397
1427
|
* support is refused as INVALID_REQUEST.
|
|
1398
1428
|
*
|
|
@@ -1696,6 +1726,156 @@ export declare type ListHomeSetups = Message<"kusinta.iot.webrtc.v1.ListHomeSetu
|
|
|
1696
1726
|
*/
|
|
1697
1727
|
export declare const ListHomeSetupsSchema: GenMessage<ListHomeSetups>;
|
|
1698
1728
|
|
|
1729
|
+
/**
|
|
1730
|
+
* Asks for a commissioning grant on one space (commissioning.v1, GRANTS), answered with the
|
|
1731
|
+
* CommissioningGrant, REQUESTED. From a caller holding ROLE_TECHNICIAN who reaches the space;
|
|
1732
|
+
* anyone else, and a space they do not reach, is refused as NOT_ENTITLED. A room in a home is
|
|
1733
|
+
* INVALID_REQUEST with metadata {"reason": "grant_space"}: a home is granted whole. Asking
|
|
1734
|
+
* again while one of the caller's is requested or granted on the space answers that one.
|
|
1735
|
+
*
|
|
1736
|
+
* Accepted on any home the caller reaches, whether or not anyone could answer it: it lapses
|
|
1737
|
+
* unanswered where nobody does, so the answer tells the installer nothing of whether anyone
|
|
1738
|
+
* lives there.
|
|
1739
|
+
*
|
|
1740
|
+
* @generated from message kusinta.iot.webrtc.v1.RequestCommissioningGrant
|
|
1741
|
+
*/
|
|
1742
|
+
export declare type RequestCommissioningGrant = Message<"kusinta.iot.webrtc.v1.RequestCommissioningGrant"> & {
|
|
1743
|
+
/**
|
|
1744
|
+
* @generated from field: kusinta.iot.identity.v1.SpaceId space_id = 1;
|
|
1745
|
+
*/
|
|
1746
|
+
spaceId?: SpaceId | undefined;
|
|
1747
|
+
};
|
|
1748
|
+
|
|
1749
|
+
/**
|
|
1750
|
+
* Describes the message kusinta.iot.webrtc.v1.RequestCommissioningGrant.
|
|
1751
|
+
* Use `create(RequestCommissioningGrantSchema)` to create a new message.
|
|
1752
|
+
*/
|
|
1753
|
+
export declare const RequestCommissioningGrantSchema: GenMessage<RequestCommissioningGrant>;
|
|
1754
|
+
|
|
1755
|
+
/**
|
|
1756
|
+
* Answers a requested commissioning grant, answered with the CommissioningGrant as stored when
|
|
1757
|
+
* granted, and with ManagementAck when declined, which ends it. From a household admin of the
|
|
1758
|
+
* home, or for a space outside homes the property owner or a gateway administrator who reaches
|
|
1759
|
+
* it; anyone else, and a grant_id that is not requested on a space the caller may answer for,
|
|
1760
|
+
* is refused as NOT_ENTITLED, so that no grant id can be probed.
|
|
1761
|
+
*
|
|
1762
|
+
* Granting needs ends_at after starts_at, no more than 14 days after it, and starts_at no
|
|
1763
|
+
* later than 30 days from now; otherwise INVALID_REQUEST with metadata
|
|
1764
|
+
* {"reason": "grant_period"}. An answered grant is not answered again: to change its time,
|
|
1765
|
+
* end it and let the installer ask anew.
|
|
1766
|
+
*
|
|
1767
|
+
* @generated from message kusinta.iot.webrtc.v1.AnswerCommissioningGrant
|
|
1768
|
+
*/
|
|
1769
|
+
export declare type AnswerCommissioningGrant = Message<"kusinta.iot.webrtc.v1.AnswerCommissioningGrant"> & {
|
|
1770
|
+
/**
|
|
1771
|
+
* @generated from field: string grant_id = 1;
|
|
1772
|
+
*/
|
|
1773
|
+
grantId: string;
|
|
1774
|
+
|
|
1775
|
+
/**
|
|
1776
|
+
* true grants; false declines.
|
|
1777
|
+
*
|
|
1778
|
+
* @generated from field: bool accept = 2;
|
|
1779
|
+
*/
|
|
1780
|
+
accept: boolean;
|
|
1781
|
+
|
|
1782
|
+
/**
|
|
1783
|
+
* When it is active. Unset starts_at: now. Ignored when declining.
|
|
1784
|
+
*
|
|
1785
|
+
* @generated from field: google.protobuf.Timestamp starts_at = 3;
|
|
1786
|
+
*/
|
|
1787
|
+
startsAt?: Timestamp | undefined;
|
|
1788
|
+
|
|
1789
|
+
/**
|
|
1790
|
+
* @generated from field: google.protobuf.Timestamp ends_at = 4;
|
|
1791
|
+
*/
|
|
1792
|
+
endsAt?: Timestamp | undefined;
|
|
1793
|
+
};
|
|
1794
|
+
|
|
1795
|
+
/**
|
|
1796
|
+
* Describes the message kusinta.iot.webrtc.v1.AnswerCommissioningGrant.
|
|
1797
|
+
* Use `create(AnswerCommissioningGrantSchema)` to create a new message.
|
|
1798
|
+
*/
|
|
1799
|
+
export declare const AnswerCommissioningGrantSchema: GenMessage<AnswerCommissioningGrant>;
|
|
1800
|
+
|
|
1801
|
+
/**
|
|
1802
|
+
* Ends a commissioning grant at once, requested or granted. Answered with ManagementAck. From
|
|
1803
|
+
* the installer it names, from whoever may answer it, and from nobody else: anyone else, and a
|
|
1804
|
+
* grant_id they are not listed, is refused as NOT_ENTITLED.
|
|
1805
|
+
*
|
|
1806
|
+
* @generated from message kusinta.iot.webrtc.v1.EndCommissioningGrant
|
|
1807
|
+
*/
|
|
1808
|
+
export declare type EndCommissioningGrant = Message<"kusinta.iot.webrtc.v1.EndCommissioningGrant"> & {
|
|
1809
|
+
/**
|
|
1810
|
+
* @generated from field: string grant_id = 1;
|
|
1811
|
+
*/
|
|
1812
|
+
grantId: string;
|
|
1813
|
+
};
|
|
1814
|
+
|
|
1815
|
+
/**
|
|
1816
|
+
* Describes the message kusinta.iot.webrtc.v1.EndCommissioningGrant.
|
|
1817
|
+
* Use `create(EndCommissioningGrantSchema)` to create a new message.
|
|
1818
|
+
*/
|
|
1819
|
+
export declare const EndCommissioningGrantSchema: GenMessage<EndCommissioningGrant>;
|
|
1820
|
+
|
|
1821
|
+
/**
|
|
1822
|
+
* Lists the commissioning grants that have not ended on a space and those below it, answered
|
|
1823
|
+
* with CommissioningGrants: a home's to its residents; one on a space outside homes to the
|
|
1824
|
+
* property owner and the gateway administrators who reach it; to an installer, their own.
|
|
1825
|
+
* Unset root_space_id lists every one the caller may be listed. Anyone may ask; nobody is
|
|
1826
|
+
* refused, and a caller listed none gets none.
|
|
1827
|
+
*
|
|
1828
|
+
* @generated from message kusinta.iot.webrtc.v1.ListCommissioningGrants
|
|
1829
|
+
*/
|
|
1830
|
+
export declare type ListCommissioningGrants = Message<"kusinta.iot.webrtc.v1.ListCommissioningGrants"> & {
|
|
1831
|
+
/**
|
|
1832
|
+
* @generated from field: kusinta.iot.identity.v1.SpaceId root_space_id = 1;
|
|
1833
|
+
*/
|
|
1834
|
+
rootSpaceId?: SpaceId | undefined;
|
|
1835
|
+
};
|
|
1836
|
+
|
|
1837
|
+
/**
|
|
1838
|
+
* Describes the message kusinta.iot.webrtc.v1.ListCommissioningGrants.
|
|
1839
|
+
* Use `create(ListCommissioningGrantsSchema)` to create a new message.
|
|
1840
|
+
*/
|
|
1841
|
+
export declare const ListCommissioningGrantsSchema: GenMessage<ListCommissioningGrants>;
|
|
1842
|
+
|
|
1843
|
+
/**
|
|
1844
|
+
* Sets who owns one of the building's own devices as an asset (common.v1.AssetOwner), and
|
|
1845
|
+
* with it nobody's access. Answered with ManagementAck. From the property owner or a gateway
|
|
1846
|
+
* administrator who reaches the device; anyone else is refused as NOT_ENTITLED. Unset
|
|
1847
|
+
* asset_owner clears it, as does one with neither owner set.
|
|
1848
|
+
*
|
|
1849
|
+
* Refused as INVALID_REQUEST with metadata "reason":
|
|
1850
|
+
* "owned_by_resident" a device a person owns outright (common.v1.DeviceOwnershipType
|
|
1851
|
+
* RESIDENT), which has no asset owner.
|
|
1852
|
+
* "asset_owner" owner_organisation false, or a household_home_id that is not an
|
|
1853
|
+
* apartment.
|
|
1854
|
+
*
|
|
1855
|
+
* A household's asset keeps naming its home if the home's space is changed or deleted, until
|
|
1856
|
+
* it is set again: who owns what after a home is split or merged is decided here, not by the
|
|
1857
|
+
* change.
|
|
1858
|
+
*
|
|
1859
|
+
* @generated from message kusinta.iot.webrtc.v1.SetAssetOwner
|
|
1860
|
+
*/
|
|
1861
|
+
export declare type SetAssetOwner = Message<"kusinta.iot.webrtc.v1.SetAssetOwner"> & {
|
|
1862
|
+
/**
|
|
1863
|
+
* @generated from field: kusinta.iot.identity.v1.DeviceId device_id = 1;
|
|
1864
|
+
*/
|
|
1865
|
+
deviceId?: DeviceId | undefined;
|
|
1866
|
+
|
|
1867
|
+
/**
|
|
1868
|
+
* @generated from field: kusinta.iot.common.v1.AssetOwner asset_owner = 2;
|
|
1869
|
+
*/
|
|
1870
|
+
assetOwner?: AssetOwner | undefined;
|
|
1871
|
+
};
|
|
1872
|
+
|
|
1873
|
+
/**
|
|
1874
|
+
* Describes the message kusinta.iot.webrtc.v1.SetAssetOwner.
|
|
1875
|
+
* Use `create(SetAssetOwnerSchema)` to create a new message.
|
|
1876
|
+
*/
|
|
1877
|
+
export declare const SetAssetOwnerSchema: GenMessage<SetAssetOwner>;
|
|
1878
|
+
|
|
1699
1879
|
/**
|
|
1700
1880
|
* @generated from message kusinta.iot.webrtc.v1.ManagementRequest
|
|
1701
1881
|
*/
|
|
@@ -2052,6 +2232,82 @@ export declare type ManagementRequest = Message<"kusinta.iot.webrtc.v1.Managemen
|
|
|
2052
2232
|
*/
|
|
2053
2233
|
value: ListHomeSetups;
|
|
2054
2234
|
case: "listHomeSetups";
|
|
2235
|
+
} | {
|
|
2236
|
+
/**
|
|
2237
|
+
* Commissioning grants; see commissioning.v1, GRANTS.
|
|
2238
|
+
*
|
|
2239
|
+
* @generated from field: kusinta.iot.webrtc.v1.RequestCommissioningGrant request_commissioning_grant = 57;
|
|
2240
|
+
*/
|
|
2241
|
+
value: RequestCommissioningGrant;
|
|
2242
|
+
case: "requestCommissioningGrant";
|
|
2243
|
+
} | {
|
|
2244
|
+
/**
|
|
2245
|
+
* @generated from field: kusinta.iot.webrtc.v1.AnswerCommissioningGrant answer_commissioning_grant = 58;
|
|
2246
|
+
*/
|
|
2247
|
+
value: AnswerCommissioningGrant;
|
|
2248
|
+
case: "answerCommissioningGrant";
|
|
2249
|
+
} | {
|
|
2250
|
+
/**
|
|
2251
|
+
* @generated from field: kusinta.iot.webrtc.v1.EndCommissioningGrant end_commissioning_grant = 59;
|
|
2252
|
+
*/
|
|
2253
|
+
value: EndCommissioningGrant;
|
|
2254
|
+
case: "endCommissioningGrant";
|
|
2255
|
+
} | {
|
|
2256
|
+
/**
|
|
2257
|
+
* @generated from field: kusinta.iot.webrtc.v1.ListCommissioningGrants list_commissioning_grants = 60;
|
|
2258
|
+
*/
|
|
2259
|
+
value: ListCommissioningGrants;
|
|
2260
|
+
case: "listCommissioningGrants";
|
|
2261
|
+
} | {
|
|
2262
|
+
/**
|
|
2263
|
+
* @generated from field: kusinta.iot.webrtc.v1.SetAssetOwner set_asset_owner = 61;
|
|
2264
|
+
*/
|
|
2265
|
+
value: SetAssetOwner;
|
|
2266
|
+
case: "setAssetOwner";
|
|
2267
|
+
} | {
|
|
2268
|
+
/**
|
|
2269
|
+
* The household; see household.proto.
|
|
2270
|
+
*
|
|
2271
|
+
* @generated from field: kusinta.iot.webrtc.v1.DemoteHouseholdAdmin demote_household_admin = 62;
|
|
2272
|
+
*/
|
|
2273
|
+
value: DemoteHouseholdAdmin;
|
|
2274
|
+
case: "demoteHouseholdAdmin";
|
|
2275
|
+
} | {
|
|
2276
|
+
/**
|
|
2277
|
+
* @generated from field: kusinta.iot.webrtc.v1.StartHouseholdHandover start_household_handover = 63;
|
|
2278
|
+
*/
|
|
2279
|
+
value: StartHouseholdHandover;
|
|
2280
|
+
case: "startHouseholdHandover";
|
|
2281
|
+
} | {
|
|
2282
|
+
/**
|
|
2283
|
+
* @generated from field: kusinta.iot.webrtc.v1.ConfirmHouseholdHandover confirm_household_handover = 64;
|
|
2284
|
+
*/
|
|
2285
|
+
value: ConfirmHouseholdHandover;
|
|
2286
|
+
case: "confirmHouseholdHandover";
|
|
2287
|
+
} | {
|
|
2288
|
+
/**
|
|
2289
|
+
* @generated from field: kusinta.iot.webrtc.v1.CancelHouseholdHandover cancel_household_handover = 65;
|
|
2290
|
+
*/
|
|
2291
|
+
value: CancelHouseholdHandover;
|
|
2292
|
+
case: "cancelHouseholdHandover";
|
|
2293
|
+
} | {
|
|
2294
|
+
/**
|
|
2295
|
+
* @generated from field: kusinta.iot.webrtc.v1.ListHouseholdHandovers list_household_handovers = 66;
|
|
2296
|
+
*/
|
|
2297
|
+
value: ListHouseholdHandovers;
|
|
2298
|
+
case: "listHouseholdHandovers";
|
|
2299
|
+
} | {
|
|
2300
|
+
/**
|
|
2301
|
+
* @generated from field: kusinta.iot.webrtc.v1.ExportHouseholdData export_household_data = 67;
|
|
2302
|
+
*/
|
|
2303
|
+
value: ExportHouseholdData;
|
|
2304
|
+
case: "exportHouseholdData";
|
|
2305
|
+
} | {
|
|
2306
|
+
/**
|
|
2307
|
+
* @generated from field: kusinta.iot.webrtc.v1.SetHomeName set_home_name = 68;
|
|
2308
|
+
*/
|
|
2309
|
+
value: SetHomeName;
|
|
2310
|
+
case: "setHomeName";
|
|
2055
2311
|
} | { case: undefined; value?: undefined };
|
|
2056
2312
|
};
|
|
2057
2313
|
|