Интеграция vkontakte и instagram

в 6:24, , рубрики: Instagram, Вконтакте, Вконтакте API, Социальные сети и сообщества, стартап, метки: , , ,

image Доброго времени суток!

В этом посте хочу рассказать о своем приложении, для связи социальных сетей Вконтакте и Instagram.

Суть проекта

Проект представляет iframe-приложение для просмотра и публикации своих фотографий Instagram в социальную сеть Вконтакте.
Для его работы его требуется «установить». После установки Вы можете его привязать к своему аккаунту Instagram. Частично функционал работает и без авторизации.
Сейчас приложение умеет:

  • Показывать Ваши последние фотографии (если вы авторизовались в instagram)
  • Показывать фотографии, которые Вы лайкнули и Вашу ленту (аналогично, если вы авторизовались в instagram)
  • Показывать популярные фотографии
  • По щелчку на миниатюру фотографии, открывать просмотр с описанием, последними комментариями, картой и названием фильтра. В нем так же есть ссылки на изображение разного размера
  • Отправлять фотографии на стену или устанавливать в качестве аватарки. При публикации на стене сохраняется так же географическое положение
  • Показывать последние фото пользователя, установившего приложение. Пользователь должен хотя бы раз запустить приложение после обновления 5 сентября


Из фич интерфейса, которые лично мне кажутся удобными, хочу отметить:

  • «Бесконечная» прокрутка.
  • Хранение ленты и своих фото в отдельных div'ах, что позволяет запоминать позицию и не перезапрашивать заново при переключении вкладок
  • Прогресс отправки фото внутри кнопки, его вызвавшей

В ближайшее время планируется добавление очевидных функций:

  • Сохранение фотографий в альбом Вконтакте
  • Комментирование, лайки
  • Подписка на пользователей
  • Поиск по тэгу и по имени пользователя
  • Выделение нескольких фотографий и очередь отправки
  • Автопостинг

Принципиально функционал очень похож на на сервисы типа webstragram, с добавлением функций работы с вконтакте.

История и статистика

первый вариант интерфейса
Изначально приложение делалось по просьбе жены для личного использования и имело минимальный функционал. Однако в течение долгого времени аналогов не было видно и поэтому в начале августа было отправлено на модерацию вконтакте с целью публикации в общем каталоге.

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

В среднем, с момента старта каждый день аудитория приложения растет на 260 человек причем довольно равномерно. На момент написания поста было около 7500 участников приложения.
image
Ежесуточная же посещаемость скачет довольно сильно. Видны падения в субботу и рост в понедельник. Таким образом ежесуточная аудитория составляет около 500-600 уникальных посетителей.
image
Что интересно, большинство пользователей приложения женского пола. Причем до 18 лет.
image

Внутри

Приложение состоит из одного html файла, одного javascript файла и одного php файл, если не считать подключенных библиотек.
Из библиотек использую jQuery для удобной работы с DOM и отправки AJAX запросов; jQuery Cookie Plugin для работы с куками (кэп?); Twiter Bootstrap для внешнего оформления: в первую очередь панель и подсказки; скрипт Вконтакте API для работы с функционалом социальной сети.
Php сейчас используется только для одного — отправки фото на сервер вконтакте. Так как из яваскрипта на сторонний домен пост запрос не послать, пришлось реализовывать серверный метод, который, в принципе, достаточно банален.

Проблема, с которой пришлось столкнуться — instagram не хочет авторизовываться, если он запущен во фрейме. В связи с этим пришлось по клику открывать новое окно и следить за появлением куков. В открытом же окне после окончания авторизации происходит переадресация на мою страницу, которая эти куки устанавливает.

Некоторым неудобством первой версии приложения была необходимость производить авторизацию на каждом компьютере, так как access_token инстаграма хранился в cookies. Это было решено путем отказа от куков в пользу хранения переменных на сервере вконтакте.

Всё взаимодействие с instagram сводится к такого рода вызовам

	$.ajax({
		type: "GET",
		url: "https://api.instagram.com/v1/media/popular",
		dataType : "jsonp",
		data: {access_token: instagramToken, client_id: secretId},
		success: function(result) {}
	});

Документация по апи инстаграма прекрасно описана тут: http://instagram.com/developer/

Вся работа с API вконтакте реализована через метод VK.call согласно официальной документации.

Монетизация

В плане монетизации традиционно существуют два пути:

  • Реклама
  • Платные сервисы

Реклама в приложениях в соц.сетях сейчас представлена в первую очередь сервисом Creara Media. Они предлагают встраивать как видео ролик при загрузке приложения, так и баннер-растяжку. Видео ролик я считаю весьма назойливым и длится он сравнимо с временем работы в приложении, поэтому его использование нежелательным. Баннер-растяжка же не мешает функционалу приложения и поэтому может быть использован. С другой стороны, стоимость клика по баннеру у Creara Media в среднем (по их данным) 75 копеек. При частоте 1 клик на 100 просмотров и текущей посещаемости, я таким образом смогу заработать аж 250 рублей в месяц, что никак не компенсирует общий негативный эффект от наличия рекламы.

Платные сервисы намного более перспективное направление. Однако тут надо четко понимать за какие функции пользователь готов заплатить, а за какие- нет. Сейчас пытаемся подобрать варианты.

С учетом вышесказанного вопрос монетизации пока открыт, и пока приложение не приносит ничего кроме удовлетворения от сделанной работы.

Хочется так же отметить, что после старта проекта мне предлагали его продать за целых 15к рублей, однако я отказался. И сейчас человек, который это предлагал, запустил свой конкурирующий проект.

Где попробовать?

Ссылка на само приложение: vk.com/instavk

P.S. На публикацию в «Я пиарюсь» не хватает кармы.

Автор: Tishka17

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js