Jingle
Jabber - текстовый протокол, поэтому он лучше всего приспособлен для передачи текста, например, сообщений. Однако в некоторых случаях требуется передать бинарные данные. Текстовые протоколы плохо приспособлены к передаче бинарных данных, не исключение и Jabber. По этой причине появилась необходимость создать спецификацию по передаче бинарных данных в обход основного протокола.
Jingle - это расширение протокола Jabber, предназначенное для передачи бинарных данных. Подобно Skype, Jingle является пиринговой (P2P) сетью, это значит что данные передаются напрямую между клиентами. Прямая передача данных значительно снижает нагрузку на сервера Jabber.
У Jingle существует множество применений:
- Передача голоса в реальном времени (разговор, так называемый VoIP)
- Передача видео в реальном времени
- Передача файлов
Jingle поддерживают следующие клиенты:
- Psi [1]
- Jabbin
- Empathy
- Jabbim (только передача файлов, в тестировании)
- Kopete (в версиях для KDE3.5, а также для KDE 4.2 и выше)
- Spark (только для Windows, возможно для Mac OS X)
- Coccinella
- Google Talk
- Nimbuzz
- Talkonaut
В следующих клиентах Jingle поддерживаетсь только в нестабильных версиях:
При использовании Jingle могут возникнуть следующие проблемы:
- Существуют несколько различных несовместимых спецификаций Jingle
- Если оба пользователя работают из-за NAT, невозможно совершить обход NAT, их сервера не могут служить как прокси для Jingle (на данный момент только Openfire может делать это) и невозможно найти ни одного супернода - связь будет невозможна.
Примечание:
- ↑ Для передачи голоса и видеосигнала на Linux и Mac OS X необходимо установить плагин. Файл libgstprovider.so нужно скопировать в папку "plugins", находящуюся в месте установки Psi (в случае GNU/Linux - /usr/lib/psi/). Если Вы собираете Psimedia самостоятельно, то для сборки необходим GStreamer версии не ниже 0.10.22, а также Speex и некоторые другие библиотеки.