Автоматическое оповещение читателей о новостях с помощью ВКонтакте. Часть 4

Для этого есть официальный API от вконтакте.

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

Начнем с регистрации приложения

На странице для разработчиков выбираем «Подключить сайт».

Тип приложения — Standalone. С ним у нас будет доступно больше методов, которые не доступны если подключать просто веб-сайт.



Дальше мы видим страницу управления приложением:



Вы можете подробнее прочитать о авторизации приложений в документации.

После регистрации для работы нам необходимо получить access token.

Для этого, и остальной работы с API будем использовать написанный мною класс.[/B]

В классе нужно прописать client_id:



Выполняем метод авторизации:

VkApi::auth(array('offline', 'wall'));


В метод auth() можно указать массив прав приложения. Весь список можно посмотреть в [URL=http://vk.com/developers.php?oid=-1&p=%D0%9F%D1%80%D0%B0%D0%B2%D0%B0_%D0%B4%D0%BE%D1%81%D1%82%D1%83%D0%BF%D0%B0_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9]документации
.
Хочу заметить, что полученный в итоге access token мы будем прописывать в тело класса. А так как обычная сессия живет не долго — нам придется постоянно обновлять токен. Есть выход — добавить в список необходимых прав offline-право. Тогда мы получим долгоживущую сессию, которая собъется только если будет сменен пароль текущего пользователя.

Запускаем скрипт в браузере и видим страницу авторизации:



Дальше запрос доступа приложения:



После разрешения на выходе нам дают все необходимые параметры:
access_token=%access_token%&expires_in=0&user_id=%userid%

Прописываем access token внутрь класса:



Всё! Готово, теперь мы можем использовать методы API.
В документации есть список и описание методов.

Например, отправляем сообщение на стену. Если отправляем на страницу или группу, в owner_id нужно добавить минус перед номером страницы. Чтобы писать от имени страницы указывается from_group.

VkApi::invoke('wall.post', array(
    'owner_id' => '%id%',
    'message' => '%message%',
    'from_group' => 1
));


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

UPD Обновил класс и примеры.
Теги:
оповещение читателей, ВКонтакте
Добавлено: 19 Февраля 2015 08:35:25 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...