Explorar o código

用接口执行command

chanjunkai %!s(int64=5) %!d(string=hai) anos
pai
achega
32452277a2
Modificáronse 1 ficheiros con 27 adicións e 17 borrados
  1. 27 17
      controller/index.py

+ 27 - 17
controller/index.py

@@ -327,6 +327,7 @@ class oa2RtspStartView(TemplateView):
         res = requests.get(url=request_url)
         print(res)
         return True
+
     #触发此方法,让摄像头推流到MSG流地址
     def runSendRtspMsg(self, UID, PWD, MSG):
         # return True
@@ -335,25 +336,34 @@ class oa2RtspStartView(TemplateView):
 
         command = "./pushtool {UID} {PWD} {MSG} 1".format(UID=UID, PWD=PWD, MSG=MSG)
         # print('command=>{command}'.format(command=command))
-        logger.info('command=>{command}'.format(command=command))
-
+        command_url = "http://47.115.134.251/index.php?command={command}".format(command=command)
         try:
-            back = subprocess.Popen(command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE). \
-                communicate(timeout=2)
+            exec_res = requests.get(url=command_url, timeout=6)
+            res = exec_res.json()
+            logger.info('------------调用接口执行发送命令---------------')
+            logger.info(res)
+            if res['code'] == 200:
+                return True
         except Exception as e:
-            logger.info('开始打印------------repr--------except-------')
-            logger.info(repr(e))
-            return repr(e)
-        else:
-            print("back0----", back[0].decode())  # 注意需要进行解码操作,默认输出的是字节
-            print("back1----", back[1].decode())  # back是一个元祖,可以通过元祖取值的方式获取结果
-
-            logger.info(UID)
-            logger.info(back[0].decode())
-            logger.info(back[1].decode())
-
-            return str(back[0].decode()) + str(back[1].decode())
-            return True
+            logger.info(e)
+        return False
+        # try:
+        #     back = subprocess.Popen(command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE). \
+        #         communicate(timeout=2)
+        # except Exception as e:
+        #     logger.info('开始打印------------repr--------except-------')
+        #     logger.info(repr(e))
+        #     return repr(e)
+        # else:
+        #     print("back0----", back[0].decode())  # 注意需要进行解码操作,默认输出的是字节
+        #     print("back1----", back[1].decode())  # back是一个元祖,可以通过元祖取值的方式获取结果
+        #
+        #     logger.info(UID)
+        #     logger.info(back[0].decode())
+        #     logger.info(back[1].decode())
+        #
+        #     return str(back[0].decode()) + str(back[1].decode())
+        #     return True
 
     def runSendStop(self, UID, PWD, MSG):
         command = "./pushtool {UID} {PWD} {MSG} 0".format(UID=UID, PWD=PWD, MSG=MSG)