QuickConnect

From Bondix Wiki
Revision as of 11:44, 30 November 2022 by Red (talk | contribs) (Created page with "== Quick Connect Format == A quick connect code is BASE64 encoded JSON. It can either contain tunnel credentials to a server, or point to a 3rd party orchestration server, to which the client connects and receives its connection details. ==== With embedded credentials: ==== {"t":"Tunnel Name", "p":"Tunnel Password", "s": "Server", "p": "Server Port", "b": "Backup Server", "bp": "Backup Server Port"} Server port & backup server (+ port) are optional. If no port is provi...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Quick Connect Format

A quick connect code is BASE64 encoded JSON. It can either contain tunnel credentials to a server, or point to a 3rd party orchestration server, to which the client connects and receives its connection details.

With embedded credentials:

{"t":"Tunnel Name", "p":"Tunnel Password", "s": "Server", "p": "Server Port", "b": "Backup Server", "bp": "Backup Server Port"}

Server port & backup server (+ port) are optional. If no port is provided, port "443" is assumed.

Tunnel Name, password & server are required.

With Orchestration server URL:

{"u": "Orchestration Server URL", "m": {"free": "parameters"}}}

Orchestration Server Protocol

When the client is started with a quick connect code that points to an orchestration server, it will send a HTTP POST request with the following JSON data:

{"action":"request","meta":{"architecture":"X86_64/Common KVM processor","build":"20221130-0939-8e0de0d+ master"},"params":{},"version":"1"}

Expected Response:

{"keepAlive":360, "keepAliveDown":1, "password":"test", "result":"ok", "server":"10.42.0.11", "tunnel":"test1"}
Property Description
result Should contain "ok". Any other value will cause the client to stay in idle mode.
server Target server. Should be an IP address
tunnel Tunnel name
password Tunnel password
keepAlive Interval in minutes in which a keep alive request should be sent when the tunnel is connected. -1 if no keep alive intervals should be sent. If the property is not supplied, -1 (no keep alives) is assumed.
keepAliveDown Interval in minutes in which a keep-alive request should be sent when the tunnel is not connected. If no value is supplied, 1 minute is assumed.