Как пройти аутентификацию на XMPP-серверах синхронизации Chrome?

Мне нужно получить открытые в данный момент вкладки пользователя Google Chrome в моем приложении Java (, а не на том же компьютере ). Синхронизация Chrome включена, поэтому текущие вкладки синхронизируются с серверами Google.

Согласно документации синхронизации Chrome это делается через XMPP. Поэтому я предполагаю, что должна быть возможность подключиться к серверу Google XMPP (xmpp.google.com ), например. через Smack (библиотеку Java для XMPP ), аутентифицировать и прослушивать сообщения protobuf, указывающие на изменение сеанса вкладки. Конечно, учетные данные пользователя или «идентификатор клиента _», который Chrome использует для идентификации клиентов, доступны.

Но мне трудно понять метод аутентификации, который используется для подключения к серверу XMPP — я не могу понять, как это делается в исходном коде Chromium , и нет никакой доступной документации, кроме комментарии очень низкого уровня -в коде. Библиотека libjingle, которую Google использует для своих сервисов на основе XMPP, доступна только для C++ и плохо поддерживается/документирована.

Итак, есть ли кто-нибудь, кто делал что-то подобное раньше и может дать какие-либо советы/подсказки о том, как работает процесс аутентификации?

12
задан florian h 26 July 2012 в 08:04
поделиться