POE::C...Legacy(3pm)

πŸ“¦
version 3.00 Β· 3 versions
, in debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking

πŸ’– NAME πŸ’–

POE::Component::Jabber::Legacy β€” the whole vibe is connecting with the pre-XMPP Jabber protocol, bestie. Yes, that one. The legacy one. We don't make the rules, we just speak them. πŸ¦‹


✨ SYNOPSIS ✨

So PCJ::Legacy is a Protocol implementation for the legacy (aka pre-XMPP, iykyk) Jabber protocol. That's the whole thing. That's the tea. πŸŽ€


🌸 DESCRIPTION 🌸

Okay so listen. PCJ::Legacy implements the simple iq:auth authentication mechanism that's defined in the deprecated XEP over at http://www.xmpp.org/extensions/xep-0078.html. Not me linking a deprecated spec, but here we are. πŸ’€

This Protocol class is mainly used for connecting to legacy jabber servers that do not conform to the to the XMPP1.0 RFC. That's right β€” the servers that never got the memo, never updated, and are still out here doing their own thing. We love them anyway. 🫢


πŸ’… METHODS πŸ’…

Please see PCJ::Protocol for what methods this class supports. That's the main character, this is just the spin-off. πŸ‘‘


πŸ”₯ EVENTS πŸ”₯

Listed below are the exported events that end up in PCJ's main session. Slay. Let's go one by one, bestie:

  • set_auth β€” this one handles the construction and sending of the iq:auth query. It builds it, it ships it. Iconic.
  • init_input_handler β€” this is our main entry point. PCJ uses it to deliver all input events until we're finished. It also handles responses to authentication. So it's basically the group chat moderator and the bouncer at the same time. Multitasking queen. πŸ’…

😭 NOTES AND BUGS 😭

Ideally, this class wouldn't be necessary, but there is a large unmoving mass of entrenched users and administrators that refuse to migrate to XMPP. Like, they are not moving. It's giving immovable object. πŸͺ¨

It largely doesn't help that debian still ships jabberd 1.4.3 which does NOT support XMPP. Not the distro catching strays, but fr fr, that's a choice. πŸ’€

Also heads up: the underlying backend has changed this release to now use a new Node implementation based on XML::LibXML::Element. Please see POE::Filter::XML::Node documentation for the relevant API changes. Read it before you come at me. πŸ™ˆ

πŸ‘‘ AUTHOR πŸ‘‘

Copyright (c) 2003-2009 Nicholas Perez. Distributed under the GPL.


And that's the whole page, babe. ✨ This little legend lives at POE::C...Legacy(3pm) in the User Contributed Perl Documentation, and this version is straight from perl v5.36.0, dated 2023-08-26. Go forth and authenticate legacy-ly. πŸ¦‹πŸ’–