KioskBrowser logo

Браузер для киосков KioskBrowser

с виртуальной клавиатурой

Настройка KioskBrowser

Настройка с помощью графического интерфейса

При первом запуске откроется экран настроек.

Далее:

  1. Введите URL стартовой страницы (обязательно). Если URL не ввести, браузер при перезапуске снова откроется на экране настроек.
  2. Введите лицензионный ключ (не обязательно). Если ключ не вводить, браузер запустится в 30-дневном полнофункциональном демо-режиме по окончанию которого перезагрузка браузера откроет его на экране настроек.
  3. Отмотайте вниз страницы настроек и нажмите кнопку сохранения (обязательно).
  4. Браузер закроется. Дальше ждите несколько секунд пока браузер сам запустится вновь.
  5. Если в течении 10-20 секунд после закрытия браузера он не запустится, запустите его сами в ручном режиме.
  6. Конфигурация сохранится в домашней папке пользователя в файле ".KioskBrowser.json". Если вам надо вновь открыть экран настроек, просто удалите этот файл и перезапустите браузер.

Для закрытия браузера используйте Alt+F4.

В результате будет создан файл .KioskBrowser.json в домашней папке пользователя в котором будут сохранены настройки.

Настройка с помощью файла конфигурации .KioskBrowser.json

В домашней папке пользователя создайте файл ".KioskBrowser.json" ("%userprofile%/.KioskBrowser.json" в Windows и "~/.KioskBrowser.json" в Linux). В этом файле можно размещать настройки в формате JSON.

Файл в домашней папке .KioskBrowser.json будет содержать нижеописанные настройки в формате JSON, все из которых опциональны кроме домашнего URL.

Обратите внимание, что .KioskBrowser.json должен быть валидным JSON и потому не может содержать комментарии (/* */) и ниже комментарии приведены только для пояснений.

