def start(): logger.info("server init...") config.verify_directories_created() try: HTTPServer.start(MostrarInfo) WebSocket.start(MostrarInfo) # Da por levantado el servicio logger.info("--------------------------------------------------------------------") logger.info("Alfa Iniciado") logger.info("La URL para acceder es http://%s:%s" % (myip, http_port)) logger.info("WebSocket Server iniciado en ws://%s:%s" % (myip, websocket_port)) logger.info("--------------------------------------------------------------------") logger.info("Runtime Path : " + config.get_runtime_path()) logger.info("Data Path : " + config.get_data_path()) logger.info("Download Path : " + config.get_setting("downloadpath")) logger.info("DownloadList Path : " + config.get_setting("downloadlistpath")) logger.info("Bookmark Path : " + config.get_setting("bookmarkpath")) logger.info("VideoLibrary Path : " + config.get_setting("videolibrarypath")) logger.info("--------------------------------------------------------------------") MostrarInfo() start = True while start: time.sleep(1) except KeyboardInterrupt: print 'Deteniendo el servidor HTTP...' HTTPServer.stop() print 'Deteniendo el servidor WebSocket...' WebSocket.stop() print 'Alfa Detenido' start = False
def start(): logger.info("pelisalacarta server init...") config.verify_directories_created() try: HTTPServer.start(MostrarInfo) WebSocket.start(MostrarInfo) # Da por levantado el servicio logger.info("--------------------------------------------------------------------") logger.info("Pelisalacarta Iniciado") logger.info("La URL para acceder es http://" + myip + ":" + str(http_port)) logger.info("WebSocket Server iniciado en ws://" + myip + ":" + str(websocket_port)) logger.info("--------------------------------------------------------------------") logger.info("Runtime Path : " + config.get_runtime_path()) logger.info("Data Path : " + config.get_data_path()) logger.info("Download Path : " + config.get_setting("downloadpath")) logger.info("DownloadList Path : " + config.get_setting("downloadlistpath")) logger.info("Bookmark Path : " + config.get_setting("bookmarkpath")) logger.info("Library Path : " + config.get_setting("librarypath")) logger.info("--------------------------------------------------------------------") MostrarInfo() start = True while start: time.sleep(1) except KeyboardInterrupt: print 'Deteniendo el servidor HTTP...' HTTPServer.stop() print 'Deteniendo el servidor WebSocket...' WebSocket.stop() print 'Pelisalacarta Detenido' start = False
def start(): logger.info("pelisalacarta server init...") config.verify_directories_created() try: import HTTPServer HTTPServer.start() import WebSocket WebSocket.start(ProcessRequest,MostrarInfo) # Da por levantado el servicio logger.info("--------------------------------------------------------------------") logger.info("Pelisalacarta Iniciado") logger.info("La URL para acceder es http://" + myip + ":" + str(PORT)) logger.info("WebSocket Server iniciado en ws://"+ myip + ":" + str(WebsocketPort)) logger.info("--------------------------------------------------------------------") logger.info("Runtime Path = " + config.get_runtime_path()) logger.info("Data Path = " + config.get_data_path()) logger.info("Download Path = " + config.get_setting("downloadpath") ) logger.info("DownloadList Path = " + config.get_setting("downloadlistpath")) logger.info("Bookmark Path = " + config.get_setting("bookmarkpath")) logger.info("Library Path = " + config.get_setting("library_path")) logger.info("Cache Path : " + config.get_setting("cache.dir")) logger.info("Cookies Path : " + config.get_setting("cookies.dir")) logger.info("--------------------------------------------------------------------") MostrarInfo() Start = True while Start: pass except KeyboardInterrupt: print 'Deteniendo el servidor' HTTPServer.stop() WebSocket.stop() Start= False
def __init__(self, request, clientAddress, server, terminator=b'\x00'): """ TCP request handler @param request: @type request: @param clientAddress: @type clientAddress: @param server: @type server: @param terminator: @type terminator: string """ self.__mutex__ = threading.RLock() self.clientId = clientAddress # (ip,port) self.publicIp = clientAddress[0] # external ip with rp self.stopEvent = threading.Event() self.buf = b'' # contains all received data. self.bufWs = b'' # contains just ws data self.queue = Queue.Queue(0) self.socket = None self.terminator = terminator self.keepAlivePdu = '' self.lastActivityTimestamp = time.time() self.lastKeepAliveTimestamp = time.time() self.wsHandshakeSuccess = False self.wsCodec = WebSocket.WebSocketCodec(parent=self) SocketServer.BaseRequestHandler.__init__(self, request, clientAddress, server)
def start(): logger.info("pelisalacarta server init...") config.verify_directories_created() try: import HTTPServer HTTPServer.start() import WebSocket WebSocket.start(ProcessRequest, MostrarInfo) # Da por levantado el servicio logger.info( "--------------------------------------------------------------------" ) logger.info("Pelisalacarta Iniciado") logger.info("La URL para acceder es http://" + myip + ":" + str(PORT)) logger.info("WebSocket Server iniciado en ws://" + myip + ":" + str(WebsocketPort)) logger.info( "--------------------------------------------------------------------" ) logger.info("Runtime Path = " + config.get_runtime_path()) logger.info("Data Path = " + config.get_data_path()) logger.info("Download Path = " + config.get_setting("downloadpath")) logger.info("DownloadList Path = " + config.get_setting("downloadlistpath")) logger.info("Bookmark Path = " + config.get_setting("bookmarkpath")) logger.info("Library Path = " + config.get_setting("library_path")) logger.info("Cache Path : " + config.get_setting("cache.dir")) logger.info("Cookies Path : " + config.get_setting("cookies.dir")) logger.info( "--------------------------------------------------------------------" ) MostrarInfo() Start = True while Start: pass except KeyboardInterrupt: print 'Deteniendo el servidor' HTTPServer.stop() WebSocket.stop() Start = False
def start(): logger.info("pelisalacarta server init...") import services config.verify_directories_created() try: import HTTPServer HTTPServer.start(MostrarInfo) import WebSocket WebSocket.start(MostrarInfo) # Da por levantado el servicio logger.info("--------------------------------------------------------------------") logger.info("Pelisalacarta Iniciado") logger.info("La URL para acceder es http://" + myip + ":" + str(http_port)) logger.info("WebSocket Server iniciado en ws://" + myip + ":" + str(websocket_port)) logger.info("--------------------------------------------------------------------") logger.info("Runtime Path : " + config.get_runtime_path()) logger.info("Data Path : " + config.get_data_path()) logger.info("Download Path : " + config.get_setting("downloadpath")) logger.info("DownloadList Path : " + config.get_setting("downloadlistpath")) logger.info("Bookmark Path : " + config.get_setting("bookmarkpath")) logger.info("Library Path : " + config.get_setting("librarypath")) logger.info("--------------------------------------------------------------------") MostrarInfo() start = True while start: time.sleep(1) except KeyboardInterrupt: print 'Deteniendo el servidor HTTP...' HTTPServer.stop() print 'Deteniendo el servidor WebSocket...' WebSocket.stop() print 'Pelisalacarta Detenido' start = False
def __init__(self, serverAddress=None, localAddress=('', 0), inactivityTimeout=30, keepAliveInterval=20, timeout=5, proxyAddress=None, proxyUserId=b'client', selectTimeout=0.01, terminator=b'\x00', sslSupport=False, sslVersion=ssl.PROTOCOL_TLSv1, checkSsl=False, wsSupport=False, wsMaxPayloadSize=WebSocket.WEBSOCKET_MAX_BASIC_DATA1024, tcpKeepAlive=True, tcpKeepIdle=3, tcpKeepCnt=3, tcpKeepIntvl=3): """ TCP Client thread @param serverAddress: remote ip or hostname and port @type serverAddress: tuple @param localAddress: local bind on ip and port @type localAddress: tuple @param inactivityTimeout: default value of 30 seconds @type inactivityTimeout: Integer @param keepAliveInterval: default value of 20 seconds, ping or pong with websocket @type keepAliveInterval: integer @param timeout: default value of 5 second @type timeout: integer @param proxyAddress: proxy address @type proxyAddress: integer @param proxyUserId: default value : client @type proxyUserId: string @param selectTimeout: socket io timeout, default value of 0.01 @type selectTimeout: integer @param terminator: packet terminator, default value 0x00 @type terminator: integer @param wsSupport: websocket support @type wsSupport: boolean @param sslSupport: ssl support @type sslSupport: boolean @param sslVersion: default value of 1 second @type sslVersion: integer @param wsMaxPayloadSize: websocket payload size @type wsMaxPayloadSize: integer """ threading.Thread.__init__(self) self.serverAddress = serverAddress self.proxyAddress = proxyAddress # sock4 self.localAddress = localAddress self.serverDstHostname = None # proxy self.proxyDstHostname = None self.proxyConnectSuccess = False self.proxyType = PROXY_TYPE_NONE self.proxyUserId = proxyUserId # web socket self.wsCodec = WebSocket.WebSocketCodec(parent=self) self.wsSupport = wsSupport if wsSupport: self.trace('Web socket activated - version %s' % WebSocket.WEBSOCKET_VERSION) self.wsHandshakeSuccess = False self.wsKey = b'' self.wsMaxPayloadSize = wsMaxPayloadSize # ssl self.sslSupport = sslSupport self.sslVersion = sslVersion self.checkSsl = checkSsl if sslSupport: self.trace('Ssl activated - version %s' % self.sslVersion) # buffer self.buf = b'' self.bufWs = b'' self.queue = Queue.Queue(0) self.event = threading.Event() self.socket = None self.running = True self.closeSocket = False self.inactivityServer = False self.timeout = timeout self.terminator = terminator self.keepAlivePdu = b'' self.inactivityTimeout = inactivityTimeout self.keepAliveInterval = keepAliveInterval self.selectTimeout = float(selectTimeout) self.tcpKeepAlive = tcpKeepAlive self.tcpKeepIdle = tcpKeepIdle self.tcpKeepIntvl = tcpKeepIntvl self.tcpKeepCnt = tcpKeepCnt self.trace('Tcp Client Thread Initialized')
print('### closed ###') def on_open(ws): print('### connected ###') # Example for Traffic Predix Zone ws.send( '{"bbox":"33.077762:-117.663817,32.559574:-116.584410","eventTypes":["TFEVT"]}' ) # Example for Parking Predix Zone # ws.send('{"bbox":"--LAT Pt 1--:--LONG Pt 1--,--LAT Pt 2--:--LONG Pt 2-- ","eventTypes":["PKIN","PKOUT"]}') if __name__ == '__main__': WebSocket.enableTrace(True) # Use Predix-Zone-ID to match events of interest # cityiq_zone = 'SD-IE-PARKING' cityiq_zone = 'SD-IE-TRAFFIC' cityiq = 'wss://sandiego.cityiq.io/api/v2/websocket/events' token = get_auth_token( 'shhh! this is secret so replace with predix uaa id') headers = { 'Authorization': 'Bearer ' + token, 'Predix-Zone-Id': cityiq_zone, 'Cache-Control': 'no-cache', } ws = WebSocket.WebSocketApp(cityiq, header=headers, on_message=on_message, on_close=on_close)
print("Fatal Error: Middle Server Address not found. Unable to start") quit() try: middleServerPort = settings["middleServerPort"] except KeyError: print("Fatal Error: Middle Server Port not found. Unable to start") quit() try: loggingFile = settings["logPath"] if loggingFile[-1] == '/': loggingFile = loggingFile + "MiddleServer.log" else: loggingFile = loggingFile + "/MiddleServer.log" logging.basicConfig(filename = loggingFile, level = logging.INFO) except KeyError: print("Fatal Error: Logging file not found in settings. Unable to start") tornadoSyncEvent = threading.Event() dataClientSyncEvent = threading.Event() negotiator = DataClient.connectionNegotiator(serverAddress = dataServerAddress, serverPort = dataServerPort, loggingFile = loggingFile) negotiator.start() negotiator.waitNegotiation() tornadoHandler = WebSocket.frontEndHandler(tornadoAddress = middleServerAddress, tornadoPort = middleServerPort, negotiatorHandler = negotiator, syncEvent = tornadoSyncEvent, loggingFile = loggingFile, websitePath = websitePath) tornadoHandler.start() tornadoSyncEvent.wait() tornadoSyncEvent.clear() if tornadoHandler.running == True: logger.info("Middle Server started") safeExit = shutdownHandler(negotiator = negotiator, tornadoHandler = tornadoHandler) signal.signal(signal.SIGTERM, sysStop)
def Browser(): return WebSocket.listen(connected=new_tab, disconnected=closed_tab, volumechanged=tab_volume_changed)
def muted(self, widget): mute_state = super().muted(widget) asyncio.create_task(WebSocket.set_muted(self.tabid, mute_state))
def write_external(self, value): asyncio.create_task(WebSocket.set_volume(self.tabid, (value / 100)))