OSDN Git Service

fix class name and use
[mubot4fb/mubot4fb.git] / twmubot4fb.pl
1 #!/usr/bin/perl
2 #
3 # Copyright (c) 2012 ISHIKAWA Mutsumi <ishikawa@hanzubon.jp>
4 # This program is covered by the GNU General Public License 2
5 #
6
7 use strict;
8 use utf8;
9
10 use Config::Any;
11 use Hash::Merge::Simple;
12 use Data::Recursive::Encode;
13
14 use FindBin;
15 use lib ("$FindBin::Bin/lib", '/usr/share/mubot4fb/lib');
16
17 use Mubot4FB::Config;
18
19 use AnyEvent::Twitter::Stream;
20
21 use Data::Dumper;
22
23 my $config_name = $ARGV[0] || 'not_found';
24
25 my $c = Mubot4FB::Config->new($config_name);
26 my $cfg = $c->{cfg};
27
28 die 'missing some config parameters should be defined (irc_server, fb_app_id, fb_app_secret, fb_access_code, fb_page_id fb_postback_url)'
29   if (!defined $cfg->{'fb_app_id'}
30       || !defined $cfg->{'fb_app_secret'}
31       || !defined $cfg->{'fb_access_code'}
32       || !defined $cfg->{'fb_page_id'}
33       || !defined $cfg->{'fb_postback_url'}
34       || !defined $cfg->{'twitter_consumer_key'}
35       || !defined $cfg->{'twitter_consumer_secret'}
36       || !defined $cfg->{'twitter_access_token'}
37       || !defined $cfg->{'twitter_access_secret'}
38       || !defined $cfg->{'db_user'}
39       || !defined $cfg->{'db_pass'}
40     );
41
42 my $mu = Mubot4FB->new($cfg);
43
44 my $done = AnyEvent->condvar;
45
46 my $listener = AnyEvent::Twitter::Stream->new(
47       consumer_key    => $cfg->{'twitter_consumer_key'},
48       consumer_secret => $cfg->{'twitter_consumer_secret'},
49       token           => $cfg->{'twitter_access_token'},
50       token_secret    => $cfg->{'twitter_access_secret'},
51       method          => 'userstream',
52       on_tweet        => sub {
53               my ($tweet) = @_;
54               print Dumper($tweet);
55       },
56   );
57
58 $done->recv;
59
60 1;