Bug 302122

Summary: Skype appear in list of available protocols even though it is not available
Product: [Unmaintained] telepathy Reporter: David Edmundson <kde>
Component: accounts-kcmAssignee: Telepathy Bugs <kde-telepathy-bugs>
Status: RESOLVED FIXED    
Severity: normal CC: andreaswuest, m.wege, mklapetek
Priority: NOR Keywords: junior-jobs
Version: git-latest   
Target Milestone: 0.5.1   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In: 0.5.1
Sentry Crash Report:

Description David Edmundson 2012-06-18 12:37:08 UTC
qdbus --literal org.freedesktop.Telepathy.ConnectionManager.haze /org/freedesktop/Telepathy/ConnectionManager/haze org.freedesktop.Telepathy.ConnectionManager.ListProtocols 
{"mbpurple-twitter", "somsaks-twitter", "gadugadu", "zephyr", "groupwise", "icq", "mxit", "local-xmpp", "msn-pecan", "aim", "mbpurple-identica", "msn", "sametime", "myspace", "irc", "mbpurple-laconica", "jabber", "yahoo", "sip", "yahoojp"}


Still appears in accounts KCM list.

(I guess our protocol only checks for "has CM", not "has CM and that CM supports this protocol")
Comment 1 m.wege 2012-06-18 14:38:52 UTC
May be it has something to do with a 32/64bit missmatch? I have 64bit version of Kubuntu. I know that skype with version2 only provided a 32bit package. The new version of Skype for Linux comes with a 32bit packages which is disguised as a 64bit-package. So may be that is the reason why KDE telepathy has problems (but: It works perfect with pidgin).
Comment 2 m.wege 2012-06-18 15:17:19 UTC
May be a related upstream bug:
https://code.google.com/p/skype4pidgin/issues/detail?id=193
Comment 3 David Edmundson 2012-07-16 10:18:52 UTC
Found the bug:

when generating the list based on profiles we simply check the connectionmanager (haze) exists, however, not that this connection manager supports the relevant protocol

void ProfileListModel::populateList()
{
...
        //don't include profiles which we don't have a CM for
        if (! m_connectionManagerNames.contains(profile->cmName())) {
            continue;
        }
..
}

This logic needs to be improved.
Comment 4 Rohan Garg 2012-08-20 17:45:27 UTC
*** Bug 305503 has been marked as a duplicate of this bug. ***
Comment 5 David Edmundson 2012-09-20 20:41:33 UTC
> Git commit 900824a2f8ea5eb35a483e40498a593842bdb7ce by David Edmundson.
> Committed on 20/09/2012 at 22:37.
> Pushed by davidedmundson into branch 'kde-telepathy-0.5'.
>
> Check connection manager supports protocol listed in profile.
>
> This should fix the issue of skype appearing in the list when telpeathy-haze was installed but pidgin-skype was not.
> ConnectionManagers require having becomeReady() called before the list of protocols they support can be used, hence converting from a list of CMs to a hash of CmPtrs
>
> REVIEW: 106515
>
> M  +40   -7    src/KCMTelepathyAccounts/profile-list-model.cpp
> M  +3    -1    src/KCMTelepathyAccounts/profile-list-model.h