Страница 1 из 1

Настройка будильника, не стартует.

Добавлено: Пн дек 23, 2013 1:52 am
Dinariys
Здравствуйте.

Будильник не хочет стартовать по расписанию. При запуске теста, скрипт отрабатывается.
Настройки будильника брал у пользователей с CONNECT'а.

Как я делал:
  • Создал класс: AlarmClock
    Создал свойства: AlarmOn и AlarmTime
    Создал метод: AlarmRun
    Создал объект AlarmWeekDay
    Для объекта и его свойств присвоил значения: AlarmWeekDay.AlarmTime = 05:30:00 и AlarmWeekDay.AlarmOn = 1
Скрипт для AlarmRun прописываю в методе для AlarmWeekDay:

Код: Выделить всё

if (isWeekDay()){ // сегодня рабочий день
  say('Пора вставать!',5);
}
Дальше для класса Timer и метода onNewMinute добавляю следующий код к тому, что уже там есть:

Код: Выделить всё

$h=(int)date('G',time());
$m=date('i',time());

Код: Выделить всё

//будильник
$objects=getObjectsByClass("AlarmClock");
foreach($objects as $obj) { // переберем все будильники в системе
  if ((getGlobal($obj['TITLE'].".AlarmOn") == 1) && timeIs(getGlobal($obj['TITLE'].".AlarmTime"))){ //если будильник включен и время совпало
    callMethod($obj['TITLE'].".AlarmRun"); // выполним метод будильника
  }
}
После перезапустил MDM.

Значение свойства AlarmWeekDay.AlarmOn меняю через выключатель в меню.
В X-Ray отображается присвоенное значение, как для AlarmOn, так и для AlarmWeekDay.AlarmTime.
cycle_main успешно работает.
Время, так же совпадает с системным, т.е. верное и Алиса правильно произносит время.

Только начал вчера работать с MDM. Будильник это первое, что я пытаюсь добавит, но ни как не получается, перечитал весь форум и CONNECT. Уже отчаялся его настроить.

ОС: Windows 8.1 x64

Заранее спасибо за помощь.

Re: Настройка будильника, не стартует.

Добавлено: Пн дек 23, 2013 6:00 am
dmw
Вместо: callMethod($obj['TITLE'].".AlarmRun"); // выполним метод будильника
Это: callMethod("AlarmWeekDay.AlarmRun"); // выполним метод будильника

Re: Настройка будильника, не стартует.

Добавлено: Пн дек 23, 2013 6:23 am
Amarok

Код: Выделить всё

$objects=getObjectsByClass("AlarmClock");
foreach($objects as $obj) { // переберем все будильники в системе
  if (getGlobal($obj['TITLE'].".AlarmOn") && timeIs(getGlobal($obj['TITLE'].".AlarmTime"))){ //если будильник включен и время совпало
    callMethod($obj['TITLE'].".AlarmRun"); // выполним метод будильника
  }
}
У меня так работает

Re: Настройка будильника, не стартует.

Добавлено: Пн дек 23, 2013 8:14 am
ErmolenkoM
Dinariys писал(а): Будильник не хочет стартовать по расписанию.
Для объекта и его свойств присвоил значения: AlarmWeekDay.AlarmTime = 05:30:00
Думаю поможет если сделать вот так:

Код: Выделить всё

AlarmWeekDay.AlarmTime = 05:30
Лучше сделать, что бы AlarmTime так же можно было выбирать из меню. Это позволит избежать этой ошибки.

Re: Настройка будильника, не стартует.

Добавлено: Пн дек 23, 2013 8:50 am
Dinariys
Спасибо большое msh555.
Убрал секунды и будильник сразу заработал. Ураааа.
По Вашему совету добавил выбор времени в меню.
Вы супер.