Last updated on September 16th, 2024
Set up a Kinéis-Live Objects connector and visualize Kinéis data with Orange Live Objects.
Prerequisite
Before starting, ensure your Live Objects account is activated with MQTT capability: Live Objects.
Step 1. Generate a Live Objects API key
- Log in to your Live Objects account
- Go to Administration > API Key and add an API key for MQTT equipment
Step 2. Create a Kinéis distribution
- Log in to the Kinéis Services Portal
-
Create a distribution. Use the following configuration to auto-provision your devices on Live Objects:
- Protocol: MQTT3
- URL: mqtts://liveobjects.orange-business.com:8883
- Quality of Service: Q0S1
- Topic: dev/data
- Client ID: urn:lo:nsid:mqtt:${device.id}
- Authentication: BASIC
- Username: json+device
- Password: your Live Objects API key
Step 3. End-to-end tests and validation
- For initial testing, send regular messages with your Kinéis device continuously for several hours
- Check your distribution logs on Kinéis Services Portal:
- In Live Objects, retrieve your Kinéis messages in Data > Data messages. They will be displayed as follows:
JSON formats sent to Live Objects
- Live Objects compliant format for all messages.
Live objects raw type Basic V1.1
- streamId: streamId where the message is forwarded, formatted as urn:lo:nsid:x-kineis:{DeviceId} (with {DeviceId} being the transmitting device's identifier)
- timestamp: message reception date at the satellite in UTC
- DEVICE_ID: transmitting device identifier
- MSG_ID: message identifier
- payload: message payload in hexadecimal format
- bit_length (since v1.1): length of the payload in bits. If the length is not a multiple of 8 bits, the payload is padded with extra 0 bits on the right to fit an even number of hexadecimal digits
JSON example
{
"streamId":"urn:lo:nsid:x-kineis:206038",
"timestamp":"2022-05-01T20:26:45.535Z",
"value":{
"DEVICE_ID":206038,
"MSG_ID":"970407534277955584",
"payload":"0af280346a62012241109cdc80",
"bit_length":104
}
}
- Live Objects compliant format, for processed messages received from 28-bit address devices with a codec declared.
Live objects processed type Basic
- streamId: streamId where the message is forwarded, formatted as urn:lo:nsid:x-kineis:{DeviceId} (with {DeviceId} being the transmitting device's identifier)
- timestamp: message reception time at the satellite in UTC
- DEVICE_ID: transmitting device identifier
- MSG_ID: message identifier
- RAW_DATA: message payload in hexadecimal format
- CRC_OK: message integrity check status
- CHECKED: message status verification
JSON example
{
"streamId":"urn:lo:nsid:x-kineis:86051",
"timestamp":"2022-05-01T20:12:40.916Z",
"value":{
"DEVICE_ID":86051,
"MSG_ID":"970418622231126016",
"RAW_DATA":"00000000000000000000000000000000000000000000000000",
"CRC_OK":true,
"CHECKED":"Y"
}
}
- Live Objects compliant format for native location (Doppler) messages.
Live objects location format V2
- streamId: streamId where the message is forwarded, formatted as urn:lo:nsid:x-kineis:{DeviceId} (with {DeviceId} being the transmitting device's identifier)
- timestamp: message reception time at the satellite in UTC
- DEVICE_ID: transmitting device identifier
- LOC_ID: location identifier
- REVISION: revision number of the location, ranging [0..+10].
- MSG_IDS: raw messages ids linked to the location
- provider: always “doppler”
- lat: latitude in degrees, ranging [-90..+90]
- lon: longitude in degrees, ranging ]-180..+180]
- alt: altitude from sea level in meters
- accuracy: error radius of the location in meters
JSON example
{
"streamId":"urn:lo:nsid:x-kineis:206038",
"timestamp":"2022-04-28T20:20:21.916Z",
"value":{
"DEVICE_ID":206038,
"LOC_ID":969319242555985923,
"REVISION":1,
"MSG_IDS": [ "123456789", "124567826" ]
},
"location":{
"provider":"doppler",
"lat":43.54955349656816,
"lon":1.486925128541945,
"alt":195
"accuracy":198
}
}