Re: Модуль "Будильник"
Добавлено: Пн ноя 28, 2016 8:48 pm
Ставите метод на срабатывание, а в методе прописываете все что надо.vasai писал(а):Можно как нибудь, осуществить отправку топика mqtt при срабатывание будильника?
Ставите метод на срабатывание, а в методе прописываете все что надо.vasai писал(а):Можно как нибудь, осуществить отправку топика mqtt при срабатывание будильника?
В OnNewMinute другой код есть? Он выполняется?vasai писал(а):Спасибо. Как я понял тогда проблема не в этом. У меня не срабатывает будильник, метод проверил, если переключать вручную все работает. А будильник, не переключает, хоть в свойстве объекта появляются name.alarmOn и name.alarmTime. Все сделал по инструкции, добавил в Timer - ClockChime - onNewMinute. В чем еще может быть проблема, подскажите пожалуйста?
Давайте попробуем разобраться...vasai писал(а):Перенес все в method: Timer (class).onNewMinute, все равно не работает, подскажите пожалуйста, очень нужен этот модуль
Код: Выделить всё
//...код не относящийся к модулю
sg('thiscomputer.test1', timenow());
//тут код будильника из первого поста
sg('thiscomputer.test2', timenow()); Код: Выделить всё
$h=(int)date('G',time());
$m=date('i',time());
if (isWeekDay()) {
}
if (($h>=8) && getGlobal('clockChimeEnabled')) {
if ($m=="00") {
say(timeNow(),1);
}
}
setGlobal('timeNow',date('H:i'));
$homeStatus=date('H:i');
if (getGlobal('NobodyHomeMode.active')) {
$homeStatus.=' Дома никого';
} else {
$homeStatus.=' Дома кто-то есть';
}
$homeStatus.=' '.getGlobal('Security.stateDetails');
$homeStatus.=' '.getGlobal('System.stateDetails');
$homeStatus.=' '.getGlobal('Communication.stateDetails');
setGlobal('HomeStatus',$homeStatus);
if (timeBetween(getGlobal('SunRiseTime'),getGlobal('SunSetTime')) && getGlobal('isDark')=="1") {
setGlobal("isDark",0);
callMethod('DarknessMode.deactivate');
} elseif (!timeBetween(getGlobal('SunRiseTime'),getGlobal('SunSetTime')) && getGlobal('isDark')!="1") {
setGlobal("isDark",1);
callMethod('DarknessMode.activate');
}
if (timeIs(getGlobal('SunRiseTime'))) {
say('Всходит солнце');
}
if (timeIs(getGlobal('SunSetTime'))) {
say('Солнце заходит',2);
}
if (timeIs("23:30") && (gg("EconomMode.active")!="1") && (gg("NobodyHomeMode.active")=="1")) {
say("Похоже никого нет сегодня, можно сэкономить немного.");
callMethod('EconomMode.activate');
}
if (timeIs('20:00')) {
callMethod('NightMode.activate');
} elseif (timeIs('08:00')) {
callMethod('NightMode.deactivate');
}
if (timeIs("03:00")) {
runScript("systemMaintenance");
}
if (gg('ThisComputer.AlarmStatus') && timeIs(gg('ThisComputer.AlarmTime'))) {
runScript('MorningAlarm');
}
sg('thiscomputer.test1', timenow());
include_once(DIR_MODULES."app_alarmclock/app_alarmclock.class.php");
$app_alarmclock = app_alarmclock();
$app_alarmclock->check_alarm();
sg('thiscomputer.test2', timenow());Как вставить в заголовок пункта меню "красивую надпись"?nick7zmail писал(а):Дак а кто мешает то?)) Для этого и сделана привязка к свойствам. В меню выводишь выключатель, привязываешь к свойству object.AlarmOn, добавляешь таймбокс - к свойству object.AlarmTime, а красивую надпись object.value можно в заголовок пункта меню вставить, как у меня к примеру на скрине в первом сообщении темы. В итоге получается что-то такое:Amarok писал(а):Ещё бы меню можно было оформлять