public static function health()
 {
     $return = array();
     $demon_state = self::deamonRunning();
     $return[] = array('test' => __('Démon local', __FILE__), 'result' => $demon_state ? __('OK', __FILE__) : __('NOK', __FILE__), 'advice' => $demon_state ? '' : __('Peut être normal si vous êtes en déporté', __FILE__), 'state' => $demon_state);
     $version = openzwave::getVersion('openzwave');
     $return[] = array('test' => __('Version d\'openzwave', __FILE__), 'result' => $version, 'advice' => $demon_state ? '' : __('Mettez à jour les dépendances', __FILE__), 'state' => version_compare(config::byKey('openzwave_version', 'openzwave'), $version, '<='));
     $compilation = openzwave::compilationOk();
     $return[] = array('test' => __('Compilation', __FILE__), 'result' => $compilation ? __('OK', __FILE__) : __('NOK', __FILE__), 'advice' => $compilation ? '' : __('Mettez à jour les dépendances', __FILE__), 'state' => $compilation);
     if (config::byKey('jeeNetwork::mode') == 'master') {
         $cron = cron::byClassAndFunction('openzwave', 'pull');
         $running = false;
         if (is_object($cron)) {
             $running = $cron->running();
         }
         $return[] = array('test' => __('Tâche Z-Wave', __FILE__), 'result' => $running ? __('OK', __FILE__) : __('NOK', __FILE__), 'advice' => $running ? '' : __('Allez sur la page du moteur des tâches et vérifiez lancer la tache openzwave::pull', __FILE__), 'state' => $running);
         foreach (jeeNetwork::byPlugin('openzwave') as $jeeNetwork) {
             try {
                 $demon_state = $jeeNetwork->sendRawRequest('deamonRunning', array('plugin' => 'openzwave'));
             } catch (Exception $e) {
                 $demon_state = false;
             }
             $return[] = array('test' => __('Démon sur ', __FILE__) . $jeeNetwork->getName(), 'result' => $demon_state ? __('OK', __FILE__) : __('NOK', __FILE__), 'advice' => '', 'state' => $demon_state);
             $version = $jeeNetwork->sendRawRequest('getVersion', array('plugin' => 'openzwave', 'module' => 'openzwave'));
             $return[] = array('test' => __('Version d\'openzwave sur ', __FILE__) . $jeeNetwork->getName(), 'result' => $version, 'advice' => $demon_state ? '' : __('Mettez à jour les dépendances', __FILE__), 'state' => version_compare(config::byKey('openzwave_version', 'openzwave'), $version, '<='));
             $compilation = $jeeNetwork->sendRawRequest('compilationOk', array('plugin' => 'openzwave'));
             $return[] = array('test' => __('Compilation sur', __FILE__) . $jeeNetwork->getName(), 'result' => $compilation ? __('OK', __FILE__) : __('NOK', __FILE__), 'advice' => $compilation ? '' : __('Mettez à jour les dépendances', __FILE__), 'state' => $compilation);
         }
     }
     return $return;
 }
