# HG changeset patch # User Florian Zeitz # Date 1328641317 -3600 # Node ID 072b05999b4bd9a60455652e91ca6e218444d39d # Parent 7693724881b3f3cdafa35763f00dd040d02313bf mod_conformance_restricted: Module to send XML restricted by RFC 6120 (for conformance testing) diff -r 7693724881b3 -r 072b05999b4b mod_conformance_restricted/mod_conformance_restricted.lua --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mod_conformance_restricted/mod_conformance_restricted.lua Tue Feb 07 20:01:57 2012 +0100 @@ -0,0 +1,34 @@ +-- Prosody IM +-- Copyright (C) 2012 Florian Zeitz +-- +-- This project is MIT/X11 licensed. Please see the +-- COPYING file in the source package for more information. +-- + +local st = require "util.stanza"; + +module:hook("message/host", function (event) + local origin, stanza = event.origin, event.stanza; + local node, host, resource = jid.split(stanza.attr.to); + local body = stanza:get_child_text("body"); + + if resource ~= "conformance" then + return; -- Not interop testing + end + + if body == "PI" then + origin.send(""); + elseif body == "comment" then + origin.send(""); + elseif body == "DTD" then + origin.send("\n]>"); + elseif body == "entity" then + origin.send("&test;"); + else + local reply = st.reply(stanza); + reply:body("Send me one of: PI, comment, DTD, or entity"); + origin.send(reply); + end + + return true; +end);