# NAME Slack::RTM::Bot - This is a perl module helping to create slack bot with Real Time Messaging(RTM) API. # SYNOPSIS use Slack::RTM::Bot; my $bot = Slack::RTM::Bot->new( token => '<API token>'); $bot->on({ channel => 'general', text => qr/.*/ }, sub { my ($response) = @_; print $response->{text}."\n"; } ); $bot->start_RTM(sub { $bot->say( channel => 'general', text => '<!here> hello, world.' ); $bot->say( channel => '@username', text => 'hello, world.' ); while(1) { sleep 10; print "I'm not dead\n"; } }); # METHODS ## new method new(token => $token) Constructs a [Slack::RTM::Bot](https://metacpan.org/pod/Slack::RTM::Bot) object. The `$token` is the slack API token. ## on method on(\%event, $callback) `$callback` will be executed when it fitted the `\%event` conditions. The `\%event` key is equal to a key of json received from slack, and value is estimated as regex. `$callback` is handed JSON object of message received from Slack. ## start\_RTM method start_RTM($callback) It start Real Time Messaging API. `$callback` will be executed when establish connection. `start_RTM` make child process. Thus, you must call `stop_RTM` if you want to kill child processes before stop main process. ## stop\_RTM method stop_RTM() It stop Real Time Messaging API. ## say method say(%options) It sent a message to a Slack. The channel name can be used to designate channel. if you want to send a direct message, let designate the @username as a channel. # SOURCE CODE This is opensource software. https://github.com/duck8823/Slack-RTM-Bot # HOW TO CONTRIBUTE ## with installing The fastest way to get started working with the code is to run the following commands: $ git clone https://github.com/duck8823/Slack-RTM-Bot.git $ cd Slack-RTM-Bot $ cpanm --installdeps . $ perl Build.PL $ ./Build $ ./Build install $ ./Build test # run the tests ## without installing or without installing Slack-RTM-Bot, run the following commands: $ git clone https://github.com/duck8823/Slack-RTM-Bot.git $ cd Slack-RTM-Bot $ cpanm --installdeps . # install dependencies and run your script with \`-I/path/to/Slack-RTM-Bot/lib\` option. $ perl -I/path/to/Slack-RTM-Bot/lib your_script.pl # SEE ALSO https://api.slack.com/rtm # LICENSE The MIT License (MIT) Copyright (c) 2016 Shunsuke Maeda See LICENSE file. # AUTHOR Shunsuke Maeda <duck8823@gmail.com>