Skip to content

Latest commit

 

History

History
175 lines (104 loc) · 5.8 KB

API.mdwn

File metadata and controls

175 lines (104 loc) · 5.8 KB

[[!meta title="Webconverger API documentation"]]

Webconverger heavily uses the notion of /proc/cmdline to control setup. Spaces in cmdline values need to be encodeURI in order not be considered keys themselves. For developers, [[startup]] might better explain how these are used.

There are two ways to start using the API, firstly by hitting TAB on the boot screen.

Syslinux boot menu, press TAB

Or by using the configuration service form which you need to take a subscription out with Webconverger. The service presents the various options below in a friendly Web form on boot, with added persistency so your values are retained between boots once subscribed.

Your own homepage

Edit homepage=

You can enter several homepages, which will open in several tabs, separate each address with %20 e.g. homepage=http://portal.webconverger.com/%20http://webconverger.com

Expansions
  • MACID expands to your network MAC address
  • USBID expands to USB serial, for identifying which USB stick was booted - you could conceivably use different USB sticks for a lightweight (but not secure) physical authentication
  • WEBCID expands to Webconverger's identifier
  • WEBCVERSION expands to use git describe the running instance's version

For example Some customers want a way of tracking which kiosks are logging in. These is best accomplished using a keyword MACID. For example the homepage:

homepage=http://webconverger.com/?mac=MACID

Could be expanded to

homepage=http://webconverger.com/?mac=081196ae2d3c

Changing [[browser_chrome|kiosk]]

https://github.com/Webconverger/webc/tree/master/etc/webc/extensions

  • chrome=webconverger - this is the default
  • chrome=webcnoaddressbar - disable URL bar and search bar, good for [[controlled_access_setups|filtering]]
  • chrome=webcfullscreen - fullscreen without any chrome
  • chrome=neon - fullscreen as used with Neon
  • chrome=debug - nightly testing tools, for [[testing]] crash recovery etc.

See [[kiosk]] for screenshots of the options.

How to limit access with a blacklist or a whitelist?

Please see [[filtering]] how to use the hosts= API and advice on other more comprehensive solutions.

Use Webconverger in a different language to English

Please refer to [[i18n]]

Is it possible to change desktop background image ?

Please see [[artwork]] for details how to use bgurl=

Specify a HTTP proxy at 192.168.1.5 with port 8888

append http_proxy=http://192.168.1.5:8888

How do I make the screen not timeout and go black?

Append noblank, see [[blanking]] for more.

How do I make the terminal reset / timeout after being used?

Use kioskresetstation, see [[blanking]] for more information

How do I prevent Webconverger from cleaning up after each session? (From 14.0)

Add noclean. This is not recommended for deployments, however if some cases where the machine is used by just one person, this is very convenient for day to day usage.

Rotate the screen?

To rotate right on all connected screens:

xrandr-all=--rotate%20right

This is computed as running xrandr --output CONNECTED_DEVICE --rotate right.

For finer control by explicitly naming your CONNECTED_DEVICE, you can use xrandr=, but then you must discover the exact name of your output device, which can vary machine to machine.

Video explaining how to use debug mode to discover the properties of your connected displays

Force the screen resolution to 1024x768 on all connected displays

xrandr-all=--mode%201024x768

DEBUG MODE for developers

Append debug.

Once Webconverger is booted, the dwm window manager defaults to shift+alt+enter for a Terminal. Gain root with sudo -i.

See [[debug]] for more.

Position mouse pointer

swarp=0,0

Moves the mouse cursor to the top left of the screen. This is useful when the default cursor in the middle of the screen might accidentally trigger some mouse over event in the Web application.

Disable automatic upgrades with git

Append noupgrade. See [[upgrade]] for more details.

Disable configuration service

Append noconfig

How do I make the machine turn off at a set time everyday?

Set a [[cronjob]]

Changing DNS or statically configuring the network?

Please refer to [[networking]]

Locking down boot

Use noescape, which disallows [[debugging|debug]] of installed Webconverger

Hiding and showing the cursor

Hiding the cursor is often used with touch screens:

hidecursor

Caveat: Since hidecursor can only be applied when starting X, you cannot use this option in the Live mode with the configuration service.

Showing:

showcursor

By default the cursor is shown on input use and hides after 5 seconds. See [[blanking]] for details.

Touch screen input calibration

Please refer to the [[touch_screen_calibration]] wiki page.

Remote logging (from version 15)

Sign up for an account with Papertrail

log=logs.papertrailapp.com:XXXXX

Replace XXXXX with the port number assocaited with your account.

Wireless configuration

Although wired connections are preferred, Webconverger does have comprehensive [[support_for_wireless_devices|wireless]] and [[blog/entry/USB_tethering]].