Установка pyICQ-t и настройка взаимодействия с ejabberd

()

Допустим что у нас есть jabberd-сервер на ejabberd и мы хотим добавить к нему ICQ-транспорт. На данный момент существуют два транспорта ICQ для jabber: JIT и PyICQ-t. Первый не отличается большим функционалом и считается устаревшим, потому лучше использовать PyICQ-t. Далее будет показано как можно настроить взаимодействие PyICQ-t и ejabberd.

Как обычно начнём с начальных условий. В этот раз у нас есть сервер под управлением Ubuntu Server 8.10 и запущенный на нём ejabberd. Имя jabber-сервера - our_firm.com.

Задача: добавить к jabber-серверу ICQ-транспорт.

Приступаем к решению. Для начала установим PyICQ-t:

apt-get install pyicqt

Далее открываем в редакторе файл /etc/ejabberd/ejabberd.cfg и снимаем комментарии со строк:

  %%{5555, ejabberd_service, [
  %%                        {ip, {127, 0, 0, 1}},
  %%                        {access, all},
  %%                        {shaper_rule, fast},
  %%                        {hosts, ["icq.localhost", "sms.localhost"],
  %%                                   [{password, "secret"}]}
  %%                        ]},

Кроме того полезно заменить localhost на имя нашего сервера (в данном случае - our_firm,com) и сменить пароль на что-нибудь более серьёзно. После всех правок секция примет вид:

  {5555, ejabberd_service, [
                          {ip, {127, 0, 0, 1}},
                          {access, all},
                          {shaper_rule, fast},
                          {hosts, ["icq.our_firm.com", "sms.our_firm.com"],
                                     [{password, "p4ssw0rd"}]}
                          ]},

После этого сохраняем файл и перезапускаем ejabberd:

invoke-rc.d ejabberd restart

Теперь переходим к настройке PyICQ-t. Для этого открываем в редакторе файл /etc/pyicqt.conf.xml и начинаем по одному менять необходимые параметры. Начинаем с параметра jid:

<!-- <jid>icq.example.org</jid> -->
<jid>icq.our_firm.com</jid>

Потом указываем mainServerJID:

<!-- <mainServerJID>our_firm.com</mainServerJID> -->
<mainServerJID>our_firm.com</mainServerJID>

Далее настраиваем авторизацию транспорта на нашем ejabberd:

<!-- <port>5437</port> -->
<port>5555</port>

<!-- <secret>secret</secret> -->
<secret>p4ssw0rd</secret>

И наконец остаётся лишь настроить язык и кодировку:

<!-- <lang>en</lang> -->
<lang>ru</lang>

<!-- <encoding>iso-8859-1</encoding> -->
<encoding>cp1251</encoding>

После этого остаётся только перезапустить PyICQ-t:

invoke-rc.d pyicqt restart

Дальше остаётся только подключиться к jabber-серверу, запустить обнаружение сервисов, найти ICQ-транспорт и можно подключаться.

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

Ключевые слова: jabber, transport, ejabberd, pyICQ-t, icq.

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

yurmax 2009-01-22 04:35:56 (#)

ога. а теперь в свете произошедшего с icq как его заставить таки работать? :-(
на http://code.google.com/p/pyicqt/ пока официально тишина.
только наши шумят.

MooSE 2009-01-22 06:49:30 (#)

А вот ХЗ. Говорят что у буржуев итак всё работает...

Я вот у себя тоже разворачивал в надежеде что хоть это меня спасёт. Не спасло...:(

netjedi 2009-01-22 15:46:28 (#)

на оффсайте совсем не тишина, наоборот даже:
http://code.google.com/p/pyicqt/issues/detail?id=156

MooSE 2009-01-22 17:10:08 (#)

Ну значит ждём новой версии:)

yurmax 2009-01-30 05:18:15 (#)

исходя из того что старые клиенты снова заработали, таки провокация aol-a не очень и удалась. как следствие есть шансы что и этот debian-овский пакет снова заработает.

MooSE 2009-01-30 23:46:22 (#)

Да вроде как уже и заработал:)

yurmax 2009-01-31 05:17:24 (#)

кто бы вот еще подсказал как победить отдаваемые гейтом номера аськи в клиенты виде icq_number@icq.myhost.
работать жеж невозможно..
как бы отдачу в нормальный вид привести с выводом ника?

MooSE 2009-01-31 06:11:13 (#)

Так он вроде нормально отдаёт. Другое дело что не все клиенты userinfo запрашивают автоматически. Но это уже претензия к клиенту.:)

yurmax 2009-01-31 19:54:11 (#)

а то что в ростере номер=нику эт тоже клиент?
с клиентами каюсь. пробовал только квип и миранду.
в квипе беда. в миранде не всё потеряно. есть в userinfo кнопка которая определит ник. но опять же. массово такое не выйдет. придется для каждого тыкать.

MooSE 2009-02-01 06:11:01 (#)

Я пользователь PSI. Когда сам сидел через транспорт он нормально ники выдёргивал:)
Новый комментарий



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

Юридический адрес купить Москва и область здесь;отличные цены. металлочерепица цена в Санкт Петербурге