Jump to content

SonosController NodeServer


simplextech

Recommended Posts

1 hour ago, bcdavis75 said:

Something broke it again.  I think this may have actually happened a couple days ago.  Log attached.

sonoscontroller-0021b902512a-2 (1).txt 1.13 MB · 1 download

SSL issue hits again....

2020-10-25 12:06:09,054 [Controller] [ERROR] Exception in thread Controller:
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 677, in urlopen
    chunked=chunked,
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 381, in _make_request
    self._validate_conn(conn)
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 978, in _validate_conn
    conn.connect()
  File "/usr/local/lib/python3.7/site-packages/urllib3/connection.py", line 371, in connect
    ssl_context=context,
  File "/usr/local/lib/python3.7/site-packages/urllib3/util/ssl_.py", line 386, in ssl_wrap_socket
    return context.wrap_socket(sock, server_hostname=server_hostname)
  File "/usr/local/lib/python3.7/ssl.py", line 412, in wrap_socket
    session=session
  File "/usr/local/lib/python3.7/ssl.py", line 853, in _create
    self.do_handshake()
  File "/usr/local/lib/python3.7/ssl.py", line 1117, in do_handshake
    self._sslobj.do_handshake()
ConnectionResetError: [Errno 104] Connection reset by peer

 

Link to comment
Share on other sites

Well, another oddity.  After about 4 days it stopped working.  It still looked like it might have been working because there was log activity, but the connection to the ISY was no longer working, ie, commands from the ISY would not execute.  THe dashboard did show the NS as Disconnected.  A restart resolved it. Hmmm...

sonoscontroller-0021b900ee84-8.txt

Link to comment
Share on other sites

11 minutes ago, glarsen said:

Well, another oddity.  After about 4 days it stopped working.  It still looked like it might have been working because there was log activity, but the connection to the ISY was no longer working, ie, commands from the ISY would not execute.  THe dashboard did show the NS as Disconnected.  A restart resolved it. Hmmm...

sonoscontroller-0021b900ee84-8.txt 958.69 kB · 0 downloads

That log looks like it's from a fresh startup.  Was this before or after your restart?

There are some reconnects to AWS servers in there but nothing too striking. 

Link to comment
Share on other sites

Just now, simplextech said:

That log looks like it's from a fresh startup.  Was this before or after your restart?

There are some reconnects to AWS servers in there but nothing too striking. 

That was before my restart

Link to comment
Share on other sites

8 hours ago, glarsen said:

That was before my restart

Interesting but I don't see any NS errors just reconnects to AWS nodes and lots of MQTT which are all coming from polyglot.  Perhaps a AWS node was having issues or some Polyglot maintenance.  I dunno.

Link to comment
Share on other sites

Just noticed this...

