本文整理汇总了PHP中cron::save方法的典型用法代码示例。如果您正苦于以下问题:PHP cron::save方法的具体用法?PHP cron::save怎么用?PHP cron::save使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类cron
的用法示例。
在下文中一共展示了cron::save方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: sonos3_update
function sonos3_update()
{
$cron = cron::byClassAndFunction('sonos3', 'pull');
if (!is_object($cron)) {
$cron = new cron();
}
$cron->setClass('sonos3');
$cron->setFunction('pull');
$cron->setEnable(1);
$cron->setDeamon(1);
$cron->setDeamonSleepTime(5);
$cron->setTimeout(1440);
$cron->setSchedule('* * * * *');
$cron->save();
$cron->stop();
foreach (sonos3::byType('sonos3') as $sonos) {
$sonos->save();
}
$files = array('24 LED Bright.ttf', '24 LED Grid.ttf', '24 LED Modul.ttf', '24 LED.ttf', 'advanced_dot_digital-7.ttf', 'AHDN.ttf', 'alpha04.ttf', 'CUBS LED TFB.ttf', 'enhanced_led_board-7.ttf', 'led_counter-7.ttf', 'liquid_crystal_display.ttf', 'liquid.ttf');
foreach ($files as $file) {
$path = dirname(__FILE__) . '/../core/template/fonts/' . $file;
if (file_exists($path)) {
unlink($path);
}
}
}
示例2: openzwave_update
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";
}
示例3: install
function install()
{
$cron = cron::byClassAndFunction('alarm', 'pull');
if (!is_object($cron)) {
$cron = new cron();
}
$cron->setClass('alarm');
$cron->setFunction('pull');
$cron->setEnable(1);
$cron->setDeamon(1);
$cron->setSchedule('* * * * *');
$cron->save();
}
示例4: ewattch_update
function ewattch_update()
{
$cron = cron::byClassAndFunction('ewattch', 'pull');
if (!is_object($cron)) {
$cron = new cron();
$cron->setClass('ewattch');
$cron->setFunction('pull');
$cron->setEnable(1);
$cron->setSchedule('*/20 * * * *');
$cron->save();
}
$cron->stop();
}
示例5: tesla_update
function tesla_update()
{
$cron = cron::byClassAndFunction('tesla', 'pull');
if (!is_object($cron)) {
$cron = new cron();
$cron->setClass('tesla');
$cron->setFunction('pull');
$cron->setEnable(1);
$cron->setDeamon(0);
$cron->setSchedule('* * * * *');
$cron->save();
}
$cron->stop();
}
示例6: install
function install()
{
$cron = cron::byId(config::byKey('xPLDeamonCronId', 'xPL'));
if (!is_object($cron)) {
$cron = new cron();
}
$cron->setClass('xpl');
$cron->setFunction('deamon');
$cron->setEnable(1);
$cron->setDeamon(1);
$cron->setSchedule('* * * * *');
$cron->save();
config::save('xPLDeamonCronId', $cron->getId(), 'xPL');
}
示例7: xpl_update
function xpl_update()
{
$cron = cron::byClassAndFunction('xpl', 'deamon');
if (!is_object($cron)) {
$cron = new cron();
$cron->setClass('xpl');
$cron->setFunction('deamon');
$cron->setEnable(1);
$cron->setDeamon(1);
$cron->setSchedule('* * * * *');
$cron->save();
}
$cron->stop();
}
示例8: domogeek_update
function domogeek_update()
{
$cron = cron::byClassAndFunction('domogeek', 'pull');
if (!is_object($cron)) {
$cron = new cron();
$cron->setClass('domogeek');
$cron->setFunction('pull');
$cron->setEnable(1);
$cron->setDeamon(0);
$cron->setSchedule('0 */2 * * *');
$cron->save();
}
$cron->stop();
}
示例9: mySensors_update
function mySensors_update()
{
$cron = cron::byClassAndFunction('mySensors', 'pull');
if (!is_object($cron)) {
$cron = new cron();
$cron->setClass('mySensors');
$cron->setFunction('pull');
$cron->setEnable(1);
$cron->setDeamon(0);
$cron->setSchedule('*/15 * * * *');
$cron->save();
}
if (method_exists('mySensors', 'stopDeamon')) {
mySensors::stopDeamon();
}
$cron->stop();
}
示例10: install
function install()
{
$cron = cron::byClassAndFunction('zwave', 'pull');
if (!is_object($cron)) {
$cron = new cron();
}
$cron->setClass('zwave');
$cron->setFunction('pull');
$cron->setEnable(1);
$cron->setDeamon(1);
$cron->setSchedule('* * * * *');
$cron->save();
$cibDir = dirname(__FILE__) . '/../ressources';
if (file_exists($cibDir)) {
rrmdir($cibDir);
}
}
示例11: zwave_update
function zwave_update()
{
$cron = cron::byClassAndFunction('zwave', 'pull');
if (config::byKey('jeeNetwork::mode') != 'slave') {
if (!is_object($cron)) {
$cron = new cron();
}
$cron->setClass('zwave');
$cron->setFunction('pull');
$cron->setEnable(1);
$cron->setDeamon(1);
$cron->setTimeout(1440);
$cron->setSchedule('* * * * *');
$cron->save();
$cron->stop();
} else {
if (is_object($cron)) {
$cron->remove();
}
}
foreach (zwave::byType('zwave') as $zwave) {
if ($zwave->getConfiguration('serverID') == '') {
$zwave->setConfiguration('serverID', 1);
}
$zwave->save();
}
config::save('zwaveAddr1', config::byKey('zwaveAddr1', 'zwave', config::byKey('zwaveAddr', 'zwave')), 'zwave');
config::save('zwavePort1', config::byKey('zwavePort1', 'zwave', config::byKey('zwavePort', 'zwave')), 'zwave');
config::save('isOpenZwave1', config::byKey('isOpenZwave1', 'zwave', config::byKey('isOpenZwave', 'zwave')), 'zwave');
if (method_exists('zwave', 'listServerZway')) {
foreach (zwave::listServerZway() as $serverID => $server) {
if (config::byKey('lastNotificationCheck' . $serverID, 'zwave', 0) == 0) {
config::save('lastNotificationCheck' . $serverID, strtotime('now'), 'zwave');
}
}
}
}
示例12: arduidom_update
function arduidom_update()
{
arduidom::stopdaemon();
$MigrationCheck = config::byKey('db_version', 'arduidom', 0);
if ($MigrationCheck < 108) {
arduidom::MigrateDatas();
arduidom::start();
}
if ($MigrationCheck < 145) {
arduidom::stopdaemon();
$daemon_path = realpath(dirname(__FILE__) . '/../../ressources');
log::add('arduidom', 'info', "Suppression de arduidom1.py devenu inutile => " . unlink($daemon_path . "/arduidom1.py"));
log::add('arduidom', 'info', "Suppression de arduidom2.py devenu inutile => " . unlink($daemon_path . "/arduidom2.py"));
log::add('arduidom', 'info', "Suppression de arduidom3.py devenu inutile => " . unlink($daemon_path . "/arduidom3.py"));
log::add('arduidom', 'info', "Suppression de arduidom4.py devenu inutile => " . unlink($daemon_path . "/arduidom4.py"));
log::add('arduidom', 'info', "Suppression de arduidom5.py devenu inutile => " . unlink($daemon_path . "/arduidom5.py"));
log::add('arduidom', 'info', "Suppression de arduidom6.py devenu inutile => " . unlink($daemon_path . "/arduidom6.py"));
log::add('arduidom', 'info', "Suppression de arduidom7.py devenu inutile => " . unlink($daemon_path . "/arduidom7.py"));
log::add('arduidom', 'info', "Suppression de arduidom8.py devenu inutile => " . unlink($daemon_path . "/arduidom8.py"));
config::save('db_version', 145, 'arduidom');
// Inscrit la version de migration dans la config
arduidom::start();
}
arduidom::startdaemon();
$cron = cron::byClassAndFunction('arduidom', 'checkdaemon');
if (!is_object($cron)) {
$cron = new cron();
$cron->setClass('arduidom');
$cron->setFunction('checkdaemon');
$cron->setEnable(1);
$cron->setDeamon(0);
$cron->setSchedule('* * * * *');
$cron->save();
}
$cron->stop();
@exec("sudo usermod -G dialout www-data");
}
示例13: cron
}
$cron->setClass('plugin');
$cron->setFunction('cron15');
$cron->setSchedule('*/15 * * * * *');
$cron->setTimeout(60);
$cron->save();
$cron = cron::byClassAndFunction('plugin', 'cron30');
if (!is_object($cron)) {
echo "Création de plugin::cron30\n";
$cron = new cron();
}
$cron->setClass('plugin');
$cron->setFunction('cron30');
$cron->setSchedule('*/30 * * * * *');
$cron->setTimeout(60);
$cron->save();
$dynamic_apache_path = dirname(__FILE__) . '/../core/config/apache_jeedom_dynamic_rules';
if (!file_exists($dynamic_apache_path)) {
touch($dynamic_apache_path);
}
if (jeedom::isCapable('sudo')) {
if (!file_exists('/var/log/auth.log')) {
exec('sudo touch /var/log/auth.log');
exec('sudo service fail2ban restart');
}
exec('sudo service cron restart');
}
cache::deleteBySearch('widgetHtml');
cache::deleteBySearch('cmdWidgetdashboard');
cache::deleteBySearch('cmdWidgetmobile');
cache::deleteBySearch('scenarioHtmldashboard');
示例14: executeAndReply
public function executeAndReply($_parameters)
{
$interactDef = interactDef::byId($this->getInteractDef_id());
if (!is_object($interactDef)) {
return __('Inconsistance de la base de données', __FILE__);
}
if (isset($_parameters['profile']) && trim($interactDef->getPerson()) != '') {
$person = strtolower($interactDef->getPerson());
$person = explode('|', $person);
if (!in_array($_parameters['profile'], $person)) {
return __('Vous n\'êtes pas autorisé à exécuter cette action', __FILE__);
}
}
$reply = $interactDef->selectReply();
$replace = array();
$tags = interactDef::getTagFromQuery($this->getQuery(), $_parameters['dictation']);
$tags_replace = array();
foreach ($tags as $key => $value) {
$tags_replace['#' . $key . '#'] = $value;
$replace['#' . $key . '#'] = $value;
}
$executeDate = null;
$dateConvert = array('heure' => 'hour', 'mois' => 'month', 'semaine' => 'week', 'année' => 'year');
if (isset($tags_replace['#duration#'])) {
$tags_replace['#duration#'] = str_replace(array_keys($dateConvert), $dateConvert, $tags_replace['#duration#']);
$executeDate = strtotime('+' . $tags_replace['#duration#']);
}
if (isset($tags_replace['#time#'])) {
$time = str_replace(array('h'), array(':'), $tags_replace['#time#']);
if (strlen($time) == 2) {
$time .= ':00';
} else {
if (strlen($time) == 3) {
$time .= '00';
}
}
$executeDate = strtotime($time);
if ($executeDate < strtotime('now')) {
$executeDate += 3600;
}
}
if ($executeDate !== null && !isset($_parameters['execNow'])) {
if (date('Y', $executeDate) < 2000) {
return __('Erreur impossible de calculer la date de programmation', __FILE__);
}
if ($executeDate < strtotime('now') + 60) {
$executeDate = strtotime('now') + 60;
}
$crons = cron::searchClassAndFunction('interactQuery', 'doIn', '"interactQuery_id":' . $this->getId());
if (is_array($crons)) {
foreach ($crons as $cron) {
if ($cron->getState() != 'run') {
$cron->remove();
}
}
}
$cron = new cron();
$cron->setClass('interactQuery');
$cron->setFunction('doIn');
$cron->setOption(array_merge(array('interactQuery_id' => intval($this->getId())), $_parameters));
$cron->setLastRun(date('Y-m-d H:i:s'));
$cron->setOnce(1);
$cron->setSchedule(date('i', $executeDate) . ' ' . date('H', $executeDate) . ' ' . date('d', $executeDate) . ' ' . date('m', $executeDate) . ' * ' . date('Y', $executeDate));
$cron->save();
$replace['#value#'] = date('Y-m-d H:i:s', $executeDate);
$result = scenarioExpression::setTags(str_replace(array_keys($replace), $replace, $reply));
return $result;
}
$colors = config::byKey('convertColor');
foreach ($this->getActions('cmd') as $action) {
try {
$options = array();
if (isset($action['options'])) {
$options = $action['options'];
}
if ($tags != null) {
foreach ($options as &$option) {
$option = str_replace(array_keys($tags_replace), $tags_replace, $option);
}
if (isset($options['color']) && isset($colors[strtolower($options['color'])])) {
$options['color'] = $colors[strtolower($options['color'])];
}
}
$cmd = cmd::byId(str_replace('#', '', $action['cmd']));
if (is_object($cmd) && $cmd->getType() == 'info') {
$replace['#unite#'] = $cmd->getUnite();
$replace['#commande#'] = $cmd->getName();
$replace['#objet#'] = '';
$replace['#equipement#'] = '';
$eqLogic = $cmd->getEqLogic();
if (is_object($eqLogic)) {
$replace['#equipement#'] = $eqLogic->getName();
$object = $eqLogic->getObject();
if (is_object($object)) {
$replace['#objet#'] = $object->getName();
}
}
}
$options['tags'] = $tags_replace;
$return = scenarioExpression::createAndExec('action', $action['cmd'], $options);
//.........这里部分代码省略.........
示例15: checkCmdAlert
public function checkCmdAlert($_value)
{
if ($this->getConfiguration('jeedomCheckCmdOperator') == '' || $this->getConfiguration('jeedomCheckCmdTest') == '' || $this->getConfiguration('jeedomCheckCmdTime') == '' || is_nan($this->getConfiguration('jeedomCheckCmdTime'))) {
return;
}
$check = jeedom::evaluateExpression($_value . $this->getConfiguration('jeedomCheckCmdOperator') . $this->getConfiguration('jeedomCheckCmdTest'));
if ($check == 1 || $check || $check == '1') {
if ($this->getConfiguration('jeedomCheckCmdTime') == 0) {
$this->executeAlertCmdAction();
return;
}
$cron = cron::byClassAndFunction('cmd', 'cmdAlert', array('cmd_id' => intval($this->getId())));
if (!is_object($cron)) {
$cron = new cron();
}
$cron->setClass('cmd');
$cron->setFunction('cmdAlert');
$cron->setOnce(1);
$cron->setOption(array('cmd_id' => intval($this->getId())));
$next = strtotime('+ ' . ($this->getConfiguration('jeedomCheckCmdTime') + 1) . ' minutes ' . date('Y-m-d H:i:s'));
$schedule = date('i', $next) . ' ' . date('H', $next) . ' ' . date('d', $next) . ' ' . date('m', $next) . ' * ' . date('Y', $next);
$cron->setSchedule($schedule);
$cron->setLastRun(date('Y-m-d H:i:s'));
$cron->save();
} else {
$cron = cron::byClassAndFunction('cmd', 'cmdAlert', array('cmd_id' => intval($this->getId())));
if (is_object($cron)) {
$cron->remove();
}
}
}