@pietrolubini/homebridge-ecoflow
Version:
Homebridge plugin for EcoFlow devices
37 lines (36 loc) • 2.12 kB
TypeScript
import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
import { GlacierAllQuotaData } from '@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts';
import { EcoFlowHttpApiManager } from '@ecoflow/apis/ecoFlowHttpApiManager';
import { EcoFlowMqttApiManager } from '@ecoflow/apis/ecoFlowMqttApiManager';
import { MqttQuotaMessage } from '@ecoflow/apis/interfaces/mqttApiContracts';
import { DeviceConfig } from '@ecoflow/config';
import { BatteryStatusProvider } from '@ecoflow/helpers/batteryStatusProvider';
import { EcoFlowHomebridgePlatform } from '@ecoflow/platform';
import { ServiceBase } from '@ecoflow/services/serviceBase';
import { Logging, PlatformAccessory } from 'homebridge';
export declare class GlacierAccessory extends EcoFlowAccessoryWithQuotaBase<GlacierAllQuotaData> {
private readonly batteryStatusService;
private readonly fridgeDualLeftZoneService;
private readonly fridgeDualRightZoneService;
private readonly fridgeSingleZoneService;
private readonly switchEcoModeService;
private readonly contactSensorDoorService;
private readonly outletBatteryService;
private readonly switchMakeIceSmallService;
private readonly switchMakeIceLargeService;
private readonly switchDetachIceService;
constructor(platform: EcoFlowHomebridgePlatform, accessory: PlatformAccessory, config: DeviceConfig, log: Logging, httpApiManager: EcoFlowHttpApiManager, mqttApiManager: EcoFlowMqttApiManager, batteryStatusProvider: BatteryStatusProvider);
protected getServices(): ServiceBase[];
protected processQuotaMessage(message: MqttQuotaMessage): void;
protected initializeQuota(quota: GlacierAllQuotaData | null): GlacierAllQuotaData;
protected updateInitialValues(initialData: GlacierAllQuotaData): void;
private updateEmsInitialValues;
private updateBmsInitialValues;
private updatePdInitialValues;
private updateEmsValues;
private updateBmsValues;
private updatePdValues;
private updateFridgeZonesValues;
private updateStateValues;
private updateIceMakingValues;
}