Будильник

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Контактная информация:

Re: Будильник

Сообщение sergejey »

Да, должен каждую минуту. Тут либо он не запускается либо не говорит. Последнее можно проверить по логу -- если в лог пишет, значит проблема с синтезом речи. Если не пишет, то с основным циклом -- он не работает.

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
NioFBI
Сообщения: 13
Зарегистрирован: Вт фев 12, 2013 12:53 am

Re: Будильник

Сообщение NioFBI »

sergejey писал(а):Да, должен каждую минуту. Тут либо он не запускается либо не говорит. Последнее можно проверить по логу -- если в лог пишет, значит проблема с синтезом речи. Если не пишет, то с основным циклом -- он не работает.
Значит я еще не безнадежен)))
Принудительный запуск события дает желаемый эффект. Не срабатывает основной цикл. На работе (на рабочем компьютере) все работает на ура, дома какая-то "беда".
Есть ли какие нибудь идеи - "что можно сделать" или "из за чего подобный инцидент"?
Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Контактная информация:

Re: Будильник

Сообщение sergejey »

Можно посмотреть ошибки в логе в папке /debmes/ -- если основной цикл не запускается, а сразу закрывается, то там должно быть написано почему. Ну и вообще попробовать зайти в папку htdocs, запустить руками из командной строки:
..\server\php\php.exe cycle.php
и посмотреть что происходит

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
NioFBI
Сообщения: 13
Зарегистрирован: Вт фев 12, 2013 12:53 am

Re: Будильник

Сообщение NioFBI »

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

.......
Starting ./scripts/cycle_webvars.php ... 
12.02.2013 16:32:28
Closing thread: ..\server\php\php.exe -q ./scripts/cycle_bluetooth.php --params "a:0:{}"
12.02.2013 16:32:28
Cycle running OK: cycle_main.php
12.02.2013 16:32:28
Cycle running OK: cycle_rss.php
12.02.2013 16:32:28
Cycle running OK: cycle_watchfolders.php
12.02.2013 16:32:28
Cycle running OK: cycle_ping.php
12.02.2013 16:32:28
Cycle running OK: cycle_scheduler.php
12.02.2013 16:32:28
Cycle running OK: cycle_execs.php
12.02.2013 16:32:28
Closing thread: ..\server\php\php.exe -q ./scripts/cycle_onewire.php --params "a:0:{}"
12.02.2013 16:32:28
Closing thread: ..\server\php\php.exe -q ./scripts/cycle_onewire_starred.php --params "a:0:{}"
12.02.2013 16:32:28
Cycle running OK: cycle_states.php
12.02.2013 16:32:28
Cycle running OK: cycle_webvars.php
Так вот ругается при запуске. "--params "a:0:{}""
Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Контактная информация:

Re: Будильник

Сообщение sergejey »

Это ерунда -- после загрузки закрываются циклы, которые могут быть просто не настроены или не хватает соответствующих устройств (bluetooth, 1wire). Это можно проигнорировать. Важно то, как себя ведёт основной цикл в дальнейшем -- работает ли или тоже через некоторое время закрывается?

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
NioFBI
Сообщения: 13
Зарегистрирован: Вт фев 12, 2013 12:53 am

Re: Будильник

Сообщение NioFBI »

Спасибо большое всем, за помощь.
Проблему решил категорично - "Пере установкой Windiws'a", инсталлировал тот же дистрибутив Win7 + установил все обновления, после чего все заработало)
Предположительно падал мускуль, из-за чего - выяснять не стал ибо ОСь давно уже пора было пере установить.
Реализовал зачитывание сообщений из скайпа - "огонь вещь!")))
Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Контактная информация:

Re: Будильник

Сообщение sergejey »

Всегда пожалуйста :)

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
ErmolenkoM
Сообщения: 560
Зарегистрирован: Ср сен 04, 2013 10:31 am
Откуда: Самара
Контактная информация:

Re: Будильник

Сообщение ErmolenkoM »

Реализовал будильник.
Сделал несколько будильников: по рабочим дням, по выходным дням, однократный. Система расширяемая и красивая :-)
Timer->OnNewMinuts

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

//будильник
$objects=getObjectsByClass("AlarmClock");
foreach($objects as $obj) { // переберем все будильники в системе
  if (getGlobal($obj['TITLE'].".AlarmOn") && timeIs(getGlobal($obj['TITLE'].".AlarmTime"))){ //если будильник включен и время совпало
    callMethod($obj['TITLE'].".AlarmRun"); // выполним метод будильника
  }
}
Создаем класс AlarmClock, метод AlarmRun, свойство AlarmTime, AlarmOn
Создаем объекты: AlarmOne , AlarmWeekDay, AlarmWeekEnd
Переписываем метод AlarmRun для каждого объекта:
AlarmOne -> AlarmRun

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

// это однократный будильник, выключем его
  sg("AlarmOne.AlarmOn",0);
  // все проснулись
  setGlobal("SleepAllMode.active",0);
  say('Пора вставать!');
  // включим радио
  callMethod("Radio.RadioPlay");
  // запланируем выключить радио через 1час
  SetTimeOut("AlarmOne_RadioStop",'callMethod("Radio.RadioStop");', 3600);
AlarmWeekDay-> AlarmRun

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

if (isWeekDay()){ // сегодня рабочий день
  // все проснулись
  setGlobal("SleepAllMode.active",0);
  say('Пора вставать!');
  // включим радио
  callMethod("Radio.RadioPlay");
  // запланируем выключить радио 
  SetTimeOut("AlarmWeekEnd_RadioStop",'callMethod("Radio.RadioStop");', 60*60);
  }  

}
AlarmWeekEnd-> AlarmRun

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

if (isWeekEnd()){ // сегодня выходной день
  // все проснулись
  setGlobal("SleepAllMode.active",0);
  say('Пора вставать!');
  // включим радио
  callMethod("Radio.RadioPlay");
  // запланируем выключить радио 
  SetTimeOut("AlarmWeekEnd_RadioStop",'callMethod("Radio.RadioStop");', 60*60);
  }  
}
Настроем меню. Создадим переключатель, свяжем с переменной AlarmOn, создадим настройку времени, свяжем с переменной AlarmTime.
Раскопируем по количеству будильников, и чуть поправим. Готово.

Таким образом, имеем 3 будильника с красивым интерфейсом и гибкой настройкой с лица (вкл/выкл, изменить время).
У меня меня будет Radio.RadioPlay. Вместо этого можно использовать playSound или playMedia.

Как всегда, детали реализации и навороты можно подсмотреть у меня http://connect.smartliving.ru/profile/57#tabs-objects
aka msh555
Cubian на Cubietruck, Connect
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург

Re: Будильник

Сообщение nick7zmail »

Вопрос - а можно сделать кнопку что то типа "отложить" на сколько нибудь минут. Я догадываюсь как, но не знаю, как заставить прибавлять ко времени 10 мин.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
SergeyM
Сообщения: 100
Зарегистрирован: Вт ноя 11, 2014 5:16 pm
Откуда: Шатура

Re: Будильник

Сообщение SergeyM »

Коллеги!
Подскажите, а как сказать Алисе "Заведи будильник на шесть тридцать утра"?
Полазил по форуму - не нашел,
Windows, Debian 8, 1-Wire
Connect
Ответить