From ce266211194e7805e6e188668aa6b94be2f75688 Mon Sep 17 00:00:00 2001 From: Tanner Collin Date: Mon, 20 Jan 2025 22:40:25 +0000 Subject: [PATCH] Add timeouts to all telnet read_until's --- main.py | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/main.py b/main.py index d096191..7df3180 100644 --- a/main.py +++ b/main.py @@ -27,13 +27,13 @@ async def delete_message(mid): logging.info('Deleting message ID: %s...', mid) with Telnet('192.168.168.1', 23, timeout=10) as tn: - tn.read_until(b'login: ') + tn.read_until(b'login: ', timeout=4) tn.write(b'admin\n') - tn.read_until(b'Password: ') + tn.read_until(b'Password: ', timeout=4) tn.write(settings.ROUTER_PASS.encode() + b'\n') - tn.read_until(b'UserDevice> ') + tn.read_until(b'UserDevice> ', timeout=4) command = 'AT+CMGD={}\r\n'.format(str(mid)) @@ -51,16 +51,16 @@ async def delete_message(mid): async def send_message(number, text): - logging.info('Sending to %s message: %s...', number, text) + logging.info('Sending to %s message: %s', number, text) with Telnet('192.168.168.1', 23, timeout=10) as tn: - tn.read_until(b'login: ') + tn.read_until(b'login: ', timeout=4) tn.write(b'admin\n') - tn.read_until(b'Password: ') + tn.read_until(b'Password: ', timeout=4) tn.write(settings.ROUTER_PASS.encode() + b'\n') - tn.read_until(b'UserDevice> ') + tn.read_until(b'UserDevice> ', timeout=4) command = 'AT+CMGS={}\r\n'.format(str(number)) @@ -88,13 +88,13 @@ async def get_messages(): # handles no messages (empty response) fine with Telnet('192.168.168.1', 23, timeout=10) as tn: - tn.read_until(b'login: ') + tn.read_until(b'login: ', timeout=4) tn.write(b'admin\n') - tn.read_until(b'Password: ') + tn.read_until(b'Password: ', timeout=4) tn.write(settings.ROUTER_PASS.encode() + b'\n') - tn.read_until(b'UserDevice> ') + tn.read_until(b'UserDevice> ', timeout=4) tn.write(b'AT+CMGL\r\n') res = tn.read_until(b'UserDevice> ', timeout=4).decode() @@ -180,7 +180,7 @@ async def send(event): res = await send_message(number, message) if res: - await event.reply('Ok.') + await event.reply('ok') else: await event.reply('Error sending SMS.')