Как сделать так, чтобы если нет ответа более N секунд, то вернуть None (потому что это будет бесконечно, если сообщение не отправлено).

async def async_function():
    ws_conn = None
    ws_url =  'websocket:4000'
    print(ws_url)

    try:
        timeout = 5
        try:

            ws_conn = await asyncio.wait_for(websockets.connect(ws_url), 1)

        except asyncio.exceptions.TimeoutError as e:
            print('Error connecting.{}'.format(e))

        response = await ws_conn.recv()

        await ws_conn.close()
        return response
    except:
        await ws_conn.close()
    return None
Вернуться на верх