homebridge-homewizard-energy-socket
Version:
This Homebridge plugin exposes your HomeWizard Energy Sockets to Apple HomeKit. So you can use the Home App to switch your Energy Sockets on or off and integrate the Energy Sockets into your Home Automations.
86 lines • 2.92 kB
TypeScript
import { ConfigSchemaEnergySocket } from '../config.schema';
export declare const PLATFORM_MANUFACTURER = "HomeWizard";
export declare const MDNS_DISCOVERY_TYPE = "hwenergy";
export declare const MDNS_DISCOVERY_PROTOCOL = "tcp";
export declare enum HomeWizardDeviceTypes {
WIFI_PI_METER = "HWE-P1",
WIFI_ENERGY_SOCKET = "HWE-SKT",
WIFI_WATER_METER = "HWE-WTR",
WIFI_KWH_METER_PHASE_1 = "SDM230-wifi",
WIFI_KWH_METER_PHASE_2 = "SDM630-wifi"
}
export interface TxtRecord {
api_enabled: string;
path: string;
serial: string;
product_name: string;
product_type: string;
}
export interface EnergySocketAccessoryProperties {
uuid: string;
ip: string;
apiVersion: string;
apiUrl: string;
serialNumber: string;
productName: string;
productType: HomeWizardDeviceTypes;
displayName: string;
firmwareVersion: string;
activePower: number | null;
config?: ConfigSchemaEnergySocket;
}
export interface HomeWizardApiStateResponse {
power_on: boolean;
switch_lock: boolean;
brightness: number;
}
export type HomeWizardApiStatePutParams<Keys extends keyof HomeWizardApiStateResponse> = Pick<HomeWizardApiStateResponse, Keys>;
export interface HomeWizardApiBasicInformationResponse {
product_type: string;
product_name: string;
serial: string;
firmware_version: string;
api_version: string;
}
export interface HomeWizardApiDataResponse {
smr_version?: number;
meter_model?: string;
wifi_ssid?: string;
wifi_strength?: number;
total_power_import_t1_kwh?: number;
total_power_import_t2_kwh?: number;
total_power_export_t1_kwh?: number;
total_power_export_t2_kwh?: number;
active_power_w?: number;
active_power_l1_w?: number;
active_power_l2_w?: number;
active_power_l3_w?: number;
total_gas_m3?: number;
gas_timestamp?: number;
active_liter_lpm?: number;
total_liter_m3?: number;
}
export type EnergySocketDataResponse = Omit<HomeWizardApiDataResponse, 'smr_version' | 'meter_model' | 'total_power_import_t2_kwh' | 'total_power_export_t2_kwh' | 'active_power_l2_w' | 'active_power_l3_w' | 'total_gas_m3' | 'gas_timestamp' | 'active_liter_lpm' | 'total_liter_m3'>;
export type P1MeterDataResponse = Omit<HomeWizardApiDataResponse, 'active_liter_lpm' | 'total_liter_m3'>;
export interface HomeWizardApiIdentifyResponse {
identify: 'ok';
}
export interface HomeWizardEnergyPlatformAccessoryContext {
energySocket: EnergySocketAccessoryProperties;
}
export interface HomeWizardApiErrorResponse {
error: {
id: ErrorCodes;
description: string;
};
}
export declare enum ErrorCodes {
BODY_CONTAINS_INVALID_JSON = 2,
NO_DATA_IN_BODY = 5,
INVALID_VALUE_FOR_PARAMETER = 7,
PARAMETER_IS_NOT_MODIFIABLE = 8,
REQUEST_TO_LONG = 201,
API_DISABLED = 202,
INTERNAL_ERROR = 901
}
//# sourceMappingURL=types.d.ts.map