Иконки клиентов

Материал из Wiki.qip.ru

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

В QIP Infium имеется возможность самостоятельной настройки определения клиентов, которые используют Ваши контакты. С этой целью в папках \Protos\ICQ\Clients, \Protos\Jabber\Clients и \Protos\MRA\Clients находятся файлы конфигурации.

Содержание

Общая информация

Файл конфигурации представляет текстовый файл, в котором содержатся параметры, необходимые для идентификации клиентов. Рядом с ним в папке \Clients должны находиться файлы иконок, указанные в этом файле, как соответствующие определенному клиенту.

Для протокола ICQ

Определение каждого клиента представляет собой секцию INI-файла, а параметры клиента выступают в роли ключей. Секции пронумерованы последовательно, начиная с 1. Ниже приведен список доступных параметров.

Для протокола Jabber

Файл конфигурации так же представляет собой INI-файл. Список доступных параметров и пример см. ниже

Для протокола MRA

Каждому клиенту в файле соответствует отдельная строка. В начале строки указывается имя файла значка, который будет соответствовать определяемому клиенту, затем символ "#", а затем список параметров через пробел, в формате параметр="значение". Допускается вместо списка параметров указывать строку, при нахождении которой в одном из параметров, совпадение будет зафиксировано (см. Примеры определения).

Доступные параметры

Для протокола ICQ

  • Name
Имя клиента, которое будет отображаться в соответствующем поле в окне сообщений (здесь допускается использование символа "%" — в случае наличия параметра version, вместо него будет отображаться версия клиента)
  • ProtoVer
Версия протокола, передаваемая клиентом
  • DcInfo1
Содержимое поля DcInfo1 в характеристике клиента, шестнадцатеричное число размером 4 байта, может принимать значения от 00000000 до FFFFFFFF
  • DcInfo2
Аналогично пред.
  • DcInfo3
Аналогично пред.
  • Caps
Список характеристик, которые должны содержаться в характеристиках клиента. Шестнадцатеричное число, длиной от 1 до 32 символов. Если необходимо указать несколько характеристик, они разделяются запятыми. В начале строки может содержаться символ "!" — это будет означать, что только указанные характеристики должны присутствовать у клиента
  • NoCaps
Список характеристик, которые НЕ должен иметь клиент
  • Version
Параметры для определения версии (см. ниже)
  • Pic
Имя файла иконки определяемого клиента

Параметры, используемые в поле Version

  • DcInfo1(), DcInfo2(), DcInfo3() — версия содержится в одном из полей DcInfo
  • Cap() — версия содержится в одном из полей характеристики. При этом, внутри скобок должен быть указан хотя бы 1 символ характеристики, содержащей версию

В скобках указываются несколько шестнадцатеричных цифр из поля DcInfo или Caps соответственно. Внутри скобок должен использоваться один из нижеследующих параметров:

  1. # — показывать в качестве версии целочисленное значение оставшейся части характеристики
  2. + — показывать десятичное значение каждого байта оставшейся части характеристики
  3. * — Аналогично "+". Показывать значения каждого байта, разделенные точками
  4. @ — показывать текстовое значение оставшейся части характеристики

После вышеперечисленных параметров (кроме "@") можно указывать количество байт, которое должно быть прочитано, может принимать значение от 1 до 16. Например: *3. Если число байт не указано, принимается значение по умолчанию — 4 байта

Для протокола Jabber

  • node
Указывается содержимое тега <c/> презенса
  • ver
Необязательный параметр. Используется если node недостаточно для корректного определения
  • name
Необязательный параметр. Используется если node недостаточно для корректного определения. (Если указан, то он будет запрашиваться у контакта (один раз на каждую пару node+ver))
  • pic
Имя файла иконки определяемого клиента

Для протокола MRA

  • client
Строка, передаваемая клиентом в качестве идентификатора. Например, для QIP Infium — "QIP Infium", для Mail.Ru Agent — "magent"
  • version
Строка, содержащая строку с версией клиента
  • build
Строка, содержащая билд клиента

Примеры определения

  • Для протокола ICQ
[Х]
Name=QIP Infium (%)
ProtoVer=11
DcInfo2=00000000
Caps=7C737502C3BE4F3EA69F015313431E1A
Version=DcInfo1(0000#2)
Pic=cli_qip_infium.png

[Х]
Name=Miranda v. 0.% (alpha)
ProtoVer=8
Caps=4D6972616E64614D80
Version=Cap(4D6972616E64614D80*3)
Pic=cli_miranda.png
  • Для протокола Jabber
[]
node=http://qip.ru/caps
pic=cli_qip_infium.ico

[]
node=http://trillian.im/caps
ver=4.*
pic=cli_trillian_astra.ico
  • Для протокола MRA
cli_qip_infium.ico#QIP Infium

cli_mra_54.ico#client="magent" version="5.4"

Особенности

  • Порядок секций определения имеет значение — если найдено совпадение с одной из секций, то дальше определение происходить не будет. Обобщенные определения, которые могут включать в себя несколько клиентов, следует располагать после всех остальных
  • Иконки клиентов для протокола ICQ должны быть в формате PNG, а для протоколов Jabber и Mail.Ru Agent — в формате ICO
  • Файл clients.cfg должен быть представлен в кодировке Unicode

Определение клиентов для QIP2005

  • Для включения данной возможности в QIP 2005 необходимо скачать плагин Clients.dll (ссылка ниже)
  • Содержимое архива необходимо распаковать в папку \Plugins
  • в этой же папке должна находиться папка \Clients
  • Запускать QIP 2005 следует с параметром /clipics

Содержимое папки \Сlients аналогично одноименной из протокола ICQ для QIP Infium

Прямая ссылка на плагин

Генератор капсов

Программа "Генератор капсов" призвана облегчить процесс добавления определений клиентов в QIP Infium и аналогичные программы.
На момент редактирования статьи, программа умеет:

  • Преобразовывать caps в различные десятичные представления и в строку символов;
  • Искать значение капса по внутренней базе;
  • Восстанавливать нумерацию в файле clients.cfg (протокол ICQ);
  • Проверять наличие/отсутствие иконок клиентов ICQ, Jabber, Mail.ru Agent.

Ссылка на программу

Ссылки

Личные инструменты