Как погоду настроить

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

Модератор: immortal

ErmolenkoM
Сообщения: 560
Зарегистрирован: Ср сен 04, 2013 10:31 am
Откуда: Самара
Контактная информация:

Re: Как погоду настроить

Сообщение ErmolenkoM »

в админке создать скрипт назвать sayweather заполнить тело кодом выше.
в обьекте Таймер в метода OnNewMinut добавить вызов

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

runScript("sayweather");
Наслаждаться ;-)

PS. Проговаривает через колонки сервака, еще выводит в лог.
aka msh555
Cubian на Cubietruck, Connect
triada13
Сообщения: 242
Зарегистрирован: Вт мар 11, 2014 8:36 pm
Откуда: Челябинск

Re: Как погоду настроить

Сообщение triada13 »

PAV писал(а):Прикручиваем погоду Yandex: http://computer-service.pro/smf/index.php?topic=30.0
Код для Москвы:
Сценарий

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

$city_id=27612;
$data_file="http://export.yandex.ru/weather-ng/forecasts/$city_id.xml?".rand(); // адрес xml файла

$xml = simplexml_load_file($data_file); // раскладываем xml на массив

$temp=$xml->fact->temperature;
// Если значение температуры положительно, для наглядности добавляем "+"
if ($temp>0) {$temp='+'.$temp;}
sg("Moscow.Temp",$temp);
sg("Moscow.City",Москва);
sg("Moscow.Type",$xml->fact->weather_type);
sg("Moscow.Pressure",$xml->fact->pressure);
sg("Moscow.Humidity",$xml->fact->humidity);
sg("Moscow.WindSpeed",$xml->fact->wind_speed);
sg("Moscow.Image",$xml->fact->image);
sg("Moscow.UpTime",$xml->fact->uptime);


$dir = $xml->fact->wind_direction;
switch ($dir){
   case 's':
     $dir="южное";
     break;
   case 'n':
     $dir="северное";
     break;
   case 'w':
     $dir="западное";
     break;
   case 'e':
     $dir="восточное";
     break;
   case 'sw':
     $dir="юго-западное";
     break;
   case 'nw':
     $dir="северо-западное";
     break;
   case 'calm':
     $dir="штиль";
     break;
}
sg("Moscow.WindDir",$dir);
sg("Moscow.SunRise",$xml->day[0]->sunrise);
sg("Moscow.SunSet",$xml->day[0]->sunset);
 
Код Меню управления

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

<div align="center"><font size="5" color="brown" face="Arial"><b>Погода Yandex</b></font></div><br><br>
<img src="http://img.yandex.net/i/wiz%Moscow.Image%.png" alt="%Moscow.Type%" title="%Moscow.Type%"> %Moscow.Type% <font size="5" color="brown" face="Arial">%Moscow.Temp%</font><sup>o</sup>C<br>
Давление  <font size="5" color="brown" face="Arial">%Moscow.Pressure%</font> мм.рт.ст<br>
Влажность <font size="5" color="brown" face="Arial">%Moscow.Humidity%</font> %<br>
Скорость ветра <font size="5" color="brown" face="Arial">%Moscow.WindSpeed%</font>  м/с %Moscow.WindDir%<br>
<b>Восход солнца <font size="5" color="brown" face="Arial">%Moscow.SunRise%</font></b><br>
<b>Заход солнца <font size="5" color="brown" face="Arial">%Moscow.SunSet%</font></b><br><br>
<b>Последнее обновление <font size="3" color="brown" face="Arial">%Moscow.UpTime%</font></b><br><br>
 
Подскажите а для Челябинска как подобное сделать?
Majordomo на Orange Pi Zero.
Аватара пользователя
adzam
Сообщения: 607
Зарегистрирован: Сб дек 08, 2012 10:28 pm
Откуда: Кишинев

Re: Как погоду настроить

Сообщение adzam »

В первую строку вставляешь свой код города
$city_id=27612;
Коды смотри здесь
Для яндекса http://weather.yandex.ru/static/cities.xml
Мои проекты здесь...https://connect.smartliving.ru/profile/41/blog213.htm
Если вам помогло какое-либо мое сообщение - не ленитесь пользоваться кнопкой СПАСИБО.
triada13
Сообщения: 242
Зарегистрирован: Вт мар 11, 2014 8:36 pm
Откуда: Челябинск

