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

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. [Tutorial] wioBrowser - Windows Desktop `popup messages`

NEWS

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

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

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

[Tutorial] wioBrowser - Windows Desktop `popup messages`

Geplant Angeheftet Gesperrt Verschoben Blockly
blockly
15 Beiträge 5 Kommentatoren 2.9k Aufrufe 9 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.
  • hydrotecH Offline
    hydrotecH Offline
    hydrotec
    schrieb am zuletzt editiert von hydrotec
    #2

    Teil 2

    Feintuning:
    Folgende Information sollte man hierfür im Hinterkopf behalten.
    Bei der Positionierung des Popup-Fensters darauf achten, das nach unten,
    und rechts etwas Luft zum Bildschirmrand eingehalten wird.
    Das Fenster ist dynamisch aufgebaut, und kann bis zu drei Nachrichten enthalten. (untereinander aufgereiht)
    Die Breite passt sich, an die Länge der Nachricht, nach rechts an.


    Für uns sind die beiden Reiter "STYLE" und "MESSAGES" interessant.


    Unter "STYLE" befinden sich Einstellungsmöglichkeiten, die das Hauptfenster des Popup-Fensters betreffen.
    (sind eigentlich selbsterklärend, doch wenn wir schon dabei sind ;-) )
    wiobrowser_desktop_33.png
    "MessageFontSize"

    • Bestimmt die Schriftgröße des Inhalts aller Nachrichten

    "WebColor"

    • Damit wird die Hintergrundfarbe des Popup-Fensters eingestellt (im Format Hexadezimal)

    "MessageTop"

    • Abstand in Pixel zu dem oberen Bildschirmrand (Ausgangspunkt Popup-Fenster, oben links)

    "MessageLeft"

    • Abstand in Pixel zu dem linken Bildschirmrand (Ausgangspunkt Popup-Fenster, oben links)

    Einfach an eure Vorstellungen anpassen.


    Unter dem Reiter "MESSAGES" können, ich nenne es jetzt einmal Favoriten zu häufig genutzten Nachrichten, erstellt werden.
    wiobrowser_desktop_34.png
    Durch hinzufügen eines Favoriten (blaues Plus), bekommen wir folgende Einstellungsmöglichkeiten.

    "Nummerierung"

    • Wird automatisch erstellt, und kann auch nicht geändert werden.

    "Titel"

    • Überschrift der Nachricht. (in dem Beispiel aus Teil 1 "Nachricht von ioBroker :")

    "Caption"

    • Der eigentliche Inhalt der Nachricht. (in dem Beispiel aus Teil 1 "Hallo")

    "Time"

    • Angabe in Sekunden, nach der die Nachricht auf dem Desktop verschwindet.
      Bei der Angabe von 0 , wird die Nachricht dauerhaft eingeblendet.
      Die Nachricht kann durch einen Mausklick entfernt werden.

    "Color"

    • Damit wird die Hintergrundfarbe der Nachricht eingestellt (im Format Hexadezimal)

    Einfach mal welche anlegen, damit ihr eine Grundlage zu Teil 3 habt.
    (Favorit 4 wird später in Teil 4 angewendet)


    Edit:

    19.01.2022 - Beschreibung von "Time" angepasst

    Ubuntu 22.04 LTS (LXD/LXC)
    admin: v6.3.5
    js-controller: v4.0.24
    node: v18.16.1
    npm: v9.5.1
    repository: stable

    1 Antwort Letzte Antwort
    0
    • hydrotecH Offline
      hydrotecH Offline
      hydrotec
      schrieb am zuletzt editiert von
      #3

      Teil 3

      Anwendung:
      In diesem Teil wenden wir uns den Objekten zu.
      Auch hier werde ich nur auf die Objekte eingehen, welche für die Funktion popup messages relevant sind.
      wiobrowser_desktop_35.png
      Bevor wir etwas "Spielen", kurz eine Übersicht, was die einzelnen Objekte bedeuten, bzw. bewirken.
      (wie ein Wert geändert werden kann, sehe ich jetzt als Voraussetzung an)

      "message"

      • Hier kann eine Nachricht eingegeben werden, wenn nötig auch mit Zeilenumbruch
        (einfach Enter bei der Eingabe des Textes drücken)

      "messagenumber"

      • Über dieses Objekt können die jeweiligen Favoriten der Nachrichten aufgerufen werden.

      "messagestyle"

      • Durch dieses Objekt wird festgelegt, welchen Style die Nachricht haben soll,
        welche man unter "message" absetzt.

      OK, lasst uns etwas "Spielen" ;-)

      In Teil 2 hatten wir ja schon ein paar Favoriten angelegt.
      Favorit 1 hat die Hintergrundfarbe GreenYellow (#ADFF2F),
      und Favorit 2 die Hintergrundfarbe Silver (#C0C0C0).
      Angenommen wir möchten eine Nachricht mit der Hintergrundfarbe Silver absetzen.
      Dann ändern wir zuerst den Wert bei "messagestyle" auf 2.
      Und im Anschluss setzen wir die Nachricht unter "message" ab.
      Angenommen wir möchten eine Nachricht mit der Hintergrundfarbe GreenYellow absetzen.
      Dann ändern wir zuerst den Wert bei "messagestyle" auf 1.
      Und im Anschluss setzen wir die Nachricht unter "message" ab.
      Ich denke das Prinzip ist verstanden.
      Folgende Einstellungen der Favoriten werden bei "messagestyle" berücksichtigt.
      Titel, Time und Color.

      Ubuntu 22.04 LTS (LXD/LXC)
      admin: v6.3.5
      js-controller: v4.0.24
      node: v18.16.1
      npm: v9.5.1
      repository: stable

      1 Antwort Letzte Antwort
      0
      • hydrotecH Offline
        hydrotecH Offline
        hydrotec
        schrieb am zuletzt editiert von
        #4

        Teil 4

        Automatik:
        Folgendes Szenario, wir sitzen vor dem Rechner, und haben kein Telefon in der Nähe,
        bzw. bekommen es nicht mit wenn das Telefon klingelt.
        Damit wir auf dem Desktop eine Nachricht, mit dem Inhalt, auf welcher Rufnummer wird angerufen,
        zu welchem Zeitpunkt und von wem, erhalten, hab ich euch ein kleines Beispiel in Blockly erstellt.

        Voraussetzung, für diese Beispiel, sind ein installierter "TR-064" Adapter,
        und selbstverständlich die in Teil 1-3 eingerichtete Umgebung.

        wiobrowser_desktop_36.png

        <xml xmlns="https://developers.google.com/blockly/xml">
         <variables>
           <variable id="6VYfhYOmgoYDLSX()Hmg">messagestyle</variable>
           <variable id="EQ?A4id.PvN,8rl)6h1k">calleetext</variable>
           <variable type="timeout" id="timeout">timeout</variable>
         </variables>
         <block type="comment" id="MdU*U[VK-`HN:7jkB)8-" x="113" y="12">
           <field name="COMMENT">tr-064.0.callmonitor.ringing</field>
           <next>
             <block type="on" id="HT)9fTrK#(dD1dEO}EV@">
               <field name="OID">tr-064.0.callmonitor.ringing</field>
               <field name="CONDITION">ne</field>
               <field name="ACK_CONDITION"></field>
               <statement name="STATEMENT">
                 <block type="controls_if" id="Q7bhJKz4SUk#`ud134i,">
                   <value name="IF0">
                     <block type="on_source" id="!s{}:{5]aYV0;3aXZ7li">
                       <field name="ATTR">state.val</field>
                     </block>
                   </value>
                   <statement name="DO0">
                     <block type="timeouts_cleartimeout" id=",5c,U0nK`Jl]ry6]}mlw">
                       <field name="NAME">timeout</field>
                       <next>
                         <block type="comment" id="re-e`l.UHR-G%(Ttf_T`">
                           <field name="COMMENT">Variable zu wiobrowser.0.messages.messagestyle</field>
                           <next>
                             <block type="variables_set" id="zl(3v[~q}FjB61_-Kpk%">
                               <field name="VAR" id="6VYfhYOmgoYDLSX()Hmg">messagestyle</field>
                               <value name="VALUE">
                                 <block type="get_value" id=";/IzHWGZ7[!(p6p;,CP*">
                                   <field name="ATTR">val</field>
                                   <field name="OID">wiobrowser.0.messages.messagestyle</field>
                                 </block>
                               </value>
                               <next>
                                 <block type="comment" id="t(cbyl7m8]@^Vj|x0cUT">
                                   <field name="COMMENT">Variable zur Umwandlung Nummer -&gt; Text</field>
                                   <next>
                                     <block type="variables_set" id="-@ANJlO%xt.x+CV79Ol[">
                                       <field name="VAR" id="EQ?A4id.PvN,8rl)6h1k">calleetext</field>
                                       <value name="VALUE">
                                         <block type="text" id="qz;|o.]^;wDw,Dp3f=/X">
                                           <field name="TEXT"></field>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="comment" id="?Y5H:!@W5%~wAOrtd(o2">
                                           <field name="COMMENT">tr-064.0.callmonitor.inbound.callee</field>
                                           <next>
                                             <block type="controls_if" id="MhL}M`om9QQL3e!s~OXJ">
                                               <mutation elseif="2"></mutation>
                                               <value name="IF0">
                                                 <block type="logic_compare" id="D6MQmp47,#+fS.oY82AW">
                                                   <field name="OP">EQ</field>
                                                   <value name="A">
                                                     <block type="get_value" id="|pM(r_JvKw`c4Z|h=C.E">
                                                       <field name="ATTR">val</field>
                                                       <field name="OID">tr-064.0.callmonitor.inbound.callee</field>
                                                     </block>
                                                   </value>
                                                   <value name="B">
                                                     <block type="text" id="OH@L_.!?dW-z$~+s9fOX">
                                                       <field name="TEXT">&lt;Anschlussnummer&gt;</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <statement name="DO0">
                                                 <block type="variables_set" id="t(D=_yJY8`Bz*NsKIt![">
                                                   <field name="VAR" id="EQ?A4id.PvN,8rl)6h1k">calleetext</field>
                                                   <value name="VALUE">
                                                     <block type="text" id=":7EMaEW8=pm.Z.f{qnWg">
                                                       <field name="TEXT">Privat</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </statement>
                                               <value name="IF1">
                                                 <block type="logic_compare" id="s3i~UCw;Bt#=4Ie]y8]a">
                                                   <field name="OP">EQ</field>
                                                   <value name="A">
                                                     <block type="get_value" id="F+0oXo`9,31MLW,|P!?W">
                                                       <field name="ATTR">val</field>
                                                       <field name="OID">tr-064.0.callmonitor.inbound.callee</field>
                                                     </block>
                                                   </value>
                                                   <value name="B">
                                                     <block type="text" id="TRNWv=1KjUf%oUlf-C%?">
                                                       <field name="TEXT">&lt;Anschlussnummer&gt;</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <statement name="DO1">
                                                 <block type="variables_set" id="8Fs$-EOyiqiRwSEa@p3A">
                                                   <field name="VAR" id="EQ?A4id.PvN,8rl)6h1k">calleetext</field>
                                                   <value name="VALUE">
                                                     <block type="text" id="lih9)b-VU;z_Qww$j%=C">
                                                       <field name="TEXT">Geschäft</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </statement>
                                               <value name="IF2">
                                                 <block type="logic_compare" id="/U2G?lx!_R@Jz*M+ge-i">
                                                   <field name="OP">EQ</field>
                                                   <value name="A">
                                                     <block type="get_value" id="~s/jY:]5SO?!dN~}`([c">
                                                       <field name="ATTR">val</field>
                                                       <field name="OID">tr-064.0.callmonitor.inbound.callee</field>
                                                     </block>
                                                   </value>
                                                   <value name="B">
                                                     <block type="text" id="wD`=FhKVW9(|vZ;SZcci">
                                                       <field name="TEXT">&lt;Anschlussnummer&gt;</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <statement name="DO2">
                                                 <block type="variables_set" id="+pV(-Cge^r{ky_CxhoWr">
                                                   <field name="VAR" id="EQ?A4id.PvN,8rl)6h1k">calleetext</field>
                                                   <value name="VALUE">
                                                     <block type="text" id="YZ%vUUb)oE5P}jc?*3@s">
                                                       <field name="TEXT">Fax</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </statement>
                                               <next>
                                                 <block type="comment" id="pDyZnJ=;`_h:L_F~wgNJ">
                                                   <field name="COMMENT">wiobrowser.0.messages.messagestyle</field>
                                                   <next>
                                                     <block type="control" id="R*O3pI8.6L+jbIsj;/Vv">
                                                       <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                       <field name="OID">wiobrowser.0.messages.messagestyle</field>
                                                       <field name="WITH_DELAY">FALSE</field>
                                                       <value name="VALUE">
                                                         <block type="math_number" id="4{):MX7jE.{M+]^qN;cc">
                                                           <field name="NUM">4</field>
                                                         </block>
                                                       </value>
                                                       <next>
                                                         <block type="timeouts_settimeout" id="4:N22yz[RCf#Qq{#1Mj=">
                                                           <field name="NAME">timeout</field>
                                                           <field name="DELAY">1000</field>
                                                           <field name="UNIT">ms</field>
                                                           <statement name="STATEMENT">
                                                             <block type="comment" id="Zh~mW!,zkvJ!|P,28On$">
                                                               <field name="COMMENT">wiobrowser.0.messages.message</field>
                                                               <next>
                                                                 <block type="control" id="5=L2wgV~zV,O@{#JGrU@">
                                                                   <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                   <field name="OID">wiobrowser.0.messages.message</field>
                                                                   <field name="WITH_DELAY">FALSE</field>
                                                                   <value name="VALUE">
                                                                     <block type="text_join" id="!/lem*GI~IAg-KY-~5!*">
                                                                       <mutation items="5"></mutation>
                                                                       <value name="ADD0">
                                                                         <block type="variables_get" id="Ig1D!,9bdVQa3{twJ@K.">
                                                                           <field name="VAR" id="EQ?A4id.PvN,8rl)6h1k">calleetext</field>
                                                                         </block>
                                                                       </value>
                                                                       <value name="ADD1">
                                                                         <block type="text_newline" id="QGSdvcAHlf,hPQ^#mJG4">
                                                                           <field name="Type">\n</field>
                                                                         </block>
                                                                       </value>
                                                                       <value name="ADD2">
                                                                         <block type="get_value" id="X~$6Cz$yS%tIt!O6:-]b">
                                                                           <field name="ATTR">val</field>
                                                                           <field name="OID">tr-064.0.callmonitor.inbound.timestamp</field>
                                                                         </block>
                                                                       </value>
                                                                       <value name="ADD3">
                                                                         <block type="text_newline" id="3.c^%pCd=/hjc4i.:-b;">
                                                                           <field name="Type">\n</field>
                                                                         </block>
                                                                       </value>
                                                                       <value name="ADD4">
                                                                         <block type="text_join" id="%gEJJZ/4UZ]e}~We^0*5">
                                                                           <mutation items="3"></mutation>
                                                                           <value name="ADD0">
                                                                             <block type="get_value" id="L,=Gto9@E:upR{s~PlL7">
                                                                               <field name="ATTR">val</field>
                                                                               <field name="OID">tr-064.0.callmonitor.inbound.caller</field>
                                                                             </block>
                                                                           </value>
                                                                           <value name="ADD1">
                                                                             <block type="text" id="aLk@PKgt?Pl=YFB@T!Ya">
                                                                               <field name="TEXT">   </field>
                                                                             </block>
                                                                           </value>
                                                                           <value name="ADD2">
                                                                             <block type="get_value" id="ucRaiT)`}/}%;Wf-j{kW">
                                                                               <field name="ATTR">val</field>
                                                                               <field name="OID">tr-064.0.callmonitor.inbound.callerName</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                     </block>
                                                                   </value>
                                                                   <next>
                                                                     <block type="comment" id="niwD#!}k!V!%,J4hUkw#">
                                                                       <field name="COMMENT">wiobrowser.0.messages.messagestyle</field>
                                                                       <next>
                                                                         <block type="control" id="2o+4gAI/nkaWySjL9Vpw">
                                                                           <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                           <field name="OID">wiobrowser.0.messages.messagestyle</field>
                                                                           <field name="WITH_DELAY">FALSE</field>
                                                                           <value name="VALUE">
                                                                             <block type="variables_get" id=")!*3OB#F[32y)56s7cS$">
                                                                               <field name="VAR" id="6VYfhYOmgoYDLSX()Hmg">messagestyle</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </next>
                                                                     </block>
                                                                   </next>
                                                                 </block>
                                                               </next>
                                                             </block>
                                                           </statement>
                                                         </block>
                                                       </next>
                                                     </block>
                                                   </next>
                                                 </block>
                                               </next>
                                             </block>
                                           </next>
                                         </block>
                                       </next>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                           </next>
                         </block>
                       </next>
                     </block>
                   </statement>
                 </block>
               </statement>
             </block>
           </next>
         </block>
        </xml>
        


        (wie immer, gilt auch hier, ihr müsst das Blockly an eure Umgebung anpassen)

        Was macht dieses Blockly nun?
        Es wartet auf einen externen Anruf, und reagiert folgendermaßen darauf, wenn ein Anruf ankommt.
        Zuerst wird der vorhandene Wert unter "messagestyle" in eine Variable (messagestyle) geschrieben,
        und die Variable (calleetext) zurückgesetzt.
        Anschließend wird geprüft, auf welcher Anschlussrufnummer der externe Anruf ankommt.
        Dementsprechend, wird diese Nummer dann in der Variable calleetext durch einen Text ersetzt.
        Dann wird der gewünschte "messagestyle" an das Objekt übergeben.
        (in dem Fall mit 4, da wir ja in Teil 2 einen entsprechenden Favorit angelegt haben,
        jetzt wird vielleicht klarer, warum der Favorit unter "Caption" keinen Eintrag enthält)
        Der an dieser Stelle eingefügte Timer ist notwendig, da sonst der "messagestyle" noch nicht gesetzt ist,
        bevor die Nachricht gesendet wird.
        Jetzt fängt die eigentliche Zusammenstellung der Nachricht an.
        Wir haben uns ja weiter vorne schon darauf geeinigt, wie die Nachricht aussehen soll. ;-)
        Also wird der Text aus folgenden Parametern zusammengesetzt.
        Zuerst die Variable calleetext mit abschließendem Zeilenumbruch.
        Dann der Zeitstempel aus dem Objekt "tr-064.0.callmonitor.inbound.timestamp",
        wieder mit abschließendem Zeilenumbruch.
        Damit die zwei Werte von "tr-064.0.callmonitor.inbound.caller" und "tr-064.0.callmonitor.inbound.callerName"
        in einer Zeile erscheinen, wird noch einmal ein Text im Text erstellt, welcher die Werte mit Leerzeichen als Trenner einsetzt.
        Mit diesem komplett zusammengesetzten Text, wird das Objekt "wiobrowser.0.messages.message" angesteuert.
        Zum Schluss noch das Objekt "wiobrowser.0.messages.messagestyle" mit der Variable messagestyle,
        welche am Anfang des Blockly gespeichert wurde, ansteuern.

        Hier noch das Ergebnis, wie es bei euch aussehen könnte :-)
        wiobrowser_desktop_37.png


        Schlusswort:
        Ich hoffe, es hat euch einigermaßen Spaß gemacht, mit mir durch dieses Tutorial zu gehen.
        Solltet ihr Kritik, Anregungen oder anderweitige Vorschläge haben, dann gerne her damit.
        (Schreibfehler dürft ihr behalten, die schenke ich euch ;-) )

        Großer Dank gebührt Walter ( @Wal )
        Er hat diese Funktion (Stand: 18.01.2022), welche nicht eingeplant war, innerhalb einer Woche umgesetzt. :+1:
        Wer ihn unterstützen möchte, hier noch einmal der Link zu seinem Thread.

        Ansonsten wünsche ich euch allen eine angenehme Zeit
        Gruß, Karsten

        Ubuntu 22.04 LTS (LXD/LXC)
        admin: v6.3.5
        js-controller: v4.0.24
        node: v18.16.1
        npm: v9.5.1
        repository: stable

        -cs-- 1 Antwort Letzte Antwort
        4
        • hydrotecH hydrotec

          Teil 4

          Automatik:
          Folgendes Szenario, wir sitzen vor dem Rechner, und haben kein Telefon in der Nähe,
          bzw. bekommen es nicht mit wenn das Telefon klingelt.
          Damit wir auf dem Desktop eine Nachricht, mit dem Inhalt, auf welcher Rufnummer wird angerufen,
          zu welchem Zeitpunkt und von wem, erhalten, hab ich euch ein kleines Beispiel in Blockly erstellt.

          Voraussetzung, für diese Beispiel, sind ein installierter "TR-064" Adapter,
          und selbstverständlich die in Teil 1-3 eingerichtete Umgebung.

          wiobrowser_desktop_36.png

          <xml xmlns="https://developers.google.com/blockly/xml">
           <variables>
             <variable id="6VYfhYOmgoYDLSX()Hmg">messagestyle</variable>
             <variable id="EQ?A4id.PvN,8rl)6h1k">calleetext</variable>
             <variable type="timeout" id="timeout">timeout</variable>
           </variables>
           <block type="comment" id="MdU*U[VK-`HN:7jkB)8-" x="113" y="12">
             <field name="COMMENT">tr-064.0.callmonitor.ringing</field>
             <next>
               <block type="on" id="HT)9fTrK#(dD1dEO}EV@">
                 <field name="OID">tr-064.0.callmonitor.ringing</field>
                 <field name="CONDITION">ne</field>
                 <field name="ACK_CONDITION"></field>
                 <statement name="STATEMENT">
                   <block type="controls_if" id="Q7bhJKz4SUk#`ud134i,">
                     <value name="IF0">
                       <block type="on_source" id="!s{}:{5]aYV0;3aXZ7li">
                         <field name="ATTR">state.val</field>
                       </block>
                     </value>
                     <statement name="DO0">
                       <block type="timeouts_cleartimeout" id=",5c,U0nK`Jl]ry6]}mlw">
                         <field name="NAME">timeout</field>
                         <next>
                           <block type="comment" id="re-e`l.UHR-G%(Ttf_T`">
                             <field name="COMMENT">Variable zu wiobrowser.0.messages.messagestyle</field>
                             <next>
                               <block type="variables_set" id="zl(3v[~q}FjB61_-Kpk%">
                                 <field name="VAR" id="6VYfhYOmgoYDLSX()Hmg">messagestyle</field>
                                 <value name="VALUE">
                                   <block type="get_value" id=";/IzHWGZ7[!(p6p;,CP*">
                                     <field name="ATTR">val</field>
                                     <field name="OID">wiobrowser.0.messages.messagestyle</field>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="comment" id="t(cbyl7m8]@^Vj|x0cUT">
                                     <field name="COMMENT">Variable zur Umwandlung Nummer -&gt; Text</field>
                                     <next>
                                       <block type="variables_set" id="-@ANJlO%xt.x+CV79Ol[">
                                         <field name="VAR" id="EQ?A4id.PvN,8rl)6h1k">calleetext</field>
                                         <value name="VALUE">
                                           <block type="text" id="qz;|o.]^;wDw,Dp3f=/X">
                                             <field name="TEXT"></field>
                                           </block>
                                         </value>
                                         <next>
                                           <block type="comment" id="?Y5H:!@W5%~wAOrtd(o2">
                                             <field name="COMMENT">tr-064.0.callmonitor.inbound.callee</field>
                                             <next>
                                               <block type="controls_if" id="MhL}M`om9QQL3e!s~OXJ">
                                                 <mutation elseif="2"></mutation>
                                                 <value name="IF0">
                                                   <block type="logic_compare" id="D6MQmp47,#+fS.oY82AW">
                                                     <field name="OP">EQ</field>
                                                     <value name="A">
                                                       <block type="get_value" id="|pM(r_JvKw`c4Z|h=C.E">
                                                         <field name="ATTR">val</field>
                                                         <field name="OID">tr-064.0.callmonitor.inbound.callee</field>
                                                       </block>
                                                     </value>
                                                     <value name="B">
                                                       <block type="text" id="OH@L_.!?dW-z$~+s9fOX">
                                                         <field name="TEXT">&lt;Anschlussnummer&gt;</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <statement name="DO0">
                                                   <block type="variables_set" id="t(D=_yJY8`Bz*NsKIt![">
                                                     <field name="VAR" id="EQ?A4id.PvN,8rl)6h1k">calleetext</field>
                                                     <value name="VALUE">
                                                       <block type="text" id=":7EMaEW8=pm.Z.f{qnWg">
                                                         <field name="TEXT">Privat</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </statement>
                                                 <value name="IF1">
                                                   <block type="logic_compare" id="s3i~UCw;Bt#=4Ie]y8]a">
                                                     <field name="OP">EQ</field>
                                                     <value name="A">
                                                       <block type="get_value" id="F+0oXo`9,31MLW,|P!?W">
                                                         <field name="ATTR">val</field>
                                                         <field name="OID">tr-064.0.callmonitor.inbound.callee</field>
                                                       </block>
                                                     </value>
                                                     <value name="B">
                                                       <block type="text" id="TRNWv=1KjUf%oUlf-C%?">
                                                         <field name="TEXT">&lt;Anschlussnummer&gt;</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <statement name="DO1">
                                                   <block type="variables_set" id="8Fs$-EOyiqiRwSEa@p3A">
                                                     <field name="VAR" id="EQ?A4id.PvN,8rl)6h1k">calleetext</field>
                                                     <value name="VALUE">
                                                       <block type="text" id="lih9)b-VU;z_Qww$j%=C">
                                                         <field name="TEXT">Geschäft</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </statement>
                                                 <value name="IF2">
                                                   <block type="logic_compare" id="/U2G?lx!_R@Jz*M+ge-i">
                                                     <field name="OP">EQ</field>
                                                     <value name="A">
                                                       <block type="get_value" id="~s/jY:]5SO?!dN~}`([c">
                                                         <field name="ATTR">val</field>
                                                         <field name="OID">tr-064.0.callmonitor.inbound.callee</field>
                                                       </block>
                                                     </value>
                                                     <value name="B">
                                                       <block type="text" id="wD`=FhKVW9(|vZ;SZcci">
                                                         <field name="TEXT">&lt;Anschlussnummer&gt;</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <statement name="DO2">
                                                   <block type="variables_set" id="+pV(-Cge^r{ky_CxhoWr">
                                                     <field name="VAR" id="EQ?A4id.PvN,8rl)6h1k">calleetext</field>
                                                     <value name="VALUE">
                                                       <block type="text" id="YZ%vUUb)oE5P}jc?*3@s">
                                                         <field name="TEXT">Fax</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </statement>
                                                 <next>
                                                   <block type="comment" id="pDyZnJ=;`_h:L_F~wgNJ">
                                                     <field name="COMMENT">wiobrowser.0.messages.messagestyle</field>
                                                     <next>
                                                       <block type="control" id="R*O3pI8.6L+jbIsj;/Vv">
                                                         <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                         <field name="OID">wiobrowser.0.messages.messagestyle</field>
                                                         <field name="WITH_DELAY">FALSE</field>
                                                         <value name="VALUE">
                                                           <block type="math_number" id="4{):MX7jE.{M+]^qN;cc">
                                                             <field name="NUM">4</field>
                                                           </block>
                                                         </value>
                                                         <next>
                                                           <block type="timeouts_settimeout" id="4:N22yz[RCf#Qq{#1Mj=">
                                                             <field name="NAME">timeout</field>
                                                             <field name="DELAY">1000</field>
                                                             <field name="UNIT">ms</field>
                                                             <statement name="STATEMENT">
                                                               <block type="comment" id="Zh~mW!,zkvJ!|P,28On$">
                                                                 <field name="COMMENT">wiobrowser.0.messages.message</field>
                                                                 <next>
                                                                   <block type="control" id="5=L2wgV~zV,O@{#JGrU@">
                                                                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                     <field name="OID">wiobrowser.0.messages.message</field>
                                                                     <field name="WITH_DELAY">FALSE</field>
                                                                     <value name="VALUE">
                                                                       <block type="text_join" id="!/lem*GI~IAg-KY-~5!*">
                                                                         <mutation items="5"></mutation>
                                                                         <value name="ADD0">
                                                                           <block type="variables_get" id="Ig1D!,9bdVQa3{twJ@K.">
                                                                             <field name="VAR" id="EQ?A4id.PvN,8rl)6h1k">calleetext</field>
                                                                           </block>
                                                                         </value>
                                                                         <value name="ADD1">
                                                                           <block type="text_newline" id="QGSdvcAHlf,hPQ^#mJG4">
                                                                             <field name="Type">\n</field>
                                                                           </block>
                                                                         </value>
                                                                         <value name="ADD2">
                                                                           <block type="get_value" id="X~$6Cz$yS%tIt!O6:-]b">
                                                                             <field name="ATTR">val</field>
                                                                             <field name="OID">tr-064.0.callmonitor.inbound.timestamp</field>
                                                                           </block>
                                                                         </value>
                                                                         <value name="ADD3">
                                                                           <block type="text_newline" id="3.c^%pCd=/hjc4i.:-b;">
                                                                             <field name="Type">\n</field>
                                                                           </block>
                                                                         </value>
                                                                         <value name="ADD4">
                                                                           <block type="text_join" id="%gEJJZ/4UZ]e}~We^0*5">
                                                                             <mutation items="3"></mutation>
                                                                             <value name="ADD0">
                                                                               <block type="get_value" id="L,=Gto9@E:upR{s~PlL7">
                                                                                 <field name="ATTR">val</field>
                                                                                 <field name="OID">tr-064.0.callmonitor.inbound.caller</field>
                                                                               </block>
                                                                             </value>
                                                                             <value name="ADD1">
                                                                               <block type="text" id="aLk@PKgt?Pl=YFB@T!Ya">
                                                                                 <field name="TEXT">   </field>
                                                                               </block>
                                                                             </value>
                                                                             <value name="ADD2">
                                                                               <block type="get_value" id="ucRaiT)`}/}%;Wf-j{kW">
                                                                                 <field name="ATTR">val</field>
                                                                                 <field name="OID">tr-064.0.callmonitor.inbound.callerName</field>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                       </block>
                                                                     </value>
                                                                     <next>
                                                                       <block type="comment" id="niwD#!}k!V!%,J4hUkw#">
                                                                         <field name="COMMENT">wiobrowser.0.messages.messagestyle</field>
                                                                         <next>
                                                                           <block type="control" id="2o+4gAI/nkaWySjL9Vpw">
                                                                             <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                             <field name="OID">wiobrowser.0.messages.messagestyle</field>
                                                                             <field name="WITH_DELAY">FALSE</field>
                                                                             <value name="VALUE">
                                                                               <block type="variables_get" id=")!*3OB#F[32y)56s7cS$">
                                                                                 <field name="VAR" id="6VYfhYOmgoYDLSX()Hmg">messagestyle</field>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </next>
                                                                       </block>
                                                                     </next>
                                                                   </block>
                                                                 </next>
                                                               </block>
                                                             </statement>
                                                           </block>
                                                         </next>
                                                       </block>
                                                     </next>
                                                   </block>
                                                 </next>
                                               </block>
                                             </next>
                                           </block>
                                         </next>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                             </next>
                           </block>
                         </next>
                       </block>
                     </statement>
                   </block>
                 </statement>
               </block>
             </next>
           </block>
          </xml>
          


          (wie immer, gilt auch hier, ihr müsst das Blockly an eure Umgebung anpassen)

          Was macht dieses Blockly nun?
          Es wartet auf einen externen Anruf, und reagiert folgendermaßen darauf, wenn ein Anruf ankommt.
          Zuerst wird der vorhandene Wert unter "messagestyle" in eine Variable (messagestyle) geschrieben,
          und die Variable (calleetext) zurückgesetzt.
          Anschließend wird geprüft, auf welcher Anschlussrufnummer der externe Anruf ankommt.
          Dementsprechend, wird diese Nummer dann in der Variable calleetext durch einen Text ersetzt.
          Dann wird der gewünschte "messagestyle" an das Objekt übergeben.
          (in dem Fall mit 4, da wir ja in Teil 2 einen entsprechenden Favorit angelegt haben,
          jetzt wird vielleicht klarer, warum der Favorit unter "Caption" keinen Eintrag enthält)
          Der an dieser Stelle eingefügte Timer ist notwendig, da sonst der "messagestyle" noch nicht gesetzt ist,
          bevor die Nachricht gesendet wird.
          Jetzt fängt die eigentliche Zusammenstellung der Nachricht an.
          Wir haben uns ja weiter vorne schon darauf geeinigt, wie die Nachricht aussehen soll. ;-)
          Also wird der Text aus folgenden Parametern zusammengesetzt.
          Zuerst die Variable calleetext mit abschließendem Zeilenumbruch.
          Dann der Zeitstempel aus dem Objekt "tr-064.0.callmonitor.inbound.timestamp",
          wieder mit abschließendem Zeilenumbruch.
          Damit die zwei Werte von "tr-064.0.callmonitor.inbound.caller" und "tr-064.0.callmonitor.inbound.callerName"
          in einer Zeile erscheinen, wird noch einmal ein Text im Text erstellt, welcher die Werte mit Leerzeichen als Trenner einsetzt.
          Mit diesem komplett zusammengesetzten Text, wird das Objekt "wiobrowser.0.messages.message" angesteuert.
          Zum Schluss noch das Objekt "wiobrowser.0.messages.messagestyle" mit der Variable messagestyle,
          welche am Anfang des Blockly gespeichert wurde, ansteuern.

          Hier noch das Ergebnis, wie es bei euch aussehen könnte :-)
          wiobrowser_desktop_37.png


          Schlusswort:
          Ich hoffe, es hat euch einigermaßen Spaß gemacht, mit mir durch dieses Tutorial zu gehen.
          Solltet ihr Kritik, Anregungen oder anderweitige Vorschläge haben, dann gerne her damit.
          (Schreibfehler dürft ihr behalten, die schenke ich euch ;-) )

          Großer Dank gebührt Walter ( @Wal )
          Er hat diese Funktion (Stand: 18.01.2022), welche nicht eingeplant war, innerhalb einer Woche umgesetzt. :+1:
          Wer ihn unterstützen möchte, hier noch einmal der Link zu seinem Thread.

          Ansonsten wünsche ich euch allen eine angenehme Zeit
          Gruß, Karsten

          -cs-- Offline
          -cs-- Offline
          -cs-
          schrieb am zuletzt editiert von -cs-
          #5

          @hydrotec

          Wow, genau was ich immer gesucht habe.
          Du überforderst mich grad, kam noch nicht mal dazu das NC Script zu installieren, jetzt sowas.

          Super, danke.

          Frage: Wenn es installiert wird, werden die Popups dann jedem Benutzer des PCs angezeigt?
          Ich bin wg. teilweise HO oft mit einem anderen Benutzer angemeldet, der nur eingeschränkt Rechte hat (von mir so eingestellt). Dann noch Benutzer Frau und manchmal Kids.

          hydrotecH WalW 2 Antworten Letzte Antwort
          0
          • -cs-- -cs-

            @hydrotec

            Wow, genau was ich immer gesucht habe.
            Du überforderst mich grad, kam noch nicht mal dazu das NC Script zu installieren, jetzt sowas.

            Super, danke.

            Frage: Wenn es installiert wird, werden die Popups dann jedem Benutzer des PCs angezeigt?
            Ich bin wg. teilweise HO oft mit einem anderen Benutzer angemeldet, der nur eingeschränkt Rechte hat (von mir so eingestellt). Dann noch Benutzer Frau und manchmal Kids.

            hydrotecH Offline
            hydrotecH Offline
            hydrotec
            schrieb am zuletzt editiert von
            #6

            @csr

            Nachrichten werden auf den Rechner gesendet, welcher bei ioBroker unter den Einstellungen angegeben ist.
            Und die WioBrowser.exe muss ja auch gestartet sein.
            Wie es sich verhält, wenn ein Benutzer angemeldet ist, bei dem die Nachrichten erscheinen sollen,
            und dann ein Benutzerwechsel vollzogen wird, hab ich nicht getestet.
            Das bleibt jetzt dir überlassen ;-)
            Kann es mir nicht vorstellen, das dies Benutzerübergreifend funktioniert, aber wer weiß.

            Ubuntu 22.04 LTS (LXD/LXC)
            admin: v6.3.5
            js-controller: v4.0.24
            node: v18.16.1
            npm: v9.5.1
            repository: stable

            1 Antwort Letzte Antwort
            0
            • -cs-- -cs-

              @hydrotec

              Wow, genau was ich immer gesucht habe.
              Du überforderst mich grad, kam noch nicht mal dazu das NC Script zu installieren, jetzt sowas.

              Super, danke.

              Frage: Wenn es installiert wird, werden die Popups dann jedem Benutzer des PCs angezeigt?
              Ich bin wg. teilweise HO oft mit einem anderen Benutzer angemeldet, der nur eingeschränkt Rechte hat (von mir so eingestellt). Dann noch Benutzer Frau und manchmal Kids.

              WalW Offline
              WalW Offline
              Wal
              Developer
              schrieb am zuletzt editiert von
              #7

              @csr ,
              wenn du das Teil in den Autostart schiebst und bei jedem Windowsstart automatisch starten lässt, könnte ich mir gut vorstellen das das funktioniert.

              Gruß
              Walter

              DoorIO-Adapter
              wioBrowser-Adapter und wioBrowser

              -cs-- BananaJoeB 2 Antworten Letzte Antwort
              0
              • WalW Wal

                @csr ,
                wenn du das Teil in den Autostart schiebst und bei jedem Windowsstart automatisch starten lässt, könnte ich mir gut vorstellen das das funktioniert.

                -cs-- Offline
                -cs-- Offline
                -cs-
                schrieb am zuletzt editiert von -cs-
                #8

                @wal
                Ja so hätte ich es vor.

                hätte, hätte, gebt mir Zeit am PC ;-) , hier Schreiben geht fast immer, aber am PC sitzen leider nicht so.

                1 Antwort Letzte Antwort
                0
                • WalW Wal

                  @csr ,
                  wenn du das Teil in den Autostart schiebst und bei jedem Windowsstart automatisch starten lässt, könnte ich mir gut vorstellen das das funktioniert.

                  BananaJoeB Online
                  BananaJoeB Online
                  BananaJoe
                  Most Active
                  schrieb am zuletzt editiert von
                  #9

                  @wal sagte in [Tutorial] wioBrowser - Windows Desktop &#x60;popup messages&#x60;:

                  @csr ,
                  wenn du das Teil in den Autostart schiebst und bei jedem Windowsstart automatisch starten lässt, könnte ich mir gut vorstellen das das funktioniert.

                  Es wird nicht Terminalserver bzw. Multiuser-fähig sein das ja der Port in der Config.ini festgelegt ist und die erste gestartete Instanz sich diesen krallt. Solange nur ein Benutzer es pro Rechner startet sollte es kein Problem geben.

                  ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                  WalW 1 Antwort Letzte Antwort
                  0
                  • BananaJoeB BananaJoe

                    @wal sagte in [Tutorial] wioBrowser - Windows Desktop &#x60;popup messages&#x60;:

                    @csr ,
                    wenn du das Teil in den Autostart schiebst und bei jedem Windowsstart automatisch starten lässt, könnte ich mir gut vorstellen das das funktioniert.

                    Es wird nicht Terminalserver bzw. Multiuser-fähig sein das ja der Port in der Config.ini festgelegt ist und die erste gestartete Instanz sich diesen krallt. Solange nur ein Benutzer es pro Rechner startet sollte es kein Problem geben.

                    WalW Offline
                    WalW Offline
                    Wal
                    Developer
                    schrieb am zuletzt editiert von
                    #10

                    @bananajoe ,
                    wenn ich das als Admin in den Taskmanager Autostart mache, müsste es doch für alle User gelten, oder ?

                    Gruß
                    Walter

                    DoorIO-Adapter
                    wioBrowser-Adapter und wioBrowser

                    hydrotecH BananaJoeB 2 Antworten Letzte Antwort
                    0
                    • WalW Wal

                      @bananajoe ,
                      wenn ich das als Admin in den Taskmanager Autostart mache, müsste es doch für alle User gelten, oder ?

                      hydrotecH Offline
                      hydrotecH Offline
                      hydrotec
                      schrieb am zuletzt editiert von
                      #11

                      @wal

                      bin mir nicht zu 100% sicher, doch ich meine das es zwei Arten von Autostartordnern gibt.
                      Einen für den aktuellen Benutzer, und einen Systemübergreifend.
                      Muss noch einmal nachschauen.

                      Ubuntu 22.04 LTS (LXD/LXC)
                      admin: v6.3.5
                      js-controller: v4.0.24
                      node: v18.16.1
                      npm: v9.5.1
                      repository: stable

                      1 Antwort Letzte Antwort
                      0
                      • WalW Wal

                        @bananajoe ,
                        wenn ich das als Admin in den Taskmanager Autostart mache, müsste es doch für alle User gelten, oder ?

                        BananaJoeB Online
                        BananaJoeB Online
                        BananaJoe
                        Most Active
                        schrieb am zuletzt editiert von BananaJoe
                        #12

                        @wal sagte in [Tutorial] wioBrowser - Windows Desktop &#x60;popup messages&#x60;:

                        @bananajoe ,
                        wenn ich das als Admin in den Taskmanager Autostart mache, müsste es doch für alle User gelten, oder ?

                        Öhm, den Weg bin ich noch nie gegangen ...
                        Für alle Benutzer müsste es dieser Ordner sein:

                        C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
                        

                        würde auch gehen. Also dort eine Verknüpfung reinlegen

                        ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                        1 Antwort Letzte Antwort
                        0
                        • WalW Offline
                          WalW Offline
                          Wal
                          Developer
                          schrieb am zuletzt editiert von
                          #13

                          Über den Taskmanager Autostart geht es nicht, eben probiert.
                          Mal die von @BananaJoe testen.

                          Gruß
                          Walter

                          DoorIO-Adapter
                          wioBrowser-Adapter und wioBrowser

                          hydrotecH 1 Antwort Letzte Antwort
                          0
                          • WalW Wal

                            Über den Taskmanager Autostart geht es nicht, eben probiert.
                            Mal die von @BananaJoe testen.

                            hydrotecH Offline
                            hydrotecH Offline
                            hydrotec
                            schrieb am zuletzt editiert von
                            #14

                            @wal

                            Gefunden :-)

                            Hier steht es zum Nachlesen.


                            Autostart-Ordner für den angemeldeten Nutzer

                            %appdata%\Microsoft\Windows\Start Menu\Programs\Startup
                            

                            Autostart-Ordner für alle Benutzer

                            %programdata%\Microsoft\Windows\Start Menu\Programs\Startup
                            

                            Einfach eine Verknüpfung zu WioBrowser.exe dort (je nachdem was man möchte) reinlegen.

                            Ubuntu 22.04 LTS (LXD/LXC)
                            admin: v6.3.5
                            js-controller: v4.0.24
                            node: v18.16.1
                            npm: v9.5.1
                            repository: stable

                            1 Antwort Letzte Antwort
                            1
                            • J Offline
                              J Offline
                              jensven
                              schrieb am zuletzt editiert von
                              #15

                              Funktioniert einwandfrei, danke dir für das Tutorial

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


                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              814

                              Online

                              32.4k

                              Benutzer

                              81.5k

                              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