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

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Blockly und triggern auf mehrere Devices mit RegExp

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.0k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.2k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Blockly und triggern auf mehrere Devices mit RegExp

Geplant Angeheftet Gesperrt Verschoben Blockly
2 Beiträge 2 Kommentatoren 638 Aufrufe 2 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.
  • M Offline
    M Offline
    Morgennebel
    schrieb am zuletzt editiert von
    #1

    Moin Moin,

    nach mehreren Tagen Google-Fu habe ich einige Beiträge zum Thema Blockly und RegExp für mehrere Devices gefunden, jedoch leider keine funktionsfähige Lösung. Die Beiträge waren alle von 2017/2018 mit JS Adapter 1.0. Das "große" Fenster-/Tür-Script in Javascript im Forum ist ... zu groß für das Problem.

    Daher meine Frage: ich möchte ein Blockly-Script definieren, daß meine Homematic-Fenster-Stati ausliest. Alle Homematic-Fenstersensoren folgen dem Namensschema

    HM.<Raum>.Fenster.<Art>
    

    und finden sich in

    hm-rpc.0.<SERIAL>.1.STATE
    

    Mein Versuch

    on({id: new RegExp("^hm-rpc.+\.(Fenster)\..+"), change: "ne"}, function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      sendTo("telegram", "send", {
          text: (['Fensteränderung ',obj.deviceName,'. Neuer Zustand: ',(obj.state ? obj.state.val : "")].join(''))
      });
    });
    
    //JTNDeG1sJTIweG1sbnMlM0QlMjJodHRwcyUzQSUyRiUyRmRldmVsb3BlcnMuZ29vZ2xlLmNvbSUyRmJsb2NrbHklMkZ4bWwlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJvbl9leHQlMjIlMjBpZCUzRCUyMiUzQU4lN0Juamc1M2pwWmZZJTNGODUlNUVfNW4lMjIlMjB4JTNEJTIyMzEzJTIyJTIweSUzRCUyMjI2MyUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGl0ZW1zJTNEJTIyMSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ09ORElUSU9OJTIyJTNFbmUlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFDS19DT05ESVRJT04lMjIlM0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRDAlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIyZmllbGRfb2lkJTIyJTIwaWQlM0QlMjIqZyU3Q1RQSSUzRlgxKiU2MCU3Q2klN0JHZyUyNVFKKCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRWRlZmF1bHQlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnJlZ2V4JTIyJTIwaWQlM0QlMjJWJTVEJTI0ZDEpJTJCUkFNJTI0MFg0JTYwKi1NJTNGaCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlNUVobS1ycGMuJTJCJTVDLihGZW5zdGVyKSU1Qy4uJTJCJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMlNUQVRFTUVOVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRlbGVncmFtJTIyJTIwaWQlM0QlMjIlMjRsSEVLaGZUJTdDUV9ERlprLXAtKU4lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJJTlNUQU5DRSUyMiUzRSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTE9HJTIyJTNFJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJTSUxFTlQlMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyUEFSU0VNT0RFJTIyJTNFZGVmYXVsdCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyTUVTU0FHRSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjIlN0RxQlR0VWE0SGklMjVvbCUzQlB5KjV4JTdEJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRXRleHQlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfam9pbiUyMiUyMGlkJTNEJTIyT0tybmJWJTJGd18lN0M2VSU2MGwlMjRWJTVEYSElMkYlMjIlM0UlM0NtdXRhdGlvbiUyMGl0ZW1zJTNEJTIyNCUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMmNkUVJjJTI1JTIzcGZrbVYlN0Q4JTdCTyU1QjElM0RFJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRUZlbnN0ZXIlQzMlQTRuZGVydW5nJTIwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm9uX3NvdXJjZSUyMiUyMGlkJTNEJTIyKGhjcDJrMiUyNVFRRG5QVy5IQXlpMSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0VkZXZpY2VOYW1lJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMlR+JTVCcSU1Qi5HeSUyQzZyVzFhJTI0UjghJTNGeiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UuJTIwTmV1ZXIlMjBadXN0YW5kJTNBJTIwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm9uX3NvdXJjZSUyMiUyMGlkJTNEJTIyLiUzQkklMjUlN0RwaER3JTI1LkhHLVk4T0lhcCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0VzdGF0ZS52YWwlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnhtbCUzRQ==
    

    funktioniert nicht - es wird nicht getriggert und ich erhalte kein Telegram.

    Unterstützt denn Blockly im Trigger überhaupt ein RegExp-Ausdruck? Und wenn nein, was in etwa könnte ich flasch gemacht haben...?

    Danke, -MN

    --
    IOBroker nach 5.5 Jahren FHEM.
    Docker: IOB+redis+InfluxDB mit Devuan 6.0 (Linux).
    OPNSense, Ruckus, Homematic, HeatingControl, Hue, InfluxDB, Kodi, LinkedDevices, LGTV, LGTV11, Luftdaten, MQTT, MiHome-Vaccum, Pi-Hole, Pollenflug, Shelly, Telegram, Vis, Wolf,

    paul53P 1 Antwort Letzte Antwort
    0
    • M Morgennebel

      Moin Moin,

      nach mehreren Tagen Google-Fu habe ich einige Beiträge zum Thema Blockly und RegExp für mehrere Devices gefunden, jedoch leider keine funktionsfähige Lösung. Die Beiträge waren alle von 2017/2018 mit JS Adapter 1.0. Das "große" Fenster-/Tür-Script in Javascript im Forum ist ... zu groß für das Problem.

      Daher meine Frage: ich möchte ein Blockly-Script definieren, daß meine Homematic-Fenster-Stati ausliest. Alle Homematic-Fenstersensoren folgen dem Namensschema

      HM.<Raum>.Fenster.<Art>
      

      und finden sich in

      hm-rpc.0.<SERIAL>.1.STATE
      

      Mein Versuch

      on({id: new RegExp("^hm-rpc.+\.(Fenster)\..+"), change: "ne"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        sendTo("telegram", "send", {
            text: (['Fensteränderung ',obj.deviceName,'. Neuer Zustand: ',(obj.state ? obj.state.val : "")].join(''))
        });
      });
      
      //JTNDeG1sJTIweG1sbnMlM0QlMjJodHRwcyUzQSUyRiUyRmRldmVsb3BlcnMuZ29vZ2xlLmNvbSUyRmJsb2NrbHklMkZ4bWwlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJvbl9leHQlMjIlMjBpZCUzRCUyMiUzQU4lN0Juamc1M2pwWmZZJTNGODUlNUVfNW4lMjIlMjB4JTNEJTIyMzEzJTIyJTIweSUzRCUyMjI2MyUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGl0ZW1zJTNEJTIyMSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ09ORElUSU9OJTIyJTNFbmUlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFDS19DT05ESVRJT04lMjIlM0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRDAlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIyZmllbGRfb2lkJTIyJTIwaWQlM0QlMjIqZyU3Q1RQSSUzRlgxKiU2MCU3Q2klN0JHZyUyNVFKKCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRWRlZmF1bHQlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnJlZ2V4JTIyJTIwaWQlM0QlMjJWJTVEJTI0ZDEpJTJCUkFNJTI0MFg0JTYwKi1NJTNGaCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlNUVobS1ycGMuJTJCJTVDLihGZW5zdGVyKSU1Qy4uJTJCJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMlNUQVRFTUVOVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRlbGVncmFtJTIyJTIwaWQlM0QlMjIlMjRsSEVLaGZUJTdDUV9ERlprLXAtKU4lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJJTlNUQU5DRSUyMiUzRSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTE9HJTIyJTNFJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJTSUxFTlQlMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyUEFSU0VNT0RFJTIyJTNFZGVmYXVsdCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyTUVTU0FHRSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjIlN0RxQlR0VWE0SGklMjVvbCUzQlB5KjV4JTdEJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRXRleHQlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfam9pbiUyMiUyMGlkJTNEJTIyT0tybmJWJTJGd18lN0M2VSU2MGwlMjRWJTVEYSElMkYlMjIlM0UlM0NtdXRhdGlvbiUyMGl0ZW1zJTNEJTIyNCUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMmNkUVJjJTI1JTIzcGZrbVYlN0Q4JTdCTyU1QjElM0RFJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRUZlbnN0ZXIlQzMlQTRuZGVydW5nJTIwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm9uX3NvdXJjZSUyMiUyMGlkJTNEJTIyKGhjcDJrMiUyNVFRRG5QVy5IQXlpMSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0VkZXZpY2VOYW1lJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMlR+JTVCcSU1Qi5HeSUyQzZyVzFhJTI0UjghJTNGeiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UuJTIwTmV1ZXIlMjBadXN0YW5kJTNBJTIwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm9uX3NvdXJjZSUyMiUyMGlkJTNEJTIyLiUzQkklMjUlN0RwaER3JTI1LkhHLVk4T0lhcCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0VzdGF0ZS52YWwlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnhtbCUzRQ==
      

      funktioniert nicht - es wird nicht getriggert und ich erhalte kein Telegram.

      Unterstützt denn Blockly im Trigger überhaupt ein RegExp-Ausdruck? Und wenn nein, was in etwa könnte ich flasch gemacht haben...?

      Danke, -MN

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von paul53
      #2

      @Morgennebel sagte:

      Unterstützt denn Blockly im Trigger überhaupt ein RegExp-Ausdruck?

      Ja, aber nur für die ID, nicht für den Namen.

      @Morgennebel sagte in Blockly und triggern auf mehrere Devices mit RegExp:

      und finden sich in
      hm-rpc.0.<SERIAL>.1.STATE

      Versuche es mal so:

      on({id: new RegExp("^hm-rpc\.0\..+\.1\.STATE$"), change: "ne"}, function (obj) {
      

      EDIT: Falls mit diesem RegExp nicht nur die Fenster triggern, kann man noch nach dem Namen bzw. Kanalnamen filtern:

      Blockly_temp.JPG

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      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

      594

      Online

      32.7k

      Benutzer

      82.4k

      Themen

      1.3m

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

      • Du hast noch kein Konto? Registrieren

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