summaryrefslogtreecommitdiff
path: root/slixmpp/plugins/xep_0030/disco.py
diff options
context:
space:
mode:
Diffstat (limited to 'slixmpp/plugins/xep_0030/disco.py')
-rw-r--r--slixmpp/plugins/xep_0030/disco.py16
1 files changed, 10 insertions, 6 deletions
diff --git a/slixmpp/plugins/xep_0030/disco.py b/slixmpp/plugins/xep_0030/disco.py
index ea9a33f4..59b1e0cc 100644
--- a/slixmpp/plugins/xep_0030/disco.py
+++ b/slixmpp/plugins/xep_0030/disco.py
@@ -299,23 +299,27 @@ class XEP_0030(BasePlugin):
return self.api['has_identity'](jid, node, ifrom, data)
async def get_info_from_domain(self, domain=None, timeout=None,
- cached=True, callback=None, **kwargs):
+ cached=True, callback=None):
if domain is None:
domain = self.xmpp.boundjid.domain
if not cached or domain not in self.domain_infos:
infos = [self.get_info(
- domain, timeout=timeout, **kwargs)]
+ domain, timeout=timeout)]
iq_items = await self.get_items(
- domain, timeout=timeout, **kwargs)
+ domain, timeout=timeout)
items = iq_items['disco_items']['items']
infos += [
- self.get_info(item[0], timeout=timeout, **kwargs)
+ self.get_info(item[0], timeout=timeout)
for item in items]
- info_futures, _ = await asyncio.wait(infos, timeout=timeout)
+ info_futures, _ = await asyncio.wait(
+ infos,
+ timeout=timeout,
+ loop=self.xmpp.loop
+ )
self.domain_infos[domain] = [
- future.result() for future in info_futures]
+ future.result() for future in info_futures if not future.exception()]
results = self.domain_infos[domain]