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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. [Vorlage] Gartenbewässerung mit 6 Ventilen

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    818

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

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

[Vorlage] Gartenbewässerung mit 6 Ventilen

Scheduled Pinned Locked Moved Blockly
1.2k Posts 76 Posters 392.5k Views 88 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • K Kuddel

    @sigi234 ich meine ja. aber würde ich auf jeden fall morgen noch einmal testen

    meine aktuelle v2.6.8

    bewaesserung_v2.6.8.zip

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

    @Kuddel

    meine aktuelle v2.6.8

    ich habe Dir mal in Deine letzte 2.6.8 die Änderungen in der Datenpunkte_erstellen Funktion eingebaut (also auch den Teil mit dem löschen der nicht mehr benötigten Ventile und ändern der Namen)
    Hier der Inhalt der Funktion (also nicht das ganze Blockly)
    Schau es Dir einfach in Ruhe an wenn Du Zeit hast.

    /**
    * Create states under 0_userdata.0 or javascript.x
    * Current Version:     https://github.com/Mic-M/iobroker.createUserStates
    * Support:             https://forum.iobroker.net/topic/26839/
    * Autor:               Mic (ioBroker) | Mic-M (github)
    * Version:             1.1 (26 January 2020)
    * Example:             see https://github.com/Mic-M/iobroker.createUserStates#beispiel
    * -----------------------------------------------
    * PLEASE NOTE: Per https://github.com/ioBroker/ioBroker.javascript/issues/474, the used function setObject() 
    *              executes the callback PRIOR to completing the state creation. Therefore, we use a setTimeout and counter. 
    * -----------------------------------------------
    * @param {string} where          Where to create the state: '0_userdata.0' or 'javascript.x'.
    * @param {boolean} force         Force state creation (overwrite), if state is existing.
    * @param {array} statesToCreate  State(s) to create. single array or array of arrays
    * @param {object} [callback]     Optional: a callback function -- This provided function will be executed after all states are created.
    */
    
    
    
    
    function createUserStates(where, force, statesToCreate, callback = undefined) {
       
       const WARN = false; // Only for 0_userdata.0: Throws warning in log, if state is already existing and force=false. Default is false, so no warning in log, if state exists.
       const LOG_DEBUG = false; // To debug this function, set to true
       // Per issue #474 (https://github.com/ioBroker/ioBroker.javascript/issues/474), the used function setObject() executes the callback 
       // before the state is actual created. Therefore, we use a setTimeout and counter as a workaround.
       const DELAY = 50; // Delay in milliseconds (ms). Increase this to 100, if it is not working.
    
       // Validate "where"
       if (where.endsWith('.')) where = where.slice(0, -1); // Remove trailing dot
       if ( (where.match(/^((javascript\.([1-9][0-9]|[0-9]))$|0_userdata\.0$)/) == null) ) {
           log('This script does not support to create states under [' + where + ']', 'error');
           return;
       }
    
       // Prepare "statesToCreate" since we also allow a single state to create
       if(!Array.isArray(statesToCreate[0])) statesToCreate = [statesToCreate]; // wrap into array, if just one array and not inside an array
    
       // Add "where" to STATES_TO_CREATE
       for (let i = 0; i < statesToCreate.length; i++) {
           let lpPath = statesToCreate[i][0].replace(/\.*\./g, '.'); // replace all multiple dots like '..', '...' with a single '.'
           lpPath = lpPath.replace(/^((javascript\.([1-9][0-9]|[0-9])\.)|0_userdata\.0\.)/,'') // remove any javascript.x. / 0_userdata.0. from beginning
           lpPath = where + '.' + lpPath; // add where to beginning of string
           statesToCreate[i][0] = lpPath;
       }
    
       if (where != '0_userdata.0') {
           // Create States under javascript.x
           let numStates = statesToCreate.length;
           statesToCreate.forEach(function(loopParam) {
               if (LOG_DEBUG) log('[Debug] Now we are creating new state [' + loopParam[0] + ']');
               let loopInit = (loopParam[1]['def'] == undefined) ? null : loopParam[1]['def']; // mimic same behavior as createState if no init value is provided
               createState(loopParam[0], loopInit, force, loopParam[1], function() {
                   numStates--;
                   if (numStates === 0) {
                       if (LOG_DEBUG) log('[Debug] All states processed.');
                       if (typeof callback === 'function') { // execute if a function was provided to parameter callback
                           if (LOG_DEBUG) log('[Debug] Function to callback parameter was provided');
                           return callback();
                       } else {
                           return;
                       }
                   }
               });
           });
       } else {
           // Create States under 0_userdata.0
           let numStates = statesToCreate.length;
           let counter = -1;
           statesToCreate.forEach(function(loopParam) {
               counter += 1;
               if (LOG_DEBUG) log ('[Debug] Currently processing following state: [' + loopParam[0] + ']');
               if( ($(loopParam[0]).length > 0) && (existsState(loopParam[0])) ) { // Workaround due to https://github.com/ioBroker/ioBroker.javascript/issues/478
                   // State is existing.
                   if (WARN && !force) log('State [' + loopParam[0] + '] is already existing and will no longer be created.', 'warn');
                   if (!WARN && LOG_DEBUG) log('[Debug] State [' + loopParam[0] + '] is already existing. Option force (=overwrite) is set to [' + force + '].');
                   if(!force) {
                       // State exists and shall not be overwritten since force=false
                       // So, we do not proceed.
                       numStates--;
                       if (numStates === 0) {
                           if (LOG_DEBUG) log('[Debug] All states successfully processed!');
                           if (typeof callback === 'function') { // execute if a function was provided to parameter callback
                               if (LOG_DEBUG) log('[Debug] An optional callback function was provided, which we are going to execute now.');
                               return callback();
                           }
                       } else {
                           // We need to go out and continue with next element in loop.
                           return; // https://stackoverflow.com/questions/18452920/continue-in-cursor-foreach
                       }
                   } // if(!force)
               }
    
               // State is not existing or force = true, so we are continuing to create the state through setObject().
               let obj = {};
               obj.type = 'state';
               obj.native = {};
               obj.common = loopParam[1];
               setObject(loopParam[0], obj, function (err) {
                   if (err) {
                       log('Cannot write object for state [' + loopParam[0] + ']: ' + err);
                   } else {
                       if (LOG_DEBUG) log('[Debug] Now we are creating new state [' + loopParam[0] + ']')
                       let init = null;
                       if(loopParam[1].def === undefined) {
                           if(loopParam[1].type === 'number') init = 0;
                           if(loopParam[1].type === 'boolean') init = false;
                           if(loopParam[1].type === 'string') init = '';
                       } else {
                           init = loopParam[1].def;
                       }
                       setTimeout(function() {
                           setState(loopParam[0], init, true, function() {
                               if (LOG_DEBUG) log('[Debug] setState durchgeführt: ' + loopParam[0]);
                               numStates--;
                               if (numStates === 0) {
                                   if (LOG_DEBUG) log('[Debug] All states processed.');
                                   if (typeof callback === 'function') { // execute if a function was provided to parameter callback
                                       if (LOG_DEBUG) log('[Debug] Function to callback parameter was provided');
                                       return callback();
                                   }
                               }
                           });
                       }, DELAY + (20 * counter) );
                   }
               });
           });
       }
    }
    
    //log('--- Datenobjekte fuer die Bewaesserung werden angelegt ---')
    
    let vars = [
       //Bewässerung
       [basic_vars_pfad+'.bewaesserung_aktiv', {'name':'bewaesserung_aktiv','type':'boolean','read':true,'write':true,'role':'switch','def':false}],
       [basic_vars_pfad+'.bewaesserung_automatik', {'name':'bewaesserung_automatik','type':'boolean','read':true,'write':true,'role':'switch','def':false}],
       [basic_vars_pfad+'.bewaesserung_pause', {'name':'bewaesserung_pause','type':'boolean','read':true,'write':true,'role':'switch','def':false}],
      
       //Timer
       [basic_vars_pfad+'.lautzeit_gesamt_in_sek', {'name':'lautzeit_gesamt_in_sek','type':'number','read':true,'write':false,'role':'number','def':0,'unit':'Sekunden'}],
       [basic_vars_pfad+'.lautzeit_ende_uhrzeit', {'name':'lautzeit_ende_uhrzeit','type':'string','read':true,'write':false,'role':'string','def': ''}],
       [basic_vars_pfad+'.restlautzeit', {'name':'restlautzeit','type': 'mixed','read':true,'write':false,'role':'mixed','def':0}],
       [basic_vars_pfad+'.restlautzeit_in_sek', {'name':'restlautzeit_in_sek','type':'number','read':true,'write':false,'role':'number','def':0,'unit':'Sekunden'}],
       [basic_vars_pfad+'.gesamtfortschritt', {'name':'gesamtfortschritt','type':'number','read':true,'write':false,'role':'number','def':0,'unit':'%','min':0,'max':100}],
       [basic_vars_pfad+'.gesamtrest', {'name':'gesamtrest','type':'mixed','read':true,'write':false,'role':'mixed','def':100,'unit':'%','min':0,'max':100}],
       [basic_vars_pfad+'.letzter_durchgang', {'name':'letzter_durchgang','type':'string','read':true,'write':false,'role':'string','def': '00:00'}],
         
       //Schwellwerte
       [basic_vars_pfad+'.schwellwerte.schwellwert_check_aktiv', {'name':'schwellwert_check_aktiv','type':'boolean','read':true,'write':true,'role':'switch','def':true}],
       [basic_vars_pfad+'.schwellwerte.schwellwert_regen', {'name':'schwellwert_regen','type':'number','read':true,'write':true,'role':'number','def':0,'unit':'mm'}],
       [basic_vars_pfad+'.schwellwerte.schwellwert_temperatur', {'name':'schwellwert_temperatur','type':'number','read':true,'write':true,'role':'number','def':0,'unit':'°C'}],
       [basic_vars_pfad+'.schwellwerte.schwellwerte_ok', {'name':'schwellwerte_ok','type':'boolean','read':true,'write':false,'role':'switch','def':false}],
       [basic_vars_pfad+'.schwellwerte.schwellwerte_info_senden', {'name':'schwellwerte_info_senden','type':'boolean','read':true,'write':true,'role':'switch','def':false, 'descr':'Dieser DP wird ausgeloest, wenn die Automatik startet, die Schwellwerte aber ueberschritten wurden'}],
       [basic_vars_pfad+'.schwellwerte.gestern_regen', {'name':'gestern_regen','type':'number','read':true,'write':false,'role':'number','def':0,'unit':'mm'}],
       [basic_vars_pfad+'.schwellwerte.gestern_temp', {'name':'gestern_temp','type':'number','read':true,'write':false,'role':'number','def':0,'unit':'°C'}],
      
       //Ventile
       [basic_vars_pfad+'.ventile.anzahl_aktive_ventile', {'name':'anzahl_aktive_ventile','type':'number','read':true,'write':false,'role':'number','def':0,'min':0, 'max':6} ],
         
       //Zeitplan
       [basic_vars_pfad+'.zeitplan.cron_restart', {'name':'cron_restart','type': 'mixed','read':true,'write':false,'role':'mixed','def':0,'unit':'Uhr'}],
       [basic_vars_pfad+'.zeitplan.sonnenaufgang', {'name':'sonnenaufgang','type':'string','read':true,'write':false,'role':'string','def':'00:00','unit':'Uhr'}],
       [basic_vars_pfad+'.zeitplan.sonnenuntergang', {'name':'sonnenuntergang','type':'string','read':true,'write':false,'role':'string','def':'00:00','unit':'Uhr'}],
      
       //Morgens
       [basic_vars_pfad+'.zeitplan.morgens_aktiv', {'name':'morgens_aktiv','type':'boolean','read':true,'write':true,'role':'switch','def':false}],
       [basic_vars_pfad+'.zeitplan.morgens_uhrzeit_start', {'name':'morgens_uhrzeit_start','type':'string','read':true,'write':false,'role':'string','def':'00:00','unit':'Uhr'}],
       [basic_vars_pfad+'.zeitplan.morgens_uhrzeit_ende', {'name':'morgens_uhrzeit_ende','type':'string','read':true,'write':false,'role':'string','def':'00:00','unit':'Uhr'}],
       [basic_vars_pfad+'.zeitplan.morgens_verzoegerung_sonnenaufgang', {'name':'morgens_verzoegerung_sonnenaufgang','type': 'number','read':true,'write':true,'role':'number','def':0,'unit':'Minuten'}],
    
       //Abends
       [basic_vars_pfad+'.zeitplan.abends_aktiv', {'name':'abends_aktiv','type':'boolean','read':true,'write':true,'role':'switch','def':false}],
       [basic_vars_pfad+'.zeitplan.abends_uhrzeit_start', {'name':'abends_uhrzeit_start','type':'string','read':true,'write':false,'role':'string','def':'00:00','unit':'Uhr'}],
       [basic_vars_pfad+'.zeitplan.abends_uhrzeit_ende', {'name':'abends_uhrzeit_ende','type':'string','read':true,'write':false,'role':'string','def':'00:00','unit':'Uhr'}],
       [basic_vars_pfad+'.zeitplan.abends_verzoegerung_sonnenuntergang', {'name':'abends_verzoegerung_sonnenuntergang','type': 'number','read':true,'write':true,'role':'number','def':0,'unit':'Minuten'}],
    
       //Feste Startzeit 1
       [basic_vars_pfad+'.zeitplan.feste_startzeit_1_aktiv', {'name':'feste_startzeit_1_aktiv','type':'boolean','read':true,'write':true,'role':'switch','def':false}],
       [basic_vars_pfad+'.zeitplan.feste_startzeit_1_uhrzeit_start', {'name':'feste_startzeit_1_uhrzeit_start','type':'string','read':true,'write':true,'role':'string','def':'00:00','unit':'Uhr'}],
       [basic_vars_pfad+'.zeitplan.feste_startzeit_1_uhrzeit_ende', {'name':'feste_startzeit_1_uhrzeit_ende','type':'string','read':true,'write':false,'role':'string','def':'00:00','unit':'Uhr'}],
         
       //Feste Startzeit 2
       [basic_vars_pfad+'.zeitplan.feste_startzeit_2_aktiv', {'name':'feste_startzeit_2_aktiv','type':'boolean','read':true,'write':true,'role':'switch','def':false}],
       [basic_vars_pfad+'.zeitplan.feste_startzeit_2_uhrzeit_start', {'name':'feste_startzeit_2_uhrzeit_start','type':'string','read':true,'write':true,'role':'string','def':'00:00','unit':'Uhr'}],
       [basic_vars_pfad+'.zeitplan.feste_startzeit_2_uhrzeit_ende', {'name':'feste_startzeit_2_uhrzeit_ende','type':'string','read':true,'write':false,'role':'string','def':'00:00','unit':'Uhr'}],
      
      
       //Feste Startzeit 3
       [basic_vars_pfad+'.zeitplan.feste_startzeit_3_aktiv', {'name':'feste_startzeit_3_aktiv','type':'boolean','read':true,'write':true,'role':'switch','def':false}],
       [basic_vars_pfad+'.zeitplan.feste_startzeit_3_uhrzeit_start', {'name':'feste_startzeit_3_uhrzeit_start','type':'string','read':true,'write':true,'role':'string','def':'00:00','unit':'Uhr'}],
       [basic_vars_pfad+'.zeitplan.feste_startzeit_3_uhrzeit_ende', {'name':'feste_startzeit_3_uhrzeit_ende','type':'string','read':true,'write':false,'role':'string','def':'00:00','unit':'Uhr'}],
    ]
    createUserStates(basic_vars_speicherort, false, vars);
    
       //Diese DPs sollen bei jedem Speichern überschrieben werden
       let vars_writable = [
       [basic_vars_pfad+'.ventile.anzahl_ventile', {'name':'anzahl_ventile','type':'number','read':true,'write':false,'role':'number','def':basic_vars_anzahl_ventile,'min':0, 'max':basic_vars_anzahl_ventile} ],
       [basic_vars_pfad+'.ventile.ventil_1.ventil_1_name', {'name':'ventil_1_name','type':'string','read':true,'write':false,'role':'string','def':basic_vars_kreis1_name}],
       [basic_vars_pfad+'.ventile.ventil_2.ventil_2_name', {'name':'ventil_2_name','type':'string','read':true,'write':false,'role':'string','def':basic_vars_kreis2_name}],
       [basic_vars_pfad+'.ventile.ventil_3.ventil_3_name', {'name':'ventil_3_name','type':'string','read':true,'write':false,'role':'string','def':basic_vars_kreis3_name}],
       [basic_vars_pfad+'.ventile.ventil_4.ventil_4_name', {'name':'ventil_4_name','type':'string','read':true,'write':false,'role':'string','def':basic_vars_kreis4_name}],
       [basic_vars_pfad+'.ventile.ventil_5.ventil_5_name', {'name':'ventil_5_name','type':'string','read':true,'write':false,'role':'string','def':basic_vars_kreis5_name}],
       [basic_vars_pfad+'.ventile.ventil_6.ventil_6_name', {'name':'ventil_6_name','type':'string','read':true,'write':false,'role':'string','def':basic_vars_kreis6_name}],
    ]
    createUserStates(basic_vars_speicherort, true, vars_writable);
    
    if(basic_vars_anzahl_ventile > 0) {
       let vars_ventil_1 = [
       //Ventil 1
       [basic_vars_pfad+'.ventile.ventil_1.ventil_1', {'name':'ventil_1','type':'boolean','read':true,'write':true,'role':'switch','def':false}],
       [basic_vars_pfad+'.ventile.ventil_1.ventil_1_dauer', {'name': 'ventil_1_dauer','type':'number','read':true,'write':true,'role':'number','def':0,'unit':'Sekunden'}],
       [basic_vars_pfad+'.ventile.ventil_1.ventil_1_dauer_in_min', {'name': 'ventil_1_dauer_in_min','type':'number','read':true,'write':true,'role':'number','def':0,'unit':'Minuten'}],
       [basic_vars_pfad+'.ventile.ventil_1.ventil_1_ende', {'name':'ventil_1_ende','type':'string','read':true,'write':false,'role':'string','def':'00:00','unit':'Uhr'}],
       [basic_vars_pfad+'.ventile.ventil_1.ventil_1_fortschritt', {'name':'ventil_1_fortschritt','type':'number','read':true,'write':false,'role':'number','def':0,'unit':'%','min':0,'max':100}],
       [basic_vars_pfad+'.ventile.ventil_1.ventil_1_rest', {'name':'ventil_1_rest','type':'number','read':true,'write':false,'role':'number','def':100,'unit':'%','min':0,'max':100}],
       //[basic_vars_pfad+'.ventile.ventil_1.ventil_1_name', {'name':'ventil_1_name','type':'string','read':true,'write':false,'role':'string','def':basic_vars_kreis1_name}],
       [basic_vars_pfad+'.ventile.ventil_1.ventil_1_restzeit', {'name':'ventil_1_restzeit','type': 'string','read':true,'write':false,'role':'string','def':'0:00','unit':'Minuten'}],
       [basic_vars_pfad+'.ventile.ventil_1.ventil_1_restzeit_in_sek', {'name':'ventil_1_restzeit_in_sek','type':'number','read':true,'write':false,'role':'number','def':0,'unit':'Sekunden'}],
       [basic_vars_pfad+'.ventile.ventil_1.ventil_1_status', {'name':'ventil_1_status','type':'boolean','read':true,'write':false,'role':'switch','def':false}],
       [basic_vars_pfad+'.ventile.ventil_1.ventil_1_parallel', {'name':'ventil_1_parallel','type':'boolean','read':true,'write':true,'role':'switch','def':false,'descr':'Wenn dieser DP aktiviert wird, dann werden Ventil 2 bis X parallel zu Ventil 1 gestartet. Usecase: an Ventil 1 ist ein Tropfschlauch angeschlossen.'}],
    ]
    createUserStates(basic_vars_speicherort, false, vars_ventil_1);}
    
    if(basic_vars_anzahl_ventile > 1) {
       let vars_ventil_2 = [
       //Ventil 2
       [basic_vars_pfad+'.ventile.ventil_2.ventil_2', {'name':'ventil_2','type':'boolean','read':true,'write':true,'role':'switch','def':false}],
       [basic_vars_pfad+'.ventile.ventil_2.ventil_2_dauer', {'name': 'ventil_2_dauer','type':'number','read':true,'write':true,'role':'number','def':0,'unit':'Sekunden'}],
       [basic_vars_pfad+'.ventile.ventil_2.ventil_2_dauer_in_min', {'name': 'ventil_2_dauer_in_min','type':'number','read':true,'write':true,'role':'number','def':0,'unit':'Minuten'}],
       [basic_vars_pfad+'.ventile.ventil_2.ventil_2_ende', {'name':'ventil_2_ende','type':'string','read':true,'write':false,'role':'string','def':'00:00','unit':'Uhr'}],
       [basic_vars_pfad+'.ventile.ventil_2.ventil_2_fortschritt', {'name':'ventil_2_fortschritt','type':'number','read':true,'write':false,'role':'number','def':0,'unit':'%','min':0,'max':100}],
       [basic_vars_pfad+'.ventile.ventil_2.ventil_2_rest', {'name':'ventil_2_rest','type':'number','read':true,'write':false,'role':'number','def':100,'unit':'%','min':0,'max':100}],
       //[basic_vars_pfad+'.ventile.ventil_2.ventil_2_name', {'name':'ventil_2_name','type':'string','read':true,'write':false,'role':'string','def':basic_vars_kreis2_name}],
       [basic_vars_pfad+'.ventile.ventil_2.ventil_2_restzeit', {'name':'ventil_2_restzeit','type': 'string','read':true,'write':false,'role':'string','def':'0:00','unit':'Minuten'}],
       [basic_vars_pfad+'.ventile.ventil_2.ventil_2_restzeit_in_sek', {'name':'ventil_2_restzeit_in_sek','type':'number','read':true,'write':false,'role':'number','def':0,'unit':'Sekunden'}],
       [basic_vars_pfad+'.ventile.ventil_2.ventil_2_status', {'name':'ventil_2_status','type':'boolean','read':true,'write':false,'role':'switch','def':false}],
    ]
    createUserStates(basic_vars_speicherort, false, vars_ventil_2);}
    
    if(basic_vars_anzahl_ventile > 2) {
    let vars_ventil_3 = [
       //Ventil 3
       [basic_vars_pfad+'.ventile.ventil_3.ventil_3', {'name':'ventil_3','type':'boolean','read':true,'write':true,'role':'switch','def':false}],
       [basic_vars_pfad+'.ventile.ventil_3.ventil_3_dauer', {'name': 'ventil_3_dauer','type':'number','read':true,'write':true,'role':'number','def':0,'unit':'Sekunden'}],
       [basic_vars_pfad+'.ventile.ventil_3.ventil_3_dauer_in_min', {'name': 'ventil_3_dauer_in_min','type':'number','read':true,'write':true,'role':'number','def':0,'unit':'Minuten'}],
       [basic_vars_pfad+'.ventile.ventil_3.ventil_3_ende', {'name':'ventil_3_ende','type':'string','read':true,'write':false,'role':'string','def':'00:00','unit':'Uhr'}],
       [basic_vars_pfad+'.ventile.ventil_3.ventil_3_fortschritt', {'name':'ventil_3_fortschritt','type':'number','read':true,'write':false,'role':'number','def':0,'unit':'%','min':0,'max':100}],
       [basic_vars_pfad+'.ventile.ventil_3.ventil_3_rest', {'name':'ventil_3_rest','type':'number','read':true,'write':false,'role':'number','def':100,'unit':'%','min':0,'max':100}],
       //[basic_vars_pfad+'.ventile.ventil_3.ventil_3_name', {'name':'ventil_3_name','type':'string','read':true,'write':false,'role':'string','def':basic_vars_kreis3_name}],
       [basic_vars_pfad+'.ventile.ventil_3.ventil_3_restzeit', {'name':'ventil_3_restzeit','type': 'string','read':true,'write':false,'role':'string','def':'0:00','unit':'Minuten'}],
       [basic_vars_pfad+'.ventile.ventil_3.ventil_3_restzeit_in_sek', {'name':'ventil_3_restzeit_in_sek','type':'number','read':true,'write':false,'role':'number','def':0,'unit':'Sekunden'}],
       [basic_vars_pfad+'.ventile.ventil_3.ventil_3_status', {'name':'ventil_3_status','type':'boolean','read':true,'write':false,'role':'switch','def':false}],	
    ]
    createUserStates(basic_vars_speicherort, false, vars_ventil_3);}
    
    if(basic_vars_anzahl_ventile > 3) {
       let vars_ventil_4 = [
       //Ventil 4
       [basic_vars_pfad+'.ventile.ventil_4.ventil_4', {'name':'ventil_4','type':'boolean','read':true,'write':true,'role':'switch','def':false}],
       [basic_vars_pfad+'.ventile.ventil_4.ventil_4_dauer', {'name': 'ventil_4_dauer','type':'number','read':true,'write':true,'role':'number','def':0,'unit':'Sekunden'}],
       [basic_vars_pfad+'.ventile.ventil_4.ventil_4_dauer_in_min', {'name': 'ventil_4_dauer_in_min','type':'number','read':true,'write':true,'role':'number','def':0,'unit':'Minuten'}],
       [basic_vars_pfad+'.ventile.ventil_4.ventil_4_ende', {'name':'ventil_4_ende','type':'string','read':true,'write':false,'role':'string','def':'00:00','unit':'Uhr'}],
       [basic_vars_pfad+'.ventile.ventil_4.ventil_4_fortschritt', {'name':'ventil_4_fortschritt','type':'number','read':true,'write':false,'role':'number','def':0,'unit':'%','min':0,'max':100}],
       [basic_vars_pfad+'.ventile.ventil_4.ventil_4_rest', {'name':'ventil_4_rest','type':'number','read':true,'write':false,'role':'number','def':100,'unit':'%','min':0,'max':100}],
       //[basic_vars_pfad+'.ventile.ventil_4.ventil_4_name', {'name':'ventil_4_name','type':'string','read':true,'write':false,'role':'string','def':basic_vars_kreis4_name}],
       [basic_vars_pfad+'.ventile.ventil_4.ventil_4_restzeit', {'name':'ventil_4_restzeit','type': 'string','read':true,'write':false,'role':'string','def':'0:00','unit':'Minuten'}],
       [basic_vars_pfad+'.ventile.ventil_4.ventil_4_restzeit_in_sek', {'name':'ventil_4_restzeit_in_sek','type':'number','read':true,'write':false,'role':'number','def':0,'unit':'Sekunden'}],
       [basic_vars_pfad+'.ventile.ventil_4.ventil_4_status', {'name':'ventil_4_status','type':'boolean','read':true,'write':false,'role':'switch','def':false}],
    ]
    createUserStates(basic_vars_speicherort, false, vars_ventil_4);}
    
    if(basic_vars_anzahl_ventile > 4) {
       let vars_ventil_5 = [
       //Ventil 5
       [basic_vars_pfad+'.ventile.ventil_5.ventil_5', {'name':'ventil_5','type':'boolean','read':true,'write':true,'role':'switch','def':false}],
       [basic_vars_pfad+'.ventile.ventil_5.ventil_5_dauer', {'name': 'ventil_5_dauer','type':'number','read':true,'write':true,'role':'number','def':0,'unit':'Sekunden'}],
       [basic_vars_pfad+'.ventile.ventil_5.ventil_5_dauer_in_min', {'name': 'ventil_5_dauer_in_min','type':'number','read':true,'write':true,'role':'number','def':0,'unit':'Minuten'}],
       [basic_vars_pfad+'.ventile.ventil_5.ventil_5_ende', {'name':'ventil_5_ende','type':'string','read':true,'write':false,'role':'string','def':'00:00','unit':'Uhr'}],
       [basic_vars_pfad+'.ventile.ventil_5.ventil_5_fortschritt', {'name':'ventil_5_fortschritt','type':'number','read':true,'write':false,'role':'number','def':0,'unit':'%','min':0,'max':100}],
       [basic_vars_pfad+'.ventile.ventil_5.ventil_5_rest', {'name':'ventil_5_rest','type':'number','read':true,'write':false,'role':'number','def':100,'unit':'%','min':0,'max':100}],
       //[basic_vars_pfad+'.ventile.ventil_5.ventil_5_name', {'name':'ventil_5_name','type':'string','read':true,'write':false,'role':'string','def':basic_vars_kreis5_name}],
       [basic_vars_pfad+'.ventile.ventil_5.ventil_5_restzeit', {'name':'ventil_5_restzeit','type': 'string','read':true,'write':false,'role':'string','def':'0:00','unit':'Minuten'}],
       [basic_vars_pfad+'.ventile.ventil_5.ventil_5_restzeit_in_sek', {'name':'ventil_5_restzeit_in_sek','type':'number','read':true,'write':false,'role':'number','def':0,'unit':'Sekunden'}],
       [basic_vars_pfad+'.ventile.ventil_5.ventil_5_status', {'name':'ventil_5_status','type':'boolean','read':true,'write':false,'role':'switch','def':false}],
    ]
    createUserStates(basic_vars_speicherort, false, vars_ventil_5);}
    
    if(basic_vars_anzahl_ventile > 5) {
       let vars_ventil_6 = [
       //Ventil 6
       [basic_vars_pfad+'.ventile.ventil_6.ventil_6', {'name':'ventil_6','type':'boolean','read':true,'write':true,'role':'switch','def':false}],
       [basic_vars_pfad+'.ventile.ventil_6.ventil_6_dauer', {'name': 'ventil_6_dauer','type':'number','read':true,'write':true,'role':'number','def':0,'unit':'Sekunden'}],
       [basic_vars_pfad+'.ventile.ventil_6.ventil_6_dauer_in_min', {'name': 'ventil_6_dauer_in_min','type':'number','read':true,'write':true,'role':'number','def':0,'unit':'Minuten'}],
       [basic_vars_pfad+'.ventile.ventil_6.ventil_6_ende', {'name':'ventil_6_ende','type':'string','read':true,'write':false,'role':'string','def':'00:00','unit':'Uhr'}],
       [basic_vars_pfad+'.ventile.ventil_6.ventil_6_fortschritt', {'name':'ventil_6_fortschritt','type':'number','read':true,'write':false,'role':'number','def':0,'unit':'%','min':0,'max':100}],
       [basic_vars_pfad+'.ventile.ventil_6.ventil_6_rest', {'name':'ventil_6_rest','type':'number','read':true,'write':false,'role':'number','def':100,'unit':'%','min':0,'max':100}],
       //[basic_vars_pfad+'.ventile.ventil_6.ventil_6_name', {'name':'ventil_6_name','type':'string','read':true,'write':false,'role':'string','def':basic_vars_kreis6_name}],
       [basic_vars_pfad+'.ventile.ventil_6.ventil_6_restzeit', {'name':'ventil_6_restzeit','type': 'string','read':true,'write':false,'role':'string','def':'0:00','unit':'Minuten'}],
       [basic_vars_pfad+'.ventile.ventil_6.ventil_6_restzeit_in_sek', {'name':'ventil_6_restzeit_in_sek','type':'number','read':true,'write':false,'role':'number','def':0,'unit':'Sekunden'}],
       [basic_vars_pfad+'.ventile.ventil_6.ventil_6_status', {'name':'ventil_6_status','type':'boolean','read':true,'write':false,'role':'switch','def':false}],
    ]
    createUserStates(basic_vars_speicherort, false, vars_ventil_6);}
    
    //Ab hier nicht benötigte Datenpunkte löschen
    //###############################################################################
    //Ventil 1 wieder löschen
    timeout = setTimeout(function () {
    
    if(basic_vars_anzahl_ventile < 1 && basic_vars_speicherort.slice(0, 10) == 'javascript') {
    const idsjs = $('javascript.*.'+[basic_vars_pfad]+'.ventile.ventil_1.*');
    idsjs.each(function(id, i) {
    if(existsState(id)) deleteState(id.substring(13));})};
    
    if(basic_vars_anzahl_ventile < 1 && basic_vars_speicherort.slice(0, 10) == '0_userdata') {
    const idsud = $('0_userdata.0.'+[basic_vars_pfad]+'.ventile.ventil_1.*');
    idsud.each(function(id, i) {
    if(existsState(id)) deleteState(id);})};
    
    //Ventil 2 wieder löschen
    if(basic_vars_anzahl_ventile < 2 && basic_vars_speicherort.slice(0, 10) == 'javascript') {
    const idsjs = $('javascript.*.'+[basic_vars_pfad]+'.ventile.ventil_2.*');
    idsjs.each(function(id, i) {
    if(existsState(id)) deleteState(id.substring(13));})};
    
    if(basic_vars_anzahl_ventile < 2 && basic_vars_speicherort.slice(0, 10) == '0_userdata') {
    const idsud = $('0_userdata.0.'+[basic_vars_pfad]+'.ventile.ventil_2.*');
    idsud.each(function(id, i) {
    if(existsState(id)) deleteState(id);})};
    
    //Ventil 3 wieder löschen
    if(basic_vars_anzahl_ventile < 3 && basic_vars_speicherort.slice(0, 10) == 'javascript') {
    const idsjs = $('javascript.*.'+[basic_vars_pfad]+'.ventile.ventil_3.*');
    idsjs.each(function(id, i) {
    if(existsState(id)) deleteState(id.substring(13));})};
    
    if(basic_vars_anzahl_ventile < 3 && basic_vars_speicherort.slice(0, 10) == '0_userdata') {
    const idsud = $('0_userdata.0.'+[basic_vars_pfad]+'.ventile.ventil_3.*');
    idsud.each(function(id, i) {
    if(existsState(id)) deleteState(id);})};
    
    //Ventil 4 wieder löschen
    if(basic_vars_anzahl_ventile < 4 && basic_vars_speicherort.slice(0, 10) == 'javascript') {
    const idsjs = $('javascript.*.'+[basic_vars_pfad]+'.ventile.ventil_4.*');
    idsjs.each(function(id, i) {
    if(existsState(id)) deleteState(id.substring(13));})};
    
    if(basic_vars_anzahl_ventile < 4 && basic_vars_speicherort.slice(0, 10) == '0_userdata') {
    const idsud = $('0_userdata.0.'+[basic_vars_pfad]+'.ventile.ventil_4.*');
    idsud.each(function(id, i) {
    if(existsState(id)) deleteState(id);})};
    
    //Ventil 5 wieder löschen
    if(basic_vars_anzahl_ventile < 5 && basic_vars_speicherort.slice(0, 10) == 'javascript') {
    const idsjs = $('javascript.*.'+[basic_vars_pfad]+'.ventile.ventil_5.*');
    idsjs.each(function(id, i) {
    if(existsState(id)) deleteState(id.substring(13));})};
    
    if(basic_vars_anzahl_ventile < 5 && basic_vars_speicherort.slice(0, 10) == '0_userdata') {
    const idsud = $('0_userdata.0.'+[basic_vars_pfad]+'.ventile.ventil_5.*');
    idsud.each(function(id, i) {
    if(existsState(id)) deleteState(id);})};
    
    //Ventil 6 wieder löschen
    if(basic_vars_anzahl_ventile < 6 && basic_vars_speicherort.slice(0, 10) == 'javascript') {
    const idsjs = $('javascript.*.'+[basic_vars_pfad]+'.ventile.ventil_6.*');
    idsjs.each(function(id, i) {
    if(existsState(id)) deleteState(id.substring(13));})};
    
    if(basic_vars_anzahl_ventile < 6 && basic_vars_speicherort.slice(0, 10) == '0_userdata') {
    const idsud = $('0_userdata.0.'+[basic_vars_pfad]+'.ventile.ventil_6.*');
    idsud.each(function(id, i) {
    if(existsState(id)) deleteState(id);})};
    }, 5000);
    //###############################################################################
    
    //Funktion main mit Verzögerung aufrufen
    timeout = setTimeout(function () {
       Variablen_definieren();
    }, 5000);
    

    1 Reply Last reply
    1
    • K Kuddel

      @sigi234 ich meine ja. aber würde ich auf jeden fall morgen noch einmal testen

      meine aktuelle v2.6.8

      bewaesserung_v2.6.8.zip

      sigi234S Online
      sigi234S Online
      sigi234
      Forum Testing Most Active
      wrote on last edited by sigi234
      #294

      @Kuddel sagte in [Vorlage] Gartenbewässerung mit 6 Ventilen:

      @sigi234 ich meine ja. aber würde ich auf jeden fall morgen noch einmal testen

      meine aktuelle v2.6.8

      Test:

      javascript.0	2020-07-23 21:36:15.275	warn	(25464) You are assigning a object to the state "javascript.0.bewaesserung.ventile.ventil_6.ventil_6_restzeit_in_sek" which expects a number. Please fix your code to use a number or change the state
      

      RAW:

      {
        "from": "system.adapter.javascript.0",
        "user": "system.user.admin",
        "ts": 1595360262144,
        "common": {
          "name": "ventil_6_restzeit_in_sek",
          "type": "number",
          "role": "number",
          "unit": "Sekunden",
          "def": 0,
          "read": true,
          "write": true
        },
        "native": {},
        "acl": {
          "object": 1636,
          "owner": "system.user.admin",
          "ownerGroup": "system.group.administrator",
          "state": 1636
        },
        "_id": "javascript.0.bewaesserung.ventile.ventil_6.ventil_6_restzeit_in_sek",
        "type": "state"
      }
      

      Ventil 6 geht statt 1 Minute auf 1 Sekunde

      Screenshot (271)_LI.jpg

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

      K 1 Reply Last reply
      0
      • sigi234S sigi234

        @Kuddel sagte in [Vorlage] Gartenbewässerung mit 6 Ventilen:

        @sigi234 ich meine ja. aber würde ich auf jeden fall morgen noch einmal testen

        meine aktuelle v2.6.8

        Test:

        javascript.0	2020-07-23 21:36:15.275	warn	(25464) You are assigning a object to the state "javascript.0.bewaesserung.ventile.ventil_6.ventil_6_restzeit_in_sek" which expects a number. Please fix your code to use a number or change the state
        

        RAW:

        {
          "from": "system.adapter.javascript.0",
          "user": "system.user.admin",
          "ts": 1595360262144,
          "common": {
            "name": "ventil_6_restzeit_in_sek",
            "type": "number",
            "role": "number",
            "unit": "Sekunden",
            "def": 0,
            "read": true,
            "write": true
          },
          "native": {},
          "acl": {
            "object": 1636,
            "owner": "system.user.admin",
            "ownerGroup": "system.group.administrator",
            "state": 1636
          },
          "_id": "javascript.0.bewaesserung.ventile.ventil_6.ventil_6_restzeit_in_sek",
          "type": "state"
        }
        

        Ventil 6 geht statt 1 Minute auf 1 Sekunde

        Screenshot (271)_LI.jpg

        K Offline
        K Offline
        Kuddel
        wrote on last edited by
        #295

        @sigi234 danke für die Rückmeldung. Versuche ich heute vormittag nochmal zu testen

        1 Reply Last reply
        0
        • K Offline
          K Offline
          Kuddel
          wrote on last edited by
          #296

          @sigi234

          Bei mir funktioniert Ventil 6 (Shelly) fehlerfrei

          8ba721aa-1c12-4dd6-a5db-19c4251084b0-grafik.png

          Hast du es merhfach versucht ?

          sigi234S 1 Reply Last reply
          0
          • K Kuddel

            @sigi234

            Bei mir funktioniert Ventil 6 (Shelly) fehlerfrei

            8ba721aa-1c12-4dd6-a5db-19c4251084b0-grafik.png

            Hast du es merhfach versucht ?

            sigi234S Online
            sigi234S Online
            sigi234
            Forum Testing Most Active
            wrote on last edited by
            #297

            @Kuddel sagte in [Vorlage] Gartenbewässerung mit 6 Ventilen:

            Hast du es merhfach versucht ?

            Ja

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

            K 1 Reply Last reply
            0
            • sigi234S sigi234

              @Kuddel sagte in [Vorlage] Gartenbewässerung mit 6 Ventilen:

              Hast du es merhfach versucht ?

              Ja

              K Offline
              K Offline
              Kuddel
              wrote on last edited by
              #298

              @sigi234 habe gerade die erweiterung von @dslraser zum löschen der nicht mehr benötigten DPs eingebaut.

              • Anzahl Ventile auf 5 geändert
              • Alle DPs für Ventil 6 wurden gelöscht
              • Anzahl Ventile auf 6 geändert
              • Alle DPs für Ventil 6 wurden erstellt
              • Dauer Ventil 6 auf 5 Minuten gestellt
              • Bewässerung manuell gestartet

              424fdb2e-a476-4cfe-a482-15326efbf7c5-grafik.png

              378d6737-783c-46ba-bece-930ca65dab6b-grafik.png

              sigi234S 1 Reply Last reply
              0
              • K Kuddel

                @sigi234 habe gerade die erweiterung von @dslraser zum löschen der nicht mehr benötigten DPs eingebaut.

                • Anzahl Ventile auf 5 geändert
                • Alle DPs für Ventil 6 wurden gelöscht
                • Anzahl Ventile auf 6 geändert
                • Alle DPs für Ventil 6 wurden erstellt
                • Dauer Ventil 6 auf 5 Minuten gestellt
                • Bewässerung manuell gestartet

                424fdb2e-a476-4cfe-a482-15326efbf7c5-grafik.png

                378d6737-783c-46ba-bece-930ca65dab6b-grafik.png

                sigi234S Online
                sigi234S Online
                sigi234
                Forum Testing Most Active
                wrote on last edited by
                #299

                @Kuddel sagte in [Vorlage] Gartenbewässerung mit 6 Ventilen:

                abe gerade die erweiterung von @dslraser zum löschen der nicht mehr benötigten DPs eingebaut.

                Schon aktuell in bewaesserung_v2.6.8.zip ?

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

                K 1 Reply Last reply
                0
                • sigi234S sigi234

                  @Kuddel sagte in [Vorlage] Gartenbewässerung mit 6 Ventilen:

                  abe gerade die erweiterung von @dslraser zum löschen der nicht mehr benötigten DPs eingebaut.

                  Schon aktuell in bewaesserung_v2.6.8.zip ?

                  K Offline
                  K Offline
                  Kuddel
                  wrote on last edited by
                  #300

                  @sigi234 bewaesserung_v2.6.9.zip

                  sigi234S 1 Reply Last reply
                  0
                  • K Kuddel

                    @sigi234 bewaesserung_v2.6.9.zip

                    sigi234S Online
                    sigi234S Online
                    sigi234
                    Forum Testing Most Active
                    wrote on last edited by sigi234
                    #301

                    @Kuddel

                    Irgendwas stimmt nicht bei mir.

                    Screenshot (275)_LI.jpg

                    Screenshot (277).png

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

                    K dslraserD 2 Replies Last reply
                    0
                    • sigi234S sigi234

                      @Kuddel

                      Irgendwas stimmt nicht bei mir.

                      Screenshot (275)_LI.jpg

                      Screenshot (277).png

                      K Offline
                      K Offline
                      Kuddel
                      wrote on last edited by Kuddel
                      #302

                      @sigi234 das sieht irgendwie komisch aus.

                      meine VIS hast du 1 zu 1 importiert ?

                      das z.b. bei der dauer bei 1 min als wert 60 gesendet wird ?

                      Vllt. stellst du mir dein Skript mal zur Verfügung ? Ich würde das bei mir mal laufen lassen

                      sigi234S 2 Replies Last reply
                      0
                      • K Kuddel

                        @sigi234 das sieht irgendwie komisch aus.

                        meine VIS hast du 1 zu 1 importiert ?

                        das z.b. bei der dauer bei 1 min als wert 60 gesendet wird ?

                        Vllt. stellst du mir dein Skript mal zur Verfügung ? Ich würde das bei mir mal laufen lassen

                        sigi234S Online
                        sigi234S Online
                        sigi234
                        Forum Testing Most Active
                        wrote on last edited by
                        #303

                        @Kuddel sagte in [Vorlage] Gartenbewässerung mit 6 Ventilen:

                        Vllt. stellst du mir dein Skript mal zur Verfügung ? Ich würde das bei mir mal laufen lassen

                        Blockly_Kuddel_Bewaesserung_sigi234.zip

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

                        1 Reply Last reply
                        0
                        • sigi234S sigi234

                          @Kuddel

                          Irgendwas stimmt nicht bei mir.

                          Screenshot (275)_LI.jpg

                          Screenshot (277).png

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

                          @sigi234
                          hast Du mal alle "alten" Datenpunkte gelöscht und durch das Blockly neu erstellen lassen ?
                          Es wird so einiges in Admin und JS gepuffert. Die JS Instanz mal neu starten kann auch nicht schaden.
                          Die Admin Instanz auch mal neu starten.

                          Achtung, Admin nicht stoppen, nur neu starten mit dem Pfeilkreis, sonst sperrst Du Dich selbst aus und musst den Admin über die Konsole neu starten.

                          Ob VIS States bzw. den Inhalt puffert weiß ich nicht, ich habe kein VIS.

                          sigi234S 1 Reply Last reply
                          0
                          • dslraserD dslraser

                            @sigi234
                            hast Du mal alle "alten" Datenpunkte gelöscht und durch das Blockly neu erstellen lassen ?
                            Es wird so einiges in Admin und JS gepuffert. Die JS Instanz mal neu starten kann auch nicht schaden.
                            Die Admin Instanz auch mal neu starten.

                            Achtung, Admin nicht stoppen, nur neu starten mit dem Pfeilkreis, sonst sperrst Du Dich selbst aus und musst den Admin über die Konsole neu starten.

                            Ob VIS States bzw. den Inhalt puffert weiß ich nicht, ich habe kein VIS.

                            sigi234S Online
                            sigi234S Online
                            sigi234
                            Forum Testing Most Active
                            wrote on last edited by
                            #305

                            @dslraser sagte in [Vorlage] Gartenbewässerung mit 6 Ventilen:

                            @sigi234
                            hast Du mal alle "alte"n Datenpunkte gelöscht und durch das Blockly neu erstellen lassen ?

                            Ja

                            Es wird so einiges in Admin und JS gepuffert. Die JS Instanz mal neu starten kann auch nicht schaden.
                            Die Admin Instanz auch mal neu starten.

                            Ja

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

                            1 Reply Last reply
                            0
                            • K Kuddel

                              @sigi234 das sieht irgendwie komisch aus.

                              meine VIS hast du 1 zu 1 importiert ?

                              das z.b. bei der dauer bei 1 min als wert 60 gesendet wird ?

                              Vllt. stellst du mir dein Skript mal zur Verfügung ? Ich würde das bei mir mal laufen lassen

                              sigi234S Online
                              sigi234S Online
                              sigi234
                              Forum Testing Most Active
                              wrote on last edited by
                              #306

                              @Kuddel sagte in [Vorlage] Gartenbewässerung mit 6 Ventilen:

                              meine VIS hast du 1 zu 1 importiert ?

                              Ja, aber Ventil 5 kopiert und auf 6 angepasst.

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

                              K 1 Reply Last reply
                              0
                              • sigi234S sigi234

                                @Kuddel sagte in [Vorlage] Gartenbewässerung mit 6 Ventilen:

                                meine VIS hast du 1 zu 1 importiert ?

                                Ja, aber Ventil 5 kopiert und auf 6 angepasst.

                                K Offline
                                K Offline
                                Kuddel
                                wrote on last edited by
                                #307

                                @sigi234

                                • dein Skript importiert
                                • Meine DPs alle gelöscht
                                • DPs neu erstellt
                                • Deine Aktoren geändert
                                • Alle Ventile auf Dauer 1 min gestellt
                                • Lief alles problemlos ohne Fehler durch
                                sigi234S 1 Reply Last reply
                                0
                                • K Kuddel

                                  @sigi234

                                  • dein Skript importiert
                                  • Meine DPs alle gelöscht
                                  • DPs neu erstellt
                                  • Deine Aktoren geändert
                                  • Alle Ventile auf Dauer 1 min gestellt
                                  • Lief alles problemlos ohne Fehler durch
                                  sigi234S Online
                                  sigi234S Online
                                  sigi234
                                  Forum Testing Most Active
                                  wrote on last edited by sigi234
                                  #308

                                  @Kuddel sagte in [Vorlage] Gartenbewässerung mit 6 Ventilen:

                                  Deine Aktoren geändert

                                  Ev. liegt es daran weil ich nur Virtuelle DP habe.

                                  Screenshot (279).png

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

                                  K 1 Reply Last reply
                                  0
                                  • sigi234S sigi234

                                    @Kuddel sagte in [Vorlage] Gartenbewässerung mit 6 Ventilen:

                                    Deine Aktoren geändert

                                    Ev. liegt es daran weil ich nur Virtuelle DP habe.

                                    Screenshot (279).png

                                    K Offline
                                    K Offline
                                    Kuddel
                                    wrote on last edited by
                                    #309

                                    @sigi234 kannst du zum testen mal die direkten States angeben?

                                    sigi234S 1 Reply Last reply
                                    0
                                    • K Kuddel

                                      @Andreas-K ich würde dein Skript etwas anders bauen:

                                      71b2da07-826f-4b07-84c6-09878909acb2-grafik.png

                                      Export vom Blockly

                                      <xml xmlns="https://developers.google.com/blockly/xml">
                                       <block type="on_ext" id="Q5P+Zic4T@]CO+Ab$w_G" x="138" y="-462">
                                         <mutation xmlns="http://www.w3.org/1999/xhtml" items="4"></mutation>
                                         <field name="CONDITION">ne</field>
                                         <field name="ACK_CONDITION"></field>
                                         <value name="OID0">
                                           <shadow type="field_oid" id="e/j=.M`c53,xyJNN)[hr">
                                             <field name="oid">default</field>
                                           </shadow>
                                         </value>
                                         <value name="OID1">
                                           <shadow type="field_oid" id="7#,G|1,f8TEMV4k*/WU~">
                                             <field name="oid">default</field>
                                           </shadow>
                                         </value>
                                         <value name="OID2">
                                           <shadow type="field_oid" id="w.+|0|vz])=,U[{qo9Ai">
                                             <field name="oid">default</field>
                                           </shadow>
                                         </value>
                                         <value name="OID3">
                                           <shadow type="field_oid" id="(HccMWUrH?`Z;N?7:a3`">
                                             <field name="oid">default</field>
                                           </shadow>
                                         </value>
                                         <statement name="STATEMENT">
                                           <block type="comment" id="a=hZ/?U]NTl$fs/9fkeG">
                                             <field name="COMMENT">Rasenflaeche klein</field>
                                             <next>
                                               <block type="controls_if" id="v)rN6GYitPVL[7GvXm@r">
                                                 <mutation elseif="1"></mutation>
                                                 <value name="IF0">
                                                   <block type="logic_compare" id="K{B,[1]_v|=3O`4Kt=2.">
                                                     <field name="OP">EQ</field>
                                                     <value name="A">
                                                       <block type="get_value" id="s|jjx]:;SQIeAj;gBO`]">
                                                         <field name="ATTR">val</field>
                                                         <field name="OID">ID auswählen</field>
                                                       </block>
                                                     </value>
                                                     <value name="B">
                                                       <block type="logic_boolean" id="+?i}.g[F:aRY|4bLw+Vo">
                                                         <field name="BOOL">TRUE</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <statement name="DO0">
                                                   <block type="request" id="+T,Aza[)udu)uPl$U+=V">
                                                     <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                                     <field name="WITH_STATEMENT">FALSE</field>
                                                     <field name="LOG"></field>
                                                     <value name="URL">
                                                       <shadow type="text" id="=lV)]]o^Apb0(,1MlQj~">
                                                         <field name="TEXT">text</field>
                                                       </shadow>
                                                     </value>
                                                   </block>
                                                 </statement>
                                                 <value name="IF1">
                                                   <block type="logic_compare" id="m$E8nA5)T[p4MI:sPgJX">
                                                     <field name="OP">EQ</field>
                                                     <value name="A">
                                                       <block type="get_value" id="Bq+(y0@sY5OzZ,jnfYxs">
                                                         <field name="ATTR">val</field>
                                                         <field name="OID">ID auswählen</field>
                                                       </block>
                                                     </value>
                                                     <value name="B">
                                                       <block type="logic_boolean" id="@gtgZQ`e#E6nuvl.0[jQ">
                                                         <field name="BOOL">FALSE</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <statement name="DO1">
                                                   <block type="request" id="1i;iHNe8$e?Ev,jS2.0P">
                                                     <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                                     <field name="WITH_STATEMENT">FALSE</field>
                                                     <field name="LOG"></field>
                                                     <value name="URL">
                                                       <shadow type="text" id="63-elMK(~OtMQL7biM/m">
                                                         <field name="TEXT">text</field>
                                                       </shadow>
                                                     </value>
                                                   </block>
                                                 </statement>
                                                 <next>
                                                   <block type="comment" id="7|Hx}1z,,lSp:+SGy,[a">
                                                     <field name="COMMENT">Rasenflaeche rechts</field>
                                                     <next>
                                                       <block type="controls_if" id="WyJD2tjnlUR|-^L#[;j(">
                                                         <mutation elseif="1"></mutation>
                                                         <value name="IF0">
                                                           <block type="logic_compare" id="[[-I,4zz@,%1fE|Ic9Wl">
                                                             <field name="OP">EQ</field>
                                                             <value name="A">
                                                               <block type="get_value" id="hVNp_UPm}mJg]e:^Saj6">
                                                                 <field name="ATTR">val</field>
                                                                 <field name="OID">ID auswählen</field>
                                                               </block>
                                                             </value>
                                                             <value name="B">
                                                               <block type="logic_boolean" id="=}rT_|YszaV#S)w2{WA/">
                                                                 <field name="BOOL">TRUE</field>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <statement name="DO0">
                                                           <block type="request" id="Gp9*oY/K-/(XYB9HLO$6">
                                                             <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                                             <field name="WITH_STATEMENT">FALSE</field>
                                                             <field name="LOG"></field>
                                                             <value name="URL">
                                                               <shadow type="text" id="rfaTWG-o`L`dVa^U6QR1">
                                                                 <field name="TEXT">text</field>
                                                               </shadow>
                                                             </value>
                                                           </block>
                                                         </statement>
                                                         <value name="IF1">
                                                           <block type="logic_compare" id="(y!k_iBxk.Rk1#OQ]f!H">
                                                             <field name="OP">EQ</field>
                                                             <value name="A">
                                                               <block type="get_value" id="lXIXrU9iG9vTK^IL%H.8">
                                                                 <field name="ATTR">val</field>
                                                                 <field name="OID">ID auswählen</field>
                                                               </block>
                                                             </value>
                                                             <value name="B">
                                                               <block type="logic_boolean" id="zB*A1l[TLSm/YEmtO$Sh">
                                                                 <field name="BOOL">FALSE</field>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <statement name="DO1">
                                                           <block type="request" id="%)s1+[qD2VWf4ZV!/UBL">
                                                             <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                                             <field name="WITH_STATEMENT">FALSE</field>
                                                             <field name="LOG"></field>
                                                             <value name="URL">
                                                               <shadow type="text" id="4=6Q#JpQ.@hwqCUT:dT-">
                                                                 <field name="TEXT">text</field>
                                                               </shadow>
                                                             </value>
                                                           </block>
                                                         </statement>
                                                         <next>
                                                           <block type="comment" id="q9hYCLF[|d5AK_=yJ=Z0">
                                                             <field name="COMMENT">Tropfschlauch</field>
                                                             <next>
                                                               <block type="controls_if" id="A?9-M9Ei5G_~KB}$Tu6(">
                                                                 <mutation elseif="1"></mutation>
                                                                 <value name="IF0">
                                                                   <block type="logic_compare" id="oe,_rBq$`B1BDlpM42G@">
                                                                     <field name="OP">EQ</field>
                                                                     <value name="A">
                                                                       <block type="get_value" id="+,K-|(|lD[0Tlxf^dKu|">
                                                                         <field name="ATTR">val</field>
                                                                         <field name="OID">ID auswählen</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="B">
                                                                       <block type="logic_boolean" id="iC-ZxAuT(m|StUD#sCAl">
                                                                         <field name="BOOL">TRUE</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                                 <statement name="DO0">
                                                                   <block type="request" id="6oB?7=]]5XoMg:k@uz@,">
                                                                     <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                                                     <field name="WITH_STATEMENT">FALSE</field>
                                                                     <field name="LOG"></field>
                                                                     <value name="URL">
                                                                       <shadow type="text" id="xsnndQV?vyI$c*2G}s$k">
                                                                         <field name="TEXT">text</field>
                                                                       </shadow>
                                                                     </value>
                                                                   </block>
                                                                 </statement>
                                                                 <value name="IF1">
                                                                   <block type="logic_compare" id="4UKEBC1y7l6SfwtPstF,">
                                                                     <field name="OP">EQ</field>
                                                                     <value name="A">
                                                                       <block type="get_value" id="91hMxyJ~ObWVj(|g6u}R">
                                                                         <field name="ATTR">val</field>
                                                                         <field name="OID">ID auswählen</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="B">
                                                                       <block type="logic_boolean" id="An3$@r$fG@X9+4YBJ|u1">
                                                                         <field name="BOOL">FALSE</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                                 <statement name="DO1">
                                                                   <block type="request" id="d[_/}g$9|f5lK1%3cgGr">
                                                                     <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                                                     <field name="WITH_STATEMENT">FALSE</field>
                                                                     <field name="LOG"></field>
                                                                     <value name="URL">
                                                                       <shadow type="text" id="iUn:}o_$D3ZKYOVuJ2x1">
                                                                         <field name="TEXT">text</field>
                                                                       </shadow>
                                                                     </value>
                                                                   </block>
                                                                 </statement>
                                                                 <next>
                                                                   <block type="comment" id="p{;X_ts(t#z9BYn}tmJI">
                                                                     <field name="COMMENT">Rasenflaeche links</field>
                                                                     <next>
                                                                       <block type="controls_if" id="tFS-4KxkL37]H}f~^:qC">
                                                                         <mutation elseif="1"></mutation>
                                                                         <value name="IF0">
                                                                           <block type="logic_compare" id="o7pUruV%bASDOdP!|)Oa">
                                                                             <field name="OP">EQ</field>
                                                                             <value name="A">
                                                                               <block type="get_value" id="yt4r}`5oJh7;JGxr`nWW">
                                                                                 <field name="ATTR">val</field>
                                                                                 <field name="OID">ID auswählen</field>
                                                                               </block>
                                                                             </value>
                                                                             <value name="B">
                                                                               <block type="logic_boolean" id="bd:7Qer|WqwmkLZSk;Ph">
                                                                                 <field name="BOOL">TRUE</field>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                         <statement name="DO0">
                                                                           <block type="request" id="cu?`XX]r_2=2F`m]IxsY">
                                                                             <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                                                             <field name="WITH_STATEMENT">FALSE</field>
                                                                             <field name="LOG"></field>
                                                                             <value name="URL">
                                                                               <shadow type="text" id="(Sc#?u^~7X4@McUiam8H">
                                                                                 <field name="TEXT">text</field>
                                                                               </shadow>
                                                                             </value>
                                                                           </block>
                                                                         </statement>
                                                                         <value name="IF1">
                                                                           <block type="logic_compare" id="{]V=l$m3dS=#.$4o+(g?">
                                                                             <field name="OP">EQ</field>
                                                                             <value name="A">
                                                                               <block type="get_value" id="t0*J3^N;*py|)[]B+f$.">
                                                                                 <field name="ATTR">val</field>
                                                                                 <field name="OID">ID auswählen</field>
                                                                               </block>
                                                                             </value>
                                                                             <value name="B">
                                                                               <block type="logic_boolean" id="xNQjD`X@RhXwKE~96|6~">
                                                                                 <field name="BOOL">FALSE</field>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                         <statement name="DO1">
                                                                           <block type="request" id="6DsAfT[`x-oOTb],-m-G">
                                                                             <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                                                             <field name="WITH_STATEMENT">FALSE</field>
                                                                             <field name="LOG"></field>
                                                                             <value name="URL">
                                                                               <shadow type="text" id="g%Pg[{F|uRET8aE:^}61">
                                                                                 <field name="TEXT">text</field>
                                                                               </shadow>
                                                                             </value>
                                                                           </block>
                                                                         </statement>
                                                                       </block>
                                                                     </next>
                                                                   </block>
                                                                 </next>
                                                               </block>
                                                             </next>
                                                           </block>
                                                         </next>
                                                       </block>
                                                     </next>
                                                   </block>
                                                 </next>
                                               </block>
                                             </next>
                                           </block>
                                         </statement>
                                       </block>
                                      </xml>
                                      

                                      Oben im roten Trigger musst du jetzt deine vier selbst erstellten Datenpunkte eintragen

                                      Bei "ID auswählen" müssen ebenfalls die DPs rein.

                                      Die DPs musst du in meinem Skript an folgender Stelle eintragen:

                                      3644b99f-ddcd-4524-8f16-636c49088fee-grafik.png

                                      Bitte den kompletten Pfad verwenden

                                      Andreas KA Offline
                                      Andreas KA Offline
                                      Andreas K
                                      wrote on last edited by
                                      #310

                                      @Kuddel Danke, für deine Hilfe....
                                      Es wäre so einfach gewesen :/
                                      Aber dafür hab ich`s jetzt gut erklärt bekommen.
                                      DANKE DANKE DANKE!

                                      Gruss Andi

                                      1 Reply Last reply
                                      0
                                      • K Kuddel

                                        @sigi234 kannst du zum testen mal die direkten States angeben?

                                        sigi234S Online
                                        sigi234S Online
                                        sigi234
                                        Forum Testing Most Active
                                        wrote on last edited by sigi234
                                        #311

                                        @Kuddel sagte in [Vorlage] Gartenbewässerung mit 6 Ventilen:

                                        @sigi234 kannst du zum testen mal die direkten States angeben?

                                        Habe (noch) keinen Garten. 😀

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

                                        K 1 Reply Last reply
                                        0
                                        • sigi234S sigi234

                                          @Kuddel sagte in [Vorlage] Gartenbewässerung mit 6 Ventilen:

                                          @sigi234 kannst du zum testen mal die direkten States angeben?

                                          Habe (noch) keinen Garten. 😀

                                          K Offline
                                          K Offline
                                          Kuddel
                                          wrote on last edited by
                                          #312

                                          @sigi234 habe zum testen auch schon mal HM-Steckdosen oder so genommen

                                          sigi234S dslraserD 2 Replies Last reply
                                          0

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          579

                                          Online

                                          32.8k

                                          Users

                                          82.7k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe