2025-07-22 23:21:34 +02:00
|
|
|
export type VinculumPd7Device = {
|
|
|
|
client?: {
|
|
|
|
// User-defined device name
|
2025-07-23 20:24:14 +02:00
|
|
|
name?: string | null;
|
|
|
|
} | null;
|
|
|
|
id: number;
|
2025-07-25 01:04:46 +02:00
|
|
|
// "Model" string, e.g. "zb - _TZ3040_bb6xaihh - TS0202"
|
|
|
|
// The first one is the adapter, the second one is the manufacturer, the third one is the device model.
|
2025-07-23 20:24:14 +02:00
|
|
|
model?: string | null;
|
2025-07-25 01:04:46 +02:00
|
|
|
// Device model, e.g. "TS0202"
|
2025-07-23 20:24:14 +02:00
|
|
|
modelAlias?: string | null;
|
2025-07-24 16:34:58 +02:00
|
|
|
functionality?:
|
|
|
|
| 'appliance'
|
|
|
|
| 'climate'
|
|
|
|
| 'energy'
|
|
|
|
| 'ev_charger'
|
|
|
|
| 'lighting'
|
|
|
|
| 'media'
|
|
|
|
| 'other'
|
|
|
|
| 'power'
|
|
|
|
| 'safety'
|
|
|
|
| 'security'
|
|
|
|
| 'shading'
|
|
|
|
| string
|
|
|
|
| null;
|
2025-07-23 20:24:14 +02:00
|
|
|
services?: Record<string, VinculumPd7Service> | null;
|
2025-07-22 23:21:34 +02:00
|
|
|
type?: {
|
2025-07-24 23:14:34 +02:00
|
|
|
// User-defined device type
|
|
|
|
type?:
|
|
|
|
| 'appliance'
|
|
|
|
| 'battery'
|
|
|
|
| 'blinds'
|
|
|
|
| 'boiler'
|
|
|
|
| 'chargepoint'
|
|
|
|
| 'door_lock'
|
2025-07-25 16:33:08 +02:00
|
|
|
| 'energy_storage'
|
2025-07-24 23:14:34 +02:00
|
|
|
| 'fan'
|
|
|
|
| 'fire_detector'
|
|
|
|
| 'garage_door'
|
|
|
|
| 'gas_detector'
|
|
|
|
| 'gate'
|
|
|
|
| 'heat_detector'
|
|
|
|
| 'heat_pump'
|
|
|
|
| 'heater'
|
2025-07-25 16:33:08 +02:00
|
|
|
| 'input'
|
|
|
|
| 'inverter'
|
2025-07-24 23:14:34 +02:00
|
|
|
| 'leak_detector'
|
|
|
|
| 'light'
|
|
|
|
| 'media_player'
|
|
|
|
| 'meter'
|
2025-07-25 16:33:08 +02:00
|
|
|
| 'none'
|
2025-07-24 23:14:34 +02:00
|
|
|
| 'sensor'
|
|
|
|
| 'siren'
|
|
|
|
| 'thermostat'
|
|
|
|
| 'water_valve'
|
|
|
|
| string
|
|
|
|
| null;
|
|
|
|
// User-defined device subtype
|
|
|
|
subtype?:
|
|
|
|
| 'car_charger'
|
|
|
|
| 'door'
|
|
|
|
| 'door_lock'
|
|
|
|
| 'garage'
|
|
|
|
| 'lock'
|
|
|
|
| 'main_elec'
|
2025-07-25 16:33:08 +02:00
|
|
|
| 'none'
|
|
|
|
| 'other'
|
2025-07-24 23:14:34 +02:00
|
|
|
| 'presence'
|
|
|
|
| 'scene'
|
|
|
|
| 'window'
|
|
|
|
| 'window_lock'
|
|
|
|
| string
|
|
|
|
| null;
|
2025-07-23 20:24:14 +02:00
|
|
|
} | null;
|
|
|
|
};
|
|
|
|
|
|
|
|
export type VinculumPd7Service = {
|
|
|
|
// Address of the service, e.g. "/rt:dev/rn:zigbee/ad:1/sv:color_ctrl/ad:3_1"
|
|
|
|
addr: string;
|
|
|
|
// Whether the service is enabled or not.
|
|
|
|
enabled?: boolean | null;
|
|
|
|
// Interfaces exposed by the service, e.g. ['cmd.meter.get_report','evt.meter.report'].
|
|
|
|
intf?: string[] | null;
|
|
|
|
// Properties of the service, e.g. ['sup_units'] or ['sup_modes','sup_setpoints','sup_temperatures'].
|
|
|
|
props?: {
|
|
|
|
[key: string]: any;
|
|
|
|
} | null;
|
2025-07-22 23:21:34 +02:00
|
|
|
};
|