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. Praktische Anwendungen (Showcase)
  4. Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML

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

Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML

Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML

Scheduled Pinned Locked Moved Praktische Anwendungen (Showcase)
alexaansageblocklyfensteriqontroljarvisjavascripttür-fenster-kontakt
524 Posts 40 Posters 120.9k Views 57 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.
  • U UncleB

    Servus DSLRaser,
    Hab mich heute an dein Script gewagt 🙂
    Aliase habe ich mit dem Script von CruziX angelegt, sonst habe ich eigentlich alles 1zu1 deiner Anleitung übernommen..
    Beginnen will ich erstmal nur mit den Lichtern, Test Licht ist die Yeelight Lampe meines Büros..
    Diese wird aber nicht gezählt, liegt es evtl. dran das ein Wert "true" bzw "false" erwartet wird anstatt "an(true)"?
    Screenshot - 2021-05-11T110333.819.png

    dslraserD Offline
    dslraserD Offline
    dslraser
    Forum Testing Most Active
    wrote on last edited by dslraser
    #255

    @uncleb
    wie sieht denn in den Aufzählungen Dein alias aus ?

    Bildschirmfoto 2021-05-11 um 11.07.54.png

    und wie sieht diese Einstellung bei Dir im Blockly aus ?

    Bildschirmfoto 2021-05-11 um 11.08.30.png

    EDIT: eventuell mal die admin Instanz und die Javascript Instanz neu starten

    admin nicht stoppen , nur mit dem Pfeilkreis neu starten

    Bildschirmfoto 2021-05-11 um 11.11.43.png

    U 1 Reply Last reply
    0
    • dslraserD dslraser

      @uncleb
      wie sieht denn in den Aufzählungen Dein alias aus ?

      Bildschirmfoto 2021-05-11 um 11.07.54.png

      und wie sieht diese Einstellung bei Dir im Blockly aus ?

      Bildschirmfoto 2021-05-11 um 11.08.30.png

      EDIT: eventuell mal die admin Instanz und die Javascript Instanz neu starten

      admin nicht stoppen , nur mit dem Pfeilkreis neu starten

      Bildschirmfoto 2021-05-11 um 11.11.43.png

      U Offline
      U Offline
      UncleB
      wrote on last edited by
      #256

      @dslraser
      Danke für die Antwort, nachdem neustart funktioniert es Teilweise, bekomme über Telegram die Nachricht das alle Lichter ausgeschaltet sind, bzw das Büro Licht an ist.
      aber der Datenpunkt 01_Lichter_Anzahl_gesamt bleibt weiter bei 0?

      Screenshot - 2021-05-11T111803.652.png

      Die alias und Blockly
      Screenshot - 2021-05-11T111216.570.png
      Screenshot - 2021-05-11T111256.886.png

      dslraserD 2 Replies Last reply
      0
      • U UncleB

        @dslraser
        Danke für die Antwort, nachdem neustart funktioniert es Teilweise, bekomme über Telegram die Nachricht das alle Lichter ausgeschaltet sind, bzw das Büro Licht an ist.
        aber der Datenpunkt 01_Lichter_Anzahl_gesamt bleibt weiter bei 0?

        Screenshot - 2021-05-11T111803.652.png

        Die alias und Blockly
        Screenshot - 2021-05-11T111216.570.png
        Screenshot - 2021-05-11T111256.886.png

        dslraserD Offline
        dslraserD Offline
        dslraser
        Forum Testing Most Active
        wrote on last edited by dslraser
        #257

        @uncleb
        Hast Du mal das Browserfenster bzw. den Browser aktualisiert (in der Ansicht wo die Objekte sind) ?

        Edit: was auch komisch ist, die 05_gesamte_Lichter_Liste ist bei Dir leer...und gezählt wird immer noch nix (auf Deinem Screenshot)

        1 Reply Last reply
        0
        • U UncleB

          @dslraser
          Danke für die Antwort, nachdem neustart funktioniert es Teilweise, bekomme über Telegram die Nachricht das alle Lichter ausgeschaltet sind, bzw das Büro Licht an ist.
          aber der Datenpunkt 01_Lichter_Anzahl_gesamt bleibt weiter bei 0?

          Screenshot - 2021-05-11T111803.652.png

          Die alias und Blockly
          Screenshot - 2021-05-11T111216.570.png
          Screenshot - 2021-05-11T111256.886.png

          dslraserD Offline
          dslraserD Offline
          dslraser
          Forum Testing Most Active
          wrote on last edited by
          #258

          @uncleb
          Dein alias sieht auch komisch aus ?
          bei mir sehen die alias z.B. so aus.

          Bildschirmfoto 2021-05-11 um 11.30.59.png

          ein RAW vom einem alias für Licht sieht z.B. so b ei mir aus

          {
           "from": "system.adapter.javascript.0",
           "user": "system.user.admin",
           "ts": 1607784693476,
           "common": {
             "name": "Badezimmer links",
             "type": "boolean",
             "role": "switch.light",
             "desc": "per Script erstellt",
             "read": true,
             "write": true,
             "smartName": false,
             "alias": {
               "id": "hue.0.Badezimmerlampe_links.on"
             },
             "states": {
               "false": "aus",
               "true": "an"
             }
           },
           "native": {},
           "acl": {
             "object": 1636,
             "owner": "system.user.admin",
             "ownerGroup": "system.group.administrator",
             "state": 1636
           },
           "_id": "alias.0.Licht.Badezimmer_Licht_links",
           "type": "state"
          }
          

          1 Reply Last reply
          0
          • G Offline
            G Offline
            Gwenselah
            wrote on last edited by
            #259

            Guten Abend,

            vielen Dank für die tollen Scripte.
            Hab sie als Anreiz genommen meine gewachsenen Lösungen aufzuräumen und zu vereinheitlichen.

            Die Telegram-Ausgaben gefallen mir gut, ich würde sie gerne anstatt meiner eigenen nutzen.

            Was ich gerne anpassen bzw. erweitern möchte ist, dass ich die Telegram Nachricht nur an die anfragende Person geht.

            Kurz erläutert:
            Ich habe ein Event, welches auf Telegram Nachrichten reagiert, den anfragenden Benutzer ermittelt und nur an diesen die Antwort sendet.

            on({id: "telegram.0.communicate.request", ack: false, change: 'any'}, function (obj) {
                command = obj.state.val.substring(obj.state.val.indexOf(']')+1);
                var benutzer = obj.state.val.substring(1, obj.state.val.indexOf("]"));
                //hier wurde Code entfernt
                sendTo('telegram', {
            	user: benutzer,
            	text: "TelegramText",
                    parse_mode: "HTML"
                 });    
            }
            

            Aus meinem Javascript heraus über einen Datenpunkt wie "0_userdata.0.Geraete_zaehlen.Steckdosen.Haus.05_Telegram.Telegram_Steckdosenstatus_Haus_senden" zu triggern ist nicht das Problem, aber wie kann ich den Benutzer an ein Blockly übergeben, v.a. wenn dieses in einem eigenen Script liegt.

            Viele Grüße
            Andreas

            dslraserD 2 Replies Last reply
            0
            • G Gwenselah

              Guten Abend,

              vielen Dank für die tollen Scripte.
              Hab sie als Anreiz genommen meine gewachsenen Lösungen aufzuräumen und zu vereinheitlichen.

              Die Telegram-Ausgaben gefallen mir gut, ich würde sie gerne anstatt meiner eigenen nutzen.

              Was ich gerne anpassen bzw. erweitern möchte ist, dass ich die Telegram Nachricht nur an die anfragende Person geht.

              Kurz erläutert:
              Ich habe ein Event, welches auf Telegram Nachrichten reagiert, den anfragenden Benutzer ermittelt und nur an diesen die Antwort sendet.

              on({id: "telegram.0.communicate.request", ack: false, change: 'any'}, function (obj) {
                  command = obj.state.val.substring(obj.state.val.indexOf(']')+1);
                  var benutzer = obj.state.val.substring(1, obj.state.val.indexOf("]"));
                  //hier wurde Code entfernt
                  sendTo('telegram', {
              	user: benutzer,
              	text: "TelegramText",
                      parse_mode: "HTML"
                   });    
              }
              

              Aus meinem Javascript heraus über einen Datenpunkt wie "0_userdata.0.Geraete_zaehlen.Steckdosen.Haus.05_Telegram.Telegram_Steckdosenstatus_Haus_senden" zu triggern ist nicht das Problem, aber wie kann ich den Benutzer an ein Blockly übergeben, v.a. wenn dieses in einem eigenen Script liegt.

              Viele Grüße
              Andreas

              dslraserD Offline
              dslraserD Offline
              dslraser
              Forum Testing Most Active
              wrote on last edited by dslraser
              #260

              @gwenselah

              meinst Du sowas in der Art ?
              (wenn Du jetzt z.B. Licht oder licht bei Telegram eintippst, dann bekommt der Telegram User der zuletzt angefragt hat ein Telegram vom Blockly Geräte zählen Licht....nur als Beispiel)

              Bildschirmfoto 2021-05-12 um 22.22.51.png
              Bildschirmfoto 2021-05-12 um 22.16.54.png

              oder

              Bildschirmfoto 2021-05-12 um 22.17.15.png

              G 1 Reply Last reply
              0
              • dslraserD dslraser

                @gwenselah

                meinst Du sowas in der Art ?
                (wenn Du jetzt z.B. Licht oder licht bei Telegram eintippst, dann bekommt der Telegram User der zuletzt angefragt hat ein Telegram vom Blockly Geräte zählen Licht....nur als Beispiel)

                Bildschirmfoto 2021-05-12 um 22.22.51.png
                Bildschirmfoto 2021-05-12 um 22.16.54.png

                oder

                Bildschirmfoto 2021-05-12 um 22.17.15.png

                G Offline
                G Offline
                Gwenselah
                wrote on last edited by
                #261

                @dslraser
                vielen Dank für das schnelle Zusammenklicken einer Lösung 😳

                Ja, genau das hab ich gemeint.

                Interpretiere ich das richtig, dass man das in jedes Blockly für Licht, Steckdosen, Türen, usw. einbauen müsste.
                D.h. bei Empfang einer Nachricht von Telegram laufen alle Blocklys gleichzeitig los, bis ausgewertet wurde, welches Wort geschickt wurde.
                Siehst Du bei dieser parallelen Verarbeitung ein Problem?

                Aktuell reagiert bei mir nur ein Script auf Telegramanfragen und ruft über eine Switch - Anweisung je nach gesendetem Wort unterschiedliche Funktionen auf.

                dslraserD 2 Replies Last reply
                0
                • G Gwenselah

                  @dslraser
                  vielen Dank für das schnelle Zusammenklicken einer Lösung 😳

                  Ja, genau das hab ich gemeint.

                  Interpretiere ich das richtig, dass man das in jedes Blockly für Licht, Steckdosen, Türen, usw. einbauen müsste.
                  D.h. bei Empfang einer Nachricht von Telegram laufen alle Blocklys gleichzeitig los, bis ausgewertet wurde, welches Wort geschickt wurde.
                  Siehst Du bei dieser parallelen Verarbeitung ein Problem?

                  Aktuell reagiert bei mir nur ein Script auf Telegramanfragen und ruft über eine Switch - Anweisung je nach gesendetem Wort unterschiedliche Funktionen auf.

                  dslraserD Offline
                  dslraserD Offline
                  dslraser
                  Forum Testing Most Active
                  wrote on last edited by dslraser
                  #262

                  @gwenselah sagte in Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML:

                  @dslraser
                  vielen Dank für das schnelle Zusammenklicken einer Lösung 😳

                  Ja, genau das hab ich gemeint.

                  Interpretiere ich das richtig, dass man das in jedes Blockly für Licht, Steckdosen, Türen, usw. einbauen müsste.

                  richtig (aber nicht unbedingt)

                  D.h. bei Empfang einer Nachricht von Telegram laufen alle Blocklys gleichzeitig los, bis ausgewertet wurde, welches Wort geschickt wurde.
                  Siehst Du bei dieser parallelen Verarbeitung ein Problem?

                  Da sehe ich kein Problem. Es wird ja nur auf das Schlagwort und den letzten Absender gelauscht.

                  Aktuell reagiert bei mir nur ein Script auf Telegramanfragen und ruft über eine Switch - Anweisung je nach gesendetem Wort unterschiedliche Funktionen auf.

                  Du könntest aber auch Dein Telegram mit Deinem Schlagwort weiter verwenden und nur den Wert vom Datenpunkt senden, so wie oben im Beispiel. In diesem Datenpunkt liegt ja schon eine formatierte Telegram Ausgabe mit Emoji drinn.

                  Hier noch das Beispielblockly, falls Du was davon brauchst.

                  <xml xmlns="https://developers.google.com/blockly/xml">
                   <variables>
                     <variable id="O[+2UyKK]a:Y?u@kP(V1">Letzter_Absender</variable>
                     <variable id="^cf^)X),@{R1[mkx]OmR">Letzter_Text</variable>
                     <variable id="z{!HH#i@*zhvL%6muLGu">Letzter_Text_klein</variable>
                   </variables>
                   <block type="on_ext" id="!8B]z7wO)w*bD^7(714W" x="13" y="13">
                     <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                     <field name="CONDITION">any</field>
                     <field name="ACK_CONDITION"></field>
                     <value name="OID0">
                       <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="J=/9IeQnq:FSa`bM5)PG">
                         <field name="oid">default</field>
                       </shadow>
                       <block type="field_oid" id="GDubi_#J2DI7*n0ep|.D">
                         <field name="oid">telegram.0.communicate.request</field>
                       </block>
                     </value>
                     <statement name="STATEMENT">
                       <block type="variables_set" id="wx1Id^cN]ztTBpbxGq9u">
                         <field name="VAR" id="O[+2UyKK]a:Y?u@kP(V1">Letzter_Absender</field>
                         <value name="VALUE">
                           <block type="text_getSubstring" id="!{g./8(or54hvEyb1P`f">
                             <mutation at1="true" at2="true"></mutation>
                             <field name="WHERE1">FROM_START</field>
                             <field name="WHERE2">FROM_START</field>
                             <value name="STRING">
                               <block type="on_source" id="IH2.D,NF:~A]W/4FHzgx">
                                 <field name="ATTR">state.val</field>
                               </block>
                             </value>
                             <value name="AT1">
                               <block type="math_number" id="e3-d;DM::ScEpRh}H!@u">
                                 <field name="NUM">2</field>
                               </block>
                             </value>
                             <value name="AT2">
                               <block type="math_arithmetic" id="!6WqqSNO@l{-K;,0UXg-" inline="false">
                                 <field name="OP">MINUS</field>
                                 <value name="A">
                                   <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="r%ebl4IUX*XWQmsp|?rw">
                                     <field name="NUM">1</field>
                                   </shadow>
                                   <block type="text_indexOf" id="zZ:Zi`joE?XuMOeVt|R6" inline="false">
                                     <field name="END">FIRST</field>
                                     <value name="VALUE">
                                       <block type="on_source" id="X)hVqhY|6Z+@Cb?r}b4`">
                                         <field name="ATTR">state.val</field>
                                       </block>
                                     </value>
                                     <value name="FIND">
                                       <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="53KpH_VzOt@uW50iFuYJ">
                                         <field name="TEXT">abc</field>
                                       </shadow>
                                       <block type="text" id="1]2I2PG:.3LKq!TKaRwq">
                                         <field name="TEXT">]</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="+bTY;ti{LICv`mEp;Zjv">
                                     <field name="NUM">1</field>
                                   </shadow>
                                   <block type="math_number" id="eBIB);yoT|)BAtWQsxk%">
                                     <field name="NUM">1</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                           </block>
                         </value>
                         <next>
                           <block type="variables_set" id="yv$UK4@|NxO~@hGO3O7*">
                             <field name="VAR" id="^cf^)X),@{R1[mkx]OmR">Letzter_Text</field>
                             <value name="VALUE">
                               <block type="text_getSubstring" id="Q6|-l}pxqvnGfilo(xO6">
                                 <mutation at1="true" at2="false"></mutation>
                                 <field name="WHERE1">FROM_START</field>
                                 <field name="WHERE2">LAST</field>
                                 <value name="STRING">
                                   <block type="on_source" id="Lu,i~#mn5B~yffM@G3P4">
                                     <field name="ATTR">state.val</field>
                                   </block>
                                 </value>
                                 <value name="AT1">
                                   <block type="math_arithmetic" id="XTj+_/AC66*I79`c(d{9" inline="false">
                                     <field name="OP">ADD</field>
                                     <value name="A">
                                       <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number">
                                         <field name="NUM">1</field>
                                       </shadow>
                                       <block type="text_indexOf" id="KJM:GW)R40a*v3;9f@Ex" inline="false">
                                         <field name="END">FIRST</field>
                                         <value name="VALUE">
                                           <block type="on_source" id="aY5`VFX:uXgs-N2!KIAE">
                                             <field name="ATTR">state.val</field>
                                           </block>
                                         </value>
                                         <value name="FIND">
                                           <shadow xmlns="http://www.w3.org/1999/xhtml" type="text">
                                             <field name="TEXT">abc</field>
                                           </shadow>
                                           <block type="text" id="4if*Npmw|B$N^ot!5K~a">
                                             <field name="TEXT">]</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                     <value name="B">
                                       <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number">
                                         <field name="NUM">1</field>
                                       </shadow>
                                       <block type="math_number" id="oh_=Uz)VO`[`-5Gf?+m:">
                                         <field name="NUM">1</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <next>
                               <block type="variables_set" id="^1sg]f;Kh1a!0b9S%V~2">
                                 <field name="VAR" id="z{!HH#i@*zhvL%6muLGu">Letzter_Text_klein</field>
                                 <value name="VALUE">
                                   <block type="text_changeCase" id="]egD:d6*~}vf%-$1]uRJ">
                                     <field name="CASE">LOWERCASE</field>
                                     <value name="TEXT">
                                       <shadow xmlns="http://www.w3.org/1999/xhtml" type="text">
                                         <field name="TEXT">abc</field>
                                       </shadow>
                                       <block type="text_getSubstring" id="0xX5|,vC0kG!g!U5Zw#_">
                                         <mutation at1="true" at2="false"></mutation>
                                         <field name="WHERE1">FROM_START</field>
                                         <field name="WHERE2">LAST</field>
                                         <value name="STRING">
                                           <block type="on_source" id="Dll2EDa:..KnYikKq`le">
                                             <field name="ATTR">state.val</field>
                                           </block>
                                         </value>
                                         <value name="AT1">
                                           <block type="math_arithmetic" id="|~w!v.!_Jc#?(@*F%WwN" inline="false">
                                             <field name="OP">ADD</field>
                                             <value name="A">
                                               <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number">
                                                 <field name="NUM">1</field>
                                               </shadow>
                                               <block type="text_indexOf" id="?+`hfYizA{4DFUW%|lhi" inline="false">
                                                 <field name="END">FIRST</field>
                                                 <value name="VALUE">
                                                   <block type="on_source" id="axoU}jL,|iwO#/xMt=0G">
                                                     <field name="ATTR">state.val</field>
                                                   </block>
                                                 </value>
                                                 <value name="FIND">
                                                   <shadow xmlns="http://www.w3.org/1999/xhtml" type="text">
                                                     <field name="TEXT">abc</field>
                                                   </shadow>
                                                   <block type="text" id=";j~_auNoLk4?e^(o;GZu">
                                                     <field name="TEXT">]</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                             <value name="B">
                                               <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number">
                                                 <field name="NUM">1</field>
                                               </shadow>
                                               <block type="math_number" id="H5b*vtmxv!vP+o5`_4!N">
                                                 <field name="NUM">1</field>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="debug" id="0utDl^B#}p3ud;Z*G4v(">
                                     <field name="Severity">log</field>
                                     <value name="TEXT">
                                       <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="r|ZLPN1Tp0[@!p)F?GUc">
                                         <field name="TEXT">test</field>
                                       </shadow>
                                       <block type="text_join" id="50C@kPZHr=*Q2;.F!5/n">
                                         <mutation items="2"></mutation>
                                         <value name="ADD0">
                                           <block type="text" id="k$_YK-D0OYl)H}nfh4[Z">
                                             <field name="TEXT">letzter Absender: </field>
                                           </block>
                                         </value>
                                         <value name="ADD1">
                                           <block type="variables_get" id="_mX3U8e6uv}!Bb6QZ#X}">
                                             <field name="VAR" id="O[+2UyKK]a:Y?u@kP(V1">Letzter_Absender</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="controls_if" id="_s[1J.Hi%ExlMLw?rQ:u">
                                         <value name="IF0">
                                           <block type="logic_operation" id="fnnj`zX2qfFoV=IzP3L9" inline="false">
                                             <field name="OP">OR</field>
                                             <value name="A">
                                               <block type="logic_compare" id="si`FjmH(j0~bxRtyDTR0">
                                                 <field name="OP">EQ</field>
                                                 <value name="A">
                                                   <block type="variables_get" id="cSID`vXfEyOa$;ZF.0+{">
                                                     <field name="VAR" id="^cf^)X),@{R1[mkx]OmR">Letzter_Text</field>
                                                   </block>
                                                 </value>
                                                 <value name="B">
                                                   <block type="text" id="N/wz7n`hC}YBRs1)FUzX">
                                                     <field name="TEXT">Licht</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                             <value name="B">
                                               <block type="logic_compare" id="@hw[Drpt86MrYqSDGkQW">
                                                 <field name="OP">EQ</field>
                                                 <value name="A">
                                                   <block type="variables_get" id="6dVBrqXdYcx!ek};MoTn">
                                                     <field name="VAR" id="z{!HH#i@*zhvL%6muLGu">Letzter_Text_klein</field>
                                                   </block>
                                                 </value>
                                                 <value name="B">
                                                   <block type="text" id="5Cy8;X6,_e)Yvym#!/yb">
                                                     <field name="TEXT">licht</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                         <statement name="DO0">
                                           <block type="telegram" id="-qk2{w#lVD4,vM*P/R)3">
                                             <field name="INSTANCE"></field>
                                             <field name="LOG"></field>
                                             <field name="SILENT">FALSE</field>
                                             <field name="PARSEMODE">default</field>
                                             <value name="MESSAGE">
                                               <shadow type="text" id="@BIF4MP9HQ%ID0Gle8ns">
                                                 <field name="TEXT">text</field>
                                               </shadow>
                                               <block type="get_value" id="?f-,@!ot._rwz$@Zog/*">
                                                 <field name="ATTR">val</field>
                                                 <field name="OID">0_userdata.0.Geraete_zaehlen.Lichter.Haus.01_Anzeigen_und_Listen.07_Lichter_Liste_mit_Emojis</field>
                                               </block>
                                             </value>
                                             <value name="USERNAME">
                                               <block type="variables_get" id="@a$js+dJ=QUzH4WCD:#q">
                                                 <field name="VAR" id="O[+2UyKK]a:Y?u@kP(V1">Letzter_Absender</field>
                                               </block>
                                             </value>
                                           </block>
                                         </statement>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                             </next>
                           </block>
                         </next>
                       </block>
                     </statement>
                   </block>
                  </xml>
                  

                  1 Reply Last reply
                  0
                  • G Gwenselah

                    @dslraser
                    vielen Dank für das schnelle Zusammenklicken einer Lösung 😳

                    Ja, genau das hab ich gemeint.

                    Interpretiere ich das richtig, dass man das in jedes Blockly für Licht, Steckdosen, Türen, usw. einbauen müsste.
                    D.h. bei Empfang einer Nachricht von Telegram laufen alle Blocklys gleichzeitig los, bis ausgewertet wurde, welches Wort geschickt wurde.
                    Siehst Du bei dieser parallelen Verarbeitung ein Problem?

                    Aktuell reagiert bei mir nur ein Script auf Telegramanfragen und ruft über eine Switch - Anweisung je nach gesendetem Wort unterschiedliche Funktionen auf.

                    dslraserD Offline
                    dslraserD Offline
                    dslraser
                    Forum Testing Most Active
                    wrote on last edited by dslraser
                    #263

                    @gwenselah sagte in Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML:

                    Aktuell reagiert bei mir nur ein Script auf Telegramanfragen und ruft über eine Switch - Anweisung je nach gesendetem Wort unterschiedliche Funktionen auf.

                    Du verwendest übrigens in Deinem Beispiel den gleichen Trigger, und reagierst auf Aktualisierung change: 'any'.(Das lauscht ja auf den letzten Benutzer und das Schlagwort)

                    on({id: "telegram.0.communicate.request",

                    Bildschirmfoto 2021-05-12 um 23.00.21.png

                    JS-Ansicht von meinem Beispiel

                    var Letzter_Absender, Letzter_Text, Letzter_Text_klein;
                    
                    function subsequenceFromStartLast(sequence, at1) {
                     var start = at1;
                     var end = sequence.length - 1 + 1;
                     return sequence.slice(start, end);
                    }
                    
                    
                    on({id: 'telegram.0.communicate.request', change: "any"}, async function (obj) {
                     var value = obj.state.val;
                     var oldValue = obj.oldState.val;
                     Letzter_Absender = (obj.state ? obj.state.val : "").slice(1, ((obj.state ? obj.state.val : "").indexOf(']') + 1) - 1);
                     Letzter_Text = subsequenceFromStartLast((obj.state ? obj.state.val : ""), (((obj.state ? obj.state.val : "").indexOf(']') + 1 + 1) - 1));
                     Letzter_Text_klein = subsequenceFromStartLast((obj.state ? obj.state.val : ""), (((obj.state ? obj.state.val : "").indexOf(']') + 1 + 1) - 1)).toLowerCase();
                     console.log(('letzter Absender: ' + String(Letzter_Absender)));
                     if (Letzter_Text == 'Licht' || Letzter_Text_klein == 'licht') {
                       sendTo("telegram", "send", {
                           text: getState("0_userdata.0.Geraete_zaehlen.Lichter.Haus.01_Anzeigen_und_Listen.07_Lichter_Liste_mit_Emojis").val,
                           user: Letzter_Absender
                       });
                     }
                    });
                    

                    1 Reply Last reply
                    0
                    • G Gwenselah

                      Guten Abend,

                      vielen Dank für die tollen Scripte.
                      Hab sie als Anreiz genommen meine gewachsenen Lösungen aufzuräumen und zu vereinheitlichen.

                      Die Telegram-Ausgaben gefallen mir gut, ich würde sie gerne anstatt meiner eigenen nutzen.

                      Was ich gerne anpassen bzw. erweitern möchte ist, dass ich die Telegram Nachricht nur an die anfragende Person geht.

                      Kurz erläutert:
                      Ich habe ein Event, welches auf Telegram Nachrichten reagiert, den anfragenden Benutzer ermittelt und nur an diesen die Antwort sendet.

                      on({id: "telegram.0.communicate.request", ack: false, change: 'any'}, function (obj) {
                          command = obj.state.val.substring(obj.state.val.indexOf(']')+1);
                          var benutzer = obj.state.val.substring(1, obj.state.val.indexOf("]"));
                          //hier wurde Code entfernt
                          sendTo('telegram', {
                      	user: benutzer,
                      	text: "TelegramText",
                              parse_mode: "HTML"
                           });    
                      }
                      

                      Aus meinem Javascript heraus über einen Datenpunkt wie "0_userdata.0.Geraete_zaehlen.Steckdosen.Haus.05_Telegram.Telegram_Steckdosenstatus_Haus_senden" zu triggern ist nicht das Problem, aber wie kann ich den Benutzer an ein Blockly übergeben, v.a. wenn dieses in einem eigenen Script liegt.

                      Viele Grüße
                      Andreas

                      dslraserD Offline
                      dslraserD Offline
                      dslraser
                      Forum Testing Most Active
                      wrote on last edited by dslraser
                      #264

                      @gwenselah
                      Ich habe mal so eine Variante zum testen eingebaut. Kannst ja mal probieren. Was da als Schlagwort rein kommt ist Jedem selbst überlassen.

                      Bildschirmfoto 2021-05-13 um 09.09.26.png

                      Fenster_1_7_7.zip

                      Tueren_1_7_7.zip

                      Licht_1_7_7.zip

                      Batterien_Prozent_1_7_7.zip

                      Batterien_voll_leer_1_7_7.zip

                      Batterien_Volt_1_7_7.zip

                      Temperaturen_1_7_7.zip

                      Bewegungsmelder_1_7_7.zip

                      Luftfeuchtigkeit_1_7_7.zip

                      Steckdosen_1_7_7.zip

                      rssi_1_7_7.zip

                      Stephan SchleichS 1 Reply Last reply
                      0
                      • dslraserD dslraser

                        @gwenselah
                        Ich habe mal so eine Variante zum testen eingebaut. Kannst ja mal probieren. Was da als Schlagwort rein kommt ist Jedem selbst überlassen.

                        Bildschirmfoto 2021-05-13 um 09.09.26.png

                        Fenster_1_7_7.zip

                        Tueren_1_7_7.zip

                        Licht_1_7_7.zip

                        Batterien_Prozent_1_7_7.zip

                        Batterien_voll_leer_1_7_7.zip

                        Batterien_Volt_1_7_7.zip

                        Temperaturen_1_7_7.zip

                        Bewegungsmelder_1_7_7.zip

                        Luftfeuchtigkeit_1_7_7.zip

                        Steckdosen_1_7_7.zip

                        rssi_1_7_7.zip

                        Stephan SchleichS Offline
                        Stephan SchleichS Offline
                        Stephan Schleich
                        wrote on last edited by
                        #265

                        @dslraser wo kann ich den Grammatikfehler korrigieren?

                        0dd180e7-cfc5-4b71-9571-8d058db82bc3-image.png

                        dslraserD 2 Replies Last reply
                        0
                        • Stephan SchleichS Stephan Schleich

                          @dslraser wo kann ich den Grammatikfehler korrigieren?

                          0dd180e7-cfc5-4b71-9571-8d058db82bc3-image.png

                          dslraserD Offline
                          dslraserD Offline
                          dslraser
                          Forum Testing Most Active
                          wrote on last edited by
                          #266

                          @stephan-schleich
                          Das sind Variablen, von welcher Liste ist das ?

                          1 Reply Last reply
                          0
                          • Stephan SchleichS Stephan Schleich

                            @dslraser wo kann ich den Grammatikfehler korrigieren?

                            0dd180e7-cfc5-4b71-9571-8d058db82bc3-image.png

                            dslraserD Offline
                            dslraserD Offline
                            dslraser
                            Forum Testing Most Active
                            wrote on last edited by dslraser
                            #267

                            @stephan-schleich sagte in Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML:

                            @dslraser wo kann ich den Grammatikfehler korrigieren?

                            0dd180e7-cfc5-4b71-9571-8d058db82bc3-image.png

                            Ändern kannst Du das in dieser Funktion

                            Bildschirmfoto 2021-05-13 um 09.37.56.png

                            hier ganz unten im letzten falls mache

                            Bildschirmfoto 2021-05-13 um 09.44.33.png

                            ändern auf mehrzahl_Lichter

                            Bildschirmfoto 2021-05-13 um 09.38.46.png

                            1 Reply Last reply
                            1
                            • H Offline
                              H Offline
                              hellrider2001
                              wrote on last edited by
                              #268

                              Hallo zusammen!

                              Ich habe eine kurze Frage zum Skript Fensteransage Version 1.6.7
                              Im Grunde funktioniert das Skript wunderbar, nur leider gibt es nicht nur den Namen der Fenster zurück, sondern den kompletten String inkl. ".state".

                              e54d8d60-ae67-4177-be1c-f4bf7944b0be-image.png
                              81e4bf52-90f8-4e4a-a062-5e4cff2ade52-image.png

                              Habt ihr eine Idee was ich falsch gemacht haben könnte?

                              Danke und Grüße!

                              dslraserD 2 Replies Last reply
                              0
                              • H hellrider2001

                                Hallo zusammen!

                                Ich habe eine kurze Frage zum Skript Fensteransage Version 1.6.7
                                Im Grunde funktioniert das Skript wunderbar, nur leider gibt es nicht nur den Namen der Fenster zurück, sondern den kompletten String inkl. ".state".

                                e54d8d60-ae67-4177-be1c-f4bf7944b0be-image.png
                                81e4bf52-90f8-4e4a-a062-5e4cff2ade52-image.png

                                Habt ihr eine Idee was ich falsch gemacht haben könnte?

                                Danke und Grüße!

                                dslraserD Offline
                                dslraserD Offline
                                dslraser
                                Forum Testing Most Active
                                wrote on last edited by
                                #269

                                @hellrider2001
                                Deine alias heißen halt so bzw. Du hast die so genannt. Das .STATE muss ja nicht im Namen sein. Den Namen musst Du so erstellen wie Du Ihn haben willst (also nicht die ID, es geht nur um den Namen des alias)

                                H 1 Reply Last reply
                                0
                                • H hellrider2001

                                  Hallo zusammen!

                                  Ich habe eine kurze Frage zum Skript Fensteransage Version 1.6.7
                                  Im Grunde funktioniert das Skript wunderbar, nur leider gibt es nicht nur den Namen der Fenster zurück, sondern den kompletten String inkl. ".state".

                                  e54d8d60-ae67-4177-be1c-f4bf7944b0be-image.png
                                  81e4bf52-90f8-4e4a-a062-5e4cff2ade52-image.png

                                  Habt ihr eine Idee was ich falsch gemacht haben könnte?

                                  Danke und Grüße!

                                  dslraserD Offline
                                  dslraserD Offline
                                  dslraser
                                  Forum Testing Most Active
                                  wrote on last edited by dslraser
                                  #270

                                  @hellrider2001 sagte in Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML:

                                  Habt ihr eine Idee was ich falsch gemacht haben könnte?

                                  Screenshot_20210513-142628_Chrome.jpg

                                  sieht dann so aus (ohne .STATE)

                                  Screenshot_20210513-142740_Chrome.jpg

                                  Fensteransage Version 1.6.7

                                  Wirklich ?

                                  EDIT: siehe erster Beitrag

                                  Bevor Ihr das Blockly nutzen könnt, müssen die Alias für Eure Geräte, die Ihr im Blockly verwenden wollt, erstellt werden. Dafür eignet sich die Scriptvorlage von @CruziX hervorragend. Mit dieser Vorlage können alle Alias auf einmal erstellt werden. Eine Vorlage als Beispiel findet [Ihr im Spoiler im 2. Beitrag]
                                  (https://forum.iobroker.net/post/549502).
                                  Eine weitere Möglichkeit zum alias erstellen ist der relativ neue Adapter alias-manager von @s-bormann (https://github.com/sbormann/ioBroker.alias-manager#readme)
                                  An dieser Stelle sei gleich gesagt, sinnvolle Namen im Alias zu verwenden (id ist egal, nur der Name ist gemeint), da diese Namen dann für alles im Blockly verwendet werden, also alle Gerätenamen allgemein. Also immer so erstellen, das sich der Name auch z.B. für Alexa aussprechen lässt.
                                  In der id keine Leerzeichen/Sonderzeichen oder Umlaute verwenden, damit vermeidet man direkt im Vorfeld mögliche Fehler.
                                  Als erstes solltet ihr in den Aufzählungen neue Funktionen erstellen, diese kann man dann gleich im alias Script benutzen. Aufzählungen sind im ioBroker hier zu finden (Haken rein setzen bei

                                  1 Reply Last reply
                                  0
                                  • G Offline
                                    G Offline
                                    Gwenselah
                                    wrote on last edited by
                                    #271

                                    @dslraser

                                    Danke für die Version 1.7.7. Hab beispielhaft das Fensterscript bei mir eingebunden und lasse es parallel zu meinem laufen.

                                    Das hat auf Anhieb funktionier. Ich werde heute Abend weitere einbinden und testen

                                    1 Reply Last reply
                                    1
                                    • dslraserD dslraser

                                      @hellrider2001
                                      Deine alias heißen halt so bzw. Du hast die so genannt. Das .STATE muss ja nicht im Namen sein. Den Namen musst Du so erstellen wie Du Ihn haben willst (also nicht die ID, es geht nur um den Namen des alias)

                                      H Offline
                                      H Offline
                                      hellrider2001
                                      wrote on last edited by
                                      #272

                                      @dslraser Danke für die Erleuchtung! Passt zu 100%
                                      An der Stelle mal ein riesiges Dankeschön für Deinen Einsatz!

                                      1 Reply Last reply
                                      1
                                      • L Offline
                                        L Offline
                                        Lucky_ESA
                                        Developer Most Active
                                        wrote on last edited by
                                        #273

                                        Hi dslraser
                                        Leider bin ich nicht in der Lager in iqontrol im HTML Code einen Datenpunkt auszulesen daher habe ich das scrollen so gelöst.

                                        2 Änderungen in den Blocklys.
                                        bild1.JPG
                                        bild2.JPG
                                        rssi_1_7_8.rar

                                        Kannst dir das ja mal anschauen und testen lassen. Habe einen Test mit Firefox, Chrome und Android positiv durchgeführt.

                                        Gruß//Lucky

                                        dslraserD 2 Replies Last reply
                                        0
                                        • L Lucky_ESA

                                          Hi dslraser
                                          Leider bin ich nicht in der Lager in iqontrol im HTML Code einen Datenpunkt auszulesen daher habe ich das scrollen so gelöst.

                                          2 Änderungen in den Blocklys.
                                          bild1.JPG
                                          bild2.JPG
                                          rssi_1_7_8.rar

                                          Kannst dir das ja mal anschauen und testen lassen. Habe einen Test mit Firefox, Chrome und Android positiv durchgeführt.

                                          Gruß//Lucky

                                          dslraserD Offline
                                          dslraserD Offline
                                          dslraser
                                          Forum Testing Most Active
                                          wrote on last edited by
                                          #274

                                          @lucky_esa
                                          Danke, schaue ich mir gern mal an.

                                          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

                                          328

                                          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