📜 ⬆️ ⬇️

VKontakte without jabber and again with him

This is a story about how to use VK chat in the messenger that you like.
Let this news for several months, but not always good news in time receive due attention.
In the middle of the article is a manual for admins of Jabber servers, in the end - an appeal to Pythonists.
References to proofs.

As you know, in early September, VKontakte finished supporting XMPP to access private messages. Jabber community resented and decided this question differently.

Picture about Jabber and VKontakte from Pavel Durov:


Simultaneously with the closure of XMPP, VK chat has ceased to be available for many instant messengers.
Let's call these "lucky ones."

Mobile

iOS, Android: Talkonaut, Mail.ru Agent, Jasmine IM, IM +, Imo.im, Bombus, Jimm (Aspro, Multi), all old J2ME clients (including the ones mentioned above), all Symbian, Maemo & Meego clients (Bayan ICQ, QIP PDA 2xxx, etc, except qutIM) and many others

Desktop

Pidgin, Adium, Miranda NG, old versions of QIP (QIP Infium and QIP 2010), qutIM *

Web clients

IM + Web, IMO, Jappix // there seems to be no other for an arbitrary XMPP account?

')
Before the advent of Jabber, there was pyvk-t transport on VKontakte. Its development was actively pursued until the appearance of the native XMPP on VKontakte in the 2010th year. By 2013, it turned out to be abandoned, and the last developers who were digging it were developing, reported that in recent versions the transport worked with errors and they did not know its condition.
The issue of using VC messages without having to open the browser has risen with a new force.

1. Native Protocols (VK API)


At the moment, VKontakte messages are supported by three well-known multi-protocol clients, two of them are Windows only.
These are QIP 2012 (QIP IM), Miranda NG and qutIM. If you are lucky to love one of these messengers, then you probably will not need XMPP for VKontakte.
The protocol in QIP was made long before XMPP was canceled,
the protocol for Miranda appeared literally a month ago (strongly after XMPP was closed), rewritten from scratch.
The protocol in qutIM was implemented for quite a long time (almost earlier than in QIP?).

From mobile clients - only QIP IM (for iOS and Android) has support for VK messages. Moreover, applications for both platforms support only messages (photo support, audio, transfers, etc. are not implemented) and will not be actively developed in the foreseeable future.
A month ago, the M ++ messenger appeared and is actively developing, which supports XMPP, SMS and VKontakte (via API).

2. Transport VK4XMPP


As I already mentioned, the pyvk-t transport was abandoned, irrelevant, and did not implement additional VKontakte messages — transport developers, and the community as a whole, expected this in their native implementation from VKontakte. Did not happen.

Therefore, when in 2013, the year VKontakte closed XMPP, it turned out to be easier to write a new transport, from scratch.
So VK4XMPP appeared.
Friendship python and XMPP continues. But not just python.

A little later, the second transport appeared - VKXMPPGATE. Github Description . Information about the author .
It is written in Delphi / Pascal and probably works faster. However, the last commit was made 3 months ago. Therefore, in this article we will discuss VK4XMPP, as the only active project.

According to the author, VK4XMPP is a transport from VK to XMPP and back. Unlike the previously existing pyvk-t, it does not parse the page, but works entirely with the VKontakte API, which significantly increases its reliability and stability. Transport does not store passwords, but uses access-token for authorization.

Currently, the transport boasts the following features:

Not bad, right? I remember that the XMPP server from VKontakte could not boast of such features.

check in


In general terms, the registration process for vehicles is always the same. Instructions for connecting popular customers:
Psi + | Tkabber | Gajim | Miranda | QIP | jTalk | Jimm | JasmineIM | Pidgin
Rays of good administration jabberon.ru and other enthusiasts.

After successful registration in your jabber account contacts of all friends with their names and online status from VKontakte will appear.
In case of problems, the author recommends to cancel the registration and pass it through Psi +.

To register, you need to select one of the existing servers. A list of available servers can be found in the wiki project on github.

Vehicle installation


If you have a jabber server, you can pick up the transport at your place. Then even the VK token will be under your control. Jabber server and Python 2.7 are required . The remaining libraries are contained in the repository.

It is recommended to use git for installation and updates.
git clone github.com/mrDoctorWho/vk4xmpp.git 

Next you need to copy the default config and change a few values.
Go to the folder with the transport and copy the configuration file:
 cd vk4xmpp cp Config_example.txt Config.txt 


The config is well commented, and there are several installation instructions:
Ubuntu / Debian / etc + Ejabberd
Arch + Prosody
Prosody

For a snack, if your workloads are quite large, instructions on optimizing the speed of operation and RAM consumption will come in handy.

You can contact the developer for support and other issues in the conference simpleapps@conference.jabber.ru

How can I help you


If you have read this far, then your help would be most welcome.

1. The simplest thing: subscribe to the VK API bug , help the developer get a response from the VK administration. Both VK4XMPP developer and VKXMPPGATE developer encountered this bug.

2. Chat in the conference. Wish features and good luck!

3. Look at open requests and, in particular, about user-friendly behavior. Describe the behavior that you would like.

4. Python-programmers! To be honest, it would be great if someone joins the project. Developers-developers-developers!
However, help with the design (at least icons) will also be very useful;)

Links


VKontakte will disable XMPP support on August 31 - a conversation on Roem with VKontakte comments, my questions to them, as well as comments from the developer QIP SegaZero and MRA Java Bachin .

Proofs as Trillian Miranda qutIM , IM + Web died (mobile late, but switched to API), Imo.im

Do you know rule 34?

Everything is XMPP. There are no exceptions.



VK4XMPP repository on github: github.com/mrDoctorWho/vk4xmpp

Source: https://habr.com/ru/post/178317/


All Articles