Передача файлов
Материал из Мир Jabber
Введение
Практически все средства связи через Интернет, в том числе и Jabber, позволяют обмениваться файлами, но современные способы подключения к сети часто затрудняют обмен файлами. Например, если Вы подключены через локальную сеть или используете компьютер на месте работы - то могут возникнуть проблемы. К счастью, Jabber предоставляет множество средств для решения данной проблемы.
Теория
Существует несколько способов передачи файлов в Jabber:
- HTTP File Upload (рекомендуем)
- Файл загружается на jabber-сервер, а потом отправляется как обычная ссылка, которая будет доступна на всех клиентах и у вас, и у собеседника. Самый простой, надежный и 100% совместимый способ - в клиенте настройка не требуется совсем (он просто должен уметь эту функцию), а ссылку можно открыть даже в обычном веб-браузере. Файлы можно слать, даже если собеседник сейчас не в сети. Так как файл сохраняется на сервере, то, во-первых, требуется поддержка такой загрузки с его стороны - но практически везде на сейчас она есть. А во-вторых, так как на это расходуются ресурсы сервера, то там обычно установлены лимиты на размер таких файлов и на время их хранения (на разных по-разному): фотографии, короткие видеоролики или аудиозаметки можно пересылать, но обменяться полноразмерным фильмом так уже не выйдет.
- In-band (в канале)
- Самый медленный способ[1], но будет работать всегда: при его использовании файлы превращаются в текст с помощью base64 и отсылаются как обычные сообщения. Не требует настройки, но его стоит использовать только при неработоспособности других разновидностей.
- Out-of-band[2] (вне канала)
- Быстрый, но для его использования компьютер должен иметь внешний IP-адрес, так как файлы посылаются напрямую между клиентами. Узнать, имеется ли у Вас внешний IP-адрес, можно тут. При такой передаче ресурсы сервера не задействуются, поэтому можно пересылать файлы любых объемов.
- Out-of-band[2] через прокси
- Быстрый как и обычный Out-of-band, но используется в тех случаях, когда у компьютера нет внешнего IP-адреса - при его использовании файлы посылаются через специальный транспорт-прокси на стороне сервера, поэтому такая передача требует небольшой настройки. Не забывайте, что за установление соединения отвечает передающая сторона, поэтому если Вы не можете принять ни один файл, то в этом виноват передающий.
Клиенты
Возможности различных Jabber-клиентов:
Способ | Клиент | ||||||||||||||||
XMPP Messenger | Conversations | Dino | Gajim | eyeCU | Vacuum-IM | Psi | Pidgin | Kopete | Miranda | Bombus | Tkabber | Adium | QIP Infium | Jabbim | JAJC | Talkonaut | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
HTTP Upload | Да | Да | Да | Да | Нет | Нет | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
In band | Да | Да | Нет | ? | Да | Да | Да | Да | Нет | Да | Да | Да | ? | Да | Да | Да[3] | Да |
Out of band | Да | Да | Нет | Да | Да | Да | Да | Да | Да | Да | ? | Да | Да | Да | Да | Да[3] | ? |
Через прокси | Да | Да | Нет | Да | Да | Да | Да | Да | Да | Да | Да[4] | Да | Да | Да | Да | Да[3] | Да |
Практика
Тут приводятся описания настройки передачи файлов в популярных Jabber-клиентах:
Psi | Pidgin | Gajim | |
Kopete | Tkabber | JAJC | |
Miranda | QIP Infium | Adium |