Передача файлов: различия между версиями

Материал из Мир Jabber
Перейти к навигацииПерейти к поиску
(2 columns)
 
(не показаны 84 промежуточные версии 15 участников)
Строка 1: Строка 1:
==Введение==
==Введение==
В Jabber, как и у большинства других IM, есть возможность передачи файлов, но, к сожалению, с ней часто возникают проблемы. Почти всегда они связаны со способом подключения к интернету. Довольно распространены способы (в частности NAT и прокси), при которых затруднительно устанавливать прямые соединения между 2 компьютерами (при обмене сообщениями прямых соединений не происходит, поэтому проблем нет). Если у Вас нет проблем с передачей файлов - Вам повезло и либо у Вас уже настроен клиент, либо у вас хороший способ подключения к интернету. Если передача файлов не работает (допустим у Вас выход в интернет через локальную сеть) - то необходимо настраивать клиент.
Практически все средства связи через Интернет, в том числе и Jabber, позволяют обмениваться файлами, но современные способы подключения к сети часто затрудняют обмен файлами. Например, если Вы подключены через локальную сеть или используете компьютер на месте работы - то могут возникнуть проблемы. К счастью, Jabber предоставляет множество средств для решения данной проблемы.


==Способы передачи файлов==
==Теория==
Существует несколько протоколов передачи файлов в Jabber. Самым популярным, новым и официальным является SI. Существуют две разновидности SI: in-bound (в канале) и out-of-bound (вне канала). Первый медленный и ненадежный, но будет работать почти всегда, при его использовании файлы посылаются точно так же, как и сообщения. Второй быстрый, надежный, но работает не всегда, при его использовании файлы посылаются либо напрямую, либо через специальный прокси.
Существует несколько способов передачи файлов в Jabber:
;HTTP File Upload (рекомендуем): Файл загружается на jabber-сервер, а потом отправляется как обычная ссылка, которая будет доступна на всех [[Клиенты Jabber|клиентах]] и у вас, и у собеседника. Самый простой, надежный и 100% совместимый способ - в клиенте настройка не требуется совсем (он просто должен уметь эту функцию), а ссылку можно открыть даже в обычном веб-браузере. Файлы можно слать, даже если собеседник сейчас не в сети. Так как файл сохраняется на сервере, то, во-первых, требуется поддержка такой загрузки с его стороны - но практически везде на сейчас она есть. А во-вторых, так как на это расходуются ресурсы сервера, то там обычно установлены лимиты на размер таких файлов и на время их хранения (на разных по-разному): фотографии, короткие видеоролики или аудиозаметки можно пересылать, но обменяться полноразмерным фильмом так уже не выйдет.
;In-band (в канале): Самый медленный способ<ref>Также у этой разновидности есть ещё один недостаток - объём переданных данных приблизительно в 1.5 раза больше размера файла</ref>, но будет работать всегда: при его использовании файлы превращаются в текст с помощью [[ru_wikipedia:base64|base64]] и отсылаются как обычные сообщения. Не требует настройки, но его стоит использовать только при неработоспособности других разновидностей.
;Out-of-band<ref name=oobb> Подразумевается out-of-band bytestream, [http://xmpp.org/extensions/xep-0065.html XMPP-расширение 0065]</ref> (вне канала):Быстрый, но для его использования компьютер должен иметь внешний IP-адрес, так как файлы посылаются напрямую между клиентами. Узнать, имеется ли у Вас внешний IP-адрес, можно [[Выявление NAT|тут]]. При такой передаче ресурсы сервера не задействуются, поэтому можно пересылать файлы любых объемов.
;Out-of-band<ref name=oobb></ref> через прокси:Быстрый как и обычный '''Out-of-band''', но используется в тех случаях, когда у компьютера нет внешнего IP-адреса - при его использовании файлы посылаются через специальный [[Транспорт|транспорт]]-прокси на стороне сервера, поэтому такая передача требует небольшой настройки. Не забывайте, что за установление соединения отвечает передающая сторона, поэтому если Вы не можете принять ни один файл, то в этом виноват передающий.


===Клиенты===
===Клиенты===
Bombus и Gajim не нуждаются в настройке, так как первый использует in-bound, а второй без настройки умеет передавать файлы через свой прокси. Настройка описывается на примере Psi 0.12.


==Настройка==
'''Возможности различных Jabber-клиентов:'''
Нажимаем правой кнопкой мыши на имени Вашей учетной записи в ростере  - Service Discovery.


[[Изображение:Psifiletransfer1.png]]
<center>
{| class="wikitable" width=100%
|rowspan=2 align=center bgcolor=lightgreen width=110|'''Клиент'''
|colspan=17 align=center bgcolor=#77AAFF|'''Способ'''
|-
|width=100 bgcolor=#B8E6F5 align=center | '''HTTP Upload'''
|width=100 bgcolor=#B8E6F5 align=center | '''In band'''
|width=100 bgcolor=#B8E6F5 align=center | '''Out of band'''
|width=100 bgcolor=#B8E6F5 align=center | '''Через прокси'''
|-
| align=center|[[XMPP Messenger]] || {{Да}} || {{Да}} || {{Да}} || {{Да}}
|-
| align=center|[[Conversations]] || {{Да}} || {{Да}} || {{Да}} || {{Да}}
|-
| align=center|[[Dino]] || {{Да}} || {{Нет}} || {{Нет}} || {{Нет}}
|-
| align=center|[[Gajim]] || {{Да}} || {{Частично}} || {{Да}} || {{Да}}
|-
| align=center|[[eyeCU]] || {{Нет}} || {{Да}} || {{Да}} || {{Да}}
|-
| align=center|[[Vacuum-IM]] || {{Нет}} || {{Да}} || {{Да}} || {{Да}}
|-
| align=center|[[Psi]] || {{Да}} || {{Да}} || {{Да}} || {{Да}}
|-
| align=center|[[Pidgin]] || {{Нет}} || {{Да}} || {{Да}} || {{Да}}
|-
| align=center|[[Kopete]] || {{Нет}} || {{Нет}} || {{Да}} || {{Да}}
|-
| align=center|[[Miranda]] || {{Нет}} || {{Да}} || {{Да}} || {{Да}}
|-
| align=center|[[Bombus]]  || {{Нет}} || {{Да}} || {{Частично}} || {{Да|Да<ref name="bombusmod">В тестовых версиях BombusMod</ref>}}
|-
| align=center|[[Tkabber]] || {{Нет}} || {{Да}} || {{Да}} || {{Да}}
|-
| align=center|[[Adium]] || {{Нет}} || {{Частично}} || {{Да}} || {{Да}}
|-
| align=center|[[QIP Infium]] || {{Нет}} || {{Да}} || {{Да}} || {{Да}}
|-
| align=center|[[Jabbim]] || {{Нет}} || {{Да}} || {{Да}} || {{Да}}
|-
| align=center|[[JAJC]] || {{Нет}} || {{Да|Да<ref name="plugin">При помощи плагина</ref>}} || {{Да|Да<ref name="plugin">При помощи плагина</ref>}} || {{Да|Да<ref name="plugin">При помощи плагина</ref>}}
|-
| align=center|[[Talkonaut]] || {{Нет}} || {{Да}} || {{Частично}} || {{Да}}
|-
|}


Ждем несколько секунд. Если Вы видите там транспорт proxy,  Вам следует использовать его, в противном случае используем другой.
</center>


[[Изображение:Psifiletransfer2.png]]
==Практика==


Далее необходимо выбрать "Меню - Account Setup - имя Вашей учетной записи - Modify - вкладка Misc".
Тут приводятся описания настройки передачи файлов в популярных Jabber-клиентах:


[[Изображение:Psifiletransfer3.png]][[Изображение:Psifiletransfer4.png]]
{| width=75%
|width=50%|[[Изображение:Icon 16-16 psi.png]] [[Настройка передачи файлов в Psi|Psi]]
|[[Изображение:Icon 16-16 pidgin.png]] [[Настройка передачи файлов в Pidgin|Pidgin]]
|-
|[[Изображение:Logo 16-16 gajim.png]] [[Настройка передачи файлов в Gajim|Gajim]]
|[[Изображение:Logo 16-16 coccinella.png]] [[Настройка передачи файлов в Coccinella|Coccinella]]
|-
|[[Изображение:Logo 16-16 kopete.png.png]] [[Настройка передачи файлов в Kopete|Kopete]]
|[[Изображение:Logo 16-16 tkabber.png]] [[Настройка передачи файлов в Tkabber|Tkabber]]
|-
|[[Изображение:Logo 16-16 jajc.png]] [[Настройка передачи файлов в JAJC|JAJC]]
|[[Изображение:Icon 16-16 adium.png]] [[Настройка передачи файлов в Adium|Adium]]
|-
|[[Изображение:Icon 16-16 miranda.png]] [[Настройка передачи файлов в Miranda|Miranda]]
|[[Изображение:Logo 16-16 qip-logo.png.png]] [[Настройка передачи файлов в QIP Infium|QIP Infium]]
|-
<!--|[[Изображение:Logo 16-16 bombus.png]] [[Настройка передачи файлов в Bombus|Bombus]]-->
<!--[[Изображение:Icon 16-16 pandion.png]] [[Настройка передачи файлов в Pandion|Pandion]]-->
|}


В поле Data Transfer Proxy пишем имя транспотра - либо имя транспорта для Вашего сервера (допустим для Jabbus.org имя будет proxy.jabbus.org), а если вы не нашли прокси в Service Discovery, то используем допустим proxy.jabber.ru. Сохраняем изменения.Далее необходимо идти в "Меню - Options - Application". В самом низу пишем свой внешний ip адрес, который можно узнать на [http://www.2ip.ru 2ip], сохраняем настройки
==Примечания==
<references />


[[Изображение:Psifiletransfer5.png]]
==Необычные способы обмена файлами==


и пользуемся передачей файлов.
* [[Jabber Disk]]
* [[Service Disk]]
* [[Галерея картинок через Jabber|Онлайн-галерея картинок]]
 
== Ссылки ==
 
* [[Выявление NAT]]
* [http://chiselapp.com/user/sgolovan/repository/tkabber-wiki/doc/tip/wiki/ru/%D0%9F%D0%B5%D1%80%D0%B5%D1%81%D1%8B%D0%BB%D0%BA%D0%B0_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2__%D1%82%D0%B5%D0%BE%D1%80%D0%B8%D1%8F.md Описание протоколов и способов передачи файлов в Jabber (для продвинутых)] ([http://ru.tkabber.jabe.ru/index.php/Пересылка_файлов:_теория оригинальная ссылка, давно нерабочая]).
* [http://miranda.im/2009/03/14/jabber-file-transfers/ Руководство по настройке файлопередачи] на примере [[Miranda]]. {{deadlink}}
* [[Список публичных транспортов proxy]]
 
[[Category:Передача файлов]]

Текущая версия на 13:05, 25 сентября 2022

Введение[править]

Практически все средства связи через Интернет, в том числе и 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-клиентов:

Клиент Способ
HTTP Upload In band Out of band Через прокси
XMPP Messenger Да Да Да Да
Conversations Да Да Да Да
Dino Да Нет Нет Нет
Gajim Да ? Да Да
eyeCU Нет Да Да Да
Vacuum-IM Нет Да Да Да
Psi Да Да Да Да
Pidgin Нет Да Да Да
Kopete Нет Нет Да Да
Miranda Нет Да Да Да
Bombus Нет Да ? Да[3]
Tkabber Нет Да Да Да
Adium Нет ? Да Да
QIP Infium Нет Да Да Да
Jabbim Нет Да Да Да
JAJC Нет Да[4] Да[4] Да[4]
Talkonaut Нет Да ? Да

Практика[править]

Тут приводятся описания настройки передачи файлов в популярных 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 adium.png Adium
Icon 16-16 miranda.png Miranda Logo 16-16 qip-logo.png.png QIP Infium

Примечания[править]

  1. Также у этой разновидности есть ещё один недостаток - объём переданных данных приблизительно в 1.5 раза больше размера файла
  2. 2,0 2,1 Подразумевается out-of-band bytestream, XMPP-расширение 0065
  3. В тестовых версиях BombusMod
  4. 4,0 4,1 4,2 При помощи плагина

Необычные способы обмена файлами[править]

Ссылки[править]