/** * Luokka joka esittelee muutaman merkkijonovakion jota chatissä käytetään. * * Käytettävä protokolla: * * Kukin komento päättyy rivinvaihtoon (CRLF) vaikka sitä ei alla aina mainita. * Asiakas ottaa TCP-yhteyden palvelimen porttiin (oletusarvoisesti 11217). * Asiakas lähettää viestin "JOIN nimi" * Palvelin vastaa "200 OK" (tai "500 viallinen viesti" ja sulkee yhteyden) * TCP-yhteys jätetään päälle jos yhteydenotto oli ok. * * Kun asiakkaalla on viesti lähetettävänä, hän lähettää * "MESSAGE" yhdellä rivillä ja seuraavilla riveillä varsinainen viesti * viestin loppumerkkinä pelkkä piste (.) rivillä. * Palvelin kuittaa lähettäjälle "200 OK" (tai "500 viallinen viesti") * jos viesti on ok, palvelin lähettää saman viestin kullekin muulle * asiakkaalle muodossa "MESSAGE nimi" yhdellä rivillä ja seuraavilla * riveillä varsinainen viesti viestin loppumerkkinä pelkkä piste (.) rivillä. * Asiakkaat eivät kuittaa tätä viestiä. * * Asiakkaan tai palvelimen halutessa poistua, se lähettää kumppanilleen viestin * "QUIT", kumppani vastaa "200 OK" ja sulkee yhteyden. */ public class ChatProto { public static final String poistu = "QUIT"; public static final String liity = "JOIN"; public static final String viestiVirhe = "500 viallinen viesti:"; public static final String uusiViesti = "MESSAGE"; public static final String viestiOk = "200 OK"; public static final String EOM = "."; // viestin loppumerkki (EOM + EOL) public static final String EOL = "\r\n"; // rivin loppumerkki }