What is the maximum payload for a message from the edge device to Octave?

20 data points = 1 message. A data point may consist of content of various datatypes. The message may contain data of type integer, numeric, string, boolean and JSON. The edge device may send much more payload over several messages. The end user does not configure the message payload, the edge device and Octave work in sync to reliably deliver all telemetry in an efficient manner.

Hi Thibault

For a datapoint - what is the limit to the string length and the JSON data size?

String datatypes may be up to 25 bytes.
If the message exceeds 20 datapoints, there will be 2 messages generated or as many messages as required to transmit the data

1 Like

Thanks David

Any ideas on JSON data types? – from the answer below maybe JSON is treated in the same way as a string?

For example if I send (return ) the following JSON object using an device edge action to the Octave cloud

How many datapoints will be consumed?

Example JSON event

{
  "temperature": 123.2,
  "humidity": 70,
  "pressure": 9997,
  "powerOn": true
}

Example edge action - event contains JSON object above

function(event) {
  
  return {   
    "cl://result1" : [JSON.stringify(event)]
  };
}

PS this is not a working example it’s just to explore data consumption

String datatypes may be up to 25 characters

Thanks David - sorry to be pedantic - however the reason I ask is that I’ll be asked the same thing multiple times by different folks

Is the following statement correct?

JSON datatypes consume 1 datapoint for every 25 characters

If I correctly counted the number of characters in your JSON, including CRLF and spaces, it is 84 characters

{
“temperature”: 123.2,
“humidity”: 70,
“pressure”: 9997,
“powerOn”: true
}

Since string /json datapoints are counted at 25 characters, you would be sending 1 message with 4 data points.

dp1 = 25
dp2 = 25
dp3 = 25
dp4 = 9
Total of 84 characters

You could “compress” the payload to 64 characters, which would be 3 data points.
{“temperature”:123.2,“humidity”:70,“pressure”:9997,“powerOn”:true}

2 Likes

That is correct John. As fyi, You could send a maximum JSON data payload of 50,000 characters. which would = 2000 Octave data points which would be 100 Octave messages.

1 Like