Matthew Garrett
d066513d02
Add packet retransmission and timeout
...
UDP doesn't guarantee delivery, so reattempt packet transmission if we don't
get a response and timeout if we still don't have anything after (by
default) 10 seconds.
2016-11-20 11:18:51 -08:00
Matthew Garrett
7ac243b838
Merge pull request #16 from PeWu/smartplug
...
Updated SmartPlug commands - set_power() and check_power()
2016-11-19 16:47:28 -08:00
Matthew Garrett
c68fcea5e6
Fix single device discovery
...
The automatic device type detection was only implemented when discovering
with a timeout. Refactor to do it for the single-device discover() case.
2016-11-19 14:23:50 -08:00
Przemek Wiech
1e04ec2be5
Merge branch 'master' into smartplug.
2016-11-18 21:20:35 +01:00
Przemek Wiech
652f52eb03
Updated SmartPlug commands - set_power() and check_power()
2016-11-18 00:19:02 +01:00
Matthew Garrett
d490c5b71e
Add automatic determination of device type
...
Look at the device ID and figure out what type of device it is, and provide
appropriate classes for each that only support the functionality available
on that device.
2016-11-18 09:55:21 +13:00
Matthew Garrett
c174e40f59
Add experimental support for smartplugs
...
This adds a set_power() call that should work for the SP2 - unsure whether
it will work for the SP3.
2016-11-13 14:29:07 +13:00
Marcus Stewart Hughes
4705fdf011
each send_packet() needs a unique count
...
Increment count instead of randomly generating on each send_packet() as per @mjg59's suggestion.
Tested and working as expected.
2016-11-10 20:13:21 +00:00
Kelvin Law
bd1c44488d
Fix for [Errno 49] Can't assign requested address
...
Fixes #3 on macOS
2016-11-02 20:34:46 -07:00
Matthew Garrett
989009e21f
Add support for multiple devices and update documentation
...
Add support for discovering more than one device on the network, and update
the documentation to describe that.
2016-10-30 14:16:40 -07:00
Matthew Garrett
69afd4ce52
Add support for sensor data
...
Add a check_temperature() function that'll work for both the RM2 and the A1
sensor platform, and a check_sensors() function that returns the full set of
sensor data for the A1 as a dict.
2016-10-24 20:50:34 -07:00
Matthew Garrett
6936bc750e
Attempt to handle timezones
...
The timezone should be embedded in the discovery packet, so make a better
attempt to do that.
2016-10-10 01:09:06 -07:00
Matthew Garrett
ecab016a73
Initial commit
2016-09-15 13:20:16 -07:00