示例#1
0
#!/usr/bin/env python

import subprocess
from bluetoothUtils import server
from controller import reqController
import Queue
from anim import AnimationRunner, animations
import signal
import sys

animRunner = AnimationRunner.AnimationRunner()
animRunner.animate(AnimationRunner.OneTime(animations.clear))

sdptoolregisterrfcomm = subprocess.Popen("sudo sdptool add sp", shell=True)
sdptoolregisterrfcomm.wait()

notifQueue = Queue.Queue()
bt_server = server.BTServer(notifQueue, animRunner)
req_Controller = reqController.ReqController(notifQueue,
                                             reqController.getHandlers(),
                                             animRunner)

req_Controller.start()
bt_server.start()


def signal_handler(sig, frame):
    bt_server.closeSockets()
    sys.exit(0)

def animStripe(item):
    return AnimationRunner.OneTime(functools.partial(animations.stripe,item))
def animCustomAnim(item):
    return AnimationRunner.Loop(functools.partial(animations.customAnim,item))
def animPulse(item):
    return AnimationRunner.Loop(animations.pulse)
def animStrobo(item):
    return AnimationRunner.Loop(animations.strobo)
def setPixel(item):
    return AnimationRunner.OneTime(functools.partial(animations.setPixel,item))
def anim2(item):
    return AnimationRunner.OneTime(animations.clear)
def anim(item):
    return AnimationRunner.Loop(animations.fire)