kiosk

package
v1.0.9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 27, 2024 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GenerateURL

func GenerateURL(anURL string, kioskMode string, autoFit bool, isPlayList bool) string

GenerateURL constructs URL with appropriate parameters for kiosk mode.

func GetExecutor added in v1.0.5

func GetExecutor(ctx context.Context) context.Context

GetExecutor returns executor for chromedp

func GrafanaKioskAPIKey added in v1.0.7

func GrafanaKioskAPIKey(cfg *Config, messages chan string)

GrafanaKioskAPIKey creates a chrome-based kiosk using a grafana api key.

func GrafanaKioskAWSLogin added in v1.0.7

func GrafanaKioskAWSLogin(cfg *Config, messages chan string)

GrafanaKioskAWSLogin Provides login for AWS Managed Grafana instances

func GrafanaKioskAnonymous

func GrafanaKioskAnonymous(cfg *Config, messages chan string)

GrafanaKioskAnonymous creates a chrome-based kiosk using a local grafana-server account.

func GrafanaKioskGCOM

func GrafanaKioskGCOM(cfg *Config, messages chan string)

GrafanaKioskGCOM creates a chrome-based kiosk using a grafana.com authenticated account.

func GrafanaKioskGenericOauth added in v1.0.3

func GrafanaKioskGenericOauth(cfg *Config, messages chan string)

GrafanaKioskGenericOauth creates a chrome-based kiosk using a oauth2 authenticated account.

func GrafanaKioskIDToken added in v1.0.5

func GrafanaKioskIDToken(cfg *Config, messages chan string)

GrafanaKioskIDToken creates a chrome-based kiosk using a oauth2 authenticated account.

func GrafanaKioskLocal

func GrafanaKioskLocal(cfg *Config, messages chan string)

GrafanaKioskLocal creates a chrome-based kiosk using a local grafana-server account.

Types

type APIKey added in v1.0.7

type APIKey struct {
	APIKey string `yaml:"apikey" env:"KIOSK_APIKEY_APIKEY" env-description:"APIKEY"`
}

APIKey APIKey for login

type BuildInfo added in v1.0.7

type BuildInfo struct {
	Version string `yaml:"version,omitempty"`
}

BuildInfo contains the build version

type Config added in v1.0.2

type Config struct {
	BuildInfo BuildInfo `yaml:"buildinfo"`
	General   General   `yaml:"general"`
	Target    Target    `yaml:"target"`
	GoAuth    GoAuth    `yaml:"goauth"`
	IDToken   IDToken   `yaml:"idtoken"`
	APIKey    APIKey    `yaml:"apikey"`
}

Config configuration for backend.

type General added in v1.0.7

type General struct {
	AutoFit         bool   `yaml:"autofit" env:"KIOSK_AUTOFIT" env-default:"true" env-description:"fit panels to screen"`
	DebugEnabled    bool   `yaml:"debug" env:"KIOSK_DEBUG" env-default:"false" env-description:"enables debug output"`
	GPUEnabled      bool   `yaml:"gpu-enabled" env:"KIOSK_GPU_ENABLED" env-default:"false" env-description:"disable GPU support"`
	LXDEEnabled     bool   `yaml:"lxde" env:"KIOSK_LXDE_ENABLED" env-default:"false" env-description:"initialize LXDE for kiosk mode"`
	LXDEHome        string `` /* 132-byte string literal not displayed */
	Mode            string `yaml:"kiosk-mode" env:"KIOSK_MODE" env-default:"full" env-description:"[full|tv|disabled]"`
	OzonePlatform   string `` /* 138-byte string literal not displayed */
	PageLoadDelayMS int64  `` /* 141-byte string literal not displayed */
	ScaleFactor     string `yaml:"scale-factor" env:"KIOSK_SCALE_FACTOR" env-default:"1.0" env-description:"Scale factor, like zoom"`
	WindowPosition  string `yaml:"window-position" env:"KIOSK_WINDOW_POSITION" env-default:"0,0" env-description:"Top Left Position of Kiosk"`
	WindowSize      string `yaml:"window-size" env:"KIOSK_WINDOW_SIZE" env-default:"" env-description:"Size of Kiosk in pixels (width,height)"`
}

General non-site specific configuations

type GoAuth added in v1.0.7

type GoAuth struct {
	AutoLogin     bool   `yaml:"auto-login" env:"KIOSK_GOAUTH_AUTO_LOGIN" env-description:"[false|true]"`
	UsernameField string `yaml:"fieldname-username" env:"KIOSK_GOAUTH_FIELD_USER" env-description:"Username html input name value"`
	PasswordField string `yaml:"fieldname-password" env:"KIOSK_GOAUTH_FIELD_PASSWORD" env-description:"Password html input name value"`
}

GoAuth OAuth

type IDToken added in v1.0.7

type IDToken struct {
	KeyFile  string `yaml:"idtoken-keyfile" env:"KIOSK_IDTOKEN_KEYFILE" env-default:"key.json" env-description:"JSON Credentials for idtoken"`
	Audience string `yaml:"idtoken-audience" env:"KIOSK_IDTOKEN_AUDIENCE" env-description:"Audience for idtoken, tpyically your oauth client id"`
}

IDToken token based login

type Target added in v1.0.7

type Target struct {
	IgnoreCertificateErrors bool   `` /* 142-byte string literal not displayed */
	IsPlayList              bool   `yaml:"playlist" env:"KIOSK_IS_PLAYLIST" env-default:"false" env-description:"URL is a playlist"`
	LoginMethod             string `yaml:"login-method" env:"KIOSK_LOGIN_METHOD" env-default:"anon" env-description:"[anon|local|gcom|goauth|idtoken|apikey]"`
	Password                string `yaml:"password" env:"KIOSK_LOGIN_PASSWORD" env-default:"guest" env-description:"password"`
	URL                     string `yaml:"URL" env:"KIOSK_URL" env-default:"https://play.grafana.org" env-description:"URL to Grafana server"`
	Username                string `yaml:"username" env:"KIOSK_LOGIN_USER" env-default:"guest" env-description:"username"`
	UseMFA                  bool   `yaml:"use-mfa" env:"KIOSK_USE_MFA" env-default:"false" env-description:"MFA is enabled for given account"`
}

Target the dashboard/playlist details

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL