Skip to content

Project for Parallel Programming subject at Poznan University of Technology written in C

Notifications You must be signed in to change notification settings

mazoorek/parallel-programming-project

Repository files navigation

Serwer uruchamiamy wpisując ./inf136767_s w terminalu.
Klienta uruchamiamy wpisując ./inf136767_k w terminalu. Można dopisać do wywołania argument synchronically lub asynchronically, wtedy nastąpi wyświetlanie wiadomości synchroniczne/asynchroniczne. Każdego klienta wywołujemy w innym terminalu. 
Na początku pojawiając się 2 opcje: rejestracja/login, można się zarejestrować lub zalogować na istniejące już konto przepisowywując nazwę i hasło użytkownika z inf136_767_registeredUsersDatabase.txt.
Pani Doktor dla testów może usunąć dane z wszystkich plików tekstowych: klient przy rejestracji jako pierwszy bazowy wolny typ do subskrybowania otrzyma wtedy typ 20(więcej o typach w PROTOCOL.txt). Po rejsetracji użytkownik i jego dane i wybór wyświetlania wiadomości, subskrypcji, czy chce poinformować serwer, że otrzymał nowe wiadomości zostaną zapisane do pliku
inf136_767_registeredUsersDatabase.txt. Po każdorazowym zalogowaniu klient otrzyma te dane z powrotem z serwera.
Każda wiadomość ma swój priorytet z zakresu 1-9, a jego wartość zgodnie z specyfikacją projektu wybiera nadawca. Działa to na tej zasadzie, że otrzymując wiadomość typu 62 o priorytecie 7 wyświetli się ona przed wiadomością typu 60 o priorytecie 6.
W przypadku np 2 wiadomości typu 62 i 2 typu 60 do odebrania najpierw się wyświetlą wiadomości(chronologicznie) wiadomości typu 62 jeśli pierwsza wiadomość tego typu, która została wysłana do klienta ma wyższy priorytet niż pierwsza wiadomość typu 60.
Wiadomości będą wyświetlać się synchronicznie po wybraniu opcji "receive new messages" z menu, natomiast jeśli klient wybrał asynchroniczne otrzymywanie, to tej opci w menu nie ma, a klient otrzymuje nowe wiadomości przy każdej interakcji z serwerem, np po wybraniu opcji z menu, po wyborze nowego typu jaki chce subskrybować itd.

About

Project for Parallel Programming subject at Poznan University of Technology written in C

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages