diff --git a/src/common/connection.py b/src/common/connection.py index 3acc7b57e..d02441973 100644 --- a/src/common/connection.py +++ b/src/common/connection.py @@ -87,6 +87,7 @@ class Connection(ConnectionHandlers): else: self.keepalives = 0 self.privacy_rules_supported = False + self.pep_supported = False # Do we continue connection when we get roster (send presence,get vcard...) self.continue_connect_info = None if USE_GPG: diff --git a/src/common/connection_handlers.py b/src/common/connection_handlers.py index 2d853c84e..ced062544 100644 --- a/src/common/connection_handlers.py +++ b/src/common/connection_handlers.py @@ -787,6 +787,12 @@ class ConnectionDisco: #FIXME: see http://www.jabber.ru/bugzilla/show_bug.cgi?id=225 identities = [{'category': 'server', 'type': 'im', 'name': node}] if id[0] == 'p': + if jid == gajim.config.get_per('accounts', self.name, 'hostname'): + for identity in identities: + if identity['category'] == 'pubsub' and identity['type'] == \ + 'pep': + self.pep_supported = True + break if features.__contains__(common.xmpp.NS_BYTESTREAM): gajim.proxy65_manager.resolve(jid, self.connection, self.name) if features.__contains__(common.xmpp.NS_MUC) and is_muc: @@ -1839,6 +1845,8 @@ class ConnectionHandlers(ConnectionVcard, ConnectionBytestream, ConnectionDisco, gajim.proxy65_manager.resolve(proxy, self.connection) self.discoverItems(gajim.config.get_per('accounts', self.name, 'hostname'), id_prefix='p') + self.discoverInfo(gajim.config.get_per('accounts', self.name, + 'hostname'), id_prefix='p') def _on_roster_set(self, roster): raw_roster = roster.getRaw()