← All posts tagged Jabber

freefd

Волшебные моменты появляются при заведении google apps для домена. Если на хосте уже живёт jabber-демон какой-либо, например, ejabberd, то после подключения google apps контакты c gmail.com будут недоступны. Всё потому, что при подключении почты для домена из комплекта google apps автоматически подключается и так называемый "Чат", что, по сути своей, jabber-сервер, который обслуживается google. Таким образом, google talk контакты видят, что домен обслуживается посредством google talk, а запросы на коннекты от этого же домена идут с совершенно неизвестных им IP.

Решается проблема элементарно: в панели управления google apps для нужного домена отключается "Чат". Через порядка получасу перезапуск ejabberd вылечивает все gmail.com контакты.

freefd

Ввиду быстро покинувших этот мир ns jrudevels.org, решил отказаться от сторонних сервисов в пользу уже установленного spectrum для транспортов.

В итоге минимальный конфиг для g2j на базе spectrum:

[service]
enable=1
protocol=xmpp
server=127.0.0.1
use_proxy=0
jid=$protocol.freefd.info
password=secret
port=5556
config_interface = /var/run/spectrum/$jid.sock
admins=fd@freefd.info
filetransfer_cache=/var/lib/spectrum/filetransfer_cache
name=GTalk Transport
language=ru
vip_mode=0
only_for_vip=0
pid_file=/var/run/spectrum/$jid.pid

[registration]
enable_public_registration=0

[features]
avatars=1
chatstates=1
statistics=1

[vip-features]

[logging]
log_file=/var/log/spectrum/$jid.log
log_areas=xml;purple

[database]
type=sqlite
database=/var/lib/spectrum/$jid/database.sqlite

[purple]
userdir=/var/lib/spectrum/$jid/userdir
connect_server=talk.google.com

После регистрации транспорта на gmail аккаунт необходимо в его настройках отметить чекбокс "уведомлять о почте", ради чего, это, собственно, и затевалось.

freefd

fd@workstation:~$ host jrudevels.org
;; connection timed out; no servers could be reached

но при этом

Domain Name:JRUDEVELS.ORG
Created On:14-Jan-2005 14:15:03 UTC
Last Updated On:28-Mar-2011 15:32:24 UTC
Expiration Date:14-Jan-2015 14:15:03 UTC

Господа, я правильно понимаю, что jrudevels таки тихонечко сдохло?

freefd

Руководитель юридического сектора внезапно попросила создать для её менеджеров закрытую конференцию на корпоративном джаббер-сервере. На вопрос "а как же ваши любимые msn/icq/skype?" прозвучало неожиданное "неудобно".
Ребята, кажется, это победа.

freefd

Как говорится, "ёбаный стыд", сижу патчу Net::XMPP::Connection от бага 4-летней давности о невозможности резолвить srv записи _xmpp-client._tcp. И это при

fd@workstation:~$ perl -V:version
version='5.12.3';
fd@workstation:~$ perl -MNet::XMPP -e 'print $Net::XMPP::VERSION'; echo
1.02

freefd

Интересно было бы знать каким образом jabber.ru снимает через cacti данные о количестве сессий, графики stats.jabber.ru
Я пока лишь вижу решение добавлением custom oid к snmpd, оный по exec запускает скрипт, которые посылает станзу





серверу, и возвращает количество items. Ну а далее обычно добавляем custom oid в cacti и рисуем графики.
Минусы — костыльность, необходимость наличия администраторских прав на jabber-сервере у аккаунта для скрипта. А вот вдруг есть более простое решение?

freefd

порой загадочное "unhandled callback exception on event (error, AnyEvent::XMPP::Client=HASH(0x93e9ca8), AnyEvent::XMPP::IM::Account=HASH(0x93e9e78) AnyEvent::XMPP::Error::Exception=HASH(0x9d64de8)): send_message: Couldn't get connected account for sending at /usr/local/share/perl/5.10.1/AnyEvent/XMPP/Client.pm line 345." на самом деле говорит лишь о банальной недостаче Net::SSLeay.

strace творит чудеса!

freefd

как показали сегодня исследования в среде ejabberd+ad+shared roster, работа jabber-клиентов в виде корпоративного voip/video-call клиента крайне под вопросом. из опробованых были

psimedia/psi+ linux/windows
pidgin linux/windows
gajim windows
qip windows
empathy linux

все последних stable версий. исключаю psi-plus, оно вечное dev.
результаты тестов закончились плачевно:

psi+ (windows) -> pidgin (linux) = success
pidgin (linux) -> psi+ (windows) = fail (виню NAT)
pidgin (windows) -> pidgin (linux) = fail (на win-платформе не нашёл возможностей voip)
qip (windows) -> pidgin (linux) = ? (звонок приходит, звука нет. звонящая сторона не видит поднятия трубки)
empathy (linux) -> pidgin (linux) = success
gajim (windows) -> pidgin (linux) = fail (на win-платформе не нашёл возможностей voip)

завтра, видимо, будет продолжение вариаций, попытка видео была у empathy, толку ноль.

freefd

самое время похвалить ребят. на данный момент, как мне кажется, они сделали довольно большую работу. про код и оптимизацию пока лучше промолчать :)
@maj, @ivan101, @zet, @VampiRUS, @rion, @Disabler, @Dealer-WeARE, @tux-den cпасибо вам всем.
если кого забыл, крайне извиняюсь, но всех помнит code.google.com ;)

freefd

openfire || ejabberd || prosody
задачи: развернуться из коробки, отсутствие геморроя с настройкой/дебагом, быть стабильным, не жрать cpu, памяти до 512 Mb, виртуальные домены. Варианты?

freefd

только хотел написать пост про "раз никото практически не пользуется point@freefd.info, как все кричали до, то выключу его нафек" и тут внезапно habrahabr.ru -> ctrl+f -> freefd.info от товарища @bighouse. теперь даже и не знаю, как-то некорректно с моей стороны теперь было бы его удалять...