Skip to content
Anders Bech Mellson edited this page Aug 24, 2014 · 8 revisions

Multiple and shared settings

Kiosker is able to share settings across multiple devices as well as having device specific device settings.

It will first download the shared settings which you should make available at the base settings url address. Then it will fetch the device specific settings from a url which is composed from the device id and the base settings url.

Editor

Clint Heyer has created a PHP editor for json files, this editor can be used to edit your settings. Have a look at the editor here.

Example

If you provide your base settings at http://kiosker.com/base.json Then you should set the base url to http://kiosker.com/ A device with a device id device1 will look for it's device specific settings at http://kiosker.com/device1.json

It is important that you name your base settings base.json if you want another name you need to reflect that change in Constants.BASE_SETTINGS.

example JSON settings file

Settings

  • layout - int that decides how many webviews should be on screen.
    • Example: "layout": 0
    • Possible layout configs are:
      • 0 Fullscreen, only one webview is shown, which makes the sites urls unnecessary.
      • 1 50/50 split between two webviews.
      • 2 60/40 split between two webviews.
      • 3 70/30 split between two webviews.
      • 4 80/20 split between two webviews.
  • home - Array of {url, title} to be used as the main website.
    • Currently only the first url is used.
    • Example: "home": [{ "url":"http://google.com", "title":"Google"}]
  • sites - Array of {url, title} to be used on the secondary panels.
    • Example: "sites": [{ "url":"http://itu.dk", "title":"ITU"}]
  • screensavers - Array of {url, title} to be used as screensavers.
    • Example: "screensavers": [{"url":"http://www.cafeanalog.dk/", "title":"Cafe Analog"}]
  • screenSavePeriodMins - int that decides after how many minutes the screensaver kicks in.
    • The app will randomly load a url from the screensavers array.
    • Example: "screenSavePeriodMins": 30
  • screenSaveLengthMins - int that decides how many minutes the screensaver will run before going back to the home url.
    • Example: "screenSaveLengthMins": 2
  • idlePeriodMins - int that decides after how many minutes the app will dim the display to the dimmedBrightness value.
    • Example: "idlePeriodMins": 120
  • resetToHomeMins - int that decides after how many minutes the app will return to the home url if that is not already showing.
    • Example: "resetToHomeMins": 2
  • masterPasswordHash - Hash value of your master password.
    • Example: "masterPasswordHash": "MqWMDQjArAHAlbCSywKedct3y9DY"
  • masterPasswordSalt - Salt value of your master password.
    • Example: "masterPasswordSalt": "uxKOb>lLhk5lb=pFzYrs2dWsVEakI"
  • standbyStartTime - Decides when the app should turn off the screen and enter a standby state.
    • Once this time has been reached the app will start the normal display sleep timer. If this timeout has been set to 5 minutes the device will enter the standby state at 18.05 in this example.
    • Example: "standbyStartTime": "18.00"
  • standbyStopTime - Decides when the app should wake from the standby state.
    • Example: "standbyStopTime": "07.30"
  • reloadPeriodMins - int that decides after how many minutes the webviews should be reloaded.
    • Example: "reloadPeriodMins": 360
  • allowSwitching - bool that if true, allows the user to switch between sites in the sites array from a navigation panel.
    • Example: "allowSwitching": true
  • autoCycleSecondary - bool that if true, will cycle the secondary panel's web pages in a round robin fashion.
    • Example: "autoCycleSecondary": true
  • autoCycleSecondaryPeriodMins - int that decides how long each secondary panel cycle should be.
    • Example: "autoCycleSecondaryPeriodMins": 20
  • errorReloadMins - int that decides how long after an error occurred a webview should be reloaded.
    • Example: "errorReloadMins": 5
  • allowHome - bool that decides if the navigation buttons are visible or not.
    • If this is set to false the user is locked in the app.
    • Example: "allowHome": false
  • volume - int that sets the volume of the device in percent from 0 to 100.
    • Example: "volume": 30
  • mute - bool that decides if the device should be mutes.
    • Example: "mute": false
  • brightness - int that sets the brightness of the device in percent form 0 to 100.
    • For this to work set the brightness of the device to manual.
    • Example: "brightness": 100
  • dimmedBrightness - int that sets the brightness level of the device in percent form 0 to 100 during the dim period.
    • For this to work set the brightness of the device to manual.
    • Example: "dimmedBrightness": 70
  • quietHoursStartTime - Decides when the device should start a silent period where the volume is set to 0 (muted).
    • Example: "quietHoursStartTime": "18.00"
  • quietHoursStopTime - Decides when the device should stop the silent period and return to the normal volume.
    • Example: "quietHoursStopTime": "07.30"
  • manualWifi - bool that decides if the device should manually connect to the provided wifiSSID.
  • wifiSSID - The SSID which the device should connect to.
  • addSensorBridge - bool that decides if the sensorBridge object should be injected into the webpages loaded by Kiosker.