SERVER
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(("127.0.0.1", 12345))
s.listen(5)
while True:
cs, addr = s.accept()
print(f"Connection from {addr} has been established")
val = "hi There"
while val != "exit":
val = input("server:")
cs.send(bytes(val, "utf-8"))
msg = cs.recv(1024)
print("client:", msg.decode("utf-8"))
cs.close()
CLIENT
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("127.0.0.1", 12345))
print("Sending connection request")
print("Connection established")
msg = ""
while msg != "exit":
msg = s.recv(1024)
print("server:", msg.decode("utf-8"))
my = input("client:")
s.send(bytes(my, "utf-8"))
s.close()
Result: Half Duplex Communication between Server and Client has been
Implemented successfully.