Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. Скрипты
    5. ioBroker скрипты
    6. Не работает clearSchedule

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Не работает clearSchedule

    This topic has been deleted. Only users with topic management privileges can see it.
    • V
      VoRoN last edited by

      Добрый день,

      Просьба помочь разобраться, есть следующий код, при изменении состоянии обе ветви if срабатывают, но в ветви ложь не происходит остановка шедулера. Как его сохранять и останавливать?

      on({id: /^mihome\.0\.devices\.sensor_wleak_aq1_.*\.state$/, change: 'ne'}, function(obj){
          var state       = obj.state.val;
      
          var parentObj   = getParentObj(obj);
          var schID       = parentObj._id + '.schID';
          var schIDObj;
      
          if (state){
              schIDObj  = schedule('*/2 * * * * *', function(){
                  console.log('State ON');
              });
              setObject(schID, schIDObj);
          } else {
              console.log('State OFF');
              schObj = getObject(schID);
              clearSchedule(schObj);
          }
      });
      
      
      1 Reply Last reply Reply Quote 0
      • I
        instalator last edited by

        @VoRoN:

        Добрый день,

        Просьба помочь разобраться, есть следующий код, при изменении состоянии обе ветви if срабатывают, но в ветви ложь не происходит остановка шедулера. Как его сохранять и останавливать? `

        А так?

        on({id: /^mihome\.0\.devices\.sensor_wleak_aq1_.*\.state$/, change: 'ne'}, function(obj){
            var state       = obj.state.val;
        
            var parentObj   = getParentObj(obj);
            var schID       = parentObj._id + '.schID';
            var schIDObj;
        
            if (state){
                schIDObj  = schedule('*/2 * * * * *', function(){
                    console.log('State ON');
                });
                setObject(schID, schIDObj);
            } else {
                console.log('State OFF');
                schObj = getObject(schID);
                clearSchedule(schIDObj);
            }
        });
        
        1 Reply Last reply Reply Quote 0
        • V
          VoRoN last edited by

          это опечатка у меня в коде была при сокращении кода 🙂 , не работает

          вот так заработало

          var schObj = {};
          
          on({id: /^mihome\.0\.devices\.sensor_wleak_aq1_.*\.state$/, change: 'ne'}, function(obj){
          
              var state       = obj.state.val;
          
              var parentObj   = getParentObj(obj);
              var parentName  = parentObj.common.name;
              var schID       = parentObj._id + '.schID';
          
              if (state){
                  schObj[schID]  = schedule('*/2 * * * * *', function(){
                     console.log('State ON: ' + parentName);
                  });
          
              } else {
                  var sch = schObj[schID];
          
                  printObj(schObj);
                  console.log('State OFF');
          
                  clearSchedule(sch);
                  delete schObj[schID];
              }
          });
          
          

          viewtopic.php?t=8011

          1 Reply Last reply Reply Quote 0
          • V
            VoRoN last edited by

            но вопрос, как записать id шедулера в объект чтоб потом его можно было получить в другом скрипте остался )

            1 Reply Last reply Reply Quote 0
            • I
              instalator last edited by

              @VoRoN:

              но вопрос, как записать id шедулера в объект чтоб потом его можно было получить в другом скрипте остался ) `

              Я думаю начать надо с вопроса что требуется и планируется в итоге получить

              1 Reply Last reply Reply Quote 0
              • First post
                Last post

              Support us

              ioBroker
              Community Adapters
              Donate

              737
              Online

              31.9k
              Users

              80.1k
              Topics

              1.3m
              Posts

              2
              5
              1699
              Loading More Posts
              • Oldest to Newest
              • Newest to Oldest
              • Most Votes
              Reply
              • Reply as topic
              Log in to reply
              Community
              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
              The ioBroker Community 2014-2023
              logo