gaetancollaud / digitalstrom-mqtt

Bridge between digitalSTROM and MQTT
GNU Affero General Public License v3.0
23 stars 4 forks source link

Door bell with GN-KM200 #21

Closed IcyT closed 2 years ago

IcyT commented 2 years ago

Hi, so far I love your integration and it works fine for my shutters. Thanks a lot! Unfortunately I don't see any event in MQTT explorer when somebody rings my door bell. I use the green block (GN-KM200) for it.

In the beginning I had your bridge running in debug mode and if I remember correctly, I saw an event like this: digitalstrom/scenes//73/event I have no idea, why there is an empty part in the path and why it just appeared in debug mode. But maybe this information can help?

Any idea how I can get that to work? I'm willing to provide all information needed. Unfortunately I have no experience with Go, otherwise I would have tried it on my own somehow.

Thanks again!

gaetancollaud commented 2 years ago

Hello, Glad that my work can be useful.

Can you try to name the preset maybe. I had to do that at home.

Example (you can see that the light presets have names, but not the blinds): Screenshot from 2021-12-23 18-28-04

Then you can use digitalstrom/scenes/DEVICE_NAME/PRESET_NAME/event as seen here: Screenshot from 2021-12-23 18-30-30

IcyT commented 2 years ago

Hm, I think with the green block is a bit different (sorry, screenshot is in German): image

There is more like a global scene(?) and I can use the scene responder to react on that: image

So I don't know, where I can set a preset name here 🙁

gaetancollaud commented 2 years ago

Ok, unfortunately, I don't have this device so I cannot really test myself. Can you do a few tests for me ?

First, put the LOG_LEVEL to TRACE (see the readme). You will have a tons of log sorry...

Then, press the door bell and look for the log message containing Events received (source)

I hope you receive some log... If so, please post it here

IcyT commented 2 years ago

Yes, I think this device is quite rarely used, but very helpful for me (receiving a notification on the phone, so you can have the doorbell muted, while the child sleeps).

I just gave it a try and unfortunately there was no "Events received" while running with LOG_LEVEL: TRACE. (I had the output written into a file, so I could search for it)

I then did the same with LOG_LEVEL: DEBUG again and I found something there, also some errors:

[90m2021-12-24T15:06:52+01:00[0m [33mDBG[0m Updating device  [36mdevice=[0m
[90m2021-12-24T15:06:52+01:00[0m [31mWRN[0m Unable to update device [31merror=[0m[31m"Error with digitalstrom API: Could not find node named '/apartment/zones/zone25757/devices/302ed89f43f0000000000ec0000a080e00/status/outputs/powerLevel/targetValue'"[0m [36mdevice=[0m
[90m2021-12-24T15:06:52+01:00[0m [33mDBG[0m Updating device  [36mdevice=[0m"Rauchwarnmelder Aktiv"
[90m2021-12-24T15:06:52+01:00[0m [33mDBG[0m Updating device  [36mdevice=[0m
[90m2021-12-24T15:06:52+01:00[0m [33mDBG[0m Updating device  [36mdevice=[0m"Türöffner"
[90m2021-12-24T15:06:52+01:00[0m [31mWRN[0m Unable to update device [31merror=[0m[31m"Error with digitalstrom API: Could not find node named '/apartment/zones/zone14/devices/302ed89f43f0000000000ec0000a080f00/status/outputs/powerLevel/targetValue'"[0m [36mdevice=[0m"Türöffner"
[90m2021-12-24T15:06:52+01:00[0m [33mDBG[0m Updating device  [36mdevice=[0mKlingel
[90m2021-12-24T15:07:21+01:00[0m [33mDBG[0m Updating circuits values
[90m2021-12-24T15:07:38+01:00[0m [32mINF[0m Registering to events [36mSubscriptionId=[0m42
[90m2021-12-24T15:07:38+01:00[0m [32mINF[0m Event received, updating devices [36mGroupId=[0m0 [36mSceneId=[0m73 [36mZoneId=[0m0
[90m2021-12-24T15:07:38+01:00[0m [33mDBG[0m New scene event [36msceneId=[0m73 [36mzoneId=[0m0
[90m2021-12-24T15:07:51+01:00[0m [33mDBG[0m Updating circuits values

Sorry, if that is a bit cryptic, I don't know why there is "90m", "0m", "33m" etc. everywhere. I deleted already the "ESC" characters to have it a bit more readable. I don't mind about the errors, but the event could be interesting, I guess.

Thanks!

gaetancollaud commented 2 years ago

Hello,

The strange character means that your terminal doesn't support colors. You should see something like this normally: Screenshot from 2022-01-05 23-08-37

You said that you don't see any Events received but I can see one in your log. When I look at this it seems that the doorbell is in fact recognized and trigger a scene:

[90m2021-12-24T15:07:38+01:00[0m [33mDBG[0m New scene event [36msceneId=[0m73 [36mzoneId=[0m0

Don't you have something under digitalstrom/scenes in MQTT ? The issue may be that the zone 0 doesn't have a name. I just released a new version where I put a default name for zones with empty name. Please download and try the version 1.4.3

Let me know

IcyT commented 2 years ago

...but I can see one in your log

Yes, but it appeared just in DEBUG mode, not in TRACE mode or in the normal mode.

Don't you have something under digitalstrom/scenes in MQTT ?

No, unfortunately there was nothing 🙁

BUT I installed your update and gave it another try and now the event appears under scenes, even in normal mode 😀👍

image

I configured already a trigger in openHAB and I can react on it.

Great work, thanks a lot!

Closing the issue now ☺

gaetancollaud commented 2 years ago

Good to hear that it works now.

The problem was in fact that there is no name to the zone nor to the scene.

gaetancollaud commented 2 years ago

@IcyT Actually, now that you show me your screenshot I see an issue with my implementation. If you have multiple unnamed zones and multiple unnamed scenes they will all end up in the same topic... It's ok for you because you only care about the doorbell, but for others, it may be bad if they have multiple devices that they want to interact with.

So I did the following: I added the id of the zone or the scene in the topic name. So for you it would be something like:

digitalstrom/scenes/unamed-zone-0/unamed-scene-73/event

Could you please do the update to 1.4.4 and tell me if that works? Also you will need to update your openhab config, sorry.

IcyT commented 2 years ago

@gaetancollaud Oh, sorry, I just saw the notification now. I will update it and let you know :)

IcyT commented 2 years ago

I updated it now and here is the result:

image

So it works almost like you described it, there is just no minus between "zone" and "0". I don't know what is better. If you decide to change that, just let me know. Both works fine for me.

I updated my openHAB config, was no problem 😉

Thanks again for your work, closing the issue again 😊

gaetancollaud commented 2 years ago

you're right, I messed up with the zone. I fixed it in 1.4.6. Thanks for your feedback

IcyT commented 2 years ago

Just some quick feedback: I was able to update today and works now as expected 👍

grafik