Hallo zusammen,
@kronos war so nett und hat mir ein paar Shelly Geräte direkt vom Hersteller organisiert, vielen Dank!
Ich habe jetzt mal mit dem BLU Gateway gespielt.
Mit dem Script ble-shelly-blu.js welches direkt über die Library hinzugefügt werden kann, werden die Geräte direkt erkannt.
Shelly Button:
{
"src":"shellyblugw-3ce90e7dd7f0",
"dst":"shellyblugw-3ce90e7dd7f0/events",
"method":"NotifyEvent",
"params":{
"ts":1698785926.88,
"events":[
{
"component":"script:1",
"id":1,
"event":"shelly-blu",
"data":{
"encryption":false,
"BTHome_version":2,
"pid":16,
"battery":94,
"button":1,
"rssi":-45,
"address":"5c:c7:c1:f6:cc:44"
},
"ts":1698785926.88
}
]
}
}
Shelly Door/Window:
{
"src":"shellyblugw-3ce90e7dd7f0",
"dst":"shellyblugw-3ce90e7dd7f0/events",
"method":"NotifyEvent",
"params":{
"ts":1698786007.58,
"events":[
{
"component":"script:1",
"id":1,
"event":"shelly-blu",
"data":{
"encryption":false,
"BTHome_version":2,
"pid":58,
"battery":100,
"illuminance":11,
"window":0,
"rotation":0,
"rssi":-50,
"address":"60:ef:ab:4b:3f:5f"
},
"ts":1698786007.58
}
]
}
}
Meine Idee wäre jetzt das ganze nicht vom Topic abhängig zu machen, sondern von dem Event „shelly-blu“, dann könnte ich jeweils Instanzen für die einzelnen Shelly BLE Geräte erstellen, welche auf jedes Topic reagieren, aber dafür wird geprüft, ob das Event „shelly-blu“ im Payload vorhanden ist.
Zusätzlich wird nach der Adresse des Gerätes geschaut und anhand dieser dann die Daten der richtigen Instanz zugeordnet.
Somt dürfte es egal sein, welches Shelly Gerät die BLE Daten empfängt.
Ich würde euch bitten das mal mit zu überdenken.
Das sollte doch so funktionieren, oder habe ich da einen Denkfehler?
Grüße,
Kai