Страница 1 из 1
[Сценарий] Предупреждение о дожде
Добавлено: Пт июл 04, 2014 3:09 pm
PAV
Вот такой, по моему мнению, изящный штришок внес в парсинг погоды:
Код: Выделить всё
$rain1=gg("Moscow.Type");
$rain2=$xml->day[0]->day_part[0]->weather_type;
$rain3=$xml->day[0]->day_part[1]->weather_type;
$rain4=$xml->day[0]->day_part[2]->weather_type;
$rain5=$xml->day[0]->day_part[3]->weather_type;
$rain=($rain1. $rain2. $rain3. $rain4. $rain5);
$pos = strpos($rain, "дожд");
if ($pos === false) {
sg('Moscow.Rain',0);
} else {
sg('Moscow.Rain',1);
}
Теперь при проговаривании погоды получается так:
Код: Выделить всё
if (gg("Moscow.Rain") > 0){
say("Внимание, обещают дождь, не забудьте зонтик");
}
Re: Предупреждение о дожде
Добавлено: Сб янв 31, 2015 12:45 pm
Amarok
А в какое место лучше вставить?
Re: Предупреждение о дожде
Добавлено: Чт фев 26, 2015 2:32 pm
Bagir
Отличная идея! Обязательно добавлю в свои настройки сегодня.
BlackWarrior писал(а):А в какое место лучше вставить?
Тут прежде всего надо определиться со схемой получения, хранения и обработки данных. Я пока что думаю так:
1. Раз в час мы опрашиваем xml Яндекса (да или любой другой источник), и записываем все что нам интересно в объекты класса Погода.
2. По Заданному условию мы проговариваем погоду.
Условие на дождь можно добавить как в первую часть так и во вторую. Но надо еще учесть, что эта информация весьма приоритета, и раз уж нам Яндекс дает сведения на ближайшее время, то при появлении упоминания о дожде надо бы это сразу сказать.
Надо будет начать делать, а там и ответы сами придут )
Re: Предупреждение о дожде
Добавлено: Чт фев 26, 2015 3:53 pm
Amarok
Bagir писал(а):Надо будет начать делать, а там и ответы сами придут )
Опрашиваю погоду раз в 30 минут. Код впентерил прямо в скрипт с небольшой поправочкой:
Код: Выделить всё
$rain1=gg("NTura.Type");
$rain2=$xml->day[0]->day_part[0]->weather_type;
$rain3=$xml->day[0]->day_part[1]->weather_type;
$rain4=$xml->day[0]->day_part[2]->weather_type;
$rain5=$xml->day[0]->day_part[3]->weather_type;
$rain=($rain1. $rain2. $rain3. $rain4. $rain5);
$pos = strpos($rain, "дожд");
if ($pos === false) {
sg('NTura.Rain',0);
} else {
sg('NTura.Rain',1);
say("Возможен дождь",2);
}
То есть, если дождь, то сразу говорим. Может и кривой вариант, но... дождя то еще не было у нас, будет и проверим)
Re: Предупреждение о дожде
Добавлено: Ср мар 11, 2015 11:05 am
PAV
На самом деле у меня Алиса предупреждает о дожде, когда в заданном временном промежутке срабатывает датчик движения. Например с 7-45 до 8-00 (уходит жена) и с 8-00 до 9:00 (ухожу я) при срабатывании датчика движения около входной двери. В идеале, когда дверь открываешь.
Также предупреждает во время утреннего доклада.