diff options
-rw-r--r-- | lib/TgLib/Logger.pm | 5 | ||||
-rwxr-xr-x | tgserver | 11 |
2 files changed, 11 insertions, 5 deletions
diff --git a/lib/TgLib/Logger.pm b/lib/TgLib/Logger.pm index fe5d6a9..17a111d 100644 --- a/lib/TgLib/Logger.pm +++ b/lib/TgLib/Logger.pm @@ -1,9 +1,9 @@ package TgLib::Logger; use parent qw<Exporter>; -our @EXPORT = qw<new debug info>; +our @EXPORT = qw<new debug info warn>; -my %level = (info => 1, debug => 2); +my %level = (warn => 0, info => 1, debug => 2); sub log_level { my ($self, $msg, $level) = @_; @@ -20,5 +20,6 @@ sub new { sub debug { log_level(@_, 'debug'); } sub info { log_level(@_, 'info'); } +sub warn { log_level(@_, 'warn'); } 1; @@ -48,12 +48,17 @@ while (1) { print $progw $text; close($progw); my $response = join "", <$progr>; + chomp $response; $logger->debug("'$text' -> @ARGV -> '$response'\n"); close($progr); - open(my $send, "|-", "$FindBin::Bin/tgsend $chatid"); - print $send $response; - close($send); + if ($response) { + open(my $send, "|-", "$FindBin::Bin/tgsend $chatid"); + print $send $response; + close($send); + } else { + $logger->warn("Empty response, skipping\n"); + } } close($recv); } |