Ankündigung

Einklappen
Keine Ankündigung bisher.

Support Thread für das hue2 und das hue3 Plugin

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • whe
    antwortet
    ich komme da jetzt nicht mehr weiter, weil ich das Coding nicht verstehe.
    m.E. wird in "poll_bridge_sensors" kein Wert geliefert:
    Code:
                if  plugin_item['resource'] == 'sensor':
                    value = self._get_sensor_item_value(plugin_item['id'], plugin_item['function'], plugin_item['item'].id())
                    #self.logger.debug("poll sensor (whe): value = {}".format(value))
                    if value is not None:
                        plugin_item['item'](value, self.get_shortname(), src)
    value ist hier leer. in "poll_bridge_lights" erscheinen hier die Werte.

    Einen Kommentar schreiben:


  • whe
    antwortet
    OK erstmal danke; ich teste weiter, sonst bis morgen Abend

    Einen Kommentar schreiben:


  • Msinn
    antwortet
    Zitat von whe Beitrag anzeigen
    aber die Items werden nicht mit Werten gefüllt, wo könnte das denn noch hängen ?
    Um das zu beantworten, müsste ich ins Plugin schauen. Dazu komme ich frühestens morgen Abend.

    Einen Kommentar schreiben:


  • whe
    antwortet
    OK. bei den light Items habe ich keine Namen vergeben, im Log wird das angezeigt, was auch im WebIF als Name steht.

    aber die Items werden nicht mit Werten gefüllt, wo könnte das denn noch hängen ?
    das müsste doch das Plugin machen; oder ?

    ist das _get_sensor_item_value ?
    dann müsste ich da mal mehr debuggen.

    Einen Kommentar schreiben:


  • Msinn
    antwortet
    Das hat nichts mit dem Auflösen der Struktur zu tun. Du hast dem Item mit dem Pfad DG.Galerie.Sensor.daylight den Namen Daylight gegeben und der Name wird im Log angezeigt.

    Einen Kommentar schreiben:


  • whe
    antwortet
    siehe 120
    da steht z.B. parse item: Daylight anstatt: DG.Galerie.Sensor.daylight

    Einen Kommentar schreiben:


  • Msinn
    antwortet
    Zitat von whe Beitrag anzeigen
    warum wird die Item Struktur nicht richtig aufgelöst ?
    Da wird keine Struktur aufgelöst. Welche meinst Du?

    Hinweis: Die hue2_function Namen sind unabhängig von dem was das qhue Package zurückmeldet. (Das ist auch gut so, weil das qhue Package vermutlich demnächst ausgetauscht werden muss. Es gibt dort keine Anstalten das neue Hue API zu unterstützten)

    Einen Kommentar schreiben:


  • whe
    antwortet
    mein JSON des sensors sieht so aus:

    image.png

    Im WEBIF wird das auch alles richtig dargestellt.​

    Einen Kommentar schreiben:


  • whe
    antwortet
    Zitat von Msinn Beitrag anzeigen
    Wenn das bei Dir funktioniert, würde ich die Werte und Beschreibungen im Plugin ergänzen. Das ganze Sensor Thema bin ich nicht angegangen, da ich keine Sensoren habe/nutze.
    ist ja verständlich, dass Du das nicht testen kannst, wenn Du kein entspr. Environment hast.
    vielleicht kriegen wir das gemeinsam hin.
    sag mir nur was ich anpassen soll

    Einen Kommentar schreiben:


  • whe
    antwortet
    es reicht wohl nicht in der datei plugin.yaml die functions zu ergänzen:
    Code:
              - alert
              - effect
              - daylight
              - temperature
              - presence
              - lightlevel
    aber die warnings verschwinden dadurch schon mal.
    nur: warum wird die Item Struktur nicht richtig aufgelöst ?
    Code:
    2023-01-21  12:47:04 DEBUG    plugins.hue2        parse item: DG.Galerie.Licht.Decke.AnAus
    2023-01-21  12:47:04 DEBUG    plugins.hue2        parse item: DG.Galerie.Licht.Decke.dimmen
    2023-01-21  12:47:04 DEBUG    plugins.hue2        parse item: DG.Galerie.Licht.Decke.reachable
    2023-01-21  12:47:04 DEBUG    plugins.hue2        parse item: Daylight
    2023-01-21  12:47:04 DEBUG    plugins.hue2        parse item: Temperatur
    2023-01-21  12:47:04 DEBUG    plugins.hue2        parse item: Presence
    2023-01-21  12:47:04 DEBUG    plugins.hue2        parse item: Helligkeit
    2023-01-21  12:47:04 DEBUG    plugins.hue2        parse item: EG.Wohnen.Licht.Stehle.AnAus
    2023-01-21  12:47:04 DEBUG    plugins.hue2        parse item: EG.Wohnen.Licht.Stehle.dimmen
    da bin ich jetzt am Ende mit meinem Latein.

    Einen Kommentar schreiben:


  • Msinn
    antwortet
    Die Metadaten sind in der Datei plugin.yaml im Verzeichnis des jeweiligen Plugins definiert.

    Du könntest zum Test die entsprechenden Funktionen mal ergänzen.

    Im Abschnitt item_attributes: gibt es den Eintrag hue2_function:
    Dort werden unter dem key valid_list: dir gültigen Werte hinterlegt und unter valid_list_description: wird die Beschreibung für die gültigen Werte hinterlegt. (Diese Beschreibungen dienen zur automatischen Erstellung Konfigurationsdoku des Plugins.

    Wenn das bei Dir funktioniert, würde ich die Werte und Beschreibungen im Plugin ergänzen. Das ganze Sensor Thema bin ich nicht angegangen, da ich keine Sensoren habe/nutze.

    Einen Kommentar schreiben:


  • whe
    antwortet
    m.E. müssten die Item definition für den Sensor so aussehen:
    Code:
            Sensor:
                name: HueS1
                hue2_resource: sensor
    
                daylight:
                    name: Daylight
                    type: bool
                    hue2_resource: sensor
                    hue2_function: daylight
                    hue2_id: 1
    
                temperature:
                    name: Temperatur
                    type: num
                    hue2_resource: sensor
                    hue2_function: temperature
                    hue2_id: 2
                    cache: 'on'
                    eval: round(value / 100, 1)
                    database: 'init'
                    sv_widget: "{{ plot.period('item', 'item', 'max', '24h', '', '', '', '', 'Luft', '', '', '', '1h') }}"
    
                presence:
                    name: Presence
                    type: bool
                    hue2_resource: sensor
                    hue2_function: presence
                    hue2_id: 3
                    
                lightlevel:
                    name: Helligkeit
                    type: num
                    cache: 'on'
                    hue2_resource: sensor
                    hue2_function: lightlevel
                    hue2_id: 4
                    database: 'init'
                    sv_widget: "{{ plot.period('item', 'item', 'max', '72h', '', '', '', '', 'Licht', '', '', '', '1h') }}"
    dann fehlen aber wohl META Daten; finde aber nicht wo so etwas definiert ist:
    Code:
    2023-01-21  12:13:18 DEBUG    plugins.hue2        parse item: DG.Gastl.Steckdose.AnAus
    2023-01-21  12:13:18 DEBUG    plugins.hue2        parse item: DG.Gastl.Steckdose.reachable
    2023-01-21  12:13:18 DEBUG    plugins.hue2        parse item: DG.Galerie.Licht.Decke.AnAus
    2023-01-21  12:13:18 DEBUG    plugins.hue2        parse item: DG.Galerie.Licht.Decke.dimmen
    2023-01-21  12:13:18 DEBUG    plugins.hue2        parse item: DG.Galerie.Licht.Decke.reachable
    2023-01-21  12:13:18 WARNING  lib.metadata        Item 'DG.Galerie.Sensor.daylight', attribute 'hue2_function': Invalid value 'daylight' for attribute 'hue2_function' -> using '' instead (defined in Dachgeschoss.yaml)
    2023-01-21  12:13:18 DEBUG    plugins.hue2        parse item: Daylight
    2023-01-21  12:13:18 WARNING  lib.metadata        Item 'DG.Galerie.Sensor.temperature', attribute 'hue2_function': Invalid value 'temperature' for attribute 'hue2_function' -> using '' instead (defined in Dachgeschoss.yaml)
    2023-01-21  12:13:18 DEBUG    plugins.hue2        parse item: Temperatur
    2023-01-21  12:13:18 WARNING  lib.metadata        Item 'DG.Galerie.Sensor.presence', attribute 'hue2_function': Invalid value 'presence' for attribute 'hue2_function' -> using '' instead (defined in Dachgeschoss.yaml)
    2023-01-21  12:13:18 DEBUG    plugins.hue2        parse item: Presence
    2023-01-21  12:13:18 WARNING  lib.metadata        Item 'DG.Galerie.Sensor.lightlevel', attribute 'hue2_function': Invalid value 'lightlevel' for attribute 'hue2_function' -> using '' instead (defined in Dachgeschoss.yaml)
    2023-01-21  12:13:18 DEBUG    plugins.hue2        parse item: Helligkeit
    2023-01-21  12:13:18 DEBUG    plugins.hue2        parse item: EG.Wohnen.Licht.Stehle.AnAus
    2023-01-21  12:13:18 DEBUG    plugins.hue2        parse item: EG.Wohnen.Licht.Stehle.dimmen
    2023-01-21  12:13:18 DEBUG    plugins.hue2        parse item: EG.Wohnen.Licht.Sideboard.AnAus
    2023-01-21  12:13:18 DEBUG    plugins.hue2        parse item: EG.Wohnen.Licht.Sideboard.dimmen
    2023-01-21  12:13:18 DEBUG    plugins.hue2        parse item: EG.Wohnen.Licht.Lowboard.AnAus
    2023-01-21  12:13:18 DEBUG    plugins.hue2        parse item: EG.Wohnen.Licht.Lowboard.dimmen
    2023-01-21  12:13:18 DEBUG    plugins.hue2        parse item: EG.Diele.Eingang.AnAus
    in der Doku steht ja auch folgendes:
    image.png

    Einen Kommentar schreiben:


  • whe
    antwortet
    sorry, gebe es für heute auf nach gefühlten 100 Tests.
    das plugin liefert keine Werte für die Items; bei den Lampen geht's einwandfrei.
    ich bleibe bei meiner Logic, die per HTTP die Werte abfragt, das funktioniert schon seit ein paar Jahren:
    Code:
    # HUE Sensor 1
    import urllib.request
    import json
    
    myurl = "http://192.168.178.50/api/..................../sensors"
    
    req = urllib.request.urlopen(myurl)
    data = req.read().decode('UTF-8')
    
    j = json.loads(data)
    
    sh.DG.Galerie.Sensor.daylight(j['1']['state']['daylight'])
    sh.DG.Galerie.Sensor.temperature(j['2']['state']['temperature'])
    sh.DG.Galerie.Sensor.presence(j['3']['state']['presence'])
    sh.DG.Galerie.Sensor.Motion(j['3']['config']['on'])
    sh.DG.Galerie.Sensor.Battery(j['3']['config']['battery'])
    sh.DG.Galerie.Sensor.lightlevel(j['4']['state']['lightlevel'])
    auch ein loglevel DEBUG beim HUE2 plugin hilft nicht wirklich weiter.

    Einen Kommentar schreiben:


  • whe
    antwortet
    damit übe ich auch gerade, das Wesentliche habe ich.
    schicke gleich meine item Konfiguration, wenn's fertig ist

    Einen Kommentar schreiben:


  • Msinn
    antwortet
    Mit einem Beispiel für einen Bewegungsmelder kann ich Dir leider nicht weiter helfen. (Ich habe nur Leuchten im Einsatz)

    Zu Deiner Frage
    Zitat von Holoman5 Beitrag anzeigen
    Gibt es eine Struktur wie bei den Leuchten?
    In der Admin GUI werden im Menü unter Items/Struktur Templates alle geladenen Strukturen, sortiert nach den Plugins welche sie definierten, angezeigt.

    ...und: Da gibt es bisher nur Strukturen, die die Leuchten und Gruppen von Leuchten abbilden.

    Ein Ansatz, wie Du Dich dem Thema nähern kannst habe ich:

    Schau im Web Interface für das Hue2 Plugin im Tab Hue Sensoren mal, was dort unter Konfiguration für den Bewegungsmelder steht. Ich vermute, da müsste unter anderen 'on': True oder 'on': False​ stehen.

    Meine Vermutung ist, dass der Wert für 'on' True bei erkannter Bewegung ist und False, bei keiner Bewegung.

    In diesem Fall könntest Du Dir zum Test ein Item folgendermaßen einrichten:

    Code:
    bewegungsmelder:
        type: bool
        hue2_resource: sensor
        hue2_function: on
        hue2_id: 46
    Das sollte (als möglicher Ansatz) so auch aus der Konfigurationsdokumentation des Plugins hervorgehen.

    Einen Kommentar schreiben:

Lädt...
X