diff -r b78fa4cdbf2b -r 106a4bfcb866 example/fbcontactfetcherplugin/fbcontactfetcherplugin.cpp --- a/example/fbcontactfetcherplugin/fbcontactfetcherplugin.cpp Thu Aug 05 16:35:33 2010 +0530 +++ b/example/fbcontactfetcherplugin/fbcontactfetcherplugin.cpp Thu Aug 05 16:46:37 2010 +0530 @@ -25,6 +25,8 @@ #include #include #include +#include +#include #ifdef SMF_XMLPARSING #include #endif @@ -39,6 +41,9 @@ SmfContact contact; #endif +// Todo:- Macro added for limiting items fetched to recent 5 +// Remove after demo +#define SETLIMITOFFIVEFORSMFDEMO 1 /** * Destructor @@ -50,6 +55,54 @@ } /** + * Method to interpret the key sets obtained from credential manager + * @param aApiKey [out] The api key + * @param aApiSecret [out] The api secret + * @param aSessionKey [out] The session key + * @param aSessionSecret [out] The session secret + * @param aAppId [out] The application ID + */ +void FBContactFetcherPlugin::fetchKeys( QString &aApiKey, + QString &aApiSecret, + QString &aSessionKey, + QString &aSessionSecret ) + { + qDebug()<<"Inside FBContactFetcherPlugin::fetchKeys()"; + + qDebug()<<"Reg Token = "<m_smfRegToken; + qDebug()<<"Expiry Date as int = "<m_validity.toTime_t(); + + SmfAuthParams keys; + SmfPluginUtil util; + util.getAuthKeys(keys, m_provider->m_smfRegToken, + m_provider->m_validity, m_provider->m_pluginId); + + qDebug()<<"Number of key-value pairs = "< list = arr.split('\n'); - file.close(); - - QString apiKey(list[0]); - QString apiSecret(list[1]); - QString sessionKey(list[2]); - QString sessionSecret(list[3]); - - qDebug()<<"Api Key = "< list = arr.split('\n'); - file.close(); - - QString apiKey(list[0]); - QString apiSecret(list[1]); - QString sessionKey(list[2]); - QString sessionSecret(list[3]); - - qDebug()<<"Api Key = "<5) + uids.chop(1); + qDebug()<<"Limited to 5 uid string = "<initialize(); @@ -480,8 +504,21 @@ QByteArray response(*aResponse); delete aResponse; - qDebug()<<"FB response = "<parse(response, &ok); + SmfPluginUtil util; + QVariant result = util.parse(response, &ok); if (!ok) { - qDebug()<<"An error occurred during json parsing, error = "<errorString(); + qDebug()<<"An error occurred during json parsing, error = "<parse(response, &ok); + SmfPluginUtil util; + QVariant result = util.parse(response, &ok); if (!ok) { qDebug()<<"An error occurred during json parsing"; @@ -679,7 +720,11 @@ contact.setValue("Name",nameVar); QContactAvatar avatar; - QUrl url(map2["pic_square"].toString()); + QUrl url; + if(0 != map2["pic_square"].toString().size()) + url = map2["pic_square"].toString(); + else + url = QString("http://static.ak.fbcdn.net/rsrc.php/z5HB7/hash/ecyu2wwn.gif"); avatar.setImageUrl(url); QVariant avatarVar = QVariant::fromValue(avatar); contact.setValue("Avatar", avatarVar); @@ -689,6 +734,11 @@ QVariant guidVar = QVariant::fromValue(guid); contact.setValue("Guid", guidVar); + QContactPresence presence; + presence.setCustomMessage(map2["status"].toString()); + QVariant presVar = QVariant::fromValue(presence); + contact.setValue("Presence", presVar); + #if 0 // tesing SmfContact serialization QContactAddress address; @@ -1031,9 +1081,11 @@ m_description = "Facebook contact fetcher plugin description"; m_serviceUrl = QUrl(QString("http://api.facebook.com")); m_pluginId = "fbcontactfetcherplugin.qtplugin"; - m_authAppId = "Facebook AuthAppId"; - m_smfRegToken = "Facebook RegToken"; + m_authAppId = "0xEFE2FD23"; m_supportedInterfaces.append("org.symbian.smf.plugin.contact.fetcher/v0.2"); + QSettings iSettings; + m_smfRegToken = iSettings.value("FBCMRegToken").toString(); + m_validity = iSettings.value("FBExpiryTime").toDateTime(); }