@kusinta/iot-schema 0.2.0-beta.5 → 0.2.0-beta.51
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 +42 -28
- package/src/kusinta/iot/access/v1/acl_pb.d.ts +138 -2
- package/src/kusinta/iot/access/v1/acl_pb.js +19 -2
- package/src/kusinta/iot/access/v1/roles_pb.d.ts +160 -4
- package/src/kusinta/iot/access/v1/roles_pb.js +128 -5
- package/src/kusinta/iot/accountlink/v1/account_link_pb.d.ts +591 -0
- package/src/kusinta/iot/accountlink/v1/account_link_pb.js +160 -0
- package/src/kusinta/iot/climate/v1/climate_pb.d.ts +1495 -0
- package/src/kusinta/iot/climate/v1/climate_pb.js +278 -0
- package/src/kusinta/iot/commissioning/v1/commissioning_pb.d.ts +1359 -0
- package/src/kusinta/iot/commissioning/v1/commissioning_pb.js +282 -0
- package/src/kusinta/iot/common/v1/pairing_pb.d.ts +219 -0
- package/src/kusinta/iot/common/v1/pairing_pb.js +50 -0
- package/src/kusinta/iot/common/v1/types_pb.d.ts +235 -0
- package/src/kusinta/iot/common/v1/types_pb.js +84 -2
- package/src/kusinta/iot/connector/v1/connector_pb.d.ts +874 -3
- package/src/kusinta/iot/connector/v1/connector_pb.js +126 -13
- package/src/kusinta/iot/device/v1/cluster_state_pb.d.ts +213 -1
- package/src/kusinta/iot/device/v1/cluster_state_pb.js +37 -2
- package/src/kusinta/iot/device/v1/descriptor_pb.d.ts +32 -4
- package/src/kusinta/iot/device/v1/descriptor_pb.js +2 -1
- package/src/kusinta/iot/device/v1/device_event_pb.d.ts +89 -5
- package/src/kusinta/iot/device/v1/device_event_pb.js +1 -1
- package/src/kusinta/iot/device/v1/device_pb.d.ts +426 -11
- package/src/kusinta/iot/device/v1/device_pb.js +74 -2
- package/src/kusinta/iot/device/v1/properties_pb.d.ts +26 -5
- package/src/kusinta/iot/device/v1/properties_pb.js +1 -1
- package/src/kusinta/iot/device/v1/property_update_pb.d.ts +42 -2
- package/src/kusinta/iot/device/v1/property_update_pb.js +2 -1
- package/src/kusinta/iot/heating/v1/heating_pb.d.ts +656 -0
- package/src/kusinta/iot/heating/v1/heating_pb.js +119 -0
- package/src/kusinta/iot/link/v1/link_pb.d.ts +438 -0
- package/src/kusinta/iot/link/v1/link_pb.js +121 -0
- package/src/kusinta/iot/registration/v1/registration_pb.d.ts +18 -0
- package/src/kusinta/iot/registration/v1/registration_pb.js +1 -1
- package/src/kusinta/iot/reporting/v1/reporting_pb.d.ts +1251 -0
- package/src/kusinta/iot/reporting/v1/reporting_pb.js +238 -0
- package/src/kusinta/iot/reporting/v1/reporting_service_pb.d.ts +63 -0
- package/src/kusinta/iot/reporting/v1/reporting_service_pb.js +24 -0
- package/src/kusinta/iot/signaling/v1/signaling_pb.d.ts +939 -7
- package/src/kusinta/iot/signaling/v1/signaling_pb.js +163 -4
- package/src/kusinta/iot/signaling/v1/signaling_service_pb.d.ts +24 -1
- package/src/kusinta/iot/signaling/v1/signaling_service_pb.js +1 -1
- package/src/kusinta/iot/space/v1/space_pb.d.ts +146 -2
- package/src/kusinta/iot/space/v1/space_pb.js +10 -1
- package/src/kusinta/iot/vendor/homematic/v1/homematic_pb.d.ts +15 -0
- package/src/kusinta/iot/vendor/homematic/v1/homematic_pb.js +1 -1
- package/src/kusinta/iot/vendor/lorawan/v1/lorawan_pb.d.ts +69 -0
- package/src/kusinta/iot/vendor/lorawan/v1/lorawan_pb.js +19 -0
- package/src/kusinta/iot/vendor/v1/vendor_options_pb.d.ts +5 -4
- package/src/kusinta/iot/vendor/v1/vendor_options_pb.js +5 -4
- package/src/kusinta/iot/webrtc/v1/app_token_pb.d.ts +48 -5
- package/src/kusinta/iot/webrtc/v1/app_token_pb.js +1 -1
- package/src/kusinta/iot/webrtc/v1/command_pb.d.ts +56 -0
- package/src/kusinta/iot/webrtc/v1/command_pb.js +1 -1
- package/src/kusinta/iot/webrtc/v1/device_state_pb.d.ts +179 -5
- package/src/kusinta/iot/webrtc/v1/device_state_pb.js +34 -5
- package/src/kusinta/iot/webrtc/v1/envelope_pb.d.ts +732 -3
- package/src/kusinta/iot/webrtc/v1/envelope_pb.js +84 -4
- package/src/kusinta/iot/webrtc/v1/household_pb.d.ts +612 -0
- package/src/kusinta/iot/webrtc/v1/household_pb.js +134 -0
- package/src/kusinta/iot/webrtc/v1/invite_pb.d.ts +502 -0
- package/src/kusinta/iot/webrtc/v1/invite_pb.js +108 -0
- package/src/kusinta/iot/webrtc/v1/management_pb.d.ts +2183 -76
- package/src/kusinta/iot/webrtc/v1/management_pb.js +311 -5
- package/src/kusinta/iot/webrtc/v1/members_pb.d.ts +582 -0
- package/src/kusinta/iot/webrtc/v1/members_pb.js +113 -0
- package/src/kusinta/iot/webrtc/v1/permission_push_pb.d.ts +66 -4
- package/src/kusinta/iot/webrtc/v1/permission_push_pb.js +9 -1
|
@@ -0,0 +1,656 @@
|
|
|
1
|
+
// @generated by protoc-gen-es v2.12.0 with parameter "target=js+dts,import_extension=js"
|
|
2
|
+
// @generated from file kusinta/iot/heating/v1/heating.proto (package kusinta.iot.heating.v1, syntax proto3)
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
|
|
5
|
+
import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
|
|
6
|
+
import type { Message } from "@bufbuild/protobuf";
|
|
7
|
+
import type { DeviceId, SpaceId, UserId } from "../../identity/v1/identity_pb.js";
|
|
8
|
+
import type { AttributeRef } from "../../access/v1/acl_pb.js";
|
|
9
|
+
import type { AttributeValue } from "../../device/v1/cluster_state_pb.js";
|
|
10
|
+
import type { Timestamp } from "@bufbuild/protobuf/wkt";
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Describes the file kusinta/iot/heating/v1/heating.proto.
|
|
14
|
+
*/
|
|
15
|
+
export declare const file_kusinta_iot_heating_v1_heating: GenFile;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* One attribute of one device: what a role reads or writes. Endpoint_id is required on the
|
|
19
|
+
* Matter branch of the attribute here — an absent endpoint is refused, never read as the
|
|
20
|
+
* root node.
|
|
21
|
+
*
|
|
22
|
+
* @generated from message kusinta.iot.heating.v1.DeviceAttribute
|
|
23
|
+
*/
|
|
24
|
+
export declare type DeviceAttribute = Message<"kusinta.iot.heating.v1.DeviceAttribute"> & {
|
|
25
|
+
/**
|
|
26
|
+
* @generated from field: kusinta.iot.identity.v1.DeviceId device_id = 1;
|
|
27
|
+
*/
|
|
28
|
+
deviceId?: DeviceId | undefined;
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* @generated from field: kusinta.iot.access.v1.AttributeRef attribute = 2;
|
|
32
|
+
*/
|
|
33
|
+
attribute?: AttributeRef | undefined;
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Describes the message kusinta.iot.heating.v1.DeviceAttribute.
|
|
38
|
+
* Use `create(DeviceAttributeSchema)` to create a new message.
|
|
39
|
+
*/
|
|
40
|
+
export declare const DeviceAttributeSchema: GenMessage<DeviceAttribute>;
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* One device output switching one contact on the heating side: a floor zone's thermostat
|
|
44
|
+
* input, a heat-source input, a comfort load's supply.
|
|
45
|
+
*
|
|
46
|
+
* @generated from message kusinta.iot.heating.v1.ContactBinding
|
|
47
|
+
*/
|
|
48
|
+
export declare type ContactBinding = Message<"kusinta.iot.heating.v1.ContactBinding"> & {
|
|
49
|
+
/**
|
|
50
|
+
* OnOff on a relay channel, or a vendor parameter.
|
|
51
|
+
*
|
|
52
|
+
* @generated from field: kusinta.iot.heating.v1.DeviceAttribute output = 1;
|
|
53
|
+
*/
|
|
54
|
+
output?: DeviceAttribute | undefined;
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* The value of the output with which the contact is closed. A wiring fact, not a device
|
|
58
|
+
* fact: a changeover relay wired through its normally closed contact closes it with the
|
|
59
|
+
* channel off, so OnOff false. The producer cannot know it; whoever wires the relay
|
|
60
|
+
* states it, and the gateway reads every state of the role through it — never from the
|
|
61
|
+
* output's value alone.
|
|
62
|
+
*
|
|
63
|
+
* Each role has a fixed rest state (see the role), and the output's lapse value
|
|
64
|
+
* (device.v1.LeasedWrite.lapse_value), read through this value, must leave the contact
|
|
65
|
+
* where the role rests. Every comparison with this value matches type as well as value:
|
|
66
|
+
* an int 0 is not a bool false.
|
|
67
|
+
*
|
|
68
|
+
* @generated from field: kusinta.iot.device.v1.AttributeValue closed_value = 2;
|
|
69
|
+
*/
|
|
70
|
+
closedValue?: AttributeValue | undefined;
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Describes the message kusinta.iot.heating.v1.ContactBinding.
|
|
75
|
+
* Use `create(ContactBindingSchema)` to create a new message.
|
|
76
|
+
*/
|
|
77
|
+
export declare const ContactBindingSchema: GenMessage<ContactBinding>;
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* One heat source.
|
|
81
|
+
*
|
|
82
|
+
* @generated from message kusinta.iot.heating.v1.HeatingPlant
|
|
83
|
+
*/
|
|
84
|
+
export declare type HeatingPlant = Message<"kusinta.iot.heating.v1.HeatingPlant"> & {
|
|
85
|
+
/**
|
|
86
|
+
* Assigned by the gateway, unique among heating records; empty when creating.
|
|
87
|
+
*
|
|
88
|
+
* @generated from field: string plant_id = 1;
|
|
89
|
+
*/
|
|
90
|
+
plantId: string;
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* The space the plant serves: a home, or a space outside homes for a central plant.
|
|
94
|
+
*
|
|
95
|
+
* @generated from field: kusinta.iot.identity.v1.SpaceId space_id = 2;
|
|
96
|
+
*/
|
|
97
|
+
spaceId?: SpaceId | undefined;
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* @generated from field: string name = 3;
|
|
101
|
+
*/
|
|
102
|
+
name: string;
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* @generated from field: kusinta.iot.heating.v1.HeatSourceKind source = 4;
|
|
106
|
+
*/
|
|
107
|
+
source: HeatSourceKind;
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* The device the heat source's own readings come from — its temperatures, compressor and
|
|
111
|
+
* hot-water state — when it has one; its temperatures are the device's
|
|
112
|
+
* device.v1.HeatSourceReadings. Read only: the gateway drives a heat source through the
|
|
113
|
+
* plant's control, never through this device.
|
|
114
|
+
*
|
|
115
|
+
* @generated from field: kusinta.iot.identity.v1.DeviceId readings_device_id = 5;
|
|
116
|
+
*/
|
|
117
|
+
readingsDeviceId?: DeviceId | undefined;
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* How the gateway steers the heat source. Unset: it does not; the plant is read only. A
|
|
121
|
+
* control set binds at least one input.
|
|
122
|
+
*
|
|
123
|
+
* @generated from oneof kusinta.iot.heating.v1.HeatingPlant.control
|
|
124
|
+
*/
|
|
125
|
+
control: {
|
|
126
|
+
/**
|
|
127
|
+
* @generated from field: kusinta.iot.heating.v1.HeatPumpControl heat_pump = 6;
|
|
128
|
+
*/
|
|
129
|
+
value: HeatPumpControl;
|
|
130
|
+
case: "heatPump";
|
|
131
|
+
} | { case: undefined; value?: undefined };
|
|
132
|
+
|
|
133
|
+
/**
|
|
134
|
+
* The electricity or heat meter the plant is measured by.
|
|
135
|
+
*
|
|
136
|
+
* @generated from field: kusinta.iot.heating.v1.DeviceAttribute meter = 7;
|
|
137
|
+
*/
|
|
138
|
+
meter?: DeviceAttribute | undefined;
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* See the file comment.
|
|
142
|
+
*
|
|
143
|
+
* @generated from field: uint64 revision = 8;
|
|
144
|
+
*/
|
|
145
|
+
revision: bigint;
|
|
146
|
+
};
|
|
147
|
+
|
|
148
|
+
/**
|
|
149
|
+
* Describes the message kusinta.iot.heating.v1.HeatingPlant.
|
|
150
|
+
* Use `create(HeatingPlantSchema)` to create a new message.
|
|
151
|
+
*/
|
|
152
|
+
export declare const HeatingPlantSchema: GenMessage<HeatingPlant>;
|
|
153
|
+
|
|
154
|
+
/**
|
|
155
|
+
* A heat pump's control inputs.
|
|
156
|
+
*
|
|
157
|
+
* @generated from message kusinta.iot.heating.v1.HeatPumpControl
|
|
158
|
+
*/
|
|
159
|
+
export declare type HeatPumpControl = Message<"kusinta.iot.heating.v1.HeatPumpControl"> & {
|
|
160
|
+
/**
|
|
161
|
+
* The SG Ready inputs, by what each means closed alone: sg_ready_block closed alone
|
|
162
|
+
* blocks the heat pump, sg_ready_boost closed alone recommends running harder, both
|
|
163
|
+
* closed commands it to, and both open is normal operation. Both rest open, so a lapsed
|
|
164
|
+
* lease or a stopped gateway leaves the heat pump running normally. Bound together or not
|
|
165
|
+
* at all.
|
|
166
|
+
*
|
|
167
|
+
* They lapse separately, so their leases are ordered: while both are closed, the gateway
|
|
168
|
+
* gives sg_ready_block no longer a lease than sg_ready_boost, so the heat pump never passes
|
|
169
|
+
* through "blocked" on its way back to normal. In general, of two bound inputs, the one
|
|
170
|
+
* whose half-state blocks heat never lapses last.
|
|
171
|
+
*
|
|
172
|
+
* @generated from field: kusinta.iot.heating.v1.ContactBinding sg_ready_block = 1;
|
|
173
|
+
*/
|
|
174
|
+
sgReadyBlock?: ContactBinding | undefined;
|
|
175
|
+
|
|
176
|
+
/**
|
|
177
|
+
* @generated from field: kusinta.iot.heating.v1.ContactBinding sg_ready_boost = 2;
|
|
178
|
+
*/
|
|
179
|
+
sgReadyBoost?: ContactBinding | undefined;
|
|
180
|
+
|
|
181
|
+
/**
|
|
182
|
+
* The input that blocks the heat pump's add-on (electric) heater while closed. Rests
|
|
183
|
+
* open: the add-on heater is allowed.
|
|
184
|
+
*
|
|
185
|
+
* @generated from field: kusinta.iot.heating.v1.ContactBinding add_on_heater_block = 3;
|
|
186
|
+
*/
|
|
187
|
+
addOnHeaterBlock?: ContactBinding | undefined;
|
|
188
|
+
};
|
|
189
|
+
|
|
190
|
+
/**
|
|
191
|
+
* Describes the message kusinta.iot.heating.v1.HeatPumpControl.
|
|
192
|
+
* Use `create(HeatPumpControlSchema)` to create a new message.
|
|
193
|
+
*/
|
|
194
|
+
export declare const HeatPumpControlSchema: GenMessage<HeatPumpControl>;
|
|
195
|
+
|
|
196
|
+
/**
|
|
197
|
+
* One heating circuit of a plant. Supply temperature and its cap are per circuit.
|
|
198
|
+
*
|
|
199
|
+
* @generated from message kusinta.iot.heating.v1.HeatingCircuit
|
|
200
|
+
*/
|
|
201
|
+
export declare type HeatingCircuit = Message<"kusinta.iot.heating.v1.HeatingCircuit"> & {
|
|
202
|
+
/**
|
|
203
|
+
* Assigned by the gateway, unique among heating records; empty when creating.
|
|
204
|
+
*
|
|
205
|
+
* @generated from field: string circuit_id = 1;
|
|
206
|
+
*/
|
|
207
|
+
circuitId: string;
|
|
208
|
+
|
|
209
|
+
/**
|
|
210
|
+
* @generated from field: string plant_id = 2;
|
|
211
|
+
*/
|
|
212
|
+
plantId: string;
|
|
213
|
+
|
|
214
|
+
/**
|
|
215
|
+
* @generated from field: string name = 3;
|
|
216
|
+
*/
|
|
217
|
+
name: string;
|
|
218
|
+
|
|
219
|
+
/**
|
|
220
|
+
* @generated from oneof kusinta.iot.heating.v1.HeatingCircuit.distribution
|
|
221
|
+
*/
|
|
222
|
+
distribution: {
|
|
223
|
+
/**
|
|
224
|
+
* @generated from field: kusinta.iot.heating.v1.RadiatorCircuit radiator = 4;
|
|
225
|
+
*/
|
|
226
|
+
value: RadiatorCircuit;
|
|
227
|
+
case: "radiator";
|
|
228
|
+
} | {
|
|
229
|
+
/**
|
|
230
|
+
* @generated from field: kusinta.iot.heating.v1.FloorCircuit floor = 5;
|
|
231
|
+
*/
|
|
232
|
+
value: FloorCircuit;
|
|
233
|
+
case: "floor";
|
|
234
|
+
} | { case: undefined; value?: undefined };
|
|
235
|
+
|
|
236
|
+
/**
|
|
237
|
+
* See the file comment.
|
|
238
|
+
*
|
|
239
|
+
* @generated from field: uint64 revision = 6;
|
|
240
|
+
*/
|
|
241
|
+
revision: bigint;
|
|
242
|
+
};
|
|
243
|
+
|
|
244
|
+
/**
|
|
245
|
+
* Describes the message kusinta.iot.heating.v1.HeatingCircuit.
|
|
246
|
+
* Use `create(HeatingCircuitSchema)` to create a new message.
|
|
247
|
+
*/
|
|
248
|
+
export declare const HeatingCircuitSchema: GenMessage<HeatingCircuit>;
|
|
249
|
+
|
|
250
|
+
/**
|
|
251
|
+
* A radiator circuit. Its valves belong to the rooms (climate.v1.RoomClimate).
|
|
252
|
+
*
|
|
253
|
+
* @generated from message kusinta.iot.heating.v1.RadiatorCircuit
|
|
254
|
+
*/
|
|
255
|
+
export declare type RadiatorCircuit = Message<"kusinta.iot.heating.v1.RadiatorCircuit"> & {
|
|
256
|
+
};
|
|
257
|
+
|
|
258
|
+
/**
|
|
259
|
+
* Describes the message kusinta.iot.heating.v1.RadiatorCircuit.
|
|
260
|
+
* Use `create(RadiatorCircuitSchema)` to create a new message.
|
|
261
|
+
*/
|
|
262
|
+
export declare const RadiatorCircuitSchema: GenMessage<RadiatorCircuit>;
|
|
263
|
+
|
|
264
|
+
/**
|
|
265
|
+
* Hydronic floor heating: its own pump, mixing and supply cap, and the floor zones on its
|
|
266
|
+
* manifold.
|
|
267
|
+
*
|
|
268
|
+
* @generated from message kusinta.iot.heating.v1.FloorCircuit
|
|
269
|
+
*/
|
|
270
|
+
export declare type FloorCircuit = Message<"kusinta.iot.heating.v1.FloorCircuit"> & {
|
|
271
|
+
/**
|
|
272
|
+
* Whether a mixing valve feeds the circuit.
|
|
273
|
+
*
|
|
274
|
+
* @generated from field: bool mixing_valve = 1;
|
|
275
|
+
*/
|
|
276
|
+
mixingValve: boolean;
|
|
277
|
+
|
|
278
|
+
/**
|
|
279
|
+
* The supply temperature its self-acting limiter caps it at, in centidegrees. Absent: not
|
|
280
|
+
* known, never 0 °C.
|
|
281
|
+
*
|
|
282
|
+
* @generated from field: optional sint32 supply_cap_centidegrees = 2;
|
|
283
|
+
*/
|
|
284
|
+
supplyCapCentidegrees?: number | undefined;
|
|
285
|
+
|
|
286
|
+
/**
|
|
287
|
+
* Probes on the supply (after mixing) and the return.
|
|
288
|
+
*
|
|
289
|
+
* @generated from field: kusinta.iot.heating.v1.DeviceAttribute supply_probe = 3;
|
|
290
|
+
*/
|
|
291
|
+
supplyProbe?: DeviceAttribute | undefined;
|
|
292
|
+
|
|
293
|
+
/**
|
|
294
|
+
* @generated from field: kusinta.iot.heating.v1.DeviceAttribute return_probe = 4;
|
|
295
|
+
*/
|
|
296
|
+
returnProbe?: DeviceAttribute | undefined;
|
|
297
|
+
};
|
|
298
|
+
|
|
299
|
+
/**
|
|
300
|
+
* Describes the message kusinta.iot.heating.v1.FloorCircuit.
|
|
301
|
+
* Use `create(FloorCircuitSchema)` to create a new message.
|
|
302
|
+
*/
|
|
303
|
+
export declare const FloorCircuitSchema: GenMessage<FloorCircuit>;
|
|
304
|
+
|
|
305
|
+
/**
|
|
306
|
+
* One loop or group of loops on a floor circuit's manifold, switched by one output on its
|
|
307
|
+
* wiring centre's thermostat input. The output's contact closed means the zone heats, and it
|
|
308
|
+
* rests closed: when the gateway is gone the zone heats, capped only by the circuit's supply
|
|
309
|
+
* limiter.
|
|
310
|
+
*
|
|
311
|
+
* @generated from message kusinta.iot.heating.v1.FloorZone
|
|
312
|
+
*/
|
|
313
|
+
export declare type FloorZone = Message<"kusinta.iot.heating.v1.FloorZone"> & {
|
|
314
|
+
/**
|
|
315
|
+
* Assigned by the gateway, unique among heating records; empty when creating.
|
|
316
|
+
*
|
|
317
|
+
* @generated from field: string zone_id = 1;
|
|
318
|
+
*/
|
|
319
|
+
zoneId: string;
|
|
320
|
+
|
|
321
|
+
/**
|
|
322
|
+
* A FLOOR circuit.
|
|
323
|
+
*
|
|
324
|
+
* @generated from field: string circuit_id = 2;
|
|
325
|
+
*/
|
|
326
|
+
circuitId: string;
|
|
327
|
+
|
|
328
|
+
/**
|
|
329
|
+
* As marked on the manifold or the drawing ("SL 2").
|
|
330
|
+
*
|
|
331
|
+
* @generated from field: string name = 3;
|
|
332
|
+
*/
|
|
333
|
+
name: string;
|
|
334
|
+
|
|
335
|
+
/**
|
|
336
|
+
* @generated from field: kusinta.iot.heating.v1.ContactBinding output = 4;
|
|
337
|
+
*/
|
|
338
|
+
output?: ContactBinding | undefined;
|
|
339
|
+
|
|
340
|
+
/**
|
|
341
|
+
* The rooms the zone heats, each a room within its plant's space, listed once, with a
|
|
342
|
+
* share above 0 and shares summing to 1000. A zone may heat several rooms and a room may
|
|
343
|
+
* be heated by several zones. A put names at least one; empty only for a zone whose rooms
|
|
344
|
+
* were all deleted, which is uncontrolled (see the file comment, UNCONTROLLED ZONES).
|
|
345
|
+
*
|
|
346
|
+
* @generated from field: repeated kusinta.iot.heating.v1.FloorZoneRoom rooms = 5;
|
|
347
|
+
*/
|
|
348
|
+
rooms: FloorZoneRoom[];
|
|
349
|
+
|
|
350
|
+
/**
|
|
351
|
+
* One of rooms. Only its error, its sensor and its open window steer the zone. A put names
|
|
352
|
+
* one; unset only once a deletion cleared it, and always while rooms is empty. A zone
|
|
353
|
+
* without one is uncontrolled (see the file comment, UNCONTROLLED ZONES).
|
|
354
|
+
*
|
|
355
|
+
* @generated from field: kusinta.iot.identity.v1.SpaceId control_room_id = 6;
|
|
356
|
+
*/
|
|
357
|
+
controlRoomId?: SpaceId | undefined;
|
|
358
|
+
|
|
359
|
+
/**
|
|
360
|
+
* See the file comment.
|
|
361
|
+
*
|
|
362
|
+
* @generated from field: uint64 revision = 7;
|
|
363
|
+
*/
|
|
364
|
+
revision: bigint;
|
|
365
|
+
|
|
366
|
+
/**
|
|
367
|
+
* While the zone is uncontrolled — no room, or no control room (see the file comment,
|
|
368
|
+
* UNCONTROLLED ZONES): since when it has been so, and the user whose change left it so — the
|
|
369
|
+
* deletion of its control room or its last room; uncontrolled_by is unset where no user's
|
|
370
|
+
* change did. Both unset while the zone is controlled. Read-only: set by the gateway, ignored
|
|
371
|
+
* in a put. A put that names a control room among its rooms ends it.
|
|
372
|
+
*
|
|
373
|
+
* uncontrolled_by is erased at the home's wipe with the record of who did what in the home
|
|
374
|
+
* (webrtc.v1 household.proto, WIPE); uncontrolled_since stays with the zone, which describes
|
|
375
|
+
* the house.
|
|
376
|
+
*
|
|
377
|
+
* For a home's zone — one left uncontrolled stays whose it was — sent only to the home's
|
|
378
|
+
* household admins (access.v1.MEMBERSHIP_RELATION_HOUSEHOLD_ADMIN) and an installer under a
|
|
379
|
+
* commissioning grant on the home, and unset for the home's other residents; never sent to
|
|
380
|
+
* service. Unset, too, when it dates from before the recipient's current residency in the
|
|
381
|
+
* home, or from a home they did not live in at the time (see access.v1.MembershipRelation).
|
|
382
|
+
* While the home is empty (webrtc.v1 household.proto, EMPTY HOME), the property owner and the
|
|
383
|
+
* gateway administrators who reach it are sent uncontrolled_since, never uncontrolled_by (see
|
|
384
|
+
* the file comment).
|
|
385
|
+
* For a zone outside homes, sent to whoever is given the zone. That rooms is empty, or
|
|
386
|
+
* control_room_id unset, is what says the zone is uncontrolled; these say only since when
|
|
387
|
+
* and by whom, where the recipient is given them.
|
|
388
|
+
*
|
|
389
|
+
* @generated from field: google.protobuf.Timestamp uncontrolled_since = 8;
|
|
390
|
+
*/
|
|
391
|
+
uncontrolledSince?: Timestamp | undefined;
|
|
392
|
+
|
|
393
|
+
/**
|
|
394
|
+
* @generated from field: kusinta.iot.identity.v1.UserId uncontrolled_by = 9;
|
|
395
|
+
*/
|
|
396
|
+
uncontrolledBy?: UserId | undefined;
|
|
397
|
+
};
|
|
398
|
+
|
|
399
|
+
/**
|
|
400
|
+
* Describes the message kusinta.iot.heating.v1.FloorZone.
|
|
401
|
+
* Use `create(FloorZoneSchema)` to create a new message.
|
|
402
|
+
*/
|
|
403
|
+
export declare const FloorZoneSchema: GenMessage<FloorZone>;
|
|
404
|
+
|
|
405
|
+
/**
|
|
406
|
+
* @generated from message kusinta.iot.heating.v1.FloorZoneRoom
|
|
407
|
+
*/
|
|
408
|
+
export declare type FloorZoneRoom = Message<"kusinta.iot.heating.v1.FloorZoneRoom"> & {
|
|
409
|
+
/**
|
|
410
|
+
* @generated from field: kusinta.iot.identity.v1.SpaceId room_id = 1;
|
|
411
|
+
*/
|
|
412
|
+
roomId?: SpaceId | undefined;
|
|
413
|
+
|
|
414
|
+
/**
|
|
415
|
+
* This room's share of the zone's loop area, in thousandths.
|
|
416
|
+
*
|
|
417
|
+
* @generated from field: uint32 area_share_permille = 2;
|
|
418
|
+
*/
|
|
419
|
+
areaSharePermille: number;
|
|
420
|
+
};
|
|
421
|
+
|
|
422
|
+
/**
|
|
423
|
+
* Describes the message kusinta.iot.heating.v1.FloorZoneRoom.
|
|
424
|
+
* Use `create(FloorZoneRoomSchema)` to create a new message.
|
|
425
|
+
*/
|
|
426
|
+
export declare const FloorZoneRoomSchema: GenMessage<FloorZoneRoom>;
|
|
427
|
+
|
|
428
|
+
/**
|
|
429
|
+
* An electric load kept warm for comfort rather than heating a room to a target — a heated
|
|
430
|
+
* bathroom floor, a towel heater — run inside its time windows. Its output's contact closed
|
|
431
|
+
* means the load may heat under its own thermostat, and it rests closed: when the gateway is
|
|
432
|
+
* gone the load works as it did before.
|
|
433
|
+
*
|
|
434
|
+
* @generated from message kusinta.iot.heating.v1.ComfortLoad
|
|
435
|
+
*/
|
|
436
|
+
export declare type ComfortLoad = Message<"kusinta.iot.heating.v1.ComfortLoad"> & {
|
|
437
|
+
/**
|
|
438
|
+
* Assigned by the gateway, unique among heating records; empty when creating.
|
|
439
|
+
*
|
|
440
|
+
* @generated from field: string comfort_load_id = 1;
|
|
441
|
+
*/
|
|
442
|
+
comfortLoadId: string;
|
|
443
|
+
|
|
444
|
+
/**
|
|
445
|
+
* @generated from field: kusinta.iot.identity.v1.SpaceId room_id = 2;
|
|
446
|
+
*/
|
|
447
|
+
roomId?: SpaceId | undefined;
|
|
448
|
+
|
|
449
|
+
/**
|
|
450
|
+
* @generated from field: string name = 3;
|
|
451
|
+
*/
|
|
452
|
+
name: string;
|
|
453
|
+
|
|
454
|
+
/**
|
|
455
|
+
* @generated from field: kusinta.iot.heating.v1.ContactBinding output = 4;
|
|
456
|
+
*/
|
|
457
|
+
output?: ContactBinding | undefined;
|
|
458
|
+
|
|
459
|
+
/**
|
|
460
|
+
* When the load may heat: the union of its windows, at most 16. Empty: only when the
|
|
461
|
+
* plan allows it for price. Set with SetComfortWindows, never in a put, which keeps them.
|
|
462
|
+
* While the building's time zone is not known (space.v1.Space.time_zone unset) no window
|
|
463
|
+
* applies and the load is left at rest, heating under its own thermostat.
|
|
464
|
+
*
|
|
465
|
+
* @generated from field: repeated kusinta.iot.heating.v1.ComfortWindow windows = 5;
|
|
466
|
+
*/
|
|
467
|
+
windows: ComfortWindow[];
|
|
468
|
+
|
|
469
|
+
/**
|
|
470
|
+
* See the file comment.
|
|
471
|
+
*
|
|
472
|
+
* @generated from field: uint64 revision = 6;
|
|
473
|
+
*/
|
|
474
|
+
revision: bigint;
|
|
475
|
+
|
|
476
|
+
/**
|
|
477
|
+
* Set by the gateway and bumped by every SetComfortWindows; see SetComfortWindows.
|
|
478
|
+
*
|
|
479
|
+
* @generated from field: uint64 windows_revision = 7;
|
|
480
|
+
*/
|
|
481
|
+
windowsRevision: bigint;
|
|
482
|
+
|
|
483
|
+
/**
|
|
484
|
+
* Set when windows is left out for the recipient — an installer under a commissioning
|
|
485
|
+
* grant — so that an empty list is not read as "only when the plan allows it for price".
|
|
486
|
+
*
|
|
487
|
+
* @generated from field: bool windows_withheld = 8;
|
|
488
|
+
*/
|
|
489
|
+
windowsWithheld: boolean;
|
|
490
|
+
};
|
|
491
|
+
|
|
492
|
+
/**
|
|
493
|
+
* Describes the message kusinta.iot.heating.v1.ComfortLoad.
|
|
494
|
+
* Use `create(ComfortLoadSchema)` to create a new message.
|
|
495
|
+
*/
|
|
496
|
+
export declare const ComfortLoadSchema: GenMessage<ComfortLoad>;
|
|
497
|
+
|
|
498
|
+
/**
|
|
499
|
+
* A recurring stretch of the building's local day (space.v1.Space.time_zone).
|
|
500
|
+
*
|
|
501
|
+
* @generated from message kusinta.iot.heating.v1.ComfortWindow
|
|
502
|
+
*/
|
|
503
|
+
export declare type ComfortWindow = Message<"kusinta.iot.heating.v1.ComfortWindow"> & {
|
|
504
|
+
/**
|
|
505
|
+
* The days it starts on: bit 0 Monday through bit 6 Sunday, at least one, no higher bit.
|
|
506
|
+
* Not Matter's day bitmap, which starts on Sunday.
|
|
507
|
+
*
|
|
508
|
+
* @generated from field: uint32 weekdays = 1;
|
|
509
|
+
*/
|
|
510
|
+
weekdays: number;
|
|
511
|
+
|
|
512
|
+
/**
|
|
513
|
+
* Minutes after local midnight: start 0–1439, end 1–1440 and exclusive, never equal, so 0
|
|
514
|
+
* to 1440 is a whole day. A window whose end is before its start runs past midnight into
|
|
515
|
+
* the next day.
|
|
516
|
+
*
|
|
517
|
+
* On a day that changes to or from daylight saving, minutes are local wall-clock time: a
|
|
518
|
+
* start or end in the skipped hour falls at the first minute after it, and a repeated
|
|
519
|
+
* hour counts once, at its first occurrence.
|
|
520
|
+
*
|
|
521
|
+
* @generated from field: uint32 start_minute = 2;
|
|
522
|
+
*/
|
|
523
|
+
startMinute: number;
|
|
524
|
+
|
|
525
|
+
/**
|
|
526
|
+
* @generated from field: uint32 end_minute = 3;
|
|
527
|
+
*/
|
|
528
|
+
endMinute: number;
|
|
529
|
+
};
|
|
530
|
+
|
|
531
|
+
/**
|
|
532
|
+
* Describes the message kusinta.iot.heating.v1.ComfortWindow.
|
|
533
|
+
* Use `create(ComfortWindowSchema)` to create a new message.
|
|
534
|
+
*/
|
|
535
|
+
export declare const ComfortWindowSchema: GenMessage<ComfortWindow>;
|
|
536
|
+
|
|
537
|
+
/**
|
|
538
|
+
* The heating records a caller may see under a space, in reply to ListHeating.
|
|
539
|
+
*
|
|
540
|
+
* @generated from message kusinta.iot.heating.v1.HeatingLayout
|
|
541
|
+
*/
|
|
542
|
+
export declare type HeatingLayout = Message<"kusinta.iot.heating.v1.HeatingLayout"> & {
|
|
543
|
+
/**
|
|
544
|
+
* @generated from field: repeated kusinta.iot.heating.v1.HeatingPlant plants = 1;
|
|
545
|
+
*/
|
|
546
|
+
plants: HeatingPlant[];
|
|
547
|
+
|
|
548
|
+
/**
|
|
549
|
+
* @generated from field: repeated kusinta.iot.heating.v1.HeatingCircuit circuits = 2;
|
|
550
|
+
*/
|
|
551
|
+
circuits: HeatingCircuit[];
|
|
552
|
+
|
|
553
|
+
/**
|
|
554
|
+
* @generated from field: repeated kusinta.iot.heating.v1.FloorZone floor_zones = 3;
|
|
555
|
+
*/
|
|
556
|
+
floorZones: FloorZone[];
|
|
557
|
+
|
|
558
|
+
/**
|
|
559
|
+
* @generated from field: repeated kusinta.iot.heating.v1.ComfortLoad comfort_loads = 4;
|
|
560
|
+
*/
|
|
561
|
+
comfortLoads: ComfortLoad[];
|
|
562
|
+
};
|
|
563
|
+
|
|
564
|
+
/**
|
|
565
|
+
* Describes the message kusinta.iot.heating.v1.HeatingLayout.
|
|
566
|
+
* Use `create(HeatingLayoutSchema)` to create a new message.
|
|
567
|
+
*/
|
|
568
|
+
export declare const HeatingLayoutSchema: GenMessage<HeatingLayout>;
|
|
569
|
+
|
|
570
|
+
/**
|
|
571
|
+
* One heating record as stored, in reply to a put.
|
|
572
|
+
*
|
|
573
|
+
* @generated from message kusinta.iot.heating.v1.HeatingRecord
|
|
574
|
+
*/
|
|
575
|
+
export declare type HeatingRecord = Message<"kusinta.iot.heating.v1.HeatingRecord"> & {
|
|
576
|
+
/**
|
|
577
|
+
* @generated from oneof kusinta.iot.heating.v1.HeatingRecord.record
|
|
578
|
+
*/
|
|
579
|
+
record: {
|
|
580
|
+
/**
|
|
581
|
+
* @generated from field: kusinta.iot.heating.v1.HeatingPlant plant = 1;
|
|
582
|
+
*/
|
|
583
|
+
value: HeatingPlant;
|
|
584
|
+
case: "plant";
|
|
585
|
+
} | {
|
|
586
|
+
/**
|
|
587
|
+
* @generated from field: kusinta.iot.heating.v1.HeatingCircuit circuit = 2;
|
|
588
|
+
*/
|
|
589
|
+
value: HeatingCircuit;
|
|
590
|
+
case: "circuit";
|
|
591
|
+
} | {
|
|
592
|
+
/**
|
|
593
|
+
* @generated from field: kusinta.iot.heating.v1.FloorZone floor_zone = 3;
|
|
594
|
+
*/
|
|
595
|
+
value: FloorZone;
|
|
596
|
+
case: "floorZone";
|
|
597
|
+
} | {
|
|
598
|
+
/**
|
|
599
|
+
* @generated from field: kusinta.iot.heating.v1.ComfortLoad comfort_load = 4;
|
|
600
|
+
*/
|
|
601
|
+
value: ComfortLoad;
|
|
602
|
+
case: "comfortLoad";
|
|
603
|
+
} | { case: undefined; value?: undefined };
|
|
604
|
+
};
|
|
605
|
+
|
|
606
|
+
/**
|
|
607
|
+
* Describes the message kusinta.iot.heating.v1.HeatingRecord.
|
|
608
|
+
* Use `create(HeatingRecordSchema)` to create a new message.
|
|
609
|
+
*/
|
|
610
|
+
export declare const HeatingRecordSchema: GenMessage<HeatingRecord>;
|
|
611
|
+
|
|
612
|
+
/**
|
|
613
|
+
* @generated from enum kusinta.iot.heating.v1.HeatSourceKind
|
|
614
|
+
*/
|
|
615
|
+
export enum HeatSourceKind {
|
|
616
|
+
/**
|
|
617
|
+
* @generated from enum value: HEAT_SOURCE_KIND_UNSPECIFIED = 0;
|
|
618
|
+
*/
|
|
619
|
+
UNSPECIFIED = 0,
|
|
620
|
+
|
|
621
|
+
/**
|
|
622
|
+
* @generated from enum value: HEAT_SOURCE_KIND_EXHAUST_AIR_HEAT_PUMP = 1;
|
|
623
|
+
*/
|
|
624
|
+
EXHAUST_AIR_HEAT_PUMP = 1,
|
|
625
|
+
|
|
626
|
+
/**
|
|
627
|
+
* @generated from enum value: HEAT_SOURCE_KIND_GROUND_SOURCE_HEAT_PUMP = 2;
|
|
628
|
+
*/
|
|
629
|
+
GROUND_SOURCE_HEAT_PUMP = 2,
|
|
630
|
+
|
|
631
|
+
/**
|
|
632
|
+
* @generated from enum value: HEAT_SOURCE_KIND_AIR_WATER_HEAT_PUMP = 3;
|
|
633
|
+
*/
|
|
634
|
+
AIR_WATER_HEAT_PUMP = 3,
|
|
635
|
+
|
|
636
|
+
/**
|
|
637
|
+
* @generated from enum value: HEAT_SOURCE_KIND_DISTRICT_HEATING = 4;
|
|
638
|
+
*/
|
|
639
|
+
DISTRICT_HEATING = 4,
|
|
640
|
+
|
|
641
|
+
/**
|
|
642
|
+
* @generated from enum value: HEAT_SOURCE_KIND_ELECTRIC_BOILER = 5;
|
|
643
|
+
*/
|
|
644
|
+
ELECTRIC_BOILER = 5,
|
|
645
|
+
|
|
646
|
+
/**
|
|
647
|
+
* @generated from enum value: HEAT_SOURCE_KIND_FUEL_BOILER = 6;
|
|
648
|
+
*/
|
|
649
|
+
FUEL_BOILER = 6,
|
|
650
|
+
}
|
|
651
|
+
|
|
652
|
+
/**
|
|
653
|
+
* Describes the enum kusinta.iot.heating.v1.HeatSourceKind.
|
|
654
|
+
*/
|
|
655
|
+
export declare const HeatSourceKindSchema: GenEnum<HeatSourceKind>;
|
|
656
|
+
|