NAME

POE::Component::Proxy::MSN - POE Component that is an MSN Messenger server

SYNOPSIS

  use POE qw(Component::Proxy::MSN);

  # spawn MSN session
  POE::Component::Proxy::MSN->spawn(
	alias => 'msnproxy',            # Optional, default
	ip => 'any',                    # Optional, ip to bind to or any (default)
	port => 1863,                   # Optional, default
	msn_server => '207.46.106.79',  # Server to connect to, not optional
	msn_port => 1863,               # Just leave this at 1863, not optional
  );
  
  # register your session as MSN proxy observer in _start of a new session
  POE::Session->create(
  	inline_states => {
		_start => sub {
			$_[KERNEL]->post(msnproxy => 'register');
		}
		msn_logged_in => sub {
			my ($kernel, $cmd) = @_[KERNEL, ARG0];
			# tell them they are on the proxy, this is called when they log in
			if ($cmd->{data} =~ m/(\S+\@\S+)/) {
				$kernel->post(msnproxy => toast => {
					text => "MSN Proxy Active",
					site_url => 'http://teknikill.net/?MSNProxy',
					action_url => '/',
					options_url => '/',
					# not speciying email will toast all users 
					email => $1, # email targets a specific user that is logged in
				});
			}
		},
	}
  );

  $poe_kernel->run;

DESCRIPTION

POE::Component::Proxy::MSN is a POE component that proxys the MSN Messenger service and allows you to send your own notifications (toasts).

SETUP

Windows: (Backup your registry beforehand, I'm not responible for your actions) Edit the registry, the key is HKEY_CURRENT_USER\Software\Microsoft\MSNMessenger\Server change the value using the ip of the server, like this: 192.168.0.4;192.168.0.4:1863

Linux: (Various clients) Find where messenger.hotmail.com is specified, and change it to the ip of the server

TODO

msn_server and msn_port WILL go away in a future release, it will be automatic connection timeouts

There might are some bugs, please report them.

AUTHOR

David Davis <xantus@cpan.org>

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Use at your own risk.

SEE ALSO

See the examples directory for more ways to use this module.

POE