salut,
la fonction cfg, elle sert a quoi??
Code:
1
2 self.socketHost = str(cfg['host'])
Version imprimable
salut,
la fonction cfg, elle sert a quoi??
Code:
1
2 self.socketHost = str(cfg['host'])
Ce n'est pas une fonction, mais un dictionnaire (ou quelque chose qui se comporte come tel), si tu nous donnais sa définition on pourrait t'aider
Hello,
A priori ce n'est pas une fonction puisque on l'associe à des crochets...! Ce doit donc être une variable, cherche où elle est instanciée la première fois ! A priori je dirais que c'est un dictionnaire qui contient les options de config. de la connexion...
Edit : grillé...
la première instance est :
le code est:Code:
1
2 cfg=data[self.server]
cfg prend les différentes valeurs de server, c ça?Code:
1
2
3
4
5
6
7
8
9
10 cfg=data[self.server] self.socketHost = str(cfg['host']) self.socketPort = int(cfg['port']) self.retry = int(cfg['retry']) self.timeRetry = int(cfg['timeretry']) self.sslMode = int(data['ssl']) self.SetCrypted() ...........
merci pour vos réponses
D'après le code, cfg est récupéré dans un autre dictionnaire nommé data, à la clé self.server
Donc il faut que tu voies ce que contient cette variable data
Apparemment, cfg serait une sorte de configuration du script
dsl, mais je comprend pas tres bien ce que tu veux dire par:
configuration du script!!
Je pense qu'il veut dire que cfg est un dictionnaire qui contient tous les paramètres nécessaires au fonctionnement du script. Apparemment c'est une connexion par socket, donc ces paramètres peuvent être l'adresse d'un autre poste, un numéro de port, .... En fait tout ce que tu as donné ici :
Code:
1
2
3
4
5
6 self.socketHost = str(cfg['host']) self.socketPort = int(cfg['port']) self.retry = int(cfg['retry']) self.timeRetry = int(cfg['timeretry']) self.sslMode = int(data['ssl']) self.SetCrypted()
ce que je veux faire est le suivant:
j'ai plusieurs hot, chaque hot contien plusieurs port, je etablir un connection avec l'un des hot disponible sur l'un des ports dispo., je commance par parcourir tous les port a la recherche d'un port dispo, et sur chaque port je dois faire 3 tentative de connection.....
j pensé a faire deux boucles for:Code:
1
2
3
4
5
6
7
8
9
10
11
12
13 data=self.controller.GetConfigData() serverNB=self.controller.GetServerId() data=data['servers']['server'][serverNb] serverName=data['name'] cfg=data[self.server] self.socketHost = str(cfg['host']) self.socketPort = int(cfg['port']) self.retry = int(cfg['retry']) self.timeRetry = int(cfg['timeretry']) self.sslMode = int(data['ssl']) self.SetCrypted()
cen'est qu'un algorithme, ce n'est pas un programme python!!().Code:
1
2
3
4
5
6
7 for i in self.socketHost: for j in self.socketPort if tentative >3 and search == False # passé a un autre port if search==True # Sortir de toute les boucle
c'est la mon probleme avec, cfg['host'], je ne sais poas comment, faire pouir passé d'un port a un autre et d'un hoste a l'autre....
je veux, si jamais je trouve un port dispo, je quitter les trois boucle
Donc cfg=data[self.server] permet de récupérer la configuration spécifique à un serveur, tu peux très bien faire
Qui passera en revue tous les serveursCode:
1
2 for server, cfg in data: #on essaye avec ça
Merci bcp, oiffrig