diff options
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..d3be80e --- /dev/null +++ b/README.md @@ -0,0 +1,72 @@ +# Chat-palvelin + +Chat-palvelin tietoliikennekurssin työksi. + +## Versiot +* Python 3.5 +sekä Python-kirjastot +* socket (latest) +* threading (latest) + +## Suunnitelma + +Projektin tavoite on tehdä palvelin-asiakas-keskusteluohjelma, joka tukee viestien lähettämistä, palvelimelle yhdistämistä ja sieltä poistumista. + +## Protokolla + +Ohjelmalle on suunniteltu TCP:n päälle viestintäprotokolla. + +### Palvelimelta asiakkaalle + +#### BROADCAST +Välittää asiakkaan lähettämän viestin muille asiakkaille. + +``` +BROADCAST\n +user_name\n +message content\n +\0 +``` + +### Asiakkaalta palvelimelle + +#### CONNECT +Ilmoittaa yhdistäneen asiakkaan käyttäjänimen. + +``` +CONNECT\n +user_name\n +\0 +``` + +#### DISCONNECT +Ilmoittaa asiakkaan katkaisevan yhteyden. + +``` +DISCONNECT\n +user_name\n +\0 +``` + +#### MESSAGE +Lähettää viestin palvelimelle välitettäväksi muille asiakkaille BROADCASTilla. + +``` +MESSAGE\n +user_name\n +message content\n +\0 +``` + +#### KEEPALIVE +Ylläpitää yhteyttä palvelimeen, jos käyttäjä ei ole aktiivinen. Lähetetään tasaisin väliajoin. + +``` +KEEPALIVE\n +user_name\n +\0 +``` + +## Tekijät + +Jan Tuomi ja Toni Miilunpalo |
