3 Commits

Author SHA1 Message Date
eleksir
240712bf42 Use eval on lazy brain init 2022-01-01 03:47:22 +03:00
eleksir
64c8300f93 add missing ping command 2022-01-01 03:44:50 +03:00
eleksir
468baf7156 Fix default loglevel notice -> info 2022-01-01 03:43:25 +03:00
2 changed files with 15 additions and 11 deletions

View File

@@ -43,7 +43,7 @@ my $runAsUid = $UID;
my $piddir = '/var/run/' . basename (abs_path ($PROGRAM_NAME));
my $C = LoadConf ();
my $loglevel = $C->{'loglevel'} // 'notice';
my $loglevel = $C->{'loglevel'} // 'info';
my $logfile;
my $log;

View File

@@ -115,17 +115,19 @@ sub brains (@) {
my $brainname = sprintf '%s/%s.sqlite', $c->{braindir}, $cid;
$hailo->{$chatid} = Hailo->new (
brain => $brainname,
order => 3
);
$hailo->{$chatid} = eval {
Hailo->new (
brain => $brainname,
order => 3
);
};
unless (defined $hailo->{$chatid}) {
if (defined $hailo->{$chatid}) {
$log->info (sprintf 'Lazy init brain: %s', $brainname);
} else {
$log->warn ($EVAL_ERROR);
return 0;
}
$log->info (sprintf 'Lazy init brain: %s', $brainname);
}
return 1;
@@ -170,6 +172,8 @@ my $parse_message = sub {
# В ключевых фразах можно обратиться с некоторыми командами к боту по нику, не используя символ команды
if ($m->{message} =~ /^\s*\Q;m->{misc}->{bot_nick}\E\s*;/ui) {
$reply = 'Чего?';
} elsif ($m->{message} =~ /^(\Q$m->{misc}->{csign}\E|\Q$m->{misc}->{bot_nick}\E\s*\,?\s+)ping\.?\s*$/i) {
$reply = 'Pong.';
} elsif ($m->{message} =~ /^(\Q$m->{misc}->{csign}\E|\Q$m->{misc}->{bot_nick}\E\s*\,?\s+)pong\.?\s*$/i) {
$reply = 'Wat?';
} elsif ($m->{message} =~ /^(\Q$m->{misc}->{csign}\E|\Q$m->{misc}->{bot_nick}\E\s*\,?\s+)пин(г|х)\.?\s*$/ui) {
@@ -181,7 +185,9 @@ my $parse_message = sub {
}
} else {
# Если нам не сообщили ник бота, то ищем команды, используя символ команды
if ($m->{message} =~ /^\Q$m->{misc}->{csign}\Epong\.?\s*$/i) {
if ($m->{message} =~ /^\Q$m->{misc}->{csign}\Eping\.?\s*$/ui) {
$reply = 'Pong.';
} elsif ($m->{message} =~ /^\Q$m->{misc}->{csign}\Epong\.?\s*$/i) {
$reply = 'Wat?';
} elsif ($m->{message} =~ /^\Q$m->{misc}->{csign}\Eпин(г|х)\.?\s*$/ui) {
$reply = 'Понг.';
@@ -189,8 +195,6 @@ my $parse_message = sub {
$reply = 'Шта?';
} elsif ($m->{message} =~ /^\Q$m->{misc}->{csign}\E(хэлп|halp)\s*$/ui) {
$reply = 'HALP!!!11';
}
}