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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

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

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

      @Bluefox:

      @andrey99986:

      Где задаётся время жизни кэша web-сервера?

      Картинку обновляю в папке /vis.0/ - на клиенте видна старая версия. `
      Там её нельзя обновлять.

      Нужно обновлять через вызов

      > iorboker upload /path/to/file/picture.png /vis.0/main/somewhere/picture.png `

      Таким образом единственный способ получать снимки с камер и сохранять их в веб-папку примерно такой? :

      camera1_snap_tmp = '/tmp/cam1.jpg';
      camera1_snap_web = '/vis.0/main/img/cam1.jpg';
      cmd_get_snap1 = 'wget "http://192.168.2.10:8088/snapshot?username=user&userpwd=passw&strm=1" --no-use-server-timestamps  -O ' + camera1_snap_tmp;
      exec(cmd_get_snap1, function (error, result, stderr) {
                  if ((function ()
                      {var val = (stderr.indexOf('.jpg’ saved') + 1); if (val === 'true') return true; if (val === 'false') return false; return !!val;})()) {
                  cmd_copy_web = '/usr/bin/iobroker upload ' + camera1_snap_tmp + ' ' + camera1_snap_web;
                  exec (cmd_copy_web);
                  console.log('copy image to web folder: ' + cmd_copy_web);
      
                  } else {
      
                  console.log('Error get image from camera');
                }
              });
      
      
      1 Reply Last reply Reply Quote 0
      • Bluefox
        Bluefox last edited by

        camera1_snap_web = '/vis.0/main/img/cam1.jpg';
        cmd_get_snap1 = 'http://192.168.2.10:8088/snapshot?username=user&userpwd=passw&strm=1';
        
        var request = require('request');
        
        request.get({url: cmd_get_snap1, encoding: 'binary'}, function (err, response, body) {
          writeFile(camera1_snap_web, body, function (error) {
              console.log('file written');
          });
        });
        
        
        1 Reply Last reply Reply Quote 0
        • A
          andrey99986 last edited by

          На главной странице в vis- редакторе настроил элемент "bars - Views bar" .

          К кнопкам этого элемента подключены другие страницы.

          Так вот при быстрой прокрутке любой страницы - текущая страница закрывается и происходит переход назад, как будто нажали клавишу "Backspase".

          На компьютере этого эффекта нет - оно и понятно - там мышь.

          А вот на браузере на android-e этот эффект мешает. Если ОЧЕНЬ медленно скролить то возврата на главную страницу нет, но так просматривать страницы невозможно.

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

            @Bluefox:

            camera1_snap_web = '/vis.0/main/img/cam1.jpg';
            cmd_get_snap1 = 'http://192.168.2.10:8088/snapshot?username=user&userpwd=passw&strm=1';
            
            var request = require('request');
            
            request.get({url: cmd_get_snap1, encoding: 'binary'}, function (err, response, body) {
              writeFile(camera1_snap_web, body, function (error) {
                  console.log('file written');
              });
            });
            
            ```` `  
            

            Спасибо. То есть "iobroker upload" не нужен для web если сохранять файл встроенными в драйвер js функциями (https://github.com/ioBroker/ioBroker.javascript ).

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

              К вопросу о прокрутке и автоматическому переходу назад( как будто нажали клавишу "Backspase") - куда копать?

              Дело в настройках vis-а или это глюк виджета?

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

                В редактор VIS планируется добавить кнопку "Опустить ниже" выбранный элемент на форме по сравнению с другими.

                Надеюсь понятно описал 🙂

                А то когда добавляешь например виджет Border в конце, приходится все элементы добавленные до него, выделять, вырезать и снова вставлять, чтобы они были "выше" него.

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

                  @andrey99986:

                  На главной странице в vis- редакторе настроил элемент "bars - Views bar" .

                  К кнопкам этого элемента подключены другие страницы.

                  Так вот при быстрой прокрутке любой страницы - текущая страница закрывается и происходит переход назад, как будто нажали клавишу "Backspase".

                  На компьютере этого эффекта нет - оно и понятно - там мышь.

                  А вот на браузере на android-e этот эффект мешает. Если ОЧЕНЬ медленно скролить то возврата на главную страницу нет, но так просматривать страницы невозможно. `
                  Я не припомню, что бы что то такое было специально сделано. Может это свойство браузера? Как там в других браузерах?

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

                    @Haba:

                    В редактор VIS планируется добавить кнопку "Опустить ниже" выбранный элемент на форме по сравнению с другими.

                    Надеюсь понятно описал 🙂

                    А то когда добавляешь например виджет Border в конце, приходится все элементы добавленные до него, выделять, вырезать и снова вставлять, чтобы они были "выше" него. `
                    Для этого есть zindex. Выставляешь у всех zindex 1, а у border 0. И всё.

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

                      @Bluefox:

                      @andrey99986:

                      На главной странице в vis- редакторе настроил элемент "bars - Views bar" .

                      К кнопкам этого элемента подключены другие страницы.

                      Так вот при быстрой прокрутке любой страницы - текущая страница закрывается и происходит переход назад, как будто нажали клавишу "Backspase".

                      На компьютере этого эффекта нет - оно и понятно - там мышь.

                      А вот на браузере на android-e этот эффект мешает. Если ОЧЕНЬ медленно скролить то возврата на главную страницу нет, но так просматривать страницы невозможно. Я не припомню, что бы что то такое было специально сделано. Может это свойство браузера? Как там в других браузерах?

                      Пробовал 3 разных браузера - нативный (LG ), Chrome, Opera. (аппараты LG Android 5, Nexus Android 7)

                      Проблема от виджета не зависит.

                      Более конкретное описание:

                      На главной странице делаю ссылки на другие, например простейшим элементом "basic-link".

                      При открытии страницы по элементу (basic-link или другому) на android-устройстве - страница загружается, но при протягивании пальцем вниз (именно вниз) - текущая страница закрывается и открывается предыдущая.

                      Надо отметить что если содержимое страницы полностью входит на экран смартфона - этот глюк труднее произвести - надо сильно скроллить вниз.

                      Если же содержимое выходит за пределы отображения и чтобы увидеть его надо скроллить вниз - страница закрывается с первой попытки.

                      Раздражает очень сильно!

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

                        Мне интересно это только у меня так браузер в андроиде (5, 7 ) ведёт, у всех всё нормально при скролинге длинных страниц, открытых по ссылке ?

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

                          @andrey99986:

                          Мне интересно это только у меня так браузер в андроиде (5, 7 ) ведёт, у всех всё нормально при скролинге длинных страниц, открытых по ссылке ? `
                          У меня вроде норм, а Апп не юзаешь? Может с жестами чего намудрил?

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

                            @instalator:

                            @andrey99986:

                            Мне интересно это только у меня так браузер в андроиде (5, 7 ) ведёт, у всех всё нормально при скролинге длинных страниц, открытых по ссылке ? У меня вроде норм, а Апп не юзаешь? Может с жестами чего намудрил?
                            Апп с https не работает пока. А с http не хочу из соображений безопасности, там ещё надо как-то вручную аутентификацию включать.

                            Можно конечно через vpn, но тогда теряется возможность с произвольного десктопа зайти.

                            Жесты не трогал, галочки проверял - все убраны.

                            Есть идея пересоздать проект, других идей нет.

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

                              Выяснил что проблема создаётся если создать новый проект и тут же удалить страницу Demoview.

                              Если же оставить страницу Demoview и прямо в ней создать линки - глюка нет.

                              Пробовал удалить все элементы кроме одного на странице Demoview - страница перестаёт загружаться при просмотре. (в редакторе - грузится).

                              Что - то в этой страницу есть , что без неё этот глюк проявляется

                              Какая правильная последовательность создания нового проекта без лишних страниц (Demoview)?

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

                                Почему DemoView перестаёт грузится (в режиме просмотра) если удалить на ней все элементы " ?

                                Создавал новый проект по учёткой "admin". В режиме просмотра под другим пользователем со всеми правами проект не виден (после удаления Demoview).

                                Под учёткой "admin" - проект в режиме просмотра грузится.

                                1. Где настроить права?

                                Галка "доступно для всех" в vis-е стоит. В админке в "Группы" в свойствах user-а стоят все галки - даны все права.

                                2. Как корректно удалить проект?

                                В меню не нашёл. Если удалить в файловой системе - в меню доступных проектов удалённые проекты исчезают, но в файле /vis.0/_data.json остаются описания несуществующих проектов.

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

                                  Кто не боится - удалите страницу Demoview и проверьте - проект под юзером будет виден?

                                  (сделайте бэкап на всякий случай)

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

                                    Глюк (или особенность? ) со скролингом возникает если установить птичку в закладке "Инструменты" "По умолчанию" в настройках разрешения экрана.

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

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

                                      @andrey99986:

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

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

                                      При глобальных изменениях пере загружай сервер.

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

                                        Спасибо, попробую.

                                        А зачем перегружать linux, если никаких процессов nodejs нет?

                                        Чем отличаться будет от iobroker stop, ps ax - анализ запущенных процессов, kill при необходимости, iobroker start?

                                        Глюкофича со скролингом и потерей прав от перезагрузки не зависит…

                                        Вопрос - есть глобальная переменная(Объект) в которой записан url.

                                        Какой элемент использовать в vis-е и как чтобы сделать из этого объекта динамическую ссылку, доступную для перехода в виде например кнопки?

                                        Дайте пример пожалуйста.

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

                                          Понятно что можно просто использовать {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......)
                                          
                                          1 Reply Last reply Reply Quote 0
                                          • Bluefox
                                            Bluefox last edited by

                                            @Haus:

                                            @andrey99986:

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

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

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

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

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

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

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            895
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

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