Re: Connection Managers and Presence Service
Le vendredi 15 février 2008 à 14:35 -0500, Rene De Santiago a écrit : I've been looking at how to implement a new communication manager that communicates with the OLPC presence service and I'm still trying to make sense out of parts involved there, like DBus, the presence service and the existing plugins (linklocal_plugin.py and server_plugin.py). As you said, these 2 plugins are a simple glue between the PS and 2 Telepathy connection manager. linklocal_plugin is used with telepathy-salut, the XMPP linklocal CM and server_plugin.py with telepathy-gabble, the XMPP/Jabber CM. Can someone provide more insight on the role of the above plugins? It seems that they act as glue between the presence service and the connection managers implemented in C. The OLPC wiki also provides a list of methods for the Presence Service DBus, what are the plugins that interact between the Connection Managers and the Presence Service to satisfy these methods. Furthermore, the DBus documentation talks about bindings that can be use to interface with it, are the plugins mentioned above (linklocal_plugin.py and server_plugin.py) these bindings or are they somewhere else? Also, is there any documentation about the interface between the Connection Managers and the activities? The OLPC wiki only provides a brief document about the methods. Any insight would be appreciated. You can find some documentation on the OLPC wiki: http://wiki.laptop.org/go/Category:Telepathy You'll also be interested in the Telepathy D-Bus specification: http://telepathy.freedesktop.org/spec.html and http://people.collabora.co.uk/~cassidy/spec-olpc.html for the OLPC specific interfaces. What do you want to do exactly? G. ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Connection Managers and Presence Service
Rene De Santiago wrote: I've been looking at how to implement a new communication manager that communicates with the OLPC presence service and I'm still trying to make sense out of parts involved there, like DBus, the presence service and the existing plugins (linklocal_plugin.py and server_plugin.py). Can someone provide more insight on the role of the above plugins? It seems that they act as glue between the presence service and the connection managers implemented in C. The OLPC wiki also provides a list of methods for the Presence Service DBus, what are the plugins that interact between the Connection Managers and the Presence Service to satisfy these methods. Furthermore, the DBus documentation talks about bindings that can be use to interface with it, are the plugins mentioned above (linklocal_plugin.py and server_plugin.py) these bindings or are they somewhere else? The plugins are indeed a simple layer between Presence Service and the Telepathy Connection Managers. The CMs provide all the presence information we are currently working with. The plugins allow us to customise the way Presence Service starts and stops its use of the Telepathy CMs - for example, check if we have an existing connection to the CM and reuse it, or if not, create a connection. If we integrate a new Connection Manager that conforms to the Telepathy Spec, then we would add a new plugin to manage it. Bindings are how a language can talk D-Bus. dbus-python is the python binding. The sugar.presence module talks to Presence Service over the D-Bus session bus. Non-python activities can talk to Presence Service using its D-Bus API - http://wiki.laptop.org/go/Presence_Service_DBus_API. This is not related to how Presence Service talks to the Telepathy CMs, or to the plugins. Presence Service in turn talks to the appropriate Telepathy CM using telepathy-python which goes over D-Bus as well. Activities in some cases also use telepathy-python to talk directly to the Telepathy CM. Guillaume gave the reference for this API, which is the Telepathy D-Bus specification. See http://wiki.laptop.org/go/Presence_Service#Presence_Stack for a diagram. Further questions welcome. Regards Morgan ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Connection Managers and Presence Service
Ar 15/02/2008 am 14:35, ysgrifennodd Rene De Santiago: I've been looking at how to implement a new communication manager that communicates with the OLPC presence service and I'm still trying to make sense out of parts involved there, like DBus, the presence service and the existing plugins (linklocal_plugin.py and server_plugin.py). Can someone provide more insight on the role of the above plugins? It seems that they act as glue between the presence service and the connection managers implemented in C. The OLPC wiki also provides a list of methods for the Presence Service DBus, what are the plugins that interact between the Connection Managers and the Presence Service to satisfy these methods. Furthermore, the DBus documentation talks about bindings that can be use to interface with it, are the plugins mentioned above (linklocal_plugin.py and server_plugin.py) these bindings or are they somewhere else? Also, is there any documentation about the interface between the Connection Managers and the activities? The OLPC wiki only provides a brief document about the methods. Any insight would be appreciated. +-+ ++ +-+ +-+ |tp-gabble| |tp-salut| |activity1| |activity2| +-+ ++ +-+ +-+ ||/ __ / \/ / / \ ~ / : ^ * / / +|* / ?# @ ; , ] ~ { ? | / : / / [ \,/ / /+ % |/ / / | @ | D-Bus ~ | | ' !| || | ( | ! | * |- | * )| _ ?|^ ) % $ ! _| | @ | } | = | | | || | +-+ ++ | | |server_plugin| |linklocal_plugin| | | +-+ ++ / / \ // / \ // / ++/ / |presence-service|__/ ++ The presence service plugins run in the same process as the presence service. The Telepathy connection managers provide a service to the presence service and the activities. The presence service provides a service to the activities. Activities talk to the presence service and the connection managers through a wrapper library in Sugar. Hope this clarifies, -- Dafydd ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel