diff options
Diffstat (limited to 'tgserver')
-rwxr-xr-x | tgserver | 12 |
1 files changed, 6 insertions, 6 deletions
@@ -5,7 +5,7 @@ # Run `tgserver -h` for quick help, or `tgserver -h -v` for full manual. ################################################################################ -$main::VERSION = "0.1.0"; +$main::VERSION = "0.1.1"; use Getopt::Long qw(:config auto_version); use Pod::Usage qw<pod2usage>; @@ -18,6 +18,7 @@ use lib "$FindBin::Bin/lib"; use TgLib qw<fetch_token>; require TgLib::Logger; +require TgLib::Api; my $TOKEN; my $VERBOSE = 0; @@ -40,8 +41,8 @@ while (1) { foreach my $update (@{decode_json <$recv>}) { $logger->debug(sprintf "Update %s", Dumper($update)); my $text = $update->{'message'}{'text'}; - my $chatid = $update->{'message'}{'chat'}{'id'}; - $logger->info("Received update from chat $chatid\n"); + my $chat_id = $update->{'message'}{'chat'}{'id'}; + $logger->info("Received update from chat $chat_id\n"); use IPC::Open2 qw<open2>; my $pid = open2(my $progr, my $progw, "@ARGV"); @@ -53,9 +54,8 @@ while (1) { close($progr); if ($response) { - open(my $send, "|-", "$FindBin::Bin/tgsend --token $TOKEN $chatid"); - print $send $response; - close($send); + my $api = TgLib::Api->new($TOKEN, $logger); + $api->send_message($chat_id, $text, $response); } else { $logger->warn("Empty response, skipping\n"); } |