implemented method to toggle nightlight on some SP3 devices (#159)

* implemented method to toggle nightlight on some SP3 devices

* implement nightlight feature to cli

* check_power/check_nightligh fixes for py2.7
This commit is contained in:
Nightreaver 2018-03-19 07:03:46 +09:00 committed by Matthew Garrett
parent 39cc64efce
commit 33a2e4ae54
2 changed files with 51 additions and 4 deletions

View file

@ -69,8 +69,11 @@ parser.add_argument("--host", help="host address")
parser.add_argument("--mac", help="mac address (hex reverse), as used by python-broadlink library")
parser.add_argument("--temperature",action="store_true", help="request temperature from device")
parser.add_argument("--check", action="store_true", help="check current power state")
parser.add_argument("--checknl", action="store_true", help="check current nightlight state")
parser.add_argument("--turnon", action="store_true", help="turn on device")
parser.add_argument("--turnoff", action="store_true", help="turn off device")
parser.add_argument("--turnnlon", action="store_true", help="turn on nightlight on the device")
parser.add_argument("--turnnloff", action="store_true", help="turn off nightlight on the device")
parser.add_argument("--switch", action="store_true", help="switch state from on to off and off to on")
parser.add_argument("--send", action="store_true", help="send command")
parser.add_argument("--sensors", action="store_true", help="check all sensors")
@ -139,6 +142,11 @@ if args.check:
print '* ON *'
else:
print '* OFF *'
if args.checknl:
if dev.check_nightlight():
print '* ON *'
else:
print '* OFF *'
if args.turnon:
dev.set_power(True)
if dev.check_power():
@ -151,6 +159,18 @@ if args.turnoff:
print '!! Still ON !!'
else:
print '== Turned * OFF * =='
if args.turnnlon:
dev.set_nightlight(True)
if dev.check_nightlight():
print '== Turned * ON * =='
else:
print '!! Still OFF !!'
if args.turnnloff:
dev.set_nightlight(False)
if dev.check_nightlight():
print '!! Still ON !!'
else:
print '== Turned * OFF * =='
if args.switch:
if dev.check_power():
dev.set_power(False)