Re: Как погоду настроить

Сообщение triada13 »

adzam писал(а):В первую строку вставляешь свой код города
$city_id=27612;
Коды смотри здесь
Для яндекса http://weather.yandex.ru/static/cities.xml
Премного благодарен. Уже разобрался. :D
Не успел разобраться с одним вопросом, как тут же возник другой: А как создать график температуры на основе этого кода?
Majordomo на Orange Pi Zero.
ErmolenkoM
Сообщения: 560
Зарегистрирован: Ср сен 04, 2013 10:31 am
Откуда: Самара
Контактная информация:

Re: Как погоду настроить

Сообщение ErmolenkoM »

triada13 писал(а):А как создать график температуры на основе этого кода?
читать Вики http://smartliving.ru/Main/ModuleDrawGraphics
aka msh555
Cubian на Cubietruck, Connect
Limyr
Сообщения: 16
Зарегистрирован: Пн ноя 03, 2014 10:01 am

Re: Как погоду настроить

Сообщение Limyr »

Подскажите пожалуйста! А как получить полную информацию о погоде давлении и т.д с этого сайта http://ru-meteo.ru/penza ???? Распишите пожалуйсто по пунктам че куда жать и скрипты че где писать!! Заранее благодарен!
Аватара пользователя
adzam
Сообщения: 607
Зарегистрирован: Сб дек 08, 2012 10:28 pm
Откуда: Кишинев

Re: Как погоду настроить

Сообщение adzam »

Что-то у меня опять перестала обновляться погода с Sinoptika? а как у других ?
Может только у меня?
Мои проекты здесь...https://connect.smartliving.ru/profile/41/blog213.htm
Если вам помогло какое-либо мое сообщение - не ленитесь пользоваться кнопкой СПАСИБО.
Аватара пользователя
Amarok
Сообщения: 1434
Зарегистрирован: Пт дек 14, 2012 12:24 pm
Откуда: Россия, Нижняя Тура
Контактная информация:

Re: Как погоду настроить

Сообщение Amarok »

Кстати, да. С 13 ноября(

А, нет, вылечил. Надо в ссылке исправить HTTP на HTTPS
Моя Алиска живёт на Proxmox в Debian 12
sashmen
Сообщения: 27
Зарегистрирован: Ср ноя 05, 2014 11:21 pm

Re: Как погоду настроить

Сообщение sashmen »

msh555 писал(а):в админке создать скрипт назвать sayweather заполнить тело кодом выше.
в обьекте Таймер в метода OnNewMinut добавить вызов

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

runScript("sayweather");
Наслаждаться ;-)

PS. Проговаривает через колонки сервака, еще выводит в лог.
А как заставить обновлятся и болтать допустим
раз в 20мин или 10мин.
Сервер на raspberry pi Noolite SRF-10-1000, PT111, PU-411, mtrf-64-usb
Connect
ErmolenkoM
Сообщения: 560
Зарегистрирован: Ср сен 04, 2013 10:31 am
Откуда: Самара
Контактная информация:

Re: Как погоду настроить

Сообщение ErmolenkoM »

sashmen писал(а):
msh555 писал(а):в админке создать скрипт назвать sayweather заполнить тело кодом выше.
в обьекте Таймер в метода OnNewMinut добавить вызов

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

runScript("sayweather"); 
Наслаждаться ;-)

PS. Проговаривает через колонки сервака, еще выводит в лог.
А как заставить обновлятся и болтать допустим
раз в 20мин или 10мин.
onNewMinute

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

$h=(int)date('G',time());
$m=date('i',time());

if (($h>=8)) {
 if ($m=="00") {
   say(timeNow());
 }
}
 
приведенный выше код проговаривает время каждый час после восьми часов утра (включительно)
Нужно модифицировать его под 10 или 20 минут. Это не сложно. Удачи!
aka msh555
Cubian на Cubietruck, Connect
Ответить