Is it possible to use XMPP for a desktop sharing application ? is there any inconvenience ?
There is no official protocol extension (XEP) for desktop sharing over XMPP,
and I'm not aware of any application offering desktop sharing over XMPP.
Technically, I guess it is possible to send the right information across. XMPP is called extensible because in a way it is. Basically XMPP allows you to send arbitrary XML to a receiver without the server needing to be configured to "accept that data". Only your clients need to be aware of it. It is not technically necessary to make/use an official extension.
What you would do would be to encapsulate VNC or RDP packets into the XML payload of the xmpp messages. Probably encoding it in a CDATA section (most efficient). The main problem that you might have is latency caused by the messaging to be routed via the server.
Yes it is! XMPP is an easy and extensible protocol, there are plenty of libraries to work with.
Major considerations would be:
- Port and firewalls. Are any of the PC's locked down?
- Application permission. Do you need to run the client app with elevated privs to access functionality, like remote control and device accesibility?
- Multi-user. XMPP has group chat functionality, will that be used?
- Robust. You can send offline messages.
If you don't need remote-control functionality, but just an app to share a whiteboard, text editor or such, then it should work fine.