Source: factory.service/package.gekkoridge/ObjServiceSolarman.py
SolarMAN Open API integration service.
Connects to the SolarMAN Open API v1.1.6 to retrieve
plant and device data from solar inverter installations.
Supports authentication, plant listing, real-time and
...
| Method | Signature | Description |
|---|---|---|
| authenticate | authenticate() -> bool |
Obtain an access token from SolarMAN (API 2.1). |
| get_plant_list | get_plant_list(page: int = 1, size: int = 20) -> list[dict] |
Retrieve the list of plants (API 4.4). |
| get_plant_info | get_plant_info(station_id: int) -> dict |
Query detailed plant information (API 4.1). |
| get_plant_realtime | get_plant_realtime(station_id: int) -> dict |
Obtain plant real-time data (API 4.5). |
| get_plant_historical | get_plant_historical(station_id: int, time_type: int = 2, start_time: str = '', end_time: str = '') -> dict |
Obtain plant historical data (API 4.3). |
| get_plant_alerts | get_plant_alerts(station_id: int, page: int = 1, size: int = 20) -> list[dict] |
Obtain plant alert list (API 4.7). |
| get_device_list | get_device_list(station_id: int) -> list[dict] |
Obtain device list for a plant (API 4.2). |
| get_device_realtime | get_device_realtime(device_sn: str) -> dict |
Obtain device real-time data (API 3.3). |
| get_device_historical | get_device_historical(device_sn: str, time_type: int = 1, start_time: str = '', end_time: str = '') -> dict |
Obtain device historical data (API 3.4). |
| get_device_alerts | get_device_alerts(device_sn: str, page: int = 1, size: int = 20) -> list[dict] |
Obtain device alert list (API 3.2). |
| get_device_alert_detail | get_device_alert_detail(device_sn: str, alert_id: str) -> dict |
Get alert details for a device (API 3.1). |
| send_device_command | send_device_command(device_sn: str, command: dict) -> dict |
Issue a device control command (API 3.7). |
| sync_plants | sync_plants() -> int |
Fetch all plants and sync to database. |
| sync_devices | sync_devices(station_id: int) -> int |
Fetch devices for a plant and sync to database. |
| record_solar | record_solar(station_id: int, min_interval: int = 60) -> int |
Fetch real-time data for all inverters in a |
| sync_realtime | sync_realtime(station_id: int) -> int |
Fetch real-time data for all devices in a plant |
| process | process(context: dict) -> dict |
Workflow entry point for SolarMAN operations. |
| run_workflow_direct | run_workflow_direct(guid: str, selector: str) -> str |