Challenge
SkyRemote has its own installation and management components and uses Public API methods to establish connections with the Skype client and communicate with it. It provides access to Skype contact information and application-to-application commands. This is why Skype will ask you to allow access to Skype Resources for SkyRemote. The solution we created uses Skype API but is not endorsed, certified or otherwise approved in any way by Skype.
Approach
Skype Desktop API implemented a transport layer with ready-to-use encryption and secure functionalities, so we came up with the idea to create a remote desktop application secured by Skype. SkyRemote application provides data exchange for Skype users without any dedicated server part.
Description
In order to optimize the performance of the remote screen update, the application was written in C ++. It implemented Monitor Filter Driver (based on Microsoft Driver Development Kit) and was developed with the help of Cross-Certificates for Kernel Mode Code Signing.
Since the Skype transport channel is bandlimited, we implemented special algorithms that were aimed to find updated areas of the screen on the remote machine and reduce the traffic data.
SkyRemote sends a custom request to all Skype contacts on client machines and detects whether the contact has SkyRemote installed. Then the product we developed adds the contact to the SkyRemote Contact list and is ready to be used.
Key Features
- Automatic Skype detection.
- Multiple Skype instances support.
- Skype 3.x and Skype 4.x support.
- Automatic detection of friends who have installed SkyRemote.
- Flexible requests to share a local desktop or view remote desktop using Skype.
- Sharing Skype remote desktop control with several friends simultaneously (conference).
- Viewing several Skype remote desktops at once.
- Tray notifications.
- Skype avatars support.
- Fine-grained session quality configuration, such as color depth and JPEG compression.
- Configurable session recording to AVI files.
- Remote clipboard access.
- Desktop remote control using Skype.
Result
SkyRemote provides Skype remote desktop control.
Eventually, it became possible for SCAND C++ developers to create a solid solution for Skype users with remote access through Skype provided. SkyRemote scans the availability of other Skype users to get connected and provide a secure encrypted way to share the information and Desktop performance with other Skype users.
Related Cases
- Cross-platform
- C++
- Qt