$Search

Материал из MyDC's Wiki

Перейти к: навигация, поиск

Команда протокола NMDC.

Синтаксис

Пользователь в активном режиме:

$Search {ip}:{порт} {строка_поиска}|


Пользователь в пассивном режиме:

$Search Hub:{ник} {строка_поиска}|


Направление команды

Клиент ---> Хаб
Хаб ---> Клиент
Хаб ---> Хаб

Описание

Данная команда используется для начала поиска файлов на хабе.
{ip} — IP-адрес активного пользователя.
{порт} — порт UDP, который клиент слушает для приёма от других клиентов ответов на запрос.
{ник} — ник пассивного пользователя.
{строка_поиска} — строка поиска, которая описывает файл, который ищет клиент. Формат {строки_поиска} не зависит от режима подключения клиента (актив, пассив). Части этой строки разделяются знаками вопроса ('?'):
{размер_ограничен}?{максимальный_размер}?{размер}?{тип_данных}?{поисковый_параметр}
{размер_ограничен} — флаг наличия ограничений размера файла. Принимает значение 'T', если поиск должен быть ограничен максимальным или минимальным размером, иначе 'F'.
{максимальный_размер} — флаг типа ограничения размера файла. Принимает значение 'F', если {размер_ограничен} равен 'F' или если размер ограничения устанавливает более низкий предел размера файла, инача 'T'.
{размер} — минимальный или максимальный размер файла в байтах (в случае если указан {максимальный_размер}) и если {размер_ограничен} принимает значение 'T', иначе 0.
{тип_данных} — ограничение поиска по типу файлов. Данное ограничение принимает одно из следующих целых чисел:
  • 1 для любого типа файлов;
  • 2 для аудио файлов ("mp3", "mp2", "wav", "au", "rm", "mid", "sm");
  • 3 для архивов и сжатых файлов ("zip", "arj", "rar", "lzh", "gz", "z", "arc", "pak");
  • 4 для документов и текстовых файлов ("doc", "txt", "wri", "pdf", "ps", "tex");
  • 5 для выполняемых файлов ("pm", "exe", "bat", "com");
  • 6 для картинок ("gif", "jpg", "jpeg", "bmp", "pcx", "png", "wmf", "psd");
  • 7 для видео ("mpg", "mpeg", "avi", "asf", "mov");
  • 8 для папок;
  • 9 для поиска по TTH файла;
  • 10 для образов CD/DVD.
{поисковый_параметр} — поисковый параметр позволяет другим клиентам определить совпадение файлов.
Если тип поиска установлен в 9, то поисковый параметр должен представлять из себя TTH искомого файла.
Как и во всех сообщениях NMDC, в поисковом параметре следует избегать употребления следующих символов: "$", "|" и "&".
Все пробелы в поисковом параметре заменяются на знак '$'.


После отправки на хаб этого сообщения, хаб должен переслать его всем пользователям хаба без изменений. Каждый пользователь с одним или более совпадениями должен послать UDP-пакет на {ip}:{порт}, в случае активного запроса, или на хаб, в случае пассивного запроса.

Смотрите описание команды $SR для детального разбора.

Примеры

$Search 10.10.10.10:412 T?T?500000?1?Gentoo$2005|
$Search Hub:Вася T?T?500000?1?Gentoo$2005|
$Search 10.10.10.10:3746 F?T?0?9?TTH:TO32WPD6AQE7VA7654HEAM5GKFQGIL7F2BEKFNA|
$Search Hub:Пётр F?T?0?9?TTH:TO32WPD6AQE7VA7654HEAM5GKFQGIL7F2BEKFNA|
Источник — «http://wiki.mydc.ru/$Search»
Личные инструменты
Пространства имён
Варианты
Действия
Навигация
RusHub
Инструменты
Портал