Social Network Plugin for Telepathy Framework
Total Page:16
File Type:pdf, Size:1020Kb
Social network plugin for telepathy framework Kirill Ivashov, Vyacheslav Dimitrov, Kirill Kulakov Petrozavodsk State University Department of Computer Science 9th FRUCT conference, April 26–29, Petrozavodsk, Russia Kirill Ivashov Social network plugin for telepathy framework FRUCT 26–29.04.2011 1 / 14 Table of Contents 1 Telepathy 2 Social network plugin 3 Links 4 Future plans Kirill Ivashov Social network plugin for telepathy framework FRUCT 26–29.04.2011 2 / 14 Telepathy Telepathy — Intro Telepathy — is modular messaging framework, that provides functions for instant messaging applications. Modularity — each protocol is represented by one module. Separate processeses — each module is represented by one process. Language bindings I GObject I C++ (Qt) I Python I Any language that support D-Bus Kirill Ivashov Social network plugin for telepathy framework FRUCT 26–29.04.2011 3 / 14 Telepathy Telepathy — Clients There are several applications, that supports Telepathy Framework. Empathy — Default messaging program for GNOME desktop environment. Maemo IM Client — Default messaging program for Maemo OS MeeGo Client — Default client for Handset version of MeeGo operation system. MeeGo Netbook uses Empathy. Decibel — Obsoleted messaging framework for KDE Kirill Ivashov Social network plugin for telepathy framework FRUCT 26–29.04.2011 4 / 14 Social network plugin Project idea MySocials project that aims to provide set of applications to access to social networks I VKontakte I Facebook I Flickr I Mail.ru Common MySocials API. I Messages I Friends I Photos Kirill Ivashov Social network plugin for telepathy framework FRUCT 26–29.04.2011 5 / 14 Social network plugin Library access approach Advantages: Universality. Not all social networks supports proactive API. Information can be retrieved from different sources. I Private messages I Public messages I Photo Only required information No unnecessary information is transmitting Minimal traffic Kirill Ivashov Social network plugin for telepathy framework FRUCT 26–29.04.2011 6 / 14 Social network plugin Jabber access Jabber Jabber access available only if it is supported by service Jabber updates information faster because of proactive approach. Kirill Ivashov Social network plugin for telepathy framework FRUCT 26–29.04.2011 7 / 14 Social network plugin Architecture libvk libfb Backends responsible for communication with social networks Vkontakte Facebook through MySocials API Backend Backend Channels responsible for communication with client AbstractBackend Settings object encapsulates storing/loading logic and can has Connection Settings different backends (e.g. ini-files, sqlite3) Connection is main DBus, that allows Text ContactList client to create channels managers, Channel Channel channels, receive avatars, presence informations. Client Kirill Ivashov Social network plugin for telepathy framework FRUCT 26–29.04.2011 8 / 14 Social network plugin Plugin features Roster I Periodic update of information I Period of update is set by user Messages I Periodic update I Request for new messages I Plugin not downloads old messages Avatars Kirill Ivashov Social network plugin for telepathy framework FRUCT 26–29.04.2011 9 / 14 Social network plugin Implementation Metrics: 14 GObject classes 6700 Lines of code External tools: GLib — C Library containing a lot of useful tools. (Hash tables, Arrays, RegEx parsers are used in project) Telepathy-GLib — Wrapper around Telepathy DBus API GObject — OOP library for C MySocials — Libraries for access to social networks. Kirill Ivashov Social network plugin for telepathy framework FRUCT 26–29.04.2011 10 / 14 Social network plugin Screenshots Kirill Ivashov Social network plugin for telepathy framework FRUCT 26–29.04.2011 11 / 14 Links Links Wiki: http://oss.fruct.org/wiki/VkTelepathy Repository: https://gitorious.org/vktelepathy MeeGo Repository: https://build.pub.meego.com/package/show? package=vktelepathy&project=home:kulakov OBS Repository: https://build.opensuse.org/package/ show?package=vktelepathy&project=home:mysocials EMail: [email protected] Kirill Ivashov Social network plugin for telepathy framework FRUCT 26–29.04.2011 12 / 14 Future plans Future plans Integration with MeeGo Accounts Framework I Make settings interface for plugin I Modify RPM spec files to support MeeGo Handset Support for different socials networks (not only vkontakte) Kirill Ivashov Social network plugin for telepathy framework FRUCT 26–29.04.2011 13 / 14 Future plans Thanks you for you attention! Kirill Ivashov Social network plugin for telepathy framework FRUCT 26–29.04.2011 14 / 14.