"""Script to test connection.""" import asyncio import logging import ssl from websockets.client import connect as ws_connect # pip install websockets==10.4 HOST = "192.168.1.39" NON_SSL_PORT = 3000 SSL_PORT = 3001 async def main(): """Test connection using non SSL & SSL.""" fmt = ( "%(asctime)s.%(msecs)03d %(levelname)s (%(threadName)s) [%(name)s] %(message)s" ) logging.basicConfig(level=logging.DEBUG, format=fmt) logger = logging.getLogger(__name__) ssl_context = ssl.SSLContext() logger.info("Connect without SSL start") try: ws = await ws_connect( f"ws://{HOST}:{NON_SSL_PORT}", ping_interval=5, ping_timeout=20, open_timeout=2, close_timeout=2, max_size=None, ) except Exception as err: logger.error("Connect without SSL error: %r", err) try: ws.close() except Exception: pass logger.info("Connect without SSL end") logger.info("Connect using SSL start") try: ws1 = await ws_connect( f"wss://{HOST}:{SSL_PORT}", ping_interval=5, ping_timeout=20, open_timeout=2, close_timeout=2, max_size=None, ssl=ssl_context, ) except Exception as err: logger.error("Connect using SSL error: %r", err) logger.info("Connect using SSL end") try: ws1.close() except Exception: pass if __name__ == "__main__": asyncio.run(main())