An Antd HTTP/HTTPS server's plugin that acts as a bridge between a VNC server and web applications
Go to file
2018-10-06 19:58:57 +02:00
test move wasm to new wasm.js repository 2018-09-22 14:37:23 +02:00
.gitignore add webassembly for client decoder 2018-09-21 20:00:55 +02:00
Makefile move wasm to new wasm.js repository 2018-09-22 14:37:23 +02:00
README.md Update README.md 2018-10-03 16:47:11 +02:00
wvnc.c using the new nonblocking plugin interface 2018-10-06 19:58:57 +02:00

antd-wvnc-plugin

Overview about wvnc: https://blog.lxsang.me/post/id/23

An Antd HTTP/HTTPS server's plugin that acts as a bridge between a VNC server and web applications. It allows web application to communicate with VNC server using web socket via a predefined protocol and message format. Web application can use my dedicate javascript library called wvnc.js to communicate with the VNC server using the plugin.

To speed up the data transmission, WVNC uses libjpeg and zlib for data compression.

Demo

A demo of a web based VNC client using the plugin is available at: https://apps.lxsang.me/webVNC

Build from source

As WVNC is an Antd's plugin, it need to be built along with the server. This requires the following application/libraries to be pre installed:

build dep

  • git
  • make
  • build-essential

server dependencies

  • libssl-dev
  • libsqlite3-dev

Plugin Dependencies

  • Zlib
  • libjpeg-turbo
  • libvncserver-dev

build

When all dependencies are installed, the build can be done with a few single command lines:

mkdir antd
cd antd
wget -O- https://get.makeand.run/antd | bash -s "wvnc"

The script will ask for a place to put the binaries (should be an absolute path, otherwise the build will fail) and the default HTTP port for the server config.

Run

To run the Antd server with the wvnc plugin:

/path/to/your/build/antd

Web applications can be put on /path/to/your/build/htdocs, the web socket to wvnc is available at:

ws://your_host:your_port/wvnc

This websocket address can be used with my client side javascript library wvnc.js to provide web based VNC client