Esempio n. 2
0
function openzwave_update()
{
    if (openzwave::deamonRunning()) {
        echo 'Stop zwave network...';
        openzwave::stopDeamon();
        echo "OK\n";
    }
    echo 'Stop cron...';
    $cron = cron::byClassAndFunction('openzwave', 'pull');
    if (config::byKey('jeeNetwork::mode') != 'slave') {
        if (!is_object($cron)) {
            $cron = new cron();
        }
        $cron->setClass('openzwave');
        $cron->setFunction('pull');
        $cron->setEnable(1);
        $cron->setDeamon(1);
        $cron->setDeamonSleepTime(0.5);
        $cron->setTimeout(1440);
        $cron->setSchedule('* * * * *');
        $cron->save();
        $cron->stop();
    } else {
        if (is_object($cron)) {
            $cron->remove();
        }
    }
    echo "OK\n";
    echo 'Check zwave system...';
    if (count(eqLogic::byType('zwave')) > 0) {
        log::add('openzwave', 'error', 'Attention vous etes sur la nouvelle version d\'openzwave, des actions de votre part sont necessaire merci d\'aller voir https://jeedom.fr/blog/?p=1576');
    }
    if (config::byKey('port', 'openzwave', 'none') != 'none') {
        if (method_exists('openzwave', 'getVersion')) {
            if (version_compare(config::byKey('openzwave_version', 'openzwave'), openzwave::getVersion('openzwave'), '>')) {
                if (jeedom::getHardwareName() == 'Jeedomboard') {
                    config::save('allowStartDeamon', 0, 'openzwave');
                    openzwave::updateOpenzwave(false);
                    config::save('allowStartDeamon', 1, 'openzwave');
                } else {
                    log::add('openzwave', 'error', __('Attention votre version d\'openzwave est dépassée sur le démon local, il faut ABSOLUMENT la mettre à jour', __FILE__));
                }
            }
        }
    }
    if (config::byKey('jeeNetwork::mode') == 'master') {
        foreach (jeeNetwork::byPlugin('openzwave') as $jeeNetwork) {
            try {
                if ($jeeNetwork->configByKey('port', 'openzwave', 'none') != 'none') {
                    if (version_compare($jeeNetwork->sendRawRequest('getVersion', array('plugin' => 'openzwave', 'module' => 'openzwave')), openzwave::getVersion('openzwave'), '>')) {
                        log::add('openzwave', 'error', __('Attention votre version d\'openzwave est dépassée sur', __FILE__) . ' ' . $jeeNetwork->getName() . ' ' . __('il faut ABSOLUMENT la mettre à jour', __FILE__));
                    }
                }
            } catch (Exception $e) {
            }
        }
    }
    echo "OK\n";
}
Esempio n. 3
0
function openzwave_update()
{
    log::add('openzwave', 'error', __('Après toute installation/mise à jour pensez bien à mettre à jour les dépendances Openzwave (voir documentation)', __FILE__));
    if (!file_exists(dirname(__FILE__) . '/../data')) {
        mkdir(dirname(__FILE__) . '/../data');
    }
    shell_exec('cp -R /opt/python-openzwave/xml_backups ' . dirname(__FILE__) . '/../data');
    shell_exec('cp -R /opt/python-openzwave/zwcfg_*.xml ' . dirname(__FILE__) . '/../data');
    shell_exec('rm -rf /opt/python-openzwave/xml_backups');
    shell_exec('rm -rf /opt/python-openzwave/zwcfg_*.xml');
    config::save('allowStartDeamon', 0, 'openzwave');
    echo 'Stop zwave network...';
    openzwave::stop();
    openzwave::stopDeamon();
    echo "OK\n";
    echo 'Stop cron...';
    $cron = cron::byClassAndFunction('openzwave', 'pull');
    if (is_object($cron)) {
        $cron->remove();
    }
    echo "OK\n";
    echo 'Check zwave system...';
    if (count(eqLogic::byType('zwave')) > 0) {
        log::add('openzwave', 'error', 'Attention vous etes sur la nouvelle version d\'openzwave, des actions de votre part sont necessaire merci d\'aller voir https://jeedom.fr/blog/?p=1576');
    }
    if (config::byKey('port', 'openzwave', 'none') != 'none') {
        if (method_exists('openzwave', 'getVersion')) {
            if (version_compare(config::byKey('openzwave_version', 'openzwave'), openzwave::getVersion('openzwave'), '>')) {
                if (jeedom::getHardwareName() == 'Jeedomboard') {
                    openzwave::updateOpenzwave(false);
                } else {
                    log::add('openzwave', 'error', __('Attention votre version d\'openzwave est dépassée sur le démon local, il faut ABSOLUMENT la mettre à jour', __FILE__));
                }
            }
        }
    }
    if (config::byKey('jeeNetwork::mode') == 'master') {
        foreach (jeeNetwork::byPlugin('openzwave') as $jeeNetwork) {
            try {
                if ($jeeNetwork->configByKey('port', 'openzwave', 'none') != 'none') {
                    if (version_compare($jeeNetwork->sendRawRequest('getVersion', array('plugin' => 'openzwave', 'module' => 'openzwave')), openzwave::getVersion('openzwave'), '>')) {
                        log::add('openzwave', 'error', __('Attention votre version d\'openzwave est dépassée sur', __FILE__) . ' ' . $jeeNetwork->getName() . ' ' . __('il faut ABSOLUMENT la mettre à jour', __FILE__));
                    }
                }
            } catch (Exception $e) {
            }
        }
    }
    echo "OK\n";
    echo 'Redemarrage zwave network...';
    try {
        config::save('allowStartDeamon', 1, 'openzwave');
        openzwave::runDeamon();
    } catch (Exception $e) {
    }
    echo "OK\n";
}
Esempio n. 4
0
 public static function checkAndCollect()
 {
     try {
         if (date('Gi') >= 500 && date('Gi') < 505) {
             history::archive();
         }
     } catch (Exception $e) {
         log::add('history', 'error', 'history::archive : ' . $e->getMessage());
     }
     try {
         network::cron();
     } catch (Exception $e) {
         log::add('network', 'error', 'network::cron : ' . $e->getMessage());
     }
     try {
         eqLogic::checkAlive();
         connection::cron();
         if (config::byKey('jeeNetwork::mode') != 'slave') {
             jeeNetwork::pull();
         }
     } catch (Exception $e) {
     }
     try {
         cmd::collect();
     } catch (Exception $e) {
         log::add('cmd', 'error', 'cmd::collect : ' . $e->getMessage());
     }
     try {
         history::historize();
     } catch (Exception $e) {
         log::add('history', 'error', 'history::archive : ' . $e->getMessage());
     }
 }
