Bandwidth usage reporting

We are attempting to use the InControl API to retrieve some per-SIM usage data from a fleet of devices.

Using the /sim_usages/hourly function of the API, we are seeing some discrepancies in data reported that I am thinking must be related to the timing of usage data collection/processing. We have been requesting the data once per hour for the prior complete hour. We record the data returned. When we re-run the same request a few hours later to compare, the data usually indicate more usage than was initially returned. Is this expected? What is the expected processing time for the data? Is there some other indicator we should be looking for that would tell us the data may not be complete and we need to re-check later?

Similarly… what happens if a device goes offline/is powered off/loses power just before the interval at which it reports to InControl? Is that data lost, or does it get reported the next time the device reports in?

Devices send SIM usage data to IC2 every 15 minutes at different times. To allow “almost” all devices to send the usage data to IC2, you have to wait for 15 mins every hour before reading the last hour’s usage.

Why I said “almost” because, just as your ask, some devices may be consuming data while they are offline. Devices now keep days of usage data while they are offline from IC2. When they are back online, they will send the data back.

In firmware 8.1.0, devices write the usage data to flash memory every 30 mins. I.e. when a device is offline and its power has lost, at most 30 mins of usage data will be lost. In firmware 8.1.1, devices write the usage data to flash memory every 30 mins or a SIM’s data usage is over 50 MB. That means the deviation will be at most 50 MB for every power cycle.

1 Like