-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathzz.txt
48 lines (45 loc) · 2.44 KB
/
zz.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
Зачетная задача
Программа, передающая сообщения
- работает на Orange Pi
- подключается к серверу
- принимает и передает сообщения
Функционал
- консоль разбита на 3 зоны
- поле для ввода команд и сообщений
- колонка для показа активных пользователей
- поле для отображения сообщений со скроллингом
- при приеме любого сообщения оно не должно портить соседние зоны
- сообщения м б отправлены
- конкретному пользователю
- всем активным в данный момент
Команды серверу
* вернуться может либо +данные, либо -описание_ошибки
* "+" - успех, "-" - ошибка
* данные после +/- идут без разделяющего пробела
PING - показать что клиент жив (20 секунд)
+ пустой ответ (перевод строки)
LOGIN username password - подключение или смена имени (макс длина имени 20 символов)
+ / -...
ECHO msg - тестирование связи
+ эхо сообщения
SEND user msg - сообщение одному
+ / -...
SNDALL msg - сообщение всем
+ / -...
EXIT - отключиться
+
USERS - получить список пользователей (онлайн и оффлайн)
+ пользователи / -...
Команды от сервера
MSGFROM user [to all]: msg
TIMEOUT
Особенности сервера
- максимальная длина сообщения 256 байт
- максимум 1 команда в секунду
- сервер хранит всех зарегистрированных пользователей (в т.ч. тех, кто не в сети)
- можно отправить сообщение пользователю не в сети, и он его получит при логине
Максимальный балл за задачу - 10 - при реализации до 15 декабря
до 22 декабря - 8
до 29 декабря - 6
после - 2 балла
Фишки - максимум 3 балла по 1 за каждую