Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Русский
  3. ioBroker
  4. Визуализация
  5. ioBroker.vis Драйвер
  6. Разные вопросы по Vis

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    660

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    5.7k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.5k

Разные вопросы по Vis

Geplant Angeheftet Gesperrt Verschoben ioBroker.vis Драйвер
218 Beiträge 20 Kommentatoren 70.9k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • BluefoxB Offline
    BluefoxB Offline
    Bluefox
    schrieb am zuletzt editiert von
    #116

    @Haus:

    @andrey99986:

    Ещё вопрос - как выбрать веб-страницу проекта которая будет грузиться по умолчанию? Чтобы не указывать "#имя_страницы" в урле каждый раз. `
    Первая созданная страница в проекте будет грузиться по умолчанию, изменить можно в

    opt/iobroker/iobroker-data/files/vis.0/main/vis-views.json переместив нужную страницу вперёд.

    При глобальных изменениях пере загружай сервер. `
    Ну это конечно слишком сложно. На самом деле я встроил механизм выбора первой странцы. И что то мне подсказывает, что именно этот механизм вызывает этот глюк.

    Можно выбрать одну страницу по умолчанию для каждого разрешения.

    Может ты несколько страниц пометил, как по умолчанию? Я подозреваю, что при быстром скролинге генерируется событие изменения разрешения экрана и система ищет страницу по умолчанию. Это и происходит.

    Решение проблемы. Убрать везде галочки "по умолчанию ".

    1 Antwort Letzte Antwort
    0
    • A Offline
      A Offline
      andrey99986
      schrieb am zuletzt editiert von
      #117

      @Bluefox:

      Решение проблемы. Убрать везде галочки "по умолчанию ". `

      Да - это решает проблему. Я в предыдущих постах написал об этом.

      1 Antwort Letzte Antwort
      0
      • BluefoxB Offline
        BluefoxB Offline
        Bluefox
        schrieb am zuletzt editiert von
        #118

        @andrey99986:

        Понятно что можно просто использовать {ObjectID} в коде js (клиентская сторона) и создавать ссылки.

        Усложню вопрос - нужно сгенерить ссылку в зависимости от IP адреса клиента.

        То есть надо при открытии страницы сделать проверку IP (в скриптах в Админке iobroker) и вернуть на эту страницу информацию какой IP (ЛВС или Инет).

        При чём надо иметь ввиду что могут быть одновременно открыты страницы как из ЛВС так и из Интернет.

        На клиентском js проверять IP нельзя, так как IP может быть за нат-ом и совпадать с ЛВС.

        Другими словами как сконвертировать php-код в iobroker?

        		$ip = $_SERVER['REMOTE_ADDR'];
        		$iPhone  = stripos($_SERVER['HTTP_USER_AGENT'],"iPhone");
        		$iPad    = stripos($_SERVER['HTTP_USER_AGENT'],"iPad");
        		$Android = stripos($_SERVER['HTTP_USER_AGENT'],"Android");
        		if (strpos($ip,'192.168.2.') !== false) 
        		{
                        if( $iPhone || $iPad ) 
        			{
        			   echo "[](\"http://192.168.2......)
        ````[](\"http://192.168.2......) `   [Если я правильно понимаю, то это возможно, но не совсем.
        

        У тебя нет доступа к socket.io. Так как только socket.io имеет информацию о настоящем ip адресе.

        Что ты хочешь сделать? Просто показать в виз ip адрес клиента? Не думаю, что это возможно без модификации socket.io.]("http://192.168.2......)

        1 Antwort Letzte Antwort
        0
        • A Offline
          A Offline
          andrey99986
          schrieb am zuletzt editiert von
          #119

          @Bluefox:

          Что ты хочешь сделать? Просто показать в виз ip адрес клиента? Не думаю, что это возможно без модификации socket.io. `

          Хочу чтобы на странице vis создавалась ссылка в зависимости от того, с какого адреса была открыта страница.

          Если клиент зашёл с той же ЛВС, где находится iobroker- создавалась ссылка на внутренний ресурс вида http://192.168..

          Если клиент зашёл c Интернет - создавалась ссылка на ресурс вида http://www…

          Ну ещё желательно определять в заголовках User Agent-а, чтобы создавать url-ы в зависимости от устройства с которого зашли.

          А то сейчас приходится делать 6 ссылок на просмотр видео:

          1. Если зашли с Desktop с ЛВС

          2. Если зашли с Desktop с Интернет

          3. Если зашли с Android с ЛВС

          4. Если зашли с Android с Интернет

          5. Если зашли с IOS с ЛВС

          6. Если зашли с IOS с Интернет

          На php можно было оставить на странице только одну ссылку.

          В iobroker нужны все шесть?

          1 Antwort Letzte Antwort
          0
          • BluefoxB Offline
            BluefoxB Offline
            Bluefox
            schrieb am zuletzt editiert von
            #120

            @andrey99986:

            @Bluefox:

            Что ты хочешь сделать? Просто показать в виз ip адрес клиента? Не думаю, что это возможно без модификации socket.io. `

            Хочу чтобы на странице vis создавалась ссылка в зависимости от того, с какого адреса была открыта страница.

            Если клиент зашёл с той же ЛВС, где находится iobroker- создавалась ссылка на внутренний ресурс вида http://192.168..

            Если клиент зашёл c Интернет - создавалась ссылка на ресурс вида http://www…

            Ну ещё желательно определять в заголовках User Agent-а, чтобы создавать url-ы в зависимости от устройства с которого зашли.

            А то сейчас приходится делать 6 ссылок на просмотр видео:

            1. Если зашли с Desktop с ЛВС

            2. Если зашли с Desktop с Интернет

            3. Если зашли с Android с ЛВС

            4. Если зашли с Android с Интернет

            5. Если зашли с IOS с ЛВС

            6. Если зашли с IOS с Интернет

            На php можно было оставить на странице только одну ссылку.

            В iobroker нужны все шесть? `
            Все что тебе надо. Можно отлично определить на клиенте. У меня сделано так, что по локалке я захожу без пароля, а по инету с паролем по https. Таким образом я могу отличить lan/wan, а тип клиента определяется js на раз два. Тебе надо понимать, что здесь используется отличная от php технология. Статические страницы и динамические данные могут поступать с двух разных источников. За счет этого достигается огромная скорость и гибкость. Тебе нельзя думать терминами php, но то что тебе надо сделать можно.

            Посмотри здесь я делаю что то похожее:

            https://iobroker.net:8080/vis/edit.html?main#DemoView

            1 Antwort Letzte Antwort
            0
            • A Offline
              A Offline
              andrey99986
              schrieb am zuletzt editiert von
              #121

              @Bluefox:

              Все что тебе надо. Можно отлично определить на клиенте. У меня сделано так, что по локалке я захожу без пароля, а по инету с паролем по https. Таким образом я могу отличить lan/wan, а тип клиента определяется js на раз два. Тебе надо понимать, что здесь используется отличная от php технология. Статические страницы и динамические данные могут поступать с двух разных источников. За счет этого достигается огромная скорость и гибкость. Тебе нельзя думать терминами php, но то что тебе надо сделать можно.

              Посмотри здесь я делаю что то похожее:

              https://iobroker.net:8080/vis/edit.html?main#DemoView `

              То есть из wan - открываем одну страницу, из lan - другую?

              По локалке хотелось бы тоже с паролем. И по причине безопасности и из-за избыточности иметь две ссылки.

              На странице по ссылке - ошибки.

              1 Antwort Letzte Antwort
              0
              • BluefoxB Offline
                BluefoxB Offline
                Bluefox
                schrieb am zuletzt editiert von
                #122

                @andrey99986:

                @Bluefox:

                Все что тебе надо. Можно отлично определить на клиенте. У меня сделано так, что по локалке я захожу без пароля, а по инету с паролем по https. Таким образом я могу отличить lan/wan, а тип клиента определяется js на раз два. Тебе надо понимать, что здесь используется отличная от php технология. Статические страницы и динамические данные могут поступать с двух разных источников. За счет этого достигается огромная скорость и гибкость. Тебе нельзя думать терминами php, но то что тебе надо сделать можно.

                Посмотри здесь я делаю что то похожее:

                https://iobroker.net:8080/vis/edit.html?main#DemoView `

                То есть из wan - открываем одну страницу, из lan - другую?

                По локалке хотелось бы тоже с паролем. И по причине безопасности и из-за избыточности иметь две ссылки.

                На странице по ссылке - ошибки. `
                Нет. Страница одна и та же. Но разные web драйвера. У меня установлено 2 web драйвера. Один для интернет и один для локалки.

                Ну начни уже что нибудь делать. Я подмогу.

                [{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"html":"\n\n\n\n"},"style":{"left":"733px","top":"77px"},"widgetSet":"basic"}]
                
                1 Antwort Letzte Antwort
                0
                • A Offline
                  A Offline
                  andrey99986
                  schrieb am zuletzt editiert von
                  #123

                  @Bluefox:

                  Нет. Страница одна и та же. Но разные web драйвера. У меня установлено 2 web драйвера. Один для интернет и один для локалки.

                  Ну начни уже что нибудь делать. Я подмогу. `
                  За готовый ответ по определению устройства спасибо конечно же, с js можно мне достаточно было бы ткнуть на любой линк с подобным решением.

                  Но я пока не понял как конкретно ты определяешь wan/lan вход. Надо как-то на js определить из-под какого драйвера запущен веб-сервер? Этот вопрос как бы не погуглишь :) А практики с iobroker у меня слишком мало чтобы догадаться.

                  1 Antwort Letzte Antwort
                  0
                  • H Offline
                    H Offline
                    Haus
                    schrieb am zuletzt editiert von
                    #124

                    @andrey99986:

                    @Bluefox:

                    Нет. Страница одна и та же. Но разные web драйвера. У меня установлено 2 web драйвера. Один для интернет и один для локалки.

                    Ну начни уже что нибудь делать. Я подмогу. `

                    Но я пока не понял как конкретно ты определяешь wan/lan вход. Надо как-то на js определить из-под какого драйвера запущен веб-сервер? Этот вопрос как бы не погуглишь :) А практики с iobroker у меня слишком мало чтобы догадаться. `
                    Скорей всего по запросу https://192.168.1.10…. или http://192.168.1.10... у меня тоже так web.0 по http в доме без пароля, web.1 https из вне на доменное имя с паролем. Если по lan хочешь с паролем то в system.adapter.web.0 поставь галочку и будет тебе счастье.

                    js-controller: 1.5.7 / node.js: v8.15.1/ npm: 6.4.1

                    admin: 3.6.0

                    javascript: 4.1.10

                    web: 2.4.1 vis: 1.1.10

                    cloud: 2.6.2

                    Server: DELL FX170 / linux: Debian 9.5 Stretch

                    Adapter: MegaD-2561, Mega-ES…

                    1 Antwort Letzte Antwort
                    0
                    • A Offline
                      A Offline
                      andrey99986
                      schrieb am zuletzt editiert von
                      #125

                      @Haus:

                      Скорей всего по запросу https://192.168.1.10…. или http://192.168.1.10... у меня тоже так web.0 по http в доме без пароля, web.1 https из вне на доменное имя с паролем. Если по lan хочешь с паролем то в system.adapter.web.0 поставь галочку и будет тебе счастье. `

                      Два web-адаптера для чего, если при этом один и тот же проект?

                      Только ради того чтобы на странице отличить lan от wan входа? И кстати как конкретно? Так:?

                      var x = document.referrer;
                      

                      Пробой локального ресурса? Так это можно и на одном web-адаптере сделать.

                      Сейчас пытаюсь реализовать логику на пробе загрузки уникальной картинки (которая есть только в моей ЛВС). Интересно что в редакторе проба работает, а при просмотре страницы нет. Код стырил:

                      function ImageExist(url) 
                      {
                         var img = new Image();
                         img.src = url;
                         return img.height != 0;
                      }
                      

                      почему то такая конструкция вообще не заработала, даже в редакторе:

                      $.ajax({
                          url:'http://www.example.com/somefile.ext',
                          type:'HEAD',
                          error: function()
                          {
                              //file not exists
                          },
                          success: function()
                          {
                              //file exists
                          }
                      });
                      
                      1 Antwort Letzte Antwort
                      0
                      • H Offline
                        H Offline
                        Haus
                        schrieb am zuletzt editiert von
                        #126

                        @andrey99986:

                        @Haus:

                        Скорей всего по запросу https://192.168.1.10…. или http://192.168.1.10... у меня тоже так web.0 по http в доме без пароля, web.1 https из вне на доменное имя с паролем. Если по lan хочешь с паролем то в system.adapter.web.0 поставь галочку и будет тебе счастье. `

                        Два web-адаптера для чего, если при этом один и тот же проект?

                        Только ради того чтобы на странице отличить lan от wan входа? И кстати как конкретно? Так:? `
                        Ну например дома на стене весит планшет, зачем там пароль и выход через определённое время. А вот из вне(с работы через комп) пароль и сброс через определённое время также https да и порт 443 другой, безопасность не помешает :)

                        js-controller: 1.5.7 / node.js: v8.15.1/ npm: 6.4.1

                        admin: 3.6.0

                        javascript: 4.1.10

                        web: 2.4.1 vis: 1.1.10

                        cloud: 2.6.2

                        Server: DELL FX170 / linux: Debian 9.5 Stretch

                        Adapter: MegaD-2561, Mega-ES…

                        1 Antwort Letzte Antwort
                        0
                        • BluefoxB Offline
                          BluefoxB Offline
                          Bluefox
                          schrieb am zuletzt editiert von
                          #127

                          @andrey99986:

                          @Haus:

                          Скорей всего по запросу https://192.168.1.10…. или http://192.168.1.10... у меня тоже так web.0 по http в доме без пароля, web.1 https из вне на доменное имя с паролем. Если по lan хочешь с паролем то в system.adapter.web.0 поставь галочку и будет тебе счастье. `

                          Два web-адаптера для чего, если при этом один и тот же проект?

                          Только ради того чтобы на странице отличить lan от wan входа? И кстати как конкретно? Так:?

                          var x = document.referrer;
                          

                          Пробой локального ресурса? Так это можно и на одном web-адаптере сделать.

                          Сейчас пытаюсь реализовать логику на пробе загрузки уникальной картинки (которая есть только в моей ЛВС). Интересно что в редакторе проба работает, а при просмотре страницы нет. Код стырил:

                          function ImageExist(url) 
                          {
                             var img = new Image();
                             img.src = url;
                             return img.height != 0;
                          }
                          

                          почему то такая конструкция вообще не заработала, даже в редакторе:

                          $.ajax({
                              url:'http://www.example.com/somefile.ext',
                              type:'HEAD',
                              error: function()
                              {
                                  //file not exists
                              },
                              success: function()
                              {
                                  //file exists
                              }
                          });
                          ```` `  
                          

                          Тебе надо засунуть код в

                          Какие у тебя IP адреса в локалке и в инете? По ним нельзя определить?

                          С загрузкой картинки может возникнуть CORS проблема.

                          1 Antwort Letzte Antwort
                          0
                          • A Offline
                            A Offline
                            andrey99986
                            schrieb am zuletzt editiert von
                            #128

                            @Bluefox:

                            Тебе надо засунуть код в

                            Какие у тебя IP адреса в локалке и в инете? По ним нельзя определить?

                            С загрузкой картинки может возникнуть CORS проблема. `

                            аякс код дополнительно в ?

                            Адреса в локалке 192.168.2.

                            Но надо гарантировано определить что я в своей сети.

                            var x = document.referrer;
                            

                            Выдаёт разный ответ при lan/wan доступе. Пока работает вот такой код , тестирую:

                            var myref = document.referrer;
                            clientip_www = false;
                            if (myref.includes("www.")){
                                clientip_www = true;
                            }
                            
                            1 Antwort Letzte Antwort
                            0
                            • A Offline
                              A Offline
                              andrey99986
                              schrieb am zuletzt editiert von
                              #129

                              С document.referrer не во всех случаях работает.

                              Поставил я второй web-адаптер с http протоколом.

                              Как теперь в js отличить lan/wan вход?

                              Код кто-нибудь может показать?

                              1 Antwort Letzte Antwort
                              0
                              • BluefoxB Offline
                                BluefoxB Offline
                                Bluefox
                                schrieb am zuletzt editiert von
                                #130

                                @andrey99986:

                                С document.referrer не во всех случаях работает.

                                Поставил я второй web-адаптер с http протоколом.

                                Как теперь в js отличить lan/wan вход?

                                Код кто-нибудь может показать? `
                                Да не может быть что wan и lan у тебя оба в 192.168.2.* висят.

                                Какие у тебя адреса?

                                1 Antwort Letzte Antwort
                                0
                                • A Offline
                                  A Offline
                                  andrey99986
                                  schrieb am zuletzt editiert von
                                  #131

                                  @Bluefox:

                                  @andrey99986:

                                  С document.referrer не во всех случаях работает.

                                  Поставил я второй web-адаптер с http протоколом.

                                  Как теперь в js отличить lan/wan вход?

                                  Код кто-нибудь может показать? `
                                  Да не может быть что wan и lan у тебя оба в 192.168.2.* висят.

                                  Какие у тебя адреса? `
                                  Физически сервер iobroker- 192.168.2.200

                                  Есть арендованный сервер с реальным IP (firstvds)

                                  между маршрутизатором ЛВС (openwrt) 192.168.2.1 и firstvds vpn туннель на openvpn (сеть 10.8.1.x).

                                  Настроена маршрутизация с firstvds до iobroker через openvpn сеть.

                                  На firstvds переброс портов iobroker с маскарадингом до iobroker-сервера.

                                  Вобщем всё классически :)

                                  с wan я захожу набирая https://www. (реальное доменное имя)

                                  с лан - https://192.168.2.200

                                  И как отличить lan/wan вход имея только один экземпляр страницы iobroker?

                                  1 Antwort Letzte Antwort
                                  0
                                  • BluefoxB Offline
                                    BluefoxB Offline
                                    Bluefox
                                    schrieb am zuletzt editiert von
                                    #132

                                    @andrey99986:

                                    @Bluefox:

                                    @andrey99986:

                                    С document.referrer не во всех случаях работает.

                                    Поставил я второй web-адаптер с http протоколом.

                                    Как теперь в js отличить lan/wan вход?

                                    Код кто-нибудь может показать? `
                                    Да не может быть что wan и lan у тебя оба в 192.168.2.* висят.

                                    Какие у тебя адреса? `
                                    Физически сервер iobroker- 192.168.2.200

                                    Есть арендованный сервер с реальным IP (firstvds)

                                    между маршрутизатором ЛВС (openwrt) 192.168.2.1 и firstvds vpn туннель на openvpn (сеть 10.8.1.x).

                                    Настроена маршрутизация с firstvds до iobroker через openvpn сеть.

                                    На firstvds переброс портов iobroker с маскарадингом до iobroker-сервера.

                                    Вобщем всё классически :)

                                    с wan я захожу набирая https://www. (реальное доменное имя)

                                    с лан - https://192.168.2.200

                                    И как отличить lan/wan вход имея только один экземпляр страницы iobroker? `

                                    if (window.location.href.indexOf('www.') !== -1) {
                                       console.log('WAN');
                                    } else {
                                       console.log('LAN');
                                    }
                                    
                                    
                                    1 Antwort Letzte Antwort
                                    0
                                    • A Offline
                                      A Offline
                                      andrey99986
                                      schrieb am zuletzt editiert von
                                      #133

                                      @Bluefox:

                                      if (window.location.href.indexOf('www.') !== -1) {
                                         console.log('WAN');
                                      } else {
                                         console.log('LAN');
                                      }
                                      
                                      ```` `  
                                      

                                      Вот! Спасибо. Гуглил конечно же - но упорно на эту функцию не выходил. Надо было со стороны справочника js заходить….

                                      1 Antwort Letzte Antwort
                                      0
                                      • A Offline
                                        A Offline
                                        andrey99986
                                        schrieb am zuletzt editiert von
                                        #134

                                        Как в js в vis присвоить объекту {ObjectID} значение свойства window.location.href ?

                                        1 Antwort Letzte Antwort
                                        0
                                        • A Offline
                                          A Offline
                                          andrey99986
                                          schrieb am zuletzt editiert von
                                          #135

                                          Последняя версия vis на какое разрешение рассчитана?

                                          А то у меня элементы управления как-то сдвинулись:
                                          1444_vis-res.png
                                          1444_vis-res2.png

                                          1 Antwort Letzte Antwort
                                          0

                                          Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                                          Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                                          Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                                          Registrieren Anmelden
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          511

                                          Online

                                          32.7k

                                          Benutzer

                                          82.6k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe