From f700936ac80f44220d04562bb2cd2500111cfcbd Mon Sep 17 00:00:00 2001 From: Jonas Wielicki Date: Fri, 20 Apr 2018 13:25:59 +0200 Subject: Support for replying to IQs --- echoz.sed | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/echoz.sed b/echoz.sed index 2a156be..2f665ea 100755 --- a/echoz.sed +++ b/echoz.sed @@ -61,6 +61,9 @@ bmain-loop; :main-loop; /#; p;n; bmain-loop; + +:handle-iq; +# prepare header; store it in hold space first +h; +# extract new to address +s#^.*from=(['"][^'"]+?['"]).*$#to=\1\n#; +# add copy of header and extract new from address +G; +s#^(.+)\n.+to=(['"][^'"]+?['"]).*$#\1 from=\2#; +# add copy of header and extract id +G; +s#^(.+)\n.+id=(['"][^'"]+?['"]).*$#\1 id=\2#; +# compose header +s#^(.+)$##; +# store result in hold space and fetch original header for further processing +x; + +/type='get'/bsend-error; +/type='set'/bsend-error; +bmain-loop; + +:send-error; +# load composed header from hold space +g; +s#^$#Feature not implemented by sedbot.#; +p;n; +bskip-iq; + +:skip-iq; +# skip remainder of IQ payload until done +/<\/iq/bmain-loop; +n; +bskip-iq; -- cgit v1.2.3