...
The Lobaro wMbus Parser is used from device Parsers and available as web API at https://platform.lobaro.com/#/wmbus/parser
wMbus API
Response (Lobaro wMbus JSON)
The following is an example of the parsing result of an encrypted example telegram from the OMS specification:
...
Expand | ||
---|---|---|
|
Domain Model Mapping Extention
Important fields
Field | Description |
---|---|
IsEncrypted | true if the parsed telegram is still encrypted |
DecryptionFailed | true if the parser tied to decrypt the telegram without success. Can be used in conjunction with IsEncrypted to detect if the telegram was encrypted (see below). |
PayloadKnown | If the payload of the telegram (related to the CI field) is known to the parser and can be parsed |
BodyParseError | Error while parsing the payload body |
FormatSignature | Unique signature of the DifVif structure of all DataRecords. If any DifVif changes, the FormatSignature does change as well. |
Encryption state
IsEncrypted | DecryptionFailed | Meaning |
---|---|---|
true | true | No valid key |
false | false | Telegram not encrypted |
true | false | Telegram is encrypted but parser can not decrypt it (e.g. unknown algorithm) |
false | true | Plain telegram where decryption failed - should not happen |
VifUnit & VifQuantity
There are a many valid combinations of VifUnit & VifQuantity. All possible values are listed below.
Lines without VifUnit have an empty string as Unit.
Expand | ||
---|---|---|
|
Domain Model Mapping Extention
When Using wMbus/OMS Telegrams there is a Problem: The Telegrams are self describing in a way When Using wMbus/OMS Telegrams there is a Problem: The Telegrams are self describing in a way that they describe values as "this is a Volume in m³" "this is a Date with Time" but they dont include the information about the businesses meaning if the value.
...
- A comment so humans can identify the mappings.
- A filter part to select telegrams that the mapping shall be applied to. The mapping is applied if all filters match true.
- A object "heat" or "water" defining which values of the telegram shall be mapped in to which Field of a Domain Model output.
API Endpoint
- curl Example: (With mapping from: domainMappings.json File)
- Method: POST
- Path: /api/meterData
- URL Params:
- raw: Raw OMS/WMBUS Telegram in Hex:
...
- e.g. 44442d2c0198508035048d20aac070c420dd3d967a564c53dfe4dedfbc45e8d41912db6c0973921bef3c2d5dc8d3b6fe01cc272258cd728f825a2d2e76b256fd722680
...
- key: decryption key as Hex String
...
- e.g. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- Body: Type: application/json with a Mapping Configuration as described on this Page.
...
- Response: With Domain Data described under "Metering Domain Model" on this Page.
- Headers
- Authorization: Header ("Authorization") with Bearer Token from the Platform: https://platform.lobaro.com/#/organisation/integrations/rest/
Curl Example:
Endpoint: POST https://platform.lobaro.com/api/meterData
Code Block | ||
---|---|---|
| ||
curl -X 'POST' \ 'localhost:8082https://platform.lobaro.com/api/meterData?raw=44442d2c0198508035048d20aac070c420dd3d967a564c53dfe4dedfbc45e8d41912db6c0973921bef3c2d5dc8d3b6fe01cc272258cd728f825a2d2e76b256fd722680&key=7ADA08C8C89C7D21EAEE6F662BF0A6ED' \ -H 'accept: \ application/json' -H 'Authorization: Bearer eyJh[...]' -H "Content-Type: application/json" -d @domainMappings.json |
...