Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. Sonoff NSPanel

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.2k

Sonoff NSPanel

Geplant Angeheftet Gesperrt Verschoben Hardware
1.5k Beiträge 78 Kommentatoren 637.5k Aufrufe 80 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • N Offline
    N Offline
    niiccooo1
    schrieb am zuletzt editiert von
    #1273

    @armilar
    Stimmt. Es lag am Alias. Der Alias-Manager hat zwar den Player selbst angelegt, jedoch musste ich manuell alle Bezeichnungen ändern.

    Durch stöbern im Forum habe ich den Ansatz mit spotify-premium gefunden.
    Da ich einen Android TV mit Spotify Connect habe, würde ich gerne versuchen den spotify Adapter einzubinden.

    Aktuell scheitere ich noch an der speaker-auswahl Funktion. Ich weiß im Spotify Adapter lässt sich über "spotify-premium.0.devices.deviceList" das abzuspielende Gerät auswählen.

    Wie sähe die Funktion dann um zwischen den Geräten zu wechseln?

    ArmilarA 1 Antwort Letzte Antwort
    0
    • N niiccooo1

      @armilar
      Stimmt. Es lag am Alias. Der Alias-Manager hat zwar den Player selbst angelegt, jedoch musste ich manuell alle Bezeichnungen ändern.

      Durch stöbern im Forum habe ich den Ansatz mit spotify-premium gefunden.
      Da ich einen Android TV mit Spotify Connect habe, würde ich gerne versuchen den spotify Adapter einzubinden.

      Aktuell scheitere ich noch an der speaker-auswahl Funktion. Ich weiß im Spotify Adapter lässt sich über "spotify-premium.0.devices.deviceList" das abzuspielende Gerät auswählen.

      Wie sähe die Funktion dann um zwischen den Geräten zu wechseln?

      ArmilarA Offline
      ArmilarA Offline
      Armilar
      Most Active Forum Testing
      schrieb am zuletzt editiert von Armilar
      #1274

      @niiccooo1 sagte in Sonoff NSPanel:

      @armilar
      Stimmt. Es lag am Alias. Der Alias-Manager hat zwar den Player selbst angelegt, jedoch musste ich manuell alle Bezeichnungen ändern.

      Durch stöbern im Forum habe ich den Ansatz mit spotify-premium gefunden.
      Da ich einen Android TV mit Spotify Connect habe, würde ich gerne versuchen den spotify Adapter einzubinden.

      Aktuell scheitere ich noch an der speaker-auswahl Funktion. Ich weiß im Spotify Adapter lässt sich über "spotify-premium.0.devices.deviceList" das abzuspielende Gerät auswählen.

      Wie sähe die Funktion dann um zwischen den Geräten zu wechseln?

      Aktuell keine Ahnung wie die Funktion dann aussehen würde.

      Durch die Speaker-Auswahl im Panel wird folgender Zeile gesendet. Darin steht die Aktion "speaker-sel" und das Gewählte Gerät (in diesem Fall "Echo Spot Buero")
      30585b21-09d5-441a-afb7-3bbb40fd2e73-image.png

      speaker-sel ruft diesen Fall im TS-Skript auf
      192d7210-933e-47fa-8490-2044e3ca6a3b-image.png

      Im Prinzip wird hier aktuell ein Command an Alexa gesendet "Schiebe meine Musik auf Echo Spot Buero". Funktioniert für Echo-Devices und Playlists. Der Befehl funktioniert zumindest "nicht" mit FireTV-Sticks (nur mit Echo's)

      im case 'speaker-sel' müsste deine Spotify-Logik implementiert werden.

      Da ich nicht weiß, zwischen welchen Geräten du wann, was und wohin umschalten willst (teile mal alle Gedanken und Überlegungen sehr detailliert mit), kann ich auch nicht mehr dazu sagen. Mit anderen Worten - Was machst du den heute damit das so funktioniert, wie du es möchtest.

      Hinweis: Der Alexa-Adapter kann mit Spotify teilweise besser umgehen als der Spotify-Adapter ...

      Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
      https://github.com/joBr99/nspanel-lovelace-ui/wiki

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      N 1 Antwort Letzte Antwort
      0
      • ArmilarA Armilar

        @niiccooo1 sagte in Sonoff NSPanel:

        @armilar
        Stimmt. Es lag am Alias. Der Alias-Manager hat zwar den Player selbst angelegt, jedoch musste ich manuell alle Bezeichnungen ändern.

        Durch stöbern im Forum habe ich den Ansatz mit spotify-premium gefunden.
        Da ich einen Android TV mit Spotify Connect habe, würde ich gerne versuchen den spotify Adapter einzubinden.

        Aktuell scheitere ich noch an der speaker-auswahl Funktion. Ich weiß im Spotify Adapter lässt sich über "spotify-premium.0.devices.deviceList" das abzuspielende Gerät auswählen.

        Wie sähe die Funktion dann um zwischen den Geräten zu wechseln?

        Aktuell keine Ahnung wie die Funktion dann aussehen würde.

        Durch die Speaker-Auswahl im Panel wird folgender Zeile gesendet. Darin steht die Aktion "speaker-sel" und das Gewählte Gerät (in diesem Fall "Echo Spot Buero")
        30585b21-09d5-441a-afb7-3bbb40fd2e73-image.png

        speaker-sel ruft diesen Fall im TS-Skript auf
        192d7210-933e-47fa-8490-2044e3ca6a3b-image.png

        Im Prinzip wird hier aktuell ein Command an Alexa gesendet "Schiebe meine Musik auf Echo Spot Buero". Funktioniert für Echo-Devices und Playlists. Der Befehl funktioniert zumindest "nicht" mit FireTV-Sticks (nur mit Echo's)

        im case 'speaker-sel' müsste deine Spotify-Logik implementiert werden.

        Da ich nicht weiß, zwischen welchen Geräten du wann, was und wohin umschalten willst (teile mal alle Gedanken und Überlegungen sehr detailliert mit), kann ich auch nicht mehr dazu sagen. Mit anderen Worten - Was machst du den heute damit das so funktioniert, wie du es möchtest.

        Hinweis: Der Alexa-Adapter kann mit Spotify teilweise besser umgehen als der Spotify-Adapter ...

        N Offline
        N Offline
        niiccooo1
        schrieb am zuletzt editiert von niiccooo1
        #1275

        @armilar

        Danke für deinen ausführlichen Kommentar.
        Mein Ziel wäre wie folgt:

        Über die MediaCard können, wie du bereits beschrieben hast, über 'speaker-sel' die Alexa Lautsprecher ausgewählt werden. (Ich denke sobald ein anderer Speaker über die Pfeiltaste ausgewählt wird, springt die Musik auf das Gerät über).

        Aktuell habe ich im Alias Media nicht den Alexa Player implementiert, sondern den Spotify Player.
        Das scheint soweit auch zu funktionieren (theoretisch könnte ich den Player auch über Alexa laufen lassen).

        Jetzt würde ich das gerne so realisieren, dass über speaker-sel nicht die Alexa-Geräte aufgelistet werden sondern die Geräte die im spotifyadapter über "spotify-premium.0.devices.deviceList" aufgelistet werden.

        {
         "_id": "spotify-premium.0.devices.deviceList",
         "type": "state",
         "common": {
           "name": "All devices saved in common part. Change this value to a device id to start playing on this.",
           "type": "string",
           "role": "value",
           "states": {
             "c0d4dfea666270411a233ed452adb01a47efc381": "TV Wohnzimmer",
             "d09e64cd-7ba6-4410-a7e2-78d5f7b7d1e4_amzn_1": "Echo Dot 4 weiß",
             "033ab8c7abb61a952a899ac25aadccf315761f3b": "HP30P"
           },
           "read": true,
           "write": true
         },
         "native": {},
         "from": "system.adapter.spotify-premium.0",
         "ts": 1662358872878,
         "acl": {
           "object": 1636,
           "state": 1636,
           "owner": "system.user.admin",
           "ownerGroup": "system.group.administrator"
         },
         "user": "system.user.admin"
        }
        

        Sobald ein Gerät ausgewählt ist (z.B. über ein Popup?), sollte die Musik direkt über diesen Lautsprecher ausgegeben werden.
        Meine Javascript Skills sind leider sehr begrenzt weshalb bei mir an der Umsetzung scheitert.

        ArmilarA 1 Antwort Letzte Antwort
        0
        • N niiccooo1

          @armilar

          Danke für deinen ausführlichen Kommentar.
          Mein Ziel wäre wie folgt:

          Über die MediaCard können, wie du bereits beschrieben hast, über 'speaker-sel' die Alexa Lautsprecher ausgewählt werden. (Ich denke sobald ein anderer Speaker über die Pfeiltaste ausgewählt wird, springt die Musik auf das Gerät über).

          Aktuell habe ich im Alias Media nicht den Alexa Player implementiert, sondern den Spotify Player.
          Das scheint soweit auch zu funktionieren (theoretisch könnte ich den Player auch über Alexa laufen lassen).

          Jetzt würde ich das gerne so realisieren, dass über speaker-sel nicht die Alexa-Geräte aufgelistet werden sondern die Geräte die im spotifyadapter über "spotify-premium.0.devices.deviceList" aufgelistet werden.

          {
           "_id": "spotify-premium.0.devices.deviceList",
           "type": "state",
           "common": {
             "name": "All devices saved in common part. Change this value to a device id to start playing on this.",
             "type": "string",
             "role": "value",
             "states": {
               "c0d4dfea666270411a233ed452adb01a47efc381": "TV Wohnzimmer",
               "d09e64cd-7ba6-4410-a7e2-78d5f7b7d1e4_amzn_1": "Echo Dot 4 weiß",
               "033ab8c7abb61a952a899ac25aadccf315761f3b": "HP30P"
             },
             "read": true,
             "write": true
           },
           "native": {},
           "from": "system.adapter.spotify-premium.0",
           "ts": 1662358872878,
           "acl": {
             "object": 1636,
             "state": 1636,
             "owner": "system.user.admin",
             "ownerGroup": "system.group.administrator"
           },
           "user": "system.user.admin"
          }
          

          Sobald ein Gerät ausgewählt ist (z.B. über ein Popup?), sollte die Musik direkt über diesen Lautsprecher ausgegeben werden.
          Meine Javascript Skills sind leider sehr begrenzt weshalb bei mir an der Umsetzung scheitert.

          ArmilarA Offline
          ArmilarA Offline
          Armilar
          Most Active Forum Testing
          schrieb am zuletzt editiert von Armilar
          #1276

          @niiccooo1 sagte in Sonoff NSPanel:

          @armilar

          Danke für deinen ausführlichen Kommentar.
          Mein Ziel wäre wie folgt:

          Über die MediaCard können, wie du bereits beschrieben hast, über 'speaker-sel' die Alexa Lautsprecher ausgewählt werden. (Ich denke sobald ein anderer Speaker über die Pfeiltaste ausgewählt wird, springt die Musik auf das Gerät über).

          Aktuell habe ich im Alias Media nicht den Alexa Player implementiert, sondern den Spotify Player.
          Das scheint soweit auch zu funktionieren (theoretisch könnte ich den Player auch über Alexa laufen lassen).

          Jetzt würde ich das gerne so realisieren, dass über speaker-sel nicht die Alexa-Geräte aufgelistet werden sondern die Geräte die im spotifyadapter über "spotify-premium.0.devices.deviceList" aufgelistet werden.

          {
           "_id": "spotify-premium.0.devices.deviceList",
           "type": "state",
           "common": {
             "name": "All devices saved in common part. Change this value to a device id to start playing on this.",
             "type": "string",
             "role": "value",
             "states": {
               "c0d4dfea666270411a233ed452adb01a47efc381": "TV Wohnzimmer",
               "d09e64cd-7ba6-4410-a7e2-78d5f7b7d1e4_amzn_1": "Echo Dot 4 weiß",
               "033ab8c7abb61a952a899ac25aadccf315761f3b": "HP30P"
             },
             "read": true,
             "write": true
           },
           "native": {},
           "from": "system.adapter.spotify-premium.0",
           "ts": 1662358872878,
           "acl": {
             "object": 1636,
             "state": 1636,
             "owner": "system.user.admin",
             "ownerGroup": "system.group.administrator"
           },
           "user": "system.user.admin"
          }
          

          Sobald ein Gerät ausgewählt ist (z.B. über ein Popup?), sollte die Musik direkt über diesen Lautsprecher ausgegeben werden.
          Meine Javascript Skills sind leider sehr begrenzt weshalb bei mir an der Umsetzung scheitert.

          Genau diesen Datenpunkt würde ich nicht nehmen - wenn der Spotify-Adapter eine Zeit lang nichts mehr zu tun hatte ist der nämlich leer.

          Aber mit den nachfolgenden beiden dürfte es funktionieren:
          97206cd5-e89b-4abb-975a-aab20a5ed33b-image.png

          beide in Arrays (DeviceString und DeviceID) einlesen, d.h. beide mit split (;) trennen

          Dann mit dem vom Panel übergebenen Device mit DeviceString.indexof() suchen und die zugehörige ID ermitteln.

          Danach Unter Devices die ermittelte ID auf useForPlayback = true setzen

          Klingt eigentlich simpel ;-)

          Ich sehe mir das mal bei Zeiten genauer an

          Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
          https://github.com/joBr99/nspanel-lovelace-ui/wiki

          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

          N 1 Antwort Letzte Antwort
          1
          • K Offline
            K Offline
            Kuckuckmann
            schrieb am zuletzt editiert von Kuckuckmann
            #1277

            temp thread

            NSPanel Dokumentation im GitHub Wiki:

            https://github.com/joBr99/nspanel-lovelace-ui/wiki

            1 Antwort Letzte Antwort
            0
            • ArmilarA Armilar

              @niiccooo1 sagte in Sonoff NSPanel:

              @armilar

              Danke für deinen ausführlichen Kommentar.
              Mein Ziel wäre wie folgt:

              Über die MediaCard können, wie du bereits beschrieben hast, über 'speaker-sel' die Alexa Lautsprecher ausgewählt werden. (Ich denke sobald ein anderer Speaker über die Pfeiltaste ausgewählt wird, springt die Musik auf das Gerät über).

              Aktuell habe ich im Alias Media nicht den Alexa Player implementiert, sondern den Spotify Player.
              Das scheint soweit auch zu funktionieren (theoretisch könnte ich den Player auch über Alexa laufen lassen).

              Jetzt würde ich das gerne so realisieren, dass über speaker-sel nicht die Alexa-Geräte aufgelistet werden sondern die Geräte die im spotifyadapter über "spotify-premium.0.devices.deviceList" aufgelistet werden.

              {
               "_id": "spotify-premium.0.devices.deviceList",
               "type": "state",
               "common": {
                 "name": "All devices saved in common part. Change this value to a device id to start playing on this.",
                 "type": "string",
                 "role": "value",
                 "states": {
                   "c0d4dfea666270411a233ed452adb01a47efc381": "TV Wohnzimmer",
                   "d09e64cd-7ba6-4410-a7e2-78d5f7b7d1e4_amzn_1": "Echo Dot 4 weiß",
                   "033ab8c7abb61a952a899ac25aadccf315761f3b": "HP30P"
                 },
                 "read": true,
                 "write": true
               },
               "native": {},
               "from": "system.adapter.spotify-premium.0",
               "ts": 1662358872878,
               "acl": {
                 "object": 1636,
                 "state": 1636,
                 "owner": "system.user.admin",
                 "ownerGroup": "system.group.administrator"
               },
               "user": "system.user.admin"
              }
              

              Sobald ein Gerät ausgewählt ist (z.B. über ein Popup?), sollte die Musik direkt über diesen Lautsprecher ausgegeben werden.
              Meine Javascript Skills sind leider sehr begrenzt weshalb bei mir an der Umsetzung scheitert.

              Genau diesen Datenpunkt würde ich nicht nehmen - wenn der Spotify-Adapter eine Zeit lang nichts mehr zu tun hatte ist der nämlich leer.

              Aber mit den nachfolgenden beiden dürfte es funktionieren:
              97206cd5-e89b-4abb-975a-aab20a5ed33b-image.png

              beide in Arrays (DeviceString und DeviceID) einlesen, d.h. beide mit split (;) trennen

              Dann mit dem vom Panel übergebenen Device mit DeviceString.indexof() suchen und die zugehörige ID ermitteln.

              Danach Unter Devices die ermittelte ID auf useForPlayback = true setzen

              Klingt eigentlich simpel ;-)

              Ich sehe mir das mal bei Zeiten genauer an

              N Offline
              N Offline
              niiccooo1
              schrieb am zuletzt editiert von
              #1278

              @armilar Verstehe zwar nur Bahnhof, aber ich habe da vollstes Vertrauen in dich :D

              ArmilarA 1 Antwort Letzte Antwort
              0
              • G Offline
                G Offline
                gritrasq
                schrieb am zuletzt editiert von
                #1279

                Hallo Zusammen,
                ich bitte um Nachsicht, das ist mein erster Post, bisher hat mitlesen immer geholfen. In diesem Sinne auch gleich mal einen Dank an alle. Wenn es hier nicht passt bitte verschieben oder löschen.

                Installation:
                Für das NSPanel verwende ich das Script NsPanelTs.ts vom 4.9.22
                Für das global Icon Mapping das Script icon_mapping.ts von vor 5 Monaten.
                Iobroker ist auf einem RPI installiert. Alle Adapter aktuell.

                Ich habe das Panel gestern neu installiert und soweit läuft es erst einmal (Uhrzeit geht eine Stunde nach, aber egal)
                Screensaver wird angezeigt.
                Die Beispielseiten auch soweit das eben geht.

                Ich habe nun zwei Probleme.

                Problem 1:
                Ich habe den Screensaver modifiziert und zeige die Daten meiner PV Anlage an. Das geht super, aber ich bekomme den Forecast nicht ausgeschaltet. Lt. Anleitung von haus-automatisierung.com müsste dies via:
                const weatherForecast = false gehe. diesen Eintrag finde ich nicht und wenn ich ihn erstelle bewirkt er nichts.

                Wenn ich es in 0_userdata.0.NSPanel.1.ScreensaverInfo.weatherForecast auf false setze geht es immer wieder auf True.

                Problem 2.
                Ich wollte gerne weitere Daten aus meiner PV Anlage auf einer Page anzeigen. Hierzu habe ich einen Info "Gerät" angelegt, welches dann aber im Geräte Adapter nicht mehr erscheint.
                GerätPV.png
                Aber im Alias existiert
                ecb2bf20-7cc1-4654-8623-dac0c2a83558-image.png
                im Script habe ich folgendes eingetragen:

                 <PageItem>{ id: "alias.0.Außenbereich.PV-Anlage.Leistung_Panel.ACTUAL", icon: "solar-panel-large", name: "PV-Leistung"},
                

                Mir wird auf dem Panel das Icon angezeigt und der Name beim Wert steht aber eine "0"
                Role ist Info, also dachte ich es müsste gehen.
                Wenn ich es richtig verstanden haben reagiert das Panel ja auf die Role, und die Werte SET und ACTUAL im Alias.

                Vielen Dank im Voraus

                G K 2 Antworten Letzte Antwort
                0
                • G gritrasq

                  Hallo Zusammen,
                  ich bitte um Nachsicht, das ist mein erster Post, bisher hat mitlesen immer geholfen. In diesem Sinne auch gleich mal einen Dank an alle. Wenn es hier nicht passt bitte verschieben oder löschen.

                  Installation:
                  Für das NSPanel verwende ich das Script NsPanelTs.ts vom 4.9.22
                  Für das global Icon Mapping das Script icon_mapping.ts von vor 5 Monaten.
                  Iobroker ist auf einem RPI installiert. Alle Adapter aktuell.

                  Ich habe das Panel gestern neu installiert und soweit läuft es erst einmal (Uhrzeit geht eine Stunde nach, aber egal)
                  Screensaver wird angezeigt.
                  Die Beispielseiten auch soweit das eben geht.

                  Ich habe nun zwei Probleme.

                  Problem 1:
                  Ich habe den Screensaver modifiziert und zeige die Daten meiner PV Anlage an. Das geht super, aber ich bekomme den Forecast nicht ausgeschaltet. Lt. Anleitung von haus-automatisierung.com müsste dies via:
                  const weatherForecast = false gehe. diesen Eintrag finde ich nicht und wenn ich ihn erstelle bewirkt er nichts.

                  Wenn ich es in 0_userdata.0.NSPanel.1.ScreensaverInfo.weatherForecast auf false setze geht es immer wieder auf True.

                  Problem 2.
                  Ich wollte gerne weitere Daten aus meiner PV Anlage auf einer Page anzeigen. Hierzu habe ich einen Info "Gerät" angelegt, welches dann aber im Geräte Adapter nicht mehr erscheint.
                  GerätPV.png
                  Aber im Alias existiert
                  ecb2bf20-7cc1-4654-8623-dac0c2a83558-image.png
                  im Script habe ich folgendes eingetragen:

                   <PageItem>{ id: "alias.0.Außenbereich.PV-Anlage.Leistung_Panel.ACTUAL", icon: "solar-panel-large", name: "PV-Leistung"},
                  

                  Mir wird auf dem Panel das Icon angezeigt und der Name beim Wert steht aber eine "0"
                  Role ist Info, also dachte ich es müsste gehen.
                  Wenn ich es richtig verstanden haben reagiert das Panel ja auf die Role, und die Werte SET und ACTUAL im Alias.

                  Vielen Dank im Voraus

                  G Offline
                  G Offline
                  gritrasq
                  schrieb am zuletzt editiert von
                  #1280

                  @gritrasq Problem 1 ist gelöst. Das "ACTUAL" darf nicht mit dran und wenn man den Punkt beim Löschen ünersieht, dann geht das auch nicht. Sorry.

                  ArmilarA 1 Antwort Letzte Antwort
                  0
                  • G gritrasq

                    @gritrasq Problem 1 ist gelöst. Das "ACTUAL" darf nicht mit dran und wenn man den Punkt beim Löschen ünersieht, dann geht das auch nicht. Sorry.

                    ArmilarA Offline
                    ArmilarA Offline
                    Armilar
                    Most Active Forum Testing
                    schrieb am zuletzt editiert von Armilar
                    #1281

                    @gritrasq sagte in Sonoff NSPanel:

                    @gritrasq Problem 1 ist gelöst. Das "ACTUAL" darf nicht mit dran und wenn man den Punkt beim Löschen ünersieht, dann geht das auch nicht. Sorry.

                    Zunächst einmal "herzlich Willkommen". Für genau das ist der Thread ja gedacht.

                    Es gab seit dem Video eine kleine Änderung. Der icons im Screensaver werden jetzt über die Datenpunkte gesteuert.

                    unter 0_usderdata.0.NSPanelX.ScreensaverInfo...
                    49313e80-ba16-42c0-8b29-0bedc9dea97e-image.png

                    über den weatherForecastTimer wird festgelegt, ob es einen minütlichen Wechsel des weatherForecast geben soll. Wenn also weatherForecastTimer = true ist, dann wechselt weatherForecast jede Minute von true nach false.

                    Lösung: weatherForecastTimer = false

                    Ich denke der Alias Punkt ist erledigt und das war noch offen, oder gibt es nach wie vor noch ein Problem?

                    Und echt kein Problem - das Skript ist mega-komplex. Man müsste mittlerweile ein Buch schreiben um alles beschreiben zu können

                    Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                    https://github.com/joBr99/nspanel-lovelace-ui/wiki

                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                    N 1 Antwort Letzte Antwort
                    0
                    • N niiccooo1

                      @armilar Verstehe zwar nur Bahnhof, aber ich habe da vollstes Vertrauen in dich :D

                      ArmilarA Offline
                      ArmilarA Offline
                      Armilar
                      Most Active Forum Testing
                      schrieb am zuletzt editiert von Armilar
                      #1282

                      @niiccooo1 sagte in Sonoff NSPanel:

                      @armilar Verstehe zwar nur Bahnhof, aber ich habe da vollstes Vertrauen in dich :D

                      Nun mal etwas zu Bahnhof:

                      Das ist dein neuer case 'speaker-sel':

                              case 'speaker-sel':
                      
                                  var strDeviceID = spotifyGetDeviceID(words[4]);
                                  setState("spotify-premium.0.devices." + strDeviceID + ".useForPlayback", true);
                      /*
                                  let i_list = Array.prototype.slice.apply($('[state.id="' + alexaInstanz + '.Echo-Devices.*.Info.name"]'));
                                  for (let i_index in i_list) {
                                      let i = i_list[i_index];
                                      if ((getState(i).val) === words[4]) {
                                          let deviceId = i;
                                          deviceId = deviceId.split('.');
                                          setIfExists(alexaInstanz + '.Echo-Devices.' + alexaDevice + '.Commands.textCommand', 'Schiebe meine Musik auf ' + words[4]);
                                          alexaDevice = deviceId[3];
                                      }
                                  }
                      */
                                  break;
                      

                      und das ist eine Funktion die du irgendwo in den Code kopieren musst:

                      function spotifyGetDeviceID(vDeviceString) {
                          const availableDeviceIDs = getState("spotify-premium.0.devices.availableDeviceListIds").val;
                          const availableDeviceNames = getState("spotify-premium.0.devices.availableDeviceListString").val;
                          var arrayDeviceListIds = availableDeviceIDs.split(";");
                          var arrayDeviceListSting = availableDeviceNames.split(";");
                          var indexPos = arrayDeviceListSting.indexOf(vDeviceString);
                          var strDevID = arrayDeviceListIds[indexPos];
                          return strDevID;
                      }
                      

                      Ich habe die jetzt fast am Ende unter der function rgb_to_cie(red, green, blue) platziert.

                      Teste mal, ob das für dich funktioniert. Falls ja, kann ich da noch ein paar Parameter in den pageItem setzten (wahlweise Alexa oder Spotify oder dynamisch über was ist da und wird abgespielt oder wer weiß auch immer was... ;-) )

                      Zumindest könnte man dem Panel die Entscheidung über Spotify und/oder Alexa überlassen

                      Ach ja: Für den Test sollte in dem TS-Array etwas drinstehen

                      // Wenn alexaSpeakerList definiert, dann werden Einträge verwendet, sonst alle relevanten Devices aus Alexa-Instanz
                      // Speakerwechsel funktioniert nicht bei Radio/TuneIn sondern bei Playlists
                      const alexaSpeakerList = [
                          'TV Wohnzimmer',
                          'Echo Dot 4 weiß',
                          'HP30P'
                      ];
                      

                      Und abschließend:
                      Nicht die Pfeiltaste löst die Aktion aus. Die sorgt nur dafür, das du die Speaker wechseln kannst. Zur Auswahl (Also für die Wechselaktion) musst du dann auf den ausgewählten "Speaker-Namen" klicken!

                      Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                      https://github.com/joBr99/nspanel-lovelace-ui/wiki

                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                      N 1 Antwort Letzte Antwort
                      0
                      • ArmilarA Armilar

                        @niiccooo1 sagte in Sonoff NSPanel:

                        @armilar Verstehe zwar nur Bahnhof, aber ich habe da vollstes Vertrauen in dich :D

                        Nun mal etwas zu Bahnhof:

                        Das ist dein neuer case 'speaker-sel':

                                case 'speaker-sel':
                        
                                    var strDeviceID = spotifyGetDeviceID(words[4]);
                                    setState("spotify-premium.0.devices." + strDeviceID + ".useForPlayback", true);
                        /*
                                    let i_list = Array.prototype.slice.apply($('[state.id="' + alexaInstanz + '.Echo-Devices.*.Info.name"]'));
                                    for (let i_index in i_list) {
                                        let i = i_list[i_index];
                                        if ((getState(i).val) === words[4]) {
                                            let deviceId = i;
                                            deviceId = deviceId.split('.');
                                            setIfExists(alexaInstanz + '.Echo-Devices.' + alexaDevice + '.Commands.textCommand', 'Schiebe meine Musik auf ' + words[4]);
                                            alexaDevice = deviceId[3];
                                        }
                                    }
                        */
                                    break;
                        

                        und das ist eine Funktion die du irgendwo in den Code kopieren musst:

                        function spotifyGetDeviceID(vDeviceString) {
                            const availableDeviceIDs = getState("spotify-premium.0.devices.availableDeviceListIds").val;
                            const availableDeviceNames = getState("spotify-premium.0.devices.availableDeviceListString").val;
                            var arrayDeviceListIds = availableDeviceIDs.split(";");
                            var arrayDeviceListSting = availableDeviceNames.split(";");
                            var indexPos = arrayDeviceListSting.indexOf(vDeviceString);
                            var strDevID = arrayDeviceListIds[indexPos];
                            return strDevID;
                        }
                        

                        Ich habe die jetzt fast am Ende unter der function rgb_to_cie(red, green, blue) platziert.

                        Teste mal, ob das für dich funktioniert. Falls ja, kann ich da noch ein paar Parameter in den pageItem setzten (wahlweise Alexa oder Spotify oder dynamisch über was ist da und wird abgespielt oder wer weiß auch immer was... ;-) )

                        Zumindest könnte man dem Panel die Entscheidung über Spotify und/oder Alexa überlassen

                        Ach ja: Für den Test sollte in dem TS-Array etwas drinstehen

                        // Wenn alexaSpeakerList definiert, dann werden Einträge verwendet, sonst alle relevanten Devices aus Alexa-Instanz
                        // Speakerwechsel funktioniert nicht bei Radio/TuneIn sondern bei Playlists
                        const alexaSpeakerList = [
                            'TV Wohnzimmer',
                            'Echo Dot 4 weiß',
                            'HP30P'
                        ];
                        

                        Und abschließend:
                        Nicht die Pfeiltaste löst die Aktion aus. Die sorgt nur dafür, das du die Speaker wechseln kannst. Zur Auswahl (Also für die Wechselaktion) musst du dann auf den ausgewählten "Speaker-Namen" klicken!

                        N Offline
                        N Offline
                        niiccooo1
                        schrieb am zuletzt editiert von niiccooo1
                        #1283

                        @armilar
                        Ich bin begeistert :D

                        Die Auswahl und das Abspielen auf den einzelnen Geräten funktioniert tadellos.

                        Mir fällt nur auf, dass wenn ich einen Lied weiter gehe, der Titel , Artist usw. erst aktualisiert wird, wenn ich die Anzeige wechsle oder das Panel aus dem Standby wecke.

                        Auch steht beim aktuellen Gerät "null" blau hinterlegt d.h. ich sehe wenn das Panel aus dem Standby geweckt nicht auf welchen Speaker er gerade streamt.
                        EDIT:
                        Habe noch folgende Passage unter in die GenerateMediaPage diesen Part

                         let currentSpeaker = getState(([alexaInstanz, '.Echo-Devices.', alexaDevice, '.Info.name'].join(''))).val;
                        

                        gegen

                        let currentSpeaker = getState(([spotifyInstanz, '.player.device.name'].join(''))).val; 
                        

                        ausgetauscht

                        Die Idee mit dem Wechsel zwischen Alexa und Spotify finde ich gut.
                        Viele werden sicherlich auch Sonossysteme oder ähnliches im Haus haben. Da weiß ich nicht ob diese über den Alexa Adapter gesteuert werden können.

                        ArmilarA K 2 Antworten Letzte Antwort
                        0
                        • ArmilarA Armilar

                          @gritrasq sagte in Sonoff NSPanel:

                          @gritrasq Problem 1 ist gelöst. Das "ACTUAL" darf nicht mit dran und wenn man den Punkt beim Löschen ünersieht, dann geht das auch nicht. Sorry.

                          Zunächst einmal "herzlich Willkommen". Für genau das ist der Thread ja gedacht.

                          Es gab seit dem Video eine kleine Änderung. Der icons im Screensaver werden jetzt über die Datenpunkte gesteuert.

                          unter 0_usderdata.0.NSPanelX.ScreensaverInfo...
                          49313e80-ba16-42c0-8b29-0bedc9dea97e-image.png

                          über den weatherForecastTimer wird festgelegt, ob es einen minütlichen Wechsel des weatherForecast geben soll. Wenn also weatherForecastTimer = true ist, dann wechselt weatherForecast jede Minute von true nach false.

                          Lösung: weatherForecastTimer = false

                          Ich denke der Alias Punkt ist erledigt und das war noch offen, oder gibt es nach wie vor noch ein Problem?

                          Und echt kein Problem - das Skript ist mega-komplex. Man müsste mittlerweile ein Buch schreiben um alles beschreiben zu können

                          N Offline
                          N Offline
                          niiccooo1
                          schrieb am zuletzt editiert von niiccooo1
                          #1284

                          @armilar
                          Da würde ich auch mal gerne meinen Senf dazu geben.

                          Ich habe den "0_userdata.0.NSPanel.1.ScreensaverInfo.weatherForecastTimer" ebenfalls auf false stehen.
                          Stelle ich den Datenpunkt "0_userdata.0.NSPanel.1.ScreensaverInfo.weatherForecast" auf false, springt dieser pünktlich zur halben Minute auf true und kehrt nicht wieder zurück.

                          Woran kann das liegen?

                          Vielen Dank schonmal.

                          EDIT:

                          async function InitWeatherForecast() {
                              //----Möglichkeit, im Screensaver zwischen Accu-Weather Forecast oder selbstdefinierten Werten zu wählen---------------------------------
                              if (existsState(NSPanel_Path + "ScreensaverInfo.weatherForecast") == false || existsState(NSPanel_Path + "ScreensaverInfo.weatherForecastTimer") == false) {
                                  await createStateAsync(NSPanel_Path + "ScreensaverInfo.weatherForecast", true, { type: 'boolean' });
                                  await createStateAsync(NSPanel_Path + "ScreensaverInfo.weatherForecastTimer", true, { type: 'boolean' });
                              };
                          
                          ArmilarA 1 Antwort Letzte Antwort
                          1
                          • M Offline
                            M Offline
                            monarc
                            schrieb am zuletzt editiert von
                            #1285

                            Hallo zusammen, klasse Arbeit von @Armilar und der Community hier im Thread. Danke schon mal an dieser Stelle.

                            Hätte jemand Zeit und Lust das einrichten der Media Card im Detail zu beschreiben? gerne für Alexa und auch Radio. Hab absolut keine Idee was im Alias Manager zu tun und einzustellen ist.

                            Sollte es eine solche Anleitung hier im Thread übersehen haben tut es mir leid und ich würde mich über einen Hinweis freuen.

                            Vielen Dank im Voraus und einen schönen Abend noch....

                            VG
                            Marc

                            ArmilarA 1 Antwort Letzte Antwort
                            0
                            • ArmilarA Armilar

                              Hardware-Buttons im Multipress-Mode

                              Für alle die es noch nicht wussten:

                              Man kann die physische Hardware-Buttons auch im

                              SetOption73 1
                              

                              (Multi-Press Functions) betreiben. (Rule2 dabei ausschalten)

                              a1e5208a-bd46-403c-a7a5-7133b9003d23-image.png

                              Jeder Button sendet per /stat/RESULT "SINGLE", "DOUBLE", "TRIPLE", "QUAD" oder "PENTA". Somit hat man 5 mögliche Schaltzustände pro Button.

                              Da ein sechster Klick das WifiConfig 2 ausführt, sollte dabei ebenfalls

                              SetOption1 1
                              

                              ausgeführt werden, um zu verhindern, dass der Wifi Manager ausgeführt wird.

                              Falls du diese Funktion nutzen möchtest, kannst du das nachfolgende Blockly (siehe Spoiler) gerne verwenden:
                              71878124-cf78-4254-bf64-62c7a0d20310-image.png

                              Blockly import

                              <xml xmlns="https://developers.google.com/blockly/xml">
                                <variables>
                                  <variable id="$%h)IyP*A]i!w|o;@^u~">PanelResult</variable>
                                  <variable id="iG,DhTT3ntIL)6jkdBSx">Action</variable>
                                </variables>
                                <block type="on_ext" id="Z*WW:Hq=V/0/+D.7sBGj" x="88" y="63">
                                  <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                  <field name="CONDITION">any</field>
                                  <field name="ACK_CONDITION"></field>
                                  <value name="OID0">
                                    <shadow type="field_oid" id="s?5LPlVoKvrW,Gf/,d6(">
                                      <field name="oid">default</field>
                                    </shadow>
                                    <block type="field_oid" id=";VZs-nq`+#GL`5jVspo^">
                                      <field name="oid">mqtt.0.SmartHome.NSPanel_1.stat.RESULT</field>
                                    </block>
                                  </value>
                                  <statement name="STATEMENT">
                                    <block type="variables_set" id="W*-eYA4LLj$WMX1vlx9+">
                                      <field name="VAR" id="$%h)IyP*A]i!w|o;@^u~">PanelResult</field>
                                      <value name="VALUE">
                                        <block type="convert_json2object" id="H}rYz*|_N_r:7lN6kRq)">
                                          <value name="VALUE">
                                            <block type="on_source" id="ks};I#sE9{y$Os12X3%`">
                                              <field name="ATTR">state.val</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="controls_if" id="|e+,CBW1}SywJvnEFroP">
                                          <mutation elseif="1"></mutation>
                                          <value name="IF0">
                                            <block type="logic_compare" id="tkA^fRI!3FU^2Tiqlahc">
                                              <field name="OP">EQ</field>
                                              <value name="A">
                                                <block type="text_getSubstring" id="k}-`K]@kua~8fg*?I[t#">
                                                  <mutation at1="true" at2="true"></mutation>
                                                  <field name="WHERE1">FROM_START</field>
                                                  <field name="WHERE2">FROM_START</field>
                                                  <value name="STRING">
                                                    <block type="on_source" id="qCOa@52xDIv4(R#:]Yzp">
                                                      <field name="ATTR">state.val</field>
                                                    </block>
                                                  </value>
                                                  <value name="AT1">
                                                    <block type="math_number" id="Ncm@lgRgVYVBF~^yWKRE">
                                                      <field name="NUM">3</field>
                                                    </block>
                                                  </value>
                                                  <value name="AT2">
                                                    <block type="math_number" id="Gov$3|Qrd91N~RUzWea=">
                                                      <field name="NUM">9</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="text" id="2~EGhvBs4KIPXXMcNVkx">
                                                  <field name="TEXT">Button1</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <statement name="DO0">
                                            <block type="variables_set" id="G!Z=C5KTj-Nl+XFa0RU_">
                                              <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
                                              <value name="VALUE">
                                                <block type="get_attr" id="Ed}{-}B{X+obkb^Mmk8O">
                                                  <value name="PATH">
                                                    <shadow type="text">
                                                      <field name="TEXT">Button2.Action</field>
                                                    </shadow>
                                                    <block type="text" id="-XSmbNSLD2q^JU.3)[(^">
                                                      <field name="TEXT">Button1.Action</field>
                                                    </block>
                                                  </value>
                                                  <value name="OBJECT">
                                                    <block type="variables_get" id="-%8e}:rqW1kj_iUDQyyf">
                                                      <field name="VAR" id="$%h)IyP*A]i!w|o;@^u~">PanelResult</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <next>
                                                <block type="controls_if" id="729?J2a__sAP*2PmMN2%">
                                                  <mutation elseif="4"></mutation>
                                                  <value name="IF0">
                                                    <block type="logic_compare" id="u9lV/l]c1,yVRl3(21(L">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="variables_get" id="kG0ARQ1j%HKz(I=l}`:P">
                                                          <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="text" id="v?m}nM1~E8zR0,Ja+if+">
                                                          <field name="TEXT">SINGLE</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO0">
                                                    <block type="comment" id="iqFwhe!^P0z9-W9D[tyh">
                                                      <field name="COMMENT">Schalte etwas: Button1 1x gedrückt</field>
                                                      <next>
                                                        <block type="debug" id="F22M/f@lJ_xQ$t2#QW[#">
                                                          <field name="Severity">log</field>
                                                          <value name="TEXT">
                                                            <shadow type="text">
                                                              <field name="TEXT">Button</field>
                                                            </shadow>
                                                            <block type="text" id="?r3.Wy5c@$3DxmvbIGr}">
                                                              <field name="TEXT">Button1 SINGLE wurde gedrückt</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                  <value name="IF1">
                                                    <block type="logic_compare" id="[Vpq7B,RWb4k)Bhwq{nh">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="variables_get" id="|Whz!$I5#Iym52Pg8N?p">
                                                          <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="text" id="~f_cI8hrs;I)wJ-S.G3r">
                                                          <field name="TEXT">DOUBLE</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO1">
                                                    <block type="comment" id="D;PPB54t87N)%F{.hQAx">
                                                      <field name="COMMENT">Schalte etwas: Button1 2x gedrückt</field>
                                                      <next>
                                                        <block type="debug" id="xoG/r3;33`8/j$QeZHW5">
                                                          <field name="Severity">log</field>
                                                          <value name="TEXT">
                                                            <shadow type="text">
                                                              <field name="TEXT">Button</field>
                                                            </shadow>
                                                            <block type="text" id="9PgW|#6f8``brbWQM9q7">
                                                              <field name="TEXT">Button1 DOUBLE wurde gedrückt</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                  <value name="IF2">
                                                    <block type="logic_compare" id="t)8drGw=u/q0Pl+ul^43">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="variables_get" id="-lf~?Q^H8o}J:cf@I5aN">
                                                          <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="text" id="Z!={5~.hF?V-NFw73|BL">
                                                          <field name="TEXT">TRIPLE</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO2">
                                                    <block type="comment" id="xjdh~X8eM8ab/a/JuIM/">
                                                      <field name="COMMENT">Schalte etwas: Button1 3x gedrückt</field>
                                                      <next>
                                                        <block type="debug" id="n$kU%^k3$wHN/L**K=jA">
                                                          <field name="Severity">log</field>
                                                          <value name="TEXT">
                                                            <shadow type="text">
                                                              <field name="TEXT">Button</field>
                                                            </shadow>
                                                            <block type="text" id="SA^R/OJX#a7JDhE7LwL[">
                                                              <field name="TEXT">Button1 TRIPLE wurde gedrückt</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                  <value name="IF3">
                                                    <block type="logic_compare" id="ZCUeBK[Sc08KKQVMF)tC">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="variables_get" id=":Jlhv9(rM!D5H*eM|Gw-">
                                                          <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="text" id="6NH!g[HN7f=7_q%U10M!">
                                                          <field name="TEXT">QUAD</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO3">
                                                    <block type="comment" id="77*X9-*|mO]|P0$Jw=K`">
                                                      <field name="COMMENT">Schalte etwas: Button1 4x gedrückt</field>
                                                      <next>
                                                        <block type="debug" id="qE@`G.#9s!UAtrlMJ/yi">
                                                          <field name="Severity">log</field>
                                                          <value name="TEXT">
                                                            <shadow type="text">
                                                              <field name="TEXT">Button</field>
                                                            </shadow>
                                                            <block type="text" id="G:19{lKn)m`B!x(NUx5S">
                                                              <field name="TEXT">Button1 QUAD wurde gedrückt</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                  <value name="IF4">
                                                    <block type="logic_compare" id="fz#2[~sK=iF%wd=4`hB,">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="variables_get" id="ROFyrrPZn5KJg7?Hs),Z">
                                                          <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="text" id="a]-o=$vOr9JDr(T!#SmL">
                                                          <field name="TEXT">PENTA</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO4">
                                                    <block type="comment" id="fxPE82.Ci3L`ME=X3nl|">
                                                      <field name="COMMENT">Schalte etwas: Button1 5x gedrückt</field>
                                                      <next>
                                                        <block type="debug" id="7GbZ650het?k*+CCO:nr">
                                                          <field name="Severity">log</field>
                                                          <value name="TEXT">
                                                            <shadow type="text">
                                                              <field name="TEXT">Button</field>
                                                            </shadow>
                                                            <block type="text" id="*[}-a1hl?2pc^*@4E*hI">
                                                              <field name="TEXT">Button1 PENTA wurde gedrückt</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </next>
                                            </block>
                                          </statement>
                                          <value name="IF1">
                                            <block type="logic_compare" id="8Ev:iPPfN3B?L^Q]oOIc">
                                              <field name="OP">EQ</field>
                                              <value name="A">
                                                <block type="text_getSubstring" id="xx:q0nC7,q8A8~v?PC#s">
                                                  <mutation at1="true" at2="true"></mutation>
                                                  <field name="WHERE1">FROM_START</field>
                                                  <field name="WHERE2">FROM_START</field>
                                                  <value name="STRING">
                                                    <block type="on_source" id="JWC4m9/7dS^!]+xQ-I0Y">
                                                      <field name="ATTR">state.val</field>
                                                    </block>
                                                  </value>
                                                  <value name="AT1">
                                                    <block type="math_number" id="k7=j)18I6TmB%)upvAVJ">
                                                      <field name="NUM">3</field>
                                                    </block>
                                                  </value>
                                                  <value name="AT2">
                                                    <block type="math_number" id=",EKn%h/uX3}ZjCvmW1KE">
                                                      <field name="NUM">9</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="text" id="Uuj{UrX@-3nNjw{n!H/@">
                                                  <field name="TEXT">Button2</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <statement name="DO1">
                                            <block type="variables_set" id="U~1k_f;62_-QkRvGZz=)">
                                              <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
                                              <value name="VALUE">
                                                <block type="get_attr" id="izCz6K1Y;L.7M7MlHA$c">
                                                  <value name="PATH">
                                                    <shadow type="text">
                                                      <field name="TEXT">Button2.Action</field>
                                                    </shadow>
                                                    <block type="text" id="y1)^1#)QjYVVA7)mWdvM">
                                                      <field name="TEXT">Button2.Action</field>
                                                    </block>
                                                  </value>
                                                  <value name="OBJECT">
                                                    <block type="variables_get" id="TIg$Lr%^Fuk`fxDLC:,^">
                                                      <field name="VAR" id="$%h)IyP*A]i!w|o;@^u~">PanelResult</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <next>
                                                <block type="controls_if" id="tC_APU:6jW5063/l=sR1">
                                                  <mutation elseif="4"></mutation>
                                                  <value name="IF0">
                                                    <block type="logic_compare" id="P9XXNXzc+3H{*^w1P_@q">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="variables_get" id="sua/L8[qi8e:U#m}d^pi">
                                                          <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="text" id="E^e9/nh{n@)S6e:4q3_h">
                                                          <field name="TEXT">SINGLE</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO0">
                                                    <block type="comment" id="qoOw*}O|E06w[5[cXWLo">
                                                      <field name="COMMENT">Schalte etwas: Button2 1x gedrückt</field>
                                                      <next>
                                                        <block type="debug" id=",tE:-UWz(0Zqlc8KBLqO">
                                                          <field name="Severity">log</field>
                                                          <value name="TEXT">
                                                            <shadow type="text" id="!waPZV$J9fR+dq462%h+">
                                                              <field name="TEXT">Button</field>
                                                            </shadow>
                                                            <block type="text" id="{3#KVO|*86E:3pR/!%WP">
                                                              <field name="TEXT">Button2 SINGLE wurde gedrückt</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                  <value name="IF1">
                                                    <block type="logic_compare" id="_Z+eBL!Zj.|LQL+_s|Ld">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="variables_get" id="15Tx7/a!(wJ;FO+x!4JW">
                                                          <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="text" id="}l%?@L+:Ma!=:d2Ky/%*">
                                                          <field name="TEXT">DOUBLE</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO1">
                                                    <block type="comment" id="~72fN$sZV!.O{%*0+awy">
                                                      <field name="COMMENT">Schalte etwas: Button2 2x gedrückt</field>
                                                      <next>
                                                        <block type="debug" id="-T4*$n8-_X_{@6!Ga5FQ">
                                                          <field name="Severity">log</field>
                                                          <value name="TEXT">
                                                            <shadow type="text">
                                                              <field name="TEXT">Button</field>
                                                            </shadow>
                                                            <block type="text" id="LFX2j}Pr:o,{$YxQVcp2">
                                                              <field name="TEXT">Button2 DOUBLE wurde gedrückt</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                  <value name="IF2">
                                                    <block type="logic_compare" id="6-2Eew1,aoyC]Th*AaJ5">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="variables_get" id="4Nl6[tYm2pL@rL7v8vLI">
                                                          <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="text" id="zthA#*kib2r|xv+,A{Sh">
                                                          <field name="TEXT">TRIPLE</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO2">
                                                    <block type="comment" id="?OI)q#8XL#1)x.E=*m~~">
                                                      <field name="COMMENT">Schalte etwas: Button2 3x gedrückt</field>
                                                      <next>
                                                        <block type="debug" id="%6ZLfC`!6?Z%jXlF:mFa">
                                                          <field name="Severity">log</field>
                                                          <value name="TEXT">
                                                            <shadow type="text">
                                                              <field name="TEXT">Button</field>
                                                            </shadow>
                                                            <block type="text" id="eh|tY,l}uz:WTx}4_G_E">
                                                              <field name="TEXT">Button2 TRIPLE wurde gedrückt</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                  <value name="IF3">
                                                    <block type="logic_compare" id="*~f.cy|6d8U0s?|^%:8R">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="variables_get" id="tiZ6%x5iuvhh:Yi*9qB9">
                                                          <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="text" id="I|K0m__6/:.kuBtYQE5l">
                                                          <field name="TEXT">QUAD</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO3">
                                                    <block type="comment" id="ToQ_dt~n$Ef|8-fb|__O">
                                                      <field name="COMMENT">Schalte etwas: Button2 4x gedrückt</field>
                                                      <next>
                                                        <block type="debug" id="qyb7DL~:^6|r@9~KOb+A">
                                                          <field name="Severity">log</field>
                                                          <value name="TEXT">
                                                            <shadow type="text">
                                                              <field name="TEXT">Button</field>
                                                            </shadow>
                                                            <block type="text" id="tb4wo7_n@J)Q9$FLf|rV">
                                                              <field name="TEXT">Button2 QUAD wurde gedrückt</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                  <value name="IF4">
                                                    <block type="logic_compare" id="M:x`b;I}a8;jJU=g}u)[">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="variables_get" id="Yh,)fk$+WmVXS=iwbzK{">
                                                          <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="text" id="1FMk3I`mfaAfEhMd$D#e">
                                                          <field name="TEXT">PENTA</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO4">
                                                    <block type="comment" id="5+tVGCf{MdkG(OBDmuy|">
                                                      <field name="COMMENT">Schalte etwas: Button2 5x gedrückt</field>
                                                      <next>
                                                        <block type="debug" id="}{-PVi#AL#[EGD,eb?M#">
                                                          <field name="Severity">log</field>
                                                          <value name="TEXT">
                                                            <shadow type="text">
                                                              <field name="TEXT">Button</field>
                                                            </shadow>
                                                            <block type="text" id="HuBkD3zi|o@.S3w.Qh7n">
                                                              <field name="TEXT">Button2 PENTA wurde gedrückt</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </next>
                                            </block>
                                          </statement>
                                        </block>
                                      </next>
                                    </block>
                                  </statement>
                                </block>
                              </xml>
                              

                              In der ersten Zeile musst du lediglich deine stat/RESULT anpassen und an den entsprechenden Kommentaren deine Aktoren einbauen.

                              Da das Hardware-Buttons sind werden die extern verarbeitet (nicht über das TS-Skript)

                              Viel Spaß dabei

                              Jens WoznyJ Offline
                              Jens WoznyJ Offline
                              Jens Wozny
                              schrieb am zuletzt editiert von
                              #1286

                              @armilar Danke für den Tipp! Genau nach sowas hatte ich gesucht und ja, ich gebe es zu, ich habe das Script auch auf meine Sonoff Touch angewendet :wink: .
                              Ich habe mir zum Script noch den Hold Befehl dazu gepackt, um bei 1x Licht an und bei Hold Licht aus, sowie bei der Rollo Steuerung dann 1x Ab und 2x Auf sowie Hold für Stop zu realisieren. Für die anderen fällt mir bestimmt auch was ein, aber es muss ja alles Kollegenfreundlich sein und von der Frau abgesegnet werden :v: .
                              Was mich wundert, bei einem ist der Hold Befehl bei 1 Sekunde halten, was ja auch perfekt ist, die anderen haben alle gefühlt 5 Sekunden Haltezeit.
                              Da gibt es bestimmt noch eine Stellschraube zum Justieren nehme ich an, die ich aber in der Anleitung von Tasmota irgendwo nicht finde.

                              Gruß Jens

                              ArmilarA 1 Antwort Letzte Antwort
                              0
                              • M monarc

                                Hallo zusammen, klasse Arbeit von @Armilar und der Community hier im Thread. Danke schon mal an dieser Stelle.

                                Hätte jemand Zeit und Lust das einrichten der Media Card im Detail zu beschreiben? gerne für Alexa und auch Radio. Hab absolut keine Idee was im Alias Manager zu tun und einzustellen ist.

                                Sollte es eine solche Anleitung hier im Thread übersehen haben tut es mir leid und ich würde mich über einen Hinweis freuen.

                                Vielen Dank im Voraus und einen schönen Abend noch....

                                VG
                                Marc

                                ArmilarA Offline
                                ArmilarA Offline
                                Armilar
                                Most Active Forum Testing
                                schrieb am zuletzt editiert von Armilar
                                #1287

                                @monarc sagte in Sonoff NSPanel:

                                Hallo zusammen, klasse Arbeit von @Armilar und der Community hier im Thread. Danke schon mal an dieser Stelle.

                                Hätte jemand Zeit und Lust das einrichten der Media Card im Detail zu beschreiben? gerne für Alexa und auch Radio. Hab absolut keine Idee was im Alias Manager zu tun und einzustellen ist.

                                Sollte es eine solche Anleitung hier im Thread übersehen haben tut es mir leid und ich würde mich über einen Hinweis freuen.

                                Vielen Dank im Voraus und einen schönen Abend noch....

                                VG
                                Marc

                                Hallo Marc,

                                Der Media-Alias ist eigentlich der komplexeste und dafür der einfachste Alias. Ich habe den im April 2022 das erste mal erstellen können. Bis heute ist das auch der einfachste Weg. Der ist im aktuellen Skript für Alexa vorhanden und funktioniert mit Radio (TuneIn), Playlists, etc. (Alles was Alexa so kann)

                                https://forum.iobroker.net/post/792794

                                War damals noch eher Jugend forscht... ;-)

                                PS.: @Kuckuckmann macht aktuell eine FAQ. Die wächst und ist ziemlich cool...
                                https://forum.iobroker.net/topic/50888/sonoff-nspanel/1212

                                Da ist unter anderem der Punkt 6 Alias Definitionen drin. Ist eine Tabelle in der der Media Alias auch enthalten ist. Einfach das Ergebnis vergleichen. Ich konnte den nach der Erstellung im Geräte-Manager noch erweitern/verändern.

                                Ich denke, die kann auch irgendwann in die github Wiki - in separate Punkte geschnitten. Aber aktuell wächst die noch hier...

                                Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                1 Antwort Letzte Antwort
                                0
                                • Jens WoznyJ Jens Wozny

                                  @armilar Danke für den Tipp! Genau nach sowas hatte ich gesucht und ja, ich gebe es zu, ich habe das Script auch auf meine Sonoff Touch angewendet :wink: .
                                  Ich habe mir zum Script noch den Hold Befehl dazu gepackt, um bei 1x Licht an und bei Hold Licht aus, sowie bei der Rollo Steuerung dann 1x Ab und 2x Auf sowie Hold für Stop zu realisieren. Für die anderen fällt mir bestimmt auch was ein, aber es muss ja alles Kollegenfreundlich sein und von der Frau abgesegnet werden :v: .
                                  Was mich wundert, bei einem ist der Hold Befehl bei 1 Sekunde halten, was ja auch perfekt ist, die anderen haben alle gefühlt 5 Sekunden Haltezeit.
                                  Da gibt es bestimmt noch eine Stellschraube zum Justieren nehme ich an, die ich aber in der Anleitung von Tasmota irgendwo nicht finde.

                                  Gruß Jens

                                  ArmilarA Offline
                                  ArmilarA Offline
                                  Armilar
                                  Most Active Forum Testing
                                  schrieb am zuletzt editiert von
                                  #1288

                                  @jens-wozny sagte in Sonoff NSPanel:

                                  @armilar Danke für den Tipp! Genau nach sowas hatte ich gesucht und ja, ich gebe es zu, ich habe das Script auch auf meine Sonoff Touch angewendet :wink: .
                                  Ich habe mir zum Script noch den Hold Befehl dazu gepackt, um bei 1x Licht an und bei Hold Licht aus, sowie bei der Rollo Steuerung dann 1x Ab und 2x Auf sowie Hold für Stop zu realisieren. Für die anderen fällt mir bestimmt auch was ein, aber es muss ja alles Kollegenfreundlich sein und von der Frau abgesegnet werden :v: .
                                  Was mich wundert, bei einem ist der Hold Befehl bei 1 Sekunde halten, was ja auch perfekt ist, die anderen haben alle gefühlt 5 Sekunden Haltezeit.
                                  Da gibt es bestimmt noch eine Stellschraube zum Justieren nehme ich an, die ich aber in der Anleitung von Tasmota irgendwo nicht finde.

                                  Gruß Jens

                                  Hallo Jens,

                                  Ja, das ist doch perfekt - dann hat es mindestens einem etwas gebracht.

                                  Das kann man bestimmt irgendwo im Tasmota einstellen, wüsste aktuell aber nicht wo. Wenn ich drüber stolpere, teile ich es noch mit. Tasmota ist im laufe der Jahre auch echt mächtig geworden. Ansonsten direkt mal Theo Arends oder Blakadder fragen. Die wissen das bestimmt sofort.

                                  Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                  https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                  Jens WoznyJ 1 Antwort Letzte Antwort
                                  0
                                  • N niiccooo1

                                    @armilar
                                    Da würde ich auch mal gerne meinen Senf dazu geben.

                                    Ich habe den "0_userdata.0.NSPanel.1.ScreensaverInfo.weatherForecastTimer" ebenfalls auf false stehen.
                                    Stelle ich den Datenpunkt "0_userdata.0.NSPanel.1.ScreensaverInfo.weatherForecast" auf false, springt dieser pünktlich zur halben Minute auf true und kehrt nicht wieder zurück.

                                    Woran kann das liegen?

                                    Vielen Dank schonmal.

                                    EDIT:

                                    async function InitWeatherForecast() {
                                        //----Möglichkeit, im Screensaver zwischen Accu-Weather Forecast oder selbstdefinierten Werten zu wählen---------------------------------
                                        if (existsState(NSPanel_Path + "ScreensaverInfo.weatherForecast") == false || existsState(NSPanel_Path + "ScreensaverInfo.weatherForecastTimer") == false) {
                                            await createStateAsync(NSPanel_Path + "ScreensaverInfo.weatherForecast", true, { type: 'boolean' });
                                            await createStateAsync(NSPanel_Path + "ScreensaverInfo.weatherForecastTimer", true, { type: 'boolean' });
                                        };
                                    
                                    ArmilarA Offline
                                    ArmilarA Offline
                                    Armilar
                                    Most Active Forum Testing
                                    schrieb am zuletzt editiert von Armilar
                                    #1289

                                    @niiccooo1 sagte in Sonoff NSPanel:

                                    @armilar
                                    Da würde ich auch mal gerne meinen Senf dazu geben.

                                    Ich habe den "0_userdata.0.NSPanel.1.ScreensaverInfo.weatherForecastTimer" ebenfalls auf false stehen.
                                    Stelle ich den Datenpunkt "0_userdata.0.NSPanel.1.ScreensaverInfo.weatherForecast" auf false, springt dieser pünktlich zur halben Minute auf true und kehrt nicht wieder zurück.

                                    Woran kann das liegen?

                                    Vielen Dank schonmal.

                                    EDIT:

                                    async function InitWeatherForecast() {
                                        //----Möglichkeit, im Screensaver zwischen Accu-Weather Forecast oder selbstdefinierten Werten zu wählen---------------------------------
                                        if (existsState(NSPanel_Path + "ScreensaverInfo.weatherForecast") == false || existsState(NSPanel_Path + "ScreensaverInfo.weatherForecastTimer") == false) {
                                            await createStateAsync(NSPanel_Path + "ScreensaverInfo.weatherForecast", true, { type: 'boolean' });
                                            await createStateAsync(NSPanel_Path + "ScreensaverInfo.weatherForecastTimer", true, { type: 'boolean' });
                                        };
                                    

                                    Ja ist ja gut :blush: Ist natürlich ein Bug.

                                    Der Else Zweig wird nicht eingegrenzt. Habe einen else if (... eingebaut.

                                    Wer nicht abwarten kann. Die nachfolgenden Zeilen austauschen. (Ca. Zeile 600 im TS)

                                    schedule('* * * * *', () => {
                                        SendTime();
                                        //WeatherForcast true/false Umschaltung halbe Minute verzögert
                                        if (getState(NSPanel_Path + "ScreensaverInfo.popupNotifyHeading").val == '' && getState(NSPanel_Path + "ScreensaverInfo.popupNotifyText").val == '' && getState(NSPanel_Path + "ScreensaverInfo.weatherForecast").val == true && getState(NSPanel_Path + "ScreensaverInfo.weatherForecastTimer").val == true) {
                                            setStateDelayed(NSPanel_Path + "ScreensaverInfo.weatherForecast", false, 30000, false); 
                                        } else if (getState(NSPanel_Path + "ScreensaverInfo.popupNotifyHeading").val == '' && getState(NSPanel_Path + "ScreensaverInfo.popupNotifyText").val == '' && getState(NSPanel_Path + "ScreensaverInfo.weatherForecast").val == false && getState(NSPanel_Path + "ScreensaverInfo.weatherForecastTimer").val == true) {
                                            setStateDelayed(NSPanel_Path + "ScreensaverInfo.weatherForecast", true, 30000, false);
                                        }
                                    });
                                    

                                    So wäre es korrekt und so kommt es auch mit dem nächsten Update ins github

                                    Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                    https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                    1 Antwort Letzte Antwort
                                    1
                                    • N niiccooo1

                                      @armilar
                                      Ich bin begeistert :D

                                      Die Auswahl und das Abspielen auf den einzelnen Geräten funktioniert tadellos.

                                      Mir fällt nur auf, dass wenn ich einen Lied weiter gehe, der Titel , Artist usw. erst aktualisiert wird, wenn ich die Anzeige wechsle oder das Panel aus dem Standby wecke.

                                      Auch steht beim aktuellen Gerät "null" blau hinterlegt d.h. ich sehe wenn das Panel aus dem Standby geweckt nicht auf welchen Speaker er gerade streamt.
                                      EDIT:
                                      Habe noch folgende Passage unter in die GenerateMediaPage diesen Part

                                       let currentSpeaker = getState(([alexaInstanz, '.Echo-Devices.', alexaDevice, '.Info.name'].join(''))).val;
                                      

                                      gegen

                                      let currentSpeaker = getState(([spotifyInstanz, '.player.device.name'].join(''))).val; 
                                      

                                      ausgetauscht

                                      Die Idee mit dem Wechsel zwischen Alexa und Spotify finde ich gut.
                                      Viele werden sicherlich auch Sonossysteme oder ähnliches im Haus haben. Da weiß ich nicht ob diese über den Alexa Adapter gesteuert werden können.

                                      ArmilarA Offline
                                      ArmilarA Offline
                                      Armilar
                                      Most Active Forum Testing
                                      schrieb am zuletzt editiert von Armilar
                                      #1290

                                      @niiccooo1 sagte in Sonoff NSPanel:

                                      @armilar
                                      Ich bin begeistert :D

                                      Die Auswahl und das Abspielen auf den einzelnen Geräten funktioniert tadellos.

                                      Mir fällt nur auf, dass wenn ich einen Lied weiter gehe, der Titel , Artist usw. erst aktualisiert wird, wenn ich die Anzeige wechsle oder das Panel aus dem Standby wecke.

                                      Auch steht beim aktuellen Gerät "null" blau hinterlegt d.h. ich sehe wenn das Panel aus dem Standby geweckt nicht auf welchen Speaker er gerade streamt.
                                      EDIT:
                                      Habe noch folgende Passage unter in die GenerateMediaPage diesen Part

                                       let currentSpeaker = getState(([alexaInstanz, '.Echo-Devices.', alexaDevice, '.Info.name'].join(''))).val;
                                      

                                      gegen

                                      let currentSpeaker = getState(([spotifyInstanz, '.player.device.name'].join(''))).val; 
                                      

                                      ausgetauscht

                                      Die Idee mit dem Wechsel zwischen Alexa und Spotify finde ich gut.
                                      Viele werden sicherlich auch Sonossysteme oder ähnliches im Haus haben. Da weiß ich nicht ob diese über den Alexa Adapter gesteuert werden können.

                                      Perfekt, an den neuen Song (PREV/NEXT) hab ich mich bereits gewöhnt ;-)

                                      Hab ich schon einige Stunden investiert, aber mit der activePage sollte ein Refresh eigentlich jetzt gehen. Danke für den Hinweis.
                                      Kommt ins nächste Release.

                                      P.S: Die Sonos Geschichte funktioniert eigentlich nur mit dem Alexa-Adapter, wenn eine Alexa (z.B. SonosOne) integriert ist. Dann ist das Device aber auch im Alexa-Adapter...

                                      Alles andere muss über mächtig viele Umwege erstellt werden. Kann aber, sofern korrekte Datenpunkte zur Steuerung vorhanden sind mit dem Media-Alias umgesetzt werden. Google home eigentlich auch, obwohl ich das wohl nie testen werde...

                                      Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                      https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                      1 Antwort Letzte Antwort
                                      0
                                      • ArmilarA Armilar

                                        @jens-wozny sagte in Sonoff NSPanel:

                                        @armilar Danke für den Tipp! Genau nach sowas hatte ich gesucht und ja, ich gebe es zu, ich habe das Script auch auf meine Sonoff Touch angewendet :wink: .
                                        Ich habe mir zum Script noch den Hold Befehl dazu gepackt, um bei 1x Licht an und bei Hold Licht aus, sowie bei der Rollo Steuerung dann 1x Ab und 2x Auf sowie Hold für Stop zu realisieren. Für die anderen fällt mir bestimmt auch was ein, aber es muss ja alles Kollegenfreundlich sein und von der Frau abgesegnet werden :v: .
                                        Was mich wundert, bei einem ist der Hold Befehl bei 1 Sekunde halten, was ja auch perfekt ist, die anderen haben alle gefühlt 5 Sekunden Haltezeit.
                                        Da gibt es bestimmt noch eine Stellschraube zum Justieren nehme ich an, die ich aber in der Anleitung von Tasmota irgendwo nicht finde.

                                        Gruß Jens

                                        Hallo Jens,

                                        Ja, das ist doch perfekt - dann hat es mindestens einem etwas gebracht.

                                        Das kann man bestimmt irgendwo im Tasmota einstellen, wüsste aktuell aber nicht wo. Wenn ich drüber stolpere, teile ich es noch mit. Tasmota ist im laufe der Jahre auch echt mächtig geworden. Ansonsten direkt mal Theo Arends oder Blakadder fragen. Die wissen das bestimmt sofort.

                                        Jens WoznyJ Offline
                                        Jens WoznyJ Offline
                                        Jens Wozny
                                        schrieb am zuletzt editiert von
                                        #1291

                                        @armilar So, hab's gefunden, vielleicht braucht es ja noch jemand anderes wenn nicht, weiß ich wenigstens wo es steht :-) SetOption32 Haltezeit in 0,1 Sekunden Schritten anpassen. also SetOption 32 10 ist Haltezeit von 1 Sekunde, Standard 4 Sekunden also 40...

                                        Grüße...

                                        K 1 Antwort Letzte Antwort
                                        0
                                        • Jens WoznyJ Jens Wozny

                                          @armilar So, hab's gefunden, vielleicht braucht es ja noch jemand anderes wenn nicht, weiß ich wenigstens wo es steht :-) SetOption32 Haltezeit in 0,1 Sekunden Schritten anpassen. also SetOption 32 10 ist Haltezeit von 1 Sekunde, Standard 4 Sekunden also 40...

                                          Grüße...

                                          K Offline
                                          K Offline
                                          Kuckuckmann
                                          schrieb am zuletzt editiert von
                                          #1292

                                          @jens-wozny
                                          Hi ,

                                          kannst Du mir das, was Du eingestellt hast nochmal kurzzusammenfassen? ich würde es dann in unsere FAQ & Anleitung übernehmen.

                                          Vorab herzlichen Dank.

                                          LG

                                          NSPanel Dokumentation im GitHub Wiki:

                                          https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                          Jens WoznyJ 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          238

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe