Services
The Ona Platform is built on a distributed architecture of modular agents, each specializing in a particular task within the Ona Intelligence Layer. These services work together to transform raw operational data into actionable business intelligence through a coordinated, event-driven pipeline.
Each service operates as an independent, specialized agent that:
- Focuses on a single responsibility: From data collection to ML model training, each agent excels at its specific domain
- Communicates through events: Services interact via events, API calls, and message queues, enabling loose coupling and scalability
- Maintains state independently: Each agent manages its own data, configuration, and operational state
- Scales autonomously: Services can scale independently based on their specific workload patterns
- Contributes to the intelligence layer: Together, these agents form the Ona Intelligence Layer that powers the OODA (Observe, Orient, Decide, Act) workflow
This modular architecture enables the platform to handle complex energy management tasks—from real-time anomaly detection to 30+ day predictive forecasting—by orchestrating specialized agents that each bring deep expertise to their domain. Whether collecting data from solar inverters, standardizing multi-OEM formats, training customer-tailored ML models, or generating automated work orders, each service agent plays a critical role in delivering intelligent energy management capabilities.
Data Collection Services
Data Ingestion Service
AI agent that serves as the secure entry point for incoming data, providing pre-signed URLs for direct uploads.
Key Features:
- Secure entry point for data uploads
- Pre-signed URL generation for secure uploads
- Structured logging and metrics
Documentation: See services/dataIngestion/README.md in the platform repository.
Huawei Historical Service
AI agent that collects historical data from Huawei FusionSolar inverters, transforms it to ONA platform format, and uploads to storage.
Key Features:
- Huawei FusionSolar API integration
- Device discovery and data collection
- Weather data enrichment
- Direct upload to historical data storage
Documentation: See services/huaweiHistorical/README.md and services/huaweiHistorical/HUAWEI_API_DOCS.md in the platform repository.
Weather Data Updater Service
AI agent that automatically updates weather data for South African cities by fetching missing data from Visual Crossing API.
Key Features:
- Dynamic date range calculation
- Cost-optimized API usage
- Duplicate prevention
- Support for Cape Town, Johannesburg, and Durban
Documentation: See services/weatherDataUpdater/README.md in the platform repository.
Data Processing Services
Data Standardization Service
AI agent that processes files from historical storage, detects OEM type, standardizes schema, and saves to standardized storage.
Key Features:
- OEM type detection (Huawei, Enphase, Solarman, Telkom/Huawei)
- Schema normalization
- Error code mapping to categorical types
- Timestamp aggregation
Documentation: See services/dataStandardizationService/README.md and services/DATA_STANDARDIZATION_SERVICE_PLAN.md in the platform repository.
Interpolation Service
AI agent that performs ML-based solar data interpolation with comprehensive gap analysis and configuration-driven architecture.
Key Features:
- Configuration-driven interpolation architecture
- Gap analysis and pattern detection
- Multiple interpolation methods (Spline, Gaussian Process, Physics-based, Multi-output regression)
- Adaptive interpolation with R² > 0.99
- Weather integration and solar physics constraints
Documentation: See services/interpolationService/README.md in the platform repository.
Weather Cache Service
AI agent that fetches weather data for all active locations and caches results.
Key Features:
- Asynchronous concurrent API calls
- Rate limiting for external APIs
- Centralized cache storage
- Database integration for location management
Documentation: See services/weatherCache/README.md in the platform repository.
Machine Learning Services
Global Training Service
AI agent that trains forecasting models using customer validation optimization through a hybrid architecture.
Key Features:
- Site-level and device-level training
- Customer validation optimization strategy
- GPU-accelerated model training
- Automatic customer discovery and quality filtering
- Model registry for forecasting API
Documentation: See services/globalTrainingService/README.md in the platform repository.
Forecasting API Service
AI agent that provides solar energy forecasting via API endpoint, loading ML models and generating predictions.
Key Features:
- TensorFlow and Prophet integration
- Redis caching for forecast results
- 30+ day forecasting capabilities
- API specification with OpenAPI
Documentation: See services/forecastingApi/README.md in the platform repository.
Application Services
Terminal API Service
AI agent that serves as the central API handler for the entire O&M OODA workflow, routing requests to appropriate sub-handlers.
Key Features:
- Unified entry point for OODA workflow
- Asset management (Create, Read, List)
- Fault detection and AI diagnostics
- Maintenance scheduling and work orders
- Database integration for state management
Documentation: See services/terminalApi/README.md in the platform repository.
Edge Device Registry Service
AI agent that manages device discovery, registration, and capability detection for distributed edge devices.
Key Features:
- Device discovery and registration
- Capability detection
- Device status tracking
- RESTful API interface
Documentation: See services/edge-device-registry/app.py in the platform repository.
Energy Analyst RAG Service
AI agent that provides RAG-powered energy policy and regulatory compliance analysis.
Key Features:
- Regulatory compliance queries
- Policy analysis
- Document retrieval and analysis
- AI-powered insights
Documentation: See services/energyAnalystRag/README.md and related deployment guides in the platform repository.
Service Architecture
All services follow a consistent architecture pattern:
- Container-based: Built as Docker containers
- Serverless: Deployed as serverless functions
- Base Image: Most services inherit from
ona-baseimage - Logging: Structured logging and metrics
- Metrics: Metrics integration and monitoring
- Storage Integration: Standardized storage structure
- Event-Driven: Events trigger downstream processing
Service Dependencies
Base Image (ona-base)
Common dependencies and utilities shared across services:
- Cloud service SDKs for infrastructure integration
pandasfor data processing- Structured logging and metrics tools
- Common utilities in
utils/common.py
Documentation: See services/base/README.md in the platform repository.
Service Integration Flow
Data Collection → Data Standardization → Training → Forecasting
↓ ↓ ↓ ↓
huaweiHistorical → dataStandardization → globalTraining → forecastingApi
weatherDataUpdater → Service → Service → Service
↓
weatherCache
↓
interpolationService
↓
terminalApi (OODA Workflow)
Getting Started
For detailed documentation on each service, refer to the README files in /home/shingai/platform/services/:
- Navigate to the service directory
- Review the README.md file
- Check environment variables and configuration
- Review build and deployment instructions
Support
For questions or issues with services:
- Email: support@asoba.co
- GitHub Issues: https://github.com/AsobaCloud/platform/issues
- Documentation: https://docs.asoba.co
Contact Support
For technical assistance, feature requests, or any other questions, please reach out to our dedicated support team.
Email Support Join Our Discord© 2025 Asoba Corporation. All rights reserved.