lora-ax25/test_client.py

52 lines
1.5 KiB
Python

import socket
import random
import string
import time
def generate_random_data(size):
return ''.join(random.choices(string.ascii_letters + string.digits, k=size)).encode('utf-8')
def start_client():
# Definiere Host und Port
host = '127.0.0.1'
port = 12345
while True:
# Erstelle einen Socket
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
# Verbinde zum Server
client_socket.connect((host, port))
print(f"Connected to {host}:{port}")
# Generiere eine zufällige Bytefolge
data_to_send = generate_random_data(50)
# Sende die Daten an den Server
client_socket.sendall(data_to_send)
print(f"Sent data: {data_to_send.decode('utf-8')}")
# Empfange die Antwort
received_data = client_socket.recv(1024)
print(f"Received data: {received_data.decode('utf-8')}")
# Überprüfe, ob die Antwort die gesendeten Daten sind
if received_data == data_to_send:
print("Server response matches the sent data.")
else:
print("Server response does not match the sent data.")
except Exception as e:
print(f"Error: {e}")
finally:
# Schließe die Verbindung zum Server
client_socket.close()
# Warte für eine kurze Zeit, bevor die nächste Anfrage gesendet wird
time.sleep(2)
if __name__ == "__main__":
start_client()