-
Notifications
You must be signed in to change notification settings - Fork 2
Cloud Integrations
SolarNetwork provides a fully-managed cloud service integration layer that allows you to work with external services within SolarNetwork.
SolarNetwork has support for the following cloud services:
Service | Supported features |
---|---|
AlsoEnergy | Cloud Datum Stream |
eGauge | Cloud Datum Stream |
Locus Energy (AlsoEnergy) | Cloud Datum Stream |
OpenWeatherMap | Cloud Datum Stream |
SolarEdge | Cloud Datum Stream |
Solcast | Cloud Datum Stream |
SolrenView (Solectria) | Cloud Datum Stream |
If you do not see a cloud integration for the service you would like to integrate with, email us!
The Cloud Datum Stream integration allows you to acquire data from external systems, when you do not have a SolarNode edge device delpoyed to collect the data directly. Some device manufacturers have deployed their own cloud services that their devices publish data to, so a Cloud Datum Stream integration can help to get that data into SolarNetwork.
The system works like this:
- Create a Cloud Integration configuration for a supported cloud service with details like credentials for accessing the service.
- Create a Cloud Datum Stream Mapping configuration that maps the service's data attributes into datum stream properties.
- Create a Cloud Datum Stream configuration that defines a SolarNetwork datum stream with a node ID, source ID, and details like the frequency at which you would like to collect the data (if the integration requires polling for data), along with the Cloud Datum Stream Mapping to use.
- If the service requires polling for data, create a Cloud Datum Stream Poll Task configuration to start collecting the data.
Once these steps are completed, SolarNetwork will work automatically to collect the data into SolarNetwork, where you can access it with all the APIs SolarNetwork offers.
Within SolarNetwork, the following entities are managed via the SolarUser Cloud Integrations API:
Entity | Description |
---|---|
Cloud Integration | A cloud service to integrate with, and the details like credentials necessary to access the service. For example "Locus Energy". |
Cloud Datum Stream Mapping | A group of Cloud Datum Stream Mapping Property entities associated with a specific Cloud Integration. For example "Inverter device". |
Cloud Datum Stream Mapping Property | Maps a single cloud service data attribute to a SolarNetwork datum property. For example "AC power". |
Cloud Datum Stream | SolarNetwork datum stream details such as node ID and source ID, associated with a Cloud Datum Stream Mapping. |
Cloud Datum Stream Poll Task | For cloud services that require polling for data, details about the state of the polling task. |
The Cloud Integration entity represents a cloud service to integrate with, and the details like
credentials necessary to access the service. The serviceIdentifier
property is configured with the
identifier of a supported service. The supported services can be listed with the Integration
Services list endpoint.
See the Cloud Integration API for more information.
The Cloud Datum Stream Mapping entity represents a group of Cloud Datum Stream Mapping Property entities that represents the mapping of a set of cloud data values to a complete SolarNetwork datum stream.
See the Cloud Datum Stream Mapping API for more information.
The Cloud Datum Stream Mapping Property entity represents a mapping of a single cloud data value to a SolarNetwork datum stream property, or an expression that derives a value from other cloud data values.
See the Cloud Datum Stream Mapping Property API for more information.
To discover the possible valueReference
values that can be configured on Cloud Datum Stream
Mapping Property entities, SolarNetwork provides a
Data Values API that models a tree-like
hierarchy of cloud serice components you can query. Conceptually the tree can be visualized like
this:
The lowest leaf nodes within the tree provide a reference
value that can be used as
valueReference
values. Below is an example diagram that shows how a cloud service's data value
model could be represented by this structure. Each box represents a Data Value, with it's name
and identifiers on the left side with its associated metadata on the right side:
The Cloud Datum Stream entity represents a mapping of cloud data values to a SolarNetwork datum
stream. The serviceIdentifier
property is configured with the identifier of a supported Cloud
Datum Stream service. The supported services can be listed with the Datum Stream Services
list endpoint.
The Cloud Datum Stream Poll Task entity represents the runtime state of a datum stream poll task, specific to a Cloud Datum Stream.
See the Cloud Datum Stream Poll Task API for more information.
The various Cloud Integration services generate application events. The following event tags are used:
Tag | Description |
---|---|
c2c |
All events include this tag, representing the Cloud Integrations system |
error |
If the event relates to an error, this tag is included |
auth |
For authentication and authorization events |
http |
For HTTP related events |
expr |
For Expression related events |
The following standard event data properties are used:
Property | Description |
---|---|
configId |
A primary key for an entity related to the event |
subId |
A secondary primary key for an entity related to the event |
message |
An additional detail message |
source |
A reference to the cause of the event, such as the location of an error |
- SolarNetwork API access
- SolarNetwork API authentication
- SolarNetwork global objects
- SolarNetwork aggregation
- SolarFlux API
- SolarIn API
- SolarQuery API
-
SolarUser API
- SolarUser enumerated types
- SolarUser datum expire API
- SolarUser datum export API
- SolarUser datum import API
- SolarUser event hook API
- SolarUser location request API
- SolarUser Cloud Integrations API
- SolarUser DIN API
- SolarUser DNP3 API
- SolarUser ININ API
- SolarUser OCPP API
- SolarUser OSCP API
- SolarUser SolarFlux API