Awesome Open Source
Awesome Open Source

Code Climate

VK4XMPP on Ohloh

Fork Me Now! Spread the project for great good!

VK4XMPP Transport

VK4XMPP представляет собой транспорт¹. Из VK в XMPP ² и обратно. Написан на языке программирования Python (совместим только со второй версией).

На текущий момент транспорт не развивается. Осуществляется только поддержка существующего решения.

Возможности:

  • Аватары у пользователей (во vCard и при входе в сеть, по стандарту XEP-0153).
  • Long Poll (обо всех событиях пользователь уведомляется незамедлительно).
  • Поддержка групп (меток для друзей ВКонтакте) в ростере.
  • Поддержка конференций (групповых чатов).
  • Отправка изображений в сторону транспорта (XEP-0071: XHTML-IM).
  • Статусы прочтения сообщений (XEP-0333: Chat Markers).
  • Возможность передачи текстового статуса пользователя во ВКонтакте и в Jabber.
  • Вложения в сообщениях (только приём).
  • Пересланные сообщения (и вложения в них).
  • Прием и отправка сообщений.
  • Авторизация по паролю или ключу «access-token», выдаваемому ВКонтакте.
  • Список друзей в ростере.
  • Поддержка vCard для контактов.
  • Добавление в ростер новых, недавно добавленных друзей автоматически (в случае, если пользователь транспорта в это время был в сети, иначе следует вручную запросить подписку [email protected]).
  • Статистические данные о работе транспорта.
  • Проверка времени последней активности пользователя.
  • Настройка транспорта пользователем «под себя» посредством AdHoc-команд ³.
  • Отправка изображения капчи по стандарту XEP-0158 (поддерживается в Tkabber).
  • Администрирование посредством AdHoc-команд.
  • Поддержка плагинов.

Отличия от pyvk-t:

  • Транспорт не хранит паролей
  • Транспорт не парсит страницы, а использует API ВКонтакте

Список поддерживаемых XEP:

  • XEP-0012 (Last Activity).
  • XEP-0030 (Service Discovery).
  • XEP-0039 (Statistics Gathering).
  • XEP-0045 (Multi-User Chat).
  • XEP-0050 (Ad-Hoc Commands).
  • XEP-0054 (vcard-temp).
  • XEP-0066 (Out of Band Data).
  • XEP-0071 (XHTML-IM).
  • XEP-0077 (In-Band Registration).
  • XEP-0153 (vCard-Based Avatars).
  • XEP-0085 (Chat State Notifications).
  • XEP-0091 (Legacy Delayed Delivery).
  • XEP-0092 (Software Version).
  • XEP-0100 (Gateway Interaction).
  • XEP-0158 (CAPTCHA Forms).
  • XEP-0184 (Message Delivery Receipts).
  • XEP-0199 (XMPP Ping).
  • XEP-0333 (Chat Markers).

Почему VK4XMPP:

В конце 2013 года администрация «ВКонтакте» приняла решение отказаться от официальной поддержки протокола XMPP. Это событие было воспринято пользователями по-разному. Тем, кто уже был знаком с XMPP, его возможностями и удобством некоторых клиентов, это не понравилось.

«VK4XMPP», подоспевший прямо к остановке XMPP-сервера «ВКонтакте», выполнявшего роль пересылки сообщений из/в социальную сеть, был тепло принят бывшими пользователями официального сервиса. С самого момента первого релиза транспорт предоставлял намного больше возможностей, чем бывший официальный вариант.

