"/" handling in channel names
[vpproxy.git] / vphttp.py
index 5237f21098a660841323c08a88e36fba00a5b883..6108bd81055d9b089e885c9e4380e4ffe331c6b9 100644 (file)
--- a/vphttp.py
+++ b/vphttp.py
@@ -9,8 +9,9 @@ import traceback
 import gevent
 import gevent.monkey
 # Monkeypatching and all the stuff
-
 gevent.monkey.patch_all()
+# Startup delay for daemon restart
+gevent.sleep(5)
 import glob
 import os
 import signal
@@ -163,7 +164,7 @@ class HTTPHandler(BaseHTTPServer.BaseHTTPRequestHandler):
             self.reqtype = self.splittedpath[1].lower()
             # If first parameter is 'pid' or 'torrent' or it should be handled
             # by plugin
-            if not (self.reqtype in ('get','mp4') or self.reqtype in VPStuff.pluginshandlers):
+            if not (self.reqtype in ('get','mp4','webm') or self.reqtype in VPStuff.pluginshandlers):
                 self.dieWithError(400)  # 400 Bad Request
                 return
         except IndexError:
@@ -256,7 +257,7 @@ class HTTPHandler(BaseHTTPServer.BaseHTTPRequestHandler):
                 else:
                     self.vlcprefix = ''
 
-                logger.debug("Ready to start broadcast....")                    
+                logger.info("Starting broadcasting "+self.path)                    
                 VPStuff.vlcclient.startBroadcast(
                     self.vlcid, self.vlcprefix + self.path_unquoted, VPConfig.vlcmux, VPConfig.vlcpreaccess, self.reqtype)
                 # Sleep a bit, because sometimes VLC doesn't open port in
@@ -317,10 +318,12 @@ class HTTPHandler(BaseHTTPServer.BaseHTTPRequestHandler):
             self.dieWithError()
         finally:
             logger.debug("END REQUEST")
+            logger.info("Closed connection from " + self.clientip + " path " + self.path)
             VPStuff.clientcounter.delete(self.reqtype+'\\'+self.path_unquoted, self.clientip)
             if not VPStuff.clientcounter.get(self.reqtype+'\\'+self.path_unquoted):
                 try:
                     logger.debug("That was the last client, destroying VPClient")
+                    logger.info("Stopping broadcasting " + self.path)
                     VPStuff.vlcclient.stopBroadcast(self.vlcid)
                 except:
                     pass