Finish the tcp loop

This commit is contained in:
Sameer Rahmani 2022-04-15 23:13:21 +01:00
parent d079d1c90e
commit 69bb419ac7
1 changed files with 17 additions and 8 deletions

View File

@ -70,17 +70,26 @@ def synth(config):
) )
async def tcp_handler(reader, writer): async def tcp_handler(reader, writer):
# Read till EOF while True:
data = await reader.read(-1) # Read till EOF
message = data.decode() data = await reader.read(4)
wav = synthesizer.tts(message, speaker_idx, "None", None) msg_len = int.from_bytes(data, 'big')
play(wav) if msg_len != 0:
data = await reader.read(msg_len)
message = data.decode()
print(f"Received {message!r}") print(f"Received {message!r}")
writer.write(b"Ok") if message == "//close":
await writer.drain() break
wav = synthesizer.tts(message, speaker_idx, "None", None)
# synthesizer.save_wav(wav, "/tmp/blah.wav")
play(wav)
writer.write(b"Ok")
await writer.drain()
writer.close() writer.close()
return tcp_handler return tcp_handler