global droneSimulator global ipController logWriter.noteEvent("MainThread: endHandler") droneSimulator.close() ipController.close() closeServerApp = True logWriter.close() sys.exit(0) sys.excepthook = topExceptHook signal.signal(signal.SIGINT, endHandler) signal.signal(signal.SIGTERM, endHandler) droneSimulator = DroneSimulator(logWriter) serverName = "" # "localhost" serverPort = 6666 ipController = IpController((serverName, serverPort), False, False, 5, logWriter) # handler for DroneSimulator onReceiveEvent # forwards valid CommData to IpController def onReceiveCommDataFromSymulator(commData): global ipController print "Sending: " + str(commData) ipController.sendCommData(commData.data)