Ejemplo n.º 1
0
    def testRelayDispatch(self):

        relay = RelaySwitch(name='light',
                            pin=18,
                            value=1,
                            value_toggle=0,
                            duration=2)

        def collect(Key=None, AttributeUpdates=None):
            self.ddb_data.append(AttributeUpdates)

        ddb = DynamoDBDataStore(table='staging-test1-events',
                                region='us-east-1',
                                type='DynamoDBDataStore')
        ddb.table.update_item = MagicMock(side_effect=collect)

        BaseModule.datastore = ddb

        BaseModule.scheduler = BackgroundScheduler()
        BaseModule.start()
        relay.dispatch()
        time.sleep(5)

        self.assertEqual(self.ddb_data[0]['created']['Value'],
                         self.ddb_data[1]['created']['Value'])
        self.assertGreater(len(self.ddb_data[1]['completion_time']['Value']),
                           1)
Ejemplo n.º 2
0
    def __init__(self, width=None, height=None, **kwargs):
        BaseModule.__init__(self, **kwargs)

        self.cam = cv2.VideoCapture(0)

        self.cam.set(3, width)  # set the Horizontal resolution
        self.cam.set(4, height)  # Set the Vertical resolution
Ejemplo n.º 3
0
 def __init__(self, pin=None, **kwargs):
     BaseModule.__init__(self, **kwargs)
     self.pin = pin
     GPIO.setmode(GPIO.BCM)
     GPIO.setup(self.pin, GPIO.IN, pull_up_down=GPIO.PUD_UP)
     GPIO.add_event_detect(self.pin,
                           GPIO.FALLING,
                           lambda pin: self.dispatch(),
                           bouncetime=1500)
Ejemplo n.º 4
0
    def __init__(self,
                 pin=None,
                 value=None,
                 duration=None,
                 value_toggle=None,
                 **kwargs):
        BaseModule.__init__(self, **kwargs)

        self.pin = pin
        self.duration = duration
        self.value_initial = self.current_value = value
        self.value_toggle = value_toggle
        self.send(self.current_value)
Ejemplo n.º 5
0
    def __init__(self,
                 vesync_name,
                 duration=None,
                 states=["on", "off"],
                 **kwargs):
        BaseModule.__init__(self, **kwargs)

        self.vesync_name = vesync_name
        self.duration = duration
        self.next_idx = 0
        self.states = states

        if not VeSyncOutlet.manager:
            VeSyncOutlet.manager = VeSync(os.environ['VESYNC_USERNAME'],
                                          os.environ['VESYNC_PASSWORD'])
            VeSyncOutlet.manager.login()
            VeSyncOutlet.manager.update()

        self.device = next(
            filter(lambda x: x.device_name == vesync_name,
                   VeSyncOutlet.manager.outlets), None)
        if self.device is None:
            raise Exception("Unable to find VeSync device " + vesync_name)
Ejemplo n.º 6
0
 def __init__(self, pin=None, use_fahrenheit=False, **kwargs):
     BaseModule.__init__(self, **kwargs)
     self.pin = pin
     self.fahrenheit = use_fahrenheit
Ejemplo n.º 7
0
 def start(self):
     logger.debug("Running...")
     BaseModule.start()  # blocking
Ejemplo n.º 8
0
 def __init__(self, width=None, height=None, **kwargs):
     BaseModule.__init__(self, **kwargs)
Ejemplo n.º 9
0
 def __init__(self, bucket_name=None, base_url=None, **kwargs):
     BaseModule.__init__(self, **kwargs)
     self.bucket_name = bucket_name
     self.base_url = base_url if base_url else DEFAULT_S3_BASE.format(
         bucket_name)
     self.client = boto3.client('s3')
Ejemplo n.º 10
0
 def __init__(self, width=None, height=None, **kwargs):
     BaseModule.__init__(self, **kwargs)
     self.cam = picamera.PiCamera()
     self.cam.vflip = self.cam.hflip = True
     self.cam.resolution = (width, height)