Передача файлов
Введение
Практически все средства связи через Интернет, в том числе и Jabber, позволяют обмениваться файлами, но современные способы подключения к Сети часто затрудняют обмен файлами. Например, если Вы подключены через локальную сеть или используете компьютер на месте работы - то могут возникнуть проблемы. К счастью, Jabber предоставляет множество средств для решения данной проблемы.
Теория
Теория
Существует несколько протоколов передачи файлов в Jabber
- httpUpload (Рекомендуем использовать)
- Фаил загружается на сервер, а потом отправляться как обычная ссылка. Самый быстрый, простой, надежный и 100% совместимый способ.
- In-band (в канале)
- Медленный и ненадежный[1], но будет работать всегда, при его использовании файлы превращаются в текст с помощью base64 и отсылаются как обычные сообщения. Не требует настройки, но его стоит использовать только при неработоспособности других разновидностей.
- Out-of-band[2] (вне канала)
- Быстрый, но для его использования компьютер должен иметь внешний IP-адрес, так как файлы посылаются напрямую между клиентами. Узнать, имеется ли у Вас внешний IP-адрес, можно тут.
- Out-of-band[2] через прокси
- Быстрый, надежный, но требует небольшой настройки, при его использовании файлы посылаются через специальный транспорт-прокси на стороне сервера. Используется, когда у компьютера нет внешнего IP-адреса. Не забывайте, что за установление соединения отвечает передающая сторона, поэтому если Вы не можете принять ни один файл, то в этом виноват передающий.
Клиенты
Большинство Jabber-клиентов умеет передавать файлы, но не стоит забывать, что если один клиент умеет передавать файлы только одним способом (например, in-band), а другой - только другим (например, out-of-band), примером может служить связка Bombus+Psi, то нельзя никакими[3] методами передать файл между ними. Поэтому необходимо знать, какими способами может передавать файлы Ваш клиент.
Возможности различных Jabber-клиентов:
Способ | Клиент | ||||||||||||||||
Dino | eyeCU | Vacuum-IM | Psi | Gajim | Pidgin | Kopete | Miranda | Bombus | Tkabber | Adium | QIP Infium | Jabbim | JAJC | Pandion[4] | Talkonaut | QutIM | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
httpUpload | Да | Нет | Нет | Нет | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Шаблон:Не | Нет | Нет | Нет |
In band | Нет | Да | Да | Да[5] | ? | Да | Нет | Да | Да | Да | ? | Да | Да | Да[6] | Нет | Да | ? |
Out of band | Нет | Да | Да | Да | Да | Да | Да | Да | ? | Да | Да | Да | Да | Да[6] | Нет | ? | ? |
Через прокси | Нет | Да | Да | Да | Да | Да | Да | Да | Да[7] | Да | Да | Да | Да | Да[6] | Нет | Да | ? |
Практика
Тут приводятся описания настройки передачи файлов в популярных Jabber-клиентах:
Psi | Pidgin | Gajim | |
Kopete | Tkabber | JAJC | |
Miranda | QIP Infium | Adium |
Примечания
- ↑ Также у этой разновидности есть ещё один недостаток - объём переданных данных приблизительно в 1.5 раза больше размера файла
- ↑ 2,0 2,1 Подразумевается out-of-band bytestream, XMPP-расширение 0065
- ↑ Не всегда это верно. См. "Необычные способы обмена файлами"
- ↑ Pandion поддерживает только передачу файлов через Jingle
- ↑ Поддерживают только новые версии Psi+
- ↑ 6,0 6,1 6,2 При помощи плагина
- ↑ В тестовых версиях BombusMod