projects
/
lab.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
* text log for http://ustre.am/mjex (http://www.ustream.tv/channel/magorokutv#utm_ca...
[lab.git]
/
twitter
/
twitterbot.pl
diff --git
a/twitter/twitterbot.pl
b/twitter/twitterbot.pl
index
249c1bc
..
406ee12
100755
(executable)
--- a/
twitter/twitterbot.pl
+++ b/
twitter/twitterbot.pl
@@
-12,9
+12,11
@@
use utf8;
use Net::Twitter::Lite;
use FindBin qw($Bin);
use YAML::Tiny;
use Net::Twitter::Lite;
use FindBin qw($Bin);
use YAML::Tiny;
+use Date::Parse qw(str2time);
-sub VERBOSE () { $ARGV[0] eq 'verbose' };
-sub DEBUG () { VERBOSE or $ARGV[0] eq 'debug' };
+my $_execmode = $ARGV[0] || 0;
+sub VERBOSE () { $_execmode eq 'verbose' };
+sub DEBUG () { VERBOSE or $_execmode eq 'debug' };
use Data::Dumper;
DEBUG and warn "$0: debug mode";
use Data::Dumper;
DEBUG and warn "$0: debug mode";
@@
-34,17
+36,14
@@
if (! $bot->authorized) {
}
my $tweets = {};
}
my $tweets = {};
-my $tweet;
-
-$tweet = or_search($bot, $conf->{hashtag}, $stat->{search});
-if ($tweet) {
- %$tweets = (%$tweets, %$tweet);
-}
-
-$tweet = mentions_ids($bot, $stat->{mention});
-if ($tweet) {
- %$tweets = (%$tweets, %$tweet);
-}
+%$tweets = (
+ %$tweets,
+ %{ or_search($bot, $conf->{hashtag}, $stat->{search}) }
+);
+%$tweets = (
+ %$tweets,
+ %{ mentions_ids($bot, $stat->{mention}) }
+);
foreach my $id (sort keys %$tweets) {
# $tweets->{$id}{type} eq 'search' => found by search API
foreach my $id (sort keys %$tweets) {
# $tweets->{$id}{type} eq 'search' => found by search API
@@
-142,17
+141,27
@@
sub or_search {
}
);
}
}
);
}
+ VERBOSE and warn Dumper($res);
if ($res->{results}) {
if ($res->{results}) {
- VERBOSE and warn Dumper($res);
foreach my $tweet (@{$res->{results}}) {
my $res = $bot->show_status($tweet->{id});
foreach my $tweet (@{$res->{results}}) {
my $res = $bot->show_status($tweet->{id});
+ VERBOSE and warn Dumper($res);
+
+ my $id = {
+ date => str2time($res->{created_at}),
+ screen_name => $res->{user}{screen_name},
+ status_id => $res->{id},
+ text => $res->{text},
+ user_id => $res->{user}{id},
+ };
if ($res->{retweeted_status}) {
if ($res->{retweeted_status}) {
- $ids->{$tweet->{id}}{type} = 'retweet';
+ $id->{retweet_of} = $res->{retweeted_status}{id};
+ $id->{type} = 'retweet';
}
else {
}
else {
- $ids->{$tweet->{id}}{type} = 'search';
+ $id->{type} = 'search';
}
}
- VERBOSE and warn Dumper($res);
+ $ids->{$tweet->{id}} = $id;
}
}
};
}
}
};
@@
-191,7
+200,12
@@
sub mentions_ids {
$ids = {
map {
$_->{id} => {
$ids = {
map {
$_->{id} => {
- type => 'mention',
+ date => str2time($_->{created_at}),
+ screen_name => $_->{user}{screen_name},
+ status_id => $_->{id},
+ text => $_->{text},
+ type => 'mention',
+ user_id => $_->{user}{id},
}
} @{$res}
};
}
} @{$res}
};