[SmarthomeJ Viessmann Binding] New WARN on every request

Long time no report but suddenly I get those warnings on every request. No change of setup on my side. Did THEY change something (again) without telling?


2023-05-29 17:14:53.436 [WARN ] [ernal.handler.ViessmannBridgeHandler] - Parsing Viessmann response fails: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 19954 path $.data[42].properties.entries.value

First WARN was received at 2023-05-29 14:09 (Germany)

That looks like a changed JSON, which now contains an array instead of an object.

I’d say the same.
Although it is a WARM message only, the JSON isn’t read as far I can tell atm.
Maybe the creator of the binding is still around?

Hi,

I’m working on a solution. Viessmann added a new feature and changed the JSON structure.

Best Ronny

3 Likes

I guess this is the reason why the outside temperature is constant since some time? Neither restarting the Viessmann connect device, nor restarting/re-installing the binding helps.

Same here. I don’t think the data is updated any longer. The reason why the outside temperature is the same since days is probably openhab presistence. Let’s wait and see what Ronny finds out.
I’ve got a vitocal 252 heatpump, so let me know if I can test something.

did you see the message from Viesmann about the (again) changed Endpoint?

Quoting Viessmann:
Starting from July 1, 2023, we will be deprecating the current endpoint for events history and migrating to a new endpoint that offers improved performance and additional capabilities. This change will require you to update your existing API integration to ensure uninterrupted access to the events history data.

Here are the key details you need to know:

** New Endpoint: /iot/v2/events-history/installations/{id}/events*
** Deprecated Endpoint: /iot/v1/events-history/events*

Yes, I saw that. In the next release I will change the endpoints to the new ones. And fix the problem with the JSON

1 Like

The next release will be on OH 4 only, correct?

No.

1 Like

I fixed it for OH 3.x and started a PR on GitHub.

In the next step I will fix it for OH 4

4 Likes

@rogrun Thank you for the fix.

I just removed and reinstalled the addon via the openhab UI (Bindings - other add-ons). It is now running at V3.2.16.
Is this version including the fix already? I could find anything in the changelog for this version.

I am asking because the binding is still not working on machine.
The openhab logs show the following warning:

[WARN ] [ernal.handler.ViessmannBridgeHandler] - Parsing Viessmann response fails: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 20442 path $.data[33].properties.entries.value

I think we need to wait for V3.2.17

1 Like

Yes that’s right.

@J-N-K when do you think we will get V3.2.17?

I have to check some things before release and would like to see two other contributions merged, so I would say: on Thursday, latest on Saturday.

1 Like

Thanks for the effort you did put in for all of us! :+1:

2 Likes

@J-N-K is there any news as to when the new release will appear?

This afternoon.

3 Likes

I updated to 3.2.17 but get this error:

 [WARN ] [ernal.handler.ViessmannBridgeHandler] - Parsing Viessmann response fails: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 60 path $.data[0].properties.entries.value

 [WARN ] [ernal.handler.ViessmannBridgeHandler] - Parsing Viessmann response fails: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 40123 path $.data[80].properties.entries.value

The values do not update.

Please check wich version is installed via the OpenHAB console.

bundle:list | grep -i viessmann

you should see this:
267 │ Active │ 80 │ 3.2.17 │ SmartHome/J Add-ons :: Bundles :: Viessmann Binding

If only one version (3.2.17) is installed please PM me your log in TRACE mode.

For set TRACE mode:
log:set TRACE org.smarthomej.binding.viessmann

Otherwise remove the old version.

2 Likes