Пример #1
0
def serve_web(ip=None, port=None, directory=BASE_DIR):
    handler = SimpleHTTPRequestHandler

    ip = ip or get_ip()

    if port is not None:
        server = TCPServer((ip, port), handler)
    else:
        # Otherwise, try to find a port
        for port in range(8000, 9000):
            try:
                server = TCPServer((ip, port), handler)
                break
            except socket.error:
                pass

    def server_thread():
        log("Starting web server on http://{ip}:{port:d} for directory {dir}".format(ip=ip, port=port, dir=directory))
        os.chdir(directory)
        server.serve_forever()

    # Start this thread in the background
    thread = threading.Thread(target=server_thread)
    thread.setDaemon(True)
    thread.start()

    time.sleep(0.5)
    return server, ip, port
Пример #2
0
    def __init__(self):
        # init kodi helper (for logging)
        self.kodi_helper = KodiHelper()

        self.last_schedule_check = datetime.now()
        self.schedule_check_interval = int(
            self.kodi_helper.get_setting('schedule_check_interval'))
        self.startidle = 0
        self.freq = int('0' + self.kodi_helper.get_setting('auto_update'))

        # pick & store a port for the MSL service
        msl_port = select_unused_port()
        self.kodi_helper.set_setting('msl_service_port', str(msl_port))
        self.kodi_helper.log(msg='[MSL] Picked Port: ' + str(msl_port))

        # pick & store a port for the internal Netflix HTTP proxy service
        ns_port = select_unused_port()
        self.kodi_helper.set_setting('netflix_service_port', str(ns_port))
        self.kodi_helper.log(msg='[NS] Picked Port: ' + str(ns_port))

        # server defaults
        TCPServer.allow_reuse_address = True

        # configure the MSL Server
        self.msl_server = TCPServer(('127.0.0.1', msl_port),
                                    MSLHttpRequestHandler)
        self.msl_server.server_activate()
        self.msl_server.timeout = 1

        # configure the Netflix Data Server
        self.ns_server = TCPServer(('127.0.0.1', ns_port),
                                   NetflixHttpRequestHandler)
        self.ns_server.server_activate()
        self.ns_server.timeout = 1
Пример #3
0
 def run(self):
     server = TCPServer(self.addr, self.app)
     try:
         self.logger.info('Maria System Start at %s:%s' % self.addr)
         server.serve_forever()
     except KeyboardInterrupt:
         self.logger.info('Maria System Stopped')
Пример #4
0
 def _start(self):
     try:
         logger.info("Starting HTTP server on port {}".format(self.http_port))
         self.httpd = TCPServer(("", self.http_port), CustomRequestHandler)
         self.httpd.serve_forever()
     except Exception as e:
         logger.exception(e)
Пример #5
0
def main():
    host = ''
    port = 2048
    addr = (host, port)
    thread.start_new_thread(timer_thread, ())
    server = TCPServer(addr, MyRequestHandler)
    server.serve_forever()
Пример #6
0
    def run(self, requestHandlerMethod):
        class RequestHandler(BaseHTTPRequestHandler):

            def do_GET(self):
                self.wfile.write("maya tdd server\n")

            def log_message(self, format, *args):
                return


            def do_POST(self):
                request = self.rfile.read(int(self.headers['Content-Length']))
                request = json.loads(request)
                result = requestHandlerMethod(request)

                self.send_response(200)
                self.end_headers()
                self.wfile.write(json.dumps(result).encode("utf-8"))

        self.instance = TCPServer(("", self.port), RequestHandler, bind_and_activate=False)
        self.instance.allow_reuse_address = True
        self.instance.server_bind()
        self.instance.server_activate()
        self.instance_thread = threading.Thread(target=self.instance.serve_forever)
        self.instance_thread.start()
Пример #7
0
    def referenceHttpServer(self, port, request):
        def server(httpd):
            httpd.serve_forever()

        class Handler(BaseHTTPRequestHandler):
            def log_message(*args, **kwargs):
                pass

            def do_GET(self, *args, **kwargs):
                request.append({
                    'command': self.command,
                    'path': self.path,
                    'headers': self.headers
                })
                self.send_response(200, "GET RESPONSE")

            def do_POST(self, *args, **kwargs):
                request.append({
                    'command':
                    self.command,
                    'path':
                    self.path,
                    'headers':
                    self.headers,
                    'body':
                    self.rfile.read(int(self.headers["Content-Length"]))
                })
                self.send_response(200, "POST RESPONSE")

        self.httpd = TCPServer(("", port), Handler)
        thread = Thread(None, lambda: server(self.httpd))
        thread.start()
Пример #8
0
	def open(self):
		self.netAdapter = TCPServer((self.address, self.port), jeedom_socket_handler)
		if self.netAdapter:
			logging.debug("Socket interface started")
			threading.Thread(target=self.loopNetServer, args=()).start()
		else:
			logging.debug("Cannot start socket interface")
