Описание протокола NMDC
Материал из MyDC's Wiki
Структурированное описание протокола NeoModus Direct Connect (NMDC), под управлением которого, на сегодняшний день, работает подавляющее большинство хабов.
Содержание |
О структуре команд
Все команды протокола начинаются с символа $. Исключение составляет команда сообщения чата, которая должна иметь следующую структуру:
<Ник> Сообщение|
При этом, данный синтаксис команды чата обязателен в направлении клиент → хаб, в то время, как хаб может отсылать клиенту любые сообщения, не начинающиеся с символа $, и клиенты должны принимать такие сообщения, однако обработка таких сообщение не регламентирована протоколом (клиент может отображать такие сообщения как в чате, так и в статусной строке, или же вовсе игнорировать их).
Символы-разделители протокола: $, | и пробел. Протокол не имеет экранирующих символов, поэтому для отсылки символов $ и | в параметрах команд нужно использовать их HTML-коды: $ и |
Строка сообщения разделяется на команды посредством символа |. Пример трёх команд, отосланных одной строкой:
$Cmd1 параметр|$Cmd2|$Cmd3 параметр1 параметр2$параметр3|
Взаимодействие хаб-клиент
$MyPass |
Взаимодействие клиент-клиент
Взаимодействие хаб-хаб
Взаимодействие хаб-хаблист
Взаимодействие пингер-хаб
Команды характеристик
Разное
Известные характеристики
Хаб-Клиент
Клиент-Клиент
Последовательности команд
"Рукопожатие" между клиентом и хабом.
Общая последовательность входа на хаб.
С характеристикой QuickList
При регистрации в хаб-листе
Последовательность входа на хаб PtokaX
(последовательные команды могут отсылаться одной строкой, разделённой символом | )
При получении списка пользователей (GetNickList) на хабе PtokaX
Последовательность входа на хаб HeXHub
(последовательные команды могут отсылаться одной строкой, разделённой символом | )