First of all, thanks for such a great project. It worked great for me for months, but just today (9/18/19), I was no longer able to stream due to an authentication failure:
WARNING:/usr/local/lib/python3.7/dist-packages/sxm/client.py:Received status code 403 for path 'modify/authentication'
ERROR:/usr/local/lib/python3.7/dist-packages/sxm/client.py:Unable to authenticate because login failed
Traceback (most recent call last):
File "/usr/local/lib/python3.7/dist-packages/tenacity/init.py", line 361, in call
result = fn(*args, **kwargs)
File "/usr/local/lib/python3.7/dist-packages/sxm/client.py", line 233, in authenticate
raise AuthenticationError("Reset session")
sxm.client.AuthenticationError: Reset session
I found that by changing the FakeUserAgent signature from "chrome" to "firefox" in client.py, I was able to get it going again. I don't know if they had put a trap in the handling on their end to fix something that was broken in the Chrome browser, or if they are trying to pick off rogue clients by their User-agent signature.
With your knowledge of the handshaking, you may be able to diagnose this more deeply than I am currently able to.