I wrote two applictions which comunicate by socket. This is the code:
Server:
import socket
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.bind(("",9999))
server_socket.listen(5)
video = True
power = True
print "TCPServer Waiting for client on port 9999"
while 1:
client_socket,address = server_socket.accept()
print "I got a connection from ", address
while 1:
data = client_socket.recv(512)
if data == 'vc' & video == True:
data = 'You can connect to Video'
video = False
client_socket.send(data)
elif data == 'pc' & power == True:
data = 'You can connect to Power Switch'
power = False
client_socket.send(data)
else :
data = 'Device is in use - wait a few secconds'
client_socket.send(data)
Client:
import socket
import time
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client_socket.connect(("localhost", 9999))
while 1:
data = ( 'Please vc or pc: ' )
time.sleep(5)
if data=='pc' | data=='vc':
print 'send to server: ' + data
time.sleep(5)
client_socket.send(data)
data = client_socket.recv(512)
print data
else:
print 'bad data - please try again'
print data
time.sleep(5)
I've just started my adventure with sockets and I have a problem. Why I don't see server response? I paste in code time.sleep() to stop the program and see rosponses, but those applications terminate after I wrote first message in client terminal and press enter. Please, help me.
I work on Windows 32bit. Python 2.6