wiki:decoderupload
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| wiki:decoderupload [2023/07/28 17:48] – mbrauer | wiki:decoderupload [2023/07/28 18:10] (current) – mbrauer | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Custom JavaScript Decoder Upload Requirements ====== | ====== Custom JavaScript Decoder Upload Requirements ====== | ||
| - | To ensure compatibility, | + | To ensure compatibility, |
| - | + | ||
| - | ===== Necessities for Uploading a Custom JavaScript Decoder ===== | + | |
| - | + | ||
| - | *** Function Signature**: | + | |
| - | * Other functions can be used in the file can called from the Decoder function, but the Decoder(...) function acts as the main function. | + | |
| - | + | ||
| - | *** GraalVM Support**: Ensure that the JavaScript code used in the decoder is compatible with GraalVM' | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | - `bytes`: This parameter represents the input data that needs to be decoded. It could be an array of bytes, a string, or any other data structure as per your requirements. | + | |
| - | - `port`: This parameter denotes the port number that might be used within the decoder function or during the decoding process. | + | |
| - | + | ||
| - | - **Dependency Management**: | + | |
| - | + | ||
| - | - **Runtime Limitations**: | + | |
| - | + | ||
| - | - **Testing**: | + | |
| ===== Example Custom Decoder Function ===== | ===== Example Custom Decoder Function ===== | ||
| - | Here's a simple example of a custom JavaScript decoder function conforming to the specified | + | Here's a simple example of a custom JavaScript decoder function conforming to the required |
| - | // | + | <code javascript> |
| /** | /** | ||
| * Custom decoder function for decoding data. | * Custom decoder function for decoding data. | ||
| - | * @param | + | * @param bytes - The payload |
| - | * @param | + | * @param port - The port number used during decoding. |
| * @returns {string} - The decoded result as a string. | * @returns {string} - The decoded result as a string. | ||
| */ | */ | ||
| function Decoder(bytes, | function Decoder(bytes, | ||
| - | Your decoding logic here | + | |
| - | let decodedResult = " | + | let decodedResult = {}; //empty object that holds all UDT tag values |
| - | | + | |
| - | decodedResult | + | decodedResult.BatteryLevel = bytes[1] |
| - | | + | |
| return decodedResult; | return decodedResult; | ||
| } | } | ||
| + | </ | ||
| + | |||
| + | ===== Necessities for Uploading a Custom JavaScript Decoder ===== | ||
| + | |||
| + | *** Function Signature**: | ||
| + | * Other functions can be used in the file can called from the Decoder function, but the Decoder function acts as the main function. | ||
| + | |||
| + | * **Return Value**: The decoder must return an **object** that represents the desired tag structure of the UDT. | ||
| + | |||
| + | * **bytes**: This parameter represents the input data that needs to be decoded. It is an array of bytes that is gathered from an uplink' | ||
| + | |||
| + | * **port**: This parameter denotes the port number that might be used within the decoder function or during the decoding process. | ||
| + | |||
| + | - **Runtime Limitations**: | ||
| + | |||
| + | - **Testing**: | ||
wiki/decoderupload.1690566492.txt.gz · Last modified: 2023/07/28 17:48 by mbrauer