Merge pull request #23 from Tari-dev/main

Closes Spotify session and fix a bug of node.disconnect
This commit is contained in:
Clxud 2022-03-06 13:34:35 -05:00 committed by GitHub
commit ac6f92241b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 2 deletions

View File

@ -257,9 +257,12 @@ class Node:
for player in self.players.copy().values(): for player in self.players.copy().values():
await player.destroy() await player.destroy()
if self._spotify_client_id and self._spotify_client_secret:
await self._spotify_client.close()
await self._websocket.close() await self._websocket.close()
del self._pool.nodes[self._identifier] del self._pool._nodes[self._identifier]
self.available = False self._available = False
self._task.cancel() self._task.cancel()
async def build_track( async def build_track(

View File

@ -49,6 +49,8 @@ class Client:
self._expiry = time.time() + (int(data["expires_in"]) - 10) self._expiry = time.time() + (int(data["expires_in"]) - 10)
self._bearer_headers = {"Authorization": f"Bearer {self._bearer_token}"} self._bearer_headers = {"Authorization": f"Bearer {self._bearer_token}"}
async def search(self, *, query: str): async def search(self, *, query: str):
if not self._bearer_token or time.time() >= self._expiry: if not self._bearer_token or time.time() >= self._expiry:
await self._fetch_bearer_token() await self._fetch_bearer_token()
@ -102,3 +104,7 @@ class Client:
next_page_url = next_data["next"] next_page_url = next_data["next"]
return Playlist(data, tracks) return Playlist(data, tracks)
async def close(self):
await self.session.close()