Hubspace-Homeassistant icon indicating copy to clipboard operation
Hubspace-Homeassistant copied to clipboard

hubspace doorbell

Open aurochsen opened this issue 1 year ago • 4 comments

I found the hubspace doorbell and wonder if its possible to detect the state in home assistant when the doorbell is pushed to trigger a notification? Here is a output from the api which is long as its lists the different chimes over and over again. apioutput.json

aurochsen avatar Oct 21 '23 15:10 aurochsen

Looks like API returns the ringing state. You probably need to hit the API reasonably often to catch it. But looks possible. I do not see a corresponding ringing. Usually the API dump shows all possible values. Can you make the file when the doorbell is ringing? You'll have to be quick. { "functionClass": "doorbell", "lastUpdateTime": 1697816900403, "value": "not-ringing" },

jdeath avatar Oct 21 '23 16:10 jdeath

I believe this is it, I've run it a few times while ringing and a few without. When ringing the doorbell attribute changed to "value": "button-1" and swaps back to "not-ringing" when its done. Surprisingly appears to stay in ringing status for a few seconds so might not have to completely dos the api for this to be effective.
apioutput2.json

aurochsen avatar Oct 21 '23 21:10 aurochsen

That file is empty, but "button-1" seems to make sense and I saw that in the list of options. Maybe you can pair multiple doorbells to one base station, so it tells you the first one is ringning.

I probably will not get to this for a while. But should be able to make a "light" that turns on when the button is pressed.

To add yourself (might be quicker!) Look in light.py, Take the hubspacelock definition as a starting point and copy it as HubspaceDoorBell. To check if light is on, see if state is equal "button-1" (or maybe not equal to "not-ringing") in the is_on function. Then call this new doorbell entity when model is "HB-3015-00" in the add_entity function.

in the update(self) function, get the correct state with: self._state = self._hs.getState( self._childId, "doorbell")

You will probably have to increasing the scan_interval and base_interval to ~10s for it to get picked up.

jdeath avatar Oct 21 '23 21:10 jdeath

Yep you can add multiple buttons so makes sense. I'll tinker with it to see if I can figure it out without breaking everything else. I might get lucky. Thanks

On Sat, Oct 21, 2023, 5:16 PM jdeath @.***> wrote:

That file is empty, but "button-1" seems to make sense and I saw that in the list of options. Maybe you can pair multiple doorbells to one base station, so it tells you the first one is ringning.

I probably will not get to this for a while. But should be able to make a "light" that turns on when the button is pressed.

To add yourself (might be quicker!) Look in light.py, Take the hubspacelock definition as a starting point and copy it as HubspaceDoorBell. To check if light is on, see if "doorbell" functionclass is equal "button-1" (or maybe not equal to "not-ringing") in the is_on function. Then call this new doorbell entity when model is "HB-3015-00" in the add_entity function.

You will probably have to increasing the scan_interval and base_interval to ~10s for it to get picked up.

— Reply to this email directly, view it on GitHub https://github.com/jdeath/Hubspace-Homeassistant/issues/57#issuecomment-1773923534, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIFRUERE7GDXKL3325R67FDYAQ3TJAVCNFSM6AAAAAA6KG3GQGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZTHEZDGNJTGQ . You are receiving this because you authored the thread.Message ID: @.***>

aurochsen avatar Oct 21 '23 21:10 aurochsen

@aurochsen I am going to close this issue as it seems to be related to polling time. Please re-open the issue if you need any help!

Expl0dingBanana avatar Aug 01 '24 20:08 Expl0dingBanana