Skip to content

Add support for Ring Intercom #91600

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

Closed
wants to merge 10 commits into from
Closed

Conversation

MartinPham
Copy link
Contributor

@MartinPham MartinPham commented Apr 18, 2023

Breaking change

Proposed change

The current Ring intergration is not supporting Ring Intercom devices (https://it-it.ring.com/products/intercom), as described here #82565.
I've added support for it, introducing new sensors, and button to open door
image

Type of change

  • Dependency upgrade
  • Bugfix (non-breaking change which fixes an issue)
  • New integration (thank you!)
  • New feature (which adds functionality to an existing integration)
  • Deprecation (breaking change to happen in the future)
  • Breaking change (fix/feature causing existing functionality to break)
  • Code quality improvements to existing code or addition of tests

Additional information

Checklist

  • The code change is tested and works locally.
  • Local tests pass. Your PR cannot be merged unless tests pass
  • There is no commented out code in this PR.
  • I have followed the development checklist
  • I have followed the perfect PR recommendations
  • The code has been formatted using Black (black --fast homeassistant tests)
  • Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • Untested files have been added to .coveragerc.

To help with the load of incoming pull requests:

@home-assistant
Copy link

Hi @MartinPham

It seems you haven't yet signed a CLA. Please do so here.

Once you do that we will be able to review and accept this pull request.

Thanks!

@MartinPham
Copy link
Contributor Author

Documentation PR submitted home-assistant/home-assistant.io#27050, thanks

@bdraco bdraco removed the bugfix label May 1, 2023
@spanzetta
Copy link

spanzetta commented May 8, 2023

Why it is not yet releasing?

@asphalter
Copy link

Why it is not yet releasing?

Missing approval. Hoping for someone of the team to keep in charge of this.

@JoernBerkefeld
Copy link

push

Copy link

@shinesoftware shinesoftware left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems ok

Copy link

@shinesoftware shinesoftware left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add the docs and review the pull request, thanks

@Metus88
Copy link

Metus88 commented Sep 12, 2023

@MartinPham Do you see any possibility of quickly checking the comments? As it seems they are nothing complicated, everything could be agreed on easily. I'd very much appreciate this feature to be added soon, it's the only reason I'm still running Homebridge on a Raspi, I'd love to be able to integrate Ring Intercom natively into Home Assistant and then ditch the Homebridge. Thanks!

If you want use it right now you can follow this instructions.. Reboot you home assistant and from homeassistant's GUI go to settings -> devices and clic add integration button. Add "Ring (custom)" login to ring and it's done. I did yesterday and it works great!
Ofcourse I hope this integration will become official ASAP, but for now I will use this unofficial integration.

@developerGM
Copy link

@Metus88 yer with custom integration we can use RingIntercom with HA but there is a problem that I think that we cannot resolve.

When I click on "OPEN" button, my door open but the impulse duration is 3000ms...so long!
Do you have the same problem?

@MartinPham is a firmware setup?

@fuomag9
Copy link

fuomag9 commented Sep 12, 2023

@Metus88 yer with custom integration we can use RingIntercom with HA but there is a problem that I think that we cannot resolve.

When I click on "OPEN" button, my door open but the impulse duration is 3000ms...so long!

Do you have the same problem?

@MartinPham is a firmware setup?

I have not reversed the API parameters or the device's firmware to check if it's customizable but that is the "normal" behaviour of the device when using the ring app

@kevin-kraus
Copy link
Contributor

I've recently installed this addon: https://github.com/tsightler/ring-mqtt

It provides the Ring Intercom with all its properties.

The open functionality is a lock entity and the Ding entity is a binary sensor. You can also see the battery percentage. All of this works perfectly fine.

@developerGM
Copy link

@Metus88 yer with custom integration we can use RingIntercom with HA but there is a problem that I think that we cannot resolve.
When I click on "OPEN" button, my door open but the impulse duration is 3000ms...so long!
Do you have the same problem?
@MartinPham is a firmware setup?

I have not reversed the API parameters or the device's firmware to check if it's customizable but that is the "normal" behaviour of the device when using the ring app

yes, this is "normal" but in my opinion is very long time 3seconds. When I open my door in the night hours, listen for 3seconds the sound of impulse is really bad

@maia
Copy link

maia commented Sep 12, 2023

If you want use it right now you can follow this instructions.. Reboot you home assistant and from homeassistant's GUI go to settings -> devices and clic add integration button. Add "Ring (custom)" login to ring and it's done. I did yesterday and it works great! Ofcourse I hope this integration will become official ASAP, but for now I will use this unofficial integration.

Thank you very much, I will do so.

I've recently installed this addon: https://github.com/tsightler/ring-mqtt
It provides the Ring Intercom with all its properties.

Until recently, I've been using a Homekit thread network, I've just started to move devices to Home Assistant. I'm therefor not yet familiar with MQTT. I have to admit, I don't even really know which protocol Ring Intercom uses to communicate. The moment I purchased&installed it, I added it to Homebridge and from there to Homekit. All I know so far is that it uses Wifi, but I don't know what's below. But based on the advice of @kevin-kraus, I assume I'd need to install a MQTT broker addon (e.g. Mosquitto) in Home Assistant followed by the ring-mqtt addon. Is there any advantage/disadvantage over the native integration as proposed in this patch?

@maia
Copy link

maia commented Sep 14, 2023

As the original contributor @MartinPham has been completely inactive on GitHub for three months I wonder if anyone else is willing to re-submit the patch including the requested changes by @emontnemery ? Because this patch might never get reviewed. Thanks.

@s-e-t-h
Copy link

s-e-t-h commented Sep 14, 2023

I'm happy to pay for someone on Fivver to finish it, what kind of dev do we need?

@seik
Copy link

seik commented Sep 27, 2023

Hi @emontnemery, I've addressed the majority of the concerns of the code review, the patch is here: seik@9728a5a.

Please let me know if there is anything else I can do to move this PR forward.

@kevin-kraus
Copy link
Contributor

But based on the advice of @kevin-kraus, I assume I'd need to install a MQTT broker addon (e.g. Mosquitto) in Home Assistant followed by the ring-mqtt addon. Is there any advantage/disadvantage over the native integration as proposed in this patch?

Sorry for the late reply.

The native integration would communicate directly with the device over the Ring API, afaik. Please correct me if I'm wrong.

I've already had the Mosquitto Add-On running on my installation therefore I didn't need to install it specifically for this feature. If you don't have it you would need to set it up.

@bdraco
Copy link
Member

bdraco commented Sep 27, 2023

Hi @emontnemery, I've addressed the majority of the concerns of the code review, the patch is here: seik@9728a5a.

Please let me know if there is anything else I can do to move this PR forward.

You can open a PR to MartinPham's branch, or you can start a fresh PR if this one is not going to move forward

@bzumik1
Copy link

bzumik1 commented Oct 16, 2023

Hi, any update here?

@tispokes
Copy link

Any news?

@tispokes
Copy link

@bdraco I would like to open a PR but I'm not allowed to due I'm not a collaborator

@bzumik1
Copy link

bzumik1 commented Nov 19, 2023

Could someone please help @tispokes to open the PR. This seems to be stuck for a while.

@sdb9696
Copy link
Contributor

sdb9696 commented Nov 27, 2023

Hi, this PR depends on functionality that is not yet in the ring_doorbell library. Hence why @MartinPham has created a custom integration in the meantime.

There is a PR for ring intercom support submitted to the ring_doorbell library by @rautsch but it is out of date and needs tests added. (It's the same PR that @MartinPham has based his custom integration on) I have recently been added as a maintainer to the library and I have pinged @rautsch to see if he wants to work on it, but he has been inactive on github for a long time so probably not.

If someone with a ring intercom device (and the know-how) wants to open a new PR to ring_doorbell based on rautsch's PR I will work with you to get it updated, reviewed and merged. Once that is done we will be able to take this PR forwards.

Update: @rautsch has kindly agreed to get his PR updated and ready for merging. Then we can look at this PR.

@spanzetta
Copy link

@emontnemery it seems that this is pending your review..
Can you pls look at it?
Thanks

@sdb9696
Copy link
Contributor

sdb9696 commented Dec 22, 2023

Hi @spanzetta, as per my comment above this PR needs a change the dependency ring-doorbell library before it's ready for review. There has been no progress on getting the dependency PRs reviewed which is waiting with the original authors.

@spanzetta
Copy link

Ok.. thanks
I hope that it will be managed by the author then

@tispokes
Copy link

I wanted to make a new PR with requested changes, but had no rights. Use the non official now

@aryasenna
Copy link

I wanted to make a new PR with requested changes, but had no rights. Use the non official now

You have to make your own PR I suppose.

@Byketol
Copy link

Byketol commented Feb 14, 2024

Hello, can you help me, how can i install these custom plugin?

@pattyland
Copy link
Contributor

@Byketol A pull request is not a support forum! Since python-ring-doorbell/python-ring-doorbell#330 has already been merged, I would also recommend that you wait a little longer, then you probably won't need to install anything at all

@sdb9696
Copy link
Contributor

sdb9696 commented Feb 14, 2024

N.B. This PR has been superseded by #109819 which will hopefully be merged soon so I'm going to close this PR.

@sdb9696
Copy link
Contributor

sdb9696 commented Feb 14, 2024

@home-assistant close

@home-assistant home-assistant bot closed this Feb 14, 2024
@github-actions github-actions bot locked and limited conversation to collaborators Feb 15, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Ring Integration does not show Ring Intercom device/entities