More work on tplink utils to avoid having to call tplink.py.
[python_utils.git] / smart_home / lights.py
index fd9a091cb0b8be8b0669857b8c274bd54e89eb5d..9a5a2311ee516587e2515ae8e1c30be716c26e0d 100644 (file)
@@ -315,13 +315,15 @@ class TPLinkLight(BaseLight):
         raise NotImplementedError
 
     def get_info(self) -> Optional[Dict]:
-        cmd = self.get_cmdline() + "-c info"
-        self.info = tplink.tplink_get_info(cmd)
-        if self.info is not None:
-            self.info_ts = datetime.datetime.now()
-        else:
-            self.info_ts = None
-        return self.info
+        ip = self.get_ip()
+        if ip is not None:
+            self.info = tplink.tplink_get_info(ip)
+            if self.info is not None:
+                self.info_ts = datetime.datetime.now()
+            else:
+                self.info_ts = None
+            return self.info
+        return None
 
     @overrides
     def status(self) -> str:
@@ -361,8 +363,7 @@ class TPLinkLight(BaseLight):
             return False
         cmd = (
             self.get_cmdline()
-            + '-j \'{{"smartlife.iot.dimmer":{{"set_brightness":{{"brightness":{%d} }} }} }}\''
-            % level
+            + '-j \'{"smartlife.iot.dimmer":{"set_brightness":{"brightness":%d}}}\'' % level
         )
         return tplink.tplink_command(cmd)