I have this in a function node of Node red.
var wasConnected = msg.data.old_state.attributes.connected_paired_devices.includes("4E:C3:9E:5B:9C:86");
if(wasConnected){
var isConnected = msg.data.new_state.attributes.connected_paired_devices.includes("4E:C3:9E:5B:9C:86");
if(!isConnected){
msg.BTtrigger = "true";
}else{
msg.BTtrigger = "false";
}
}else{
msg.BTtrigger = "false";
}
//4E:C3:9E:5B:9C:86
return msg;
This is to trigger on when you disconnect from a specific device.
In this case it’s a Bluetooth device in the car, and when this happens the msg.BTtrigger becomes “true”.
EDIT:
Now that I look at my code I see that this is a better approach…
var wasConnected = msg.data.old_state.attributes.connected_paired_devices.includes("4E:C3:9E:5B:9C:86");
msg.BTtrigger = "false";
if(wasConnected){
var isConnected = msg.data.new_state.attributes.connected_paired_devices.includes("4E:C3:9E:5B:9C:86");
if(!isConnected){
msg.BTtrigger = "true";
}
}
//4E:C3:9E:5B:9C:86
return msg;
It does the same thing in fewer lines…