Skip to content

Commit 2f89792

Browse files
committed
Ajout d'une automatisation de configuration + Fichier de stockage d'information
1 parent c016ae4 commit 2f89792

4 files changed

Lines changed: 48 additions & 4 deletions

File tree

client.py

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,32 @@
1+
#coding: utf-8
2+
13
import socket
4+
import json
5+
6+
# Récupération des informations sur le serveur stocké dans le .json (Ip et le Port)
7+
with open('settings.json') as fichier:
8+
settings = json.load(fichier)
9+
10+
11+
###############################################
12+
## CLIENT ##
13+
###############################################
214

315
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
4-
s.connect(("127.0.0.1", 12086)) # Connexion au serveur
16+
s.connect((settings["ip"],settings["port"])) # Connexion au serveur
517

618

719
while True:
820
print("Message à envoyer au serveur:")
921
data = input(">> ")
1022
data = data.encode("utf8") # On encode le message
11-
s.sendall(data) # On envoie le message au serveur sous sa version codé
23+
s.sendall(data) # On envoie le message au serveur sous sa version encodé
1224

1325
# Le Serveur renvoit quelque chose
1426

1527
dataServeur =''
1628
dataServeur = s.recv(1024)
17-
dataServeur = dataServeur.decode("utf8") #On le decode car encodé coté serveur avant l'envoi
29+
dataServeur = dataServeur.decode("utf8") # On le décode car encodé coté serveur avant l'envoi
1830
if dataServeur == "break":
1931
break
2032
print(dataServeur) # On affiche le contenu de ce que nous avons reçu

configuration.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
#coding: utf-8
2+
3+
import json
4+
5+
ip = input("Quelle est l'ip que vous voulez donnez à votre serveur ? (Recommendé: 127.0.0.1):\n>> ")
6+
port = int(input("Quel port voulez vous attribuez à votre serveur ? (Recommandé: 12086)\n>> "))
7+
8+
settings = {
9+
"ip": ip,
10+
"port": port
11+
}
12+
13+
with open("settings.json", 'w') as fichier:
14+
json.dump(settings, fichier)

server.py

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,19 @@
1+
#coding: utf-8
2+
13
import socket
24
import threading
5+
import json
6+
7+
8+
# Récupération des informations sur le serveur stocké dans le .json (Ip et le Port)
9+
with open('settings.json') as fichier:
10+
settings = json.load(fichier)
11+
12+
13+
###############################################
14+
## SERVEUR ##
15+
###############################################
16+
317

418
class ClientThread(threading.Thread): #Définition de notre class, celle-ci correspondra à chaque client
519

@@ -38,7 +52,7 @@ def run(self):
3852

3953
tcpsock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
4054
tcpsock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
41-
tcpsock.bind(("127.0.0.1",12086)) # On définit l'adresse ip et le port de notre serveur
55+
tcpsock.bind((settings["ip"],settings["port"])) # On définit l'adresse ip et le port de notre serveur
4256

4357
while True: # Cette boucle attends la connexion des clients et les créée selon la class définit plus haut
4458
tcpsock.listen(10)

settings.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"ip": "127.0.0.1",
3+
"port": 12086
4+
}

0 commit comments

Comments
 (0)