Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src/server_plugin.py
diff options
context:
space:
mode:
authorRobert 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)
commit5fddf81651e7880b1f0efd9548f2439cec17f373 (patch)
tree166edcd7d2003acff908ea2fc265fa9ffc9ed01a /src/server_plugin.py
parent039a2136304912450d93308367eb0717b65fbf75 (diff)
parent7ac57e29c11931ffc5f2936251448f0b9831d2a7 (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.py36
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, '')
+