NAME
Mojolicious::Plugin::EventSource - A plugin to make it eazy to use EventSource with Mojolicious
VERSION
Version 0.3
SYNOPSIS
use
Mojolicious::Lite;
BEGIN{ plugin
'Mojolicious::Plugin::EventSource'
,
timeout
=> 300 }
get
'/'
=>
'index'
;
event_source
'/event'
=>
sub
{
my
$self
=
shift
;
my
$id
= Mojo::IOLoop->recurring(
1
=>
sub
{
my
$pips
=
int
(
rand
6) + 1;
$self
->emit(
"dice"
,
$pips
);
});
$self
->on(
finish
=>
sub
{ Mojo::IOLoop->drop(
$id
) });
} =>
"event"
;
app->start;
__DATA__
@@ index.html.ep
<!doctype html><html>
<head><title>Roll The Dice</title></head>
<body>
<script>
var events = new EventSource('<%= url_for 'event' %>');
// Subscribe to "dice" event
events.addEventListener('dice', function(event) {
document.body.innerHTML += event.data + '<br/>';
}, false);
</script>
</body>
</html>
EXPORT
If you are using Mojolicious::Lite it exports the shortcut event_source to your main.
HELPERS
emit
Emits a event.
METHODS
Mojolicious::Plugin::EventSource inherits all methods from Mojolicious::Plugin and implements the following new one.
register
$plugin->register;
Register plugin helper and shortcut in Mojolicious application.
AUTHOR
Fernando Correa de Oliveira, <fco at cpan.org>
Thanks to Gabriel Vieira and #mojo (irc.perl.org) for the help.
BUGS
Please report any bugs or feature requests to bug-mojolicious-plugin-eventsource at rt.cpan.org
, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Mojolicious-Plugin-EventSource. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.
SUPPORT
You can find documentation for this module with the perldoc command.
perldoc Mojolicious::Plugin::EventSource
You can also look for information at:
GitHub: GitHug Repo
RT: CPAN's request tracker (report bugs here)
http://rt.cpan.org/NoAuth/Bugs.html?Dist=Mojolicious-Plugin-EventSource
AnnoCPAN: Annotated CPAN documentation
CPAN Ratings
http://cpanratings.perl.org/d/Mojolicious-Plugin-EventSource
Search CPAN
ACKNOWLEDGEMENTS
LICENSE AND COPYRIGHT
Copyright 2012 Fernando Correa de Oliveira.
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.