Ring devices become unreachable after a period of time
<!--
Please DO NOT DELETE THIS TEMPLATE or your issue may be closed immediately.
Before opening an issue, search for open and closed GitHub issues that match your situation.

If this is a Live Stream issue please go back and use the Live Streaming issue template.
-->

# Bug Report

### Describe the Bug
When Homebridge first starts up, everything works fine. However, after a period of time — I've experienced anything from five minutes to twelve hours — my Ring devices become unreachable in the Home app. IE, I am unable to view the live camera feed, and sensor and doorbell notifications do not work. Restarting Homebridge temporarily fixes the issue, but it invariably occurs again. The functionality of the Ring app does not appear to be affected.

### To Reproduce
 - Start Homebridge
 - Notice that, to begin with, Ring devices appear and function as expected in the Home app
 - Notice that, after a period of time, the Ring devices become unreachable in the Home app

### Expected behavior
I had hoped that I would be able to access Ring devices in the Home app without having to reboot my Homebridge server this often.

### Screenshots/Logs
[1/28/2021, 15:22:11] [Ring] Failed to reach Ring server at https://api.ring.com/clients_api/snapshots/image/59272797.  Stream closed with error code NGHTTP2_ENHANCE_YOUR_CALM.  Trying again in 5 seconds...
[1/28/2021, 15:22:11] [Ring] RequestError: Stream closed with error code NGHTTP2_ENHANCE_YOUR_CALM
    at ClientRequest.<anonymous> (/usr/local/lib/node_modules/homebridge-ring/node_modules/got/dist/source/core/index.js:953:111)
    at Object.onceWrapper (events.js:422:26)
    at ClientRequest.emit (events.js:327:22)
    at ClientRequest.origin.emit (/usr/local/lib/node_modules/homebridge-ring/node_modules/@szmarczak/http-timer/dist/source/index.js:39:20)
    at ClientHttp2Stream.<anonymous> (/usr/local/lib/node_modules/homebridge-ring/node_modules/http2-wrapper/source/utils/proxy-events.js:5:34)
    at ClientHttp2Stream.emit (events.js:315:20)
    at emitErrorNT (internal/streams/destroy.js:92:8)
    at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)
    at processTicksAndRejections (internal/process/task_queues.js:84:21)
    at ClientHttp2Stream._destroy (internal/http2/core.js:2148:13)
    at ClientHttp2Stream.destroy (internal/streams/destroy.js:38:8)
    at ClientHttp2Stream.[kMaybeDestroy] (internal/http2/core.js:2164:12)
    at Http2Stream.onStreamClose (internal/http2/core.js:511:26) {
  code: 'ERR_HTTP2_STREAM_ERROR',
  timings: {
    start: 1611847331211,
    socket: 1611847331214,
    lookup: 1611847331214,
    connect: 1611847331214,
    secureConnect: 1611847331214,
    upload: 1611847331214,
    response: undefined,
    end: undefined,
    error: 1611847331423,
    abort: undefined,
    phases: {
      wait: 3,
      dns: 0,
      tcp: 0,
      tls: 0,
      request: NaN,
      firstByte: undefined,
      download: undefined,
      total: 212
    }
  }
}
[1/28/2021, 15:22:13] [Ring] Failed to reach Ring server at https://api.ring.com/clients_api/dings/active.  Stream closed with error code NGHTTP2_ENHANCE_YOUR_CALM.  Trying again in 5 seconds...
[1/28/2021, 15:22:13] [Ring] RequestError: Stream closed with error code NGHTTP2_ENHANCE_YOUR_CALM
    at ClientRequest.<anonymous> (/usr/local/lib/node_modules/homebridge-ring/node_modules/got/dist/source/core/index.js:953:111)
    at Object.onceWrapper (events.js:422:26)
    at ClientRequest.emit (events.js:327:22)
    at ClientRequest.origin.emit (/usr/local/lib/node_modules/homebridge-ring/node_modules/@szmarczak/http-timer/dist/source/index.js:39:20)
    at ClientHttp2Stream.<anonymous> (/usr/local/lib/node_modules/homebridge-ring/node_modules/http2-wrapper/source/utils/proxy-events.js:5:34)
    at ClientHttp2Stream.emit (events.js:315:20)
    at emitErrorNT (internal/streams/destroy.js:92:8)
    at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)
    at processTicksAndRejections (internal/process/task_queues.js:84:21)
    at ClientHttp2Stream._destroy (internal/http2/core.js:2148:13)
    at ClientHttp2Stream.destroy (internal/streams/destroy.js:38:8)
    at ClientHttp2Stream.[kMaybeDestroy] (internal/http2/core.js:2164:12)
    at Http2Stream.onStreamClose (internal/http2/core.js:511:26) {
  code: 'ERR_HTTP2_STREAM_ERROR',
  timings: {
    start: 1611847332970,
    socket: 1611847332972,
    lookup: 1611847332972,
    connect: 1611847332972,
    secureConnect: 1611847332972,
    upload: 1611847332972,
    response: undefined,
    end: undefined,
    error: 1611847333094,
    abort: undefined,
    phases: {
      wait: 2,
      dns: 0,
      tcp: 0,
      tls: 0,
      request: NaN,
      firstByte: undefined,
      download: undefined,
      total: 124
    }
  }
}

### Additional context
My Homebridge server is running on a Raspberry Pi 3 Model B+, connected to my router via an Ethernet cable; IE, not WiFi.

I suspect this to be a network/ISP issue on my end and understand that, as per the Camera Troubleshooting wiki, this could be difficult for you to troubleshoot. Still, I felt that there could be no harm in asking here anyway.

Also, I should mention that I am registered blind, so sometimes make mistakes with text formatting. I'm hoping that I have adhered to the required template, but please accept my apologies if not.

### Homebridge Ring Config
    "platforms": [
        {
            "name": "Config",
            "port": 8581,
            "platform": "config"
        },
        {
            "refreshToken": "xxx",
            "debug": true,
            "platform": "Ring"
        }
    ]
}

```

### Environment

 - OS: Raspbian GNU/Linux Buster (10)
 - Node.js: v12.18.2
 - NPM: v6.14.7
 - homebridge-ring: v9.14.1
 - homebridge: v1.1.7
 - hoobs: N/A
Thanks in advance for any help/advice you're able to provide.

Cheers.