plugins/mod_muc_unique.lua
author daurnimator <quae@daurnimator.com>
Tue, 18 Feb 2014 17:21:47 -0500
changeset 6091 3a1c39b31497
child 6412 5fd6c739e9bf
permissions -rw-r--r--
plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6091
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
     1
-- XEP-0307: Unique Room Names for Multi-User Chat
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
     2
local uuid_gen = require "util.uuid".generate;
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
     3
module:add_feature "http://jabber.org/protocol/muc#unique"
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
     4
module:hook("iq-get/host/http://jabber.org/protocol/muc#unique:unique", function()
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
     5
	local origin, stanza = event.origin, event.stanza;
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
     6
	origin.send(st.reply(stanza)
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
     7
		:tag("unique", {xmlns = "http://jabber.org/protocol/muc#unique"})
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
     8
		:text(uuid_gen()) -- FIXME Random UUIDs can theoretically have collisions
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
     9
	);
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
    10
	return true;
3a1c39b31497 plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff changeset
    11
end,-1);