The `cofycloud` container forms the bridge between the CoFyBox to the CoFyCloud server. It is responsible for device registration, sending data and syncing device properties.

# ¶ Device Registration

Read the cofycloud DPS article for more information

# ¶ Data Sender

Sensors data is stored locally in the InfluxDB at the time of the measurement.The upload component queries the database every 5 minutes and uploads a computed value for a (5 minute) rounded timestamp to the cloud.

### ¶ Aggregation strategies

The aggregation strategy of the sensor data to one value every 5 minutes depends on the metric kind of the sensors.

Cumulative, gauge and actuator - Forward fill
The timestamps of the time series are extended with (5 minute) rounded timestamps.The timestamps without a measurement value are given the same value as the previous timestamp.The values for the rounded timestamps are ready to be uploaded.

Total and delta - Linear interpolation
Measurement time intervals are fixed, unlike cumulative counters, gauges and actuators.This means the data can already stored on rounded timestamps in the local database.
If this is not possible it should be interpolated.The timestamps of the time series are extended with (5 minute) rounded timestamps.The timestamps without a measurement value are given a value based on the interpolation of the previous value from the previous timestamp to the next.The time series is grouped by the target interval (5 minutes) and summed.

# ¶ Device properties synchronization

The physical device is the authoritative source for device properties. Selected values on the physical device are automatically synchronized to the device twin in the CofyCloud through the api.

Read more on device synchronization.

> Immutable properties can only be sent to the cloud during provisioning. When the digital twin is created these properties cannot be updated.