-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathInitConnectionClient.py
70 lines (55 loc) · 2.6 KB
/
InitConnectionClient.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# -*- coding: utf-8 -*-
#!/usr/bin/env python
"""
@author: Quentin
"""
import socket
import SQLTools
import SELECTTools
import InsertTools
import time
import subprocess
ListFunction=[['DICTIONNARY','DICTIONNARY',''],['TEMPERATURE','TEMPERATURE(nZone)','Return in Comm the TEMPERATURE of the zone : BCPU-therm / MCPU-therm / GPU-therm / PLL-therm / Tboard_tegra / Tdiode_tegra / PMIC-Die / thermal-fan-est']]
def RecovPass():#Récupère la phrase de passe à l'intérieur du fichier et stock la chaîne de caractère dans une variable (retournée)
f= open("../Guess.txt","r")
data=f.read()
f.close()
return(data)
def InitConnection(name):
Server = '192.168.0.105' #IP du Server
passwd=RecovPass() #Récupération de la Phrase de passe
port = 22322
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)#Préparation de la socket
s.connect((Server,port))#Connection
s.send(name.encode('ascii'))#On envoi la demande
data = int(s.recv(1024).decode("ascii"))#On récupère le mot de passe demandé
s.send(passwd[data:data+24].encode('ascii'))#Et on l'envoi
data2 = s.recv(1024).decode('ascii')#On récupère le message confirmant l'autorisation de communication
#print(data2)
s.close()#Fermeture de la connection
return data2
ID=InitConnection("NewDevice")
print("----------------------")
InsertTools.InsertCOMMANDS('fortheTest',ID,'TEMPERATURE(4)','fortheTest',com=None)
now=time.time()
while(time.time()-now<10):
#print(time.time()-now)
commands=SELECTTools.CommandsFor(ID)
for elt in commands:
LineOrder,OrderID,Function,Target,Status,Source,ComOrder=elt[0],elt[1],elt[2],elt[3],elt[4],elt[5],elt[6]
if(Status=='waiting'):
if(Status=='waiting'):
if(Function=='DICTIONNARY'):
print("DICTIONNARY")
InsertTools.ChangeCOMMANDS("accepted",LineOrder)
InsertTools.InsertDICTIONNARY(ListFunction,ID)
InsertTools.ChangeCOMMANDS("done",LineOrder)
if('TEMPERATURE' in Function):
print("TEMPERATURE")
InsertTools.ChangeCOMMANDS("accepted",LineOrder)
zone=str(int(Function[-2]))
temperatureValue='tempOf'+zone
#For jetson
#temperatureValue=subprocess.check_output("cat /sys/devices/virtual/thermal/thermal_zone"+zone+"/temp", shell=True)
InsertTools.UpdateCom(temperatureValue,LineOrder)
InsertTools.ChangeCOMMANDS("done",LineOrder)