# 3.6 – Virtual Channel (VC) and Dynamic Virtual Channel extension SparkView JavaScript client supports standard RDP virtual channel and dynamical virtual channel extension. You can create multiple virtual channels and dynamic virtual channels on client side using JavaScript (You can only create one VC before 4.0): ``` var r = new svGlobal.Rdp(protocol + gw + "/RDP?"+ s, w, h, server_bpp); var vc = new r.VirtualChannel(); //Use r.DynamicChannel to create a dynamic virtual channel vc.name = "CUST"; vc.process = function(buffer){ console.log(buffer.getByte()); console.log(buffer.getLittleEndian16()); }; vc.onopen = function(){ var data = new Array(7); var rb = new RdpBuffer(data, 0, 7); rb.setByte(1); rb.setLittleEndian16(345); rb.setLittleEndian32(567); rb.markEnd(); vc.send(rb); }; r.addChannel(vc); ``` Virtual Channel is used to communicate with RDP host. You also need to write a plug-in for the RDP host. Please check the following for more information:
[http://msdn.microsoft.com/en-us/library/aa383546(v=vs.85).aspx](http://msdn.microsoft.com/en-us/library/aa383546(v=vs.85).aspx)
[http://www.codeproject.com/Articles/16374/How-to-Write-a-Terminal-Services-Add-in-in-Pure-C](http://www.codeproject.com/Articles/16374/How-to-Write-a-Terminal-Services-Add-in-in-Pure-C)