Содержание
Как получить информацию о пользователе ВКонтакте
В этой статье мы расскажем, как получить информацию о пользователе с помощью VK API.
Основные данные, такие как имя пользователя, фамилия и идентификатор, можно получить с помощью переменной $rawRequest. А для получения дополнительной информации, такой как, например, дата рождения пользователя и номер телефона, мы будем использовать VK API. В этой статье мы приведем пример того, как можно использовать VK API. Документацию по использованию VK API можно найти здесь: https://vk.com/dev/first_guide
API (интерфейс прикладного программирования) является посредником между разработчиком приложения и любой средой, с которой это приложение должно взаимодействовать. API упрощает генерацию кода, предоставляя набор готовых классов, функций или структур для работы с существующими данными.
Если ваш бот публикуется не только в ВК, но и в другом канале, то вы можете использовать системную переменную $channelType для определения канала
Помните, что тестировать описанный в данной инструкции функционал нужно в ВК. Если вы используете функциональность, описанную ниже, и тестируете ее в Тестовый виджет Aimylogic , вы получите ошибку, так как бот пытается использовать API ВК и, естественно, не может этого сделать при тестировании вне ВК.
Прежде чем приступить к инструкции, создайте базовый скрипт, состоящий из пары текстовых экранов (приветствие + фразы для принятия пользовательского ввода), и опубликуйте его в ВК, как описано в этой статье.
Как узнать страну пользователя?
Обратите внимание, что вы увидите эти данные только в том случае, если они были указаны в профиле и на них не распространяются настройки приватности. Если пользователь не указал страну или данные доступны ограниченному кругу лиц, мы не сможем получить доступ к этой информации.
Добавьте в свой скрипт блок Transition на экран приветствия и подключите его к блоку условий, с помощью которого мы получим ID пользователя:
$id = $rawRequest. object.user_id
Из блока Условия сделать подключение с HTTP-запросом для получения страны пользователя из информации о странице ВКонтакте.
Вот как будет выглядеть этот HTTP-запрос:
- Метод —
ПОЛУЧИТЬ
- Вкладка ОТВЕТ HTTP-запроса должна содержать:
$country
имя переменной и$httpResponse.response[0].country.title
значение - Вкладки BODY и HEADERS заполнять не нужно.
- URL запроса выглядит так:
https://api.vk.com/method/users.get?user_ids=${id}&fields=country&access_token=ACCESS_TOKEN&v=5.101
- Скопируйте этот URL, заменив
ACCESS_TOKEN
ключом, который вы получили при добавлении бота в сообщество. Вы всегда можете снова получить этот токен в настройках сообщества: Настройки — Использование API — Токены доступа . Подробнее о добавлении канала ВКонтакте
- Скопируйте этот URL, заменив
- Метод —
Давайте разберемся со структурой этого URL
Мы используем метод users. get
. Об этом методе можно прочитать здесь.
Так как ранее мы получили идентификатор пользователя с помощью блока условий, в нашем запросе содержится следующее значение: user_ids=${id}
, вместо {id}
будет использоваться реальный идентификатор пользователя ВКонтакте.
Мы используем параметр fields
метода users.get
В параметре fields
мы используем значение страны. Это также определено документацией VK API.
access_token
определяет токен нашего канала. Поэтому вместо ACCESS_TOKEN
нужно вставить полученный из ВК ключ.
И, наконец, 5.101
— актуальная версия протокола VK API. Вам нужно указать актуальную версию протокола VK API. Посмотреть, какая версия актуальна на данный момент, можно здесь (актуальна самая верхняя версия):
Вы можете получить такой URL-адрес:
Нам необходимо присвоить все полученные значения соответствующим переменным, что мы и делаем, добавляя переменную в HTTP запрос на вкладке ОТВЕТ и записывая полученную информацию в эту переменную.
Из опции Error
делаем ссылку на текстовый блок с текстом Error $httpStatus
Этот блок поможет нам понять в чем ошибка, если запрос не удался.
Если вы получили сообщение об ошибке, вернитесь назад и убедитесь, что вы правильно выполнили запрос.
Убедитесь, что мы получили эту информацию от пользователя
Теперь проверим, получили ли мы эту информацию — указана ли страна для этого пользователя, и не покрывается ли эта информация настройками приватности. Подключим опцию Success
HTTP-запроса к блоку Conditions , в котором пропишем $country
(та же самая переменная, которую мы указали в HTTP-запросе)
Если это условие выполнено, мы можем двигаться по сценарию (мы добавим HTTP-запрос ниже). А если нет (вариант или
), добавьте текстовый блок с вопросом о стране проживания.
Далее, после опции Success
, мы делаем ссылку на текстовый блок, содержащий следующее: Вы живете в $newcountry, верно?
Вы можете запросить другие данные, используя метод users. get
. Следуйте инструкциям по получению страны пользователя, за исключением следующих изменений.
Как узнать дату рождения?
URL для получения даты рождения:
https://api.vk.com/method/users.get?user_ids=${id}&fields=bdate&access_token=ACCESSTOKEN&v=5.101
Здесь мы используем параметр bdate
метода users.get
- Имя переменной:
bd
- Значение:
$httpResponse.response[0].bdate
Как запросить номер телефона?
URL запроса: https://api.vk.com/method/users.get?user_ids=${id}&fields=contacts&access_token=ACCESSTOKEN&v=5.101
- Имя переменной
$сотовый телефон
- Значение
$httpResponse.response[0].mobile_phone
Вы можете получить номер телефона и город, если вы добавите в HTTP $city$country$cellphone$bd
Теперь мы можем отправить полученные данные с помощью обычного текстового блока:
Ваша страна $country. response [0].country.title Ваш день рождения $bd.response[0].bdate Ваш город $city.response[0].city.title Ваш телефон $cellphone.response[0].mobile_phone
В дальнейшем можно доработать скрипт, продумав логику перехода в зависимости от значений этих переменных.
Как получить ID приложения Вконтакте и Secure Key? — Блог Knowband
Последнее обновление: Джо Паркер
Руководство пользователя
Это руководство предназначено для предоставления пошагового руководства по получению сведений об API Вконтакте, таких как идентификатор приложения и ключ безопасности. Эти детали API можно использовать для настройки входа через социальную сеть Вконтакте на вашем сайте. Блог проведет вас через процесс получения идентификатора приложения Вконтакте и секретного ключа. Читайте дальше, чтобы узнать, как получить подробную информацию об API.
Шаг 1: Зайдите на сайт разработчика Вконтакте и авторизуйтесь там под своей учетной записью пользователя Вконтакте.
PS: Для настройки любой социальной учетной записи на вашем веб-сайте вы должны быть пользователем соответствующей платформы. Вся информация о клиентах извлекается только через вашу учетную запись пользователя. Итак, для настройки входа Вконтакте на свой сайт у вас также должен быть аккаунт Вконтакте.
Шаг 2: После входа в свой аккаунт Вконтакте вы будете перенаправлены на новую страницу. Здесь нажмите на «Создать приложение» .
Шаг 3: В следующем интерфейсе откроется небольшая форма, которую необходимо заполнить. Заполните форму, как показано на изображении ниже:
Заполните имя своего приложения, выберите «Веб-сайт» в разделе «Категория». Затем укажите URL вашего сайта и базовое доменное имя.
Шаг 4: После заполнения формы нажмите кнопку «Подключить сайт» .
Шаг 5: Затем перейдите на вкладку «Настройки» в левой строке меню. Здесь вы найдете свой идентификатор приложения и ключ безопасности. Но перед этим вам необходимо настроить Open API, указав URL-адрес сайта и URL-адрес перенаправления, как показано на изображении ниже:
Шаг 6: Нажмите кнопку Сохранить . Теперь вы можете скопировать данные API и вставить их в свой модуль входа через социальную сеть, который поддерживает вход через Вконтакте.
Примечание: Если вы используете наш модуль Social Loginizer (для PrestaShop, OpenCart или Magento), вам просто нужно скопировать и вставить эти данные API в соответствующие поля, которые выглядят следующим образом:
Нравится это ? Вам это тоже понравится
- Как получить идентификатор клиента Windows Live и секретный ключ клиента?
- Как получить информацию об API WordPress — идентификатор клиента и секрет клиента?
- Magento Social Loginizer – Руководство пользователя
- Presatshop Social Loginizer – Руководство пользователя
- Opencart Social Loginizer – Руководство пользователя
Джо Паркер
Мы гордимся лучшими в отрасли плагинами для систем электронной коммерции и имеем многолетний опыт работы с веб-сайтами электронной коммерции.