Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. Скрипты
    5. ioBroker скрипты
    6. Погода на три дня

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Погода на три дня

    This topic has been deleted. Only users with topic management privileges can see it.
    • V
      vtec last edited by

      Да тут половина Bluefox написал 🙂

      Я допилил и протестировал.

      А в виз я вообще полный ноль, пару раз открывал смотрел, так дальше и не ушел :oops:

      Если бы кто объяснил с самых низов, как например хотя бы создать кнопку, которая изменяла бы свое состояние от выключателя, был бы благодарен 😉

      1 Reply Last reply Reply Quote 0
      • S
        spectrekr last edited by

        А может стоит задуматься о создании драйвера, на подобии yr.no было бы удобно. А то все скриптами, да скриптами 🙂

        1 Reply Last reply Reply Quote 0
        • aurodionov
          aurodionov last edited by

          Так оно и так работает, спарсили скриптом , получили на выходе три переменные. Потом хоть проговаривай ,хоть отображай в виз.

          Пишу с пульта….

          1 Reply Last reply Reply Quote 0
          • I
            instalator last edited by

            У всех с такой ошибкой работает?
            266_zx.png

            1 Reply Last reply Reply Quote 0
            • Bluefox
              Bluefox last edited by

              Символы "<" и ">" не обязательно писать с эскейпом.

              1 Reply Last reply Reply Quote 0
              • aurodionov
                aurodionov last edited by

                У кого работает,подскажите что исправить. Вторые сутки рублюсь в игру поставь и настрой, уже туплю помаленьку.

                1 Reply Last reply Reply Quote 0
                • I
                  instalator last edited by

                  @aurodionov:

                  У кого работает,подскажите что исправить. Вторые сутки рублюсь в игру поставь и настрой, уже туплю помаленьку. `
                  Работает. а вчем проблема?

                  У меня такой код

                  ! ````
                  createState('forecast.today','');
                  createState('forecast.tomorrow','');
                  createState('forecast.dayAfterTomorrow','');
                  ! var request = require('request');
                  ! function getForecast() {
                  request ('http://meteoinfo.ru/rss/forecasts/29838', function (error, response, body) { //29838 - Барнеаполь
                  // Получаем ответ
                  if (!error && response.statusCode == 200) {
                  // Парсим данные
                  var desc = body.match(/<description>(.)</description>/g);
                  var date = body.match(/<item><title>(.
                  )</title>/g);
                  // Если данные существуют, то обрабатываем
                  if (desc && date) {
                  // Удаляем лишнюю строку из desc
                  desc.splice(0, 1);
                  var result = [];
                  for(var t = 0; t < date.length; t++) {
                  // Окончательно формируем строку с прогнозом (удаляем теги и не нужную информацию)
                  result.push({date: date[t].replace("<title>", "").replace("</title>", ""), desc: desc[t].replace("<description>", "").replace("</description>", "").replace(/м/c/g, "м в секунду").replace(/Атмосферное давление ночью (.) мм рт.ст. /g, "").replace(/Вероятность осадков (.)%/g, "") });
                  }

                              // Сохраняем данные
                              for(var t = 0; t < result.length; t++) {
                                  switch (t) {
                                      case 0:
                                          // Прогноз на сегодня
                                          setState('forecast.today', result[0].desc);
                                          break;
                                      case 1:
                                          // Прогноз на завтра
                                          setState('forecast.tomorrow', result[1].desc);
                                          break;
                                      case 2:
                                          // Прогноз на послезавтра
                                          setState('forecast.dayAfterTomorrow', result[2].desc);
                                          break;
                                  }
                                  log(result[t].date + " => " + result[t].desc);
                              }
                          }
                      }
                  });
                  

                  }

                  ! // Запускаем в 45 минут через 2 часа
                  on({time: "45 */2 * * *"}, getForecast);</title></item></description>

                  1 Reply Last reply Reply Quote 0
                  • aurodionov
                    aurodionov last edited by

                    instalator, ругается как у Вас на скрине.

                    1 Reply Last reply Reply Quote 0
                    • I
                      instalator last edited by

                      @aurodionov:

                      instalator, ругается как у Вас на скрине. `
                      Да, это он на экранирование символов, но работает.

                      1 Reply Last reply Reply Quote 0
                      • S
                        Securbond last edited by

                        Извините, но пока разбираюсь будут очень глупые вопросы.

                        А куда прописывать этот скрипт что бы он работал ?

                        Спасибо.

                        1 Reply Last reply Reply Quote 0
                        • S
                          spectrekr last edited by

                          @Securbond:

                          Извините, но пока разбираюсь будут очень глупые вопросы.

                          А куда прописывать этот скрипт что бы он работал ?

                          Спасибо. `
                          Установить драйвер "Javascript/Coffescript Script Engine". http://www.iobroker.net/?page_id=560&lang=ruНа вкладке скрипты создать новый и туда вставить код.

                          1 Reply Last reply Reply Quote 0
                          • S
                            Securbond last edited by

                            @spectrekr:

                            @Securbond:

                            Извините, но пока разбираюсь будут очень глупые вопросы.

                            А куда прописывать этот скрипт что бы он работал ?

                            Спасибо. Установить драйвер "Javascript/Coffescript Script Engine". [http://www.iobroker.net/?page_id=560&amp;lang=ru](http://www.iobroker.net/?page_id=560&amp;lang=ru)На вкладке скрипты создать новый и туда вставить код.

                            Спасибо, вроде добавил. Может еще подскажешь как проверить вообще работает драйвер голоса или нет? (драйвер установлен).

                            Молчит как рыба. пробовал да же интервал менять… Молчит...((

                            1 Reply Last reply Reply Quote 0
                            • I
                              instalator last edited by

                              @Securbond:

                              @spectrekr:

                              @Securbond:

                              Извините, но пока разбираюсь будут очень глупые вопросы.

                              А куда прописывать этот скрипт что бы он работал ?

                              Спасибо. Установить драйвер "Javascript/Coffescript Script Engine". [http://www.iobroker.net/?page_id=560&amp;lang=ru](http://www.iobroker.net/?page_id=560&amp;lang=ru)На вкладке скрипты создать новый и туда вставить код.

                              Спасибо, вроде добавил. Может еще подскажешь как проверить вообще работает драйвер голоса или нет? (драйвер установлен). `
                              266_121212121.png

                              1 Reply Last reply Reply Quote 0
                              • S
                                Securbond last edited by

                                @instalator:

                                @Securbond:

                                @spectrekr:

                                Установить драйвер "Javascript/Coffescript Script Engine". http://www.iobroker.net/?page_id=560&lang=ruНа вкладке скрипты создать новый и туда вставить код. `

                                Спасибо, вроде добавил. Может еще подскажешь как проверить вообще работает драйвер голоса или нет? (драйвер установлен). filename="121212121.png" index="0">~~

                                Я правильно понимаю что если я напишу в конце скрипта - on({time: "37 */1 * * *"}, getForecast);

                                то он должен говорить погоду каждый час в 37 минут (11:37, 12:37 ….. и т.п.)

                                1 Reply Last reply Reply Quote 0
                                • I
                                  instalator last edited by

                                  @Securbond:

                                  @instalator:

                                  @Securbond:

                                  Спасибо, вроде добавил. Может еще подскажешь как проверить вообще работает драйвер голоса или нет? (драйвер установлен). filename="121212121.png" index="0">~~

                                  Я правильно понимаю что если я напишу в конце скрипта - on({time: "37 */1 * * *"}, getForecast);

                                  то он должен говорить погоду каждый час в 37 минут (11:37, 12:37 ….. и т.п.) `
                                  "37 * * * *"

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    Securbond last edited by

                                    Видимо я туго соображаю, но скрипт у меня молчит.

                                    Может нужно эти переменные где то создавать ? - forecast.today / forecast.tomorrow / forecast.dayAfterTomorrow

                                    1 Reply Last reply Reply Quote 0
                                    • I
                                      instalator last edited by

                                      @Securbond:

                                      Видимо я туго соображаю, но скрипт у меня молчит `
                                      А он включен?

                                      В лог что нибудь пишет?
                                      266___________.png

                                      1 Reply Last reply Reply Quote 0
                                      • I
                                        instalator last edited by

                                        @Securbond:

                                        Может нужно эти переменные где то создавать ? - forecast.today / forecast.tomorrow / forecast.dayAfterTomorrow `
                                        Они и создаются этими строками :

                                        createState('forecast.today','');
                                        createState('forecast.tomorrow','');
                                        createState('forecast.dayAfterTomorrow','');
                                        
                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          Securbond last edited by

                                          939_444.jpg

                                          Это ? (скрипт активен) настроен для отладки на каждую минуту проговаривать)

                                          1 Reply Last reply Reply Quote 0
                                          • I
                                            instalator last edited by

                                            @Securbond:

                                            filename="444.JPG" index="1">~~

                                            Это ? (скрипт активен) настроен для отладки на каждую минуту проговаривать) `
                                            А js активен?
                                            filename="Безымянный.png" index="0">~~

                                            Попробуй добавить после строки````
                                            function getForecast() {

                                            log('Прошла минута');

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            602
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            weather forecast
                                            9
                                            45
                                            12527
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo