NAME
Skype::Any::Declare - Addition of an interface similar to hubot for Skype::Any
SYNOPSIS
use Skype::Any::Declare;
skype(name => 'ping-pong');
hear 'ping' => sub {
my ($msg) = @_;
$msg->chat->send_message('pong');
};
run;
DESCRIPTION
Skype::Any::Declare has interface similar to hubot.
FUNCTIONS
skype
Return Skype::Any object. Also, this function can specify arguments to pass to the object.
respond
respond qr/pattern/ => sub { my ($chatmessage, @match) = @_; ... };
respond 'string' => sub { my ($chatmessage, @match) = @_; ... };
Register handlers which is called if a message matches regexp. (Only when you received a message from 1:1 chat)
$chatmessage is Skype::Any::Object::ChatMessage object, @match is subgroups in regexp.
respond 'yes' => sub { $_[0]->chat->send_message('no') },
'stop' => sub { $_[0]->chat->send_message('go go go') },
'goodbye' => sub { $_[0]->chat->send_message('hello') };
hear
hear qr/pattern/ => sub { my ($chatmessage, @match) = @_; ... };
hear 'string' => sub { my ($chatmessage, @match) = @_; ... };
Register handlers which is called if a message matches regexp. (Only when you received a message from group chat)
$chatmessage is Skype::Any::Object::ChatMessage object, @match is subgroups in regexp.
hear qr/\A([0-9]{1,2}) : ([0-9]{1,2}) \s+ (.+)\z/xms => sub {
my ($msg, $hour, $min, $reminder) = @_;
...
};
run
run;
Running event loop.