This commit is contained in:
dharm pimsen 2024-01-29 18:42:33 +07:00
parent a717be901c
commit 118bb7aa72
2 changed files with 55 additions and 1 deletions

View File

@ -242,6 +242,23 @@ class App:
if len(data) == 0: if len(data) == 0:
dpg.configure_item("serverstatus", default_value='lost connected', color=(255, 0, 0)) dpg.configure_item("serverstatus", default_value='lost connected', color=(255, 0, 0))
socket.close() socket.close()
if self.cprotocol == "TCP":
socket.close()
elif self.cprotocol == "ZeroMQ":
try:
message = socket.recv(zmq.NOBLOCK)
if message is None:
break # No more messages
# Process the received message if needed
print(f"Received message: {message.decode()}")
except zmq.error.ZMQError as e:
if e.errno == zmq.EAGAIN:
break # No more messages
else:
raise
socket.close()
else:
socket.close()
self.disconnectserver() self.disconnectserver()
break break
@ -306,6 +323,9 @@ class App:
if not self.firstrun: if not self.firstrun:
data = datadecoded["channel"][self.readchannel]["Content"] data = datadecoded["channel"][self.readchannel]["Content"]
if len(data) == 0:
dpg.configure_item("serverstatus", default_value=f'connected but no audio', color=(255, 0, 0))
if self.ccisdecryptpassword and self.ccisencrypt: if self.ccisdecryptpassword and self.ccisencrypt:
try: try:
# decrypt data # decrypt data
@ -358,7 +378,24 @@ class App:
bytesconunt_frame += 1 bytesconunt_frame += 1
else: else:
streamoutput.close() streamoutput.close()
socket.close() if self.cprotocol == "TCP":
socket.close()
elif self.cprotocol == "ZeroMQ":
try:
message = socket.recv(zmq.NOBLOCK)
if message is None:
break # No more messages
# Process the received message if needed
print(f"Received message: {message.decode()}")
except zmq.error.ZMQError as e:
if e.errno == zmq.EAGAIN:
break # No more messages
else:
raise
socket.close()
else:
socket.close()
self.disconnectserver()
break break
except Exception as e: except Exception as e:
if str(e) == "An error occurred while decoding an Opus-encoded packet: corrupted stream": if str(e) == "An error occurred while decoding an Opus-encoded packet: corrupted stream":
@ -370,6 +407,23 @@ class App:
except: except:
pass pass
socket.close() socket.close()
if self.cprotocol == "TCP":
socket.close()
elif self.cprotocol == "ZeroMQ":
try:
message = socket.recv(zmq.NOBLOCK)
if message is None:
break # No more messages
# Process the received message if needed
print(f"Received message: {message.decode()}")
except zmq.error.ZMQError as e:
if e.errno == zmq.EAGAIN:
break # No more messages
else:
raise
socket.close()
else:
socket.close()
self.disconnectserver() self.disconnectserver()
raise raise
break break