node-rfb2
RFB wire protocol client and server
var rfb = ;var r = rfb; r; r; r; // x, y, button state (bit mask for each mouse button)r; // keycode, is down?r; // screen updatesr; r; r; r; // force update// updates are requested automatically after each new received update// you may want to have more frequent updates for high latency / high bandwith connectionr; // incremental?, x, y, w, h r; // close connection
Status:
Ready
- pointer, keyboard, cutText, requestUpdate client messages
- colormap, bell, cutText server messages
- Raw FB update encoding
- pseudoDesktopSize and copyRect pseudo rect updates
- record/replay to/from file
In progress:
- Hextile encoding support
- Server side protocol
TODO:
- ZRle, RRE, CoRRE, Zlib, Tight encodings
- ARD and MS security types
- VNC server with x11 and COMPOSITE/DAMAGE extensions
see also:
- node-rfb - Substack's implementation of rfb protocol.
- VNC client on 200 lines of JavaScript - blog post and HTML5 client using node-rfb2
- Vnc-over-gif - vnc to gif proxy server. Stream your screen to animated gif image!
- rfbrecord - stream VNC connection to video file
- ANSI-vnc - terminal vnc client.
- node-vnc - graphical vnc client for X Window graphics using node X11 client.
- vnc.js - LinkedIn intern hackday 2011 project
- rdpy - rfb and rdp implementation in python