Об'єднання jabber і vkontakte.ru

Прочитавши недавню тему «IM на ВКонтакте», вирішив уважно проштудіювати цю тему і знайти рішення для зручного спілкування в контакті не заходячи на сайт.

Маючи pidgin і жаббер акк на xmpp.ru я захотів отримати всіх друзів з вконтакту в ростер.

Те що вийшло з цього дивимося під палачами

Тому для початку я почав шукати рішення найбільш коротким шляхом - пошуком плагіну для pidgin, щоб використовувати vkontakte як звичайний протокол спілкування. На жаль подібного плагіну я знайти не зміг (

Навіть нічого схожого на розробку. воно і видно, підгін чому то не дуже скаржиться користувачами рунету. Прикро блін.

Тоді я пішов з іншого боку - згадав що протокол jabber сильний не тільки незалежністю від компанії AOL але і такою чудовою річчю як транспорти. Пошуки в інеті мало до чого призвели і тоді я став шукати в групах самого вконтакту і знайшов дуже навіть непоганий проект під неблагозвучною назвою pyvk-t.

На свій jabber сервер я не став встановлювати це ПО, тк у мене використовується OpenFire, до якого дуже проблематично прикручувати які-небудь транспорти якщо вони спочатку не прикручені розробником, тому я пішов шляхом найменшого опору - використовувати готові серваки з транспортами.

На сторінці pyvk-t є невеликий список серваків, що тримають цей транспорт:

eqx.su

hartois.info

games.onego.ru

zoo.dontexist.net

перший з них є оф сервером розробників, на якому постійно тестуються нові версії, через які періодично нічого не працює:Тому методом проб і помилок я прийшов до сервера zoo.dontexist.net, як найбільш стабільного з усіх.

Ще я виявив прикрий косяк pidgin'a - відсутність огляду сервісів джаббер сервера, мабуть багатопротокольність дає про себе знати:(. якщо хто знає - як реалізувати в підгіні огляд сервісів - коменьте плз.

Тому для додавання транспорту я використовував інший jabber клієнт (psi +)

Жмем General — Service Discovery

введіть назву сервера (zoo.dontexist.net)

шукаємо у списку vkontakte.ru transport, правою кнопкою - register. вводимо свій емайл і пароль для доступу вконтакт, тиснемо REGISTER

(для інших клієнтів схема аналогічна)

Після всіх маніпуляцій в нашому ростері з'явиться транспорт вконтакту, відкриємо вікно спілкування з ним і наберемо/login

після чого транспорт «входить» вконтакт

набираємо/get roster UPD

після чого в групу General додадуться всі ваші друзі з вконтакту, треба буде дати всім авторизацію або заздалегідь налаштувати щоб клієнт давав авторизацію всім.

загалом все готово. виходимо з psi заходимо в pidgin, всі контакти видно, все прекрасно працює.

у транспорту є ще деякі налаштування (типу сповіщень про додатки в групи ітд) щоб їх переглянути наберіть/config

щоб змінити її, введіть/config назву _ змінної, 1

1 — true, 0 — false

це моя перша стаття, будь ласка сильно не копайте ногами.