Software /
code /
prosody
Annotate
plugins/mod_muc_unique.lua @ 11640:51598e46e136
util.stanza: Simplify and make pretty-printing look nicer
I've had this color theme in a local debug module for some time and I
quite like it. The colors are from the XMPP logo.
Removes extra XML serialization implementation in favor of the standard
one. Also removes recursive str=str..more string building.
The new two-level gsub has the accumulator in C space so shouldn't be
too bad. The inner gsub calls use no callback, so should be fast and
not create all that much garbage.
No serious benchmarking has been done, but who cares if it looks nice?
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 07 Nov 2020 22:09:46 +0100 |
parent | 8878:7c3e16fdaf1d |
child | 12977:74b9e05af71e |
rev | line source |
---|---|
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 |
6409
5fd6c739e9bf
plugins/mod_muc_unique: Fix undefined global access (thanks Lance)
Waqas Hussain <waqas20@gmail.com>
parents:
6091
diff
changeset
|
2 local st = require "util.stanza"; |
8878
7c3e16fdaf1d
mod_muc_unique: Use util.id for more compact identifiers
Kim Alvefur <zash@zash.se>
parents:
6409
diff
changeset
|
3 local unique_name = require "util.id".medium; |
6091
3a1c39b31497
plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff
changeset
|
4 module:add_feature "http://jabber.org/protocol/muc#unique" |
6409
5fd6c739e9bf
plugins/mod_muc_unique: Fix undefined global access (thanks Lance)
Waqas Hussain <waqas20@gmail.com>
parents:
6091
diff
changeset
|
5 module:hook("iq-get/host/http://jabber.org/protocol/muc#unique:unique", function(event) |
6091
3a1c39b31497
plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff
changeset
|
6 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
|
7 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
|
8 :tag("unique", {xmlns = "http://jabber.org/protocol/muc#unique"}) |
8878
7c3e16fdaf1d
mod_muc_unique: Use util.id for more compact identifiers
Kim Alvefur <zash@zash.se>
parents:
6409
diff
changeset
|
9 :text(unique_name():lower()) |
6091
3a1c39b31497
plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff
changeset
|
10 ); |
3a1c39b31497
plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff
changeset
|
11 return true; |
3a1c39b31497
plugins/muc/mod_muc: Move Xep-0307 MUC unique to seperate file
daurnimator <quae@daurnimator.com>
parents:
diff
changeset
|
12 end,-1); |