-
Notifications
You must be signed in to change notification settings - Fork 0
Протокол первого уровня Cspyp1
exileed edited this page Sep 24, 2012
·
1 revision
В данный момент актуальной версией протокола Cspyp1 является версия 3. Протокол Cspyp1 является бинарным протоколом, т. е. при работе с ним необходимо оперировать байтами.
Protocol ID: 1; Protocol version: 3
**Список констант протокола Cspyp1**
Command ID | Значение | Комментарий |
auth | 1 | Команда авторизации клиентов |
adm | 2 | Команда авторизации администратора |
list | 3 | Команда запроса списка клиентов |
ping | 4 | Команда проверки соединения «пинг» |
rlist | 5 | Команда передачи списка клиентов |
transmit | 6 | Команда передачи информации |
disconnect | 7 | Команда отключения клиента |
setinfo | 8 | Команда обновления информации о клиенте |
**Список команд, посылаемых клиентом серверу:**
- Команда авторизации клиента
- Команда передачи информации
- Команда ответа на пинг
- Команда отключения
**Список команд, посылаемых администратором серверу:**
- Команда авторизации администратора
- Команда передачи информации
- Команда запроса списка клиентов
- Команда ответа на пинг
- Команда отключения
- Команда обновления информации о клиенте
**Список команд, посылаемых сервером клиенту:**
- Команда передачи информации
- Команда пинг (проверка соединения)
**Список команд, посылаемых сервером администратору:**
- Команда передачи списка клиентов
- Команда передачи информации
- Команда пинг (проверка соединения)
## **Описание команд, входящих в состав протокола Cspyp1**
**Пакет авторизации клиента** (59 байт)
Protocol ID | Protocol version | Command ID (auth) | Client hash | OS | Device Type |
1 byte | 1 byte | 1 byte | 16 bytes | 20 bytes | 20 bytes |
**Пакет авторизации администратора** (47 байт)
Protocol ID | Protocol version | Command ID (adm) | Admin login | Admin password |
1 byte | 1 byte | 1 byte | 22 bytes | 22 bytes |
**Пакет запроса списка клиентов** (3 байта)
Protocol ID | Protocol version | Command ID (list) |
1 byte | 1 byte | 1 byte |
**Пакет проверки соединения «пинг»** (3 байта)
Protocol ID | Protocol version | Command ID (ping) |
1 byte | 1 byte | 1 byte |
- Protocol ID – идентификатор протокола Cspyp1
- Protocol version – текущая версия протокола Cspyp1
- Command ID (list) – идентификатор команды проверки соединения ping
**Пакет передачи списка клиентов**
Protocol ID | Protocol version | Command ID (rlist) | Number of clients | Client info array |
1 byte | 1 byte | 1 byte | 2 bytes | Array of 92 bytes structs |
- Protocol ID – идентификатор протокола Cspyp1
- Protocol version – текущая версия протокола Cspyp1
- Command ID (rlist) – идентификатор команды передачи списка клиентов
- Number of clients – количество клиентов
- Client info array – массив структур с информацией о клиенте
Структура Client info имеет следующий вид:
Client ID | Client hash | OS | Device Type | IP | Caption |
2 bytes | 16 bytes | 20 bytes | 20 bytes | 4 bytes | 30 bytes |
- Client ID – идентификатор клиента (соответствует идентификатору клиентского сокета на сервере)
- Client hash – 16 байтный хеш клиента
- OS – операционная система клиента
- Device Type – тип устройства клиента
- IP – ip адрес клиента
- Caption – наименование клиента
**Пакет передачи информации**
Protocol ID | Protocol version | Command ID (transmit) | Client ID | Data size | Data |
1 byte | 1 byte | 1 byte | 2 bytes | 4 bytes | ... bytes |
- Protocol ID – идентификатор протокола Cspyp1
- Protocol version – текущая версия протокола Cspyp1
- Command ID (receive) – идентификатор команды передачи информации
- Client ID – идентификатор клиента
- Data size – размер передаваемой информации
- Data – передаваемая информация
**Пакет отключения клиента**
Protocol ID | Protocol version | Command ID (disconnect) |
1 byte | 1 byte | 1 byte |
- Protocol ID – идентификатор протокола Cspyp1
- Protocol version – текущая версия протокола Cspyp1
- Command ID (disconnect) – идентификатор команды отключения
**Пакет изменения информации о клиенте** (35 байт)
Protocol ID | Protocol version | Command ID (setinfo) | Client ID | Caption |
1 byte | 1 byte | 1 byte | 2 bytes | 30 bytes |
- Protocol ID – идентификатор протокола Cspyp1
- Protocol version – текущая версия протокола Cspyp1
- Command ID (setinfo) – идентификатор команды изменения информации о клиенте
- Client ID – идентификатор клиента
- Caption – строка с названием клиента