#!/usr/bin/env python3.4
import qmsk.args
import qmsk.web.args
import qmsk.dmx
import qmsk.dmx.web
import logging; log = logging.getLogger('dmx')
import argparse
def dmx_universe (options, dmx) :
from qmsk.dmx import heads
return heads.Universe({
'ledpar': heads.Stairville_LEDPar56(1),
'par1': heads.Dimmer(5),
'par2': heads.Dimmer(6),
'ledbar_roof': heads.AmericanDJ_MegaTri60_Mode2(10),
'ledbar_floor': heads.AmericanDJ_MegaTri60_Mode2(20),
}, dmx)
def main (argv) :
"""
DMX web control.
"""
parser = qmsk.args.parser(description=main.__doc__)
qmsk.web.args.options(parser, static='static')
parser.add_argument('--dmx-serial', default=None,
help="Path to /dev/tty*")
args = qmsk.args.parse(parser, argv)
# dmx
if args.dmx_serial :
dmx = qmsk.dmx.DMX.open(args.dmx_serial)
#dmx.zero()
else :
dmx = None
universe = dmx_universe(args, dmx)
# Web app
application = qmsk.web.args.apply(args, qmsk.dmx.web.DMXWebApplication, universe)
# Run application
return qmsk.web.args.main(args, application)
if __name__ == '__main__':
qmsk.args.main(main)