mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-05-01 20:20:10 +00:00
75_MSG: fix utf8 encoding (Forum #39983)
git-svn-id: https://svn.fhem.de/fhem/trunk/fhem@19215 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
4eac9d4d3e
commit
3f403d5a5e
@ -25,6 +25,7 @@ use strict;
|
|||||||
use warnings;
|
use warnings;
|
||||||
use Data::Dumper;
|
use Data::Dumper;
|
||||||
use Time::HiRes qw(time);
|
use Time::HiRes qw(time);
|
||||||
|
use Encode;
|
||||||
use utf8;
|
use utf8;
|
||||||
|
|
||||||
# initialize ##################################################################
|
# initialize ##################################################################
|
||||||
@ -235,19 +236,19 @@ s/^[\s\t ]*([!]?(([A-Za-z0-9%+._-])*@([%+a-z0-9A-Z.-]+))[\w,@.!?|:]*)[\s\t ]+//
|
|||||||
|
|
||||||
# Use JSON module if possible
|
# Use JSON module if possible
|
||||||
eval {
|
eval {
|
||||||
require JSON;
|
require JSON::PP;
|
||||||
import JSON qw( decode_json );
|
import JSON::PP qw( decode_json );
|
||||||
};
|
};
|
||||||
if ($@) {
|
if ($@) {
|
||||||
Log3 $globalDevName, 3,
|
Log3 $globalDevName, 3,
|
||||||
"msg: Error loading Perl::JSON. "
|
"msg: Error loading JSON::PP. "
|
||||||
. "Please switch to new syntax to use user parameters";
|
. "Please switch to new syntax to use user parameters";
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log3 $globalDevName, 4,
|
Log3 $globalDevName, 4,
|
||||||
"msg: Please switch to new syntax to use user parameters";
|
"msg: Please switch to new syntax to use user parameters";
|
||||||
my $o;
|
my $o;
|
||||||
eval '$o = decode_json( Encode::encode_utf8($1) ); 1';
|
eval '$o = decode_json( encode_utf8($1) ); 1';
|
||||||
if ($@) {
|
if ($@) {
|
||||||
Log3 $globalDevName, 5,
|
Log3 $globalDevName, 5,
|
||||||
"msg: Error decoding JSON for user parameters: $@";
|
"msg: Error decoding JSON for user parameters: $@";
|
||||||
@ -1954,18 +1955,19 @@ 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;
|
||||||
unless ( !$@ || $@ =~ m/^[\s\t\n ]*$/ )
|
my $ret = AnalyzePerlCommand(undef, $cmd);
|
||||||
|
unless ( !$ret || $ret =~ m/^[\s\t\n ]*$/ )
|
||||||
{
|
{
|
||||||
$error = 1;
|
$error = 1;
|
||||||
$loopReturn3 .= "$gatewayDev: $@\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 = fhem $cmd, 1;
|
my $ret = AnalyzeCommandChain(undef,$cmd);
|
||||||
unless ( !$ret
|
unless ( !$ret
|
||||||
|| $ret =~ m/^[\s\t\n ]*$/ )
|
|| $ret =~ m/^[\s\t\n ]*$/ )
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user