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. 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.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

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

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
alexaansageblocklyfensteriqontroljarvisjavascripttür-fenster-kontakt
524 Beiträge 40 Kommentatoren 122.1k Aufrufe 57 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.
  • L Offline
    L Offline
    Lucky_ESA
    Developer Most Active
    schrieb am zuletzt editiert von
    #247

    85 ist auch OK:blush:

    Da ich der einzige bin der dieses Thema hat, kannst du das bei der nächsten Revision ändern.
    Es wäre auch besser, weil du damit die Abfragen reduzierst. 1 x Datenpunkt abfragen ist besser als 2x :grinning:

    1 Antwort Letzte Antwort
    0
    • dslraserD dslraser

      @lucky_esa
      Ich habe das RSSI Blockly nur in Sachen Variablen in html umgestellt, sonst so gelassen wie es von Dir kam. Ich habe im Moment nur 8 Geräte zum testen als alias dafür angelegt, bei mir passte es bisher immer...

      Bildschirmfoto 2021-04-29 um 22.19.32.png

      dirk1962D Offline
      dirk1962D Offline
      dirk1962
      schrieb am zuletzt editiert von
      #248

      @dslraser
      Kannst Du bitte mal zeigen, wie der Alias aussehen muss.
      Dann teste ich das auch.

      NUC8i5 mit Proxmox; Raspberrymatic in VM, iobroker, Motioneye, infuxDB und Grafana in CT.

      1 Antwort Letzte Antwort
      0
      • dslraserD dslraser

        Ich habe im zweiten Beitrag das Anrufer_Ansage_Telegram_EMAIL Blockly aktualisiert

        meine verwendeten Adapter sind:

        TR-064 Version 4.2.12
        Script Engine Version 4.10.15
        Telegram Version 1.8.1
        Send emails Version 1.0.9

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

        dirk1962D Offline
        dirk1962D Offline
        dirk1962
        schrieb am zuletzt editiert von
        #249

        @dslraser
        Anrufer Ansage April 2021 funktioniert :+1: .
        E-Mail und Telegram brauche ich nicht, weil mir die Fritzbox eine Mail schickt.

        Script Engine V 5.1.3

        NUC8i5 mit Proxmox; Raspberrymatic in VM, iobroker, Motioneye, infuxDB und Grafana in CT.

        1 Antwort Letzte Antwort
        0
        • L Offline
          L Offline
          Lucky_ESA
          Developer Most Active
          schrieb am zuletzt editiert von
          #250

          Hier der Alias für RSSI.

          createAlias('hm-rpc.0.xxxxxxxxxxxxxxxx.0.RSSI_DEVICE'/*Taster Eingang*/, 'RSSI.Schalter_Eingang', undefined, 'rssi_alias', 'number', undefined, undefined, 'Schalter Eingang', 'value.rssi', 'per Script erstellt', -256, 256, 'dBm', undefined)
          
          Stephan SchleichS 1 Antwort Letzte Antwort
          1
          • L Lucky_ESA

            Hier der Alias für RSSI.

            createAlias('hm-rpc.0.xxxxxxxxxxxxxxxx.0.RSSI_DEVICE'/*Taster Eingang*/, 'RSSI.Schalter_Eingang', undefined, 'rssi_alias', 'number', undefined, undefined, 'Schalter Eingang', 'value.rssi', 'per Script erstellt', -256, 256, 'dBm', undefined)
            
            Stephan SchleichS Offline
            Stephan SchleichS Offline
            Stephan Schleich
            schrieb am zuletzt editiert von
            #251

            @dslraser In den alten Verisonen wurde noch der Raum angezeigt in jenem das Licht an ist.(z.B. Büro Licht eingeschalten)
            aa258d68-8365-4851-822e-e6a34f87863a-image.png

            dslraserD 1 Antwort Letzte Antwort
            0
            • Stephan SchleichS Stephan Schleich

              @dslraser In den alten Verisonen wurde noch der Raum angezeigt in jenem das Licht an ist.(z.B. Büro Licht eingeschalten)
              aa258d68-8365-4851-822e-e6a34f87863a-image.png

              dslraserD Offline
              dslraserD Offline
              dslraser
              Forum Testing Most Active
              schrieb am zuletzt editiert von
              #252

              @stephan-schleich
              ist auch immer noch so

              Bildschirmfoto 2021-05-07 um 22.36.27.png

              Stephan SchleichS 1 Antwort Letzte Antwort
              0
              • dslraserD dslraser

                @stephan-schleich
                ist auch immer noch so

                Bildschirmfoto 2021-05-07 um 22.36.27.png

                Stephan SchleichS Offline
                Stephan SchleichS Offline
                Stephan Schleich
                schrieb am zuletzt editiert von
                #253

                @dslraser aahhh, falsch benannt :) - sorry

                1 Antwort Letzte Antwort
                0
                • U Offline
                  U Offline
                  UncleB
                  schrieb am zuletzt editiert von
                  #254

                  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 1 Antwort Letzte Antwort
                  0
                  • 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
                    schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
                    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
                      schrieb am zuletzt editiert von
                      #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 Antworten Letzte Antwort
                      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
                        schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
                        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
                          schrieb am zuletzt editiert von
                          #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 Antwort Letzte Antwort
                          0
                          • G Offline
                            G Offline
                            Gwenselah
                            schrieb am zuletzt editiert von
                            #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 Antworten Letzte Antwort
                            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
                              schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
                              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
                                schrieb am zuletzt editiert von
                                #261

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

                                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 Antworten Letzte Antwort
                                0
                                • G Gwenselah

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

                                  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
                                  schrieb am zuletzt editiert von 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 :flushed:

                                  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 Antwort Letzte Antwort
                                  0
                                  • G Gwenselah

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

                                    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
                                    schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
                                    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
                                      schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
                                      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
                                        schrieb am zuletzt editiert von
                                        #265

                                        @dslraser wo kann ich den Grammatikfehler korrigieren?

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

                                        dslraserD 2 Antworten Letzte Antwort
                                        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
                                          schrieb am zuletzt editiert von
                                          #266

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

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          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