@yyberi/fronius-comm
Version:
Library for communicating with Fronius solar inverters
68 lines • 2.17 kB
TypeScript
import { LogLevel } from "@yyberi/logger";
export interface TimeRangeValueData {
time: string;
value: number;
}
export type InverterParamData = {
Value?: number;
Unit?: string;
Values?: Record<string, number>;
};
export type SimpleInverterRealtimeData = {
totalEnergy?: number;
yearEnergy?: number;
dayEnergy?: number;
actPower?: number;
ts?: string;
};
export declare class FroniusClient {
private readonly ip;
private readonly scope;
private readonly deviceId;
private readonly deviceClass;
private readonly logLevel;
constructor(ip: string, scope: string, deviceId: string, deviceClass: string, logLevel?: LogLevel);
/**
* Get realtime data from the inverter.
* @returns {Promise<SimpleInverterRealtimeData>} - Returns an object with totalEnergy, yearEnergy, dayEnergy and actPower.
*/
getRealtimeData(): Promise<SimpleInverterRealtimeData>;
/**
* Send http request to get production data for a specific date or date range.
* @param date
*/
private getProductionData;
/**
*
* @param date
*/
parseEnergyReal_WAC_Sum_Produced_5min(date: string): Promise<TimeRangeValueData[]>;
parseEnergyReal_WAC_Sum_Produced_5min(start: string, end: string): Promise<TimeRangeValueData[]>;
/**
*
* @param date
*/
parseEnergyReal_WAC_Sum_Produced_15min(date: string): Promise<{
data5min: TimeRangeValueData[];
data15min: TimeRangeValueData[];
}>;
parseEnergyReal_WAC_Sum_Produced_15min(start: string, end: string): Promise<{
data5min: TimeRangeValueData[];
data15min: TimeRangeValueData[];
}>;
/**
*
* @param date
*/
parseEnergyReal_WAC_Sum_Produced_All(date: string): Promise<{
data5min: TimeRangeValueData[];
data15min: TimeRangeValueData[];
data60min: TimeRangeValueData[];
}>;
parseEnergyReal_WAC_Sum_Produced_All(start: string, end: string): Promise<{
data5min: TimeRangeValueData[];
data15min: TimeRangeValueData[];
data60min: TimeRangeValueData[];
}>;
}
//# sourceMappingURL=fronius-comm.d.ts.map