Discover refactoring, enhancements to the cli tool (#71)

* Discover refactoring, enhancements to the cli tool

* Discover tries to detect the type of the device from sysinfo response
* Discover.discover() returns an IP address keyed dictionary,
  values are initialized instances of the automatically detected device type.

* When no IP is given, autodetect all supported devices and print out their states
* When only IP but no type is given, autodetect type and make a call based on that information.
  * One can define --bulb or --plug to skip the detection.

* renamed pyHS100.py -> smartdevice.py

* SmartPlugException -> SmartDeviceException in comments

* fix mic_type check

* make time() return None on failure as we don't know which devices support getting the time and it's used in the cli tool

* hw_info: check if key exists before accessing it, add mic_mac and mic_type

* Check for mic_mac on mac, based on work by kdschloesser on issue #59

* make hound happy, __init__ on SmartDevice cannot error out so removing 'raises' documentation
This commit is contained in:
Teemu R
2017-08-05 15:49:56 +02:00
committed by GitHub
parent d7aade4e61
commit 07af48e41a
8 changed files with 154 additions and 92 deletions

View File

@@ -13,8 +13,9 @@ Module-specific errors are raised as `SmartDeviceException` and are expected
to be handled by the user of the library.
"""
# flake8: noqa
from .smartdevice import SmartDevice
from .smartplug import SmartPlug
from .pyHS100 import SmartDevice
from .types import SmartDeviceException
from .smartbulb import SmartBulb
from .protocol import TPLinkSmartHomeProtocol
from .discover import Discover