server-simulator.py 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. import numpy as np
  2. import scipy as scp
  3. import sigpy as sig
  4. import msgpack
  5. import json
  6. import socket
  7. class ServerSimulator:
  8. def __init__(self):
  9. self.events = []
  10. self.rfwaves = []
  11. self.time = 0
  12. #Socket parameters
  13. self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  14. self.conn = 0
  15. self.maxic = b'\xAA'
  16. self.cmd = b'\x00'
  17. self.data = b''
  18. #32bit Codes
  19. self.errCode = b'\x00\x00\x00\x00'
  20. self.statCode = b'\x00\x00\x00\x00'
  21. # Command callbacks
  22. cmd_dict = {
  23. b'\x10': self.addEvent,
  24. b'\x20': self.addRfwaveTable,
  25. b'\x00': self.disconnect
  26. }
  27. def connect(self, host, port):
  28. self.sock.bind((host, port))
  29. self.sock.listen(1)
  30. self.conn, addr = self.sock.accept()
  31. print(f"New connection from {addr}")
  32. def disconnect(self):
  33. self.conn.close()
  34. def recvMsg(self):
  35. self.data = self.conn.recv(4096)
  36. #Unpack data from socket
  37. def handler():
  38. pass
  39. def sendMsg():
  40. pass
  41. def getErrorMsg():
  42. pass
  43. def getStatusMsg():
  44. pass
  45. def acceptCommand(self):
  46. pass
  47. def addEvent(self, data):
  48. pass
  49. def addRfwaveTable(self, data):
  50. pass