Advertisement
Guest User

Untitled

a guest
May 25th, 2019
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.94 KB | None | 0 0
  1. import socket
  2. import Data
  3. LISTEN_PORT = 1457
  4. WELCOME_MESSAGE = "Welcome to the pink floyd server"
  5. SERVER_KEYS = {"#CODE&1":"got code 1","#CODE&2":"got code 2","#CODE&3":"got code 3","#CODE&4":"got code 4","#CODE&5":"got code 5","#CODE&6":"got code 6","#CODE&7":"got code 7","#CODE&8":"got code 8",}
  6.  
  7. def main():
  8.  
  9. listening_sock = make_listening_socket(LISTEN_PORT)
  10. client_msg = ""
  11. while listening_sock:
  12.  
  13. client_soc, client_address = listening_sock.accept()
  14. try:
  15. client_soc.sendall(WELCOME_MESSAGE.encode())
  16. client_msg = (client_soc.recv(1024)).decode()
  17. except Exception as e:
  18. print("client disconnected")
  19. print("error: ",e)
  20. client_soc.close()
  21. continue
  22.  
  23. while True:
  24. print(client_msg)
  25. msg = server_answer(client_msg)
  26. print(msg)
  27.  
  28. try:
  29. client_soc.sendall(msg.encode())
  30. if client_msg == "#CODE&8#DATA&EXIT":
  31. client_soc.close()
  32. break
  33. client_msg = (client_soc.recv(1024)).decode()
  34. except Exception as e:
  35. print("client disconnected")
  36. print("error: ",e)
  37. client_soc.close()
  38. break
  39.  
  40.  
  41. if listening_sock is not False:
  42. listening_sock.close()
  43.  
  44. def make_listening_socket(port):
  45. listening_sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  46. server_address = ('', port)
  47. try:
  48. listening_sock.bind(server_address)
  49. listening_sock.listen(1)
  50. except Exception as e:
  51. print("port is already taken.")
  52. print("error: ",e)
  53. return False
  54.  
  55.  
  56. return listening_sock
  57.  
  58. def server_answer(msg):
  59. answer = msg[:13]
  60. if msg[:7] == SERVER_KEYS[msg[:7]]:
  61. answer = answer + album_names()
  62. print(answer)
  63.  
  64. if __name__ == '__main__':
  65. main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement