Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. [Script] MessageHandler: Nachrichten protokollieren +VIS

NEWS

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

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

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

[Script] MessageHandler: Nachrichten protokollieren +VIS

[Script] MessageHandler: Nachrichten protokollieren +VIS

Scheduled Pinned Locked Moved JavaScript
336 Posts 25 Posters 63.8k Views 40 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • T Offline
    T Offline
    Tirador
    wrote on last edited by
    #82

    Was mich momentan umtreibt sind zwei Dinge:

    • Verzögerte Auslösung von Nachrichten: Am Beispiel meines Kühlschranks, soll die Nachricht erst ausgelöst werden, wenn der Kühlschrank länger als 60 Sekunden offen ist. Momentan bekomme ich jedes mal beim öffnen eine Nachricht / auch per Telegram. Das ist so nicht sinnvoll. Die Logik könnte äquivalent auch für Fenster/Türen angewendet werden. Natürlich gibt es im Pitini-Fensterskript auch solche Logiken, aber warum sollte man das nicht generalisierbar machen (und aus anderen Skripten heraushalten?).

    • Wiederholtes Auslösen von Nachrichten: d.h. wenn der Kühlschrank nach 10 Minuten immer noch offen ist, wird die Nachricht erneut gesendet. Damit würde ich auch die Pushs für TELEGRAM /EMail erneut senden. Fraglich ist, ob das einen Nutzen bringt in erhöhter Aufmerksamkeit. Wenn irgendwann mal Alexa/Say-Sprachausgaben hinzukommen könnte dieses Feature sinnvoll werden 😉

    Was meint Ihr?

    uwe12489U D 2 Replies Last reply
    0
    • T Tirador

      Was mich momentan umtreibt sind zwei Dinge:

      • Verzögerte Auslösung von Nachrichten: Am Beispiel meines Kühlschranks, soll die Nachricht erst ausgelöst werden, wenn der Kühlschrank länger als 60 Sekunden offen ist. Momentan bekomme ich jedes mal beim öffnen eine Nachricht / auch per Telegram. Das ist so nicht sinnvoll. Die Logik könnte äquivalent auch für Fenster/Türen angewendet werden. Natürlich gibt es im Pitini-Fensterskript auch solche Logiken, aber warum sollte man das nicht generalisierbar machen (und aus anderen Skripten heraushalten?).

      • Wiederholtes Auslösen von Nachrichten: d.h. wenn der Kühlschrank nach 10 Minuten immer noch offen ist, wird die Nachricht erneut gesendet. Damit würde ich auch die Pushs für TELEGRAM /EMail erneut senden. Fraglich ist, ob das einen Nutzen bringt in erhöhter Aufmerksamkeit. Wenn irgendwann mal Alexa/Say-Sprachausgaben hinzukommen könnte dieses Feature sinnvoll werden 😉

      Was meint Ihr?

      uwe12489U Offline
      uwe12489U Offline
      uwe12489
      wrote on last edited by
      #83

      @Tirador
      Wäre es möglich, neben text und dp, auch Bilder als Nachricht anzuzeigen? Das könnte ich mir bei Anrufer oder Cover gut vorstellen. 😊

      T 1 Reply Last reply
      0
      • T Tirador

        @der-eine Deine neuen Nachrichten sind ja super. Kannst Du deine Konfiguration auch veröffentlichen. Ich nehme die dann mit in die Auslieferung auf. Das Lichterzählen-Skript würde mich auch sehr interessieren. Wie prüfst du denn die Internetverbindung?

        @Glasfaser MDCSS V1 habe ich nie mitgemacht (da war ich noch nicht bei ioBroker). Eine Abwärtskompatibilität möchte ich eigentlich auch nicht explizit noch herstellen. Uhula hat ja eine Upgradeanleitung veröffentlicht.

        Das Blockly-Beispiel:

        Das Beispiel ist mein Briefkastensensor, der eine Nachricht auslöst, wenn jemand Post einwirft.
        Ironischerweise ist das Beispiel eigentlich mittlerweile vollkommen obsolet, da es durch die Konfiguration im MessageStateCreator vollständig abgelöst werden kann. 😉

        1586281265810-2020-04-07-19_40_43-javascript-iobroker.png

        Spoiler Blockly-Aufruf um eine Nachricht zu erzeugen:

        <xml xmlns="http://www.w3.org/1999/xhtml">
        
        <variables>
        
          <variable type="" id="VnOcDmXSH:k492pUGuDR">message</variable>
        
        </variables>
        
        <block type="on_ext" id="htG$ftnD|+dec}BK7ONm" x="63" y="38">
        
          <mutation items="1"></mutation>
        
          <field name="CONDITION">any</field>
        
          <field name="ACK_CONDITION"></field>
        
          <value name="OID0">
        
            <shadow type="field_oid" id="[(0c+QMnycfw+9^U;$O7">
        
              <field name="oid">deconz.0.Sensors.8.open</field>
        
            </shadow>
        
          </value>
        
          <statement name="STATEMENT">
        
            <block type="controls_if" id="4lD40^K_uOV~GUDpAw,!">
        
              <value name="IF0">
        
                <block type="get_value" id="B!WNR-Z|]i==DZ)2*Oe3">
        
                  <field name="ATTR">val</field>
        
                  <field name="OID">deconz.0.Sensors.8.open</field>
        
                </block>
        
              </value>
        
              <statement name="DO0">
        
                <block type="update" id="GZ)NF${Zz8,eYE3cFn(:">
        
                  <mutation delay_input="false"></mutation>
        
                  <field name="OID">0_userdata.0.newPost</field>
        
                  <field name="WITH_DELAY">FALSE</field>
        
                  <value name="VALUE">
        
                    <block type="logic_boolean" id="W~BRjB?r+!9CY#InDqq.">
        
                      <field name="BOOL">TRUE</field>
        
                    </block>
        
                  </value>
        
                  <next>
        
                    <block type="telegram" id="mefp#g_-kQE!h]dAzqt.">
        
                      <field name="INSTANCE"></field>
        
                      <field name="LOG">log</field>
        
                      <field name="SILENT">FALSE</field>
        
                      <field name="PARSEMODE">default</field>
        
                      <value name="MESSAGE">
        
                        <shadow type="text" id="w0:Xf;n0aS8spJdI4nDl">
        
                          <field name="TEXT">✉ Neue Post im Briefkasten!</field>
        
                        </shadow>
        
                      </value>
        
                      <next>
        
                        <block type="procedures_callcustomnoreturn" id="AAZj9j=w8=Tx*h=Rd?E7">
        
                          <mutation name="MessageHandler">
        
                            <arg name="message"></arg>
        
                          </mutation>
        
                          <value name="ARG0">
        
                            <block type="text" id="xNiuZ-=xz%d]#.9BS,tu">
        
                              <field name="TEXT">✉ Neue Post im Briefkasten!</field>
        
                            </block>
        
                          </value>
        
                        </block>
        
                      </next>
        
                    </block>
        
                  </next>
        
                </block>
        
              </statement>
        
            </block>
        
          </statement>
        
        </block>
        
        <block type="procedures_defcustomnoreturn" id="/XN%MvZ2GnXAjVrqd=+Q" x="63" y="463">
        
          <mutation statements="false">
        
            <arg name="message" varid="VnOcDmXSH:k492pUGuDR"></arg>
        
          </mutation>
        
          <field name="NAME">MessageHandler</field>
        
          <field name="SCRIPT">cG9zdE1lc3NhZ2UoJ0xBU1RfUE9TVEVOVFJBQ0VfSU5GTycsIG1lc3NhZ2UpOw==</field>
        
          <comment pinned="false" h="80" w="160">Material Design Alert</comment>
        
        </block>
        
        </xml>
        

        GlasfaserG Offline
        GlasfaserG Offline
        Glasfaser
        wrote on last edited by Glasfaser
        #84

        @Tirador sagte in [[Script] MessageHandler: Nachrichten protokollieren +VIS](/post

        @Glasfaser MDCSS V1 habe ich nie mitgemacht (da war ich noch nicht bei ioBroker). Eine Abwärtskompatibilität möchte ich eigentlich auch nicht explizit noch herstellen.
        Uhula hat ja eine Upgradeanleitung veröffentlicht.

        Kanst du mir , oder jemand anderes mal ein Tip geben , wo so eine Umstellungsliste / Upgradeanleitung von V1 zu V2 ist .
        Ich finde nur ein Changelog mit ein paar Änderungen mehr nicht.

        Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

        Dominik F.D 1 Reply Last reply
        0
        • GlasfaserG Glasfaser

          @Tirador sagte in [[Script] MessageHandler: Nachrichten protokollieren +VIS](/post

          @Glasfaser MDCSS V1 habe ich nie mitgemacht (da war ich noch nicht bei ioBroker). Eine Abwärtskompatibilität möchte ich eigentlich auch nicht explizit noch herstellen.
          Uhula hat ja eine Upgradeanleitung veröffentlicht.

          Kanst du mir , oder jemand anderes mal ein Tip geben , wo so eine Umstellungsliste / Upgradeanleitung von V1 zu V2 ist .
          Ich finde nur ein Changelog mit ein paar Änderungen mehr nicht.

          Dominik F.D Offline
          Dominik F.D Offline
          Dominik F.
          wrote on last edited by Dominik F.
          #85

          @Glasfaser
          Changelog

          sorry, hab deinen Post nur so halb gelesen das du den selber schon gefunden hast. Dort müsste doch aber alles drin stehen oder nicht?

          GlasfaserG 1 Reply Last reply
          1
          • Dominik F.D Dominik F.

            @Glasfaser
            Changelog

            sorry, hab deinen Post nur so halb gelesen das du den selber schon gefunden hast. Dort müsste doch aber alles drin stehen oder nicht?

            GlasfaserG Offline
            GlasfaserG Offline
            Glasfaser
            wrote on last edited by
            #86

            @Dominik-F

            Danke habe ich auch gesehen ... deshalb habe ich Changelog erwähnt .

            Komme damit nicht klar .
            Sowas meine ich :
            Beispiel :

            • Von der V1 Einstellung mdui .... nach mdui umstellen .
            • Von der V1 Einstellung mdui .... nach mdui umstellen .

            Oder ich übersehe es !?

            Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

            Dominik F.D 1 Reply Last reply
            0
            • GlasfaserG Glasfaser

              @Dominik-F

              Danke habe ich auch gesehen ... deshalb habe ich Changelog erwähnt .

              Komme damit nicht klar .
              Sowas meine ich :
              Beispiel :

              • Von der V1 Einstellung mdui .... nach mdui umstellen .
              • Von der V1 Einstellung mdui .... nach mdui umstellen .

              Oder ich übersehe es !?

              Dominik F.D Offline
              Dominik F.D Offline
              Dominik F.
              wrote on last edited by
              #87

              @Glasfaser

              https://github.com/Uhula/ioBroker-Material-Design-Style#5

              1. MD CSS v1.x -> MD CSS v2
                Hier eine Kurzanleitung, wie man sein v1 Projekt nach v2 übernehmen kann. Bitte immer in einer Kopie arbeiten.

              in den cardXXX
              mdui-Classes anpassen, welche umbenannt wurden (Bsp: mdui-raisedbutton -> mdui-button-raised, mdui-flatbutton -> mdui-button). Die Umbenennungen sind im ChangeLog aufgeführt
              die Position der Widgets so anpassen, dass sie links und oben mind. 16 Px frei lassen
              in den contXXX
              mdui-Classes anpassen, welche umbenannt wurden (Bsp: mdui-card -> mdui-card-raised, mdui-tile -> mdui-card; oder mdui-card-outlined nutzen). Die Umbenennungen habe ich in den Änderungen zur V2.0 im Post genannt
              [optional] haben die view-in-view cardXXX mit mdui-cols- u/o mdui-rows- Angaben, dann bezogen sich diese bisher auf ein 156er Raster, jetzt ist es ein 80er Raster. D.h. die müssen angepasst werden, i.d.R. verdoppelt
              [optional] die view-in-view cardXXX mit mdui-order- versehen, wenn man die Reihenfolge selbst festlegen möchte
              [optional] view-in-view cardXXX mit mdui-cols--toc- versehen, wenn man mit einer automatischen Breitenanpassung der cardXXX arbeiten möchten
              [optional] contXXX die view-in-view cardXXX mit mdui-rows--tor- versehen, wenn man mit einer automatischen Höhenanpassung der cardXXX arbeiten möchten
              abar ** ein HTML-Widget einfügen und mdui-config zuweisen. Inhalt wie unter den Änderungen zur V2.0 im Post beschrieben setzen (für die Farben)
              tnav, bnav Widgets als mdui-navitem kennzeichnen
              [optional] mit mdui-order- für die Sortierung versehen
              [optional] wenn die navitems versteckt werden sollen, wenn die lnav fixiert angezeigt wird, dann die Widgets im tnav um mdui-lnav-fixed-open-hide ergänzen
              lnav, rnav
              Widgets als mdui-navitem kennzeichnen
              [optional] mit mdui-order- für die Sortierung versehen
              width auf 100% setzen
              in den pageXXX
              [optional] Anpassung an 80er Grid: abar.Height auf 40 setzen; tnav.Top auf 40 setzen, tnav.Height auf 40 setzen; content.Top auf 80 setzen, content.Height auf calc(100% - 80px) setzen
              tnav, lnav und rnav um mdui-flex ergänzen
              content um mdui-flex ergänzen
              [optional] wenn eine automatische Höhenanpassung der cardXXX mit mdui-rows--tor- im contXXX zugewiesen wurde, dann im pageXXX den content um mdui-flex-stretch erweitern

              GlasfaserG 1 Reply Last reply
              1
              • Dominik F.D Dominik F.

                @Glasfaser

                https://github.com/Uhula/ioBroker-Material-Design-Style#5

                1. MD CSS v1.x -> MD CSS v2
                  Hier eine Kurzanleitung, wie man sein v1 Projekt nach v2 übernehmen kann. Bitte immer in einer Kopie arbeiten.

                in den cardXXX
                mdui-Classes anpassen, welche umbenannt wurden (Bsp: mdui-raisedbutton -> mdui-button-raised, mdui-flatbutton -> mdui-button). Die Umbenennungen sind im ChangeLog aufgeführt
                die Position der Widgets so anpassen, dass sie links und oben mind. 16 Px frei lassen
                in den contXXX
                mdui-Classes anpassen, welche umbenannt wurden (Bsp: mdui-card -> mdui-card-raised, mdui-tile -> mdui-card; oder mdui-card-outlined nutzen). Die Umbenennungen habe ich in den Änderungen zur V2.0 im Post genannt
                [optional] haben die view-in-view cardXXX mit mdui-cols- u/o mdui-rows- Angaben, dann bezogen sich diese bisher auf ein 156er Raster, jetzt ist es ein 80er Raster. D.h. die müssen angepasst werden, i.d.R. verdoppelt
                [optional] die view-in-view cardXXX mit mdui-order- versehen, wenn man die Reihenfolge selbst festlegen möchte
                [optional] view-in-view cardXXX mit mdui-cols--toc- versehen, wenn man mit einer automatischen Breitenanpassung der cardXXX arbeiten möchten
                [optional] contXXX die view-in-view cardXXX mit mdui-rows--tor- versehen, wenn man mit einer automatischen Höhenanpassung der cardXXX arbeiten möchten
                abar ** ein HTML-Widget einfügen und mdui-config zuweisen. Inhalt wie unter den Änderungen zur V2.0 im Post beschrieben setzen (für die Farben)
                tnav, bnav Widgets als mdui-navitem kennzeichnen
                [optional] mit mdui-order- für die Sortierung versehen
                [optional] wenn die navitems versteckt werden sollen, wenn die lnav fixiert angezeigt wird, dann die Widgets im tnav um mdui-lnav-fixed-open-hide ergänzen
                lnav, rnav
                Widgets als mdui-navitem kennzeichnen
                [optional] mit mdui-order- für die Sortierung versehen
                width auf 100% setzen
                in den pageXXX
                [optional] Anpassung an 80er Grid: abar.Height auf 40 setzen; tnav.Top auf 40 setzen, tnav.Height auf 40 setzen; content.Top auf 80 setzen, content.Height auf calc(100% - 80px) setzen
                tnav, lnav und rnav um mdui-flex ergänzen
                content um mdui-flex ergänzen
                [optional] wenn eine automatische Höhenanpassung der cardXXX mit mdui-rows--tor- im contXXX zugewiesen wurde, dann im pageXXX den content um mdui-flex-stretch erweitern

                GlasfaserG Offline
                GlasfaserG Offline
                Glasfaser
                wrote on last edited by Glasfaser
                #88

                @Dominik-F

                Ja danke ... das ist genau was ich meine und nicht ganz verstehe ..

                Ich Persönlich finde es unübersichlich ,
                deshalb habe ich von V1 nach V2 noch nicht vollzogen ... da es nicht mal eben ist ...

                Edit :
                Möchte damit auch nicht den Thread hier vollmüllen

                Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                1 Reply Last reply
                0
                • uwe12489U uwe12489

                  @Tirador
                  Wäre es möglich, neben text und dp, auch Bilder als Nachricht anzuzeigen? Das könnte ich mir bei Anrufer oder Cover gut vorstellen. 😊

                  T Offline
                  T Offline
                  Tirador
                  wrote on last edited by Tirador
                  #89

                  @uwe12489 Bilder anzuzeigen könnte ich mir auch gut vorstellen. Woher kann man denn das Bild anzapfen?

                  Die klassische Verwendung wäre wohl eine Überwachungskamera. Habe aber keine. Die Anwendungsszenarien sind damit für mich überschaubar.

                  Wenn es im Datenpunkt vorliegt ist es sicherlich einfach zu integrieren.

                  uwe12489U 1 Reply Last reply
                  0
                  • T Tirador

                    Was mich momentan umtreibt sind zwei Dinge:

                    • Verzögerte Auslösung von Nachrichten: Am Beispiel meines Kühlschranks, soll die Nachricht erst ausgelöst werden, wenn der Kühlschrank länger als 60 Sekunden offen ist. Momentan bekomme ich jedes mal beim öffnen eine Nachricht / auch per Telegram. Das ist so nicht sinnvoll. Die Logik könnte äquivalent auch für Fenster/Türen angewendet werden. Natürlich gibt es im Pitini-Fensterskript auch solche Logiken, aber warum sollte man das nicht generalisierbar machen (und aus anderen Skripten heraushalten?).

                    • Wiederholtes Auslösen von Nachrichten: d.h. wenn der Kühlschrank nach 10 Minuten immer noch offen ist, wird die Nachricht erneut gesendet. Damit würde ich auch die Pushs für TELEGRAM /EMail erneut senden. Fraglich ist, ob das einen Nutzen bringt in erhöhter Aufmerksamkeit. Wenn irgendwann mal Alexa/Say-Sprachausgaben hinzukommen könnte dieses Feature sinnvoll werden 😉

                    Was meint Ihr?

                    D Offline
                    D Offline
                    der-eine
                    wrote on last edited by
                    #90

                    @Tirador halte das für zwei Gute Ideen. 👍

                    1 Reply Last reply
                    0
                    • T Tirador

                      @uwe12489 Bilder anzuzeigen könnte ich mir auch gut vorstellen. Woher kann man denn das Bild anzapfen?

                      Die klassische Verwendung wäre wohl eine Überwachungskamera. Habe aber keine. Die Anwendungsszenarien sind damit für mich überschaubar.

                      Wenn es im Datenpunkt vorliegt ist es sicherlich einfach zu integrieren.

                      uwe12489U Offline
                      uwe12489U Offline
                      uwe12489
                      wrote on last edited by uwe12489
                      #91

                      @Tirador Bilder werden hier in den DP abgelegt und von den Adaptern bereit gestellt:

                      alexa2.0: alexa2.0.Echo-Devices.G07xxxxxxxxx.Player.mainArtUrl
                      tr-64.0: tr-064.0.callmonitor.lastCall.imageurlcallee

                      der Wert sieht dann z.Bsp. so aus: http://192.168.178.1:49000/download.lua?path=/var/InternerSpeicher/FRITZ/fonpix/1xxxxxxx0-0.jpg&sid=61fdxxxxxxx3&pbid=0

                      T 1 Reply Last reply
                      0
                      • uwe12489U uwe12489

                        @Tirador Bilder werden hier in den DP abgelegt und von den Adaptern bereit gestellt:

                        alexa2.0: alexa2.0.Echo-Devices.G07xxxxxxxxx.Player.mainArtUrl
                        tr-64.0: tr-064.0.callmonitor.lastCall.imageurlcallee

                        der Wert sieht dann z.Bsp. so aus: http://192.168.178.1:49000/download.lua?path=/var/InternerSpeicher/FRITZ/fonpix/1xxxxxxx0-0.jpg&sid=61fdxxxxxxx3&pbid=0

                        T Offline
                        T Offline
                        Tirador
                        wrote on last edited by Tirador
                        #92

                        @uwe12489
                        Bezüglich der Anzeige von Bildern in Nachrichten.

                        Ich habe jetzt mal etwas experimentiert. Mit etwas Trickserei bekommt man die ganze Nummer ohne Skripterweiterung hin.
                        Der Clou ist, dass man in der Nachricht direkt HTML anwenden kann.

                        Beim Sonos Adapter gibt es auch einen Datenpunkt mit Bild-URL.
                        Damit kann man in der Nachricht direkt das Bild als HTML im Nachrichtentext kodieren:
                        Das Resultat bei mir:

                        2020-04-19 19_42_15-vis.png

                        Mini-Beispiel:

                               msgText_1: {text: '<img src=\''},
                                msgText_2: {dp: 'sonos.0.root.192_168_178_59.current_cover'},
                                msgText_3: {text: '\' height=\'80%\' width=\'90%\'></img>'},
                        
                        

                        Vollständiges Beispiel:

                        Ich habe im MessageHandler Skript folgende MSGID / Nachricht ergänzt:

                                // Sonos
                                SONOS_INFO: {msgEvent: [''], logType: 'LAST',  severity: 'INFO',  msgHeader: "Sonos Küche", msgText: "", mdIcon: 'audiotrack', quit: false, mdIconColor: '', fontColor: '', backgroundColor: ''},
                        
                        

                        Im MessageStateCreator habe ich folgende Nachricht eingebaut:

                            // SONOS_INFO
                            {
                                msgID: 'SONOS_INFO', 
                                triggerDP: ['sonos.0.root.192_168_178_59.current_artist', 'sonos.0.root.192_168_178_59.state'],
                                msgText_1: {text: '<img src=\''},
                                msgText_2: {dp: 'sonos.0.root.192_168_178_59.current_cover'},
                                msgText_3: {text: '\' height=\'80%\' width=\'90%\'></img>'},
                                msgText_5: {text: '</br>Künstler: '},
                                msgText_6: {dp: 'sonos.0.root.192_168_178_59.current_artist'},
                                msgText_7: {text: '</br>Album: '},
                                msgText_8: {dp: 'sonos.0.root.192_168_178_59.current_album'}
                            },
                        

                        Hinweis: Die Nachricht für Sonos ist aber stark überarbeitungswürdig. Sie müsste eigentlich ja nur angezeigt werden, wenn auch etwas abgespielt wird z.B... irgendwann steht das bei mir auch noch auf dem Zettel, aber momentan gibt es andere Themen.

                        Nach ein Hinweis: Wenn man mit HTML in den Nachrichtentexten spielt beeinflusst dies nicht die Ausgabe in den Nachrichtenereignissen, d.h. in Email und Telegram wird HTML Code wieder entfernt (momentan).

                        uwe12489U 1 Reply Last reply
                        0
                        • T Tirador

                          @uwe12489
                          Bezüglich der Anzeige von Bildern in Nachrichten.

                          Ich habe jetzt mal etwas experimentiert. Mit etwas Trickserei bekommt man die ganze Nummer ohne Skripterweiterung hin.
                          Der Clou ist, dass man in der Nachricht direkt HTML anwenden kann.

                          Beim Sonos Adapter gibt es auch einen Datenpunkt mit Bild-URL.
                          Damit kann man in der Nachricht direkt das Bild als HTML im Nachrichtentext kodieren:
                          Das Resultat bei mir:

                          2020-04-19 19_42_15-vis.png

                          Mini-Beispiel:

                                 msgText_1: {text: '<img src=\''},
                                  msgText_2: {dp: 'sonos.0.root.192_168_178_59.current_cover'},
                                  msgText_3: {text: '\' height=\'80%\' width=\'90%\'></img>'},
                          
                          

                          Vollständiges Beispiel:

                          Ich habe im MessageHandler Skript folgende MSGID / Nachricht ergänzt:

                                  // Sonos
                                  SONOS_INFO: {msgEvent: [''], logType: 'LAST',  severity: 'INFO',  msgHeader: "Sonos Küche", msgText: "", mdIcon: 'audiotrack', quit: false, mdIconColor: '', fontColor: '', backgroundColor: ''},
                          
                          

                          Im MessageStateCreator habe ich folgende Nachricht eingebaut:

                              // SONOS_INFO
                              {
                                  msgID: 'SONOS_INFO', 
                                  triggerDP: ['sonos.0.root.192_168_178_59.current_artist', 'sonos.0.root.192_168_178_59.state'],
                                  msgText_1: {text: '<img src=\''},
                                  msgText_2: {dp: 'sonos.0.root.192_168_178_59.current_cover'},
                                  msgText_3: {text: '\' height=\'80%\' width=\'90%\'></img>'},
                                  msgText_5: {text: '</br>Künstler: '},
                                  msgText_6: {dp: 'sonos.0.root.192_168_178_59.current_artist'},
                                  msgText_7: {text: '</br>Album: '},
                                  msgText_8: {dp: 'sonos.0.root.192_168_178_59.current_album'}
                              },
                          

                          Hinweis: Die Nachricht für Sonos ist aber stark überarbeitungswürdig. Sie müsste eigentlich ja nur angezeigt werden, wenn auch etwas abgespielt wird z.B... irgendwann steht das bei mir auch noch auf dem Zettel, aber momentan gibt es andere Themen.

                          Nach ein Hinweis: Wenn man mit HTML in den Nachrichtentexten spielt beeinflusst dies nicht die Ausgabe in den Nachrichtenereignissen, d.h. in Email und Telegram wird HTML Code wieder entfernt (momentan).

                          uwe12489U Offline
                          uwe12489U Offline
                          uwe12489
                          wrote on last edited by
                          #93

                          @Tirador Super. Klappt prima

                              // SONOS_WOZI_INFO
                              {
                                  msgID: 'SONOS_WOZI_INFO', 
                                  triggerDP: ['sonos.0.root.192_168_178_45.current_artist', 'sonos.0.root.192_168_178_45.state_simple'],
                                  postMsgDP: {dp:'sonos.0.root.192_168_178_45.state_simple', comp: '==', val:true},
                                  removeMsgDP: {dp:'sonos.0.root.192_168_178_45.state_simple', comp: '==', val:false},
                                  msgText_1: {text: '<img src=\''},
                                  msgText_2: {dp: 'sonos.0.root.192_168_178_45.current_cover'},
                                  msgText_3: {text: '\' height=\'50%\' width=\'70%\'></img>'},
                                  msgText_5: {text: '</br>'},
                                  msgText_6: {dp: 'sonos.0.root.192_168_178_45.current_artist'},
                                  msgText_7: {text: '</br>'},
                                  msgText_8: {dp: 'sonos.0.root.192_168_178_45.current_title'}
                              }, 
                          
                          uwe12489U 1 Reply Last reply
                          0
                          • uwe12489U uwe12489

                            @Tirador Super. Klappt prima

                                // SONOS_WOZI_INFO
                                {
                                    msgID: 'SONOS_WOZI_INFO', 
                                    triggerDP: ['sonos.0.root.192_168_178_45.current_artist', 'sonos.0.root.192_168_178_45.state_simple'],
                                    postMsgDP: {dp:'sonos.0.root.192_168_178_45.state_simple', comp: '==', val:true},
                                    removeMsgDP: {dp:'sonos.0.root.192_168_178_45.state_simple', comp: '==', val:false},
                                    msgText_1: {text: '<img src=\''},
                                    msgText_2: {dp: 'sonos.0.root.192_168_178_45.current_cover'},
                                    msgText_3: {text: '\' height=\'50%\' width=\'70%\'></img>'},
                                    msgText_5: {text: '</br>'},
                                    msgText_6: {dp: 'sonos.0.root.192_168_178_45.current_artist'},
                                    msgText_7: {text: '</br>'},
                                    msgText_8: {dp: 'sonos.0.root.192_168_178_45.current_title'}
                                }, 
                            
                            uwe12489U Offline
                            uwe12489U Offline
                            uwe12489
                            wrote on last edited by uwe12489
                            #94

                            ... und für ECHO klappt das auch

                                // ECHO_KUECHE_INFO
                                {
                                    msgID: 'ECHO_KUECHE_INFO', 
                                    triggerDP: ['alexa2.0.Echo-Devices.G070RR11809202ED.Player.mainArtUrl', 'alexa2.0.Echo-Devices.G070RR11809202ED.Player.currentState'],
                                    postMsgDP: {dp:'alexa2.0.Echo-Devices.G070RR11809202ED.Player.currentState', comp: '==', val:true},
                                    removeMsgDP: {dp:'alexa2.0.Echo-Devices.G070RR11809202ED.Player.currentState', comp: '==', val:false},
                                    msgText_1: {text: '<img src=\''},
                                    msgText_2: {dp: 'alexa2.0.Echo-Devices.G070RR11809202ED.Player.mainArtUrl'},
                                    msgText_3: {text: '\' height=\'50%\' width=\'70%\'></img>'},
                                    msgText_5: {text: '</br>'},
                                    msgText_6: {dp: 'alexa2.0.Echo-Devices.G070RR11809202ED.Player.currentArtist'},
                                    msgText_7: {text: '</br>'},
                                    msgText_8: {dp: 'alexa2.0.Echo-Devices.G070RR11809202ED.Player.currentTitle'}
                                }, 
                            

                            Bildschirmfoto 2020-04-19 um 21.05.33.png

                            T uwe12489U 2 Replies Last reply
                            0
                            • uwe12489U uwe12489

                              ... und für ECHO klappt das auch

                                  // ECHO_KUECHE_INFO
                                  {
                                      msgID: 'ECHO_KUECHE_INFO', 
                                      triggerDP: ['alexa2.0.Echo-Devices.G070RR11809202ED.Player.mainArtUrl', 'alexa2.0.Echo-Devices.G070RR11809202ED.Player.currentState'],
                                      postMsgDP: {dp:'alexa2.0.Echo-Devices.G070RR11809202ED.Player.currentState', comp: '==', val:true},
                                      removeMsgDP: {dp:'alexa2.0.Echo-Devices.G070RR11809202ED.Player.currentState', comp: '==', val:false},
                                      msgText_1: {text: '<img src=\''},
                                      msgText_2: {dp: 'alexa2.0.Echo-Devices.G070RR11809202ED.Player.mainArtUrl'},
                                      msgText_3: {text: '\' height=\'50%\' width=\'70%\'></img>'},
                                      msgText_5: {text: '</br>'},
                                      msgText_6: {dp: 'alexa2.0.Echo-Devices.G070RR11809202ED.Player.currentArtist'},
                                      msgText_7: {text: '</br>'},
                                      msgText_8: {dp: 'alexa2.0.Echo-Devices.G070RR11809202ED.Player.currentTitle'}
                                  }, 
                              

                              Bildschirmfoto 2020-04-19 um 21.05.33.png

                              T Offline
                              T Offline
                              Tirador
                              wrote on last edited by
                              #95

                              @uwe12489 OK, prima. ich sehe du hast auch eine TV läuft Nachricht. Hast du das zufällig mit Logitech harmony eingebunden?

                              uwe12489U 1 Reply Last reply
                              0
                              • T Tirador

                                @uwe12489 OK, prima. ich sehe du hast auch eine TV läuft Nachricht. Hast du das zufällig mit Logitech harmony eingebunden?

                                uwe12489U Offline
                                uwe12489U Offline
                                uwe12489
                                wrote on last edited by
                                #96

                                @Tirador Nein. Ich habe Broadlink und checke den Ping 😉

                                1 Reply Last reply
                                0
                                • uwe12489U uwe12489

                                  ... und für ECHO klappt das auch

                                      // ECHO_KUECHE_INFO
                                      {
                                          msgID: 'ECHO_KUECHE_INFO', 
                                          triggerDP: ['alexa2.0.Echo-Devices.G070RR11809202ED.Player.mainArtUrl', 'alexa2.0.Echo-Devices.G070RR11809202ED.Player.currentState'],
                                          postMsgDP: {dp:'alexa2.0.Echo-Devices.G070RR11809202ED.Player.currentState', comp: '==', val:true},
                                          removeMsgDP: {dp:'alexa2.0.Echo-Devices.G070RR11809202ED.Player.currentState', comp: '==', val:false},
                                          msgText_1: {text: '<img src=\''},
                                          msgText_2: {dp: 'alexa2.0.Echo-Devices.G070RR11809202ED.Player.mainArtUrl'},
                                          msgText_3: {text: '\' height=\'50%\' width=\'70%\'></img>'},
                                          msgText_5: {text: '</br>'},
                                          msgText_6: {dp: 'alexa2.0.Echo-Devices.G070RR11809202ED.Player.currentArtist'},
                                          msgText_7: {text: '</br>'},
                                          msgText_8: {dp: 'alexa2.0.Echo-Devices.G070RR11809202ED.Player.currentTitle'}
                                      }, 
                                  

                                  Bildschirmfoto 2020-04-19 um 21.05.33.png

                                  uwe12489U Offline
                                  uwe12489U Offline
                                  uwe12489
                                  wrote on last edited by
                                  #97

                                  Wenn man das Coverbild per HTML clickable macht, kann man den Player (alexa2.0.Echo-Devices.G070RR11809202ED.Player.currentState) auch ausschalten ... Aber wie?

                                  T 1 Reply Last reply
                                  0
                                  • uwe12489U uwe12489

                                    Wenn man das Coverbild per HTML clickable macht, kann man den Player (alexa2.0.Echo-Devices.G070RR11809202ED.Player.currentState) auch ausschalten ... Aber wie?

                                    T Offline
                                    T Offline
                                    Tirador
                                    wrote on last edited by
                                    #98

                                    @uwe12489 ich denke schalten wird nicht gehen.

                                    uwe12489U 1 Reply Last reply
                                    0
                                    • T Tirador

                                      @uwe12489 ich denke schalten wird nicht gehen.

                                      uwe12489U Offline
                                      uwe12489U Offline
                                      uwe12489
                                      wrote on last edited by
                                      #99

                                      @Tirador Schade. War ne Idee... 😎

                                      T 1 Reply Last reply
                                      0
                                      • uwe12489U uwe12489

                                        @Tirador Schade. War ne Idee... 😎

                                        T Offline
                                        T Offline
                                        Tirador
                                        wrote on last edited by
                                        #100

                                        @uwe12489 ja, implementieren kann man alles. Die Frage ist, ob es zweckmäßig ist nun auch Bedienung und Steuerung zu integrieren. momentan sehe ich das nicht.

                                        uwe12489U 1 Reply Last reply
                                        1
                                        • T Tirador

                                          @uwe12489 ja, implementieren kann man alles. Die Frage ist, ob es zweckmäßig ist nun auch Bedienung und Steuerung zu integrieren. momentan sehe ich das nicht.

                                          uwe12489U Offline
                                          uwe12489U Offline
                                          uwe12489
                                          wrote on last edited by
                                          #101

                                          @Tirador als Standard sicher schwierig. Aber basteln macht doch Spaß 😀

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          405

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe