Передача файлов
Введение
В Jabber, как и у большинства других IM, есть возможность передачи файлов, но, к сожалению, с ней иногда возникают проблемы. Почти всегда они связаны со способом подключения к Интернету. Довольно распространены способы (допустим при подключении к Интернету через локальную сеть или с места работы), при которых затруднительно устанавливать прямые соединения между 2 компьютерами (при обмене сообщениями прямых соединений не происходит, поэтому проблем нет). Если у Вас нет проблем с передачей файлов - Вам повезло и либо у Вас уже настроен клиент, либо у вас хороший способ подключения к интернету. Если передача файлов не работает - то необходима небольшая настройка клиента.
Теория
Существует несколько протоколов передачи файлов в Jabber. Самым популярным является SI. Другие (Jidlink, Jingle и HTTP) почти не используются. Существуют три разновидности SI:
- In-band (в канале)
- Медленный и ненадежный, но будет работать всегда, при его использовании файлы превращаются в текст с помощью base64 и отсылаются как обычные сообщения. Не требует настройки, но его стоит использовать только при нестандартных способах подключения.
- Out-of-band (вне канала)
- Самый быстрый и надежный, но для его использования компьютер должен иметь внешний IP-адрес, так как файлы посылаются напрямую между клиентами. Иногда требует настройки.
- Out-of-band через прокси
- Быстрый, надежный, но требует небольшой настройки, при его использовании файлы посылаются через специальный транспорт-прокси на стороне сервера. Используется, когда у компьютера нет внешнего IP-адреса. Рекомендованный способ.
Клиенты
Большинство Jabber-клиентов умеет передавать файлы, но не стоит забывать, что если один клиент умеет передавать файлы только одним способом (например, in-band), а другой - только другим (например, out-of-band), примером может служить связка 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-клиентах:
Psi | Pidgin | Gajim | Coccinella |
Kopete | Tkabber | JAJC | |
Miranda | QIP Infium | Adium |