мая 16 2009 07:33 пп

Настройка транспорта в mail.ru агент для Jabber сервера Openfire

/screen/jabber_logo_2.png

Есть люди котоые не пользуются аськой, джаббером или чем либо еще, предпочитая майл.ру агент в качестве уведомлятора о новой почте и общения с немногочисленными знакомыми, есть и у меня такие знакомые, для общения с ними и был прикручен транспорт для майл.ру агента на мой джаббер сервер (подробнее о нем по адресу http://sudouser.com/zapushhen-jabber-server-sudousercom.html ). В этой статье описано как настроить транспорт mrim в качестве стороннего компонента для сервера Openfire, в сети никаких подробных гайдов на эту тему я не нашел, но все оказалось очень просто, и времени заняло около 10 минут. На этом собственно можно перейти непосредственно к описанию настройки. Установка описана для дистрибутива Ubuntu, но подойдет для любых других дистрибутивов, разве только команды для пакетных менеджеров будут другими.

Для корректной работы транспорта mrim  необходим pythonи пара модулей к нему, установим их

Код:

aptitude install python2.5 python-profiler python-xmpp python-pyxmpp

Затем скачаем сам траспорт mrim

Код:

svn co http://svn.xmpp.ru/repos/mrim/ mrim

Далее отредактируем конфиги mrim’a

Код:

cd mrim
cp mrim.conf.example mrim.conf

Отедактируйте файл mrim.conf до вида представленного ниже, заменив нужные параметры на свои

Код:


[main]
# имя поддомена для транспорта, обязано быть в DNS
name = mrim.sudouser.com
# пароль для регистрации транспорта как компонента на джаббер сервере
password = mega_secret
# -- optional --
# администратор сервиса
admins = user@jabber.domain
# -- defaults --
# ваш джаббер сервер на котором будет работать транспорт
server = sudouser.com
# имя которое будет видно пользователям при просмотре списка сервисов джаббер сервера
disconame = Mail.ru agent Transport
# порт на котором джаббер сервер слушает дополнительные компоненты
port = 5275
# дополнительные опции....
reconnect = on
probe = on
show_version = on
show_os = on
psyco = off
# -- http proxy for avatars (default is none) --
# http_proxy = http://localhost:3128
# -- PID file (default is none) --
pidfile = /var/run/mrim.pid
[profile]
type = xml
dir = /var/spool/mrim
[logger]
logfile = /var/log/mrim/mrim.log
loglevel = info
# --- logger defaults ---
timestamp = %%d/%%m/%%y-%%H:%%M:%%S
xml_formatting = off

Теперь можно перейти к настройке джаббер сервера, откройте веб интерфейс openfire, там Server Settings, затем External Components, включите поддержку внешних компонетов, задайте пароль который вы указали при редактирования конфига mrim и сохраните. Затем чуть ниже добавьте транспорт в список разрешенных компонентов, или же просто разрешите коннект к серверу любых внешних компонентов по паролю указанному выше, сохраните настройки.

Теперь можно попробовать запустить транспорт, создадим необходимые директории для логов и профайлов пользователей и запустим транспорт.

Код:


mkdir /var/spool/mrim
mkdir /var/log/mrim
./mrim.sh -c mrim.conf

Если все верно то вы увидите примерно следующее

Код:


16/05/09-18:11:58 Starting the caching resolver in a separate thread.
16/05/09-18:11:58 Connecting to XMPP server

Так же проверить работает ли транспорт можно в веб интерфейсе Openfire перейдя в раздел Sessions => Component Sessions
там должен быть наш транспорт.
Остается только перезайти в джаббер, и открыв список сервисов зарегистрироваться в транспорте и начать его использование. Транспорт имеет настройки уведомлений о новой почте, и отправку смс, которая у меня не заработала в клиенте Adium но может у вас выйдет…
На этом настройка закончена, добавьте mrim в автозагрузку на сервере и пользуйтесь.




14 комментариев »


14 комментариев to “Настройка транспорта в mail.ru агент для Jabber сервера Openfire”

  1. mocart on 05 Авг 2009 at 07:23 #

    Доброго времени суток я не могу подцепить транспорт майл-адента, при запуске он выдаёт следующее:

    root@services:~/mrim# ./mrim.sh -c mrim.conf
    /usr/lib/python2.6/dist-packages/xmpp/auth.py:24: DeprecationWarning: the sha module is deprecated; use the hashlib module instead
    import sha,base64,random,dispatcher,re
    /usr/lib/python2.6/dist-packages/xmpp/auth.py:26: DeprecationWarning: the md5 module is deprecated; use hashlib instead
    import md5
    05/08/09-17:16:30 Starting the caching resolver in a separate thread.
    05/08/09-17:16:30 Connecting to XMPP server

    и на этой строке он зависает, стоит пока не завершишь ctrl c

    после выводиться след сообщение:
    ^C05/08/09-17:18:40 Got SIGINT, closing connections
    05/08/09-17:18:40 Shutdown
    Exception in thread resolver (most likely raised during interpreter shutdown):
    Traceback (most recent call last):
    File «/usr/lib/python2.6/threading.py», line 525, in __bootstrap_inner
    File «/usr/lib/python2.6/threading.py», line 477, in run
    File «/root/mrim/src/resolver.py», line 31, in resolver
    : ‘NoneType’ object has no attribute ‘Empty’

    ОС Ubuntu server 9.04 jabber — openfire(последняя на данный момент)
    далее мой конфига mrim.conf
    [main]
    name = mrim.jabber
    password = password
    # — optional —
    admins = administrator@jabber
    # — defaults —
    server = localhost
    disconame = Mail.ru IM
    port = 5275
    reconnect = on
    probe = on
    show_version = on
    show_os = on
    psyco = off
    # — http proxy for avatars (default is none) —
    # http_proxy = http://localhost:3128
    # — PID file (default is none) —
    pidfile = /var/run/mrim.pid

    [profile]
    type = xml
    dir = /var/spool/mrim

    [logger]
    logfile = /var/log/mrim/mrim.log
    loglevel = info
    # — logger defaults —
    timestamp = %%d/%%m/%%y-%%H:%%M:%%S
    xml_formatting = off

    в настройках самого сервера всё нормально, пакеты python2.5 python-profiler python-xmpp python-pyxmpp установил, интересно в чём проблема?

  2. Stepanoff on 05 Авг 2009 at 10:29 #

    Проверьте наличие модулей для питона, md5 и sha.

  3. mocart on 06 Авг 2009 at 09:33 #

    если вы имели ввиду следующие пакеты:
    python-pyisomd5sum python2.5-pyisomd5sum python2.6-pyisomd5sum python-shapely

    но после них всё равно вышеописанная ошибка, а именно зависает на:

    06/08/09-19:31:28 Starting the caching resolver in a separate thread.
    06/08/09-19:31:28 Connecting to XMPP server

    и стоит

  4. mocart on 06 Авг 2009 at 10:07 #

    и ещё, я тут подумал, может для интерпритации нужно использовать версию питона 2.5 а не как в моём случае 2.6 как можно указать линуксу чтобы они использловал 2.5?

  5. capsis on 14 Ноя 2009 at 23:18 #

    Добрый день.
    Спасибо за статью, все получилось.
    Но есть один вопрос: как добавить mrim в автозагрузку?
    Пол дня уже просидел, а результата нету.

  6. Stepanoff on 14 Ноя 2009 at 23:27 #

    Прописать в стартовые скрипты системы. У меня прописана в /etc/rc.local строчка cd /usr/mrim/ && ./mrim.sh -c mrim.conf -d

  7. ruslan on 20 Фев 2010 at 05:43 #

    Здравствуйте,
    Такая же проблема как и у mocart:

    jabber# ./mrim.sh -c mrim.conf
    20/02/10-05:39:06 Starting the caching resolver in a separate thread.
    20/02/10-05:39:06 Connecting to XMPP server

    И после этого ничего, как же побороть эту проблему?

  8. Stepanoff on 20 Фев 2010 at 11:40 #

    Настроить джаббер на прием соединений от плагинов

  9. ruslan on 20 Фев 2010 at 14:22 #

    Запущен PyICQ-t транспорт, без проблем работает, думаю соединение с плагинами выполняется успешно. С ejabberd-2.0.3 mrim работал чудесно, а тут никак не выходит
    OS: freeBSD 6.3
    server: ejabberd-2.0.5

  10. ruslan on 20 Фев 2010 at 14:32 #

    Вот мой mrim.conf:
    [main]
    name = mrim.my_jabber-server.com
    password = secret
    # — optional —
    admins = admin@my_jabber-server.com
    # — defaults —
    server = my_jabber-server.com
    disconame = Mail.ru IM
    port = 5275
    reconnect = on
    probe = on
    show_version = on
    show_os = on
    psyco = off
    # — http proxy for avatars (default is none) —
    # http_proxy = http://localhost:3128
    # — PID file (default is none) —
    pidfile = /var/run/mrim.pid

    [profile]
    type = xml
    dir = /var/spool/mrim

    [logger]
    logfile = /var/log/mrim/mrim.log
    loglevel = info
    # — logger defaults —
    timestamp = %%d/%%m/%%y-%%H:%%M:%%S
    xml_formatting = off

    кусок из ejabberd.cfg:

    %% MRIM Transport
    {5275, ejabberd_service, [{access, all},
    {host, [«mrim.my_server.com»],
    [{password, «secret»}]}]},

    mrim.my_jabber-server.com резольвиться

  11. Stepanoff on 20 Фев 2010 at 18:02 #

    Может послушать tcpdump’ом его при старте, он вообще соединяется?

  12. ShineVit on 16 Апр 2010 at 11:06 #

    Спасибо автору за статью!

    А как настроить mrim транспорт под Windows для Openfire ?

  13. ShineVit on 16 Апр 2010 at 12:53 #

    Настроил mrim модуль для Openfire под Windows.
    Переписал mrim.sh на mrim.bat

    После запуска mrim.bat в консоли вижу только:
    20/02/10-05:39:06 Starting the caching resolver in a separate thread.
    20/02/10-05:39:06 Connecting to XMPP server

    В консоли администратора Openfire в Component Sessions вижу мой внешний модуль!
    Но в списке Обзор служб нет транспорта с именем mrim !?

    В чем может быть проблема?

  14. Максим Степанов on 16 Апр 2010 at 17:37 #

    Ничем не помогу, не думал настраивать подобное на винде, по моему она только под десктоп, но никак не под сервер. Автор mrim не имеет своего сайта, все обсуждения были на сайте jabber.ru.

Trackback URI | Comments RSS

Leave a Reply

You must be logged in to post a comment.


« | »



Server load average: 0.07, 0.04, 0.00
Server uptime: 444 days, 17:56
Your IP is: 54.224.210.130.