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. [Projekt] Alarmanlage mit mehreren Alarmstufen

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

[Projekt] Alarmanlage mit mehreren Alarmstufen

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
138 Beiträge 32 Kommentatoren 36.3k Aufrufe 21 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.
  • ? Offline
    ? Offline
    Ein ehemaliger Benutzer
    schrieb am zuletzt editiert von
    #7

    Demnächst sollen folgende Funktionen hinzukommen:

    • Verzögerte Aktivierung

    • Stiller Modus

    • Automatische Aktivierung beim Verlassen

    • Pineingabe zur Deaktivierung

    • Prüfung aller Sensoren beim Aktivieren

    Hat noch jemand Ideen zur Funktionserweiterung die hilfreich sind?

    1 Antwort Letzte Antwort
    0
    • UhulaU Offline
      UhulaU Offline
      Uhula
      schrieb am zuletzt editiert von
      #8

      "Normale" Alarmanlagen unterscheiden weniger nach Sensoren, sondern eher nach Meldelinien, in denen dann die einzelnen Sensoren gruppiert werden können. Der Sinn dahinter ist, dass sich über die Meldelinien dann leicht verschiedene "Scharf" Zustände realisieren lassen.

      Bsp:

      Meldelinie 1 : Alle Sensoren zur Außenhautabsicherung (Fenster, Türen, …)

      Meldelinie 2 : Alle Sensoren zur Innenabsicherung Keller / EG (Bewegungsmelder)

      Meldelinie 3 : Alle Sensoren zur Innenabsicherung OG (Bewegungsmelder)

      Es sollten mehrere Scharf-Zustände wählbar sein, z.B. "Deaktiviert", "Unscharf", "Abwesend laut", "Abwesend still", "Anwesend1", "Anwesend2 (Nacht)". Selbst im "Unscharf" Zustand ist die Alarmanlage noch aktiv und überwcht durch Ping zB Geräte um deren Ausfälle via Push/Mail melden zu können.

      Je Scharf-Zustand muss festgelegt werden können:

      • welche Meldelinien gehören dazu (Abwesend : Meldelinie 1 + 2 + 3, Anwesend1 : Meldelinie 1, Anwesend2: Meldelinie 1 + 2)

      • welche Alarmgeber werden getriggert, inkl. Alarmverzögerung (Bsp: 30 sec interner Alarm Schlafzimmer, dann 30 sec interner Alarm, dann extern)

      • Scharf/Unscharf Verzögerung

      • ...

      Je Meldelinie muss festgelegt werden können:

      • welche Scharf-Zustände sie verhindern, wenn sie eine aktive Meldung haben (Fenster geöffnet).

      • ob sie direkt oder verzögert (in [sec]) auslösen sollen

      • …

      Je Sensor muss festgelegt werden können:

      • zu welcher Meldelinie er gehört

      • welche Scharf-Zustände er verhindert, wenn er eine aktive Meldung hat (Fenster geöffnet); oder :"wie Meldelinie"

      • ob er direkt oder verzögert (in [sec]) auslösen sollen; oder :"wie Meldelinie"

      • wieviele "Meldungsgründe" vorliegen müssen, bis eine aktive Meldung erfolgt (Bsp: Bewegungsmelder 2 innerhalb von 20 sek); ist wichtig um die Fehlalarme zu minimieren

      • …

      Sind alles nur Vorschläge, die meine 20 Jahre alte Hardware-Alarmanlage (Konfiguration über DIP-Schalter) konnte und die so auch in Benutzung waren. Aber, wenn man dann die eierlegende Wollmilchsau erschaffen hat, muss man sehr darauf achten, dass die Konfiguration simpel und logisch verständlich bleibt, sonst werden Dritte diese nicht nutzen wollen/können.

      Viel Spaß und Erfolg! ;-)

      Uhula - Leise und Weise
      Ex: ioBroker on Gigabyte NUC Proxmox

      1 Antwort Letzte Antwort
      0
      • T Offline
        T Offline
        tempestas
        schrieb am zuletzt editiert von
        #9

        @nisio:

        Demnächst sollen folgende Funktionen hinzukommen:

        • Verzögerte Aktivierung

        • Stiller Modus

        • Automatische Aktivierung beim Verlassen

        • Pineingabe zur Deaktivierung

        • Prüfung aller Sensoren beim Aktivieren

        Hat noch jemand Ideen zur Funktionserweiterung die hilfreich sind? `

        Alarmlog.

        <size="85">ioBroker | 21 Adapter | Ubuntu Server | intel NUC | Homematic CCU2 | Hue | Osram Lightify| Sonos | 2x Instar Cam | Samsung Tab A 2016 im Holzrahmen| 3x Echo dot | 1x Echo | Neato Botvac D5</size>

        1 Antwort Letzte Antwort
        0
        • DutchmanD Offline
          DutchmanD Offline
          Dutchman
          Developer Most Active Administrators
          schrieb am zuletzt editiert von
          #10

          @tempestas:

          Alarmlog. `

          was meinst du damit ? wen man de alarm status per history aufnimmt kan man diesen ueber eine tabelle wiedergeben

          beispiel:

          979_history_log.jpg

          1 Antwort Letzte Antwort
          0
          • T Offline
            T Offline
            tempestas
            schrieb am zuletzt editiert von
            #11

            @Dutchman:

            @tempestas:

            Alarmlog. `

            was meinst du damit ? wen man de alarm status per history aufnimmt kan man diesen ueber eine tabelle wiedergeben `

            wollte die Liste nur vervollständigen.

            Meinen tue ich aber so etwas:

            http://forum.iobroker.net/download/file … &mode=view

            in diesem Beispiel hatte ich noch keine Sortierung drin

            Edit: ich sehe aber gerade, das war / ist schon enthalten mit "Letzter Sensor".

            <size="85">ioBroker | 21 Adapter | Ubuntu Server | intel NUC | Homematic CCU2 | Hue | Osram Lightify| Sonos | 2x Instar Cam | Samsung Tab A 2016 im Holzrahmen| 3x Echo dot | 1x Echo | Neato Botvac D5</size>

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

              @Uhula:

              "Normale" Alarmanlagen unterscheiden weniger nach Sensoren, sondern eher nach Meldelinien, in denen dann die einzelnen Sensoren gruppiert werden können. Der Sinn dahinter ist, dass sich über die Meldelinien dann leicht verschiedene "Scharf" Zustände realisieren lassen.

              Bsp:

              Meldelinie 1 : Alle Sensoren zur Außenhautabsicherung (Fenster, Türen, …)

              Meldelinie 2 : Alle Sensoren zur Innenabsicherung Keller / EG (Bewegungsmelder)

              Meldelinie 3 : Alle Sensoren zur Innenabsicherung OG (Bewegungsmelder)

              Es sollten mehrere Scharf-Zustände wählbar sein, z.B. "Deaktiviert", "Unscharf", "Abwesend laut", "Abwesend still", "Anwesend1", "Anwesend2 (Nacht)". Selbst im "Unscharf" Zustand ist die Alarmanlage noch aktiv und überwcht durch Ping zB Geräte um deren Ausfälle via Push/Mail melden zu können.

              Je Scharf-Zustand muss festgelegt werden können:

              • welche Meldelinien gehören dazu (Abwesend : Meldelinie 1 + 2 + 3, Anwesend1 : Meldelinie 1, Anwesend2: Meldelinie 1 + 2)

              • welche Alarmgeber werden getriggert, inkl. Alarmverzögerung (Bsp: 30 sec interner Alarm Schlafzimmer, dann 30 sec interner Alarm, dann extern)

              • Scharf/Unscharf Verzögerung

              • ...

              Je Meldelinie muss festgelegt werden können:

              • welche Scharf-Zustände sie verhindern, wenn sie eine aktive Meldung haben (Fenster geöffnet).

              • ob sie direkt oder verzögert (in [sec]) auslösen sollen

              • …

              Je Sensor muss festgelegt werden können:

              • zu welcher Meldelinie er gehört

              • welche Scharf-Zustände er verhindert, wenn er eine aktive Meldung hat (Fenster geöffnet); oder :"wie Meldelinie"

              • ob er direkt oder verzögert (in [sec]) auslösen sollen; oder :"wie Meldelinie"

              • wieviele "Meldungsgründe" vorliegen müssen, bis eine aktive Meldung erfolgt (Bsp: Bewegungsmelder 2 innerhalb von 20 sek); ist wichtig um die Fehlalarme zu minimieren

              • …

              Sind alles nur Vorschläge, die meine 20 Jahre alte Hardware-Alarmanlage (Konfiguration über DIP-Schalter) konnte und die so auch in Benutzung waren. Aber, wenn man dann die eierlegende Wollmilchsau erschaffen hat, muss man sehr darauf achten, dass die Konfiguration simpel und logisch verständlich bleibt, sonst werden Dritte diese nicht nutzen wollen/können.

              Viel Spaß und Erfolg! ;-) `

              Vielen Dank für die vielen Ideen, da bin ich erstmal etwas beschäftigt. freu

              Die Übersichtlichkeit finde ich auch sehr wichtig. Daher frage ich mich ob es nicht ab einem gewissen Punkt sinnvoller ist lieber mehrere Varianten/Instanzen der Alarmanlage anzulegen anstatt alles in eine Alarmanlage reinzukonfigurieren.

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

                Vielen Dank nochmals für die vielen Ideen @Uhula

                Ich möchte insbesondere die Einfachheit im Vordergrund behalten.

                Da die Kombination aus Meldelinie, Scharf-Zustand, Sensor, Verzögerung schnell unkontrollierbar wird habe ich mal ausprobiert diese Kombinationen als Profile abgebildet.

                Mit den Profilen lassen sich Meldelinien und Alarmkanäle aktivieren, bzw mit einer Verzögerung versehen.

                Ein erster Vorgeschmack schon mal vorab.

                Ich habe noch nicht ausgiebig getestet und auch noch die Widgets nicht angepasst, daher sind bestimmt noch Fehler drin :-)

                Meint ihr die Nutzung der Profil ist ein guter Einsatz um Einfachheit und gleichzeitig Flexibilität abzubilden.

                ! ````
                /*

                multi channel burglar alarm - v 0.01

                ! features:

                • six different alarm channels
                • delayed alarm action
                • delayed sensor check
                • alarmlog
                • define settings as profil

                ! changelog:
                29.09.2017 initial version
                01.10.2017 restructered with revealing module pattern
                03.10.2017 profiles added for alarm channels and sensor groups

                */

                ! var ALARM = (function () {

                //Settings
                var instance = 'javascript.0.';
                var maxLogEntries = 5;
                
                //Internal states
                var enable = false;
                var state = 0;
                var alarm = false;
                var alarmDelay;
                var alarmTimer = {};
                var alarmLog = [];
                var sensorDelay;
                var sensorTimer = {};
                
                //Sensors
                var selFacade = $('state[state.id=javascript.0.*](functions=facade)');
                selFacade.on(function(obj) {
                    _checkSensor(obj,facade);
                });
                var selMotion = $('state[state.id=javascript.0.*](functions=motion)');
                selMotion.on(function(obj) {
                    _checkSensor(obj,motion);
                });
                
                function _checkSensor(obj, group){
                    if(sensorDelay.group === 0){
                        _check(obj);
                    }else if(sensorDelay.group > 0){
                        setTimeout(_check,(sensorDelay.group*1000),obj);
                    }
                    log('checkSensor group:'+group);
                }
                
                function _loadSettings(profil){
                    switch(profil) {
                        case 'silent':
                            sensorDelay = {motion:0,facade:0};
                            alarmDelay = {silent:0};
                            break;
                        case 'night':
                            sensorDelay = {door:0};
                            alarmDelay = {silent:0,intern:60,extern:60};
                            break;
                        case 'full':
                            sensorDelay = {motion:0,facade:0};
                            alarmDelay = {silent:0,sound:30,strobe:30,intern:60,extern:60,mail:120};
                            break;
                        default:
                            sensorDelay = {motion:0,facade:0};
                            alarmDelay = {silent:0,sound:30,strobe:30,intern:60,extern:60,mail:120};
                    }
                }
                function _enable(profil){
                    enable = true;
                    state = 1;
                    _resetAlarm();
                    _loadSettings(profil);
                    log('enable');
                }
                function _disable(){
                    enable = false;
                    state = 0;
                    _resetAlarm();
                    _resetAlarmTimer();
                    log('disable');
                }
                function _stop(){
                    state = 1;
                    _resetAlarm();
                    log('stop');
                }
                function _resetAlarmTimer(){
                    for (var elem in alarmTimer) {
                        clearTimeout(alarmTimer[elem]);
                        alarmTimer[elem] = null;
                    }
                    log('resetAlarmTimer');
                }
                function _resetAlarm(){
                    alarm = false;
                    setState(instance+'alarm.out.state', state, true);
                    setState(instance+'alarm.out.log', '', true);
                    setState(instance+'alarm.out.alarm', false, true);
                    setState(instance+'alarm.out.alarm_silent', false, true);
                    setState(instance+'alarm.out.alarm_sound', false, true);
                    setState(instance+'alarm.out.alarm_strobe', false, true);
                    setState(instance+'alarm.out.alarm_intern', false, true);
                    setState(instance+'alarm.out.alarm_extern', false, true);
                    setState(instance+'alarm.out.alarm_mail', false, true);
                    _resetAlarmTimer();
                    log('resetAlarm state:'+state);
                }
                function _startAlarm(elem){
                    alarm = true;
                    setState(instance+'alarm.out.alarm_'+elem, true, true);
                    setState(instance+'alarm.out.state', 3, true);
                    log('startAlarm elem:'+elem);
                }
                function _check(obj){
                    if(obj.state.val && enable){
                        for (var elem in alarmDelay) {
                            if(alarmDelay[elem] === 0){
                                _startAlarm(elem);
                            } else if(!alarmTimer[elem]){
                                    alarmTimer[elem] = setTimeout(_startAlarm,(alarmDelay[elem]*1000),elem);
                            }
                            log('startAlarms elem'+elem+':'+alarmDelay[elem]);
                        }
                        _logSensor(obj);
                        log('alarm triggered by sensor '+obj.common.name);
                    }
                }
                function _logSensor(obj){
                    var time = (new Date()).toLocaleDateString()+' '+(new Date()).toLocaleTimeString();
                    var sensor = obj.common.name;
                    var room = getObject(obj.id, 'rooms').enumNames[0];
                    alarmLog.push(time+' '+sensor+' '+room);
                    alarmLog.splice(maxLogEntries);
                    setState(instance+'alarm.out.log', alarmLog.join('
                

                '), true);
                setState(instance+'alarm.out.last_sensor', time+' '+sensor+' '+room, true);
                }

                _loadSettings();
                
                return {
                    enable: _enable,
                    disable: _disable,
                    stop: _stop
                };
                

                ! })();
                ! on({id:'javascript.0.alarm.in.enable', change:'any'}, function(obj){
                ALARM.enable(obj.state.val);
                log('on: in.enable val:'+obj.state.val);
                });
                on({id:'javascript.0.alarm.in.disable', change:'any'}, function(obj){
                ALARM.disable();
                log('on: in.disable');
                });
                on({id:'javascript.0.alarm.in.stop', change:'any'}, function(obj){
                ALARM.stop();
                log('on: in.stop');
                });

                
                Angepasste States:
                
                >! ````
                //Input
                createState('alarm.in.enable', {
                    read: true, 
                    write: true, 
                    desc: "Is used to arm the system, but cannot be used to disarm it.", 
                    type: "string"
                });
                createState('alarm.in.disable', {
                    read: true, 
                    write: true, 
                    desc: "Turns off the activated outputs and disarms the alarm system.", 
                    type: "boolean"
                });
                createState('alarm.in.stop', {
                    read: true, 
                    write: true, 
                    desc: "Can be used to stop the alarm.", 
                    type: "boolean"
                });
                >! //Output
                createState('alarm.out.state', 0, {
                    read: true, 
                    write: false, 
                    desc: "Returns the current state of the system,", 
                    type: "number", 
                    min:  '0',
                    max:  '3',
                    states: '0:Disabled;1:Armed with motion sensors;2:Alarm triggered',
                    def: 0
                });
                createState('alarm.out.alarm', {
                    read: true, 
                    write: false, 
                    desc: "Alarm", 
                    type: "boolean"
                });
                createState('alarm.out.alarm_silent', {
                    read: true, 
                    write: false, 
                    desc: "Silent alarm", 
                    type: "boolean"
                });
                createState('alarm.out.alarm_sound', {
                    read: true, 
                    write: false, 
                    desc: "Sound alarm", 
                    type: "boolean"
                });
                createState('alarm.out.alarm_strobe', {
                    read: true, 
                    write: false, 
                    desc: "Strobe alarm", 
                    type: "boolean"
                });
                createState('alarm.out.alarm_intern', {
                    read: true, 
                    write: false, 
                    desc: "Internal alarm", 
                    type: "boolean"
                });
                createState('alarm.out.alarm_extern', {
                    read: true, 
                    write: false, 
                    desc: "External alarm", 
                    type: "boolean"
                });
                createState('alarm.out.alarm_mail', {
                    read: true, 
                    write: false, 
                    desc: "Mail alarm", 
                    type: "boolean"
                });
                createState('alarm.out.log', {
                    read: true, 
                    write: false, 
                    desc: "List with last sensors.", 
                    type: "string"
                });
                createState('alarm.out.last_sensor', {
                    read: true, 
                    write: false, 
                    desc: "Tells you which sensor has been activated. The output gives the room, name, date and time.", 
                    type: "string"
                });
                
                1 Antwort Letzte Antwort
                0
                • ? Offline
                  ? Offline
                  Ein ehemaliger Benutzer
                  schrieb am zuletzt editiert von
                  #14

                  Die neue Version mit Profilen und ein paar Umbauten hab ich im ersten Post hinterlegt.

                  Ich hab auch die Anzeige noch etwas angepasst Aufgrund der Profile.

                  Ebenfalls ist am Ende des Skripts eine Minimallösung wie ich bei mir die Automatische Aktivierung/Deaktivierung anhand von Anwesenheit gelöst habe über das Profil 'auto'.

                  Viel Spaß beim ausprobieren

                  1 Antwort Letzte Antwort
                  0
                  • A Offline
                    A Offline
                    andy6d
                    schrieb am zuletzt editiert von
                    #15

                    Hallo, bin gerade dabei das Script von nisio einzubinden.

                    Blöde Frage, wo und wie mache ich das? :shock:

                    Sorry fange gerade mit dem Thema an und komme einfach nicht darauf.

                    Habe es als eigenen Ordner unter Scripts am laufen aber da passiert rein gar nichts. Weiter fehlt mir der Bezug auf die "eigene" Anlage Melder usw. Vielleicht kann mir da jemand kurz auf die Sprünge helfen :roll:

                    Achso in Zeile 177 und 178 steht alram drin, sollte bestimmt alarm heißen.

                    1 Antwort Letzte Antwort
                    0
                    • B Offline
                      B Offline
                      Blackeye
                      schrieb am zuletzt editiert von
                      #16

                      Hi,

                      auch ich wäre um ein paar Tipps dankbar. Habe noch nie Dinge importiert.

                      Gesendet von iPhone mit Tapatalk Pro

                      1 Antwort Letzte Antwort
                      0
                      • B Offline
                        B Offline
                        Blackeye
                        schrieb am zuletzt editiert von
                        #17

                        Hi,

                        Kann mir sagen wie ich den Card View importieren kann? Mit den png Dateien weiß ich ach nicht wohin.

                        Und was muss ich noch machen wenn ich alles importiert habe? Profile kenne ich nicht, bin noch neu in IoBroker.

                        Danke

                        Lars

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

                          @andy6d:

                          Hallo, bin gerade dabei das Script von nisio einzubinden.

                          Blöde Frage, wo und wie mache ich das? :shock:

                          Sorry fange gerade mit dem Thema an und komme einfach nicht darauf.

                          Habe es als eigenen Ordner unter Scripts am laufen aber da passiert rein gar nichts. Weiter fehlt mir der Bezug auf die "eigene" Anlage Melder usw. Vielleicht kann mir da jemand kurz auf die Sprünge helfen :roll:

                          Achso in Zeile 177 und 178 steht alram drin, sollte bestimmt alarm heißen. `

                          Zeile #177 und #178 habe ich angepasst, Danke für den Hinweis.

                          Benötigt wird der Javascript Adapter "ioBroker.javascript".

                          Ich habe zwei Skripte unter dem Ordner Common angelegt.

                          Das erste beinhaltet die States und das zweite Skript die eigentliche Logik. Die Skripte sind auch im Beitrag #1 enthalten.

                          Beide Skripte müssen aktiviert sein (grünes Symbol).

                          Eigene Melder lassen sich beliebig hinzufügen.

                          Dazu muss nur in Zeile #35+ ein neuer Selektor angelegt werden.

                          Wenn dazu eine neue Sensorgruppe (motion, facade, neu1, neu2) benutzt werden soll, dann muss diese noch hinzugefügt werden in der Funktionen _loadSettings und dort einem der Profile als sensorDelay zugeordnet. Ansonsten laufen die neuen Melder ins Leere.

                          Hilft das weiter?

                          Gerne weitere Fragen stellen…

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

                            @Blackeye:

                            Hi,

                            Kann mir sagen wie ich den Card View importieren kann? Mit den png Dateien weiß ich ach nicht wohin.

                            Und was muss ich noch machen wenn ich alles importiert habe? Profile kenne ich nicht, bin noch neu in IoBroker.

                            Danke

                            Lars `

                            Die Visualisierung basiert komplett auf dem Material Design von Uhula.

                            Dort sind auch alle Infos zu Cards zu finden.

                            Importieren kann man die Card View im Vis Editor unter dem Tab "Views" gibt es dazu einen Button "Import View"

                            Die png Dateien liegen bei mir im root des Vis projects, z.B. /vis.0/main/

                            Man kann dazu den File Manager im Vis Editor verwenden.

                            Profile sind innerhalb des Skripts mit der Logik.

                            Damit lassen sich Melder gruppieren und zu verschiedenen Alarmlevel kombinieren, z.B.:

                            • Nachts Aussenhaut überwachen und stillen Alarm auslösen

                            • Tagsüber nur Sabotagealarm aktivieren

                            • Voller Alarm bei Abwesenheit

                            -…

                            1 Antwort Letzte Antwort
                            0
                            • B Offline
                              B Offline
                              Blackeye
                              schrieb am zuletzt editiert von
                              #20

                              Hi,

                              Danke für die wirklich schon mal große Hilfe. :idea:

                              Aber wie klappt das mit den Gruppen? Geht das automatisch nach starten des Scripts? Bei mir werden nämlich nur die Schalter angelegt.

                              @nisio:

                              @Blackeye:

                              Hi,

                              Kann mir sagen wie ich den Card View importieren kann? Mit den png Dateien weiß ich ach nicht wohin.

                              Und was muss ich noch machen wenn ich alles importiert habe? Profile kenne ich nicht, bin noch neu in IoBroker.

                              Danke

                              Lars `

                              Die Visualisierung basiert komplett auf dem Material Design von Uhula.

                              Dort sind auch alle Infos zu Cards zu finden.

                              Importieren kann man die Card View im Vis Editor unter dem Tab "Views" gibt es dazu einen Button "Import View"

                              Die png Dateien liegen bei mir im root des Vis projects, z.B. /vis.0/main/

                              Man kann dazu den File Manager im Vis Editor verwenden.

                              Profile sind innerhalb des Skripts mit der Logik.

                              Damit lassen sich Melder gruppieren und zu verschiedenen Alarmlevel kombinieren, z.B.:

                              • Nachts Aussenhaut überwachen und stillen Alarm auslösen

                              • Tagsüber nur Sabotagealarm aktivieren

                              • Voller Alarm bei Abwesenheit

                              -… `

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

                                Hallo @Blackeye,

                                Hast du das Skript mit den States aktiviert? Dann sollten alle States angelegt worden sein.

                                Hast du das Skript mit der Logik aktiviert? Dann kannst du über den View im Vis oder direkt über den State javascript.0.alarm.in.enable die Alarmanlage aktivieren. Dazu wird der Wert des States als Profilname weitergegeben an die Funktion _loadSettings.

                                Die Sensorgruppen werden nur durch den Selektor definiert.

                                Ich nutze dazu sehr gerne die enum Funktion.

                                Alle Sensoren für die Gruppe Fassade gebe ich als Funktion genau diese enum.

                                Man kann so z.B. alle Türsensoren und Fensterkontakte im Reiter "Objekte" die Funktion Fassade zuweisen und anschliessend diese als Selektor nutzen.

                                var selFacade = $('statestate.id=javascript.0.*');

                                selFacade.on(function(obj) {

                                _checkSensor(obj,'facade');

                                });

                                Auf diese Weise kann man beliebig viele verschiedene Meldergruppen aus seinen Sensoren aufbauen.

                                1 Antwort Letzte Antwort
                                0
                                • S Offline
                                  S Offline
                                  sckibo
                                  schrieb am zuletzt editiert von
                                  #22

                                  Hallo zusammen,

                                  ich habe jetzt versucht, bei mir das Projekt laufenzulassen. Die beiden Scripte laufen, die Widgets habe ich in Vis importiert.

                                  Wenn ich die Seite aufrufe, erhalte ich allerdings nur eine leere Seite, auf der unten Kästchen mit "Silent", "Night", "Full" und "Presence" stehen.

                                  Was könnte ich denn falschgemacht haben?

                                  Danke für die Info, das Projekt sieht nämlich genau nach dem aus, was ich suche …

                                  lg, sckibo
                                  4423_alarmanlage.png

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

                                    Hallo @sckibo,

                                    hast du das Material Design von Uhula eingebunden als CSS in deinem Projekt?

                                    1 Antwort Letzte Antwort
                                    0
                                    • S Offline
                                      S Offline
                                      sckibo
                                      schrieb am zuletzt editiert von
                                      #24

                                      @nisio:

                                      Hallo @sckibo,

                                      hast du das Material Design von Uhula eingebunden als CSS in deinem Projekt? `

                                      Das hatte ich tatsächlich vergessen - ich habe es jetzt eingefügt, aber ausser der Farbe der "Buttons" hat sich nichts geändert.

                                      Irgendetwas habe ich wohl falsch gemacht.

                                      Danke für die Hilfe,

                                      sckibo
                                      4423_alarm2.png

                                      1 Antwort Letzte Antwort
                                      0
                                      • C Offline
                                        C Offline
                                        ChrisX
                                        schrieb am zuletzt editiert von
                                        #25

                                        ich kenne das Alarmanlagen Modul von Fhem das arbeitet auch mit verschiedenen Alarmstufen Actor / Sensor.

                                        Gibt es deine Alarmanlage später auch irgendwie als Komplett Paket ? geht das in iobroker ? Sorry bin noch absoluter iobroker Neuling nach 6 Jahren FHEM.

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

                                          Hallo ChrisX,

                                          was meinst du mit Komplettpaket?

                                          Welche Features des Fhem Alarmpakets nutzt du?

                                          Ich bin noch am testen der Alarmanlage im Alltag um rauszufinden was ich an Features wirklich benötige.

                                          Für Ideen und Feedback bin ich immer dankbar

                                          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

                                          808

                                          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