Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. Визуализация
    5. ioBroker.vis Драйвер
    6. Разные вопросы по Vis

    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

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

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

      @Bluefox:

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

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

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

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

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

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

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

        @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 Reply Last reply Reply Quote 0
        • A
          andrey99986 last edited by

          @Bluefox:

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

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

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

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

            @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 поставь галочку и будет тебе счастье.

            1 Reply Last reply Reply Quote 0
            • A
              andrey99986 last edited by

              @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 Reply Last reply Reply Quote 0
              • H
                Haus last edited by

                @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 другой, безопасность не помешает 🙂

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

                  @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 Reply Last reply Reply Quote 0
                  • A
                    andrey99986 last edited by

                    @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 Reply Last reply Reply Quote 0
                    • A
                      andrey99986 last edited by

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

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

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

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

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

                        @andrey99986:

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

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

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

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

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

                        1 Reply Last reply Reply Quote 0
                        • A
                          andrey99986 last edited by

                          @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 Reply Last reply Reply Quote 0
                          • Bluefox
                            Bluefox last edited by

                            @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 Reply Last reply Reply Quote 0
                            • A
                              andrey99986 last edited by

                              @Bluefox:

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

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

                              1 Reply Last reply Reply Quote 0
                              • A
                                andrey99986 last edited by

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

                                1 Reply Last reply Reply Quote 0
                                • A
                                  andrey99986 last edited by

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

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

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

                                    @andrey99986:

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

                                    [{"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":""},"style":{"left":"730px","top":"10px","width":"163px","height":"51px"},"widgetSet":"basic"}]
                                    

                                    Только javascript.0.location надо поменять на твой ObjectID

                                    1 Reply Last reply Reply Quote 0
                                    • A
                                      andrey99986 last edited by

                                      @Bluefox:

                                      Только javascript.0.location надо поменять на твой ObjectID `
                                      Спасибо, буду пробовать.

                                      На вопрос про сдвиг элементов управления есть предположения в чем проблема?

                                      У меня разрешение 1600*900, больше на ноуте не ставиться. Я сейчас даже страницу в vis-е добавить не могу - нет видимого поля ввода для имени страницы.

                                      Тестировал - в Chrome, IE, Opera - элементы управления одинаково сдвинуты друг на друга.

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

                                        @andrey99986:

                                        @Bluefox:

                                        Только javascript.0.location надо поменять на твой ObjectID `
                                        Спасибо, буду пробовать.

                                        На вопрос про сдвиг элементов управления есть предположения в чем проблема?

                                        У меня разрешение 1600*900, больше на ноуте не ставиться. Я сейчас даже страницу в vis-е добавить не могу - нет видимого поля ввода для имени страницы.

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

                                        1 Reply Last reply Reply Quote 0
                                        • A
                                          andrey99986 last edited by

                                          На разрешении 1280*1024 тоже сдвиг. Масштаб и размер шрифта не помогает.

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

                                            @andrey99986:

                                            На разрешении 1280*1024 тоже сдвиг. Масштаб и размер шрифта не помогает. `
                                            А браузер какой?
                                            48_2016-11-12_10_08_33-edit_vis.png

                                            Может ты CSS сбил?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            857
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            20
                                            218
                                            60186
                                            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