Pre-Alpha Ezlo hub API update

We’re releasing today an updated version of the API documentation that includes:

  • List of items
  • Value types
  • Item enumerations
  • Broadcast
  • Service methods:
    - get information about installed extensions
    - get information about hub
    - switch a hubPlatform firmware to a Luup one

See the attached PDF:
HUB_API.pdf (3.4 MB)

We’re waiting for your feedback.

Ioana

3 Likes

I find the black background screenshots extremely hard to read. It’s actually uncomfortable to look at a page…

Is that a style choice, or just the fact that you cut and pasted?

Hi @Ioana,

I cannot get this working. The 7 steps listed in the API guide to connect are clear as mud to me. Is any of those needed is you know the local LAN address of the Edge?

I tried the browse command, but that hangs on my Pi:

pi@pi3:~ $ avahi-browse _ezlo._tcp --resolve
+   eth0 IPv4 eZLO g150 controller (45101171)               _ezlo._tcp           local
Failed to resolve service 'eZLO g150 controller (45101171)' of type '_ezlo._tcp' in domain 'local': Timeout reached

I know the box IP address on my local LAN and I assume I can connect using that, but there is no response I can see. The Edge does listen on port 17000 with the latest firmware, but I cannot get a javascript socket to work. This is my test page to list either the devices or items.

Can I get some feedback on this. Is what I do wrong, or does it simply not yet work? This is an HTML page with javascript that I think should work.
ezlo.zip (848 Bytes)

Cheers Rene

@reneboer, it took me a little longer than usual to upgrade but I just confirmed that the _ezlo mDNS entry is still not publishing the service details in 1.0.17. The sprint also took 24 d, instead of 14, so perhaps the team was tackling some some beefier issues.

Hi Blacey,

I noticed that on the .17 release there is now a service listening on port 17000. So thought to give it a try. However, the API online tool does not seem to work with this version. Not sure if you tried that.

In the browser there is no error displayed, but this is what I see in the console:

You do not have any Ezlo hub with the required communication protocol (WebSocket) to use this tool

I’d thought to register again, but that trows an error in the console and it just hangs. So that seems to hint indeed something is wrong with the API interface now.

Cheers Rene

Hi Rene,

No, I haven’t tried to connect, I was just responding to the mDNS browser hanging on your RPI. What I am seeing here, is that after my Edge has been up for a while, it no longer publishes mDNS service items. As you can see below, the _ezlo._tcp mDNS entry is available but there are no items:

However when I first boot my Edge, it publishes the mDNS items for a while and then stops:

image

I “think” the websocket API uses mDNS to lookup the available eZlo services and can’t find one to use. If you reboot your hub and try to connect before the Edge stops publishing the item details, you may be able to connect.

Cheers,
Bruce

Hi Bruce,

Just rebooted the Linux Edge and now I do get a avahi-browse response as expected. It seems to stick even. It shows the details I was using. In other words; still cannot connect to the API locally.

Cheers Rene

Hi Rene,

I’m having the same problem - looks like the Edge is resetting the web socket connection attempt. Not sure why.

Unfortunately, the guide details do not appear correctly on my system so difficult for me to confirm the connection protocol requirement, if any.

Cheers,
Bruce

It looks like the issue with checking of certificates.
An HTML page with javascript run on chrome, right ?
We are using self-signed certificates.
Chrome is not working with self-signed certificates.
In Firefox we can make an exception for work with self-signed certificates but from my experience every 30-40 seconds - disconnect.

The best option is to work from some native GUI.
We are preparing now several examples on python for working with local mode.
Will share it here asap.

2 Likes

Hi @Oleh,

Any ETA on the example scripts?

Cheers Rene

1 Like