Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

InHomeDoorbellSwitch not working with Chimes #167

Closed
Tangston311 opened this issue Nov 1, 2019 · 19 comments
Closed

InHomeDoorbellSwitch not working with Chimes #167

Tangston311 opened this issue Nov 1, 2019 · 19 comments
Labels
enhancement New feature or request

Comments

@Tangston311
Copy link

First, this is an incredible plugin! Well done.

I was excited to see the addition of the InHomeDoorbellSwitch function so I could automate turning my doorbell on or off, but I've found that regardless of the state of the InHomeDoorbellSwitch switch my doorbell still always rings...I have the Elite Video Doorbell; is that one of the doorbells where this switch won't work, or is something else going on?

I'm a little out of touch on Homebridge lately so let me know what other information and/or logs I can provide that might be helpful.

@dgreif
Copy link
Owner

dgreif commented Nov 1, 2019

Sorry to hear you are having issues. Please upgrade to v5.9.1 if you haven't already and give it another try. If you are just looking at the Ring app to see if it updated, you have to go back to the main screen and then into settings for the camera settings to show the correct value. Let me know if you are for-sure having issues after checking all of that.

@Tangston311
Copy link
Author

Ok I managed to dig my hole a little deeper - I updated to 5.9.1 and did as you suggested in the Ring app, but the switch still had no effect. So I tried deleting the Ring Camera from my Home app with the intent of re-adding it to see if that would help, but now I can't get it to appear when I select "Add a new Accessory" and "I don't have a code or can't scan". I tried deleting and re-installing the plugin entirely, and removing and re-adding Homebridge, but I can't get the doorbell to re-appear.

Any suggestions? Thanks!

@dgreif
Copy link
Owner

dgreif commented Nov 2, 2019

@Tangston311
Copy link
Author

Ok that got the camera to show back up! Thank you - great documentation by the way, I should have checked around for that.

Unfortunately turning off or on the doorbell switch still has no effect on the operation of the doorbell (either by looking within the Ring app itself or by testing the doorbell by ringing it).

@dgreif
Copy link
Owner

dgreif commented Nov 2, 2019

Is the in home doorbell stuck on or off? Does it toggle if you change the setting in the Ring app? @smockle has it been working for you?

@Tangston311
Copy link
Author