{
    "title": "Informational kiosk",   /* (string) Заглавие в верхней панели управления браузера */
    "homeUrl": "https://demo.elibsystem.ru/app/catalog", /* (string) URL домашней (стартовой) страницы на которой браузер открывается и куда возвращается по таймауту неактивности */
    "homeUrlInactivityTimeoutSec": 180,             /* (int) таймаут неактивности в секундах по истечению которого браузер удаляет историю, куки и возвращается на домашнюю страницу. Установите в 0 для отключения таймаута.  */
    "licenseCode": null,        /* (string) лицензионный ключ с помощью которого будет произведена активация без перехода на экран настроек (для возможности удаленно активировать браузер без ввода ключа с клавиатуры). После успешной активации лицензионный ключ можно удалить из .KioskBrowser.json */
    "isKioskEnabled": true,			/* (boolean) включен режим киоска (вывод на весь экран поверх остальных окон) */
    "isAutoRunEnabled": false,		/* (boolean) включен автозапуск при входе пользователя */
    "primaryColor": "#323232",              /* (string) основной цвет фона (клавиатуры, панели управления) */
    "textColor": "#FFFFFF",         /* (string) цвет текста (клавиатуры, панели управления) */
    "isUseVirtualKeyboard": true,    /* (boolean) для включения или отключения виртуальной клавиатуры. */
    "isPrinterBlocked": true,              /* (boolean) установите в true для блокировки печати */
    "printerIsSilent": true,                /* (boolean) разрешает тихую печать (без окна выбора принтера) на принтере по умолчанию */
    "httpServerIsEnabled": false,           /* (boolean) установите в true для включение удаленного вызова процедур (RPC) через веб-сервер */
    "httpServerSecret": null,                       /* (string) использует секретное слово (пароль) как параметр "key" в URL при запросах к веб-серверу для доступа ко всем запросам. Установите в null если защита API веб-сервера не требуется. */
    "httpServerHostname": "localhost",      /* (string) имя сервера (hostname) или ip-адрес. Используйте "0.0.0.0" для запуска веб-сервера на всех IP-адресах киоска. */
    "httpServerPort": 8080                          /*  (int) порт веб-сервера. В Windows может быть любым, в Linux не устанавливайте ниже 1024 порта. */
    "antiBornPixelsIsEnabled": true,                /*  (boolean) предотвращает выгорание пикселей если экран не имеет встроенную защиту от выгорания. */
    "antiBornPixelsPadding": 10,                    /* (int) экран будет иметь черные отступы по краям браузера по которым он будет смещаться для предотвращения выгорания. По-умолчанию: 10. Установите в 0 для отключения отступов. */
    "scrollbarWidth": 17,   /* (int) ширина полосы прокрутки (скроллбара). Перезаписывает ширину по-умолчанию в браузере. */
    "isHeaderHidden": false,        /* (boolean) установите true для скрытия верхней панели управления. */
    "isBackHidden": false,  /* (boolean) установите в true для скрытия кнопки "назад". */
    "isHomeHidden": false,  /* (boolean) установите в true для скрытия кнопки "домой". */
    "isCloseHidden": true,		/* (boolean) установите в true для скрытия кнопки закрытия браузера. */
    "injectBrowserStyle": null, /* (string) css-стиль, инжектируемый в клавиатуру и в панель управления для смены стилей. Должен быть валидным CSS-кодом. Используйте "body {...}" как стиль. Пример для изменения шрифта: "injectBrowserStyle":"@font-face {font-family: permian; src: url('file:///opt/fonts/PermianSansTypeface.otf')} body {font-family: permian;}". Пример для замены цвета текста и фона: "injectBrowserStyle":"body {background: #111; color: #FFF;}" */
    "langs": [					/* (array) object of lang with sort by delta. */
        {"langCode": "rus", "isEnabled": true, "delta":0},
        {"langCode": "eng", "isEnabled": true, "delta":1}
    ],
    "rules": [ /* (array) правила перехода по разрешенным URL. action allow - разрешает доступ, deny - запрещает. delta - сортировка, меньше delta - правило сработает раньше. isEnabled - применять или нет данное правило. url - URL по которому проверяется попадание правила в открываемый сайт и применение политики deny или allow. */
        {"action": "allow", "delta": 0, "isEnabled": true,  "url": "^about:blank$", "description": "allow blank"},
        {"action": "allow", "delta": 1, "isEnabled": true,  "url": "^https://kioskbrowser.elibsystem.ru/", "description": "allow kioskbrowser site"},
        {"action": "deny",  "delta": 2, "isEnabled": true,  "url": "^file://*", "description": "deny file://*"},
        {"action": "allow", "delta": 3, "isEnabled": true,  "url": "^http", "description": "allow http and https"},
        {"action": "allow", "delta": 4, "isEnabled": true,  "url": "^https", "description": "allow https"},
        {"action": "deny",  "delta": 5, "isEnabled": false, "url": "*", "description": "deny all"},
        {"action": "allow", "delta": 6, "isEnabled": true,  "url": "*", "description": "allow all"},
    ],
    isIgnoreCertificateErrors: true,    /* (boolean) true for ignore errors with https certificates */
    failLoadPageDelay: 3000	            /* (int) delay in milliseconds for go home page if get same browser error */
}                

Пример с указанием только homeUrl:

{
    "homeUrl": "https://ya.ru"
}            

Пример с указанием homeUrl и лицензионного ключа для автоматической активации при первом запуске:

{
    "homeUrl": "https://ya.ru",
    "licenseCode": "XXXX-XXXX-XXXX-XXXX-XXXX-XXXX"
}            

Пример с указанием homeUrl, лицензионного ключа для автоматической активации при первом запуске и русской и английской клавиатур:

{
    "homeUrl": "https://ya.ru",
    "licenseCode": "XXXX-XXXX-XXXX-XXXX-XXXX-XXXX",
    "langs": [
        {"langCode": "rus", "isEnabled": true, "delta":0},
        {"langCode": "eng", "isEnabled": true, "delta":1}
    ]
}            
Настройка сенсорного экрана

Иногда возникают проблемы с настройками ввода сенсорного экрана. Экран может быть развернут или не отюстирован. Если это случилось, то KioskBrowser не может исправить со своей стороны проблемы с вводом, так как получает события из ОС. Вам надо установить драйверы к экрану, отюстировать (настроить его с помощью ПО от производителя экрана.

В случае использования Linux и X-сервера, для разворота экрана может быть полезен скрипт, в котором надо вместо Elo TouchSystems установить название вашего датчика сенсорного ввода и собственную матрицу трансформации:

    export DISPLAY=:0.0
    xinput set-prop "Elo TouchSystems, Inc. Elo TouchSystems 2700 IntelliTouch(r) USB Touchmonitor Interface" --type=float "Coordinate Transformation Matrix" -1 0 1 0 -1 1 0 0 1
Настройка сенсорного ввода не входит в техподдержку KioskBrowser, при возникновении проблем обратитесь к производителю вашего устройства.