[Модуль] OpenWeatherMap (openweather) Не актуально!
Модератор: immortal
- nick7zmail
- Сообщения: 7573
- Зарегистрирован: Пн окт 28, 2013 8:14 am
- Откуда: Екатеринбург
- Благодарил (а): 121 раз
- Поблагодарили: 2010 раз
Re: Модуль - Погода от OpenWeatherMap
Выберите страну, и не закрывая гляньте в дебаг...мб ошибки какие...
Отправлено с моего Xperia Z через Tapatalk
Отправлено с моего Xperia Z через Tapatalk
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
-
- Сообщения: 132
- Зарегистрирован: Ср май 17, 2017 10:38 am
- Благодарил (а): 5 раз
- Поблагодарили: 11 раз
Re: Модуль - Погода от OpenWeatherMap
Первым делом смотрел - пусто там ;(
Выкрутился вбиванием всего вручную.
Выкрутился вбиванием всего вручную.
- nick7zmail
- Сообщения: 7573
- Зарегистрирован: Пн окт 28, 2013 8:14 am
- Откуда: Екатеринбург
- Благодарил (а): 121 раз
- Поблагодарили: 2010 раз
Re: Модуль - Погода от OpenWeatherMap
Ну интересно же разобраться))kirush писал(а):Первым делом смотрел - пусто там ;(
Выкрутился вбиванием всего вручную.
а в папку <МД>/cached/openweather скачался city_list.txt?
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
-
- Сообщения: 2801
- Зарегистрирован: Пн дек 26, 2016 9:51 am
- Откуда: Екатеринбург
- Благодарил (а): 380 раз
- Поблагодарили: 693 раза
- Контактная информация:
Re: Модуль - Погода от OpenWeatherMap
подскажите, нет ли готового решения генерации строки с текущей погодой и прогнозом на день для проговаривания Алисой погоды с данными этого плагина?
Код: Выделить всё
$text='Сейчас на улице '.gg('tooday.now').' градусов. '.gg("tooday.nowhum").' Утром ожидается '.gg('tooday.morning').' градусов.';
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
- nick7zmail
- Сообщения: 7573
- Зарегистрирован: Пн окт 28, 2013 8:14 am
- Откуда: Екатеринбург
- Благодарил (а): 121 раз
- Поблагодарили: 2010 раз
Re: Модуль - Погода от OpenWeatherMap
Ну вы же написали почти готовую строку...только объект.свойство надо брать из объекта ow_fact и ow_day0 (на счет второго не уверен, системы под рукой нет)
Отправлено с моего Xperia Z через Tapatalk
Отправлено с моего Xperia Z через Tapatalk
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
-
- Сообщения: 2801
- Зарегистрирован: Пн дек 26, 2016 9:51 am
- Откуда: Екатеринбург
- Благодарил (а): 380 раз
- Поблагодарили: 693 раза
- Контактная информация:
Re: Модуль - Погода от OpenWeatherMap
Если бы было так просто ))
Если сейчас утро то нужно проговаривать текущую + прогноз на день+ вечер, если сейчас вечер, то нужно собирать другие параметры (ночь, утро, гололед и т.д.) Также наверно надо добавить рекомендации: не забыть взять зонт или одеться потеплее или не брать лишнюю одежду. Просто спросил, может уже есть у кого готовое решение, чтоб не изобретать велосипед. Мои вариант собирался с данных gismeteo, поэтому несколько отличается. Мое решение пока только в мыслях )
Если сейчас утро то нужно проговаривать текущую + прогноз на день+ вечер, если сейчас вечер, то нужно собирать другие параметры (ночь, утро, гололед и т.д.) Также наверно надо добавить рекомендации: не забыть взять зонт или одеться потеплее или не брать лишнюю одежду. Просто спросил, может уже есть у кого готовое решение, чтоб не изобретать велосипед. Мои вариант собирался с данных gismeteo, поэтому несколько отличается. Мое решение пока только в мыслях )
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
-
- Сообщения: 295
- Зарегистрирован: Вт апр 23, 2013 5:16 pm
- Откуда: Брянск
- Благодарил (а): 18 раз
- Поблагодарили: 94 раза
Re: Модуль - Погода от OpenWeatherMap
Может вот так подойдет, если чуть под себя поправить?
СпойлерПоказать
Код: Выделить всё
//на всякий случай обновим погоду
//include_once(DIR_MODULES . 'app_openweather/app_openweather.class.php');
//$openweather = new app_openweather();
//$openweather->get_weather(gg('ow_city.id'));
//////////
$status .= "Сейчас на улице " . gg("ow_fact.weather_type") . ", ";
$w = round(gg("ow_fact.temperature"));
$status .= 'температура ' . chti($w, 'градус', 'градуса', 'градусов') . " цельсия, ";
//Температура "По ощущениям"
$realFellTemp = round(gg("ow_fact.realFell"));
if ($w != $realFellTemp) {
$status .= "ощущается как " . chti($realFellTemp, 'градус', 'градуса', 'градусов') . " цельсия, ";
}
$w = gg("ow_fact.realFell");
if ($w < -40) {
$status .= 'мы морозов не боимся! ';
} elseif ($w < -30) {
$status .= 'одевайтесь теплее, очень холодно, ';
} elseif ($w < -20) {
$status .= 'самое время есть мороженое, ';
} elseif ($w < -10) {
$status .= 'холодновато, ';
} elseif ($w <- 3) {
$status .= 'не особо холодно, ';
} elseif ($w < 3) {
$status .= 'значит, возможно, гололёд, ';
} elseif ($w < 10) {
$status .= 'прохладно, ';
} elseif ($w < 22) {
$status .= 'тепло, ';
} elseif ($w < 30) {
$status .= 'жарко, ';
} elseif ($w > 30) {
$status .= 'ташкент, ';
}
// Сравнение со вчерашним днем
$tNew = round((float) getGlobal('ow_fact.temperature'));
$tOld = round((float) getGlobal('ow_fact.tempYesterday'));
$tDelta = abs($tNew - $tOld);
if ($tNew > $tOld) {
$status .= "теплее, чем вчера на " . chti($tDelta, 'градус', 'градуса', 'градусов') . ". ";
} elseif ($tNew < $tOld) {
$status .= "холоднее, чем вчера на " . chti($tDelta, 'градус', 'градуса', 'градусов') . ". ";
} elseif ($tNew == $tOld) {
$status .= "так же как и вчера. ";
}
$h = round(gg("ow_fact.humidity"));
$status .= "Относительная влажность " . chti($h, 'процент', 'процента', 'процентов') . ". ";
$pressure = (float) gg("ow_fact.pressure_mmhg");
if ($pressure < 738) {
$status .= 'Атмосферное давление пониженное';
} elseif ($pressure > 768) {
$status .='Атмосферное давление повышенное';
} else {
$status .= 'Атмосферное давление в пределах нормы';
}
$status .= " (" . chti(round($pressure), 'миллиметр', 'миллиметра', 'миллиметров') . " ртутного столба). ";
// ветер
$WindSpeed = (float) gg("ow_fact.wind_speed");
if ($WindSpeed < 1) {
$status .= "Ветра нет";
} elseif ($WindSpeed < 2) {
$status .= "Легкий ветер, ";
} elseif ($WindSpeed < 5) {
$status .= "Слабый ветер";
} elseif ($WindSpeed < 8) {
$status .= "Умеренный ветер";
} elseif ($WindSpeed < 10) {
$status .= "Свежий ветер";
} elseif ($WindSpeed < 14) {
$status .= "Сильный ветер";
} elseif ($WindSpeed < 17) {
$status .= "Очень сильный ветер";
} elseif ($WindSpeed < 21) {
$status .= "Ветер очень-очень сильный";
} elseif ($WindSpeed < 28) {
$status .= "Шторм";
} else {
$status .= "Ураган";
}
if ($WindSpeed >= 1) {
$status .= " (" . chti(round($WindSpeed), 'метр', 'метра', 'метров') . " в секунду), ";
$windDirections = array('севера', 'северо-востока', 'востока', 'юго-востока', 'юга', 'юго-запада', 'запада', 'северо-запада', 'севера');
$degree = gg('ow_fact.wind_direction');
$WindDir = $windDirections[round($degree / 45)];
$status .= " дующий с " . $WindDir;
}
$status .= ". ";
// Прогноз погоды на сегодня
if (timeBetween("01:00", "10:00")) {
$status .= "Сегодня утром ожидается ";
$w = round(gg("ow_day0.temp_morn"));
} elseif (timeBetween("10:00", "14:00")) {
$status .= "Сегодня днем ожидается ";
$w = round(gg("ow_day0.temp_day"));
} elseif (timeBetween("14:00", "20:00")) {
$status .= "Сегодня вечером ожидается ";
$w = round(gg("ow_day0.eve"));
} else {
$status .= "Сегодня ночью ожидается ";
$w = round(gg("ow_day0.temp_night"));
}
$status .= chti($w, 'градус', 'градуса', 'градусов') . " цельсия, " . gg("ow_day0.weather_type") . ". ";
// Погода на завтра
$w = round(gg("ow_day1.temperature"));
$status .= 'Завтра ожидается ' . chti($w, 'градус', 'градуса', 'градусов') . " цельсия, ";
$status .= gg("ow_day1.weather_type") . ".";
say($status, 1);
Последний раз редактировалось Dark_Veter Пт май 19, 2017 11:40 am, всего редактировалось 1 раз.
- За это сообщение автора Dark_Veter поблагодарили (всего 4):
- lanket (Чт май 18, 2017 4:23 pm) • Alex77 (Чт май 18, 2017 9:31 pm) • serghei (Чт май 18, 2017 9:39 pm) • directman66 (Пт май 19, 2017 6:09 am)
- Рейтинг: 4.65%
Debian GNU/Linux 7.9 (wheezy), версия 0.9.0b, Connect
-
- Сообщения: 215
- Зарегистрирован: Вс мар 05, 2017 2:18 pm
- Благодарил (а): 21 раз
- Поблагодарили: 6 раз
Re: Модуль - Погода от OpenWeatherMap
Скажите а как и куда добавить chti функцию?
и как вы получили ow_fact.realFell такого свойства у меня нет в стандартном компоненте
и как вы получили ow_fact.realFell такого свойства у меня нет в стандартном компоненте
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Модуль - Погода от OpenWeatherMap
А для особо начинающего юзера ------ куда вставить этот код ?? )))) . ( Погода работает отлично. Алиса болтает без проблем.)
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
-
- Сообщения: 230
- Зарегистрирован: Чт фев 12, 2015 2:34 pm
- Благодарил (а): 36 раз
- Поблагодарили: 6 раз
Re: Модуль - Погода от OpenWeatherMap
Создай сценарий с этим кодом и отправь на выполнение по какому ни-буть условиюserghei писал(а):А для особо начинающего юзера ------ куда вставить этот код ?? )))) . ( Погода работает отлично. Алиса болтает без проблем.)
например создаем сценарий погода туда вставляем код, сохраняем. Заходим в шаблоны поведения пишем шаблон скажи погоду
и в строке выполнить при совпадении вставляем наш сценарий с кодом погоды. Потом через андроид приложение даем голосовую команду скажи погоду и Алиса говорит погоду
- Рейтинг: 1.16%
server i5, OS-Ubuntu Server 16., 1-wire
php 7, AMS,broadlink rm2,rm3 mini.
php 7, AMS,broadlink rm2,rm3 mini.