Клиенты ICQ – польза и вред.
Было проанализировано несколько вариантов решения вопроса «чем аськать?». Этот обзор не претендует на какую-то строгость и на привязку к какой-то определённой тематике (например, usability или дизайн). Скорее, некие оценки в разрезе моих вкусов (о которых не спорят).
1. "Штатные" средства (ICQ, ICQLite, ICQ Rambler).
Преимущества.
Основное – то, что они штатные. Т. е. неприятных сюрпризов можно ожидать с наименьшей вероятностью. Протоколы поддерживаются, есть средства вести разговор в стиле «чат», есть возможность групповой рассылки, корректно поддерживается server-side контакт-лист, списки игнорирования и невидимости, полное и подробное заполнение и корректное сохранение своего about, поддерживаются средства «xStatus» (с выводом «добавочной» пиктограммы в окно контакт-листа) и «typing notification».
Недостатки.
- Чрезвычайно громоздкий и ресурсоёмкий интерфейс, большие размеры окон, большие расстояния между строками текстовой информации, большие участки пустого места в окнах (особенно в окне разговора). Скажем так, не вызывает положительных эмоций при больших (от 30 чел.) размерах контакт-листа.
- Наличие в окнах областей (и довольно обширных), куда выводится реклама. Да, да, без неё никуда, но… не радует. И в плане траффика тоже.
- Чересчур грамотная «политкорректность» в отношении контактов. Если оный Вас не авторизовал, статус его Вы не увидите, в группу не занесёте, а то и сообщение не дойдёт. Не увидите Вы ip-адрес, данные о клиентском программном обеспечении, данные о возможностях клиента. Не прочтёте статусное сообщение, не затратив определённых усилий. А сообщение xStatus, наоборот, влезет в окно разговора в самый неподходящий момент. Пользоваться «typing notification» весьма затруднительно, т. к. разглядеть информацию в цветастом окне довольно сложно. Также не радует громкое уведомление о «дне повидла» за два дня до оного, сие не в наших, как говорится, традициях, а перестраивать нужно для каждого контакта (а если их 200?). Лично для меня это кончилость стиранием моей даты рождения из about.
- Настройки по умолчанию таковы, что их сразу же надо перестраивать. В частности, звуки, приём сообщений «wwwpager» и «e-mail express», опции показа контакт-листа. Также ввод специфического статусного сообщения требует определённых усилий.
2. QIP (Quiet Internet Pager).
В целом не самая плохая замена «штатной» ICQ 5.1 для тех, кому реклама – основная досада. Но и только. Окинув сие чудо беглым взглядом, понимаешь, что у пацанов, его писавших, непонятки с логикой.
Преимущества.
- Поддерживает (по крайней мере, так заявлено) всё «штатное», за исключением режима «чат», мультиадресной рассылки и ещё, быть может, кое-чего ненужного, до чего я так и не добрался. Ряд самых нужных настроек вынесен в интерфейсе на панель контакт-листа и легко доступен: списки невидимости и игнорирования, включение/выключение звуков, задание статуса и xStatus.
- Тем не менее, весьма бесцеремонен с Вашими контактами. Позволяет видеть всю информацию в «сыром» виде, которую их клиенты анонсировали при handshake. Позволяет работать без обязательной авторизации и видеть статус. Уведомляет Вас об активности контактов (и даже неконтактов) по отношению к Вам (в частности, чтение статусного сообщения).
- Содержит средства, скажем так, «высшего уровня» применительно к работе с протоколом. В частности, контроль статуса найденных контактов прямо из окна поиска. Кроме обычных статусов и xStatus, поддерживает ещё свои дополнительные статусы (которые, правда, видны только другим пользователям QIP). Позволяет в произвольный момент времени посылать контактам сообщения о добавлении, запросы на авторизацию и разрешения авторизации (хороший способ напомнить о себе, не правда ли?). Можно «подсунуть» в свои handshake-данные наименование другого клиента и/или другую версию, а также вообще написать что попало.
- Лёгкий способ обойти «штатную» беду «штатных» средств – одновременный запуск нескольких экземпляров с несколькими учетными записями. Логин можно просто задать в командной строке ярлыка.
- Возможность автоматического восстановления соединения при проблемах в сети, причём с последним использовавшимся статусом и xStatus.
- Не требует инсталляции.
Недостатки.
- Главный недостаток касается самого главного, ради чего вся каша и варилась, – обмена сообщениями. Данный клиент никак не регламентирует и не гарантирует доставку сообщений. Написанное Вами провалится в верхнюю часть окна диалога, даже если Вы в offline. Если получатель не может принять сообщение директом (ну выкинуло его, бывает), оно, скорее всего, до него так и не дойдёт (а Вы об этом так и не узнаете), ибо с server relay у этой штучки тоже напряжённые отношения: отправлять «в оффлайн» он не всегда «хочет» и принимать – тоже.
- Средства «фильтрации базара» (т. н. антиспам/флуд) не радуют – есть подозрение, что фильтруется не совсем (или совсем не) то.
- Ротация контакт-листа при его отображении – за это хочется и руки выкрутить. Если Вы скажете в настройках: «По алфавиту» (впрочем, настройки – отдельная песня), он будет сортировать железно по алфавиту. Но, не дай кто-то, Вы сказали «По статусу» – ищите-свищите нужных Вам людей, т. к. контакты будут в порядке, который похож на случайный.
- Некоторые доп. средства реализованы неудобно и/или неполно. В частности, xStatus, который в протоколе состоит из двух строк – заголовка и сообщения: Вы будете видеть и сможете задать только заголовок. Чтение обычного статусного сообщения требует некоторых усилий.
- Почему-то количество выводимой о контакте информации жёстко поделено на онлайн и оффлайн. Т. е., как только контакт отсоединяется от сети, Вы уже не увидите, каким клиентом он пользовался, когда последний раз логинился и т. д.
- Окно настроек. Как и положено, есть три кнопки: «OK», «Применить» и «Отмена», но… все три доступны в любой момент времени. Т. е. совершенно не понятно, что Вы уже поменяли, что применили и что отменится при нажатии на кнопку «Отмена».
- Мелочь, но неприятная – подарок от штатных средств. Огромные межстрочные интервалы в окнах, огромный крупный шрифт по умолчанию и большие куски пустого места в окнах.
- Не совсем корректная работа с server-side контакт-листом. Если он сохранен клиентом, не поддерживающим запись доп. информации (например, имени), то в контакт-листе QIP покажет номер ICQ, и поменять это представление на сервере будет уже невозможно.
- При смене статуса нет возможности принудительно потребовать ввода статусного сообщения. А по умолчанию оно вообще пусто. Меня, например, раздражает, когда человек away, но не сказал, куда.
- Корректность заполнения и сохранения about в принципе достаточна, но относительна. В частности, раздел «Интересы» заполняется не в той логике, в какой его подлежит сохранять. Также игнорируется опция «Не показывать e-mail».
3. Miranda IM.
Типичный образец «модульного» решения со всеми вытекающими преимуществами и – увы! –недостатками (как говорится, слон состоит из хвоста, ушей и бегемота). Т. к. эта вещь ещё и мультипротокольная, буду рассматривать особенности только применительно к ICQ.
Преимущества.
- Самое главное – интерфейс. Расположение элементов управления, внешний вид окон, компактность, цветовые гаммы по умолчанию, отсутствие декоративных элементов оформления – располагают к отсутствию посторонних мыслей. Сообщения о смене статуса контактов, typing notifications, активности по отношению к Вам выводит в компактных всплывающих окнах, что не отвлекает, но позволяет располагать всей нужной информацией. «Краткая» информация о контакте может быть настраиваемой, достаточно полна и сохраняется между сеансами.
- Позволяет работать с контакт-листом в двух вариантах – server-side и client-side. Даёт возможность перехода между вариантами, «на всякий случай» сохраняя все контакты на стороне клиента (если server-side список вдруг исчезнет, его можно восстановить со «своей» копии, а не любоваться на пустой экран, как, например, при использовании QIP).
- Гарантирует доставку. Т. е., не получив подтверждения от клиента «по ту сторону», конечно, дает возможность отправить через server relay, но, в общем, добивается своего.
- Даёт возможность client-side игнорирования, т. е. неугодные Вам личности могут посылать что угодно, но Вы, не занося их на постоянной основе в server-side список игнорирования, ничего от них не получите.
- Если Вы не уверены в своей контактоспособности по отношению к конкретному персонажу Вашей сетевой жизни, Вам дается возможность «тихого» добавления его в контакт-лист – без запросов авторизации и даже оповещения о добавлении (правда, при этом Вы должны использовать client-side контакт-лист, т. к. добавление в server-side означает автоматическую посылку уведомления о добавлении).
- По умолчанию требуется принудительный ввод сообщения о статусе. Полезно занятым людям, которые предпочитают расшифровывать степень своей занятости в предположении, что «на том конце» к ним относятся грамотно и внимательно.
- Возможности в силу модульности решения пополняются регулярно. Например, можно установить автоответчик и т. п.
Недостатки.
- Как ни странно, модульность. Над модулями работают различные разработчики, поэтому разнобой в документации и в её прочтении, недисциплинированность, квалификация и стиль делают своё чёрное дело. Из «достижений» в этой области:
- неверное понимание протокола и неоднозначное толкование его умолчаний, в силу чего практически после каждого существенного дополнения спецификации на сервере ICQ клиент утрачивает работоспособность;
- неполная и неточная реализация некоторых средств, например, заполнение и сохранение about;
- путаница в иерархии вызовов функций из модулей, которая, в частности, приводит к тому, что, например, нажав кнопку «Применить» в окне настроек, не находясь на закладке «Игнорирование» или «Видимость», Вы рискуете очистить свой server-side список невидимости или список игнорирования, так что могут быть неприятные сюрпризы;
- не совсем корректная работа с server-side списком контактов: при синхронном сохранении контактов на сервер сохраняется только номер, а не имя, поэтому, запустив на своей учетной записи какой-либо другой клиент, работающий с server-side контакт-листом, рискуете получить стройные ряды безликих цифр;
- хоть xStatus и поддерживается, даже в «штатном» двухстрочном виде, чтобы его увидеть у своих контактов, нужно сделать несколько лишних телодвижений;
- трудности с доставкой сообщений длиной более 450 символов, даже если текущее соединение это позволяет.
- Понятие модульности предполагает от пользователя владение понятиями «диск», «файл», «каталог», «dll», «версия», т. е. пользователь должен быть, мягко говоря, очень продвинутым.
- Мягко говоря, не очень хорошая приспособленность к работе с несколькими учетными записями. База контактов на одну инсталляцию – одна, если Вы переключите учетную запись, то изменений в контакт-листе не получите. Соответственно, сие не располагает к одновременному использованию нескольких экземпляров с разными учетными записями.
- Отсутствует возможность посылки уведомлений о добавлении и запросов на авторизацию в произвольный момент времени.
4. SIM.
Делался людьми с системным подходом, причём, исходя из постановки задачи «Взять всё лучшее». Но, как и следует ожидать, этот путь – не самый перспективный из-за обилия трактовок слов «всё» и «лучшее».
Преимущества.
- Компактный настраиваемый интерфейс.
- Поддержка «штатных» возможностей, по крайней мере, заявлена.
- Корректная работа с server-side контакт-листом, запись туда информации о номере ICQ и имени и обновление таковой, если она неполна.
- Возможности работы с несколькими учетными записями одновременно.
- Возможность использования client-side базы контактов Miranda.
- Корректная работа с server-side списками игнорирования и невидимости.
- «Вольности», обычные для 3-d party клиентов: работа без обязательной авторизации, просмотр специальных сведений (статус, версия клиента, ip-адрес).
- Возможность гарантий доставки настраивается (всё ж лучше, чем отправка «в пустоту», как у QIP).
Недостатки.
- Излишества в настройках и чрезвычайно разбросанный интерфейс настройки (некоторые средства находятся в самых неожиданных местах, например, списки невидимости и игнорирования – среди групп контакт-листа).
- Хранение и отображение (по умолчанию) списков «вне контакт-листа».
- Игнорирование некоторых спецификаций протокола. Ляпы из этой серии:
- фоновая корректировка контакт-листа идёт без учёта ограничения на частоту посылки запросов информации от одного подключения. В результате, если Вы в произвольный момент времени надумаете посмотреть чьё-то about, скорее всего, ничего не увидите.
- ошибки в умолчаниях для протокола и форматов сообщений, в силу чего Вы рискуете при некоторой комбинации настроек получить сообщение «Приложение выполнило недопустимую операцию и будет закрыто».
5. &RQ.
Складывается впечатление, что эта программа написана по итогам всех «Не хочу!» пользователей «штатных» средств. О преимуществах и недостатках тут говорить вряд ли можно, ибо трудно отделить одно от другого, т. к. все характеристики клиента начинаются со слова «не».
- Не поддерживает многих средств, которые поддерживаются другими клиентами (статусные сообщения, режим «чат», показ своего IP-адреса и т. д., правда, непонятно, зачем поддерживается xStatus).
- Нет излишеств в интерфейсе (очень мелкий шрифт, очень сжатое представление, очень трудно что-либо поменять в настройках, если вообще возможно).
- Не требуется специальная инсталляция.
- Не работает с server-side контакт-листом.
6. mobICQ/JIMM.
Клиент для работы на мобильных/карманных устройствах. В данном случае, в силу специфики данных девайсов, трудно говорить о «преимуществах» вообще, но – с паршивой овцы хоть шерсти клок.
Преимущества.
- То, что вообще такой клиент есть. Позволяет существенно экономить средства (по сравнению с телефонными разговорами и SMS) и обеспечить хоть какой-то функционал ICQ.
- Новые версии позволяют, опять же, «баловаться» 3-d party «вольностями», в частности, общение и наблюдение статуса без обязательной авторизации.
Недостатки.
- Ориентир на спецификацию java (j2me), которая, хоть и утверждена и является «священной коровой», но… у всех мобилопроизводителей почему-то различна. В частности, «беды» со звуковым сопровождением и с переключением языка ввода на многих моделях телефонов/КПК/прочих люстротабуреток.
- Масса мелких неточностей. К примеру, из окна чтения статусного сообщения невозможно выйти «красной кнопкой», только через меню. Или провалы в арифметике: сумма количеств контактов и онлайн-контактов по группам не всегда соответствует общему количеству контактов и количеству онлайн-контактов.
- Чрезвычайно нерегулярная поддержка и выход обновлений.
- Мягко говоря, ограниченные средства установки и чтения server-side настроек. В частности, Вы не можете:
- – просматривать about из окна поиска контактов;
- – менять свой собственный about;
- – управлять списками невидимости и игнорирования.
- Также информация при просмотре about выводится довольно нелогично.
- Работа только с server-side контакт-листом.
© Dmitry M.