mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2024-12-29 02:57:35 +02:00
94 lines
6.4 KiB
Markdown
94 lines
6.4 KiB
Markdown
|
---
|
||
|
id: VK
|
||
|
sidebar_class_name: VK
|
||
|
---
|
||
|
|
||
|
<img src={require('../../static/img/APIs/VK.png').default} width='64px' />
|
||
|
|
||
|
# ВКонтакте
|
||
|
|
||
|
Этот раздел посвящен библиотеке для работы с VK API. Она заточена для работы с сообществами и выполнением действий от их имени. На данной странице описаны все действия, необходимые для полноценного начала работы
|
||
|
|
||
|
## Начало работы
|
||
|
|
||
|
Для начала работы необходимо получить некоторые параметры для VK API.
|
||
|
|
||
|
<br/><br/>
|
||
|
Перечень необходимых данных в виде структуры содержится в функции *ПолучитьСтандартныеПараметры()*. Вы можете указывать значения параметров прямо в ней или же передавать их структурой при вызове любых других методов библиотеки в качестве необязательного параметра *Параметры* (последний во всех методах билиотеки). В последнем случае стандартные параметры будут перезаписаны по ключам теми, которые переданы при вызове метода. Перезаписаны будут только совпадающие по ключам данные. Если какой то параметр есть в наборе стандартных, но не был передан при вызове метода, то он сохранит стандартное значение.
|
||
|
<br/><br/>
|
||
|
|
||
|
```bsl
|
||
|
_Параметры = Новый Структура;
|
||
|
|
||
|
_Параметры.Вставить("v" , "5.131");
|
||
|
_Параметры.Вставить("from_group" , "1");
|
||
|
_Параметры.Вставить("group_id" , "123456789");
|
||
|
_Параметры.Вставить("owner_id" , "-123456789");
|
||
|
_Параметры.Вставить("app_id" , "87654321");
|
||
|
_Параметры.Вставить("access_token" , "vk1.a.E-byuFeG1qcN7...");
|
||
|
|
||
|
```
|
||
|
|
||
|
Рассмотрим получение каждого значения:
|
||
|
|
||
|
**1. v**
|
||
|
|
||
|
Параметр v означает версию VK API. Тестирование проводилось на 5.131, рекомендуется его таким и оставить
|
||
|
|
||
|
**2. from_group**
|
||
|
|
||
|
От лица группы. Должен быть 1
|
||
|
|
||
|
**3. group_id и owner_id**
|
||
|
|
||
|
ID группы. Если у вас стандартный адрес группы, то id можно найти в URL. В противном случае он будет на вкладке "Управление" в группе, под полем Адрес. owner_id - тоже самое, но со знаком '-' впереди
|
||
|
|
||
|
![BF](../../static/img/Docs/VK/1.png)
|
||
|
|
||
|
**4. app_id**
|
||
|
|
||
|
app_id - ID приложения. Для создания приложения необходимо:
|
||
|
|
||
|
* Перейти по адресу https://id.vk.com/about/business/go, авторизоваться и ввести свои данные физ. или юр. лица
|
||
|
|
||
|
![BF](../../static/img/Docs/VK/2.png)
|
||
|
|
||
|
* Ввести название приложения и выбрать пункт **Web**
|
||
|
|
||
|
![BF](../../static/img/Docs/VK/3.png)
|
||
|
|
||
|
* Ввести домееное имя и URL обработчика перенаправлений. Тут нужно отметить, что данный механизм создания приложений - новый. Еще недавно приложения VK создавались иначе и иметь redirect_url для них было не нужно. На данный момент не совсем понятно, зачем он нужен нам для серверного приложения - просто такого понятия как серверное приложение у VK теперь нет. Теоретически, туда можно вписать что угодно - для работы с библиотекой в получении обратных данных нет необходимости. Однако, с течением времени, это может измениться.
|
||
|
|
||
|
![BF](../../static/img/Docs/VK/4.png)
|
||
|
|
||
|
* Ввести паспортные данные или данные об организации, включить доступ к сообществам (короче, если у вас уже было приложение до этого, то вам крупно повезло, а если нет российского паспорта - придется писать в поддержку)
|
||
|
|
||
|
![BF](../../static/img/Docs/VK/8.png)
|
||
|
|
||
|
* Получить app_id на странице приложения
|
||
|
|
||
|
![BF](../../static/img/Docs/VK/5.png)
|
||
|
|
||
|
**5. access_token**
|
||
|
|
||
|
Ссылку на получение acess_token можно получить при помощи функции *СоздатьСсылкуПолученияТокена* или склеить вручную:
|
||
|
|
||
|
https://oauth.vk.com/authorize?client_id= + *app_id* + &scope=offline,wall,groups,photos,stats,stories,ads&v=5.131&response_type=token&redirect_uri=https://api.vk.com/blank.html
|
||
|
|
||
|
* По этой ссылке необходимо перейти в браузере
|
||
|
* Авторизоваться через ВК и подтвердить доступ
|
||
|
* Забрать токен из параметра URL в адресной строке
|
||
|
|
||
|
![BF](../../static/img/Docs/VK/6.png)
|
||
|
|
||
|
**(Дополнительно) communitytoken**
|
||
|
|
||
|
Некоторые методы, например для работы с чат-ботом сообщества, принимают в качестве параметра communitytoken - в этих методах он заменяет access_token. Для его получения необходимо:
|
||
|
|
||
|
* Зайти в раздел "Управление" в группе ВК
|
||
|
* Найти вкладку "Работа с API"
|
||
|
* Нажать "Создать ключ" и забрать его
|
||
|
|
||
|
![BF](../../static/img/Docs/VK/7.png)
|
||
|
|
||
|
Пока вам не нужно использовать такие методы, получать communitytoken не обязательно
|