Files @ dd9474bef2a6
Branch filter:

Location: light9/bin/staticclient

drewp@bigasterisk.com
decimal not double! this caused patch comparisons to fail and led to redundant work
#!bin/python
"""
push a dmx level forever
"""

import time, logging
from optparse import OptionParser
import logging, urllib.request, urllib.parse, urllib.error
from twisted.internet import reactor, tksupport, task
from rdflib import URIRef, RDF, RDFS, Literal

from run_local import log
log.setLevel(logging.DEBUG)

from light9 import dmxclient, showconfig, networking

if __name__ == "__main__":
    parser = OptionParser(usage="%prog")
    parser.add_option('--chan', help='channel number, starts at 1',
                      type=int)  #todo: or name or uri
    parser.add_option('--level', help='0..1', type=float)
    parser.add_option('-v', action='store_true', help="log debug level")

    opts, args = parser.parse_args()

    log.setLevel(logging.DEBUG if opts.v else logging.INFO)

    levels = [0] * (opts.chan - 1) + [opts.level]
    log.info('staticclient will write this forever: %r', levels)

    def write():
        log.debug('writing %r', levels)
        dmxclient.outputlevels(levels, twisted=1)

    log.info('looping...')
    task.LoopingCall(write).start(1)
    reactor.run()