Добавление PyVK-t-транспорта к ejabberd

()

Мы уже писали про добавление ICQ, J2J и MRIM-транспортов к jabber-серверу на базе ejabberd. Сейчас мы продолжим эту тему и расскажем как добавить PyVK-t-транспорт, позволяющий пользователям Jabber обмениваться сообщениями с пользователями популярной в России социальной сети vkontakte.ru (PyVK-t расшифровывается как Python VKontakte Transport).

Итак добавить PyVK-t-транспорт к jabber-серверу на базе ejabberd, работающего под управлением Ubuntu Server 9.04 и обслуживающего домен our_firm.com (JID добавляемоего транспорта будет «pyvk-t.our_firm.com»), можно следующим образом:

Шаг первый. Устанавливаем необходимые пакеты:

apt-get install subversion python-xmpp

Шаг второй. Получаем последнюю версию транспорта из SVN-репозитория:

svn checkout http://pyvk-t.googlecode.com/svn/trunk/ /root/pyvk-t-read-only

Шаг третий. Создадём директории для хранения данных о пользовательских аккаунтах и отладки:

mkdir -p /var/spool/{cache,coockies,datadir,dumps}

Шаг четвёртый. Открываем в редакторе файл «/etc/ejabberd/ejabberd.cfg» и добавляем в секцию «listen» следующий фрагмент:

  %% PyVK-t Transport 
  {8885, ejabberd_service, [ 
                  {ip, {127, 0, 0, 1}}, 
                  {access, all}, 
                  {shaper_rule, fast}, 
                  {host, "pyvk-t.our_firm.com", [{password, "VerySecreT"}]} 
          ]},

Здесь мы предполагаем, что для взаимодействия между транспортом и сервером будет использоваться порт 8885 и пароль для связи сервера с транспортом "VerySecreT". Если у вас другие параметры - внесите соответствующие правки. После внесения правок перезапустите jabber-сервер:

ejabberdctl restart

Шаг пятый. Создаём файл «/root/pyvk-t-read-only/pyvk-t_new.cfg» следующего содержания:

[general] 
transport_jid: pyvk-t.our_firm.com
server: localhost 
secret: VerySecreT
port: 8885 
# JID админа, ему доступны дополнительные команды 
admin: admin@our_firm.com 

#всякие дополнительные фичи 
[features] 
#отображение аватарок. Раcкомментируйте для включения 
avatars: true 
sync_status: true 
#путь к кэшу аватарок. Раскомментируйте, чтобы включить. 
cache_path: /var/spool/pyvk-t/cache 
#управление ростером 
roster_management: true 
#поповещения о новых группах и прочем сообщением 
feed_notify: true 
#поддерживать статус online (экспериментально) 
#keep_online: true 
#сохранять cookies в указаный каталог 
cookies_path: /var/spool/pyvk-t/cookies 
#высылать прямые ссылки на аудио/видео 
resolve_links: true 
#директория для хранения данных 
datadir: /var/spool/pyvk-t/datadir 

[debug] 
#Путь для сохранения страниц, вызвавших ошибки. Оставьте пустым или закомментируйте для отключения. 
dump_path: /var/spool/pyvk-t/dumps 

Подробное описание опций файла конфигурации можно найти в файлах «README.pyvk-t_new» и «pyvk-t_new.cfg.example» в дистрибутиве транспорта.

Запустим транспорт командой:

PYVKT_CONFIG=/root/pyvk-t-read-only/pyvk-t_new.cfg PYTHONPATH=/root/pyvk-t-read-only/ /usr/bin/twistd -y /root/pyvk-t-read-only/pyvkt_new.tac -l /var/log/pyvk-t.log -r epoll

Здесь переменная «PYVKT_CONFIG» указывает на используемый файл конфигурации, ключ «-l» указывает на файл журанал, а явное указание «PYTHONPATH» требуется для того, чтобы транспорт смог найти необходимые программные модули. Чтобы транспорт запускался автоматически при старте системы, нужно добавить эту команду в файл «/etc/rc.local».

На этом всё! Теперь вы, запустив ваш jabber-клиент, подключившись к серверу, выбрав в меню обзор сервисов и найдя в нём PyVK-t, сможете зарегистрироваться на нём, используя вашу учётную запись vkontakte.ru, после чего начинайте общаться с пользователями VKontakte.

Приятной вам работы!

Корректор: Регина Васильева (reggi86@mail.ru)

Ключевые слова: pyvk-t, ejabberd, ubuntu, jabber, vkontakte.ru, .

Комментарии:

Anonymous 2009-10-16 11:47:25 (#)

почему у opensource программ всегда такие страшные не звучные названия... пайВК-Т

MooSE 2009-10-16 17:09:29 (#)

Цитата:

почему у opensource программ всегда такие страшные не звучные названия... пайВК-Т


Ну... Мне больше нравится "пиВК-т". А вообще это ведь всего лишь аббревиатура...

morbo 2010-08-12 13:23:19 (#)

Вполне себе нормальное название Пи(тон)ВК(онтакте)-Т(ранспорт).
Новый комментарий



© 2006-2016 Вадим Калинников aka MooSE