vk4xmpp
vk4xmpp copied to clipboard
Jabber-транспорт для ВКонтакте (A jabber gateway to the VK social network)
Fork Me Now! Spread the project for great good!
Donate:
- Dogecoin: DEZWbJaCi47cY8ZGLh1oH7QXHx2ntEgp4X
VK4XMPP Transport
VK4XMPP представляет собой транспорт¹. Из VK в XMPP ² и обратно. Написан на языке программирования Python (совместим только со второй версией).
На текущий момент транспорт не развивается. Осуществляется только поддержка существующего решения.
Возможности:
- Аватары у пользователей (во vCard и при входе в сеть, по стандарту XEP-0153).
- Long Poll (обо всех событиях пользователь уведомляется незамедлительно).
- Поддержка групп (меток для друзей ВКонтакте) в ростере.
- Поддержка конференций (групповых чатов).
- Отправка изображений в сторону транспорта (XEP-0071: XHTML-IM).
- Статусы прочтения сообщений (XEP-0333: Chat Markers).
- Возможность передачи текстового статуса пользователя во ВКонтакте и в Jabber.
- Вложения в сообщениях (только приём).
- Пересланные сообщения (и вложения в них).
- Прием и отправка сообщений.
- Авторизация по паролю или ключу «access-token», выдаваемому ВКонтакте.
- Список друзей в ростере.
- Поддержка vCard для контактов.
- Добавление в ростер новых, недавно добавленных друзей автоматически (в случае, если пользователь транспорта в это время был в сети, иначе следует вручную запросить подписку id@transport).
- Статистические данные о работе транспорта.
- Проверка времени последней активности пользователя.
- Настройка транспорта пользователем «под себя» посредством 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-клиентов. Так например, вы не сможете переслать сообщения другу от другого пользователя. И это не всё.
- Вы параноик: Бегите и не возвращайтесь. Никогда.
Как вы можете помочь:
-
Вы — программист. Каждая функция vk4xmpp содержит строки документации. Также есть пример написания плагина, описывающий все возможности системы плагинов. При желании, написать что-то не составит труда. Pull-request'ы приветствуются.
-
Вы — активный пользователь социальной сети «ВКонтакте» или Jabber, которому просто нравится транспорт. Приглашайте своих друзей попробовать VK4XMPP!
-
Вы — пользователь, которому просто нравится проект и/или определённый запущенный сервис. Транспорты, впрочем как и сервера (в основном), запущены энтузиастами на некоммерческой основе, люди оплачивают их из своего кармана. Сделайте пожертвование своему серверу! (администраторам: в файле конфигурации для этого есть поле 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:
-
Транспорт — Программное Обеспечение, обеспечивающее связь между различными протоколами мгновенного обмена сообщениями. Распространены в XMPP (Jabber).
-
XMPP (Jabber) — Расширяемый протокол мгновенного обмена сообщениями (Wikipedia/XMPP).
-
К сожалению, нет нормальной инструкции; см. JabberON/AdHoc и JaWiki/AdHoc.
© simpleApps, 2013 — 2017.