Can someone explain to me like a 5th grader how to install FrndlyTV? I have a subscription and installed the docker image on a Synology NAS. When trying to add the source to ChannlesDVR, I get the following error: " invalid source url: Get "http://192.168.1.40:8183/playlist.m3u8?gracenote=include": context deadline exceeded (Client.Timeout exceeded while awaiting headers)".
The docker image log shows the following:
> Starting server on port 80
>
> 172.17.0.1 - - [20/Mar/2024 18:07:46] "GET / HTTP/1.1" 200 -
>
> logging in....
>
> 192.168.1.40 - - [20/Mar/2024 18:08:38] "GET /playlist.m3u8?gracenote=include HTTP/1.1" 500 -
>
> ----------------------------------------
>
> Exception happened during processing of request from ('192.168.1.40', 53367)
> Traceback (most recent call last):
> File "/usr/local/lib/python3.8/site-packages/requests/adapters.py", line 489, in send
> resp = conn.urlopen(
> File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 787, in urlopen
> retries = retries.increment(
> File "/usr/local/lib/python3.8/site-packages/urllib3/util/retry.py", line 592, in increment
> raise MaxRetryError(_pool, url, error or ResponseError(cause))
> urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='frndlytv-api.revlet.net', port=443): Max retries exceeded with url: /service/api/v1/get/token?box_id=SHIELD30X8X4X0&device_id=43&tenant_code=frndlytv&device_sub_type=nvidia%2C8.1.0%2C7.4.4&product=frndlytv&display_lang_code=eng&timezone=Pacific%2FAuckland (Caused by ConnectTimeoutError(<urllib3.connection.HTTPSConnection object at 0x7fb83cfe7d90>, 'Connection to frndlytv-api.revlet.net timed out. (connect timeout=15)'))
> During handling of the above exception, another exception occurred:
> Traceback (most recent call last):
> File "./app.py", line 53, in do_GET
> routes[func]()
> File "./app.py", line 71, in _playlist
> channels = frndly.channels()
> File "/usr/src/app/frndly.py", line 150, in channels
> rows = self._request('https://frndlytv-api.revlet.net/service/api/v1/tvguide/channels?skip_tabs=0')['data']
> File "/usr/src/app/frndly.py", line 116, in _request
> self.login()
> File "/usr/src/app/frndly.py", line 186, in login
> headers['session-id'] = requests.get('https://frndlytv-api.revlet.net/service/api/v1/get/token', params=params, headers=headers, timeout=TIMEOUT).json()['response']['sessionId']
> File "/usr/local/lib/python3.8/site-packages/requests/api.py", line 73, in get
> return request("get", url, params=params, **kwargs)
> File "/usr/local/lib/python3.8/site-packages/requests/api.py", line 59, in request
> return session.request(method=method, url=url, **kwargs)
> File "/usr/local/lib/python3.8/site-packages/requests/sessions.py", line 587, in request
> resp = self.send(prep, **send_kwargs)
> File "/usr/local/lib/python3.8/site-packages/requests/sessions.py", line 701, in send
> r = adapter.send(request, **kwargs)
> File "/usr/local/lib/python3.8/site-packages/requests/adapters.py", line 553, in send
> raise ConnectTimeout(e, request=request)
> requests.exceptions.ConnectTimeout: HTTPSConnectionPool(host='frndlytv-api.revlet.net', port=443): Max retries exceeded with url: /service/api/v1/get/token?box_id=SHIELD30X8X4X0&device_id=43&tenant_code=frndlytv&device_sub_type=nvidia%2C8.1.0%2C7.4.4&product=frndlytv&display_lang_code=eng&timezone=Pacific%2FAuckland (Caused by ConnectTimeoutError(<urllib3.connection.HTTPSConnection object at 0x7fb83cfe7d90>, 'Connection to frndlytv-api.revlet.net timed out. (connect timeout=15)'))
> During handling of the above exception, another exception occurred:
> Traceback (most recent call last):
> File "/usr/local/lib/python3.8/socketserver.py", line 683, in process_request_thread
> self.finish_request(request, client_address)
> File "/usr/local/lib/python3.8/socketserver.py", line 360, in finish_request
> self.RequestHandlerClass(request, client_address, self)
> File "./app.py", line 25, in __init__
> super().__init__(*args, **kwargs)
> File "/usr/local/lib/python3.8/socketserver.py", line 747, in __init__
> self.handle()
> File "/usr/local/lib/python3.8/http/server.py", line 435, in handle
> self.handle_one_request()
> File "/usr/local/lib/python3.8/http/server.py", line 423, in handle_one_request
> method()
> File "./app.py", line 55, in do_GET
> self._error(e)
> File "./app.py", line 30, in _error
> self.wfile.write(f'Error: {message}'.encode('utf8'))
> File "/usr/local/lib/python3.8/socketserver.py", line 826, in write
> self._sock.sendall(b)
> BrokenPipeError: [Errno 32] Broken pipe
> ----------------------------------------