]> git.proxmox.com Git - pve-xtermjs.git/blame - README
d/control: fix build-dependencies
[pve-xtermjs.git] / README
CommitLineData
dcf3d43b
DC
1xterm.js webclient and helper utility
2=====================================
3
8acab7c3
TL
4This repository contains the client and helper utility to use xterm.js [0] in
5the web UI of Proxmox projects like Proxmox VE, Proxmox Mail Gateway or Proxmox
6Backup Server.
dcf3d43b 7
8acab7c3 8[0]: https://xtermjs.org
dcf3d43b 9
8acab7c3
TL
10To be able to relay between the frontend and a shell program/console running in
11the backend, we provide a tool called termproxy to open a port (where our
12websocketproxy connects to) and to open a PTY and execute a program.
13
14For communication originating from the client towards the server, it implements
15a simple packet-based protocol where everything is a string. The protocol
16consists of the following messages:
dcf3d43b
DC
17
18* Normal Message
19 0:LENGTH:MSG
20 where LENGTH is the bytelength of the msg
21
22* Resize Message
23 1:COLS:ROWS:
8acab7c3
TL
24 where COLS is the number of columns the client wants to resize to, and ROWS
25 the number of rows, respectively
dcf3d43b
DC
26
27* Ping Message
28 2
29 used to keep the connection between client and server alive
30 (we have a timeout of 5 minutes)
31
8acab7c3 32Every other input from the client will be ignored.
dcf3d43b 33
8acab7c3
TL
34Communication from server to the client uses no protocol, the raw data coming
35from the terminal/program will be forwarded 1:1, without any wrapping format.