Палки в колёса от сильных мира сего

imageНесмотря на броское название, по сути эта небольшая история обличает нашу собственную глупость. Обычно такие вещи не выставляют на всеобщее обозрение, но опыт оказался уж больно поучительным, и мы решили поделиться им с вами.

Еще в начале работ над Омнидеском планировалось, помимо прочих каналов, реализовать поддержку Вконтакте. Позже стало очевидно, что некоторые каналы прийдется отложить, чтобы не затягивать с запуском сервиса. Поэтому остановились на том, что Вконтакте подключим после выхода из беты.

Однако первая статья на Хабре и последовавший за ней серьезный поток обратной связи явно указали, что нужно срочно повышать приоритет канала «Вконтакте». Так и поступили — отодвинули другие задачи и взялись за ВК.

Первым делом бегло пробежались по API ВК и убедились, что в нем есть все методы для реализации нужного нам функционала. Далее перешли к интерфейсной части и правкам базы данных. Многие вещи были частично готовы еще с Facebook-канала, и нужно было лишь переделать отличающиеся части.

Через какое-то время приступили к реализации самого функционала через API. Начали с личных сообщений. Вот тут мы и столкнулись с очень неприятным сюрпризом. Оказалось, что доступ к личным сообщениям через API могут получить только standalone-приложения (мобильные и десктопные). Для веб-сервисов этот API-метод недоступен.

Мы расстроились не на шутку, ведь это означало, что поддержка ВК будет частичной. Обратились за помощью в службу поддержки, чтобы узнать, если есть какой-то выход из нашей ситуации. Ответ совсем не порадовал: 


слишком слишком личное

Пришлось утешать себя тем, что личные сообщения — не самый главный для нас функционал. Их ВК-реализация сильно отличается от таковой на Facebook«e, где личные сообщения есть как у пользователя, так и у каждой ФБ-страницы. В случае же с ВК есть только сообщения пользователя, которые не столь важны, когда речь идет о группах и страницах.

Нужно было двигаться дальше. Взялись за посты и комментарии к ним. И снова сюрприз — половина методов к ним тоже недоступна для веб-сервисов. Как же мы недоглядели этот момент изначально?! Это была трагедия вселенского масштаба. Остаться без нужного функционала и потратить впустую так много времени.

Горькая ирония заключалась в том, что перед реализацией каналов «Facebook» и «Twitter» мы очень тщательно изучили их API-документацию. Когда же очередь дошла до ВК, нам и в голову не пришло, что там могут быть такие подводные камни.

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

попытка не пытка

В ответ тишина. То ли на нас попросту забили, то ли вопрос действительно долго ожидал своей очереди, но ответили только через две недели. И это при том, что мы пару раз «терроризировали» их, создавая другие заявки с просьбой ускорить решение изначального вопроса.

никак нет

Не то чтобы мы жалуемся. Понимаем, что виноваты сами. Просто удивляет нежелание ВК сделать базовые API-методы доступными не только для standalone-приложений. Что это? Чрезмерная недоверчивость к веб-сервисам? Своеобразная попытка отличиться от Facebook’а? Или, наоборот, не вовремя сломанная копировальная машина?

Но шутки в сторону. Перед началом реализации чего-либо обязательно убедитесь, что это возможно сделать. Лучше потратить время на изучение всех нюансов, чем после оказаться в ситуации, когда достижение нужного результата не зависит от вас.

© Habrahabr.ru