You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<sup>*</sup> The firmware provided on the Sagemcom F@st 3896 router from Ziggo does not support the endpoint used in this library. [sagemcom-f3896lg-zg-api](https://github.com/mgyucht/sagemcom-f3896lg-zg-api) provides an API client suitable for Ziggo's firmware.
45
+
<sup>1</sup> The firmware provided on the Sagemcom F@st 3896 router from Ziggo does not support the endpoint used in this library. [sagemcom-f3896lg-zg-api](https://github.com/mgyucht/sagemcom-f3896lg-zg-api) provides an API client suitable for Ziggo's firmware.
46
+
47
+
<sup>2</sup> If you run into `SSLV3_ALERT_HANDSHAKE_FAILURE` errors, see [here](docs/ssl-error.md) for a workaround.
45
48
46
49
> Contributions welcome. If you router model is supported by this package, but not in the list above, please create [an issue](https://github.com/iMicknl/python-sagemcom-api/issues/new) or pull request.
A `SSLV3_ALERT_HANDSHAKE_FAILURE` error when connecting to the router indicates that there is a mismatch with the cipher being used in the SSL connection (see [here](https://stackoverflow.com/a/73254780/487356)).
4
+
5
+
Running `openssl s_client -connect <router-ip>:<ssl-port>` on the router shows what cipher can be used. In the case of a "Sunrise Internet Box" it was `AES256-GCM-SHA384`.
6
+
7
+
The following code snippet shows how to set up a `SagemcomClient` configured to use that specific cipher (and not validating the router's certificate):
8
+
9
+
```
10
+
async def main() -> None:
11
+
sslcontext = ssl._create_unverified_context()
12
+
sslcontext.set_ciphers("AES256-GCM-SHA384")
13
+
14
+
session = ClientSession(
15
+
headers={"User-Agent": f"{DEFAULT_USER_AGENT}"},
16
+
timeout=ClientTimeout(DEFAULT_TIMEOUT),
17
+
connector=TCPConnector(
18
+
ssl_context=sslcontext
19
+
)
20
+
)
21
+
async with SagemcomClient(HOST, USERNAME, PASSWORD, ENCRYPTION_METHOD, session=session) as client:
0 commit comments