Прочитавши недавню тему «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
це моя перша стаття, будь ласка сильно не копайте ногами.