Причины попробовать VK4XMPP:

  • Удобство: чтобы использовать VK4XMPP вам нужен XMPP-клиент и jabber-аккаунт. Клиентов очень много и все разные. Любой найдёт что-то, что ему понравится.
  • Скорость работы: VK4XMPP использует прямые HTTP-запросы к API «ВКонтакте», которые, в основном, не превышают и килобайта.
  • Экономия трафика: Несмотря на большой расход трафика на присутствия в XMPP, ваш XMPP-клиент передаст в десятки раз меньше данных, нежели браузер.
  • Экономия оперативной памяти устройства: Вы когда-нибудь задумывались, сколько памяти «съедает» браузер? Посмотрите. А теперь посмотрите на XMPP-клиент. Браузер — гораздо более сложная программа, чем XMPP-клиент. Оставьте чаты специализированному софту.
  • Вы параноик: Вы видите опасность раскрытия личных данных везде и всюду, но всё же пользуетесь социальной сетью (вероятно, под другим именем, ведь вы параноик). Что, по-вашему, безопаснее? Простой XMPP-клиент или же браузер? Помимо этого вы можете пропускать зашифрованные сообщения через jabber и сервера ВКонтакте с использованием OTR. Поддержка OTR не требуется от транспорта. Для этого вам и вашему собеседнику нужен клиент с поддержкой OTR, например, Psi+ или Gajim.

Причины сбежать в ужасе:

  • Сложная форма регистрации: Как ни крути, а регистрация (при условии наличия Jabber ID) на транспорте состоит аж из 3-х пунктов! Вы потратите целую минуту на регистрацию, а может даже две!
  • Отсутствие некоторых возможностей: К сожалению, не всё можно реализовать в текущем варианте XMPP и состоянии XMPP-клиентов. Так например, вы не сможете переслать сообщения другу от другого пользователя. И это не всё.
  • Вы параноик: Бегите и не возвращайтесь. Никогда.

Как вы можете помочь:

  1. Вы — программист. Каждая функция vk4xmpp содержит строки документации. Также есть пример написания плагина, описывающий все возможности системы плагинов. При желании, написать что-то не составит труда. Pull-request'ы приветствуются.

  2. Вы — активный пользователь социальной сети «ВКонтакте» или Jabber, которому просто нравится транспорт. Приглашайте своих друзей попробовать VK4XMPP!

  3. Вы — пользователь, которому просто нравится проект и/или определённый запущенный сервис. Транспорты, впрочем как и сервера (в основном), запущены энтузиастами на некоммерческой основе, люди оплачивают их из своего кармана. Сделайте пожертвование своему серверу! (администраторам: в файле конфигурации для этого есть поле AdditionalAbout)

Список серверов, где установлен VK4XMPP:

  • vk.j-cool.ru
  • vk.opiums.eu
  • vk.yorulez.ru

Полный список можно посмотреть здесь.

Благодарности:

  • Алексею «Snake» Нежданову, за библиотеку xmpppy.
  • Алексею «Alexey CV», бывшему администратору jabberon.ru, за donate, продвижение посредством создания тем на 4pda, содание FAQ, написание большинства инструкций и тестирование.
  • Al Korgun, за помощь с кодом.
  • Armageddon, за сервера, тестирование, идеи и, конечно же, donate.
  • boriz, за donate.
  • diSabler, за патчи, форму капчи, логотип, donate.
  • Manazius, за инструкции, общение со смертными.
  • nsof, за donate, идеи, тестирование.
  • Santiago26 за тестирование ранних релизов, статью на Хабре.
  • aawray, за (xmpp-monitor).

А также всем, кто как-либо участвовал в жизни транспорта. Без вас не было бы транспорта таким, какой он есть.

Полный список разработчиков можно посмотреть здесь.

Установка (для серверов):

Настройка jabber-серверов:

Регистрация:

Часть инструкций была безнадёжно утеряна. Не стесняйтесь сообщить, если напишете или найдёте недостающую.

Обсуждения:

Другое:

Также рекомендуется заглянуть в Wiki.

Запуск: python ./gateway.py

Обратиться к разработчику в сети jabber можно в конференции [email protected].

WTF:

  1. Транспорт — Программное Обеспечение, обеспечивающее связь между различными протоколами мгновенного обмена сообщениями. Распространены в XMPP (Jabber).

  2. XMPP (Jabber) — Расширяемый протокол мгновенного обмена сообщениями (Wikipedia/XMPP).

  3. К сожалению, нет нормальной инструкции; см. JabberON/AdHoc и JaWiki/AdHoc.

© simpleApps, 2013 — 2017.


Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
python (50,849
gateway (97
xmpp (78
transport (38
vk (38
jabber (25
vkontakte (25

Find Open Source By Browsing 7,000 Topics Across 59 Categories