var connection = new Socket; var vesrion = "0.1"; function DuM(thisObj) { function chatOpen() { boutonClient.text = "Connexion..."; boutonClient.enabled = false; boutonClose.enabled = true; connection.timeout = 2; // connect to sample server if (connection.open ("localhost:1234")) { boutonClient.text = "Connecté"; connection.timeout = 1; //envoyer une requète var pseudo = textePseudo.text; if (pseudo.length == 0) connection.writeln("Anonyme"); else connection.writeln(textePseudo.text); texteChat.text = connection.read(); } else { boutonClient.text = "Démarrer"; boutonClient.enabled = true; boutonClose.enabled = false; texteChat.text ="Connexion échouée"; } } function chatClose() { connection.writeln("!quit"); boutonClient.text = "Déconnexion..."; connection.close(); delete connection; boutonClient.text = "Démarrer"; boutonClient.enabled = true; boutonClose.enabled = false; } function chat() { var pseudo = textePseudo.text; var message = texteInput.text; if (message == "!quit") chatClose(); if (message == "!check") check(); else { if (pseudo.length == 0) connection.writeln("Anonyme : " + texteInput.text); else connection.writeln(textePseudo.text + " : " + texteInput.text); texteInput.text = ""; var reply = connection.read(); texteChat.text = reply; } } function check() { connection.writeln("!check"); //lire la réponse var reply = connection.read(); texteChat.text = reply; } //la fenetre var fenetre = (thisObj instanceof Panel) ? thisObj : new Window("palette","DuM v" + version); fenetre.bounds = [300,300,500,660]; var textePseudo = fenetre.add("edittext",[5,5,195,30],"Pseudo"); var boutonClient = fenetre.add("button",[5,35,100,60],"Démarrer le chat"); boutonClient.onClick = chatOpen; var boutonClose = fenetre.add("button",[105,35,195,60],"Stop !"); boutonClose.onClick = chatClose; boutonClose.enabled = false; var texteChat = fenetre.add("edittext",[5,65,195,295],"",{multiline:true}); var texteInput = fenetre.add("edittext",[5,300,195,325],""); texteInput.onChange = chat; var boutonCheck = fenetre.add("button",[5,330,195,355],"check"); boutonCheck.onClick = check; } DuM(this);