浏览代码

change: NodeScan Kill/Start ASP

micha 4 月之前
父节点
当前提交
9ecc251761
共有 2 个文件被更改,包括 34 次插入6 次删除
  1. 28 3
      tool/TK-Nodescanner.py
  2. 6 3
      tool/nodescan.py

+ 28 - 3
tool/TK-Nodescanner.py

@@ -339,7 +339,8 @@ def _send_cmd(event=None,cmd=""):
     #poll(delay=1.5)
 
 def kill_librelight(event=None):
-    for i in ["CONSOLE.py","EDITOR.py","ASP"]:
+    #for i in ["CONSOLE.py","EDITOR.py","ASP"]:
+    for i in ["ASP"]:
         cmd='screen -XS "{}" quit | echo ""'.format(i)
         print(cmd)
         os.system(cmd)
@@ -352,7 +353,27 @@ def kill_librelight(event=None):
     cmd="tool/TK-Nodescanner.py" #&"
     arg = ""
     os.execl("/usr/bin/python3", BASE_PATH, cmd,arg)
-    
+
+def start_librelight(event=None):
+    #for i in ["CONSOLE.py","EDITOR.py","ASP"]:
+    for i in ["ASP"]:
+        cmd='screen -XS "{}" quit | echo ""'.format(i)
+        print(cmd)
+        os.system(cmd)
+
+    nodescan.is_running = 0 # exit all thread loop's
+
+    root.quit()
+    time.sleep(0.5)
+
+    BASE_PATH = "/opt/LibreLight/Xdesk/"
+    cmd="init/10-ASP.sh"
+    arg = ""
+    os.system(cmd)
+    #os.execl("/usr/bin/sh", BASE_PATH, cmd,arg)
+
+
+
 def set_ip(event=None):
     print("SET NEW IP")
 
@@ -478,7 +499,11 @@ e_poll_new.option_add("end","215.0.0.0")
 e_poll_new.pack(side="left")
 #exit()
 
-b_scan = Tkinter.Button(fframe,text="KILL Librelight !",command=kill_librelight,width=14,font=font2,bg="red")
+b_scan = Tkinter.Button(fframe,text="Librelight:",font=font2,relief="flat",bg="orange")
+b_scan.pack(side="left",expand=0)
+b_scan = Tkinter.Button(fframe,text="KILL !",command=kill_librelight,width=6,font=font2,bg="red")
+b_scan.pack(side="left",expand=0)
+b_scan = Tkinter.Button(fframe,text="START ",command=start_librelight,width=6,font=font2,bg="green")
 b_scan.pack(side="left",expand=0)
 
 scrollbar = Tkinter.Scrollbar(cframe)

+ 6 - 3
tool/nodescan.py

@@ -20,6 +20,9 @@ sys.stdout.write("\x1b]2;Nodescan\x07")
 
 print(socket.AF_INET)
 
+is_running = 1
+
+
 try:
     sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
     sock.bind(('', 6454))
@@ -141,7 +144,7 @@ def testBounce(ip,port):
     
 def reciveBounce(timeout=10):
     start = time.time()
-    while 1:
+    while is_running:
         data = sock.recv(500)
         print("bounce",data)
         #data, addr = sock.recvfrom(500)
@@ -288,7 +291,7 @@ class ArtNetNodes():
     def recive(self):
         print("-- NODE READ LOOP START ---")
         print()
-        while 1:
+        while is_running:
             data, addr = sock.recvfrom(300)
             new_node = ArtNet_decode_pollreplay( data )            
             #print("rvc loop",addr)
@@ -674,7 +677,7 @@ node_cmd_buf_list = []
 def node_cmd_recive():
     global node_cmd_buf_list
     #sock.sendto('\x00\x00\x00\x00\x00',(ip,port)) # ArtPol / ping
-    while 1:
+    while is_running:
         data, addr = sock_cmd.recvfrom(5000)
         #print(len(data))
         #print([addr,data])