Re: Будильник
Добавлено: Чт фев 19, 2015 10:52 am
msh555 спасибо за код. Точно пригодится. Даже знаю где... 
Создайте Шаблон поведенияSergeyM писал(а):Коллеги!
Подскажите, а как сказать Алисе "Заведи будильник на шесть тридцать утра"?
Полазил по форуму - не нашел,
Код: Выделить всё
будильник на (\d+) (.+) Код: Выделить всё
setGlobal('AlarmOne.AlarmOn',1);
setGlobal('AlarmOne.AlarmTime',$matches[1].':'.$matches[2]);
say("Установила",1); Код: Выделить всё
(поставь|установи) будильник на (\d+)(\s*)(часов|:)*(\s*)(\d*)
Код: Выделить всё
$h=$matches[2];
$m=$matches[6];
if ($h>24) {
say("Непонятно на который час завести будильник, определитесь и сообщите снова.",5);
return;
}
if (($m>59)|(!$m)) {
say("Непонятно на сколько минут завести будильник, поэтому пусть будет ровно 00.",5);
$m="00";
}
say("Ставлю будильник на ".$h." часов ".$m." минут. Постарайтесь не проспать.",5);
setGlobal('AlarmOne.AlarmOn',1);
setGlobal('AlarmOne.AlarmTime',$h.':'.$m);
Код: Выделить всё
поставь (или установи) будильник на 8 часов 30 минут
поставь (или установи) будильник на 8 часов
поставь (или установи) будильник на 8
поставь (или установи) будильник на 8:30
поставь (или установи) будильник на 8:Я еще добавил слово "заведи"Vovix писал(а):Шаблон:Код: Выделить всё
(поставь|установи) будильник на (\d+)(\s*)(часов|:)*(\s*)(\d*)
Для статичных материалов, есть ВиКи http://majordomo.smartliving.ru/supersuperoleg писал(а): Кстати неплохо было бы закреплять темы с готовыми решениями в топе страницы, а в заголовки тем, где получен ответ на вопрос, добавлять "Решено". Это сильно бы сэкономило время.
Код: Выделить всё
$volume=round(65535*gg('AlarmGlobal.Volume')/100);
safe_exec('..\\apps\\nircmd\\nircmdc setsysvolume '.$volume);
say('Пора вставать! ');
if (gg('AlarmGlobal.weather') == 'Да') {
say('Температура за окном '.gg('Ekaterinburg.Temp').'. '.gg('Ekaterinburg.Type'));
}
$volume=round(65535*gg('ThisComputer.volumeLevel')/100);
safe_exec('..\\apps\\nircmd\\nircmdc setsysvolume '.$volume); Код: Выделить всё
$volume=round(65535*gg('AlarmGlobal.Volume')/100);
safe_exec('..\\apps\\nircmd\\nircmdc setsysvolume '.$volume);
sleep(2);
say('Пора вставать! ');
if (gg('AlarmGlobal.weather') == 'Да') {
say('Температура за окном '.gg('Ekaterinburg.Temp').'. '.gg('Ekaterinburg.Type'));
}
sleep(5);
$volume=round(65535*gg('ThisComputer.volumeLevel')/100);
safe_exec('..\\apps\\nircmd\\nircmdc setsysvolume '.$volume);