30_HUEBridge.pm: gracefully handle empty and non json answers. probably due to bridge overload.

git-svn-id: https://svn.fhem.de/fhem/trunk@7316 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
justme1968
2014-12-23 21:44:26 +00:00
parent a39083219b
commit 91c3e472d0

View File

@@ -535,6 +535,14 @@ HUEBridge_HTTP_Call($$$;$)
return "HTTP Error Code " . $1;
}
if( !$ret ) {
Log3 $name, 2, "$name: empty answer received";
return undef;
} elsif( $ret !~ m/^[\[{].*[\]}]$/ ) {
Log3 $name, 2, "$name: invalid json detected: $ret";
return undef;
}
# try {
# from_json($ret);
# } catch {
@@ -625,7 +633,10 @@ HUEBridge_dispatch($$$;$)
if( $err ) {
Log3 $name, 2, "$name: http request failed: $err";
} elsif( $data || $json ) {
if( $data && $data !~ m/^[\[{].*[\]}]$/ ) {
if( !$data ) {
Log3 $name, 2, "$name: empty answer received";
return undef;
} elsif( $data && $data !~ m/^[\[{].*[\]}]$/ ) {
Log3 $name, 2, "$name: invalid json detected: $data";
return undef;
}