clix/mirror.lua

Sat, 24 Jun 2023 09:59:07 +0200

author
Kim Alvefur <zash@zash.se>
date
Sat, 24 Jun 2023 09:59:07 +0200
changeset 170
0d561f921c13
parent 27
5b58c002d6ad
permissions
-rw-r--r--

clix.adhoc: Move stanza to dataform converter here

Removes the need for verse to have a custom util.dataforms fork only for
this

return function (opts, arg)
	if opts.short_help then
		print("Echo received stanzas back to sender");
		return;
	end
	local function on_connect(conn)
		local function on_stanza(stanza)
			if stanza.name == "presence" and opts.presence
				and not opts.mirror_presence then
				return;
			end
			stanza.attr.to, stanza.attr.from = stanza.attr.from, stanza.attr.to;
			conn:send(stanza);
			stanza.attr.to, stanza.attr.from = stanza.attr.from, stanza.attr.to;
		end
		conn:hook("stanza", on_stanza);
	end
	return clix_connect(opts, on_connect);
end

mercurial