Skip to content
  • 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
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere)

NEWS

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

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

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

[Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere)

Geplant Angeheftet Gesperrt Verschoben JavaScript
javascript
50 Beiträge 19 Kommentatoren 12.5k Aufrufe 40 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.
  • crunchipC crunchip

    @Mic
    Hatte V 0.2 bis jetzt laufen, nun wollt ich mal umstellen audf die neue Version, da ich zum einen festgestellt habe, das Lichter zwar geschaltet werden, aber der state der Lampe sich nicht ändert oder nur verzögert.

    jedenfalls bekomme ich die aktuelle nicht zum laufen,
    folgender Fehler zeigt es mir im script

    10:09:09.186	error	javascript.0 (32472) script.js.common.BWM-Lichtsteuerung: script.js.common.BWM-Lichtsteuerung:58
    10:09:09.187	error	javascript.0 (32472) at main (script.js.common.BWM-Lichtsteuerung:58:29)
    10:09:09.187	error	javascript.0 (32472) at script.js.common.BWM-Lichtsteuerung:54:1
    10:10:46.309	error	javascript.0 (32472) script.js.common.BWM-Lichtsteuerung: script.js.common.BWM-Lichtsteuerung:58
    10:10:46.311	error	javascript.0 (32472) at main (script.js.common.BWM-Lichtsteuerung:58:29)
    10:10:46.311	error	javascript.0 (32472) at script.js.common.BWM-Lichtsteuerung:54:1
    

    Logausgabe

    javascript.0	2020-03-05 10:10:46.311	error	(32472) at Script.runInContext (vm.js:133:20)
    javascript.0	2020-03-05 10:10:46.311	error	(32472) at script.js.common.BWM-Lichtsteuerung:54:1
    javascript.0	2020-03-05 10:10:46.311	error	(32472) at main (script.js.common.BWM-Lichtsteuerung:58:29)
    javascript.0	2020-03-05 10:10:46.311	error	(32472) TypeError: Cannot read property '9' of undefined
    javascript.0	2020-03-05 10:10:46.310	error	(32472) ^
    javascript.0	2020-03-05 10:10:46.310	error	(32472) on({id: MOTIONDEV[i][9], change: 'ne'}, function(obj) {
    javascript.0	2020-03-05 10:10:46.309	error	(32472) script.js.common.BWM-Lichtsteuerung: script.js.common.BWM-Lichtsteuerung:58
    

    Edit: Fehler gefunden...MotionDEV hatte die Nummerierung nicht gestimmt...und nicht darauf geachtet, da in deinem script die Reihenfolge
    [0]
    [2]
    [3].....eingetragen ist

    was aber auffällt, das die Log-Ausgabe...const INFO = true nicht funktioniert

    MicM Offline
    MicM Offline
    Mic
    Developer
    schrieb am zuletzt editiert von
    #15

    @crunchip sagte in [Vorlage] Bewegungsmelder Xiaomi Aqara: Geräte/Lichter steuern:

    Edit: Fehler gefunden...MotionDEV hatte die Nummerierung nicht gestimmt...und nicht darauf geachtet, da in deinem script die Reihenfolge
    [0]
    [2]
    [3].....eingetragen ist

    Danke für dein Feedback.
    Die Einstellungen sind auch "suboptimal" gelöst, ich werde das wohl bald verbessern. Auch: beliebig viele Zeiten setzbar, etc.

    was aber auffällt, das die Log-Ausgabe...const INFO = true nicht funktioniert

    Schaue ich mir ebenso an.

    1 Antwort Letzte Antwort
    1
    • MicM Offline
      MicM Offline
      Mic
      Developer
      schrieb am zuletzt editiert von
      #16

      Neue Script-Version 2.0

      Ich habe das Script im Grunde fast neu geschrieben und einige neue Features / Einstellungen hinzugefügt.
      Aus der Doku:

      Auszug aus den Features:

      1. Beliebig viele Bewegungsmelder einbinden. Pro Bewegungsmelder/Bereich können Geräte/Lichter bei Bewegung eingeschaltet und wieder ausgeschaltet werden, sobald x Sekunden keine Bewegung mehr.
      2. Mehrere Bewegungsmelder pro Raum/Bereich (z.B. Flur) möglich.
      3. Beliebig viele Zeiträume zum Schalten einstellbar (z.B. nur bestimmte Wochentage, Uhrzeiten, Astro, etc.).
      4. Helligkeit (Lux) als Trigger - es wird optional nur eingeschaltet, wenn Helligkeit unter einem vorgegeben Wert ist, damit z.B. bei genügend Helligkeit nicht eingeschaltet wird.
      5. Optionale Verzögerung zum wieder einschalten: In manchen Fällen will man ggf. mit dem Bewegungsmelder nur einmalig einschalten. Da kann man für bestimmte Bewegungsmelder einstellen, dass x Sekunden (z.B. 10 Minuten = 600s) nicht mehr neu ausgelöst wird.
      6. Prüfung auf Anwesenheit (oder andere Datenpunkte): Wenn im Script konfigurierte Datenpunkte mit einem bestimmten Wert übereinstimmen, wird nicht geschaltet. Hilfreich, um z.B. nicht zu schalten, wenn keiner anwesend ist, oder etwa ein Fenster offen ist, etc.

      Ein paar Hinweise:

      • Zum Umstieg von Vorversionen des Scripts bitte die Script-Konfiguration komplett neu einstellen. Diese 10 Minuten sind es wert ☺
      • Es können auch Bewegungsmelder anderer Hersteller hinzugefügt werden, ich konnte das aber mangels Hardware nicht testen. Siehe im Script in den Einstellungen unter ADAPTER_STATES
      • Pro Bereich (z.B. "Flur") können auch mehrere Bewegungsmelder eingebunden werden. Bitte testet das aber noch, ob es gut funktioniert.
      • Die optionale Überwachung der Anwesenheit (also optional nur bei Anwesenheit schalten) ist jetzt unter "neverState_x" einstellbar, z.B. {state:'0_userdata.0.Anwesenheit.Status.anyonePresent', val:false}. Siehe im Script für Erklärung und Beispiele.

      Installation und Einrichtung:

      Link: Github: Bewegungsmelder-Script (für Xiaomi und andere)

      crunchipC sigi234S 2 Antworten Letzte Antwort
      2
      • MicM Mic

        Neue Script-Version 2.0

        Ich habe das Script im Grunde fast neu geschrieben und einige neue Features / Einstellungen hinzugefügt.
        Aus der Doku:

        Auszug aus den Features:

        1. Beliebig viele Bewegungsmelder einbinden. Pro Bewegungsmelder/Bereich können Geräte/Lichter bei Bewegung eingeschaltet und wieder ausgeschaltet werden, sobald x Sekunden keine Bewegung mehr.
        2. Mehrere Bewegungsmelder pro Raum/Bereich (z.B. Flur) möglich.
        3. Beliebig viele Zeiträume zum Schalten einstellbar (z.B. nur bestimmte Wochentage, Uhrzeiten, Astro, etc.).
        4. Helligkeit (Lux) als Trigger - es wird optional nur eingeschaltet, wenn Helligkeit unter einem vorgegeben Wert ist, damit z.B. bei genügend Helligkeit nicht eingeschaltet wird.
        5. Optionale Verzögerung zum wieder einschalten: In manchen Fällen will man ggf. mit dem Bewegungsmelder nur einmalig einschalten. Da kann man für bestimmte Bewegungsmelder einstellen, dass x Sekunden (z.B. 10 Minuten = 600s) nicht mehr neu ausgelöst wird.
        6. Prüfung auf Anwesenheit (oder andere Datenpunkte): Wenn im Script konfigurierte Datenpunkte mit einem bestimmten Wert übereinstimmen, wird nicht geschaltet. Hilfreich, um z.B. nicht zu schalten, wenn keiner anwesend ist, oder etwa ein Fenster offen ist, etc.

        Ein paar Hinweise:

        • Zum Umstieg von Vorversionen des Scripts bitte die Script-Konfiguration komplett neu einstellen. Diese 10 Minuten sind es wert ☺
        • Es können auch Bewegungsmelder anderer Hersteller hinzugefügt werden, ich konnte das aber mangels Hardware nicht testen. Siehe im Script in den Einstellungen unter ADAPTER_STATES
        • Pro Bereich (z.B. "Flur") können auch mehrere Bewegungsmelder eingebunden werden. Bitte testet das aber noch, ob es gut funktioniert.
        • Die optionale Überwachung der Anwesenheit (also optional nur bei Anwesenheit schalten) ist jetzt unter "neverState_x" einstellbar, z.B. {state:'0_userdata.0.Anwesenheit.Status.anyonePresent', val:false}. Siehe im Script für Erklärung und Beispiele.

        Installation und Einrichtung:

        Link: Github: Bewegungsmelder-Script (für Xiaomi und andere)

        crunchipC Abwesend
        crunchipC Abwesend
        crunchip
        Forum Testing Most Active
        schrieb am zuletzt editiert von
        #17

        @Mic das klingt sehr vielversprechend👍
        die 10 min nehm ich doch gerne in Kauf, allerdings kann ich nicht alle neuen Funktionen testen.

        umgestiegen von Proxmox auf Unraid

        1 Antwort Letzte Antwort
        0
        • MicM Mic

          Neue Script-Version 2.0

          Ich habe das Script im Grunde fast neu geschrieben und einige neue Features / Einstellungen hinzugefügt.
          Aus der Doku:

          Auszug aus den Features:

          1. Beliebig viele Bewegungsmelder einbinden. Pro Bewegungsmelder/Bereich können Geräte/Lichter bei Bewegung eingeschaltet und wieder ausgeschaltet werden, sobald x Sekunden keine Bewegung mehr.
          2. Mehrere Bewegungsmelder pro Raum/Bereich (z.B. Flur) möglich.
          3. Beliebig viele Zeiträume zum Schalten einstellbar (z.B. nur bestimmte Wochentage, Uhrzeiten, Astro, etc.).
          4. Helligkeit (Lux) als Trigger - es wird optional nur eingeschaltet, wenn Helligkeit unter einem vorgegeben Wert ist, damit z.B. bei genügend Helligkeit nicht eingeschaltet wird.
          5. Optionale Verzögerung zum wieder einschalten: In manchen Fällen will man ggf. mit dem Bewegungsmelder nur einmalig einschalten. Da kann man für bestimmte Bewegungsmelder einstellen, dass x Sekunden (z.B. 10 Minuten = 600s) nicht mehr neu ausgelöst wird.
          6. Prüfung auf Anwesenheit (oder andere Datenpunkte): Wenn im Script konfigurierte Datenpunkte mit einem bestimmten Wert übereinstimmen, wird nicht geschaltet. Hilfreich, um z.B. nicht zu schalten, wenn keiner anwesend ist, oder etwa ein Fenster offen ist, etc.

          Ein paar Hinweise:

          • Zum Umstieg von Vorversionen des Scripts bitte die Script-Konfiguration komplett neu einstellen. Diese 10 Minuten sind es wert ☺
          • Es können auch Bewegungsmelder anderer Hersteller hinzugefügt werden, ich konnte das aber mangels Hardware nicht testen. Siehe im Script in den Einstellungen unter ADAPTER_STATES
          • Pro Bereich (z.B. "Flur") können auch mehrere Bewegungsmelder eingebunden werden. Bitte testet das aber noch, ob es gut funktioniert.
          • Die optionale Überwachung der Anwesenheit (also optional nur bei Anwesenheit schalten) ist jetzt unter "neverState_x" einstellbar, z.B. {state:'0_userdata.0.Anwesenheit.Status.anyonePresent', val:false}. Siehe im Script für Erklärung und Beispiele.

          Installation und Einrichtung:

          Link: Github: Bewegungsmelder-Script (für Xiaomi und andere)

          sigi234S Online
          sigi234S Online
          sigi234
          Forum Testing Most Active
          schrieb am zuletzt editiert von sigi234
          #18

          @Mic

          Irgendwo habe ich einen Fehler?

          /////////////////////
          const MOTION_SENSORS = [
            {
              // Beliebiger Name (für Log-Ausgabe). Bitte individuell vergeben.
              name:                   'Vorraum',
          
              // Haupt-Datenpunkt des Bewegungsmelders, z.B. "mihome.0.devices.sensor_motion_aq2_1234567abcde" oder "zigbee.0.00123456789415"
              // Es werden auch mehrere Sensoren unterstützt, d.h. etwa 3 Bewegungsmelder im Flur.
              sensorState:            'hm-rpc.1.00091A49A082FC.1.MOTION',
          //    sensorState:            ['mihome.0.devices.sensor_motion_aq2_XXXXXXXXXXX', 'zigbee.0.XXXXXXXXXXXXX', 'zigbee.0.YYYYYYYYYYYYYYYYYYYYY'],
          
              // Hier beliebig viele Schaltzeitpunkte hinzufügen (period_1, period_2, period_3, usw.)
              //  - "start" und "end": Erforderlich. Es wird geprüft, ob start/end innerhalb aktueller Uhrzeit ist, wenn Bewegungsmelder auslöst.
              //                       Astro-Zeitangaben sind erlaubt, also etwa 'sunrise' oder mit einem Offset wie {astro: 'sunrise', offset: -30}
              //                       Details zu start/end und Astro-Zeitangaben: https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#comparetime
              // - "days":             OPTIONAL: Wenn weggelassen, wird jeden Tag geschaltet (Montag-Sonntag). 
              //                       Montag = 1, Dienstag = 2, ... Sonntag = 7. 
              //                       Mehrere Tage mit Komma trennen, z.B. '1, 3, 5' für Montag/Mittwoch/Freitag.
              //                       Periodische Angaben wie '2-4' für Dienstag/Mittwoch/Donnerstag sind auch möglich.
              //                       Ebenso Kombination einzelner Tage und Periode möglich, z.B. '2-4, 7' für Dienstag/Mittwoch/Donnerstag und Sonntag.
              // - "sec":              OPTIONAL: Nach wie vielen Sekunden soll wieder ausgeschalten werden? Falls weggelassen oder 0, dann wird nicht ausgeschaltet.
              // - "lux"               OPTIONAL: Ab wieviel Lux soll NICHT eingeschaltet werden? Falls weggelassen oder größer 9999, dann wird unababhängig von den gemessenen Lux immer eingeschaltet.
              // - "luxAlways"         OPTIONAL: Wir gehen davon aus, dass Lampen geschaltet werden. Ist eine Lampe an, wird ein größerer Lux-Wert vom Sensor gemessen, daher macht die Prüfung auf Lux bei  
              //                                 bereits eingeschalteter Lampe auf erneute Bewegung und Lux-Abfrage keinen Sinn mehr. Daher wird durch dieses Script bei Bewegung
              //                                 -- während das Gerät (die Lampe) an ist -- die Lux-Erkennung hier deaktiviert. Zum dauerhaften aktivieren auf "true" setzen, damit wird immer auf Lux geprüft, 
              //                                 auch wenn das Gerät an ist.
              period_1:               {start:'00:10', end:'23:59',    sec:60,   luxAlways:false},
          
              // Hier den Datenpunkt des Gerätes angeben, das geschaltet werden soll bei Bewegung an und wieder aus.
              // Falls als String gesetzt, z.B. 'javascript.0.Licht.Schlafzimmer.Switch', muss Datenpunkt muss von Typ "Boolean" (true/false) sein.
              //
              // Es sind noch deutlich mehr Optionen möglich, hierzu muss als Objekt gesetzt werden: {on:{state:'fullybrowser.0.X_X_X_X.Commands.screenOn', cmd:true}, off:{state:'fullybrowser.X_X_X_X.Commands.screenOff', cmd: true}, checkOnOffStatusState:'fullybrowser.X_X_X_X.Info.isScreenOn'}
              // Dadurch ist folgendes möglich:
              // 1. Individuellen State für An/Aus setzen, Beispiel: {on:{state:'javascript.0.Wohnzimmer.Licht.Szene', cmd:'Entspannen'}, off:{state:'shelly.0.XXXXXXXXXX.Relay0.Switch', cmd: false}, checkOnOffStatusState:'shelly.0.XXXXXXXXXX.Relay0.Switch'}
              // 2. Ausschalten deaktivieren (es wird also nur eingeschaltet): Einfach den Teil "off:{state:'fullybrowser.X_X_X_X.Commands.screenOff', cmd: true}," rauslöschen.
              // 3. Individuellen State zur Erkennung, ob Gerät an oder aus ist setzen: checkOnOffStatusState:'fullybrowser.X_X_X_X.Info.isScreenOn'. Dies ist notwenig, wenn "on:{state" nicht Boolean (true/false) ist.
              //target:                 {on:{state:'hue.0.R_Schlafzimmer.on', cmd:true}, off:{state:'hue.0.R_Schlafzimmer.on', cmd: false}, checkOnOffStatusState:'hue.0.R_Schlafzimmer.on'},
              target:                 'hm-rpc.0.OEQ0473764.1.STATE',
          
              // Optional: In manchen Fällen will man ggf. mit dem Bewegungsmelder nur einmalig einschalten. Dann soll der Bewegungsmelder x Sekunden (z.B. 10 Minuten = 600s) nicht mehr neu auslösen.
              //           Dazu hier den Wert in Sekunden entsprechend setzen. Durch weglassen oder wait:0 wird das ignoriert. 
              wait:                0,
          
              // Optional: Nicht schalten: Wenn einer der folgenden Datenpunkte mit dem Wert übereinstimmt, wird nicht geschaltet.
              //           Hilfreich, um z.B. nicht zu schalten, wenn keiner anwesend ist, oder etwa ein Fenster offen ist, etc.
              //           Es können beliebig viele States hinzugefügt werden (neverState_1, neverState_2, neverState_3 usw.)
              //neverState_1:           {state:'0_userdata.0.Anwesenheit.Status.anyonePresent', val:false},
            }, 
          
          ];
          
          
          /*******************************************************************************
           * Optionale weitere Einstellungen
           ******************************************************************************/
          
          // Die Datenpunkte der einzelnen Adapter (mihome, zigbee, etc.) unterscheiden sich, daher definieren wir diese hier.
          // Es können weitere Adapter hinzugefügt werden.
          // - Erster Teil (z.B. "mihome"): Hauptdatenpunkt ohne Instanz. Also bei mihome.0 ist das einfach nur "mihome".
          // - stateMotion: Der Datenpunkt, der eine neue Bewegung erfasst und dann auf true setzt. z.B. [mihome.0.devices.sensor_motion_aq2_123456789abc.state]
          //                Hier dann nur den Teil nach dem letzten Punkt nehmen, also hier "state"
          // - stateLux:    Der Datenpunkt, der die Lux (Helligkeit) anzeigt. Kann man weglassen, dann wird Lux nicht berücksichtigt.
          //                Z.B. [mihome.0.devices.sensor_motion_aq2_123456789abc.lux]. -> Nur den Teil nach dem letzten Punkt nehmen, also hier "lux"
          const ADAPTER_STATES = {
                  //mihome: {stateMotion: 'state',     stateLux: 'lux'},
                  hm-rpc: {stateMotion: 'MOTION',     
                  //zigbee: {stateMotion: 'occupancy', stateLux: 'illuminance'},
          };
          
          
          // Logeinträge: Infos zeigen (wenn eingeschaltet oder ausgeschaltet wurde)
          const INFO = true;
          
          // Logeinträge: Zusätzliche Einträge anzeigen zur Fehlerbehebung. Auf "false" setzen, wenn alles funktioniert.
          const DEBUG = false;
          

          21:09:43.387 error javascript.0 (14980) script.js.Sigi.Mic_Bewegungsmelder compile failed: at script.js.Sigi.Mic_Bewegungsmelder:94 (66 Log gekürzt)

          Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
          Immer Daten sichern!

          MicM 1 Antwort Letzte Antwort
          0
          • sigi234S sigi234

            @Mic

            Irgendwo habe ich einen Fehler?

            /////////////////////
            const MOTION_SENSORS = [
              {
                // Beliebiger Name (für Log-Ausgabe). Bitte individuell vergeben.
                name:                   'Vorraum',
            
                // Haupt-Datenpunkt des Bewegungsmelders, z.B. "mihome.0.devices.sensor_motion_aq2_1234567abcde" oder "zigbee.0.00123456789415"
                // Es werden auch mehrere Sensoren unterstützt, d.h. etwa 3 Bewegungsmelder im Flur.
                sensorState:            'hm-rpc.1.00091A49A082FC.1.MOTION',
            //    sensorState:            ['mihome.0.devices.sensor_motion_aq2_XXXXXXXXXXX', 'zigbee.0.XXXXXXXXXXXXX', 'zigbee.0.YYYYYYYYYYYYYYYYYYYYY'],
            
                // Hier beliebig viele Schaltzeitpunkte hinzufügen (period_1, period_2, period_3, usw.)
                //  - "start" und "end": Erforderlich. Es wird geprüft, ob start/end innerhalb aktueller Uhrzeit ist, wenn Bewegungsmelder auslöst.
                //                       Astro-Zeitangaben sind erlaubt, also etwa 'sunrise' oder mit einem Offset wie {astro: 'sunrise', offset: -30}
                //                       Details zu start/end und Astro-Zeitangaben: https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#comparetime
                // - "days":             OPTIONAL: Wenn weggelassen, wird jeden Tag geschaltet (Montag-Sonntag). 
                //                       Montag = 1, Dienstag = 2, ... Sonntag = 7. 
                //                       Mehrere Tage mit Komma trennen, z.B. '1, 3, 5' für Montag/Mittwoch/Freitag.
                //                       Periodische Angaben wie '2-4' für Dienstag/Mittwoch/Donnerstag sind auch möglich.
                //                       Ebenso Kombination einzelner Tage und Periode möglich, z.B. '2-4, 7' für Dienstag/Mittwoch/Donnerstag und Sonntag.
                // - "sec":              OPTIONAL: Nach wie vielen Sekunden soll wieder ausgeschalten werden? Falls weggelassen oder 0, dann wird nicht ausgeschaltet.
                // - "lux"               OPTIONAL: Ab wieviel Lux soll NICHT eingeschaltet werden? Falls weggelassen oder größer 9999, dann wird unababhängig von den gemessenen Lux immer eingeschaltet.
                // - "luxAlways"         OPTIONAL: Wir gehen davon aus, dass Lampen geschaltet werden. Ist eine Lampe an, wird ein größerer Lux-Wert vom Sensor gemessen, daher macht die Prüfung auf Lux bei  
                //                                 bereits eingeschalteter Lampe auf erneute Bewegung und Lux-Abfrage keinen Sinn mehr. Daher wird durch dieses Script bei Bewegung
                //                                 -- während das Gerät (die Lampe) an ist -- die Lux-Erkennung hier deaktiviert. Zum dauerhaften aktivieren auf "true" setzen, damit wird immer auf Lux geprüft, 
                //                                 auch wenn das Gerät an ist.
                period_1:               {start:'00:10', end:'23:59',    sec:60,   luxAlways:false},
            
                // Hier den Datenpunkt des Gerätes angeben, das geschaltet werden soll bei Bewegung an und wieder aus.
                // Falls als String gesetzt, z.B. 'javascript.0.Licht.Schlafzimmer.Switch', muss Datenpunkt muss von Typ "Boolean" (true/false) sein.
                //
                // Es sind noch deutlich mehr Optionen möglich, hierzu muss als Objekt gesetzt werden: {on:{state:'fullybrowser.0.X_X_X_X.Commands.screenOn', cmd:true}, off:{state:'fullybrowser.X_X_X_X.Commands.screenOff', cmd: true}, checkOnOffStatusState:'fullybrowser.X_X_X_X.Info.isScreenOn'}
                // Dadurch ist folgendes möglich:
                // 1. Individuellen State für An/Aus setzen, Beispiel: {on:{state:'javascript.0.Wohnzimmer.Licht.Szene', cmd:'Entspannen'}, off:{state:'shelly.0.XXXXXXXXXX.Relay0.Switch', cmd: false}, checkOnOffStatusState:'shelly.0.XXXXXXXXXX.Relay0.Switch'}
                // 2. Ausschalten deaktivieren (es wird also nur eingeschaltet): Einfach den Teil "off:{state:'fullybrowser.X_X_X_X.Commands.screenOff', cmd: true}," rauslöschen.
                // 3. Individuellen State zur Erkennung, ob Gerät an oder aus ist setzen: checkOnOffStatusState:'fullybrowser.X_X_X_X.Info.isScreenOn'. Dies ist notwenig, wenn "on:{state" nicht Boolean (true/false) ist.
                //target:                 {on:{state:'hue.0.R_Schlafzimmer.on', cmd:true}, off:{state:'hue.0.R_Schlafzimmer.on', cmd: false}, checkOnOffStatusState:'hue.0.R_Schlafzimmer.on'},
                target:                 'hm-rpc.0.OEQ0473764.1.STATE',
            
                // Optional: In manchen Fällen will man ggf. mit dem Bewegungsmelder nur einmalig einschalten. Dann soll der Bewegungsmelder x Sekunden (z.B. 10 Minuten = 600s) nicht mehr neu auslösen.
                //           Dazu hier den Wert in Sekunden entsprechend setzen. Durch weglassen oder wait:0 wird das ignoriert. 
                wait:                0,
            
                // Optional: Nicht schalten: Wenn einer der folgenden Datenpunkte mit dem Wert übereinstimmt, wird nicht geschaltet.
                //           Hilfreich, um z.B. nicht zu schalten, wenn keiner anwesend ist, oder etwa ein Fenster offen ist, etc.
                //           Es können beliebig viele States hinzugefügt werden (neverState_1, neverState_2, neverState_3 usw.)
                //neverState_1:           {state:'0_userdata.0.Anwesenheit.Status.anyonePresent', val:false},
              }, 
            
            ];
            
            
            /*******************************************************************************
             * Optionale weitere Einstellungen
             ******************************************************************************/
            
            // Die Datenpunkte der einzelnen Adapter (mihome, zigbee, etc.) unterscheiden sich, daher definieren wir diese hier.
            // Es können weitere Adapter hinzugefügt werden.
            // - Erster Teil (z.B. "mihome"): Hauptdatenpunkt ohne Instanz. Also bei mihome.0 ist das einfach nur "mihome".
            // - stateMotion: Der Datenpunkt, der eine neue Bewegung erfasst und dann auf true setzt. z.B. [mihome.0.devices.sensor_motion_aq2_123456789abc.state]
            //                Hier dann nur den Teil nach dem letzten Punkt nehmen, also hier "state"
            // - stateLux:    Der Datenpunkt, der die Lux (Helligkeit) anzeigt. Kann man weglassen, dann wird Lux nicht berücksichtigt.
            //                Z.B. [mihome.0.devices.sensor_motion_aq2_123456789abc.lux]. -> Nur den Teil nach dem letzten Punkt nehmen, also hier "lux"
            const ADAPTER_STATES = {
                    //mihome: {stateMotion: 'state',     stateLux: 'lux'},
                    hm-rpc: {stateMotion: 'MOTION',     
                    //zigbee: {stateMotion: 'occupancy', stateLux: 'illuminance'},
            };
            
            
            // Logeinträge: Infos zeigen (wenn eingeschaltet oder ausgeschaltet wurde)
            const INFO = true;
            
            // Logeinträge: Zusätzliche Einträge anzeigen zur Fehlerbehebung. Auf "false" setzen, wenn alles funktioniert.
            const DEBUG = false;
            

            21:09:43.387 error javascript.0 (14980) script.js.Sigi.Mic_Bewegungsmelder compile failed: at script.js.Sigi.Mic_Bewegungsmelder:94 (66 Log gekürzt)

            MicM Offline
            MicM Offline
            Mic
            Developer
            schrieb am zuletzt editiert von
            #19

            @sigi234 sagte in [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere):

            Irgendwo habe ich einen Fehler?

            Dein JavaScript-Adapter sollte rot unterkringelt anzeigen, wenn ein potenzieller Fehler vorliegt:
            s_1.png

            Mach hier mal:

            const ADAPTER_STATES = {
                    //mihome: {stateMotion: 'state',     stateLux: 'lux'},
                    'hm-rpc': {stateMotion: 'MOTION'},     
                    //zigbee: {stateMotion: 'occupancy', stateLux: 'illuminance'},
            };
            

            Nimm außerdem hier das Ende wieder weg, also von sensorState: 'hm-rpc.1.00091A49A082FC.1.MOTION' auf sensorState: 'hm-rpc.1.00091A49A082FC.1'. Denn ".MOTION" fügt dann das Script entsprechend hinzu.

            sigi234S 1 Antwort Letzte Antwort
            0
            • MicM Mic

              @sigi234 sagte in [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere):

              Irgendwo habe ich einen Fehler?

              Dein JavaScript-Adapter sollte rot unterkringelt anzeigen, wenn ein potenzieller Fehler vorliegt:
              s_1.png

              Mach hier mal:

              const ADAPTER_STATES = {
                      //mihome: {stateMotion: 'state',     stateLux: 'lux'},
                      'hm-rpc': {stateMotion: 'MOTION'},     
                      //zigbee: {stateMotion: 'occupancy', stateLux: 'illuminance'},
              };
              

              Nimm außerdem hier das Ende wieder weg, also von sensorState: 'hm-rpc.1.00091A49A082FC.1.MOTION' auf sensorState: 'hm-rpc.1.00091A49A082FC.1'. Denn ".MOTION" fügt dann das Script entsprechend hinzu.

              sigi234S Online
              sigi234S Online
              sigi234
              Forum Testing Most Active
              schrieb am zuletzt editiert von sigi234
              #20

              @Mic 👍

              21:29:49.350	info	javascript.0 (14980) Stop script script.js.Sigi.Mic_Bewegungsmelder
              21:29:49.356	info	javascript.0 (14980) Start javascript script.js.Sigi.Mic_Bewegungsmelder
              21:29:49.358	info	javascript.0 (14980) script.js.Sigi.Mic_Bewegungsmelder: *** Bewegungsmelder-Script gestartet *** Folgende Bewegungsmelder werden überwacht: Vorraum
              21:29:49.358	info	javascript.0 (14980) script.js.Sigi.Mic_Bewegungsmelder: registered 1 subscription and 0 schedules
              

              Ok, wenn ich eine dauernde Überwachung will ohne Lux stimmt das so :

              period_1:               {start:'00:01', end:'23:59',    sec:60,   luxAlways:false},
              

              Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
              Immer Daten sichern!

              MicM 1 Antwort Letzte Antwort
              0
              • sigi234S sigi234

                @Mic 👍

                21:29:49.350	info	javascript.0 (14980) Stop script script.js.Sigi.Mic_Bewegungsmelder
                21:29:49.356	info	javascript.0 (14980) Start javascript script.js.Sigi.Mic_Bewegungsmelder
                21:29:49.358	info	javascript.0 (14980) script.js.Sigi.Mic_Bewegungsmelder: *** Bewegungsmelder-Script gestartet *** Folgende Bewegungsmelder werden überwacht: Vorraum
                21:29:49.358	info	javascript.0 (14980) script.js.Sigi.Mic_Bewegungsmelder: registered 1 subscription and 0 schedules
                

                Ok, wenn ich eine dauernde Überwachung will ohne Lux stimmt das so :

                period_1:               {start:'00:01', end:'23:59',    sec:60,   luxAlways:false},
                
                MicM Offline
                MicM Offline
                Mic
                Developer
                schrieb am zuletzt editiert von
                #21

                @sigi234 sagte in [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere):

                Ok, wenn ich eine dauernde Überwachung will ohne Lux stimmt das so :

                Kannst auch einfach so schreiben und das Lux-Zeug weglassen:

                period_1: {start:'00:01', end:'23:59', sec:60},
                
                sigi234S 1 Antwort Letzte Antwort
                0
                • MicM Mic

                  @sigi234 sagte in [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere):

                  Ok, wenn ich eine dauernde Überwachung will ohne Lux stimmt das so :

                  Kannst auch einfach so schreiben und das Lux-Zeug weglassen:

                  period_1: {start:'00:01', end:'23:59', sec:60},
                  
                  sigi234S Online
                  sigi234S Online
                  sigi234
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von sigi234
                  #22

                  @Mic sagte in [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere):

                  @sigi234 sagte in [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere):

                  Ok, geht auch eine Ausgabe in einen DP für :

                  BW ausgelöst im Raum am/um von Skript Name

                  Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                  Immer Daten sichern!

                  MicM 1 Antwort Letzte Antwort
                  0
                  • sigi234S sigi234

                    @Mic sagte in [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere):

                    @sigi234 sagte in [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere):

                    Ok, geht auch eine Ausgabe in einen DP für :

                    BW ausgelöst im Raum am/um von Skript Name

                    MicM Offline
                    MicM Offline
                    Mic
                    Developer
                    schrieb am zuletzt editiert von
                    #23

                    Ach ja, um alle Zeiten (0-24 Uhr) abzudecken, schreibst du:

                    period_1: {start:'00:00', end:'24:00', sec:60},
                    

                    @sigi234 sagte in [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere):

                    @Mic sagte in [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere):
                    Ok, geht auch eine Ausgabe in einen DP für :
                    BW ausgelöst im Raum am/um von Skript Name

                    Wird ja schon ins Log geschrieben, Beispiel:

                    script.js.Licht.Bewegungsmelder-Script: Bewegungsmelder Flur: Ausgelöst und alle Kriterien erfüllt, daher wird eingeschaltet.
                    

                    Rest kannst du bei Bedarf im Log-Script filtern.

                    sigi234S 1 Antwort Letzte Antwort
                    0
                    • MicM Mic

                      Ach ja, um alle Zeiten (0-24 Uhr) abzudecken, schreibst du:

                      period_1: {start:'00:00', end:'24:00', sec:60},
                      

                      @sigi234 sagte in [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere):

                      @Mic sagte in [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere):
                      Ok, geht auch eine Ausgabe in einen DP für :
                      BW ausgelöst im Raum am/um von Skript Name

                      Wird ja schon ins Log geschrieben, Beispiel:

                      script.js.Licht.Bewegungsmelder-Script: Bewegungsmelder Flur: Ausgelöst und alle Kriterien erfüllt, daher wird eingeschaltet.
                      

                      Rest kannst du bei Bedarf im Log-Script filtern.

                      sigi234S Online
                      sigi234S Online
                      sigi234
                      Forum Testing Most Active
                      schrieb am zuletzt editiert von
                      #24

                      @Mic sagte in [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere):

                      Rest kannst du bei Bedarf im Log-Script filtern.

                      Ja, bin ich später auch drauf gekommen. 😀

                      Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                      Immer Daten sichern!

                      MicM 1 Antwort Letzte Antwort
                      0
                      • sigi234S sigi234

                        @Mic sagte in [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere):

                        Rest kannst du bei Bedarf im Log-Script filtern.

                        Ja, bin ich später auch drauf gekommen. 😀

                        MicM Offline
                        MicM Offline
                        Mic
                        Developer
                        schrieb am zuletzt editiert von
                        #25

                        @sigi234
                        Funktioniert denn dein Test mit dem Homematic-Bewegungsmelder? Wäre interessant, da ich nur Xiaomi zum testen hab

                        sigi234S 1 Antwort Letzte Antwort
                        0
                        • MicM Mic

                          @sigi234
                          Funktioniert denn dein Test mit dem Homematic-Bewegungsmelder? Wäre interessant, da ich nur Xiaomi zum testen hab

                          sigi234S Online
                          sigi234S Online
                          sigi234
                          Forum Testing Most Active
                          schrieb am zuletzt editiert von sigi234
                          #26

                          @Mic sagte in [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere):

                          @sigi234
                          Funktioniert denn dein Test mit dem Homematic-Bewegungsmelder? Wäre interessant, da ich nur Xiaomi zum testen hab

                          Warte teste erst, habe ein Programm dafür in der CCU3 . Muss ich mal deaktivieren.
                          Interessant wäre ja eine Art Universalskript, wo ich auch Licht, Steckdosen usw. einbinden könnte. Sollte damit gehen.
                          Da kann ich mir die CCU Programme schenken.

                          Test: 👍

                          javascript.0	2020-03-15 22:09:36.588	info	(14980) script.js.Sigi.Mic_Bewegungsmelder: Bewegungsmelder Vorraum: Ausgelöst und alle Kriterien erfüllt, daher wird eingeschaltet.
                          
                          javascript.0	2020-03-15 22:10:36.589	info	(14980) script.js.Sigi.Mic_Bewegungsmelder: Bewegungsmelder Vorraum: Timer (60s) abgelaufen und alle Kriterien erfüllt, daher wird ausgeschaltet.
                          

                          Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                          Immer Daten sichern!

                          MicM 1 Antwort Letzte Antwort
                          0
                          • sigi234S sigi234

                            @Mic sagte in [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere):

                            @sigi234
                            Funktioniert denn dein Test mit dem Homematic-Bewegungsmelder? Wäre interessant, da ich nur Xiaomi zum testen hab

                            Warte teste erst, habe ein Programm dafür in der CCU3 . Muss ich mal deaktivieren.
                            Interessant wäre ja eine Art Universalskript, wo ich auch Licht, Steckdosen usw. einbinden könnte. Sollte damit gehen.
                            Da kann ich mir die CCU Programme schenken.

                            Test: 👍

                            javascript.0	2020-03-15 22:09:36.588	info	(14980) script.js.Sigi.Mic_Bewegungsmelder: Bewegungsmelder Vorraum: Ausgelöst und alle Kriterien erfüllt, daher wird eingeschaltet.
                            
                            javascript.0	2020-03-15 22:10:36.589	info	(14980) script.js.Sigi.Mic_Bewegungsmelder: Bewegungsmelder Vorraum: Timer (60s) abgelaufen und alle Kriterien erfüllt, daher wird ausgeschaltet.
                            
                            MicM Offline
                            MicM Offline
                            Mic
                            Developer
                            schrieb am zuletzt editiert von
                            #27

                            👍

                            @sigi234 sagte in [Vorlage] Bewegungsmelder-Script (Xiaomi Aqara und andere):

                            Interessant wäre ja eine Art Universalskript, wo ich auch Licht, Steckdosen usw. einbinden könnte. Sollte damit gehen.

                            Das überlege ich auch, da das Gerüst hierfür jetzt vollständig vorhanden ist.

                            1 Antwort Letzte Antwort
                            0
                            • crunchipC Abwesend
                              crunchipC Abwesend
                              crunchip
                              Forum Testing Most Active
                              schrieb am zuletzt editiert von
                              #28

                              funktioniert prima, 👏 da kommen bestimmt ein paar neue Ideen auf😊
                              Test mit 2 BWM steht allerdings noch aus

                              umgestiegen von Proxmox auf Unraid

                              1 Antwort Letzte Antwort
                              1
                              • T Offline
                                T Offline
                                Tirador
                                schrieb am zuletzt editiert von Tirador
                                #29

                                Hallo Mic,

                                ein tolles Skript von Dir! 🙂

                                Ich nutze deconz. Dort ist es so, dass es mehrere Datenpunkte gibt für einen Bewegungsmelder (Hue Philipps).

                                Das führt dazu, dass die Eigenschaft Bewegung "presence" und "lux" in verschiedenen Ordnern liegen:

                                2020-03-24 20_21_08-objects - ioBroker.png

                                So wie ich das Skript nun interpretiere werden aktuell alle Eigenschaften unter einem Ordner erwartet oder habe ich dies falsch interpretiert?

                                Was mir auch aufgefallen ist: Erwägst du es noch auch die Helligkeit der zu steuernden Lampen mit vorgeben zu können.
                                Bei mir ist es so, dass ich Nachts im Flur eher gedimmtes Licht möchte 😉

                                mein Vorschlag für die Implementierung im Skript wäre es die Bewegungsmelder einzeln mit Datenpunkten für presence und lux als Array vorgeben zu können.

                                Beispiel:

                                const BWM = {
                                        flur: {sensorState: 'deconz.0.Sensors.36.presence', stateLux: 'deconz.0.Sensors.40.lux' },
                                       bad: {sensorState: 'deconz.0.Sensors.45.presence', stateLux: 'deconz.0.Sensors.47.lux' },
                                };
                                
                                1 Antwort Letzte Antwort
                                0
                                • tugsiT Offline
                                  tugsiT Offline
                                  tugsi
                                  schrieb am zuletzt editiert von
                                  #30

                                  N´Abend,
                                  erstmal Danke für das Script.
                                  Nur irgendwie will das bei mir nicht so richtig klappen.

                                  Habe mein Aqara BWM eingebunden und der soll mir ein Datenpunkt setzen, dies passiert auch, aber wenn ich unter Objekte schaue, wird der Datenpunkt hinten mit einem roten "true" gesetzt, nicht mit einem grünen.

                                  Das ist mein Datenpunkt:

                                  {
                                    "common": {
                                      "type": "boolean",
                                      "read": true,
                                      "write": true,
                                      "name": "Flurbeleuchtung",
                                      "role": "switch",
                                      "unit": "",
                                      "smartName": {
                                        "de": "Flurbeleuchtung",
                                        "smartType": "SWITCH"
                                      }
                                    },
                                    "native": {
                                      "name": "Flurbeleuchtung",
                                      "role": "switch",
                                      "type": "boolean",
                                      "unit": "",
                                      "read": true,
                                      "write": true,
                                      "smartName": {
                                        "de": "Flurbeleuchtung",
                                        "smartType": "SWITCH"
                                      }
                                    },
                                    "type": "state",
                                    "from": "system.adapter.javascript.0",
                                    "user": "system.user.admin",
                                    "ts": 1579636502610,
                                    "_id": "javascript.0.S7.s7-0.Flurbeleuchtung",
                                    "acl": {
                                      "object": 1636,
                                      "state": 1636,
                                      "owner": "system.user.admin",
                                      "ownerGroup": "system.group.administrator"
                                    }
                                  }
                                  

                                  Klicke ich unter Objekte den manuell an auf true, funzt alles wie gehabt.
                                  Der Datenpunkt wird auch von meiner Alexa angesteuert, auf Zuruf, da klappt es auch.

                                  Jemand eine Erklärung?
                                  Gruß Thomas

                                  Master ioBroker in Proxmox als LXC auf 1. Tiny-Lenovo, Proxmox-VM als Slave auf 2. Tinyi-Lenovo mit Zigbee und Monitor zur Visualisierung, Hauptautomatisierung über S7 auf Beckhoff CX, dazu noch Shelly, Homematic...

                                  1 Antwort Letzte Antwort
                                  0
                                  • Michael SauerM Offline
                                    Michael SauerM Offline
                                    Michael Sauer
                                    schrieb am zuletzt editiert von
                                    #31

                                    Hallo Mic,

                                    tolles Script. Praktisch wäre auch mehrere Targets gleichzeitig zu schalten.

                                    Mfg

                                    1 Antwort Letzte Antwort
                                    0
                                    • MicM Offline
                                      MicM Offline
                                      Mic
                                      Developer
                                      schrieb am zuletzt editiert von
                                      #32

                                      Hi zusammen,
                                      danke für eure Rückmeldungen. Ich entwickle gerade 2 neue ioBroker-Adapter, daher komme ich momentan nicht dazu, das Script zu erweitern.
                                      Aber ich plane einen Adapter hierfür, also für die Steuerung von Bereichen (z.B. Flur, Wohnzimmer, xyz, im Verbund mit Bewegungsmeldern und Schalter/Lichter). Aber erst mal muss ich die beiden jetzt zu entwickelnden Adapter fertigstellen 😉

                                      1 Antwort Letzte Antwort
                                      2
                                      • W Offline
                                        W Offline
                                        wannabe
                                        schrieb am zuletzt editiert von wannabe
                                        #33

                                        Sehr schönes, praktisches Projekt. Das Reinarbeiten in die Config hat ein bisschen gedauert, aber wenns dann einmal läuft ...
                                        Will ich nicht mehr missen, schön zentral alles zusammen, nicht x verschiedene Skripte.
                                        Ein Backup davon kommt auf jeden Fall in meinen Ordner für schlechte Zeiten.
                                        Danke fürs veröffentlichen.

                                        1 Antwort Letzte Antwort
                                        0
                                        • ? Offline
                                          ? Offline
                                          Ein ehemaliger Benutzer
                                          schrieb am zuletzt editiert von
                                          #34

                                          Einen Dank an den Entwickler des Scripts. Funktioniert soweit sehr gut und hat bei mir eine Menge anderer Blocklys abgelöst 🙂
                                          Ein kleines Problem habe ich dann doch noch gefunden. Mein Hausflur hat zwei BW plus einen Türkontakt der die Beleuchtung einschaltet wenn man ins Haus kommt. Aber erst wenn es Dunkel ist bzw die entsprechenden LUX unterschritten sind. Und genau das bekomme ich mit deinem Script nicht umgesetzt. Ich habe bei mir den deconz Adapter im Einsatz. Als Sensoren habe ich zum größten Teil Xiaomi Geräte.

                                          const ADAPTER_STATES = {
                                          mihome: {stateMotion: 'state', stateLux: 'lux'},
                                          zigbee: {stateMotion: 'occupancy', stateLux: 'illuminance'},
                                          deconz: {stateMotion: 'presence', stateMotion: 'open'},
                                          sonoff: {stateLux: 'BH1750_Illuminance'},
                                          };

                                          Das war mein Versuch den Türkontakt mit einzubinden. Der schaltet zwar das Licht ein wenn ich die Tür öffne aber auch wenn es taghell ist. Die eingetragenen LUX Werte werden ignoriert. Die zwei BM hingegen funktionieren wie gewünscht.

                                          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

                                          523

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

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

                                          • Du hast noch kein Konto? Registrieren

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