Ring: urlToHttpOptions Issue Starting Recently

Created on 25 Feb 2021  路  9Comments  路  Source: dgreif/ring

Bug Report

This status message has been popping up recently (last week or so) on homebridge console:

Failed to reach Ring server at https://oauth.ring.com/oauth/token. urlToHttpOptions is not a function. Trying again in 5 seconds...

Describe the Bug

The error above is displayed and connection to at least the doorbell is not working

To Reproduce

Start ring-homebridge with at least a doorbell connected

Expected behavior

Doorbell connection functions properly

Screenshots/Logs

image

Homebridge Ring Config


        {
            "refreshToken": "xxx",
            "platform": "Ring"
        }

Environment

  • OS: Raspbian
  • Node.js: 14.5.0
  • NPM: 6.14.5
  • homebridge-ring: 9.15.3
  • homebridge: 1.3.1
bug

Most helpful comment

Looks like the http2-wrapper beta module was updated and now requires Node.js 15.

All 9 comments

Looks like the http2-wrapper beta module was updated and now requires Node.js 15.

I am having the same issue. I updated to Node.js 15 which broke everything with the ring plugin, Apparently, only even numbered Node.js releases are supported with HomeBridge and the ring plugin.

How can we downgrade the http2-wrapper? Or is there another workaround? I guess I am going to downgrade Node.js and try to downgrade the http2-wrapper. I was updating npm and the outdated modules which is when this started....

Uninstalling Node.js 15 and reinstalling the latest 14 version plus rolling back the http2-wrapper and rebooting fixed my issue.

Message from szmarczak/http2-wrapper : re-released the beta version as 1.0.3. The problems should be gone now. Do let me know.

Hey guys, sorry for the headache. I genuinely didn't expect that 1.0.0 would fall under ^1.0.0-beta since it explicitly says beta. As @MeatAssassin has already noted, I've released a new version of http2-wrapper which is exactly the same as the beta version so it should work as expected. The breaking version has been released as 2.0.0. Please do let me know if that fixes the issue.

@szmarczak : I believe running npm outdated is what trigger me to update http2-wrapper. I have [email protected] installed now and when I run npm outdated and npm -g outdated, it does not show that a newer version is available. My homebridge and homebridge-ring are running properly with that version. Not sure why the 1.0.3 is not showing up when I run the outdated commands...

Rolled back to previous version and am back up and running. I'm running from homebridge in docker so its just easier to downgrade then update node

@MeatAssassin You have used the -g (global) flag, so it won't show up. http2-wrapper is a dependency of Got.

@MeatAssassin you can see which version is currently installed by running npm -g list http2-wrapper. Should look something like this:
image

If you still see a beta version, try installing a previous version of the ring plugin, and then updating to the latest version again. @szmarczak thanks for the quick fix!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

mrtekkid picture mrtekkid  路  3Comments

ryanleesmith picture ryanleesmith  路  4Comments

LordZork picture LordZork  路  5Comments

parchmaf picture parchmaf  路  3Comments

donavanbecker picture donavanbecker  路  7Comments