plugins/mod_pubsub/pubsub.lib.lua
changeset 8984 b6cb0a8f75b1
parent 8983 4d2738b99b07
child 9008 7203a1b65d1b
--- a/plugins/mod_pubsub/pubsub.lib.lua	Fri Jul 06 18:00:50 2018 +0200
+++ b/plugins/mod_pubsub/pubsub.lib.lua	Fri Jul 06 18:03:32 2018 +0200
@@ -89,6 +89,22 @@
 	-- No options yet. File a feature request ;)
 };
 
+local node_metadata_form = dataform {
+	{
+		type = "hidden";
+		name = "FORM_TYPE";
+		value = "http://jabber.org/protocol/pubsub#meta-data";
+	};
+	{
+		type = "text-single";
+		name = "pubsub#title";
+	};
+	{
+		type = "text-single";
+		name = "pubsub#description";
+	};
+};
+
 local service_method_feature_map = {
 	add_subscription = { "subscribe" };
 	create = { "create-nodes", "instant-nodes", "item-ids", "create-and-configure" };
@@ -147,6 +163,12 @@
 	end
 	event.exists = true;
 	reply:tag("identity", { category = "pubsub", type = "leaf" }):up();
+	if node_obj.config then
+		reply:add_child(node_metadata_form:form({
+			["pubsub#title"] = node_obj.config.title;
+			["pubsub#description"] = node_obj.config.description;
+		}, "result"));
+	end
 end
 
 function _M.handle_disco_items_node(event, service)