Передача файлов

Версия от 07:12, 19 июня 2009; Wiz (обсуждение | вклад) (→‎Теория: band (полоса), а не (bound) привязка)

Введение

В Jabber, как и у большинства других IM, есть возможность передачи файлов, но, к сожалению, с ней иногда возникают проблемы. Почти всегда они связаны со способом подключения к Интернету. Довольно распространены способы (допустим при подключении к Интернету через локальную сеть или с места работы), при которых затруднительно устанавливать прямые соединения между 2 компьютерами (при обмене сообщениями прямых соединений не происходит, поэтому проблем нет). Если у Вас нет проблем с передачей файлов - Вам повезло и либо у Вас уже настроен клиент, либо у вас хороший способ подключения к интернету. Если передача файлов не работает - то необходима небольшая настройка клиента.

Теория

Существует несколько протоколов передачи файлов в Jabber. Самым популярным является SI. Другие (Jidlink, Jingle и HTTP) почти не используются. Существуют три разновидности SI:

In-band (в канале)
Медленный и ненадежный, но будет работать всегда, при его использовании файлы превращаются в текст с помощью base64 и отсылаются как обычные сообщения. Не требует настройки, но его стоит использовать только при нестандартных способах подключения.
Out-of-band (вне канала)
Самый быстрый и надежный, но для его использования компьютер должен иметь внешний IP-адрес, так как файлы посылаются напрямую между клиентами. Иногда требует настройки.
Out-of-band через прокси
Быстрый, надежный, но требует небольшой настройки, при его использовании файлы посылаются через специальный транспорт-прокси на стороне сервера. Используется, когда у компьютера нет внешнего IP-адреса. Рекомендованный способ.

Клиенты

Большинство Jabber-клиентов умеет передавать файлы, но не стоит забывать, что если один клиент умеет передавать файлы только одним способом (например, in-bound), а другой - только другим (например, out-of-bound), примером может служить связка Bombus+Psi, то нельзя никакими[1] методами передать файл между ними. Поэтому необходимо знать, какими способами может передавать файлы Ваш клиент.

Возможности различных Jabber-клиентов:

Способ Клиент
Psi Gajim Pidgin Kopete Miranda Bombus Tkabber Adium QIP Infium Jabbim JAJC Pandion Talkonaut
In-band [2] ? X X X ? X X X[3] X
Out-of-band X X X X X X ? X X X[3] ? ?
Через прокси X X X X X X ? X X X[3] ? X

Практика

Тут приводятся описания настройки передачи файлов в популярных Jabber-клиентах:

Icon 16-16 psi.png Psi Icon 16-16 pidgin.png Pidgin Logo 16-16 gajim.png Gajim Logo 16-16 coccinella.png Coccinella
Logo 16-16 kopete.png.png Kopete Logo 16-16 tkabber.png Tkabber Logo 16-16 jajc.png JAJC
Icon 16-16 miranda.png Miranda Logo 16-16 qip-logo.png.png QIP Infium Icon 16-16 adium.png Adium

Примечания

  1. Не всегда это верно. См. "Необычные способы обмена файлами"
  2. Поддерживают только версии 0.10 и ниже
  3. 3,0 3,1 3,2 При помощи плагина

Необычные способы обмена файлами

Ссылки