27 lines
873 B
Python
27 lines
873 B
Python
import logging
|
|
from typing import Optional
|
|
from aiohttp import ClientSession, ClientTimeout
|
|
|
|
"""Radio Utils"""
|
|
|
|
async def get_now_playing() -> Optional[str]:
|
|
"""
|
|
Get radio now playing
|
|
|
|
Returns:
|
|
str
|
|
"""
|
|
np_url: str = "https://api.codey.lol/radio/np"
|
|
try:
|
|
async with ClientSession() as session:
|
|
async with await session.post(np_url, headers={
|
|
'content-type': 'application/json; charset=utf-8',
|
|
}, timeout=ClientTimeout(connect=1.5, sock_read=1.5)) as request:
|
|
request.raise_for_status()
|
|
response_json = await request.json()
|
|
artistsong = response_json.get('artistsong')
|
|
return artistsong
|
|
except Exception as e:
|
|
logging.critical("Now playing retrieval failed: %s",
|
|
str(e))
|
|
return None |