aboutsummaryrefslogtreecommitdiff
path: root/src/QXmppDiscoveryManager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/QXmppDiscoveryManager.cpp')
-rw-r--r--src/QXmppDiscoveryManager.cpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/QXmppDiscoveryManager.cpp b/src/QXmppDiscoveryManager.cpp
index e09a2318..ca00c5c3 100644
--- a/src/QXmppDiscoveryManager.cpp
+++ b/src/QXmppDiscoveryManager.cpp
@@ -137,19 +137,20 @@ QXmppDiscoveryIq QXmppDiscoveryManager::capabilities()
iq.setFeatures(features);
- // TODO: get identities from the extensions itself like the features
// identities
QList<QXmppDiscoveryIq::Identity> identities;
- QXmppDiscoveryIq::Identity identity;
-
- identity.setCategory("automation");
- identity.setType("rpc");
- identities.append(identity);
+ QXmppDiscoveryIq::Identity identity;
identity.setCategory(clientCategory());
identity.setType(clientType());
identity.setName(clientName());
- identities.append(identity);
+ identities << identity;
+
+ foreach(QXmppClientExtension* extension, client()->extensions())
+ {
+ if(extension)
+ identities << extension->discoveryIdentities();
+ }
iq.setIdentities(identities);
return iq;