def run(self):
logger.info('starting server...')
try:
cert = os.path.join(home, 'cert.pem')
if ui.https_media_server:
if not os.path.exists(cert):
self.cert_signal.emit(cert)
if not ui.https_media_server:
server_address = ('', self.port)
self.httpd = ThreadedHTTPServerLocal(server_address, HTTPServer_RequestHandler)
self.set_local_ip_val()
self.media_server_start.emit('http')
elif ui.https_media_server and os.path.exists(cert):
server_address = ('', self.port)
self.httpd = ThreadedHTTPServerLocal(server_address, HTTPServer_RequestHandler)
self.httpd.socket = ssl.wrap_socket(self.httpd.socket, certfile=cert, ssl_version=ssl.PROTOCOL_TLSv1_2)
self.set_local_ip_val()
self.media_server_start.emit('https')
#httpd = MyTCPServer(server_address, HTTPServer_RequestHandler)
except OSError as e:
e_str = str(e)
logger.info(e_str)
if 'errno 99' in e_str.lower():
txt = 'Your local IP changed..or port is blocked.\n..Trying to find new IP'
send_notification(txt)
self.ip = get_lan_ip()
txt = 'Your New Address is '+self.ip+':'+str(self.port) + '\n Please restart the application'
send_notification(txt)
change_config_file(self.ip, self.port)
server_address = (self.ip, self.port)
ui.local_ip_stream = self.ip
#httpd = MyTCPServer(server_address, HTTPServer_RequestHandler)
#httpd = ThreadedHTTPServerLocal(server_address, HTTPServer_RequestHandler)
else:
pass
if self.httpd:
logger.info('running server...at..'+self.ip+':'+str(self.port))
#httpd.allow_reuse_address = True
self.httpd.serve_forever()
logger.info('quitting http server')
else:
logger.info('server not started')
评论列表
文章目录