Data Flow
This document describes how data flows through the Voltimax IoT Platform across different scenarios.
Telemetry Flow (Edge to Cloud)
- Collection: Gateway polls asset via Modbus/HTTP (5-30s intervals)
- Transform: Convert device-specific format to platform metrics
- Publish: Send telemetry frame to Service Bus via MQTT
- Process: Azure Function validates and enriches data
- Store: Index to Elasticsearch for time-series queries
- Query: Platform API serves metrics to clients
Command Flow (Cloud to Edge)
- Request: Client sends command via Platform API
- Validate: API validates command and user permissions
- Dispatch: Send to
gateway-commandssession queue (SessionId = gatewayId, MessageType discriminator) - Route: Gateway's polymorphic handler reads
MessageTypeand dispatches to the correct handler - Execute: Handler translates to device protocol and executes via Mediator command
- Reply: Handler sends typed response back through session-based reply queue
Available Commands
| Command | Endpoint | Description |
|---|---|---|
PingGatewayRequest | POST /api/messaging/gateways/{gatewayId}/ping | Health check and latency measurement |
SetBatterySetpointRequest | POST /api/messaging/gateways/{gatewayId}/batteries/{name}/setpoint | Set battery charge/discharge setpoint |
RefreshConfigurationRequest | POST /api/messaging/gateways/{gatewayId}/refresh-configuration | Trigger immediate configuration reload |
Pricing Flow (External to Platform)
- Fetch: Azure Function calls ENTSO-E API (hourly)
- Parse: Extract day-ahead prices for configured zones
- Store: Save to PostgreSQL
- Optimize: Energy Advisor uses prices for strategy decisions
- Command: Generate charge/discharge commands for gateways