예제 #1
0
    def login(self, password, **kwargs):
        session = kwargs['session']

        password_hash = hashlib.sha256(password).hexdigest()

        if password_hash != config['password_hash']:
            return rpc_utils.rpc_return(True, False)

        session_id = session.startSession()
        session.logIn(True)

        return rpc_utils.rpc_return(True, True, session=session_id)
예제 #2
0
    def login(self, password, **kwargs):
        session = kwargs['session']

        password_hash = hashlib.sha256(password).hexdigest()

        if password_hash != config['password_hash']:
            return rpc_utils.rpc_return(True, False)
        
        session_id = session.startSession()
        session.logIn(True)

        return rpc_utils.rpc_return(True, True, session=session_id)
예제 #3
0
    def videoSearch(self, search_string, **kwargs):

        pattern = search_string
        result = []

        for rootPath in config['video_dirs']:
            for root, dirs, files in os.walk(rootPath):
                for filename in files:
                    if fnmatch.fnmatch(filename.lower(), pattern.lower()):
                        fullpath = os.path.join(root, filename)
                        if fullpath.endswith(config['video_extensions']) == True:
                            result.append(fullpath)

        return rpc_utils.rpc_return(True, result)
예제 #4
0
 def status(self, **kwargs):
     session = kwargs['session']
     if session.exists() and session.loggedIn():
         return rpc_utils.rpc_return(True, True)
     else:
         return rpc_utils.rpc_return(True, False)
예제 #5
0
    def logout(self, **kwargs):
        session = kwargs['session']
        session.clear()

        return rpc_utils.rpc_return(True, None)
예제 #6
0
 def prevSubtitles(self, **kwargs):
     self.videoplayer_proc.stdin.write(config['subtitles_prev'])
     return rpc_utils.rpc_return(True, None)
     
예제 #7
0
 def volumeDown(self, **kwargs):
     self.videoplayer_proc.stdin.write(config['vol-'])
     return rpc_utils.rpc_return(True, None)
예제 #8
0
 def bigSeekBackward(self, **kwargs):
     self.videoplayer_proc.stdin.write(config['big_seek_backward'])
     return rpc_utils.rpc_return(True, None)
예제 #9
0
 def smallSeekForward(self, **kwargs):
     self.videoplayer_proc.stdin.write(config['small_seek_forward'])
     return rpc_utils.rpc_return(True, None)
예제 #10
0
 def pause(self, **kwargs):
     self.videoplayer_proc.stdin.write(config['pause'])
     return rpc_utils.rpc_return(True, None)
예제 #11
0
 def stopVideo(self, **kwargs):
     self.videoplayer_proc.terminate()
     self.videoplayer_proc.wait()
     self.videoplayer_proc = None
     return rpc_utils.rpc_return(True, None)
예제 #12
0
 def startVideo(self, filename, **kwargs):
     cmd = list(config['video_player_cmd'])
     cmd.append(filename)
     self.videoplayer_proc = subprocess.Popen(cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
     return rpc_utils.rpc_return(True, None)
예제 #13
0
 def status(self, **kwargs):
     session = kwargs['session']
     if session.exists() and session.loggedIn():
         return rpc_utils.rpc_return(True, True)
     else:
         return rpc_utils.rpc_return(True, False)
예제 #14
0
    def logout(self, **kwargs):
        session = kwargs['session']
        session.clear();

        return rpc_utils.rpc_return(True, None)