"""Core Object dealing with plugins and player client
"""
-import sys
import time
from collections import deque
return PlayerClient(host, port, pswd)
def add_history(self):
+ """Handle local short history"""
self.short_history.appendleft(self.player.current)
def register_plugin(self, plugin_class):
getattr(plugin, method)(*args, **kwds)
def need_tracks(self):
+ """Is the player in need for tracks"""
if not self.enabled:
self.log.debug('Queueing disabled!')
return False
def queue(self):
to_add = list()
for plugin in self.plugins:
- pl_callback = getattr(plugin, 'callback_need_track')()
+ pl_callback = getattr(plugin, 'callback_need_track')()
if pl_callback:
to_add.extend(pl_callback)
if not to_add:
self.log.warning('Queue plugins returned nothing!')
for plugin in self.plugins:
- pl_callback = getattr(plugin, 'callback_need_track_fb')()
+ pl_callback = getattr(plugin, 'callback_need_track_fb')()
if pl_callback:
to_add.extend(pl_callback)
for track in to_add:
except PlayerUnHandledError as err:
#TODO: unhandled Player exceptions
self.log.warning('Unhandled player exception: {}'.format(err))
- del(self.player)
+ del self.player
self.player = PlayerClient()
time.sleep(10)
except PlayerError as err:
self.log.warning('Player error: %s' % err)
self.reconnect_player()
- del(self.changed)
+ del self.changed
def loop(self):
"""Dispatching callbacks to plugins