dist/monitor-all.js
function(params, callback) {
      var t = this,
          disconnectError = false;

      if (!t.get('started')) {
        var err = {code:'NOT_RUNNING', msg:'The recipe is already stopped.'};
        logger.warn('precondition', err);
        return callback(err);
      }

      // Called when a monitor has disconnected
      var onDisconnect = function(error) {
        if (disconnectError) {return;}
        if (error) {
          var err = {code:'DISONNECT_ERROR', err: error};
          disconnectError = true;
          logger.error('onDisconnect', err);
          return callback(err);
        }
        for (var name1 in t.monitors) {
          if (t.monitors[name1].isConnected()) {
            return;
          }
        }
        t.set({started:false});
        t.compiledScript = null;
        callback();
      };

      // Disconnect all monitors
      t.connectListeners(false);
      t.context = null;
      for (var name2 in t.monitors) {
        t.monitors[name2].disconnect(onDisconnect);
      }
    }
function(params, callback) {
      var t = this,
          disconnectError = false;

      if (!t.get('started')) {
        var err = {code:'NOT_RUNNING', msg:'The recipe is already stopped.'};
        logger.warn('precondition', err);
        return callback(err);
      }

      // Called when a monitor has disconnected
      var onDisconnect = function(error) {
        if (disconnectError) {return;}
        if (error) {
          var err = {code:'DISONNECT_ERROR', err: error};
          disconnectError = true;
          logger.error('onDisconnect', err);
          return callback(err);
        }
        for (var name1 in t.monitors) {
          if (t.monitors[name1].isConnected()) {
            return;
          }
        }
        t.set({started:false});
        t.compiledScript = null;
        callback();
      };

      // Disconnect all monitors
      t.connectListeners(false);
      t.context = null;
      for (var name2 in t.monitors) {
        t.monitors[name2].disconnect(onDisconnect);
      }
    }
function ( params , callback ) { var t = this , disconnectError = false ; if ( ! t . get ( 'started' ) ) { var err = { code : 'NOT_RUNNING' , msg : 'The recipe is already stopped.' } ; logger . warn ( 'precondition' , err ) ; return callback ( err ) ; } // Called when a monitor has disconnected var onDisconnect = function ( error ) { if ( disconnectError ) { return ; } if ( error ) { var err = { code : 'DISONNECT_ERROR' , err : error } ; disconnectError = true ; logger . error ( 'onDisconnect' , err ) ; return callback ( err ) ; } for ( var name1 in t . monitors ) { if ( t . monitors [ name1 ] . isConnected ( ) ) { return ; } } t . set ( { started : false } ) ; t . compiledScript = null ; callback ( ) ; } ; // Disconnect all monitors t . connectListeners ( false ) ; t . context = null ; for ( var name2 in t . monitors ) { t . monitors [ name2 ] . disconnect ( onDisconnect ) ; } }
Stop the recipe

This disconnects each monitor

@method stop_control
Stop the recipe