Получение онлайн прогноза погоды: различия между версиями

Материал из Sprut.hub Wiki
Нет описания правки
Метка: wikieditor
Нет описания правки
Строка 114: Строка 114:
<syntaxhighlight lang="js" line="1">
<syntaxhighlight lang="js" line="1">
global.ow_request();
global.ow_request();
if (global.ow.error && !global.ow.temp) {log.warn("Данных OpenWeather нет: {}", global.ow.error_code)} else {
if (global.ow.error && !global.ow.temp) {log.warn("Данных OpenWeather нет: {}", global.ow.error_code); global.sendToTelegram(["Данных OpenWeather нет","Причина: " +  global.ow.error_code])} else {


global.sendToTelegram([
global.sendToTelegram(["*Прогноз OpenWeather*",
      "☀️ Погода: " + global.ow.condition, ,
        "=================================",
      "☁️ Облачность: " + global.ow.clouds + "%",
        "Прогноз на *: " + global.ow.time + "*",
      "🔭 Видимость: " + global.ow.visibility + " м", ,
        "=================================",
      "🌡 Температура на улице: " + global.ow.temp + "°",
        "На улице *" + global.ow.condition + "*",
      "     Минимальная: " + global.ow.temp_min + "°",
        "Облачность: *" + global.ow.clouds + "%*",
      "     Максимальная: " + global.ow.temp_max + "°",
        "Видимость: *" + global.ow.visibility + " м.*",
      "     Ощущается как: " + global.ow.feels_like + "°", ,
        "---------------------------------------------",
      "💧 Влажность: " + global.ow.hum + "%",
        "Температура (прогноз):* " + global.ow.temp + " °C*",
      "🩺 Давление: " + global.ow.pressure + " мм.рт.ст.", ,
        "Ощущается:* " + global.ow.feels_like +" °C*",
      "💨 Скорость ветра: " + global.ow.wind + " м/с",
        "---------------------------------------------",       
      "🧭 Напревление ветра: " + global.ow.wind_deg_text,
        "Минимальная: *" + global.ow.temp_min + "°C*",
      "🌬 Порывы ветра: " + global.ow.gust + " м/с", ,
        "Максимальная: *" + global.ow.temp_max + "°C*",
      "🌅 Восход: " + global.ow.sunrise,
        "---------------------------------------------",      
      "🌇 Закат: " + global.ow.sunset
        "Относительная влажность:* " + global.ow.hum + " %*",
    ]);
        "---------------------------------------------",
        "Атмосферное давление: *" + global.ow.pressure + " мм.рт.ст.*",
        "---------------------------------------------",
        "Ветер: *" + global.ow.wind_deg_text +"*",  
        "Скорость ветра: *" + global.ow.wind + " м/с*",  
        "С порывами до: *" + global.ow.gust + " м/с*",
        "---------------------------------------------",
        "Восход: *" + global.ow.sunrise +"*",
        "Закат:   *" + global.ow.sunset +"*",
        "=================================",
        ]);
}
}
</syntaxhighlight>Скачать шаблон [https://wiki.spruthub.ru/images/c/c6/%D0%A8%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD_%D1%81%D1%86%D0%B5%D0%BD%D0%B0%D1%80%D0%B8%D1%8F_OpenWeather_%D0%B2_%D0%A2%D0%B5%D0%BB%D0%B5%D0%B3%D1%80%D0%B0%D0%BC.json сценария OpenWeather в Telegram]
</syntaxhighlight>Скачать шаблон [https://wiki.spruthub.ru/images/c/c6/%D0%A8%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD_%D1%81%D1%86%D0%B5%D0%BD%D0%B0%D1%80%D0%B8%D1%8F_OpenWeather_%D0%B2_%D0%A2%D0%B5%D0%BB%D0%B5%D0%B3%D1%80%D0%B0%D0%BC.json сценария OpenWeather в Telegram]



Версия от 18:50, 5 декабря 2022

Статья находится на стадии заполнения по причине разработки сценариев

OpenWeather

  • global.ow.temp - Температура
  • global.ow.hum - Влажность
  • global.ow.pressure - Давление (мм. рт. ст.)
  • global.ow.wind - Скорость ветра (м/с)
  • global.ow.gust - Порывы ветра (м/с)
  • global.ow.wind_deg - Направление ветра (в градусах)
  • global.ow.wind_deg_text - Направление ветра в текстовом формате
  • global.ow.feels_like - Температура (Ощущается)
  • global.ow.temp_min - Минимальная температура
  • global.ow.temp_max - Максимальная температура
  • global.ow.clouds - Уровень облачности (%)
  • global.ow.visibility - Видимость (м)
  • global.ow.condition - Описание погоды (текстовое, для использования в Телеграм)
  • global.ow.sunrise - Время восхода
  • global.ow.sunset - Время заката

Yr.No

  • global.yr.time - Время прогноза
  • global.yr.pressure - Атмосферное давление
  • global.yr.temp - Температура
  • global.yr.cloud - Уровень облачности (%)
  • global.yr.dewpoint - Точка росы
  • global.yr.fog - Уровень тумана (%)
  • global.yr.hum - Относительная влажность
  • global.yr.uv - Уровень ультрафиолета
  • global.yr.wind_deg - Направление ветра (в градусах)
  • global.yr.wind_dir - Направление ветра (текстовое)
  • global.yr.wind - Скорость ветра
  • global.yr.condition_1_hour - Состояние погоды в ближайший час
  • global.yr.condition_6_hours - Состояние погоды в ближайшие 6 часов
  • global.yr.condition_6_hours - Состояние погоды в ближайшие 12 часов
  • global.yr.temp_max_6_hours - Максимальная температура в ближайшие 6 часов
  • global.yr.temp_min_6_hours - Минимальная температура в ближайшие 6 часов
  • global.yr.prec - Уровень осадков в ближайшие 6 часов

AccuWeather

  • global.acc.condition - Описание погоды (текстовое, для использования в Телеграм)
  • global.acc.cloud - Уровень облачности (%)
  • global.acc.temp - Температура
  • global.acc.temp_min - Минимальная температура
  • global.acc.temp_max - Максимальная температура
  • global.acc.real_temp - Температура RealTemp (зарегистрированная торговая марка AccuWeather)
  • global.acc.real_shade - Температура RealTemp в тени
  • global.acc.apparent_temp - Температура (Ощущается)
  • global.acc.wind_chill_temp - Температура (Ощущается открытой кожей)
  • global.acc.hum - Влажность
  • global.acc.indoor_hum - Влажность воздуха попадающего в помещение с улицы
  • global.acc.dewpoint - Точка росы
  • global.acc.uv - Уровень ультрафиолета
  • global.acc.uv_text - Уровень ультрафиолета (текстовое, для использования в Телеграм)
  • global.acc.wind - Скорость ветра (м/с)
  • global.acc.gust - Порывы ветра (м/с)
  • global.acc.wind_dir - направление ветра (английский символ)
  • global.acc.wind_dir_text - направление ветра (текстовое)
  • global.acc.wind_deg - направление ветра (в градусах)
  • global.acc.wind_deg_text - направление ветра (текстовое, вычисленное из градусов)
  • global.acc.visibility - видимость (км)
  • global.acc.pressure - атмосферное давление (мм.рт.ст.)
  • global.acc.precip - уровень осадков (мм)

Яндекс

Текущий прогноз

  • global.ya.condition - Описание погоды (текстовое, для использования в Телеграм)
  • global.ya.moon_text - Фаза луны (текстовое поле для использования в Телеграм)
  • global.ya.temp - Температура
  • global.ya.feels_like - Температура (Ощущается)
  • global.ya.hum - Влажность
  • global.ya.wind_direction_ - Направление ветра (символ)
  • global.ya.wind_direction_text - Направление ветра (текстовое поле для использования в Телеграм)
  • global.ya.wind - Скорость ветра (м/с)
  • global.ya.gust - Порывы ветра (м/с)
  • global.ya.sunrise - Время восхода
  • global.ya.sunset - Время заката

Прогноз на следующий период суток (Если текущий период день, то на вечер)

  • global.ya.part_1_name - Наименование периода суток
  • global.ya.condition_1 - Описание погоды
  • global.ya.temp_min_1 - Минимальная температура
  • global.ya.temp_max_1 - Максимальная температура
  • global.ya.feels_like_1 - Температура (Ощущается)
  • global.ya.hum_1 - Влажность
  • global.ya.wind_direction_1_text - Направление ветра (текстовое поле для использования в Телеграм)
  • global.ya.wind_direction_1 - Направление ветра (символ)
  • global.ya.wind_1 - Скорость ветра (м/с)
  • global.ya.gust_1 - Порывы ветра (м/с)
  • global.ya.prec_1 - Вероятность осадков
  • global.ya.prec_period_1 - Продолжительность осадков
  • global.ya.prec_mm_1 - Уровень осадков (мм)

Прогноз на последующий период суток (Если текущий период день, то на ночь)

  • global.ya.part_2_name - Наименование периода суток
  • global.ya.condition_2 - Описание погоды (текстовое, для использования в Телеграм)
  • global.ya.temp_min_2 - Минимальная температура
  • global.ya.temp_max_2 - Максимальная температура
  • global.ya.feels_like_2 - Температура (Ощущается)
  • global.ya.hum_2 - Влажность
  • global.ya.wind_direction_2_text - Направление ветра (текстовое поле для использования в Телеграм)
  • global.ya.wind_dir_2 - Направление ветра (символ)
  • global.ya.wind_2 - Скорость ветра (м/с)
  • global.ya.gust_2 - Порывы ветра (м/с)
  • global.ya.prec_2 - Вероятность осадков
  • global.ya.prec_period_2 - Продолжительность осадков
  • global.ya.prec_mm_2 - Уровень осадков (мм)

Отправка показаний OpenWeather в Telegram

global.ow_request();
if (global.ow.error && !global.ow.temp) {log.warn("Данных OpenWeather нет: {}", global.ow.error_code); global.sendToTelegram(["Данных OpenWeather нет","Причина: " +  global.ow.error_code])} else {

global.sendToTelegram(["*Прогноз OpenWeather*",
        "=================================",
        "Прогноз на *: " + global.ow.time + "*",
        "=================================",
        "На улице *" + global.ow.condition + "*",
        "Облачность: *" + global.ow.clouds + "%*",
        "Видимость: *" + global.ow.visibility + " м.*",
        "---------------------------------------------",
        "Температура (прогноз):* " + global.ow.temp + " °C*",
        "Ощущается:* " + global.ow.feels_like +" °C*",
        "---------------------------------------------",        
        "Минимальная: *" + global.ow.temp_min + "°C*",
        "Максимальная: *" + global.ow.temp_max + "°C*",
        "---------------------------------------------",        
        "Относительная влажность:* " + global.ow.hum + " %*",
        "---------------------------------------------",
        "Атмосферное давление: *" + global.ow.pressure + " мм.рт.ст.*",
        "---------------------------------------------",
        "Ветер: *" + global.ow.wind_deg_text +"*", 
        "Скорость ветра: *" + global.ow.wind + " м/с*", 
        "С порывами до: *" + global.ow.gust + " м/с*",
        "---------------------------------------------",
        "Восход: *" + global.ow.sunrise +"*",
        "Закат:    *" + global.ow.sunset +"*",
        "=================================",
        ]);
}

Скачать шаблон сценария OpenWeather в Telegram

Отправка показаний Яндекс.Погоды в Telegram

global.ya_request();
if (global.ya.error && !global.ya.temp) {log.warn("Данных Yandex нет: {}", global.ya.error_code)} else {
global.sendToTelegram(["Погода Яндекс:",
        "=================================",
        "=================================",
        global.ya.condition,
        "---------------------------------------------",
        "Температура (факт):* " + Hub.getCharacteristicValue(10,15) + " °C*",
        "Температура (прогноз):* " + global.ya.temp + " °C*",
        "Ощущается:* " + global.ya.feels_like +" °C*",
        "Относительная влажность:* " + global.ya.hum + " %*",
        "---------------------------------------------",
        "Ветер: *" + global.ya.wind_direction_text +"*", 
        "Скорость ветра: *" + global.ya.wind + " м/с*", 
        "С порывами до: *" + global.ya.gust + " м/с*",
        "---------------------------------------------",
        "Фаза луны: * " + global.ya.moon_text +"*",
        "---------------------------------------------",
        "Восход: *" + global.ya.sunrise +"*",
        "Закат:    *" + global.ya.sunset +"*",
        "=================================",
        "=================================",
        global.ya.part_1_name + " ожидается:",
        global.ya.condition_1,
        "---------------------------------------------",
        "Вероятность осадков: *" + global.ya.prec_1 + " %*",
        "Длительность осадков: *" + global.ya.prec_period_1 + " минут*",
        "Количество осадков: *" + global.ya.prec_mm_1 + " мм.*",
        "---------------------------------------------",
        "Температура (мин):* " + global.ya.temp_min_1 + " °C*",
        "Температура (макс):* " + global.ya.temp_max_1 + " °C*",
        "Ощущается:* " + global.ya.feels_like_1 +" °C*",
        "Относительная влажность:* " + global.ya.hum_1 + " %*",
        "---------------------------------------------",
        "Ветер: *" + global.ya.wind_direction_1_text +"*", 
        "Скорость ветра: *" + global.ya.wind_1 + " м/с*", 
        "С порывами до: *" + global.ya.gust_1 + " м/с*",
        "=================================",
        "=================================",
        global.ya.part_2_name + " ожидается:",
        global.ya.condition_2,
        "---------------------------------------------",
        "Вероятность осадков: *" + global.ya.prec_2 + " %*",
        "Длительность осадков: *" + global.ya.prec_period_2 + " минут*",
        "Количество осадков: *" + global.ya.prec_mm_2 + " мм.*",
        "---------------------------------------------",
        "Температура (мин):* " + global.ya.temp_min_2 + " °C*",
        "Температура (макс):* " + global.ya.temp_max_2 + " °C*",
        "Ощущается:* " + global.ya.feels_like_2 +" °C*",
        "Относительная влажность:* " + global.ya.hum_2 + " %*",
        "---------------------------------------------",
        "Ветер: *" + global.ya.wind_direction_2_text +"*", 
        "Скорость ветра: *" + global.ya.wind_2 + " м/с*", 
        "С порывами до: *" + global.ya.gust_2 + " м/с*",
        "---------------------------------------------",
        ]);
}

Скачать шаблон сценария Яндекс.Погоды в Telegram