• Recent
    • Tags
    • Popular
    • Register
    • Login

    Please Note This forum exists for community support for the Mango product family and the Radix IoT Platform. Although Radix IoT employees participate in this forum from time to time, there is no guarantee of a response to anything posted here, nor can Radix IoT, LLC guarantee the accuracy of any information expressed or conveyed. Specific project questions from customers with active support contracts are asked to send requests to support@radixiot.com.

    Radix IoT Website Mango 3 Documentation Website Mango 4 Documentation Website Mango 5 Documentation Website

    About Delay quest?

    Mango feedback
    1
    1
    364
    Loading More Posts
    • 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.
    • seanS
      sean
      last edited by

      I have a metal datapoint script like this

      var triggerSMSAction = false;
      var thisText = "";
      var NL = "\r\n";
      var S = my.value;
      print('my.value= '+my.value);
      //print(my);
      
      var resendMsgTimeDelay = 300;
      
      var Ptr = -1;
      var txt = "";
      
      
      
      var theSecondsDelyforSignalVerification = 30;
      
      //--mango timestamp value in milliseconds since the epoch
      var now = new Date().getTime();
      //print("now=",now);
      
      
      
      
      
      
      var o1lastValue,o1_isLeak,o1;
      o1 = getDataPointByXID("XID_MainDC_Leak_A");
      // print(o1);
      o1lastValue = o1.lastValue();
      print ("o1lastValue =",o1lastValue);
      o1_isLeak = o1lastValue.value;
      print("o1_isLeak =",o1_isLeak);
      
      
      if (o1_isLeak === true) {
          print ("now =",now);
          print ("o1LastValueTime =",o1lastValue.time);
      	timeDiff = (now - o1lastValue.time)/1000;
      	
      	print("timeDiff =",timeDiff);
      	
      	if (timeDiff <= theSecondsDelyforSignalVerification) {o1_isLeak=false;}
      }
      
      //======================================================================
      Ptr = Ptr + 1;
      if (o1_isLeak === true){
               print("o1_isLeak=",o1_isLeak);
               print ("Debug it !!");
               if (!(S & Mask[Ptr])) { // 0101 & 0100 => 0100 => true
                  // do stuff
                  txt = 'Delay-Alarm';
                  LOG.info(txt);
      
      			S = S | Mask[Ptr] ;
      			triggerSMSAction = true;
      			thisText = thisText + txt + NL;
              }
          
       }else{
          
              if (S & Mask[Ptr]) { // 0101 & 0100 => 0100 => true
                  // from true to false
                  txt = 'Delay-reCover';
                  LOG.info(txt);
      
      			S = S ^ Mask[Ptr] ;
      			triggerSMSAction = true;
      			thisText = thisText + txt + NL;
              }
      }
      
      function getDataPointByXID(xid) {
        var dataPoints = DataPointQuery.query("eq(xid,"+xid+")");
        if( dataPoints.length !== 1 )
        throw LOG.info("Data point with xid '" + xid + "' not found.");
        return dataPoints[0].runtime;
      }
      

      I turn the datapoint "XID_MainDC_Leak_A" value to true but in the if (o1_isLeak === true) script will not work?
      How do I do fix it?

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