I decided to research POE filters today. They look involved and complicated. The good thing is, for a line based protocol it might be as easy as subclassing POE::FIlter::Line and calling it's get() and put() behind the scenes.
Posted from caseywest.com, comment here.