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.
    • S
      Securbond last edited by

      не работает :oops: :? 😢

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

        @Securbond:

        не работает :oops: :? 😢 `
        Выложи весь код, под спойлер только

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

          Наметился прогресс

          ! 939_777.jpg

          я подозреваю, что что бы проговаривал, нужно еще что то в скрипт писать?

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

            Понимаю что в последней строке ерунду написал..((

            ! createState('forecast.today','');
            ! createState('forecast.tomorrow','');
            ! createState('forecast.dayAfterTomorrow','');
            ! var request = require('request');
            ! function getForecast() {
            ! request ('http://meteoinfo.ru/rss/forecasts/26063', function (error, response, body) {
            ! // Получаем ответ
            ! 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: "* * * * "}, getForecast);
            ! setState ({time: "
            * * * *"},idSayIt, 'Прогноз погоды на сегодня: '+getState("forecast.today").val);</title></item></description>
            7614_screenshot_20181109-163635_samsung_internet.jpg
            7614_inked20181108_062959_li.jpg
            7614_20181109_162551.jpg

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

              @Securbond:

              Наметился прогресс

              ! filename="777.JPG" index="0">~~

              я подозреваю, что что бы проговаривал, нужно еще что то в скрипт писать? `
              Ну вот, сам скрипт то теперь работает.

              Добавь к нему эти строки

              on({id: 'javascript.0.forecast.today', change: 'any'}, function (obj) {
              	setState('sayit.0.tts.text', obj.newState.val);
              });
              

              А вообще скрипт для проговаривания времени выкладывали тут на форуме http://forum.iobroker.net/viewtopic.php?f=26&t=495

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

                пишет такую ошибку -

                sayit.0 2015-12-18 21:15:01 error sayit.0 Cannot get file: received file is too short

                sayit.0 2015-12-18 21:15:01 info sayit.0 saying: Облачно, небольшой дождь. Температура ночью 2°, днём 6°. Ветер западный, 5 м/с.

                sayit.0 2015-12-18 21:15:00 warn sayit.0 Same text in less than half a second.. Strange. Ignore it.

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

                  @Securbond:

                  пишет такую ошибку -

                  sayit.0 2015-12-18 21:15:01 error sayit.0 Cannot get file: received file is too short

                  sayit.0 2015-12-18 21:15:01 info sayit.0 saying: Облачно, небольшой дождь. Температура ночью 2°, днём 6°. Ветер западный, 5 м/с.

                  sayit.0 2015-12-18 21:15:00 warn sayit.0 Same text in less than half a second.. Strange. Ignore it. `
                  У тебя скрипт случайно не каждую секунду отрабатывает?

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

                    по логам, каждую минуту. но проигрывает только "динь дон" (предварительный сигнал прописанный в настройках драйвера.

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

                      @Securbond:

                      по логам, каждую минуту. но проигрывает только "динь дон" (предварительный сигнал прописанный в настройках драйвера. `
                      А драйвер syit настраивал?

                      Для Ivona регистрация тут https://www.ivona.com/us/for-business/speech-cloud/
                      266___________.png

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

                        У меня гугл стоял..

                        зарегистрировал ивону, теперь пишет -

                        sayit-0 2015-12-18 21:46:01 warn Received file is too short: {"Message":"Authentication failed"}

                        Подожду, там вроде пишут что через 30 мин начинает работать.

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

                          @Securbond:

                          У меня гугл стоял..

                          зарегистрировал ивону, теперь пишет -

                          sayit-0 2015-12-18 21:46:01 warn Received file is too short: {"Message":"Authentication failed"} `
                          Видимо не может авторизоваться

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

                            заговорила болтушка :lol:

                            Спасибо!!! буду дальше разбираться. Есть ардуины шилды и т.п.

                            Очень хочется заставить все это работать.

                            1 Reply Last reply Reply Quote 0
                            • H
                              Haus last edited by

                              Почему Танька всё проговаривает красиво а ветер говорит "четыре метра флеш с" ?

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

                                @Haus:

                                Почему Танька всё проговаривает красиво а ветер говорит "четыре метра флеш с" ? `

                                result.push({date: date[t].replace("<title>", "").replace("</title>", ""), desc: desc[t].replace("<description>", "").replace("</description>", "").replace(/м\/с\./g, "м в секунду.").replace(/Атмосферное давление ночью (.*) мм рт.ст. /g, "").replace(/Вероятность осадков (.*)\%/g, "") });
                                
                                1 Reply Last reply Reply Quote 0
                                • H
                                  Haus last edited by

                                  @instalator:

                                  @Haus:

                                  Почему Танька всё проговаривает красиво а ветер говорит "четыре метра флеш с" ? `

                                  result.push({date: date[t].replace("<title>", "").replace("</title>", ""), desc: desc[t].replace("<description>", "").replace("</description>", "").replace(/м\/с\./g, "м в секунду.").replace(/Атмосферное давление ночью (.*) мм рт.ст. /g, "").replace(/Вероятность осадков (.*)\%/g, "") });
                                  ```` `  
                                  

                                  Спасибо а то как нерусская 😮

                                  1 Reply Last reply Reply Quote 0
                                  • V
                                    vtec last edited by

                                    У тебя скорее всего старая версия скрипта была, в первом топике сейчас исправленная.

                                    1 Reply Last reply Reply Quote 0
                                    • H
                                      Haus last edited by

                                      Vtec, спасибо за скрипт, работает отлично. С наступающим.

                                      1 Reply Last reply Reply Quote 0
                                      • H
                                        Haus last edited by

                                        @vtec:

                                        У тебя скорее всего старая версия скрипта была, в первом топике сейчас исправленная. `
                                        К стати проверил в первом топике неисправленная 😉

                                        1 Reply Last reply Reply Quote 0
                                        • H
                                          Haba last edited by

                                          Может кому пригодится.

                                          Парсер текущей погоды с сайта realmeteo.ru

                                          ! ````
                                          createState('forecast.curr_temp',''); // Текущая температура
                                          createState('forecast.curr_humidity',''); // Текущая влажность
                                          createState('forecast.curr_wind_speed',''); // Текущая скорость ветра
                                          ! var request = require('request');
                                          ! function getWeatherOutside() {
                                          request ('http://www.realmeteo.ru/krasnodar/1/current', function (error, response, body) {
                                          // Получаем ответ
                                          if (!error && response.statusCode == 200) {
                                          // Парсим данные
                                          var current = body.match(/(-?[\d.+-]+)([^рт]+?)</span>/g);
                                          // Если данные существуют, то обрабатываем
                                          if (current) {
                                          current.splice(4, current.length - 4); // Удаляем лишние повторы
                                          current.splice(1, 1); // Удаляем лишнюю строку (ощущаемая температура)
                                          var result = [];
                                          for(var t = 0; t < current.length; t++) {
                                          current[t] = current[t].replace("", "").replace("", ""); //удаляем теги
                                          }
                                          //Сохраняем результат
                                          setState('forecast.curr_temp', current[0]);
                                          setState('forecast.curr_humidity', current[1]);
                                          setState('forecast.curr_wind_speed', current[2]);
                                          }
                                          }
                                          });
                                          }
                                          ! // Запускаем каждые 20 мин
                                          on({time: "*/20 * * * *"}, getWeatherOutside);

                                          1 Reply Last reply Reply Quote 0
                                          • V
                                            vtec last edited by

                                            Поправил скрипт в шапке, работал не совсем корректно.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            794
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            weather forecast
                                            9
                                            45
                                            12628
                                            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