waltervl wrote: ↑Wednesday 09 July 2025 10:08
Not sure how this could be used in the MQTT mapper JSON configuration file.
You're right, this is not supported.
As of now, only "*" is supported to scan a list of values, but idea is to be able to select an item, not an item's value.
"select" or "reject" are also supported, but to select or reject a message giving an item presence/absence, not to select an item in a list.
However, for this kind of complex syntax, yo can still copy the full message into a Domoticz text device, and do a manual parsing with either LUA or dzVents.
For example:
Code: Select all
{
"My full topic message": {
"topic": "my/full/topic",
"type": "243", "subtype": "19", "switchtype": "0",
"mapping": {"item": ""}
}
}
Replace "my/full/topic" by topic of MQTT message you want to intercept and you'll get the original message into "My full topic message" Domoticz device (probably prefixed by "MQTT Mapper - " or equivalent).
You now can write a LUA or dzVents small script looking for this device changes, and analyze content of device (which is the full message indeed).
You may event extract only par of message specifying something into "mapping":"item". Here, instead of "", you may want to indicate "params/r_data" to only get the list of data.
Manually create corresponding (virtual) dummy devices, and load them within script.