Philips Hue - Inkonsequentes Dashboard

Hallo,

Ich weiß nicht, ob das Thema / der Bug bereits diskutiert oder gemeldet wurde, aber ich habe gestern etwas festgestellt und weiß nicht, ob dieses Verhalten normal ist:

  • Ich schalte die Philips Hue Lampen in meiner Küche mit der Haupttaste ein, um alle Lampen im Raum einzuschalten.

  • Ich bitte Google Home (außerhalb von Gladys Assistant), die Lichter in X Minuten auszuschalten.

  • Das Gladys Dashboard zeigt an, dass die Lampen eingeschaltet sind (obwohl sie ausgeschaltet sind). Das Gleiche gilt nach einem Neuladen (F5).

Liegt das daran, dass die Lampen über ein externes System ausgeschaltet werden? Oder ist das einfach nur ein Bug?

Danke für eure Aufklärung :blush:

Hallo @Kevin! Das ist eine gute Frage :slight_smile:

Für Integrationen, die extern zu Gladys gesteuert werden können, und insbesondere für die Philips Hue-Integration, aktualisieren wir in Gladys den Status dieser Geräte alle 60 Sekunden, um den letzten Status abrufen zu können, falls dieser außerhalb von Gladys geändert wurde.

Daher ist es normal, wenn du die Änderung nicht sofort siehst, sie sollte innerhalb von 0 bis 60 Sekunden eintreffen!

Leider haben wir keine große Wahl, idealerweise sollte Philips Hue ein Ereignis „broadcasten“, um Drittanbieter-Apps zu benachrichtigen, dass ein neuer Status verfügbar ist, aber sie tun das nicht, also haben wir keine Wahl, wir nutzen die verfügbaren APIs ^^

Tatsächlich, als ich hier einige Tests wiederholt habe, habe ich festgestellt, dass es sich zu bestimmten Zeiten aktualisiert hat. Und ich dachte, dass ihr auf die eine oder andere Weise einen Aufruf an die verfügbaren APIs alle x Zeit durchführt. Zumindest beantwortet das meine Frage.

Aber dort, wo es sich nie ändert, ist der Zustand der Farbe der Glühbirne. Gladys scheint sich daran zu erinnern, was beim letzten Mal ausgewählt wurde. Aber das entspricht nicht der Realität, wenn die Änderung beispielsweise mit der Philips Hue-App vorgenommen wurde.

Es handelt sich nicht um ein Problem, das die ordnungsgemäße Funktion verhindert, aber ich bevorzuge es, diesen kleinen Fehler zu melden :slight_smile:

Ach, das ist tatsächlich ein Bug :slight_smile: Hast du Erfahrung in der Entwicklung und kannst uns helfen, ihn zu beheben?

Falls nicht, lade ich dich ein, ein Issue in unserem GitHub-Repo zu erstellen, damit wir den Bug nicht aus den Augen verlieren!

Ich habe Programmierkenntnisse, aber hauptsächlich in .NET C# (und dem, was drumherum ist). Node.js habe ich mal aus Neugier gemacht.
Ich sollte mich da mal ein bisschen einarbeiten, das kann ja nicht so schwer sein, so einen Bug zu beheben.

Aber bis dahin werde ich ein Issue auf GitHub erstellen.

Danke für dein GitHub-Issue @Kevin!

Ich poste es hier rein:

Falls jemand vorbeikommt und Philips Hue hat, könnte er uns dann bitte helfen, den Bug zu finden? @cicoub13, ich glaube, du hast Philips Hue? :slight_smile:

Ich habe meine Philips Hue Bridge verkauft, um meine Lampen über Zigbee2Mqtt zu steuern :neutral_face: aber ich werde die Farbübermittlung testen, falls nötig (von Zigbee aus)

Ach Mist :stuck_out_tongue: @VonOx hast du etwa Philips Hue mit Bridge?

Ja, das habe ich nur für eine Living Color, der Rest ist auf z2m.

Okay, jetzt hast du also die Kontrolle über die Farbe in dieser Living Color? Könntest du diesen Bug testen und schauen, ob du eine Lösung findest?

Ja, ich bin unterwegs, ich werde es am Wochenende testen, wenn ich wieder zu Hause bin.

Ich bestätige, dass es nicht funktioniert, wenn eine externe Steuerung erfolgt (App Hue / Sprachsteuerung etc.)

Korrekter Zustand:

Die Synchronisation erfolgt nur beim Ein-/Ausschalten

Nur das On/Off-Polling wurde entwickelt. Ich habe das Issue kommentiert und auf den zu aktualisierenden Code verwiesen.

Genau, gut gesehen @cicoub13!

@VonOx Könntest du mal schauen, wie der Zustand an dieser Stelle aussieht: Gladys/server/services/philips-hue/lib/light/light.poll.js at master · GladysAssistant/Gladys · GitHub?

Danach muss man ein this.gladys.event.emit mit der Farbe machen

{
  on: true,
  bri: 120,
  hue: 45780,
  sat: 254,
  effect: 'none',
  xy: [ 0.1397, 0.0985 ],
  alert: 'select',
  colormode: 'xy',
  mode: 'homeautomation',
  reachable: true
}

Ich habe das dumm gemacht, aber ich glaube, die Farbe muss konvertiert werden

logger.info(state);
this.gladys.event.emit(EVENTS.DEVICE.NEW_STATE, {
      device_feature_external_id: `${LIGHT_EXTERNAL_ID_BASE}:${bridgeSerialNumber}:${lightId}:${DEVICE_FEATURE_TYPES.LIGHT.COLOR}`,
      state: state.hue,
    });

Du hast die Funktion hsbToRgb und dann rgbToInt in servers/utils/colors.js!

Du verwendest hue + sat + bri!

hue direct funktioniert, ich hatte nicht lange genug gewartet (es ist nicht genau der gleiche Blau, aber es geht wieder hoch)

Ja, es fehlt die Sättigung und Helligkeit, um denselben Blauton zu erhalten :slight_smile:

Toll, wenn es funktioniert, danke, dass du es dir angesehen hast!

Hallo @cicoub13, ich poste meine Nachricht hier nochmal auf Github. Ich habe gesehen, dass du Commits auf Github gemacht hast, in denen dieses Thema erwähnt wird. Hast du einen Pull Request dazu? :slight_smile:

Ich meine das hier: fix(philips-hue): Enable polling color/brightness on Hue lights · cicoub13/Gladys@85d9b8d · GitHub

Hallo. Ja, ich kümmere mich diese Woche darum, aber ich brauche jemanden, der das in der Praxis testet (keine Philips Hue Bridge mehr seit der Zigbee-Kompatibilität).