Пример #9
0
def main():

    smsolver = small_solvers(queue_local, Usersolver, poly_small_threads)

    # Reuse the port to debug
    TCPServer.allow_reuse_address = True
    ss = TCPServer(('0.0.0.0', portnumber), PHC_Server)

    print 'server is listening to', portnumber

    try:
        print 'press ctrl c to stop server'
        ss.serve_forever()
    except KeyboardInterrupt:
        print ' ctrl c pressed, closing server'

        if queue:
            print 'writing recover file'
            save_queue(queue)

        print 'closing solver threads'
        for i in range(poly_small_threads):
            smsolver[i]._Thread__stop()

        print 'server closed'
        ss.socket.close()
Пример #10
0
def get_current_pose_joints(server_ip, server_port, ur_ip, tool_angle_axis):

    global script
    script = script.replace("{SERVER_ADDRESS}", server_ip)
    script = script.replace("{PORT}", str(server_port))
    script = script.replace(
        "{TCP}",
        str([
            tool_angle_axis[i] if i >= 3 else tool_angle_axis[i] / 1000.
            for i in range(len(tool_angle_axis))
        ]))

    print script

    ur_available = is_available(ur_ip)

    if ur_available:
        # start server
        server = TCPServer((server_ip, server_port), MyTCPHandler)

        send_script(ur_ip, script)
        # send file
        try:
            server.serve_forever()
        except:
            return list_str_to_list(server.rcv_msg)
    def proxyServer(self, port, request):
        def server(httpd):
            httpd.serve_forever()

        class Proxy(BaseHTTPRequestHandler):
            def log_message(*args, **kwargs):
                pass

            def do_CONNECT(self):
                request.append({
                    'command': self.command,
                    'path': self.path,
                    'headers': self.headers
                })
                self.send_response(200, "Connection established")
                self.end_headers()
                origRequest = self.connection.recv(4096)
                path = "http://" + self.path + origRequest.split()[1]
                self.wfile.write(urlopen(path).read())
                self.wfile.flush()
                self.connection.close()

        httpd = TCPServer(("", port), Proxy)
        thread = Thread(None, lambda: server(httpd))
        thread.daemon = True
        thread.start()
Пример #12
0
 def worker():
     try:
         httpd = TCPServer(("", 8000), RequestHandler)
         print("Serving at port", 8000)
         httpd.serve_forever()
     except:
         print("Server Error")
Пример #13
0
	def init(self):
		Logger.info("Gateway init")

		if version[0] != 2 or version[1] < 6 or (version[1] == 7 and version[2] in [1, 2]):
			Logger.error("Gateway:: incompatibility with current Python machine '%d.%d.%d'" % version[:3])
			return False
		
		fpem = os.path.join(Config.general.conf_dir, "gateway.pem")
		if os.path.exists(fpem):
			self.ssl_ctx = SSL.Context(SSL.SSLv23_METHOD)
			self.ssl_ctx.use_privatekey_file(fpem)
			self.ssl_ctx.use_certificate_file(fpem)
			self.ssl_ctx.load_verify_locations(fpem)
		else:
			Logger.error("Gateway role need a certificate (%s)" % fpem)
			return False
		
		addr = (Config.address, Config.port)
		try:
			GatewayTCPHandler.role = self
			self.server = TCPServer(addr, GatewayTCPHandler, bind_and_activate=False)
			self.server.allow_reuse_address = Config.general.server_allow_reuse_address
			
			self.server.server_bind()
			self.server.server_activate()
		except socket.error, e:
			Logger.error("Gateway:: socket init: %s" % e)
			return False
    def get_server(cls, port):
        """
        Call httpd.shutdown() to stop the server
        """

        httpd = TCPServer(("", port), TestWebServerHandler)
        return httpd
Пример #15
0
def serve(path=settings.OUTPUT_DIR, port=8000):
    old_working_dir = getcwd()
    chdir(path)
    new_working_dir = getcwd()
    httpd = TCPServer(("", port), SimpleHTTPRequestHandler)
    print 'Starting development server rooted at %s' % new_working_dir
    httpd.serve_forever()
Пример #16
0
    def _start_web_server():
        global http_server
        try:
            from SimpleHTTPServer import SimpleHTTPRequestHandler
            from SocketServer import TCPServer
        except ImportError:
            from http.server import SimpleHTTPRequestHandler
            from socketserver import TCPServer

        try:
            handler = SimpleHTTPRequestHandler
            handler.directory = os.path.join(
                os.path.dirname(__file__), "..", "..")
            http_server = TCPServer(
                ("", 8000), handler, bind_and_activate=False)
            http_server.daemon_threads = True
            http_server.allow_reuse_address = True
            http_server.server_bind()
            http_server.server_activate()
            http_server_ready.set()
            http_server.serve_forever()
        except:
            import traceback
            traceback.print_exc()
        finally:
            http_server = None
            http_server_ready.set()
