diff options
author | Robert McQueen <robert.mcqueen@collabora.co.uk> | 2007-11-14 23:23:04 (GMT) |
---|---|---|
committer | Robert McQueen <robert.mcqueen@collabora.co.uk> | 2007-11-14 23:23:04 (GMT) |
commit | 5fddf81651e7880b1f0efd9548f2439cec17f373 (patch) | |
tree | 166edcd7d2003acff908ea2fc265fa9ffc9ed01a /src/server_plugin.py | |
parent | 039a2136304912450d93308367eb0717b65fbf75 (diff) | |
parent | 7ac57e29c11931ffc5f2936251448f0b9831d2a7 (diff) |
Merge branch 'master' of git+ssh://dev.laptop.org/git/projects/presence-service
Diffstat (limited to 'src/server_plugin.py')
-rw-r--r-- | src/server_plugin.py | 36 |
1 files changed, 20 insertions, 16 deletions
diff --git a/src/server_plugin.py b/src/server_plugin.py index 4e793f1..84e93f2 100644 --- a/src/server_plugin.py +++ b/src/server_plugin.py @@ -235,22 +235,6 @@ class ServerPlugin(TelepathyPlugin): TelepathyPlugin._connected_cb(self) - publish_handles, local_pending, remote_pending = \ - self._publish_channel[CHANNEL_INTERFACE_GROUP].GetAllMembers() - - if local_pending: - # accept pending subscriptions - # FIXME: do this async - self._publish_channel[CHANNEL_INTERFACE_GROUP].AddMembers( - local_pending, '') - - # request subscriptions from people subscribed to us if we're not - # subscribed to them - not_subscribed = set(publish_handles) - not_subscribed -= self._subscribe_members - self._subscribe_channel[CHANNEL_INTERFACE_GROUP].AddMembers( - not_subscribed, '') - def _publish_members_changed_cb(self, message, added, removed, local_pending, remote_pending, actor, reason): @@ -289,3 +273,23 @@ class ServerPlugin(TelepathyPlugin): return TelepathyPlugin._handle_connection_status_change(self, status, reason) + + def _publish_channel_cb(self, channel): + TelepathyPlugin._publish_channel_cb(self, channel) + + publish_handles, local_pending, remote_pending = \ + self._publish_channel[CHANNEL_INTERFACE_GROUP].GetAllMembers() + + if local_pending: + # accept pending subscriptions + # FIXME: do this async + self._publish_channel[CHANNEL_INTERFACE_GROUP].AddMembers( + local_pending, '') + + # request subscriptions from people subscribed to us if we're + # not subscribed to them + not_subscribed = set(publish_handles) + not_subscribed -= self._subscribe_members + self._subscribe_channel[CHANNEL_INTERFACE_GROUP].AddMembers( + not_subscribed, '') + |