dev #2

Merged
marko merged 4 commits from dev into main 2023-01-05 06:22:02 +00:00
2 changed files with 23 additions and 13 deletions
Showing only changes of commit e4e366d817 - Show all commits

View File

@ -31,7 +31,7 @@ use utf8;
# initialize ################################################################## # initialize ##################################################################
sub MSG_Initialize($$) { sub MSG_Initialize($$) {
my %hash = ( my %hash = (
Fn => "CommandMsg", Fn => "CommandMsg",
Hlp => Hlp =>
"[<type>] [<\@device>|<e-mail address>] [<priority>] [|<title>|] <message-text>", "[<type>] [<\@device>|<e-mail address>] [<priority>] [|<title>|] <message-text>",
); );
@ -42,6 +42,7 @@ sub MSG_Initialize($$) {
# regular Fn ################################################################## # regular Fn ##################################################################
sub CommandMsg($$;$$); sub CommandMsg($$;$$);
sub CommandMsg($$;$$) { sub CommandMsg($$;$$) {
my ( $cl, $msg, $testMode ) = @_; my ( $cl, $msg, $testMode ) = @_;
my $return = ""; my $return = "";
@ -112,7 +113,7 @@ sub CommandMsg($$;$$) {
### extract message details ### extract message details
### ###
my ( $msgA, $params ) = parseParams($msg, "[^\\S\\n]", " "); my ( $msgA, $params ) = parseParams( $msg, "[^\\S\\n]", " " );
# only use output from parseParams when # only use output from parseParams when
# parameters where found # parameters where found
@ -638,8 +639,7 @@ m/^@?([A-Za-z0-9._]+):([A-Za-z0-9._\-\/@+]*):?([A-Za-z0-9._\-\/@+]*)$/
ReadingsVal( ReadingsVal(
$gatewayDev, $gatewayDev,
"presence", "presence",
"present" "present" ) eq $_
) eq $_
} @unavailabilityIndicators } @unavailabilityIndicators
) )
@ -648,8 +648,7 @@ m/^@?([A-Za-z0-9._]+):([A-Za-z0-9._\-\/@+]*):?([A-Za-z0-9._\-\/@+]*)$/
ReadingsVal( ReadingsVal(
$gatewayDev, $gatewayDev,
"state", "state",
"present" "present" ) eq $_
) eq $_
} @unavailabilityIndicators } @unavailabilityIndicators
) )
@ -1636,9 +1635,9 @@ m/^(absent|disappeared|unauthorized|disconnected|unreachable)$/i
$loopTitleShrt = $loopTitleShrt =
substr( $loopTitleShrt, 0, 37 ) . "..." substr( $loopTitleShrt, 0, 37 ) . "..."
if ( length($loopTitleShrt) > 40 ); if ( length($loopTitleShrt) > 40 );
$cmd =~ s/%TITLESHRT%/$loopTitleShrt/gi; $cmd =~ s/%TITLESHRT%/$loopTitleShrt/gi;
$loopTitleShrt =~ s/ /_/; $loopTitleShrt =~ s/ /_/;
$cmd =~ s/%TITLESHRT2%/$loopTitleShrt/gi; $cmd =~ s/%TITLESHRT2%/$loopTitleShrt/gi;
$loopTitleShrt =~ s/^([\s\t ]*\w+).*/$1/g; $loopTitleShrt =~ s/^([\s\t ]*\w+).*/$1/g;
$loopTitleShrt = $loopTitleShrt =
substr( $loopTitleShrt, 0, 17 ) . "..." substr( $loopTitleShrt, 0, 17 ) . "..."
@ -1955,19 +1954,24 @@ m/^(absent|disappeared|unauthorized|disconnected|unreachable)$/i
Log3 $logDevice, 5, Log3 $logDevice, 5,
"msg $device: " "msg $device: "
. "$type[$i] route command (Perl): $cmd"; . "$type[$i] route command (Perl): $cmd";
#eval $cmd; #eval $cmd;
my $ret = AnalyzePerlCommand(undef, $cmd); my $ret =
unless ( !$ret || $ret =~ m/^[\s\t\n ]*$/ ) AnalyzePerlCommand( undef, $cmd );
unless ( !$ret
|| $ret =~ m/^[\s\t\n ]*$/ )
{ {
$error = 1; $error = 1;
$loopReturn3 .= "$gatewayDev: $ret\n"; $loopReturn3 .=
"$gatewayDev: $ret\n";
} }
} }
else { else {
Log3 $logDevice, 5, Log3 $logDevice, 5,
"msg $device: " "msg $device: "
. "$type[$i] route command (fhem): $cmd"; . "$type[$i] route command (fhem): $cmd";
my $ret = AnalyzeCommandChain(undef,$cmd); my $ret =
AnalyzeCommandChain( undef, $cmd );
unless ( !$ret unless ( !$ret
|| $ret =~ m/^[\s\t\n ]*$/ ) || $ret =~ m/^[\s\t\n ]*$/ )
{ {

View File

@ -201,6 +201,12 @@ my $db = {
'Low' => 'set %DEVICE% message %MSG%', 'Low' => 'set %DEVICE% message %MSG%',
}, },
'Matrix' => {
'Normal' => 'set %DEVICE% msg %MSG%',
'High' => 'set %DEVICE% msg %MSG%',
'Low' => 'set %DEVICE% msg %MSG%',
},
'Pushover' => { 'Pushover' => {
'Normal' => 'Normal' =>
'set %DEVICE% %Pushover_MTYPE% title=\'%TITLE%\' device=\'%RECIPIENT%:%TERMINAL%\' priority=%PRIORITY% url_title="%URLTITLE%" message=\'%MSG%\'', 'set %DEVICE% %Pushover_MTYPE% title=\'%TITLE%\' device=\'%RECIPIENT%:%TERMINAL%\' priority=%PRIORITY% url_title="%URLTITLE%" message=\'%MSG%\'',
@ -342,7 +348,7 @@ my $db = {
}, },
}, },
'LGTV_WEBOS' => { 'LGTV_WebOS' => {
'Normal' => 'set %DEVICE% screenMsg %MSG%', 'Normal' => 'set %DEVICE% screenMsg %MSG%',
'High' => 'set %DEVICE% screenMsg %MSG%', 'High' => 'set %DEVICE% screenMsg %MSG%',
'Low' => 'set %DEVICE% screenMsg %MSG%', 'Low' => 'set %DEVICE% screenMsg %MSG%',