示例#1
0
文件: __init__.py 项目: auduny/chains
    def openTelldus(self):

        log.info('Opening telldus')

        td.init( defaultMethods = td.TELLSTICK_TURNON | td.TELLSTICK_TURNOFF | td.TELLSTICK_BELL | td.TELLSTICK_TOGGLE | td.TELLSTICK_DIM | td.TELLSTICK_LEARN )
        #td.debug = True

        log.info('Registering device event handler')
        self.deviceCallbackId = td.registerDeviceEvent(self.deviceEventCallback)

        log.info('Registering sensor event handler')
        self.sensorCallbackId = td.registerSensorEvent(self.sensorEventCallback)
        #td.registerRawDeviceEvent(...) # if we want to support ALL recvd signals. noisy!

        log.info('Initializing complete')
示例#2
0
    def openTelldus(self):

        log.info('Opening telldus')

        td.init(defaultMethods=td.TELLSTICK_TURNON | td.TELLSTICK_TURNOFF
                | td.TELLSTICK_BELL | td.TELLSTICK_TOGGLE | td.TELLSTICK_DIM
                | td.TELLSTICK_LEARN)
        #td.debug = True

        log.info('Registering device event handler')
        self.deviceCallbackId = td.registerDeviceEvent(
            self.deviceEventCallback)

        log.info('Registering sensor event handler')
        self.sensorCallbackId = td.registerSensorEvent(
            self.sensorEventCallback)
        #td.registerRawDeviceEvent(...) # if we want to support ALL recvd signals. noisy!

        log.info('Initializing complete')
示例#3
0
 def registerSensorEvent(self, deviceEvent):
     self.SensorEvent = deviceEvent
     return td.registerSensorEvent(self.SensorEventInterceptor)
示例#4
0
# file: logger.py
import td
import time
def logSensorEvent(protocol, model, id, dataType, value, timestamp, callbackId):
    # print a line for each event with time, sensor id, data type, value, protocoll, and model
    print '%s,%d,%d,%s,%s,%s' %(time.strftime("%Y-%m-%d,%H:%M:%S"), id, dataType, value, protocol, model)
if __name__ == '__main__':
    # Intialize the communcation
    td.init( defaultMethods = td.TELLSTICK_TURNON | td.TELLSTICK_TURNOFF )
    # Register callbacks
    callbackId = []
    callbackId.append(td.registerSensorEvent(logSensorEvent))
    # Run infinite loop
    try:
        while(1):
            time.sleep(1)
    except KeyboardInterrupt:
        for i in callbackId:
            # De-register callbacks
            td.unregisterCallback(i)
    # Close communication so telldus-core can do some cleanup.
    td.close()
## End logger.py

示例#5
0
        #
        #  Event
        #
        cbId = []

        cbId.append(td.registerDeviceEvent(myDeviceEvent))
        print 'Register device event returned:', cbId[-1]

        cbId.append(td.registerDeviceChangedEvent(myDeviceChangeEvent))
        print 'Register device changed event returned:', cbId[-1]

        cbId.append(td.registerRawDeviceEvent(myRawDeviceEvent))
        print 'Register raw device event returned:', cbId[-1]

        cbId.append(td.registerSensorEvent(mySensorEvent))
        print 'Register sensor event returned:', cbId[-1]

        print 'Event handlers registered now waiting for events. Exit with ctrl-c.'
            
        try:
            while(1):
                time.sleep(1)
        except KeyboardInterrupt:
            print 'KeyboardInterrupt received, exiting'
            for i in cbId:
                td.unregisterCallback(i)

    else:
        parser.error("Can only handle one of --on, --off, --bell, --list, --dim, --learn, -event")
示例#6
0
        #
        #  Event
        #
        cbId = []

        cbId.append(td.registerDeviceEvent(myDeviceEvent))
        print 'Register device event returned:', cbId[-1]

        cbId.append(td.registerDeviceChangedEvent(myDeviceChangeEvent))
        print 'Register device changed event returned:', cbId[-1]

        cbId.append(td.registerRawDeviceEvent(myRawDeviceEvent))
        print 'Register raw device event returned:', cbId[-1]

        cbId.append(td.registerSensorEvent(mySensorEvent))
        print 'Register sensor event returned:', cbId[-1]

        print 'Event handlers registered now waiting for events. Exit with ctrl-c.'

        try:
            while (1):
                time.sleep(1)
        except KeyboardInterrupt:
            print 'KeyboardInterrupt received, exiting'
            for i in cbId:
                td.unregisterCallback(i)

    else:
        parser.error(
            "Can only handle one of --on, --off, --bell, --list, --dim, --learn, --event"