Component: JSON Decoder (Comms: IoT/Cloud): Difference between revisions
Appearance
m Text replacement - "width="10%" align="center" style="background-color:#D8C9D8;" align="center"" to "width="10%" align="center" class="mtx-class-macrohead"" |
m Text replacement - "width="90%" style="background-color:#D8C9D8; color:#4B008D;"" to "width="90%" class="mtx-class-macrohead"" |
||
| (One intermediate revision by the same user not shown) | |||
| Line 49: | Line 49: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''FindName''' | ||
|- | |- | ||
| colspan="2" | Searches for a name in the JSON data. Returns the data index position. Returns -1 if the name was not found. | | colspan="2" | Searches for a name in the JSON data. Returns the data index position. Returns -1 if the name was not found. | ||
| Line 73: | Line 73: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ParseJSON''' | ||
|- | |- | ||
| colspan="2" | Accepts a JSON formatted data string and stores locally in the data buffer ready for parsing. Returns the estimated number of name and data keys present. | | colspan="2" | Accepts a JSON formatted data string and stores locally in the data buffer ready for parsing. Returns the estimated number of name and data keys present. | ||
| Line 92: | Line 92: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReadDataAsFloat''' | ||
|- | |- | ||
| colspan="2" | Reads the data of a specific element as a floating point value | | colspan="2" | Reads the data of a specific element as a floating point value | ||
| Line 111: | Line 111: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReadDataAsNumber''' | ||
|- | |- | ||
| colspan="2" | Reads the data of a specific element as a numeric integer value | | colspan="2" | Reads the data of a specific element as a numeric integer value | ||
| Line 130: | Line 130: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReadDataAsString''' | ||
|- | |- | ||
| colspan="2" | Reads the data of a specific element as a string value | | colspan="2" | Reads the data of a specific element as a string value | ||
| Line 149: | Line 149: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReadName''' | ||
|- | |- | ||
| colspan="2" | Reads the name of a specific element | | colspan="2" | Reads the name of a specific element | ||
| Line 168: | Line 168: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Properties''' | ||
|- | |- | ||
|- | |- | ||
Latest revision as of 14:22, 13 July 2026
| Author | Matrix TSL |
| Version | 1.1 |
| Category | Comms: IoT/Cloud |
JSON Decoder component
Allows dynamic key and value pairs to be collected from a formatted JSON string.
Version information
Library Version, Component Version, Date, Author, Info 4, 1.1, 10-10-24, BR, Allowed for better support of nested array data 4, 1.1, 10-10-24, BR, Removed spaces and new lines etc from the stored data 5, 1.1, 02-15-24, BR, Allowed for better support of nested array data for the FindName function
Detailed description
No detailed description exists yet for this component
Examples
Simple Decode
Example program showing how to use a JSON decoder component to parse a simple JSON encoded data string.
JSON Decoder Example
Simple Encode and Decode
Example program showing how to take data and encode it into a JSON string to be sent out over comms.
The example also hows how to decode a received JSON string and pull out values.
Macro reference
FindName
ParseJSON
ReadDataAsFloat
| ReadDataAsFloat | |
| Reads the data of a specific element as a floating point value | |
| Element | |
| Index of the element to read | |
| Return | |
ReadDataAsNumber
| ReadDataAsNumber | |
| Reads the data of a specific element as a numeric integer value | |
| Element | |
| Index of the element to read | |
| Return | |
ReadDataAsString
| ReadDataAsString | |
| Reads the data of a specific element as a string value | |
| Element | |
| Index of the element to read | |
| Return | |
ReadName
| ReadName | |
| Reads the name of a specific element | |
| Element | |
| The Index of the element to read | |
| Return | |
Property reference
Component Source Code
Please click here to download the component source project: FC_Comp_Source_JSONDecoder.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_JSONDecoder.fcfx