POE-Event-Message ================= This small set of classes is a starting point for creating a generic application messaging protocol. The intent is for these to be used as a foundation when building networked and/or event-driven applications such as Web services. Features of POE::Event::Message include the following. . Messages of this class have flexible routing capabilities that work both inside and outside POE-based applications. . A 'local' message routing mechanism is designed to be plug-compatible with POE's existing 'postback' mechanism. This is referred to as a 'routeback' mechanism in this class. . A 'remote' message routing mechanism can be used by message-based client scripts, or perhaps as a simple alternative to the 'IKC' (Inter Kernel Communication) mechanism. . Messages are delivered based on the type of the destination. A 'local' routing will trigger a POE 'post' or 'call' event, while a 'remote' routing invokes a socket connection to a particular host and port. . In addition, this class has the ability to introduce multiple 'forward' and/or 'reverse' routing to multiple event and/or remote host destinations. This allows for temporary interruption of normal message flow, without any of the original participants (events or whatever) knowing or caring. . Messages can also be sent through a file handle, such as from a non-POE child to a POE-based parent process. . Messages can contain almost anything including binary data and complex Perl data structures. Note that POE and the POE kernel are not requirements for using these classes. Time::Hires is highly recommended (as, without it, there is a small but real possibility of generating duplicate message identifiers). INSTALLATION To install this module type the following: perl Makefile.PL make make test make install DEPENDENCIES This module requires the following modules and libraries. The POE kernel is not a requirement for this module. POE::Driver::SysRW POE::Filter::Reference Time::HiRes - Optional, but highly recommended COPYRIGHT AND LICENCE Copyright (C) 2005-2007 by Chris Cobb This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.