Here is an example of Cellocator message that is registered for a Cellocator CelloTrack Nano packet that contains Module 28 General Status Event and Module 42 Nano Inherent Sensors.
{
"channel.id": 111,
"device.battery.level": 71,
"device.firmware.version": "34p",
"device.illuminance": 0,
"device.pressure.altitude": -42.1,
"device.temperature": 38.4,
"device.temperature.valid": false,
"device.x.acceleration": 0.011,
"device.y.acceleration": -0.03025,
"device.z.acceleration": -0.991,
"event.category": 1,
"event.enum": 13,
"gps.mode.1": 4,
"gps.mode.2": 2,
"gsm.signal.dbm": -77,
"hardware.version.enum": 122,
"ident": "2338333",
"measurement.source.13": 252,
"message.buffered.status": true,
"message.type": "11",
"module.id.28": true,
"module.id.42": true,
"peer": "127.0.0.1:43944",
"position.altitude": -30.2,
"position.direction": 250.726331,
"position.hdop": 1,
"position.latitude": 25.738857,
"position.longitude": -80.262057,
"position.satellites": 6,
"position.speed": 2,
"private.status": false,
"protocol.id": 9,
"sensor.battery.voltage.252": 2.926,
"sensor.group.id.252": 2,
"sensor.humidity.252": 33.1,
"sensor.humidity.alert.252": false,
"sensor.illuminance.252": 23,
"sensor.mac.address.252": "481ABBBBDDDD",
"sensor.report.reason.252": 6,
"sensor.rssi.252": -35,
"sensor.temperature.252": 30.6,
"sensor.temperature.alert.252": false,
"sensor.x.acceleration.252": 0,
"sensor.y.acceleration.252": -0.064,
"sensor.z.acceleration.252": -0.32,
"server.timestamp": 1638959705.789526,
"time.valid.status": true,
"timestamp": 1636582654
}
Parameter message.type=11
shows that this is a modular message, and parameters module.id.28=true
and module.id.42=true
show that this message contains modules 28 and 42.
According to this post namo, for Module 42 you should expect parameters device.battery.level
, device.illuminance
, device.pressure.altitude
etc to be present in the JSON message.
As for Module 28, you should first read event.category
and event.enum
parameters, as the set of parameters to be contained in the JSON message depends on the type of event received.
The message in my example has event.enum=13
and event.category=1
parameters, hence this is a Guest MultiSense raw data event. The list of parameters to be expected for this event can be found in this post namo.
Parameter measurement.source.13=252
(or 0xFC) tells you that this is an event from Guest MultiSense. Then parameters sensor.battery.voltage.252
, sensor.group.id.252
, sensor.humidity.252
etc with MultiSense related information should be expected in the JSON message.