コード例 #1
0
ファイル: lamp.py プロジェクト: baocaifeng/xAAL
def main(addr):
    if addr == None:
        addr = tools.get_random_uuid()
    dev = Device("lamp.dimmer", addr)
    dev.product_id = 'Dummy Dimming Lamp'
    dev.url = 'http://www.acme.org'

    # attributes
    light = dev.new_attribute('light')
    dimmer = dev.new_attribute('dimmer', 50)

    dev.dump()

    # methods
    def on():
        light.value = True
        print("%s ON" % dev)

    def off():
        light.value = False
        print("%s OFF" % dev)

    def dim(_target):
        dimmer.value = _target
        print("Dimming to %d" % _target)

    dev.add_method('on', on)
    dev.add_method('off', off)
    dev.add_method('dim', dim)

    eng = Engine()
    eng.add_device(dev)
    eng.run()
コード例 #2
0
class xAALProxy:
    def __init__(self):

        self.addr = tools.get_random_uuid()
        #print("My UUID is : %s" % self.addr)

        self.engine = Engine()
        self.dev = Device("cli.experimental", self.addr)
        self.engine.add_device(self.dev)
        #self.eng.add_rx_handler(self.parse_answer)

    def sendmsg(self, target, action, key=None, value=None):

        addr = config.getConfigInfo(target,
                                    "xaaladdr")  #hdrware addr of the equpmt
        print addr

        self.engine.send_request(self.dev, [addr], action, None)

        #addr 224.0.29.200, port 1235
        #self.engine.get_network_connector().send(data)

    def recvmsg(self):
        data = self.engine.receive_msg()
        return data

    def filtmsg(self):
        self.engine.add_rx_handler(getalerte)
        self.engine.run()
コード例 #3
0
ファイル: power_relay.py プロジェクト: baocaifeng/xAAL
def main(addr):
    if addr == None:
        addr = tools.get_random_uuid()
    dev = Device("powerrelay.basic", addr)
    dev.product_id = 'Dummy Power Relay'
    dev.url = 'http://www.acme.org'

    # attributes
    power = dev.new_attribute('power')

    dev.dump()

    # methods
    def on():
        power.value = True
        print("%s ON" % dev)

    def off():
        power.value = False
        print("%s OFF" % dev)

    dev.add_method('on', on)
    dev.add_method('off', off)

    eng = Engine()
    eng.add_device(dev)
    eng.run()
コード例 #4
0
def run():
    print("Monitor test")
    eng = Engine()
    mon = monitor_example(eng)
    try:
        eng.run()
    except KeyboardInterrupt:
        import pdb
        pdb.set_trace()
コード例 #5
0
def run():
    eng = Engine()
    mdb = MetaDB(eng)
    eng.run()
コード例 #6
0
def run():
    eng = Engine()
    log = WARP10Logger(eng)
    eng.run()
コード例 #7
0
ファイル: gw.py プロジェクト: baocaifeng/xAAL
def run():
    eng = Engine()
    net = GW.spawn(eng)
    eng.run()
コード例 #8
0
ファイル: gw.py プロジェクト: baocaifeng/xAAL
def run():
    eng = Engine()
    gw = GW(eng)
    eng.run()
コード例 #9
0
ファイル: influxdblogger.py プロジェクト: baocaifeng/xAAL
def run():
    eng = Engine()    
    log = InfluxDBLogger(eng)
    eng.run()
コード例 #10
0
ファイル: dev.py プロジェクト: baocaifeng/xAAL
def run():
    eng = Engine()
    log = MQTTLogger(eng)
    eng.run()
コード例 #11
0
def main(addr):
    if addr == None:
        addr = tools.get_random_uuid()
    dev = Device("controlerMedia.basic", addr)
    dev.product_id = 'Controler DLNA'
    dev.url = 'http://www.acme.org'

    # attributes
    destination_media = dev.new_attribute('destination_media')
    source_media = dev.new_attribute('source_media')
    state_media = dev.new_attribute('state_media')
    position_media = dev.new_attribute('position_media')

    dev.dump()

    # methods
    def get_attributes():
        print("Attributs")

    ########### Ensemble des methodes liees a la mise en place du media ##########
    def set_destination(_dest):
        # Met la valeur du media player a utiliser dans la variable "destination_media"
        destination_media.value = _dest
        print("Destination \"" + _dest + "\" is set")

    def get_destinations():
        # Interroge le dBus pour connaitre les media renderer en DLNA
        # Envoie à l'utilisateur les destinations sous forme de liste
        available_dest = {"renderer1": "salon", "renderer2": "cuisine"}
        print("Display destinations")
        return available_dest

    def set_source(_src):
        # Met la valeur du media server a utiliser dans la variable "source_media"
        source_media.value = _src
        print("Source \"" + _src + "\" is set")

    def get_sources():
        # Interroge le dBus pour connaitre les media server en DLNA
        # Envoie à l'utilisateur les medias sous forme de liste
        available_media = {"media1": "NAS\\video1", "media2": "NAS\\video2"}
        print("Display sources")
        return available_media

    ########## Ensemble des methodes liees a l'etat du media lorsqu'il est en cours de lecture #########
    def play():
        state_media.value = True
        # Commande DLNA pour lancer le media
        print("%s Play" % dev)

    def pause():
        state_media.value = False
        # Commande DLNA pour mettre le media sur pause
        print("%s Pause" % dev)

    def stop():
        print("Media is stop")

    def next():
        print("Next media is play")

    def prev():
        print("Previous media is play")

    def moving_forward():
        print("Media is forwarding of 10 secondes")

    def moving_back():
        print("Media is backing of 10 secondes")

    dev.add_method('get_attributes', get_attributes)
    dev.add_method('set_destination', set_destination)
    dev.add_method('get_destinations', get_destinations)
    dev.add_method('set_source', set_source)
    dev.add_method('get_sources', get_sources)
    dev.add_method('play', play)
    dev.add_method('pause', pause)
    dev.add_method('stop', stop)
    dev.add_method('next', next)
    dev.add_method('prev', prev)
    dev.add_method('moving_forward', moving_forward)
    dev.add_method('moving_back', moving_back)

    eng = Engine()
    eng.add_device(dev)
    eng.run()
コード例 #12
0
def run():
    eng = Engine()
    ipx = GW.spawn(eng)
    eng.run()
コード例 #13
0
ファイル: gw.py プロジェクト: baocaifeng/xAAL
def run():
    eng = Engine()
    log = GW(eng)
    eng.run()