﻿from tkinter import *
import socket
import json
import time
import threading

def recive():
    while True:
        reponse1 = client.recv(255)
        print(reponse1.decode("utf-8"))


def send(text):
    minute = time.localtime()[4]
    minute=str(minute)
    if len(minute)==1:
        minute = '0'+minute
    heure = ' le '+str(time.localtime()[2])+'/'+str(time.localtime()[1])+'/'+str(time.localtime()[0])+' à '+str(time.localtime()[3])+'h'+minute
    u=json.dumps({"nom" : nom,"heure":heure,"message":text})
    nomfichier=str(time.time())[:-4]
    fichier=open(nomfichier,"w")
    fichier.write(u)
    fichier.close()
    y=json.loads(u)
    reponse=y["nom"]+heure+" : "+y["message"]
    client.send(reponse.encode("utf-8"))
   
adresseIP = "localhost" # Ici, le poste slocal
port = 50000    # Se connecter sur le port 50000
global client
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client.connect((adresseIP, port))
print("Connecté au serveur")
reponse=""
nom=input('')
fenetre = Tk()

txtVal = StringVar()
label = Label(fenetre, textvariable=txtVal).pack()
entree = Entry(fenetre, textvariable=txtVal, width=30)
entree.pack()

label = Label(fenetre, text="Client")
label.pack()

bouton=Button(fenetre, text="print",command=lambda: send(txtVal.get()))
bouton.pack()

#while reponse != "!stop":
    #if y['message']=='!stop':
        #reponse='!stop'

rec = threading.Thread(target=recive, args=())
rec.start()
fenetre.mainloop()

#print("Connexion fermée")
#client.close()