Пример #17
0
def launch(path):
    """Start a server to view an exported D3PO bundle, and open a browser.

    :param path: The TLD of the bundle
    """
    from SocketServer import TCPServer
    from SimpleHTTPServer import SimpleHTTPRequestHandler
    from random import randrange
    from socket import error
    import webbrowser
    from threading import Thread

    os.chdir(path)

    while True:
        try:
            PORT = randrange(8000, 9000)
            server = TCPServer(("", PORT), SimpleHTTPRequestHandler, False)
            server.allow_reuse_address = True
            server.server_bind()
            break
        except error:  # port already taken
            pass

    print('Serving D3PO on port 0.0.0.0:%i' % PORT)
    server.server_activate()

    thread = Thread(target=server.serve_forever)
    thread.setDaemon(True)  # do not prevent shutdown
    thread.start()
    webbrowser.open('http://0.0.0.0:%i' % PORT)
Пример #18
0
def f_RUN():
	print("Root directory: " + ROOT_DIR)
	print("Main directory: " + MAIN_DIR)
	httpd = TCPServer((s_INTERFACE,n_PORT),c_HANDLER)
	s_ip, _p = httpd.server_address
	print("IP: " + s_ip + ":" + str(_p))
	while b_RUNNING:
		httpd.handle_request()
Пример #19
0
def start_wsKeyboard_server(port=DEFAULT_PORT):

    httpd = TCPServer(('', port), WsKeyboardRequestHandler)

    for address in get_addresses():
        print 'ws://%s:%d/' % (address, port)

    httpd.serve_forever()
Пример #20
0
    def __init__(self):
        signalling_queue.clear();

        TCPServer.allow_reuse_address = True;

        self.__start_flag = False;
        self.__http_handler = http_action_handler;
        self.__server = TCPServer(("", 8080), self.__http_handler);
Пример #21
0
def run_test_server():
    while True:
        try:
            server = TCPServer((SERVER_ADDRESS, SERVER_PORT), Tester)
            break
        except Exception, e:
            print e
            sleep(1)
Пример #22
0
def create_tcp_server_by_socketserver():
    class MyRequestHandler(StreamRequestHandler):
        def handle(self):
            print '...connected from:', self.client_address
            self.wfile.write('[%s] %s' % (ctime(), self.rfile.readline()))

    tcpServ = TCPServer(ADDR, MyRequestHandler)
    print 'waiting for connection...'
    tcpServ.serve_forever()
Пример #23
0
def main():

    server = TCPServer(("127.0.0.1", 2121), Dispatcher)

    print "I'm waiting for commands..."
    try:
        server.serve_forever()
    finally:
        print "Goodbye!"
    def _prepare(self):
        log.debug("Preparing callback daemon and registering hook object")

        self._done = False
        self._daemon = TCPServer((self.IP_ADDRESS, 0), HooksHttpHandler)
        _, port = self._daemon.server_address
        self.hooks_uri = '{}:{}'.format(self.IP_ADDRESS, port)

        log.debug("Hooks uri is: %s", self.hooks_uri)
Пример #25
0
    def __init__(self, ip="", port=8080):
        self.__ip = ip
        self.__port = port

        self.__statistical_logger = statistical_logger()
        self.__handler = http_handler
        self.__server = TCPServer((ip, port), self.__handler)

        self.__media_server = media_server("", configuration.get_media_port())
    def __init__(self, address='localhost', port=55004):
        self.Address = address
        self.Port = port

        self.netAdapter = TCPServer((self.Address, self.Port),
                                    NetRequestHandler)
        if self.netAdapter:
            self.netAdapterRegistered = True
            threading.Thread(target=self.loopNetServer, args=()).start()
Пример #27
0
  def __init__(self, output_handler):
    threading.Thread.__init__(self)

    self.handshake = ''.join(random.choice(string.ascii_uppercase + string.digits) for x in range(8))
    self.close_key = ''.join(random.choice(string.ascii_uppercase + string.digits) for x in range(8))

    self._server = TCPServer(('127.0.0.1', 0), lambda r, c, s: HandShakeHandler(r, c, s, (self.handshake, self.close_key), output_handler), False)
    self._server.server_bind()

    self.port = self._server.server_address[1]
Пример #28
0
    def setup_http_server(self):
        # pick a free port
        sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        sock.bind(("", 0))
        self.port = sock.getsockname()[1]
        sock.close()

        # Temporarily change the directory to the profile directory.
        os.chdir(self.gecko_profile_dir)
        self.httpd = TCPServer((self.host, self.port), ProfileServingHTTPRequestHandler)
Пример #29
0
 def __init__(self):
     global settings
     # threading.Thread.__init__(self)
     super(SublimeServerThread, self).__init__()
     if not mimetypes.inited:
         mimetypes.init()  # try to read system mime.types
     SublimeServer.extensions_map = mimetypes.types_map.copy()
     SublimeServer.extensions_map.update(settings.get('mimetypes'))
     self.httpd = TCPServer(("", settings.get('port')), SublimeServer)
     self.setName(self.__class__.__name__)
Пример #30
0
    def __init__(self, bind_address, dispatcher):
        """ Creates a TCP server to listen for messages from the Babble node.

        :param bind_address: tuple consisting of ip and port where the application is listening
        :type bind_address: tuple(ip:str, port:int)
        :param dispatcher:
        """
        self.bind_address = bind_address  # type: tuple
        self.tcp_server = TCPServer(self.bind_address,
                                    dispatcher)  # type: TCPServer