It's not stuck - I can toggle it off and on in the Home app, it just doesn't appear to have any influence on the behavior of the doorbell. I'm not sure exactly which setting in the Ring app I should be checking, but I tried toggling the switch in the Home app to see if it affected any of the following settings in the Ring app, and none of them did:

  • Ring Alerts (set to "On" in the Ring app, no change when switch is toggled in Home app)
  • Doorbell Ring (under "Alert Settings, "Linked Chimes" section of Ring app, the chime is set to "Alert you", no change when switch toggled in Home app)
  • Doorbell Ringer Volume (in "General Settings" of Ring app, no change when switch in Home app was toggled).

Just to make sure I understand the functionality correctly, in theory if I toggle the InHomeDoorbellSwitch to "off", then when the doorbell is pressed none of the chimes will ring and no push notifications will be sent?

@dgreif
Copy link
Owner

dgreif commented Nov 3, 2019

Ahh, I think I may know the issue now. That switch currently controls mechanical or digital physical doorbells. I’m not sure that it works with Ring chimes. It really should control those as well, so we can look into changing it. I’ll try to get that added this week unless you want to tackle it @smockle

@dxdc
Copy link

dxdc commented Nov 4, 2019

+1 for the ability to work with Ring chimes!

One other related idea/suggestion: Most of the time, the chime is going off from motion (not the doorbell). What about some (customizable) switches to snooze motion alerts as well?

I was thinking in the config file, users could specify common durations (probably have to pick from Ring's default list) e.g., 1 min, 5 min, 1 hr, etc. and then "Snooze Motion X min" tiles could be implemented as stateless switches for each Ring device for instance. Or, it could be set up as some kind of 'Faucet' tile with a built-in duration?

A very common situation for me is that I have lights come on or turn off at specific times of day, and the Ring chime goes off for these events. It would be great to snooze the Ring motion for 1 min, add a delay for 30 sec to ensure it reached the server, then trigger the lights.

(The other option would be to toggle the chime on/off using your above idea... but it seems a little more complicated, because it would have to know to restore both the physical doorbell setting AND the chime setting). We use the chime only to extend the range in specific rooms.

@Tangston311
Copy link
Author

Thanks @dgreif! Let me know if I can do anything to help with testing and whatnot.

@dxdc
Copy link

dxdc commented Nov 4, 2019

Happy to test also!

@dgreif dgreif added the enhancement New feature or request label Nov 4, 2019
@dgreif dgreif changed the title InHomeDoorbellSwitch not working InHomeDoorbellSwitch not working with Chimes Nov 4, 2019
@dxdc
Copy link

dxdc commented Feb 10, 2020

Just a friendly ping regarding this... is there anything we can do to help in the meantime? This would be a really excellent feature.

@dgreif
Copy link
Owner

dgreif commented Feb 10, 2020

@dxdc thanks for the ping! Good to know this is still wanted 😅. I have one other feature that I'm wrapping up, and then I can dive into this one. I ended up buying a chime a few months ago, so I'm all set up for testing. Just need to get some dedicated time to dive in

@dxdc
Copy link

dxdc commented Feb 10, 2020

awesome thanks!

@dgreif
Copy link
Owner

dgreif commented Jun 17, 2020

Chime support has been added in v9.2.0. You can snooze for 24 hours, play the "ding" sound, and play the "motion" sounds.

@dxdc the snooze switch will snooze both ding and motion sounds while it is turned on. For your light situation, I'd recommend automating the snooze to turn on a few minutes before the lights do, and as part of the automation in HomeKit, you can set it to turn back off after X minutes. Hopefully that solves your problem 🤞

@dgreif dgreif closed this as completed Jun 17, 2020
@dxdc
Copy link

dxdc commented Jun 17, 2020

Rad... can't wait to try it. Thanks @dgreif !!

@dxdc
Copy link

dxdc commented Jun 17, 2020

@dgreif It seems there is a potential for custom snooze times? Or does it have to be the Ring-approved times?

E.g., device.snooze(minutesFor24Hours)

If so, wondering about the following:

  • User can define in config an array of preferred minutes. One on/off accessory would be created for each. So, user can define ["60", "180", "1440"] to have 3 accessories added with these values.

  • Modify the accessory to use something like the TargetPosition control. I'm not sure if you can tweak the min/max/step values, but this could be really cool if so. AND... if this is true... then using Node RED I could send custom values to this Ring accessory (like 1 minute) because of how it is taking inputs.

@dgreif
Copy link
Owner

dgreif commented Jun 17, 2020

@dxdc while all of that is possible, it's not something I'm really interested in writing and maintaining. The default automations in HomeKit allow you to turn a switch on and then automatically turn it off after X minutes, which seems like it should cover the majority of use cases. Is there a reason that won't work for you?

@dxdc
Copy link

dxdc commented Jun 17, 2020

Cool, it's really interesting to me that Ring allows you to set a custom number of minutes (as well as playing the sounds!). Big thanks to you and @jadenv for getting this implemented!!

The fact that this is even an option now is terrific because Ring doesn't allow a Chime to be controlled by anyone except the owner.

I have a number of cases that I'd love to be able to customize the number of minutes snoozed. This gets really powerful with NodeRED.

For example:

  1. If there is motion detected 3X from 2-3PM on Tuesday, then it's probably my gardener. Disable the chime until there is no motion detected for 20 min.

  2. If it's 3 minutes to sunset, disable the chime for 5 minutes so that no motion will be caught when the lights come on at sunset.

  3. If I have an important conference call (or baby is sleeping), disable the chime for X minutes/hours.

The first 2 cases can actually be easily covered by NodeRED and the on/off chime switch, since 24 hours > the amount of time I need it snoozed.

The tricky thing is for the custom cases like 3, where the number of minutes may be variable. For this, I'd settle for just hours (0-24). If we can change the maxValue of an accessory to 24, then this potentially just be a drop in replacement for a position/fan accessory vs. switch?

Then, instead of reflecting on/off status during Ring polling, it could just round the number of hours to the nearest integer and reflect that on the position/fan control. Basically, creating a slider instead of just on/off.

Happy to try to implement this kind of thing if you feel it could be valuable too.

@dgreif
Copy link
Owner

dgreif commented Jun 17, 2020

I'd really prefer to say away from dialing or configuring the snooze duration since different users will have different specific needs. #1 is definitely too complicated for HomeKit, but I'm glad you are able to do it with NodeRed. #2 is definitely doable with what is implemented in HomeKit currently. For #3, my solution would be to add a more specific trigger for turning it on/off. For example, if you have a fan that you turn on during nap time, you can buy one of these switches (https://smile.amazon.com/gp/product/B06XTKQTTV/) and have it automatically turn on chime snooze if it is turned on around nap time. And then when it is turned off, turn snooze off. That's how I'm setting mine up now that chime support is integrated 😄

dxdc added a commit to dxdc/ring that referenced this issue Jun 17, 2020
"Brightness" is defined as a % of a day. The only allowable values are in discrete hours (0-24).

See discussion in: dgreif#167 regarding the benefits of this approach. This implementation is working.

To install this, it requires deleting the existing Chime. I do this as follows:
```sh
cat cachedAccessories | jq 'del(.[] | select(.displayName|test("Chime")))' -c > cachedAccessories.new
mv cachedAccessories.new cachedAccessories
```

I realize that `Brightness` may not be the ideal characteristic. Maybe using degrees (e.g., for a thermostat) would be more sensible, but I'd have to think through how to best do this given that users can have their settings in deg. C or F.

Also, we could think through the best icon to use, although users can still edit the lightbulb icon to another one of their choosing.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants