Jump to content

KTp/RepeatedDiscussions/Skype: Difference between revisions

From KDE Community Wiki
D ed (talk | contribs)
Created page with "Why don't we support Skype ===Summary=== Because we can't. At least, not well. Skype has not been reversed engineered for use in open source projects. So this involves usin..."
 
D ed (talk | contribs)
 
(8 intermediate revisions by 3 users not shown)
Line 1: Line 1:
Why don't we support Skype
=Why doesn't KTp support Skype=


===Summary===
===Summary===
Line 9: Line 9:


===Desktop API Interface(s)===
===Desktop API Interface(s)===
''''The desktop API is being closed down:
http://blogs.skype.com/2013/11/06/feature-evolution-and-support-for-the-skype-desktop-api/
""


When the Skype client is running on the desktop it provides access for third party applications (http://developer.skype.com/desktop-api-reference) to talk to the application. This is done via either X11 messaging, or via Dbus.
When the Skype client is running on the desktop it provides access for third party applications (http://developer.skype.com/desktop-api-reference) to talk to the application. This is done via either X11 messaging, or via Dbus.
Line 17: Line 23:


We have added the relevant support into KTp for this Telepathy backend, however in reality due to varying versions of Skype, LibPurple, the LibPurple Plugins and finally Telepathy Haze this does not always work. Research into what versions work and don't, would be useful.
We have added the relevant support into KTp for this Telepathy backend, however in reality due to varying versions of Skype, LibPurple, the LibPurple Plugins and finally Telepathy Haze this does not always work. Research into what versions work and don't, would be useful.
==== To get this working ====
* Install telepathy-haze
* Install skype
* Install skype4pidgin (libpurple plugin providing the skype protocol)
* Restart telepathy-haze (if already running) AND mission-control-5. The easiest way to do this is: go offline, wait a few seconds, killall mission-control-5, go online again.
* Open the accounts manager and setup your skype account.
We do not support this, if you have any bugs or problems with the Skype interface, you are on your own.


===The proper API===
===The proper API===


Skype also have a proper API (https://developer.skype.com/), for use by clients into devices and hardware. There is even a directly Telepathy backend for Skype used by Nokia on the N9. Unfortunately this is not open-source, and licensing of the Skype API even prevents us from making our own interface.
Skype also have a proper API (https://developer.skype.com/), for use by clients into devices and hardware. There is even a directly Telepathy backend for Skype used by Nokia on the N9. Unfortunately this is not open-source, and licensing of the Skype API even prevents us from making our own telepathy-skype connection manager.
 
====Sky Kit====
 
There is a new CM being made using Skypekit. See the presentation here:
https://github.com/max-posedon/talk-telepathy-skykit/blob/master/telepathy-skykit.pdf?raw=true
 
Note how the license isn't specified, legality is ambiguous.  


You'll also notice the screenshots are already using KTp. We will support it, but we can't work on it or help it get shipped in distros.


===Solution===
===Workaround===


Try and convince your friends to use a platform based on open standards (such as Google Talk). This is why open standards are awesome!
Try and convince your friends to use a platform based on open standards (such as Google Talk). This is why open standards are awesome!

Latest revision as of 09:42, 27 November 2013

Why doesn't KTp support Skype

Summary

Because we can't. At least, not well.

Skype has not been reversed engineered for use in open source projects. So this involves using Skype APIs. There are two Skype interfaces, both of which are problematic.

Desktop API Interface(s)

'The desktop API is being closed down: http://blogs.skype.com/2013/11/06/feature-evolution-and-support-for-the-skype-desktop-api/ ""


When the Skype client is running on the desktop it provides access for third party applications (http://developer.skype.com/desktop-api-reference) to talk to the application. This is done via either X11 messaging, or via Dbus.

This is requires Skype to be running and is very limited. It does not provide a lot of required information that KTp really needs.

A two LibPurple plugins exist for Skype, each using the interfaces listed. These are exposed via Telepathy through Telepathy-Haze.

We have added the relevant support into KTp for this Telepathy backend, however in reality due to varying versions of Skype, LibPurple, the LibPurple Plugins and finally Telepathy Haze this does not always work. Research into what versions work and don't, would be useful.

To get this working

  • Install telepathy-haze
  • Install skype
  • Install skype4pidgin (libpurple plugin providing the skype protocol)
  • Restart telepathy-haze (if already running) AND mission-control-5. The easiest way to do this is: go offline, wait a few seconds, killall mission-control-5, go online again.
  • Open the accounts manager and setup your skype account.

We do not support this, if you have any bugs or problems with the Skype interface, you are on your own.

The proper API

Skype also have a proper API (https://developer.skype.com/), for use by clients into devices and hardware. There is even a directly Telepathy backend for Skype used by Nokia on the N9. Unfortunately this is not open-source, and licensing of the Skype API even prevents us from making our own telepathy-skype connection manager.

Sky Kit

There is a new CM being made using Skypekit. See the presentation here: https://github.com/max-posedon/talk-telepathy-skykit/blob/master/telepathy-skykit.pdf?raw=true

Note how the license isn't specified, legality is ambiguous.

You'll also notice the screenshots are already using KTp. We will support it, but we can't work on it or help it get shipped in distros.

Workaround

Try and convince your friends to use a platform based on open standards (such as Google Talk). This is why open standards are awesome!