homebridge-poolcontroller-clocklear
Version:
A (semi) private Homebridge plugin for my custom Pool Controller app
34 lines (33 loc) • 1.27 kB
TypeScript
import { API, Characteristic, DynamicPlatformPlugin, Logging, PlatformAccessory, PlatformConfig, Service } from 'homebridge';
import { PoolControllerClient } from './poolControllerClient.js';
export interface PoolControllerConfig {
name?: string;
url: string;
apiKey: string;
relays: string[];
exposeScheduler?: boolean;
exposeLoadSensors?: boolean;
pollIntervalSeconds?: number;
}
/**
* Homebridge platform: one Pool Controller accessory with multiple services.
*/
export declare class PoolControllerHomebridgePlatform implements DynamicPlatformPlugin {
readonly log: Logging;
readonly api: API;
readonly Service: typeof Service;
readonly Characteristic: typeof Characteristic;
readonly accessories: PlatformAccessory[];
readonly client: PoolControllerClient;
readonly config: PlatformConfig & PoolControllerConfig;
private controllerAccessory?;
private pollTimer?;
constructor(log: Logging, config: PlatformConfig & PoolControllerConfig, api: API);
configureAccessory(accessory: PlatformAccessory): void;
private controllerUUID;
private legacyRelayUUID;
discoverDevices(): Promise<void>;
private unregisterLegacyAccessories;
private pollIntervalMs;
private startPoller;
}