from pypoliqqueue import PypoLiqQueue from telnetliquidsoap import DummyTelnetLiquidsoap, TelnetLiquidsoap from Queue import Queue from threading import Lock import sys import signal import logging from datetime import datetime from datetime import timedelta def keyboardInterruptHandler(signum, frame): logger = logging.getLogger() logger.info('\nKeyboard Interrupt\n') sys.exit(0) signal.signal(signal.SIGINT, keyboardInterruptHandler) # configure logging format = '%(levelname)s - %(pathname)s - %(lineno)s - %(asctime)s - %(message)s' logging.basicConfig(level=logging.DEBUG, format=format) logging.captureWarnings(True) telnet_lock = Lock() pypoPush_q = Queue() pypoLiq_q = Queue() liq_queue_tracker = { "s0": None, "s1": None, "s2": None, "s3": None, } #dummy_telnet_liquidsoap = DummyTelnetLiquidsoap(telnet_lock, logging) dummy_telnet_liquidsoap = TelnetLiquidsoap(telnet_lock, logging, \ "localhost", \ 1234) plq = PypoLiqQueue(pypoLiq_q, telnet_lock, logging, liq_queue_tracker, \ dummy_telnet_liquidsoap) plq.daemon = True plq.start() print "Time now: %s" % datetime.utcnow() media_schedule = {} start_dt = datetime.utcnow() + timedelta(seconds=1) end_dt = datetime.utcnow() + timedelta(seconds=6) media_schedule[start_dt] = {"id": 5, \ "type":"file", \ "row_id":9, \ "uri":"", \ "dst":"/home/martin/Music/ipod/Hot Chocolate - You Sexy Thing.mp3", \ "fade_in":0, \ "fade_out":0, \ "cue_in":0, \ "cue_out":300, \ "start": start_dt, \ "end": end_dt, \ "show_name":"Untitled", \ "replay_gain": 0, \ "independent_event": True \ } start_dt = datetime.utcnow() + timedelta(seconds=2) end_dt = datetime.utcnow() + timedelta(seconds=6) media_schedule[start_dt] = {"id": 5, \ "type":"file", \ "row_id":9, \ "uri":"", \ "dst":"/home/martin/Music/ipod/Good Charlotte - bloody valentine.mp3", \ "fade_in":0, \ "fade_out":0, \ "cue_in":0, \ "cue_out":300, \ "start": start_dt, \ "end": end_dt, \ "show_name":"Untitled", \ "replay_gain": 0, \ "independent_event": True \ } pypoLiq_q.put(media_schedule) plq.join()