aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md72
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