aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/generator
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/de/pixart/messenger/generator')
-rw-r--r--src/main/java/de/pixart/messenger/generator/IqGenerator.java19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/main/java/de/pixart/messenger/generator/IqGenerator.java b/src/main/java/de/pixart/messenger/generator/IqGenerator.java
index 42b6a0dd8..f93e3e071 100644
--- a/src/main/java/de/pixart/messenger/generator/IqGenerator.java
+++ b/src/main/java/de/pixart/messenger/generator/IqGenerator.java
@@ -397,4 +397,23 @@ public class IqGenerator extends AbstractGenerator {
options.putString("muc#roomconfig_whois", "anyone");
return options;
}
+
+ public IqPacket requestPubsubConfiguration(Jid jid, String node) {
+ return pubsubConfiguration(jid, node, null);
+ }
+
+ public IqPacket publishPubsubConfiguration(Jid jid, String node, Data data) {
+ return pubsubConfiguration(jid, node, data);
+ }
+
+ private IqPacket pubsubConfiguration(Jid jid, String node, Data data) {
+ IqPacket packet = new IqPacket(data == null ? IqPacket.TYPE.GET : IqPacket.TYPE.SET);
+ packet.setTo(jid);
+ Element pubsub = packet.addChild("pubsub", "http://jabber.org/protocol/pubsub#owner");
+ Element configure = pubsub.addChild("configure").setAttribute("node", node);
+ if (data != null) {
+ configure.addChild(data);
+ }
+ return packet;
+ }
}