[DISC] Whitelist immediate change (#2133)

* When updating a device from UNKNOWN force a new scan

* update the sensorModel_id and handle if white-list is updated

* Restore unduly deleted documentation
This commit is contained in:
benzok authored and GitHub committed 2024-12-18 07:53:32 -06:00
1 parent 7fa00dd593
commit 312b4bcf17
2 files changed
+7 -3

No files matched your search

-2
View File
@@ -124,8 +124,6 @@ A white list is a list of MAC addresses permitted to be published by OMG
to set white list
`mosquitto_pub -t home/OpenMQTTGateway/commands/MQTTtoBT/config -m '{"white-list":["01:23:14:55:16:15","4C:65:77:88:9C:79","4C:65:A6:66:3C:79"]}'`
Note: if you want to filter (white or black list) on BLE sensors that are auto discovered, you need to wait for the discovery before applying the white or black list, or temporarily disable it:
to temporarily disable white/black list
`mosquitto_pub -t home/OpenMQTTGateway/commands/MQTTtoBT/config -m '{"ignoreWBlist":true}'`
+7 -1
View File
@@ -388,10 +388,16 @@ void createOrUpdateDevice(const char* mac, uint8_t flags, int model, int mac_typ
device->connect = true;
}
if (model != UNKWNON_MODEL) {
if (model != UNKWNON_MODEL && device->sensorModel_id == UNKWNON_MODEL) {
newDevices++;
device->isDisc = false;
device->sensorModel_id = model;
}
// If a device has been added to the white-list, flag it so it can be auto-detected
if (!device->isWhtL && flags & device_flags_isWhiteL) {
newDevices++;
}
if (flags & device_flags_isWhiteL || flags & device_flags_isBlackL) {
device->isWhtL = flags & device_flags_isWhiteL;
device->isBlkL = flags & device_flags_isBlackL;