IMHO, the role regexes and type boolean restrictions should be sufficient to prevent false positives here. The channelRole seems to be used very sparsely. Especially for devices (i.e. no channel).
I also added the indicator.alarm.fire|flood roles to the regex. They are valid, too, following the stateroles-list. Although they seem a bit redundant. In the process, I noticed, that before sensor.alarm.fireXYZ would also be a valid role. I did remove that. Not 100% sure if that was intended before (sensor.alarm.flooding might be something that should be added to the regex, again, it was possible before but is not anymore, although state.alarm.flooding was forbidden before, too → so this was inconsistent).
This would fix #38 and also allow Zigbee fire sensors to be automatically detected, for example.
IMHO, the role regexes and type boolean restrictions should be sufficient to prevent false positives here. The channelRole seems to be used very sparsely. Especially for devices (i.e. no channel).
I also added the
indicator.alarm.fire|flood
roles to the regex. They are valid, too, following the stateroles-list. Although they seem a bit redundant. In the process, I noticed, that beforesensor.alarm.fireXYZ
would also be a valid role. I did remove that. Not 100% sure if that was intended before (sensor.alarm.flooding
might be something that should be added to the regex, again, it was possible before but is not anymore, althoughstate.alarm.flooding
was forbidden before, too → so this was inconsistent).This would fix #38 and also allow Zigbee fire sensors to be automatically detected, for example.