Abstract xmpp component written in Erlang/OTP