[Модуль] OpenWeatherMap (openweather) Не актуально!
Модератор: immortal
-
- Сообщения: 55
- Зарегистрирован: Пт ноя 01, 2013 3:15 am
- Благодарил (а): 3 раза
- Поблагодарили: 11 раз
Re: Модуль - Погода от OpenWeatherMap
Добрый день.
Заметил - при обновлении системы, обновляя модуль -
повторно добавляется код инициализации:
//START openweather module
в таймер onNewHour. у всех так?
Заметил - при обновлении системы, обновляя модуль -
повторно добавляется код инициализации:
//START openweather module
в таймер onNewHour. у всех так?
- nick7zmail
- Сообщения: 7573
- Зарегистрирован: Пн окт 28, 2013 8:14 am
- Откуда: Екатеринбург
- Благодарил (а): 121 раз
- Поблагодарили: 2010 раз
Re: Модуль - Погода от OpenWeatherMap
Да...давно просим убрать эту штуку у создателя модуляf00fc7c8 писал(а):Добрый день.
Заметил - при обновлении системы, обновляя модуль -
повторно добавляется код инициализации:
//START openweather module
в таймер onNewHour. у всех так?
Отправлено с моего Xperia Z через Tapatalk
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
- sergejey
- Site Admin
- Сообщения: 4284
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 75 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: Модуль - Погода от OpenWeatherMap
Как вариант, вместо добавления кода в onNewHour можно подписаться на событие HOURLY и тогда код можно оставить в самом модуле. Для примера можно смотреть как это реализовано в модуле Optimizerю
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
- nick7zmail
- Сообщения: 7573
- Зарегистрирован: Пн окт 28, 2013 8:14 am
- Откуда: Екатеринбург
- Благодарил (а): 121 раз
- Поблагодарили: 2010 раз
Re: Модуль - Погода от OpenWeatherMap
Ууу...вот это не знал...прикольно...а с минутами есть подобная подписка?sergejey писал(а):Как вариант, вместо добавления кода в onNewHour можно подписаться на событие HOURLY и тогда код можно оставить в самом модуле. Для примера можно смотреть как это реализовано в модуле Optimizerю
Отправлено с моего Xperia Z через Tapatalk
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
- sergejey
- Site Admin
- Сообщения: 4284
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 75 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: Модуль - Погода от OpenWeatherMap
Нет, с минутами такой нету. В принципе, можно и с минутами сделать. А на практике для чего хотите использовать?nick7zmail писал(а):Ууу...вот это не знал...прикольно...а с минутами есть подобная подписка?sergejey писал(а):Как вариант, вместо добавления кода в onNewHour можно подписаться на событие HOURLY и тогда код можно оставить в самом модуле. Для примера можно смотреть как это реализовано в модуле Optimizerю
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
- nick7zmail
- Сообщения: 7573
- Зарегистрирован: Пн окт 28, 2013 8:14 am
- Откуда: Екатеринбург
- Благодарил (а): 121 раз
- Поблагодарили: 2010 раз
Re: Модуль - Погода от OpenWeatherMap
Для того же будильника к примеру...набросок модуля и интерфейса есть...функционал допилить чет никак не собирусь))...или если модуль вызывать раз в пол часа нужно или раз в 15 минут...
Отправлено с моего Xperia Z через Tapatalk
Отправлено с моего Xperia Z через Tapatalk
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
-
- Сообщения: 560
- Зарегистрирован: Ср сен 04, 2013 10:31 am
- Откуда: Самара
- Благодарил (а): 99 раз
- Поблагодарили: 140 раз
- Контактная информация:
Re: Модуль - Погода от OpenWeatherMap
Всем привет!
Со смертью погоды от яндекса перебрался на этот погодный модуль.
Мои доработки.
1. У класса openweather создал поле temperature с историчностью 7 дней. Теперь можно строить график текущей температуры за прошлую неделю.
2. У класса openweather создал метод ChangeTemp с кодом
3. у свойства temperature указал запускать при изменении метод ChangeTemp .
Поясню - теперь у ow_fact.tempYesterday всегда актуальная вчерашняя температура. Это нужно для сравнения со вчерашним днем.
4. Создал скрипт проговаривания погоды (у меня вызывается голосовой командой прогноз погоды) со следующим кодом:
Со смертью погоды от яндекса перебрался на этот погодный модуль.
Мои доработки.
1. У класса openweather создал поле temperature с историчностью 7 дней. Теперь можно строить график текущей температуры за прошлую неделю.
2. У класса openweather создал метод ChangeTemp с кодом
сохранение вчерашней температурыПоказать
Код: Выделить всё
// Запишем температуру вчерашнего дня для этого часа
$SQLText = " SELECT ph.value as val";
$SQLText.= " FROM pvalues pv, objects o, properties p, phistory ph ";
$SQLText.= " WHERE pv.object_id = o.id ";
$SQLText.= " AND p.id = pv.property_id ";
$SQLText.= " AND o.title = 'ow_fact' ";
$SQLText.= " AND p.title = 'temperature' ";
$SQLText.= " AND ph.value_id = pv.id ";
$SQLText.= " AND UNIX_TIMESTAMP( pv.updated ) - UNIX_TIMESTAMP( ph.added ) <24 *60 *60 +30 *60 ";
$SQLText.= " ORDER BY ph.added ";
$SQLText.= " LIMIT 1 ";
$tempYesterday = SQLSelectOne($SQLText);
sg("ow_fact.tempYesterday",$tempYesterday['val'] );
Поясню - теперь у ow_fact.tempYesterday всегда актуальная вчерашняя температура. Это нужно для сравнения со вчерашним днем.
4. Создал скрипт проговаривания погоды (у меня вызывается голосовой командой прогноз погоды) со следующим кодом:
прогноз погодыПоказать
Код: Выделить всё
$status="";
$status.="Сегодня ".gg("ow_fact.weather_type").".";
say($status,1);
$status="";
$w=round(gg("ow_fact.temperature"));
$tempw=$w;
if($tempw >= 11 and $tempw <= 14){
$tempcels=" градусов ";
}
else{
while ($tempw > 9){
$tempw=$tempw-10;
}
if($tempw == 0 or $tempw >= 5 and $tempw <= 9){
$tempcels= градусов ; }
if($tempw == 1){
$tempcels= градус ; }
if($tempw >= 2 and $tempw <= 4){
$tempcels= градуса ; }
}
$status.=' Температура '.$w." ".$tempcels." цельсия";
say($status,1);
// Сравнение со вчерашним днем
$tNew = round((float)getGlobal('ow_fact.temperature'));
$tOld = round((float)getGlobal('ow_fact.tempYesterday'));
$tDelta = abs($tNew - $tOld);
if ($tDelta==1){
$tGradus = 'градус';
}elseif($tDelta==2 || $tDelta==3 || $tDelta==4){
$tGradus = 'градуса';
}else{
$tGradus = 'градусов';
}
if ($tNew>$tOld){
say("Сегодня теплее, чем вчера на ".$tDelta." ".$tGradus.".",1);
}elseif($tNew<$tOld){
say("Сегодня холоднее, чем вчера на ".$tDelta." ".$tGradus.".",1);
}elseif($tNew==$tOld){
say("Температура сегодня такая же как вчера.",1);
}
$tempw="";
$tempcels="";
$status="";
$h=round(gg("ow_fact.humidity"));
$tempw=$h;
if($tempw >= 11 and $tempw <= 14){
$tempcels=" процентов ";
}
else{
while ($tempw > 9){
$tempw=$tempw-10;
}
if($tempw == 0 or $tempw >= 5 and $tempw <= 9){
$tempcels= процентов ; }
if($tempw == 1){
$tempcels= процент ; }
if($tempw >= 2 and $tempw <= 4){
$tempcels= процента ; }
}
$status.="Относительная влажность ".$h." ".$tempcels. ".";
say($status,1);
$tempw="";
$tempcels="";
$status="";
$pressure=(float)gg("ow_fact.pressure_mmhg");
if ($pressure<738) {
$status.=' Атмосферное давление пониженное';
} elseif ($pressure>768) {
$status.=' Атмосферное давление повышенное.';
} else {
$status.=' Атмосферное давление нормальное.';
}
say($status,1);
$status="";
// ветер
$WindSpeed=(float)gg("ow_fact.wind_speed");
if ($WindSpeed<1) {
$status.=' Ветра нет.';
} elseif ($WindSpeed<3) {
$status.=' Ветер слабый.';
} elseif ($WindSpeed<6) {
$status.=' Ветер сильный.';
} elseif ($WindSpeed<9) {
$status.=' Ветер очень сильный.';
} else {
$status.=' Ветер очень! Очень сильный.';
}
if (gg('ow_fact.wind_direction')> 45 and gg('ow_fact.wind_direction')< 135){
$WindDir='восточное';
} elseif(gg('ow_fact.wind_direction')>= 135 and gg('ow_fact.wind_direction')<= 225){
$WindDir='южное';
} elseif(gg('ow_fact.wind_direction')> 225 and gg('ow_fact.wind_direction')< 315){
$WindDir='западное';
} else{
$WindDir='северное';
}
$status.=' Направление '.$WindDir.'.';
say($status,1);
// Прогноз погоды на сегодня
if (timeBetween("00:00", "12:00")){
say("Днём ".gg("ow_day0.weather_type").".",1);
$w=round(gg("ow_day0.temp_day"));
}else{
say("Вечером ".gg("ow_day0.weather_type").".",1);
$w=round(gg("ow_day0.eve"));
}
$tempw=$w;
if($tempw >= 11 and $tempw <= 14){
$tempcels=" градусов ";
}
else{
while ($tempw > 9){
$tempw=$tempw-10;
}
if($tempw == 0 or $tempw >= 5 and $tempw <= 9){
$tempcels= градусов ; }
if($tempw == 1){
$tempcels= градус ; }
if($tempw >= 2 and $tempw <= 4){
$tempcels= градуса ; }
}
$status="";
$status.=' температура будет '.$w." ".$tempcels." цельсия";
say($status,1);
// Погода на завтра
say("Завтра ".gg("ow_day1.weather_type").".",1);
$status="";
$w=round(gg("ow_day1.temperature"));
$tempw=$w;
if($tempw >= 11 and $tempw <= 14){
$tempcels=" градусов ";
}
else{
while ($tempw > 9){
$tempw=$tempw-10;
}
if($tempw == 0 or $tempw >= 5 and $tempw <= 9){
$tempcels= градусов ; }
if($tempw == 1){
$tempcels= градус ; }
if($tempw >= 2 and $tempw <= 4){
$tempcels= градуса ; }
}
$status.=' Температура будет '.$w." ".$tempcels." цельсия";
say($status,1);
// Пробки.
$status=getGlobal('ThisComputer.ProbkiText').'.';
say($status,1);
- За это сообщение автора ErmolenkoM поблагодарили (всего 4):
- devoff (Вс июн 05, 2016 10:33 am) • TheForum (Сб сен 03, 2016 10:27 pm) • sirius23 (Сб сен 17, 2016 8:46 pm) • tarasfrompir (Вт окт 18, 2016 9:17 pm)
- Рейтинг: 4.65%
- nick7zmail
- Сообщения: 7573
- Зарегистрирован: Пн окт 28, 2013 8:14 am
- Откуда: Екатеринбург
- Благодарил (а): 121 раз
- Поблагодарили: 2010 раз
Re: Модуль - Погода от OpenWeatherMap
Мне уже больно смотреть как люди впихивают стандартные иконки оупэнвэзер на сцены)))
Они же маленькие и некрасивые))
Вот наборчик неплохих иконок, пользуйтесь. Инструкция:
1) зайти в настройки опенвэзер
2) поставить галочку "кэшировать картинки",
3) распаковать архив в htdocs\cached\openweather\image\
4) заменить, или перед распаковкой удалить всё оттуда.
5) лицезреть картиночки на сценах))
Они же маленькие и некрасивые))
Вот наборчик неплохих иконок, пользуйтесь. Инструкция:
1) зайти в настройки опенвэзер
2) поставить галочку "кэшировать картинки",
3) распаковать архив в htdocs\cached\openweather\image\
4) заменить, или перед распаковкой удалить всё оттуда.
5) лицезреть картиночки на сценах))
- Вложения
-
- image.rar
- (59.78 КБ) 1032 скачивания
Последний раз редактировалось nick7zmail Чт июн 16, 2016 4:54 pm, всего редактировалось 1 раз.
- За это сообщение автора nick7zmail поблагодарили (всего 9):
- DiArt (Вс июн 05, 2016 1:04 pm) • xor (Ср июн 08, 2016 10:11 pm) • samum (Пн июн 13, 2016 2:13 pm) • zoz (Пт сен 02, 2016 2:39 am) • TheForum (Сб сен 03, 2016 10:32 pm) • kas5858 (Сб фев 11, 2017 8:42 pm) • Sapizdullin (Пн сен 04, 2017 8:46 pm) • ipz (Вт окт 10, 2017 1:04 am) • djleon (Пн янв 22, 2018 9:00 am)
- Рейтинг: 10.47%
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
- xor
- Сообщения: 2043
- Зарегистрирован: Сб ноя 22, 2014 8:45 pm
- Благодарил (а): 288 раз
- Поблагодарили: 629 раз
Re: Модуль - Погода от OpenWeatherMap
А точно нужно галочку убирать(п.2)?
Вроде, если кэширование стоит, то иконки с локального диска должны браться?
Вроде, если кэширование стоит, то иконки с локального диска должны браться?
win10 connect https://connect.smartliving.ru/profile/303
- nick7zmail
- Сообщения: 7573
- Зарегистрирован: Пн окт 28, 2013 8:14 am
- Откуда: Екатеринбург
- Благодарил (а): 121 раз
- Поблагодарили: 2010 раз
Re: Модуль - Погода от OpenWeatherMap
Как раз наоборот. Если стоит кэширование - иконки загружаются, если не стоит - они берутся с диска, но если нужной иконки нет - будет незагруженная картинка. Я в архиве на все варианты картинки выложил, так что не должно такого быть.xor писал(а):А точно нужно галочку убирать(п.2)?
Вроде, если кэширование стоит, то иконки с локального диска должны браться?
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<