diff --git a/fhem/CHANGED b/fhem/CHANGED index e33accc25..445c246b9 100644 --- a/fhem/CHANGED +++ b/fhem/CHANGED @@ -1,5 +1,6 @@ # Add changes at the top of the list. Keep it in ASCII, and 80-char wide. # Do not insert empty lines here, update check depends on it. + - bugfix: 72_TA_CMI_JSON: skipping invalid JSON - feature: 50_Signalbot: text formatting and emoticons via unicode - feature: 70_ESCVP21net.pm: toggle, TW7400, new Readings - new: lib/FHEM/Text/Unicode: apply text styles in Unicode diff --git a/fhem/FHEM/72_TA_CMI_JSON.pm b/fhem/FHEM/72_TA_CMI_JSON.pm index f5c7b2d76..5863384b9 100755 --- a/fhem/FHEM/72_TA_CMI_JSON.pm +++ b/fhem/FHEM/72_TA_CMI_JSON.pm @@ -271,6 +271,16 @@ sub ParseHttpResponse($$$) { readingsEndUpdate($hash, 1); } elsif($data ne "") { my $keyValues = json2nameValue($data); + my $j2nvErr = $keyValues->{json2nameValueErrorText}; + if (defined $j2nvErr) { + Log3 $name, 1, "TA_CMI_JSON ($name) - JSON problem: $j2nvErr. Skipping. Can be ignored if not occurring too often."; + readingsBeginUpdate($hash); + readingsBulkUpdate($hash, 'state', 'ERROR', 0); + readingsBulkUpdate($hash, 'error', $j2nvErr, 0); + readingsEndUpdate($hash, 1); + + return undef; + } my $canDevice = extractDeviceName($keyValues->{Header_Device}); $hash->{CAN_DEVICE} = $canDevice;