Mystrom, http, json and displaying usage...a bit lost

  • Platform information:
    • Hardware: VM on ESXi
    • OS: Ubuntu 16.04
    • Java Runtime Environment: Zulu-8
    • openHAB version: latest

Hello guys and girls,

Long time Domoticz user, I got a bit tired of the very few updates it gets. It works OK at home, but I need something with more active development so I checked out OH2.

So, I’m just playing with it at the moment, went through the beginners guide in the documentation. But I can’t figure out what I’m not doing properly, googled around but still stuck.

Long story short, I got a few MyStrom plugs at home. I currently retrieve power/status in domoticz with a php script. I know there’s a MyStrom add-in for OH, but I do not have a mystrom account and do not intend to create one.

Here’s the situation. MyStrom ouputs a very simple JSON at the URL: http:/ip/report, and it looks like this:

“power”: 801.924622,
“relay”: true

So I figured using http binding and JSON transform was the way to go. in http.cfg I have:


Created an item with this:

Number mystrom1 “mystrom1 Usage” { http="<[$.power)]" }

In events.log, I can see the power usage change every 5 seconds, so polling works.

Now my question is, how do I display this information in a sitemap? I tried this:

sitemap mine label=“Mine” {
Number item=mystrom1 label=“mystrom1 Usage”

But OH errors out saying it couldn’t find any number (in openhab.log). I just don’t understand exactly what I’m doing wrong so if someone could pich in that 'be great :slight_smile:


OK got it myself, had to do some formatting:

Number mystrom1 “Value: [%.0f W]” { http="<[$.power)]" }

In the sitemap:

sitemap mine label=“Mine” {
Text item=mystrom1 label=“RIG1 Usage”

You don’t need to set the label twice. This feature is only useful if you want the same item in different places in your sitemap with different labels (e.g. a group of all lights in a house should have the room in the label, while the same item should not have the room in the label when placed in a group with all items of a room)

As you defined a http cache (this is in http.cfg) you should use this for the item:

Number mystrom1 “RIG1 Usage [%.0f W]” { http="<[mystrom1:5000:JSONPATH($.power)]" }

or simply delete the cache, as it’s not useful here :wink: (would be, if you want get other information from the same cached report)

Hello Udo,

Thanks for the tip, indeed the caching will not be necessary here!