Esempio n. 5
0
				<input type="checkbox" class="configKey bootstrapSwitch" data-l1key="directPush" />
			</div>
		</div>
		<div class="form-group">
			<label class="col-sm-4 control-label">{{Gestion du démon}}</label>
			<div class="col-sm-8">
				<a class="btn btn-success" id="bt_startopenZwaveDemon"><i class='fa fa-play'></i> {{(Re)démarrer}}</a>
				<a class="btn btn-danger" id="bt_stopopenZwaveDemon"><i class='fa fa-stop'></i> {{Arrêter}}</a>
				<a class="btn btn-warning" id="bt_launchOpenZwaveInDebug"><i class="fa fa-exclamation-triangle"></i> {{Lancer en mode debug}}</a>
			</div>
		</div>
	</fieldset>
</form>
<?php 
if (config::byKey('jeeNetwork::mode') == 'master') {
    foreach (jeeNetwork::byPlugin('openzwave') as $jeeNetwork) {
        ?>
		<form class="form-horizontal slaveConfig" data-slave_id="<?php 
        echo $jeeNetwork->getId();
        ?>
">
			<fieldset>
				<legend>{{Démon sur l'esclave}} <?php 
        echo $jeeNetwork->getName();
        ?>
</legend>
				<div class="form-group">
					<label class="col-lg-4 control-label">{{Port clé Z-Wave}}</label>
					<div class="col-lg-4">
						<select class="slaveConfigKey form-control" data-l1key="port">
							<option value="none">{{Aucun}}</option>
Esempio n. 6
0
                            break;
                        }
                    }
                }
                foreach ($eqLogic->getCmd('info', $result['instance'] . '.' . $result['CommandClass'], null, true) as $cmd) {
                    if ($cmd->getConfiguration('value') == 'data[' . $result['index'] . '].val') {
                        $cmd->handleUpdateValue($result);
                    }
                }
            }
        }
    }
}
if (isset($results['controller'])) {
    if (isset($results['controller']['state'])) {
        $jeeNetwork = jeeNetwork::byId($results['serverId']);
        if (is_object($jeeNetwork) || $results['serverId'] == 0) {
            event::add('zwave::controller.data.controllerState', array('name' => $results['serverId'] == 0 ? 'local' : $jeeNetwork->getName(), 'state' => $results['controller']['state']['value'], 'serverId' => $results['serverId']));
        }
    }
    if (isset($results['controller']['excluded'])) {
        event::add('jeedom::alert', array('level' => 'warning', 'message' => __('Un périphérique Z-Wave est en cours d\'exclusion. Logical ID : ', __FILE__) . $results['controller']['excluded']['value']));
        sleep(2);
        openzwave::syncEqLogicWithOpenZwave($results['serverId'], $results['controller']['excluded']['value']);
    }
    if (isset($results['controller']['included'])) {
        for ($i = 0; $i < 10; $i++) {
            event::add('jeedom::alert', array('level' => 'warning', 'message' => __('Nouveau module Z-Wave détecté. Début de l\'intégration.Pause de ', __FILE__) . (10 - $i) . __(' pour synchronisation avec le module', __FILE__)));
            sleep(1);
        }
        event::add('jeedom::alert', array('level' => 'warning', 'message' => __('Inclusion en cours...', __FILE__)));
Esempio n. 7
0
    header("Status: 404 Not Found");
    header('HTTP/1.0 404 Not Found');
    $_SERVER['REDIRECT_STATUS'] = 404;
    echo "<h1>404 Not Found</h1>";
    echo "The page that you have requested could not be found.";
    exit;
}
require_once dirname(__FILE__) . '/../../../core/php/core.inc.php';
echo "Début de la migration vers openzwave\n";
$server_convertion = array(1 => 1, 2 => 2, 3 => 3);
for ($i = 1; $i <= 3; $i++) {
    if (config::byKey('zwaveAddr' . $i, 'zwave') != '' && config::byKey('zwaveAddr' . $i, 'zwave') != -1) {
        if (config::byKey('zwaveAddr' . $i, 'zwave') == '127.0.0.1' || config::byKey('zwaveAddr' . $i, 'zwave') == 'localhost') {
            $server_convertion[$i] = 0;
        } else {
            foreach (jeeNetwork::all() as $jeeNetwork) {
                if (config::byKey('zwaveAddr' . $i, 'zwave') == $jeeNetwork->getRealIp()) {
                    $server_convertion[$i] = $jeeNetwork->getId();
                }
            }
        }
    }
}
foreach (eqLogic::byType('zwave') as $eqLogic) {
    $eqLogic->setEqType_name('openzwave');
    $server_id = $eqLogic->getConfiguration('serverID', 1);
    if (isset($server_convertion[$server_id])) {
        $server_id = $server_convertion[$server_id];
    } else {
        $server_id = 0;
    }
         $jsonrpc = $jeeNetwork->getJsonRpc();
         if (!$jsonrpc->sendRequest('stopDeamon', array('plugin' => 'openzwave'))) {
             throw new Exception($jsonrpc->getError(), $jsonrpc->getErrorCode());
         }
     } else {
         openzwave::stopDeamon();
         if (openzwave::deamonRunning()) {
             throw new Exception(__('Impossible d\'arrêter le démon', __FILE__));
         }
         config::save('allowStartDeamon', 0, 'openzwave');
     }
     ajax::success();
 }
 if (init('action') == 'startDeamon') {
     if (init('type', 'local') == 'remote') {
         $jeeNetwork = jeeNetwork::byId(init('id'));
         if (!is_object($jeeNetwork)) {
             throw new Exception(__('Impossible de trouver l\'esclave : ', __FILE__) . init('id'));
         }
         $jsonrpc = $jeeNetwork->getJsonRpc();
         if (!$jsonrpc->sendRequest('runDeamon', array('plugin' => 'openzwave', 'debug' => init('debug', 0)))) {
             throw new Exception($jsonrpc->getError(), $jsonrpc->getErrorCode());
         }
     } else {
         config::save('allowStartDeamon', 1, 'openzwave');
         $port = config::byKey('port', 'openzwave', 'none');
         if ($port == 'none') {
             ajax::success();
         }
         openzwave::stopDeamon();
         if (openzwave::deamonRunning()) {
Esempio n. 9
0
    echo '</select>
            </div>
        </div>
         <div class="form-group">
            <label class="col-lg-4 control-label">Mode Debug, cela peut ralentir le systeme</label>
            <div class="col-lg-4">
                <input type="checkbox" class="configKey" data-l1key="enableLogging" />
            </div>
        </div>
        
    </fieldset>
</form>

<form class="form-horizontal">
    <fieldset>';
    foreach (jeeNetwork::byPlugin('bluetooth') as $jeeNetwork) {
        $id_sat = $jeeNetwork->getId();
        $jsonrpc = $jeeNetwork->getJsonRpc();
        echo '<div class="config-remote" id=' . $jeeNetwork->getId() . '>';
        echo '<u>Configuration pour le serveur distant : <b>' . $jeeNetwork->getName() . '</b></u>';
        echo '<div class="form-group">
					            <label class="col-lg-4 control-label">Port Bluetooth</label>
					            <div class="col-lg-4">
					                <select class="configKey form-control portusb" data-l1key="port' . $id_sat . '">
					                    <option value="">Aucun</option>';
        foreach ($jeeNetwork->sendRawRequest('jeedom::getUsbMapping') as $name => $value) {
            echo '<option value="' . $name . '">' . $name . ' (' . $value . ')</option>';
        }
        echo '</select>
			            </div>
			        </div>
Esempio n. 10
0
 public static function syncconfOpenzwave($_background = true)
 {
     if (config::byKey('jeeNetwork::mode') == 'master') {
         foreach (jeeNetwork::byPlugin('openzwave') as $jeeNetwork) {
             try {
                 $jeeNetwork->sendRawRequest('syncconfOpenzwave', array('plugin' => 'openzwave'));
             } catch (Exception $e) {
             }
         }
     }
     log::remove('openzwave_syncconf');
     $cmd = 'sudo /bin/bash ' . dirname(__FILE__) . '/../../ressources/syncconf.sh';
     if ($_background) {
         $cmd .= ' >> ' . log::getPathToLog('openzwave_syncconf') . ' 2>&1 &';
     }
     log::add('openzwave_syncconf', 'info', $cmd);
     shell_exec($cmd);
 }
Esempio n. 11
0
     jeedom::rebootSystem();
     $jsonrpc->makeSuccess('ok');
 }
 if ($jsonrpc->getMethod() == 'jeeNetwork::update') {
     jeedom::update('', 0);
     $jsonrpc->makeSuccess('ok');
 }
 if ($jsonrpc->getMethod() == 'jeeNetwork::checkUpdate') {
     update::checkAllUpdate();
     $jsonrpc->makeSuccess('ok');
 }
 if ($jsonrpc->getMethod() == 'jeeNetwork::receivedBackup') {
     if (config::byKey('jeeNetwork::mode') == 'slave') {
         throw new Exception(__('Seul un maître peut recevoir une sauvegarde', __FILE__));
     }
     $jeeNetwork = jeeNetwork::byId($params['slave_id']);
     if (!is_object($jeeNetwork)) {
         throw new Exception(__('Aucun esclave correspondant à l\'id : ', __FILE__) . $params['slave_id']);
     }
     if (substr(config::byKey('backup::path'), 0, 1) != '/') {
         $backup_dir = dirname(__FILE__) . '/../../' . config::byKey('backup::path');
     } else {
         $backup_dir = config::byKey('backup::path');
     }
     $uploaddir = $backup_dir . '/slave/';
     if (!file_exists($uploaddir)) {
         mkdir($uploaddir);
     }
     if (!file_exists($uploaddir)) {
         throw new Exception('Répertoire de téléversement non trouvé : ' . $uploaddir);
     }
 public static function sendToController($destination, $sensor, $command, $acknowledge, $type, $payload)
 {
     if (config::byKey('externalDeamon', 'mySensors', 0) == 2) {
         $jeeSlave = jeeNetwork::byId(config::byKey('jeeSlave', 'mySensors'));
         $urlNode = getIpFromString($jeeSlave->getIp());
     } else {
         $urlNode = "127.0.0.1";
     }
     log::add('mySensors', 'info', $urlNode);
     $msg = $destination . ";" . $sensor . ";" . $command . ";" . $acknowledge . ";" . $type . ";" . $payload;
     log::add('mySensors', 'info', $msg);
     $fp = fsockopen($urlNode, 8019, $errno, $errstr);
     if (!$fp) {
         echo "ERROR: {$errno} - {$errstr}<br />\n";
     } else {
         fwrite($fp, $msg);
         fclose($fp);
     }
 }
Esempio n. 13
0
    if (!isset($NO_CLOUD_BAKCUP) || $NO_CLOUD_BAKCUP == false) {
        if (config::byKey('backup::cloudUpload') == 1 && init('noCloudUpload', 0) == 0) {
            echo __('Envoi de la sauvegarde dans le cloud...', __FILE__);
            try {
                market::sendBackup($backup_dir . '/' . $bakcup_name);
            } catch (Exception $e) {
                log::add('backup', 'error', $e->getMessage());
                echo '/!\\ ' . br2nl($e->getMessage()) . ' /!\\';
            }
            echo __("OK", __FILE__) . "\n";
        }
    }
    if (config::byKey('jeeNetwork::mode') == 'slave') {
        echo __('Envoi de la sauvegarde sur le maître...', __FILE__);
        try {
            jeeNetwork::sendBackup($backup_dir . '/' . $bakcup_name);
        } catch (Exception $e) {
            log::add('backup', 'error', $e->getMessage());
            echo '/!\\ ' . br2nl($e->getMessage()) . ' /!\\';
        }
        echo __("OK", __FILE__) . "\n";
    }
    echo __("Nom du backup : ", __FILE__) . $backup_dir . '/' . $bakcup_name . "\n";
    echo __("***************Fin de la sauvegarde de Jeedom***************\n", __FILE__);
    echo "[END BACKUP SUCCESS]\n";
} catch (Exception $e) {
    echo __('Erreur durant la sauvegarde : ', __FILE__) . br2nl($e->getMessage());
    echo __('Détails : ', __FILE__) . print_r($e->getTrace());
    echo "[END BACKUP ERROR]\n";
    throw $e;
}
Esempio n. 14
0
 }
 if (init('action') == 'getNodeJsKey') {
     ajax::success(config::byKey('nodeJsKey'));
 }
 if (init('action') == 'addKey') {
     if (!isConnect('admin')) {
         throw new Exception(__('401 - Accès non autorisé', __FILE__));
     }
     $values = json_decode(init('value'), true);
     foreach ($values as $key => $value) {
         if ($key == 'market::password' && !preg_match('/^[0-9a-f]{40}$/i', $value)) {
             $value = sha1($value);
         }
         config::save($key, jeedom::fromHumanReadable($value), init('plugin', 'core'));
         if ($key == 'internalAddr') {
             jeeNetwork::pull();
         }
         if ($key == 'market::allowDNS') {
             if ($value == 1) {
                 if (!network::dns_run()) {
                     network::dns_start();
                 }
             } else {
                 if (network::dns_run()) {
                     network::dns_stop();
                 }
             }
         }
     }
     ajax::success();
 }
Esempio n. 15
0
 public static function cron()
 {
     if (!self::isStarted()) {
         $cache = cache::byKey('jeedom::usbMapping');
         $cache->remove();
         foreach (cron::all() as $cron) {
             if ($cron->running() && $cron->getClass() != 'jeedom' && $cron->getFunction() != 'cron') {
                 try {
                     $cron->halt();
                 } catch (Exception $e) {
                 }
             }
         }
         try {
             jeedom::start();
         } catch (Exception $e) {
         }
         try {
             plugin::start();
         } catch (Exception $e) {
         }
         touch('/tmp/jeedom_start');
         self::event('start');
         log::add('core', 'info', 'Démarrage de Jeedom OK');
     }
     self::isDateOk();
     try {
         $c = new Cron\CronExpression(config::byKey('update::check'), new Cron\FieldFactory());
         if ($c->isDue()) {
             $lastCheck = strtotime(config::byKey('update::lastCheck'));
             if (strtotime('now') - $lastCheck > 3600) {
                 if (config::byKey('update::auto') == 1) {
                     update::checkAllUpdate();
                     jeedom::update('', 0);
                 } else {
                     config::save('update::check', rand(1, 59) . ' ' . rand(6, 7) . ' * * *');
                     update::checkAllUpdate();
                     $updates = update::byStatus('update');
                     if (count($updates) > 0) {
                         $toUpdate = '';
                         foreach ($updates as $update) {
                             $toUpdate .= $update->getLogicalId() . ',';
                         }
                         message::add('update', __('De nouvelles mises à jour sont disponibles : ', __FILE__) . trim($toUpdate, ','), '', 'newUpdate');
                     }
                 }
             }
         }
         $c = new Cron\CronExpression('35 00 * * 0', new Cron\FieldFactory());
         if ($c->isDue()) {
             cache::clean();
             DB::optimize();
         }
         $c = new Cron\CronExpression('*/10 * * * *', new Cron\FieldFactory());
         if ($c->isDue()) {
             try {
                 try {
                     network::cron();
                 } catch (Exception $e) {
                     log::add('network', 'error', 'network::cron : ' . $e->getMessage());
                 }
                 eqLogic::checkAlive();
                 connection::cron();
                 if (config::byKey('jeeNetwork::mode') != 'slave') {
                     jeeNetwork::pull();
                 }
             } catch (Exception $e) {
             }
         }
         $c = new Cron\CronExpression('02 02 * * *', new Cron\FieldFactory());
         if ($c->isDue()) {
             try {
                 log::chunk();
                 cron::clean();
             } catch (Exception $e) {
                 log::add('log', 'error', $e->getMessage());
             }
         }
         $c = new Cron\CronExpression('21 23 * * *', new Cron\FieldFactory());
         if ($c->isDue()) {
             try {
                 scenario::cleanTable();
                 user::cleanOutdatedUser();
                 scenario::consystencyCheck();
             } catch (Exception $e) {
                 log::add('scenario', 'error', $e->getMessage());
             }
         }
     } catch (Exception $e) {
     }
 }
Esempio n. 16
0
            <div class="col-lg-4">
				<select class="configKey form-control" id="select_mode" data-l1key="externalDeamon">
                    <option value="0">Local</option>
                    <option value="2">Gateway sur un Jeedom Esclave</option>
					<option value="1">Jeedom Esclave (Envoyer les données sur le jeedom Master)</option>
                </select>
            </div>
        </div>
        
        <div id="div_slave" class="form-group">
            <label class="col-lg-4 control-label">Esclave Jeedom :</label>
            <div class="col-lg-4">
                        <select id="select_slave" class="configKey form-control" data-l1key="jeeSlave">
                    <option value="">Aucun</option>
                    <?php 
foreach (jeeNetwork::byPlugin('mySensors') as $jeeNetwork) {
    echo '<option value="' . $jeeNetwork->getId() . '">' . $jeeNetwork->getName() . ' (' . $jeeNetwork->getId() . ')</option>';
}
?>
                </select>
                    </div>
        </div>
        
<div id="div_local" class="form-group">
            <label class="col-lg-4 control-label">Port Gateway :</label>
            <div class="col-lg-4">
                <select id="select_port" class="configKey form-control" data-l1key="usbGateway">
                    <option value="">Aucun</option>
                    <?php 
foreach (jeedom::getUsbMapping() as $name => $value) {
    echo '<option value="' . $name . '">' . $name . ' (' . $value . ')</option>';