2020-10-29 08:40:28,665 [Controller] [ERROR] Error sonos_control.get_groups
2020-10-29 08:40:28,665 [Controller] [ERROR] shortPoll:sonos_groups: Sonos Groups is None
2020-10-29 08:40:31,950 [Controller] [ERROR] Error sonos_control.get_players
2020-10-29 08:40:31,951 [Controller] [ERROR] shortPoll: SonosControl.get_players is None
2020-10-29 08:41:29,118 [Controller] [ERROR] Error sonos_control.get_groups
2020-10-29 08:41:29,119 [Controller] [ERROR] shortPoll:sonos_groups: Sonos Groups is None
2020-10-29 08:41:32,453 [Controller] [ERROR] Error sonos_control.get_players
2020-10-29 08:41:32,453 [Controller] [ERROR] shortPoll: SonosControl.get_players is None
2020-10-29 08:42:28,676 [Controller] [ERROR] Error sonos_control.get_groups
2020-10-29 08:42:28,681 [Controller] [ERROR] shortPoll:sonos_groups: Sonos Groups is None
2020-10-29 08:42:32,021 [Controller] [ERROR] Error sonos_control.get_players
2020-10-29 08:42:32,022 [Controller] [ERROR] shortPoll: SonosControl.get_players is None
2020-10-29 08:43:29,305 [Controller] [ERROR] shortPoll:group_volume: None
2020-10-29 08:43:33,214 [Controller] [ERROR] shortPoll:group_volume: None
2020-10-29 08:43:36,493 [Controller] [ERROR] shortPoll:group_volume: None
2020-10-29 08:43:40,443 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:43:43,692 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:43:46,934 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:43:50,324 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:44:29,462 [Controller] [ERROR] shortPoll:group_volume: None
2020-10-29 08:44:32,670 [Controller] [ERROR] shortPoll:group_volume: None
2020-10-29 08:44:35,863 [Controller] [ERROR] shortPoll:group_volume: None
2020-10-29 08:44:39,669 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:44:43,019 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:44:46,322 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:44:49,521 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:45:29,566 [Controller] [ERROR] shortPoll:group_volume: None
2020-10-29 08:45:32,776 [Controller] [ERROR] shortPoll:group_volume: None
2020-10-29 08:45:36,574 [Controller] [ERROR] shortPoll:group_volume: None
2020-10-29 08:45:40,550 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:45:43,762 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:45:47,042 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:45:50,252 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:46:29,366 [Controller] [ERROR] shortPoll:group_volume: None
2020-10-29 08:46:32,610 [Controller] [ERROR] shortPoll:group_volume: None
2020-10-29 08:46:35,857 [Controller] [ERROR] shortPoll:group_volume: None
2020-10-29 08:46:39,738 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:46:43,253 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:46:46,477 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:46:49,707 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:47:25,545 [Controller] [INFO ] Sending customData to Polyglot.
2020-10-29 08:47:25,546 [Controller] [DEBUG] Sent Message: [prod/ns] : {"customdata": {"access_token": "KriBsT43irvd20tvTFAtACbTGlfS", "refresh_token": "IAYegHqnO14cmLOFVvL3HKceA1TKgdus", "expires_in": 86399}, "userId": "569cdd4a92cbdbfb2ce7da16", "topic": "prod/ns/sonoscontroller-0021b9022afa-14", "profileNum": "14", "id": "00:21:b9:02:2a:fa"}
2020-10-29 08:47:25,546 [Controller] [INFO ] Sending notices to Polyglot.
2020-10-29 08:47:25,547 [Controller] [DEBUG] Sent Message: [prod/ns] : {"notices": {}, "userId": "569cdd4a92cbdbfb2ce7da16", "topic": "prod/ns/sonoscontroller-0021b9022afa-14", "profileNum": "14", "id": "00:21:b9:02:2a:fa"}
2020-10-29 08:47:25,785 [MQTT      ] [DEBUG] MQTT Received Message: prod/ns/sonoscontroller-0021b9022afa-14: {'config': {'firstRun': False, 'longPoll': '7200', 'logBucket': 'pgc-prod-logbucket-38dmw97ou252', 'oauth': {'test': {'clientId': '36f2a232-1260-4faf-a0eb-1795921fb806', 'redirectUrl': 'https://pgtest.isy.io/api/oauth/callback', 'secret': 'ddbef0df-13e1-4ac0-825b-44526e970a54'}, 'prod': {'clientId': 'f3dd2b06-e498-462e-bd6a-abdb0fb8b7ef', 'redirectUrl': 'https://polyglot.isy.io/api/oauth/callback', 'secret': 'eb29be52-1cee-4534-9417-250c9190a509'}}, 'url': 'https://github.com/simplextech/udi-poly-sonoscontroller.git', 'name': 'SonosController', 'language': 'python3', 'isyPassword': 'roZHbM9lq6', 'development': False, 'userId': '569cdd4a92cbdbfb2ce7da16', 'isyVersion': '5.2.0', 'pgUrl': 'https://lgpz727w3j.execute-api.us-east-1.amazonaws.com/prod/api/sys/nsgetioturl?params=eyJ1c2VySWQiOiI1NjljZGQ0YTkyY2JkYmZiMmNlN2RhMTYiLCJpZCI6IjAwOjIxOmI5OjAyOjJhOmZhIiwicHJvZmlsZU51bSI6MTQsInBhc3N3b3JkIjoicm9aSGJNOWxxNiJ9', 'timeAdded': 1598755682280, 'id': '00:21:b9:02:2a:fa', 'shortPoll': '60', 'timeStarted': 1603939645055, 'version': '0.2.00', 'nodes': {'controller': {'address': 'controller', 'drivers': {'ST': {'uom': 2, 'value': '1'}}, 'isController': True, 'isPrimary': True, 'name': 'Sonos Controller', 'nodedefid': 'controller', 'primary': 'controller', 'timeAdded': 1598755697416, 'timeStarted': 0}, 'g347e5cd1c390': {'address': 'g347e5cd1c390', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '122.861388ms', 'timeAdded': 1603939655634, 'success': False, 'isPrimary': False, 'name': 'Sonos Livivg Room ', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '3', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '21', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'g48a6b845abe8': {'address': 'g48a6b845abe8', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '332.708738ms', 'timeAdded': 1603939655634, 'success': False, 'isPrimary': False, 'name': 'Sonos Master Bedroom', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '4', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '46', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'g949f3e1ec6c0': {'address': 'g949f3e1ec6c0', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '717.468157ms', 'timeAdded': 1603939661223, 'success': False, 'isPrimary': False, 'name': 'Sonos Office', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '4', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '18', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'g949f3e1ed682': {'address': 'g949f3e1ed682', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '551.521208ms', 'timeAdded': 1603928369580, 'success': False, 'isPrimary': False, 'name': 'Sonos Kitchen', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '4', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '20', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'gb8e93778812a': {'address': 'gb8e93778812a', 'drivers': {'FAV': {'value': '0', 'uom': '25'}, 'GV0': {'value': '0', 'uom': '2'}, 'GV1': {'value': '0', 'uom': '2'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'ST': {'uom': '25', 'value': '4'}, 'SVOL': {'value': '40', 'uom': '51'}}, 'elapsed': '617.383888ms', 'error': False, 'isController': False, 'isPrimary': False, 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'name': 'Sonos Media Room', 'nodedefid': 'GROUP', 'primary': 'groups', 'seq': False, 'statusCode': 400, 'success': False, 'timeAdded': 1603939661223, 'timeStarted': 0}, 'groups': {'address': 'groups', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '231.043915ms', 'timeAdded': 1603939655633, 'success': False, 'isPrimary': True, 'name': 'Sonos Groups', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PARENT', 'drivers': {'ST': {'value': '1', 'uom': '2'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'p347e5cd1c390': {'address': 'p347e5cd1c390', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '115.99279ms', 'timeAdded': 1603939667383, 'success': False, 'isPrimary': False, 'name': 'Sonos Livivg Room', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '28', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'p48a6b845abe8': {'address': 'p48a6b845abe8', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '117.068634ms', 'timeAdded': 1603939667383, 'success': False, 'isPrimary': False, 'name': 'Sonos Master Bedroom', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '46', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'p949f3e1ec6c0': {'address': 'p949f3e1ec6c0', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '158.547307ms', 'timeAdded': 1603939670805, 'success': False, 'isPrimary': False, 'name': 'Sonos Office', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '18', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'p949f3e1ed682': {'address': 'p949f3e1ed682', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '8.032734ms', 'timeAdded': 1603939676323, 'success': False, 'isPrimary': False, 'name': 'Sonos Kitchen', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '15', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'pb8e93778812a': {'address': 'pb8e93778812a', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '312.072888ms', 'timeAdded': 1603939670805, 'success': False, 'isPrimary': False, 'name': 'Sonos Media Room', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '40', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'players': {'address': 'players', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '116.610727ms', 'timeAdded': 1603939667331, 'success': False, 'isPrimary': True, 'name': 'Sonos Players', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PARENT', 'drivers': {'ST': {'value': '1', 'uom': '2'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}}, 'netInfo': {'publicPort': 0, 'httpsIngress': False, 'publicIp': '3.89.244.35'}, 'customData': {'access_token': 'KriBsT43irvd20tvTFAtACbTGlfS', 'refresh_token': 'IAYegHqnO14cmLOFVvL3HKceA1TKgdus', 'expires_in': 86399}, 'connected': True, 'customParams': {'SAY_TTS-8': 'empty', 'SAY_TTS-9': 'empty', 'SAY_TTS-6': 'empty', 'SAY_TTS-7': 'empty', 'SAY_TTS-10': 'empty', 'format': '24khz_16bit_stereo', 'SAY_TTS-1': 'Someone is at the front door', 'language': 'en-us', 'SAY_TTS-4': 'Someone is at the side door by the garage', 'SAY_TTS-5': 'empty', 'SAY_TTS-2': 'Brad is arriving', 'SAY_TTS-3': 'Someone is on the deck', 'codec': 'mp3', 'api_key': '79d231a856ed4e37b3d17d9ff39524a5'}, 'profileNum': '14', 'notices': {}, 'worker': 'sonoscontroller-0021b9022afa-14', 'lastDisconnect': 0, 'isyUsername': 'pgc', 'type': 'cloud'}}
2020-10-29 08:47:25,785 [MQTT      ] [DEBUG] Recieved Message: config
2020-10-29 08:47:25,927 [MQTT      ] [DEBUG] MQTT Received Message: prod/ns/sonoscontroller-0021b9022afa-14: {'config': {'firstRun': False, 'longPoll': '7200', 'logBucket': 'pgc-prod-logbucket-38dmw97ou252', 'oauth': {'test': {'clientId': '36f2a232-1260-4faf-a0eb-1795921fb806', 'redirectUrl': 'https://pgtest.isy.io/api/oauth/callback', 'secret': 'ddbef0df-13e1-4ac0-825b-44526e970a54'}, 'prod': {'clientId': 'f3dd2b06-e498-462e-bd6a-abdb0fb8b7ef', 'redirectUrl': 'https://polyglot.isy.io/api/oauth/callback', 'secret': 'eb29be52-1cee-4534-9417-250c9190a509'}}, 'url': 'https://github.com/simplextech/udi-poly-sonoscontroller.git', 'name': 'SonosController', 'language': 'python3', 'isyPassword': 'roZHbM9lq6', 'development': False, 'userId': '569cdd4a92cbdbfb2ce7da16', 'isyVersion': '5.2.0', 'pgUrl': 'https://lgpz727w3j.execute-api.us-east-1.amazonaws.com/prod/api/sys/nsgetioturl?params=eyJ1c2VySWQiOiI1NjljZGQ0YTkyY2JkYmZiMmNlN2RhMTYiLCJpZCI6IjAwOjIxOmI5OjAyOjJhOmZhIiwicHJvZmlsZU51bSI6MTQsInBhc3N3b3JkIjoicm9aSGJNOWxxNiJ9', 'timeAdded': 1598755682280, 'id': '00:21:b9:02:2a:fa', 'shortPoll': '60', 'timeStarted': 1603939645055, 'version': '0.2.00', 'nodes': {'controller': {'address': 'controller', 'drivers': {'ST': {'uom': 2, 'value': '1'}}, 'isController': True, 'isPrimary': True, 'name': 'Sonos Controller', 'nodedefid': 'controller', 'primary': 'controller', 'timeAdded': 1598755697416, 'timeStarted': 0}, 'g347e5cd1c390': {'address': 'g347e5cd1c390', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '122.861388ms', 'timeAdded': 1603939655634, 'success': False, 'isPrimary': False, 'name': 'Sonos Livivg Room ', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '3', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '21', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'g48a6b845abe8': {'address': 'g48a6b845abe8', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '332.708738ms', 'timeAdded': 1603939655634, 'success': False, 'isPrimary': False, 'name': 'Sonos Master Bedroom', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '4', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '46', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'g949f3e1ec6c0': {'address': 'g949f3e1ec6c0', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '717.468157ms', 'timeAdded': 1603939661223, 'success': False, 'isPrimary': False, 'name': 'Sonos Office', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '4', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '18', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'g949f3e1ed682': {'address': 'g949f3e1ed682', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '551.521208ms', 'timeAdded': 1603928369580, 'success': False, 'isPrimary': False, 'name': 'Sonos Kitchen', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '4', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '20', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'gb8e93778812a': {'address': 'gb8e93778812a', 'drivers': {'FAV': {'value': '0', 'uom': '25'}, 'GV0': {'value': '0', 'uom': '2'}, 'GV1': {'value': '0', 'uom': '2'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'ST': {'uom': '25', 'value': '4'}, 'SVOL': {'value': '40', 'uom': '51'}}, 'elapsed': '617.383888ms', 'error': False, 'isController': False, 'isPrimary': False, 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'name': 'Sonos Media Room', 'nodedefid': 'GROUP', 'primary': 'groups', 'seq': False, 'statusCode': 400, 'success': False, 'timeAdded': 1603939661223, 'timeStarted': 0}, 'groups': {'address': 'groups', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '231.043915ms', 'timeAdded': 1603939655633, 'success': False, 'isPrimary': True, 'name': 'Sonos Groups', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PARENT', 'drivers': {'ST': {'value': '1', 'uom': '2'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'p347e5cd1c390': {'address': 'p347e5cd1c390', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '115.99279ms', 'timeAdded': 1603939667383, 'success': False, 'isPrimary': False, 'name': 'Sonos Livivg Room', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '28', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'p48a6b845abe8': {'address': 'p48a6b845abe8', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '117.068634ms', 'timeAdded': 1603939667383, 'success': False, 'isPrimary': False, 'name': 'Sonos Master Bedroom', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '46', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'p949f3e1ec6c0': {'address': 'p949f3e1ec6c0', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '158.547307ms', 'timeAdded': 1603939670805, 'success': False, 'isPrimary': False, 'name': 'Sonos Office', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '18', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'p949f3e1ed682': {'address': 'p949f3e1ed682', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '8.032734ms', 'timeAdded': 1603939676323, 'success': False, 'isPrimary': False, 'name': 'Sonos Kitchen', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '15', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'pb8e93778812a': {'address': 'pb8e93778812a', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '312.072888ms', 'timeAdded': 1603939670805, 'success': False, 'isPrimary': False, 'name': 'Sonos Media Room', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '40', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'players': {'address': 'players', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '116.610727ms', 'timeAdded': 1603939667331, 'success': False, 'isPrimary': True, 'name': 'Sonos Players', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PARENT', 'drivers': {'ST': {'value': '1', 'uom': '2'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}}, 'netInfo': {'publicPort': 0, 'httpsIngress': False, 'publicIp': '3.89.244.35'}, 'customData': {'access_token': 'KriBsT43irvd20tvTFAtACbTGlfS', 'refresh_token': 'IAYegHqnO14cmLOFVvL3HKceA1TKgdus', 'expires_in': 86399}, 'connected': True, 'customParams': {'SAY_TTS-8': 'empty', 'SAY_TTS-9': 'empty', 'SAY_TTS-6': 'empty', 'SAY_TTS-7': 'empty', 'SAY_TTS-10': 'empty', 'format': '24khz_16bit_stereo', 'SAY_TTS-1': 'Someone is at the front door', 'language': 'en-us', 'SAY_TTS-4': 'Someone is at the side door by the garage', 'SAY_TTS-5': 'empty', 'SAY_TTS-2': 'Brad is arriving', 'SAY_TTS-3': 'Someone is on the deck', 'codec': 'mp3', 'api_key': '79d231a856ed4e37b3d17d9ff39524a5'}, 'profileNum': '14', 'notices': {}, 'worker': 'sonoscontroller-0021b9022afa-14', 'lastDisconnect': 0, 'isyUsername': 'pgc', 'type': 'cloud'}}
2020-10-29 08:47:25,927 [MQTT      ] [DEBUG] Recieved Message: config
2020-10-29 08:47:26,804 [Controller] [ERROR] shortPoll:group_volume: None
2020-10-29 08:47:31,197 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:47:34,725 [Controller] [ERROR] shortPoll: SonosControl.get_player_volume is None
2020-10-29 08:48:26,904 [Controller] [ERROR] shortPoll:group_volume: None
2020-10-29 08:50:27,337 [Controller] [ERROR] shortPoll:group_volume: None
2020-10-29 10:47:25,566 [Controller] [INFO ] Sending customData to Polyglot.
2020-10-29 10:47:25,567 [Controller] [DEBUG] Sent Message: [prod/ns] : {"customdata": {"access_token": "EgFGcRxKAsic9qyHnic9gccAOjte", "refresh_token": "IAYegHqnO14cmLOFVvL3HKceA1TKgdus", "expires_in": 86399}, "userId": "569cdd4a92cbdbfb2ce7da16", "topic": "prod/ns/sonoscontroller-0021b9022afa-14", "profileNum": "14", "id": "00:21:b9:02:2a:fa"}
2020-10-29 10:47:25,568 [Controller] [INFO ] Sending notices to Polyglot.
2020-10-29 10:47:25,568 [Controller] [DEBUG] Sent Message: [prod/ns] : {"notices": {}, "userId": "569cdd4a92cbdbfb2ce7da16", "topic": "prod/ns/sonoscontroller-0021b9022afa-14", "profileNum": "14", "id": "00:21:b9:02:2a:fa"}
2020-10-29 10:47:25,887 [MQTT      ] [DEBUG] MQTT Received Message: prod/ns/sonoscontroller-0021b9022afa-14: {'config': {'firstRun': False, 'longPoll': '7200', 'logBucket': 'pgc-prod-logbucket-38dmw97ou252', 'oauth': {'test': {'clientId': '36f2a232-1260-4faf-a0eb-1795921fb806', 'redirectUrl': 'https://pgtest.isy.io/api/oauth/callback', 'secret': 'ddbef0df-13e1-4ac0-825b-44526e970a54'}, 'prod': {'clientId': 'f3dd2b06-e498-462e-bd6a-abdb0fb8b7ef', 'redirectUrl': 'https://polyglot.isy.io/api/oauth/callback', 'secret': 'eb29be52-1cee-4534-9417-250c9190a509'}}, 'url': 'https://github.com/simplextech/udi-poly-sonoscontroller.git', 'name': 'SonosController', 'language': 'python3', 'isyPassword': 'roZHbM9lq6', 'development': False, 'userId': '569cdd4a92cbdbfb2ce7da16', 'isyVersion': '5.2.0', 'pgUrl': 'https://lgpz727w3j.execute-api.us-east-1.amazonaws.com/prod/api/sys/nsgetioturl?params=eyJ1c2VySWQiOiI1NjljZGQ0YTkyY2JkYmZiMmNlN2RhMTYiLCJpZCI6IjAwOjIxOmI5OjAyOjJhOmZhIiwicHJvZmlsZU51bSI6MTQsInBhc3N3b3JkIjoicm9aSGJNOWxxNiJ9', 'timeAdded': 1598755682280, 'id': '00:21:b9:02:2a:fa', 'shortPoll': '60', 'timeStarted': 1603939645055, 'version': '0.2.00', 'nodes': {'controller': {'address': 'controller', 'drivers': {'ST': {'uom': 2, 'value': '1'}}, 'isController': True, 'isPrimary': True, 'name': 'Sonos Controller', 'nodedefid': 'controller', 'primary': 'controller', 'timeAdded': 1598755697416, 'timeStarted': 0}, 'g347e5cd1c390': {'address': 'g347e5cd1c390', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '122.861388ms', 'timeAdded': 1603939655634, 'success': False, 'isPrimary': False, 'name': 'Sonos Livivg Room ', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '3', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '21', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'g48a6b845abe8': {'address': 'g48a6b845abe8', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '332.708738ms', 'timeAdded': 1603939655634, 'success': False, 'isPrimary': False, 'name': 'Sonos Master Bedroom', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '4', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '46', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'g949f3e1ec6c0': {'address': 'g949f3e1ec6c0', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '717.468157ms', 'timeAdded': 1603939661223, 'success': False, 'isPrimary': False, 'name': 'Sonos Office', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '4', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '18', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'g949f3e1ed682': {'address': 'g949f3e1ed682', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '551.521208ms', 'timeAdded': 1603928369580, 'success': False, 'isPrimary': False, 'name': 'Sonos Kitchen', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '4', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '20', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'gb8e93778812a': {'address': 'gb8e93778812a', 'drivers': {'FAV': {'value': '0', 'uom': '25'}, 'GV0': {'value': '0', 'uom': '2'}, 'GV1': {'value': '0', 'uom': '2'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'ST': {'uom': '25', 'value': '4'}, 'SVOL': {'value': '40', 'uom': '51'}}, 'elapsed': '617.383888ms', 'error': False, 'isController': False, 'isPrimary': False, 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'name': 'Sonos Media Room', 'nodedefid': 'GROUP', 'primary': 'groups', 'seq': False, 'statusCode': 400, 'success': False, 'timeAdded': 1603939661223, 'timeStarted': 0}, 'groups': {'address': 'groups', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '231.043915ms', 'timeAdded': 1603939655633, 'success': False, 'isPrimary': True, 'name': 'Sonos Groups', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PARENT', 'drivers': {'ST': {'value': '1', 'uom': '2'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'p347e5cd1c390': {'address': 'p347e5cd1c390', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '115.99279ms', 'timeAdded': 1603939667383, 'success': False, 'isPrimary': False, 'name': 'Sonos Livivg Room', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '28', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'p48a6b845abe8': {'address': 'p48a6b845abe8', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '117.068634ms', 'timeAdded': 1603939667383, 'success': False, 'isPrimary': False, 'name': 'Sonos Master Bedroom', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '46', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'p949f3e1ec6c0': {'address': 'p949f3e1ec6c0', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '158.547307ms', 'timeAdded': 1603939670805, 'success': False, 'isPrimary': False, 'name': 'Sonos Office', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '18', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'p949f3e1ed682': {'address': 'p949f3e1ed682', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '8.032734ms', 'timeAdded': 1603939676323, 'success': False, 'isPrimary': False, 'name': 'Sonos Kitchen', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '15', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'pb8e93778812a': {'address': 'pb8e93778812a', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '312.072888ms', 'timeAdded': 1603939670805, 'success': False, 'isPrimary': False, 'name': 'Sonos Media Room', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '40', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'players': {'address': 'players', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '116.610727ms', 'timeAdded': 1603939667331, 'success': False, 'isPrimary': True, 'name': 'Sonos Players', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PARENT', 'drivers': {'ST': {'value': '1', 'uom': '2'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}}, 'netInfo': {'publicPort': 0, 'httpsIngress': False, 'publicIp': '3.89.244.35'}, 'customData': {'access_token': 'EgFGcRxKAsic9qyHnic9gccAOjte', 'refresh_token': 'IAYegHqnO14cmLOFVvL3HKceA1TKgdus', 'expires_in': 86399}, 'connected': True, 'customParams': {'SAY_TTS-8': 'empty', 'SAY_TTS-9': 'empty', 'SAY_TTS-6': 'empty', 'SAY_TTS-7': 'empty', 'SAY_TTS-10': 'empty', 'format': '24khz_16bit_stereo', 'SAY_TTS-1': 'Someone is at the front door', 'language': 'en-us', 'SAY_TTS-4': 'Someone is at the side door by the garage', 'SAY_TTS-5': 'empty', 'SAY_TTS-2': 'Brad is arriving', 'SAY_TTS-3': 'Someone is on the deck', 'codec': 'mp3', 'api_key': '79d231a856ed4e37b3d17d9ff39524a5'}, 'profileNum': '14', 'notices': {}, 'worker': 'sonoscontroller-0021b9022afa-14', 'lastDisconnect': 0, 'isyUsername': 'pgc', 'type': 'cloud'}}
2020-10-29 10:47:25,888 [MQTT      ] [DEBUG] Recieved Message: config
2020-10-29 10:47:26,207 [MQTT      ] [DEBUG] MQTT Received Message: prod/ns/sonoscontroller-0021b9022afa-14: {'config': {'firstRun': False, 'longPoll': '7200', 'logBucket': 'pgc-prod-logbucket-38dmw97ou252', 'oauth': {'test': {'clientId': '36f2a232-1260-4faf-a0eb-1795921fb806', 'redirectUrl': 'https://pgtest.isy.io/api/oauth/callback', 'secret': 'ddbef0df-13e1-4ac0-825b-44526e970a54'}, 'prod': {'clientId': 'f3dd2b06-e498-462e-bd6a-abdb0fb8b7ef', 'redirectUrl': 'https://polyglot.isy.io/api/oauth/callback', 'secret': 'eb29be52-1cee-4534-9417-250c9190a509'}}, 'url': 'https://github.com/simplextech/udi-poly-sonoscontroller.git', 'name': 'SonosController', 'language': 'python3', 'isyPassword': 'roZHbM9lq6', 'development': False, 'userId': '569cdd4a92cbdbfb2ce7da16', 'isyVersion': '5.2.0', 'pgUrl': 'https://lgpz727w3j.execute-api.us-east-1.amazonaws.com/prod/api/sys/nsgetioturl?params=eyJ1c2VySWQiOiI1NjljZGQ0YTkyY2JkYmZiMmNlN2RhMTYiLCJpZCI6IjAwOjIxOmI5OjAyOjJhOmZhIiwicHJvZmlsZU51bSI6MTQsInBhc3N3b3JkIjoicm9aSGJNOWxxNiJ9', 'timeAdded': 1598755682280, 'id': '00:21:b9:02:2a:fa', 'shortPoll': '60', 'timeStarted': 1603939645055, 'version': '0.2.00', 'nodes': {'controller': {'address': 'controller', 'drivers': {'ST': {'uom': 2, 'value': '1'}}, 'isController': True, 'isPrimary': True, 'name': 'Sonos Controller', 'nodedefid': 'controller', 'primary': 'controller', 'timeAdded': 1598755697416, 'timeStarted': 0}, 'g347e5cd1c390': {'address': 'g347e5cd1c390', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '122.861388ms', 'timeAdded': 1603939655634, 'success': False, 'isPrimary': False, 'name': 'Sonos Livivg Room ', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '3', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '21', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'g48a6b845abe8': {'address': 'g48a6b845abe8', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '332.708738ms', 'timeAdded': 1603939655634, 'success': False, 'isPrimary': False, 'name': 'Sonos Master Bedroom', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '4', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '46', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'g949f3e1ec6c0': {'address': 'g949f3e1ec6c0', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '717.468157ms', 'timeAdded': 1603939661223, 'success': False, 'isPrimary': False, 'name': 'Sonos Office', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '4', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '18', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'g949f3e1ed682': {'address': 'g949f3e1ed682', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '551.521208ms', 'timeAdded': 1603928369580, 'success': False, 'isPrimary': False, 'name': 'Sonos Kitchen', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '4', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '20', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'gb8e93778812a': {'address': 'gb8e93778812a', 'drivers': {'FAV': {'value': '0', 'uom': '25'}, 'GV0': {'value': '0', 'uom': '2'}, 'GV1': {'value': '0', 'uom': '2'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'ST': {'uom': '25', 'value': '4'}, 'SVOL': {'value': '40', 'uom': '51'}}, 'elapsed': '617.383888ms', 'error': False, 'isController': False, 'isPrimary': False, 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'name': 'Sonos Media Room', 'nodedefid': 'GROUP', 'primary': 'groups', 'seq': False, 'statusCode': 400, 'success': False, 'timeAdded': 1603939661223, 'timeStarted': 0}, 'groups': {'address': 'groups', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '231.043915ms', 'timeAdded': 1603939655633, 'success': False, 'isPrimary': True, 'name': 'Sonos Groups', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PARENT', 'drivers': {'ST': {'value': '1', 'uom': '2'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'p347e5cd1c390': {'address': 'p347e5cd1c390', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '115.99279ms', 'timeAdded': 1603939667383, 'success': False, 'isPrimary': False, 'name': 'Sonos Livivg Room', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '28', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'p48a6b845abe8': {'address': 'p48a6b845abe8', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '117.068634ms', 'timeAdded': 1603939667383, 'success': False, 'isPrimary': False, 'name': 'Sonos Master Bedroom', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '46', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'p949f3e1ec6c0': {'address': 'p949f3e1ec6c0', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '158.547307ms', 'timeAdded': 1603939670805, 'success': False, 'isPrimary': False, 'name': 'Sonos Office', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '18', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'p949f3e1ed682': {'address': 'p949f3e1ed682', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '8.032734ms', 'timeAdded': 1603939676323, 'success': False, 'isPrimary': False, 'name': 'Sonos Kitchen', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '15', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'pb8e93778812a': {'address': 'pb8e93778812a', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '312.072888ms', 'timeAdded': 1603939670805, 'success': False, 'isPrimary': False, 'name': 'Sonos Media Room', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '40', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'players': {'address': 'players', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '116.610727ms', 'timeAdded': 1603939667331, 'success': False, 'isPrimary': True, 'name': 'Sonos Players', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PARENT', 'drivers': {'ST': {'value': '1', 'uom': '2'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}}, 'netInfo': {'publicPort': 0, 'httpsIngress': False, 'publicIp': '3.89.244.35'}, 'customData': {'access_token': 'EgFGcRxKAsic9qyHnic9gccAOjte', 'refresh_token': 'IAYegHqnO14cmLOFVvL3HKceA1TKgdus', 'expires_in': 86399}, 'connected': True, 'customParams': {'SAY_TTS-8': 'empty', 'SAY_TTS-9': 'empty', 'SAY_TTS-6': 'empty', 'SAY_TTS-7': 'empty', 'SAY_TTS-10': 'empty', 'format': '24khz_16bit_stereo', 'SAY_TTS-1': 'Someone is at the front door', 'language': 'en-us', 'SAY_TTS-4': 'Someone is at the side door by the garage', 'SAY_TTS-5': 'empty', 'SAY_TTS-2': 'Brad is arriving', 'SAY_TTS-3': 'Someone is on the deck', 'codec': 'mp3', 'api_key': '79d231a856ed4e37b3d17d9ff39524a5'}, 'profileNum': '14', 'notices': {}, 'worker': 'sonoscontroller-0021b9022afa-14', 'lastDisconnect': 0, 'isyUsername': 'pgc', 'type': 'cloud'}}
2020-10-29 10:47:26,208 [MQTT      ] [DEBUG] Recieved Message: config
2020-10-29 11:12:27,556 [MQTT      ] [DEBUG] MQTT Received Message: prod/ns/sonoscontroller-0021b9022afa-14: {'command': {'address': 'g949f3e1ec6c0', 'cmd': 'FAV', 'value': '12', 'uom': '25', 'query': {}}}
2020-10-29 11:12:27,557 [MQTT      ] [DEBUG] Received Message: {'command': {'address': 'g949f3e1ec6c0', 'cmd': 'FAV', 'value': '12', 'uom': '25', 'query': {}}}
2020-10-29 11:12:29,593 [Controller] [INFO ] Updating Driver g949f3e1ec6c0 - ST: 1 uom: 25
2020-10-29 11:12:31,819 [Drivers   ] [DEBUG] Sent Message: [prod/ns] : {"batch": {"status": [{"address": "g949f3e1ec6c0", "driver": "ST", "value": "1", "uom": "25"}]}, "userId": "569cdd4a92cbdbfb2ce7da16", "topic": "prod/ns/sonoscontroller-0021b9022afa-14", "profileNum": "14", "id": "00:21:b9:02:2a:fa"}
2020-10-29 11:12:32,808 [MQTT      ] [DEBUG] MQTT Received Message: prod/ns/sonoscontroller-0021b9022afa-14: {'config': {'firstRun': False, 'longPoll': '7200', 'logBucket': 'pgc-prod-logbucket-38dmw97ou252', 'oauth': {'test': {'clientId': '36f2a232-1260-4faf-a0eb-1795921fb806', 'redirectUrl': 'https://pgtest.isy.io/api/oauth/callback', 'secret': 'ddbef0df-13e1-4ac0-825b-44526e970a54'}, 'prod': {'clientId': 'f3dd2b06-e498-462e-bd6a-abdb0fb8b7ef', 'redirectUrl': 'https://polyglot.isy.io/api/oauth/callback', 'secret': 'eb29be52-1cee-4534-9417-250c9190a509'}}, 'url': 'https://github.com/simplextech/udi-poly-sonoscontroller.git', 'name': 'SonosController', 'language': 'python3', 'isyPassword': 'roZHbM9lq6', 'development': False, 'userId': '569cdd4a92cbdbfb2ce7da16', 'isyVersion': '5.2.0', 'pgUrl': 'https://lgpz727w3j.execute-api.us-east-1.amazonaws.com/prod/api/sys/nsgetioturl?params=eyJ1c2VySWQiOiI1NjljZGQ0YTkyY2JkYmZiMmNlN2RhMTYiLCJpZCI6IjAwOjIxOmI5OjAyOjJhOmZhIiwicHJvZmlsZU51bSI6MTQsInBhc3N3b3JkIjoicm9aSGJNOWxxNiJ9', 'timeAdded': 1598755682280, 'id': '00:21:b9:02:2a:fa', 'shortPoll': '60', 'timeStarted': 1603939645055, 'version': '0.2.00', 'nodes': {'controller': {'address': 'controller', 'drivers': {'ST': {'uom': 2, 'value': '1'}}, 'isController': True, 'isPrimary': True, 'name': 'Sonos Controller', 'nodedefid': 'controller', 'primary': 'controller', 'timeAdded': 1598755697416, 'timeStarted': 0}, 'g347e5cd1c390': {'address': 'g347e5cd1c390', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '122.861388ms', 'timeAdded': 1603939655634, 'success': False, 'isPrimary': False, 'name': 'Sonos Livivg Room ', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '3', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '21', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'g48a6b845abe8': {'address': 'g48a6b845abe8', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '332.708738ms', 'timeAdded': 1603939655634, 'success': False, 'isPrimary': False, 'name': 'Sonos Master Bedroom', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '4', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '46', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'g949f3e1ec6c0': {'address': 'g949f3e1ec6c0', 'drivers': {'FAV': {'value': '0', 'uom': '25'}, 'GV0': {'value': '0', 'uom': '2'}, 'GV1': {'value': '0', 'uom': '2'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'ST': {'uom': '25', 'value': '1'}, 'SVOL': {'value': '18', 'uom': '51'}}, 'elapsed': '717.468157ms', 'error': False, 'isController': False, 'isPrimary': False, 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'name': 'Sonos Office', 'nodedefid': 'GROUP', 'primary': 'groups', 'seq': False, 'statusCode': 400, 'success': False, 'timeAdded': 1603939661223, 'timeStarted': 0}, 'g949f3e1ed682': {'address': 'g949f3e1ed682', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '551.521208ms', 'timeAdded': 1603928369580, 'success': False, 'isPrimary': False, 'name': 'Sonos Kitchen', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'GROUP', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '4', 'uom': '25'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'FAV': {'value': '0', 'uom': '25'}, 'GV1': {'value': '0', 'uom': '2'}, 'SVOL': {'value': '20', 'uom': '51'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'gb8e93778812a': {'address': 'gb8e93778812a', 'drivers': {'FAV': {'value': '0', 'uom': '25'}, 'GV0': {'value': '0', 'uom': '2'}, 'GV1': {'value': '0', 'uom': '2'}, 'PLAYLST': {'value': '0', 'uom': '25'}, 'ST': {'uom': '25', 'value': '4'}, 'SVOL': {'value': '40', 'uom': '51'}}, 'elapsed': '617.383888ms', 'error': False, 'isController': False, 'isPrimary': False, 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'name': 'Sonos Media Room', 'nodedefid': 'GROUP', 'primary': 'groups', 'seq': False, 'statusCode': 400, 'success': False, 'timeAdded': 1603939661223, 'timeStarted': 0}, 'groups': {'address': 'groups', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '231.043915ms', 'timeAdded': 1603939655633, 'success': False, 'isPrimary': True, 'name': 'Sonos Groups', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PARENT', 'drivers': {'ST': {'value': '1', 'uom': '2'}}, 'seq': False, 'primary': 'groups', 'statusCode': 400}, 'p347e5cd1c390': {'address': 'p347e5cd1c390', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '115.99279ms', 'timeAdded': 1603939667383, 'success': False, 'isPrimary': False, 'name': 'Sonos Livivg Room', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '28', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'p48a6b845abe8': {'address': 'p48a6b845abe8', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '117.068634ms', 'timeAdded': 1603939667383, 'success': False, 'isPrimary': False, 'name': 'Sonos Master Bedroom', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '46', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'p949f3e1ec6c0': {'address': 'p949f3e1ec6c0', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '158.547307ms', 'timeAdded': 1603939670805, 'success': False, 'isPrimary': False, 'name': 'Sonos Office', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '18', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'p949f3e1ed682': {'address': 'p949f3e1ed682', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '8.032734ms', 'timeAdded': 1603939676323, 'success': False, 'isPrimary': False, 'name': 'Sonos Kitchen', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '15', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'pb8e93778812a': {'address': 'pb8e93778812a', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '312.072888ms', 'timeAdded': 1603939670805, 'success': False, 'isPrimary': False, 'name': 'Sonos Media Room', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PLAYER', 'drivers': {'GV0': {'value': '0', 'uom': '2'}, 'ST': {'value': '1', 'uom': '2'}, 'SVOL': {'value': '40', 'uom': '51'}, 'SAYTTS': {'value': '0', 'uom': '25'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}, 'players': {'address': 'players', 'timeStarted': 0, 'error': False, 'isController': False, 'elapsed': '116.610727ms', 'timeAdded': 1603939667331, 'success': False, 'isPrimary': True, 'name': 'Sonos Players', 'json': {'RestResponse': {'reason': {'code': '5004'}, 'succeeded': 'false', 'status': '400'}}, 'nodedefid': 'PARENT', 'drivers': {'ST': {'value': '1', 'uom': '2'}}, 'seq': False, 'primary': 'players', 'statusCode': 400}}, 'netInfo': {'publicPort': 0, 'httpsIngress': False, 'publicIp': '3.89.244.35'}, 'customData': {'access_token': 'EgFGcRxKAsic9qyHnic9gccAOjte', 'refresh_token': 'IAYegHqnO14cmLOFVvL3HKceA1TKgdus', 'expires_in': 86399}, 'connected': True, 'customParams': {'SAY_TTS-8': 'empty', 'SAY_TTS-9': 'empty', 'SAY_TTS-6': 'empty', 'SAY_TTS-7': 'empty', 'SAY_TTS-10': 'empty', 'format': '24khz_16bit_stereo', 'SAY_TTS-1': 'Someone is at the front door', 'language': 'en-us', 'SAY_TTS-4': 'Someone is at the side door by the garage', 'SAY_TTS-5': 'empty', 'SAY_TTS-2': 'Brad is arriving', 'SAY_TTS-3': 'Someone is on the deck', 'codec': 'mp3', 'api_key': '79d231a856ed4e37b3d17d9ff39524a5'}, 'profileNum': '14', 'notices': {}, 'worker': 'sonoscontroller-0021b9022afa-14', 'lastDisconnect': 0, 'isyUsername': 'pgc', 'type': 'cloud'}}
2020-10-29 11:12:32,808 [MQTT      ] [DEBUG] Recieved Message: config
2020-10-29 11:30:26,999 [Controller] [ERROR] Exception in thread Controller:
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/urllib3/connection.py", line 160, in _new_conn
    (self._dns_host, self.port), self.timeout, **extra_kw
  File "/usr/local/lib/python3.7/site-packages/urllib3/util/connection.py", line 84, in create_connection
    raise err
  File "/usr/local/lib/python3.7/site-packages/urllib3/util/connection.py", line 74, in create_connection
    sock.connect(sa)
OSError: [Errno 113] No route to host

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 677, in urlopen
    chunked=chunked,
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 381, in _make_request
    self._validate_conn(conn)
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 978, in _validate_conn
    conn.connect()
  File "/usr/local/lib/python3.7/site-packages/urllib3/connection.py", line 309, in connect
    conn = self._new_conn()
  File "/usr/local/lib/python3.7/site-packages/urllib3/connection.py", line 172, in _new_conn
    self, "Failed to establish a new connection: %s" % e
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPSConnection object at 0x7fdc079ffba8>: Failed to establish a new connection: [Errno 113] No route to host

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/requests/adapters.py", line 449, in send
    timeout=timeout
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 727, in urlopen
    method, url, error=e, _pool=self, _stacktrace=sys.exc_info()[2]
  File "/usr/local/lib/python3.7/site-packages/urllib3/util/retry.py", line 446, in increment
    raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='api.ws.sonos.com', port=443): Max retries exceeded with url: /control/api/v1/households/Sonos_Vf4EGWq1koTooBJaVyufkOVHV5.ri7sR2ZLDIhpvEt0VyyG/groups/RINCON_B8E93778812A01400:2476/groupVolume (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7fdc079ffba8>: Failed to establish a new connection: [Errno 113] No route to host'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/threading.py", line 917, in _bootstrap_inner
    self.run()
  File "/usr/local/lib/python3.7/threading.py", line 865, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/local/lib/python3.7/site-packages/pgc_interface/pgc_interface.py", line 795, in _parseInput
    self.shortPoll()
  File "./SonosController.py", line 218, in shortPoll
    group_volume = self.SonosControl.get_group_volume(household, group_id)
  File "/app/nodeserver/sonos/sonos_control.py", line 170, in get_group_volume
    r_json = self.sonos_get_api(group_volume_url)
  File "/app/nodeserver/sonos/sonos_control.py", line 48, in sonos_get_api
    req = requests.get(url, headers=self.headers)
  File "/usr/local/lib/python3.7/site-packages/requests/api.py", line 76, in get
    return request('get', url, params=params, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/requests/api.py", line 61, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/requests/sessions.py", line 530, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/lib/python3.7/site-packages/requests/sessions.py", line 643, in send
    r = adapter.send(request, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/requests/adapters.py", line 516, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='api.ws.sonos.com', port=443): Max retries exceeded with url: /control/api/v1/households/Sonos_Vf4EGWq1koTooBJaVyufkOVHV5.ri7sR2ZLDIhpvEt0VyyG/groups/RINCON_B8E93778812A01400:2476/groupVolume (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7fdc079ffba8>: Failed to establish a new connection: [Errno 113] No route to host'))
2020-10-29 13:19:32,437 [MQTT      ] [DEBUG] MQTT Received Message: prod/ns/sonoscontroller-0021b9022afa-14: {'command': {'address': 'p347e5cd1c390', 'cmd': 'SAYTTS', 'value': '2', 'uom': '25', 'query': {}}}
2020-10-29 13:19:32,438 [MQTT      ] [DEBUG] Received Message: {'command': {'address': 'p347e5cd1c390', 'cmd': 'SAYTTS', 'value': '2', 'uom': '25', 'query': {}}}

 

Link to comment
Share on other sites

1 minute ago, simplextech said:

Interesting but I don't see any NS errors just reconnects to AWS nodes and lots of MQTT which are all coming from polyglot.  Perhaps a AWS node was having issues or some Polyglot maintenance.  I dunno.

A spontaneous restart seemed odd.  I figured it was probably something related to PGC or AWS  since the nodeserver showed "Disconnected".  It was more FYI than anything else.  If it recurs I'll open a ticket with UDI.

Link to comment
Share on other sites

1 minute ago, glarsen said:

A spontaneous restart seemed odd.  I figured it was probably something related to PGC or AWS  since the nodeserver showed "Disconnected".  It was more FYI than anything else.  If it recurs I'll open a ticket with UDI.

And post/send me the log :)

Considering the time there might have been some maintenance happening or something.

Link to comment
Share on other sites

1 minute ago, simplextech said:

Considering the time there might have been some maintenance happening or something.

I noticed that I may have had a restart that I didn't cause as well.  I was busy and didn't save the log at the time, but I noticed that the uptime had changed from days to hours.  This was sometime yesterday.  I did save the log this morning, if you need it.  I believe it shows the restart.

Link to comment
Share on other sites

Well, here's another timeout error...

2020-10-29 15:30:00,291 [MQTT      ] [DEBUG] Recieved Message: config
2020-10-29 16:45:10,219 [Controller] [ERROR] Exception in thread Controller:
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/urllib3/connection.py", line 160, in _new_conn
    (self._dns_host, self.port), self.timeout, **extra_kw
  File "/usr/local/lib/python3.7/site-packages/urllib3/util/connection.py", line 84, in create_connection
    raise err
  File "/usr/local/lib/python3.7/site-packages/urllib3/util/connection.py", line 74, in create_connection
    sock.connect(sa)
TimeoutError: [Errno 110] Connection timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 677, in urlopen
    chunked=chunked,
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 381, in _make_request
    self._validate_conn(conn)
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 978, in _validate_conn
    conn.connect()
  File "/usr/local/lib/python3.7/site-packages/urllib3/connection.py", line 309, in connect
    conn = self._new_conn()
  File "/usr/local/lib/python3.7/site-packages/urllib3/connection.py", line 172, in _new_conn
    self, "Failed to establish a new connection: %s" % e
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPSConnection object at 0x7f630b2e6d68>: Failed to establish a new connection: [Errno 110] Connection timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/requests/adapters.py", line 449, in send
    timeout=timeout
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 727, in urlopen
    method, url, error=e, _pool=self, _stacktrace=sys.exc_info()[2]
  File "/usr/local/lib/python3.7/site-packages/urllib3/util/retry.py", line 446, in increment
    raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='api.ws.sonos.com', port=443): Max retries exceeded with url: /control/api/v1/households/Sonos_Vf4EGWq1koTooBJaVyufkOVHV5.ri7sR2ZLDIhpvEt0VyyG/groups/RINCON_949F3E1EC6C001400:1532/groupVolume (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f630b2e6d68>: Failed to establish a new connection: [Errno 110] Connection timed out'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/threading.py", line 917, in _bootstrap_inner
    self.run()
  File "/usr/local/lib/python3.7/threading.py", line 865, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/local/lib/python3.7/site-packages/pgc_interface/pgc_interface.py", line 795, in _parseInput
    self.shortPoll()
  File "./SonosController.py", line 218, in shortPoll
    group_volume = self.SonosControl.get_group_volume(household, group_id)
  File "/app/nodeserver/sonos/sonos_control.py", line 170, in get_group_volume
    r_json = self.sonos_get_api(group_volume_url)
  File "/app/nodeserver/sonos/sonos_control.py", line 48, in sonos_get_api
    req = requests.get(url, headers=self.headers)
  File "/usr/local/lib/python3.7/site-packages/requests/api.py", line 76, in get
    return request('get', url, params=params, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/requests/api.py", line 61, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/requests/sessions.py", line 530, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/lib/python3.7/site-packages/requests/sessions.py", line 643, in send
    r = adapter.send(request, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/requests/adapters.py", line 516, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='api.ws.sonos.com', port=443): Max retries exceeded with url: /control/api/v1/households/Sonos_Vf4EGWq1koTooBJaVyufkOVHV5.ri7sR2ZLDIhpvEt0VyyG/groups/RINCON_949F3E1EC6C001400:1532/groupVolume (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f630b2e6d68>: Failed to establish a new connection: [Errno 110] Connection timed out'))
2020-10-29 16:46:47,180 [MQTT      ] [DEBUG] MQTT Received Message: prod/ns/sonoscontroller-0021b9022afa-14: {'command': {'address': 'p347e5cd1c390', 'cmd': 'SAYTTS', 'value': '2', 'uom': '25', 'query': {}}}
2020-10-29 16:46:47,180 [MQTT      ] [DEBUG] Received Message: {'command': {'address': 'p347e5cd1c390', 'cmd': 'SAYTTS', 'value': '2', 'uom': '25', 'query': {}}}

 

Link to comment
Share on other sites

43 minutes ago, simplextech said:

it would be really nice of PGC had a 'restart' option like Polyglot does.

I can imagine that when the Polyglot store becomes monitized, UDI might need to make this functionality available.  I suspect there are instances, such as this, that would add value to the nodeserver and make it more viable.  The ability for you to trap these errors, then give the nodeserver a bounce wouldn't cause me any heartburn.  Better, of course, to not have the problem, but some of the Sonos "cloud" issues are no doubt beyond your reach.

Anyway, thanks again for your efforts.

Link to comment
Share on other sites

1 minute ago, Bumbershoot said:

I can imagine that when the Polyglot store becomes monitized, UDI might need to make this functionality available.  I suspect there are instances, such as this, that would add value to the nodeserver and make it more viable.  The ability for you to trap these errors, then give the nodeserver a bounce wouldn't cause me any heartburn.  Better, of course, to not have the problem, but some of the Sonos "cloud" issues are no doubt beyond your reach.

Anyway, thanks again for your efforts.

Yeah I'm kinda getting tired of the "Cloud" issues.  I'm currently neck deep in developing a Lutron RadioRA 2 nodeserver but once that's done I'm giving A LOT of thought of taking the jishi sonos api and molding that into a local Polisy nodeserver.  There are some trade-offs in doing that with some of the online music services but it may not be that bad.  Ideally I'd like the ability to have a hybrid NS that could have a optional component in the cloud to feed certain pieces back and forth.  I've thought about this as well but haven't invested the time as there's no investment :)

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.


  • Recently Browsing

    • No registered users viewing this page.
  • Who's Online (See full list)

    • There are no registered users currently online
  • Forum Statistics

    • Total Topics
      36.5k
    • Total Posts
      367.6k
×
×
  • Create New...