Как получить ВКонтакте Api ID? Сервисы для отслеживания событий в своем сообществе ВК Сервисы,… - До звезды

Сервисы для отслеживания событий в своем сообществе ВК

Сервисы, которые работают через call back api ВК и имеют примерно схожую функциональность: отслеживание комментариев, сообщений в ЛС сообщества, записей на стене сообщества и т.п.

1. Callback Api Bot https://vk.com/cbbot . Пользуюсь им порядка полугода. Бот радует стабильностью, есть возможность подключения менеджеров. Из минусов - все оповещения валятся в одну и ту же личку, если сообществ много - в ней свалка.

2. Модератор - https://vk.com/app5474492 . Приложение удобно сортирует все события по типам, есть настройки разных видов оповещений о событиях, возможность подключения менеджеров. По функциональности это лучшее из имеющихся приложений. Из минусов - это та же команда разработчиков, что и сервис Sexy. Который начал свой вход на рынок с того, что использовал аккаунты своих пользователей без их ведома и согласия. Поэтому отдавать им доступ от ЛС своих сообществ - лично мне как-то стремно.

3. pushall.ru - Это комплексный сервис оповещений, в т.ч. в нем есть и ВК. Есть оповещения на почту и в телеграм, уведомления в браузере на ПК, приложения Андроид и iOS. Хоть и все в кучу, но правилами почты и ботами телеграм их можно разруливать как угодно. Из уникальных фич - сервис может пересылать полученные ответы от ВК другому серверу. Т.е. вы можете подключить несколько приложений, которые используют call back api. При бесплатном использовании можно подключить только 2 сервера.

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

4. https://vk.com/callback_api_lite - сервис примечателен тем, что в нем есть подключение сообщества в одну кнопку, т.е. все настройки серверов в сообществе внесутся за вас. Также оповещения от каждого сообщества отправляются вам отдельно - через ЛС этого сообщества. Т.е. у вас в личке будет несколько чатов с вашими сообществами, куда вы будете получать уведомления. Эти 2 фичи делают сервис удобным для владельцев кучи сообществ, когда даже просто подключить call back api им всем - хочется повеситься. Правда, отдельно придется отправить хоть 1 сообщение в ЛС каждого своего сообщества, чтобы дать ему разрешение отправлять вам сообщения. Поддержка и доработка сервиса ведется достаточно активно и очень оперативно - в течение 1-2 дней вносятся доработки. Однако сервис однозначно заявлен как бесплатный, поэтому крутые фичи не планируются.

Из минусов: 1) привязка сообщества к одному аккаунту, с которого вы первым зашли в сервис. Менеджеров подключить не получится. 2) Для подключения в одну кнопку сервис берет доступ к управлению сообществом. 3) Необходимы включенные сообщения сообщества. У меня вот сейчас в работе 63 сообщества по одному из проектов, и эти сообщества почти ежедневно заваливаются спамом в ЛС, причем обязательно все разом и преимущественно поздно вечером - когда работать уже в лом, но оповещения еще не отключены. Не реагировать на спам в ЛС = будет расти срок ответа, который показывается клиентам. Закрыть ЛС = заново подключать все сообщества к другому сервису. Оставить все как есть = вешалка.

5. Гамаюн: https://gmun.pro . Сообщества подключаются в один клик, но в некоторых случаях не с первой попытки - выдается ошибка "нет токена сообщества". Все оповещения валятся в личный кабинет в сервисе в одну кучу. Есть выгрузка статистики в csv - у единственного сервиса из всех - но тоже все в одну кучу по всем сообществам. Есть телеграм и email уведомления. Как и callback api lite - сервис берет доступ к управлению всем сообществом, а не только для оповещений.

6. http://vk-notify.ru . Кто захочет писать свой сервис - вот у них самый удобный интерфейс отображения оповещений. К сожалению, сервис похоже умер. Во всяком случае оповещения не приходят, есть ли у сервиса поддержка - неизвестно.

Вконтакте

Для того, чтобы создать виджет для ВКонтакте, перейдите по ссылке - https://vk.com/dev/sites

На этой стрнице можно создать различные виджеты для взаимодействия возможностей ВК и Вашего сайта.

  1. Сайт\приложение: Если у Вас не подключен сайт в api ВК, то для начала нужно его подключить. Для этого выберите в выпадающем списке "Подключить новый сайт".
  2. Название сайта: Введите любое название.
  1. Адрес сайта - введите адрес подключаемого сайта.
  2. Основной домен сайта - прописывается автоматически.
  3. Тематика сайта - укажите тематику своего сайта.
  4. Количество комментариев - укажите максимальное количество отображаемых комментариев.
  5. Медиа - добавляет в форму комментариев кнопку "Прикрепить".
  6. Ширина - укажите ширину виджета.
  7. Код для вставки - данный код можно вставить в любое желаемое место на Вашем сайте. В нем и хранится уникальный apiID, который используется во многих расширениях Joomla-сайта.

Facebook

Для того, чтобы создать виджет для Facebook, перейдите по ссылке - https://developers.facebook.com/docs/plugins

На этой стрнице можно создать различные виджеты для взаимодействия возможностей Facebook и Вашего сайта.

Пример создания виджета комментариев:

Процес создания такой же, как и для ВК.

Если у Вас не создано приложение, то нужно его создать. Для этого нажмите на пункт меню "Приложения" и выберите "Create a New App".

Display Name: Введите название приложения.

Namespase: Введите уникальный идентификатор (может быть название Вашего сайта).

Нажимаем "Создать приложение", вводим код проверки и переходим непосредственно к созданию виджета.

Width: Укажите ширину виджета.

Number of Posts: Выберите максимальное количество отображаемых комментариев.

Color Scheme: Выберите цветовую схему виджета.

Нажимаем "Get code"

После нажатия, всплывает окно, в котором и хранится api ID.

Если Вам нужно будет быстро и без усилий вставить какой-нибудь виджет на joomla-сайт, прочитайте ЭТУ статью.

P.S. Таким же образом создаются и другие виджеты этих соц-сетей.

Писать будем используя Сallback api(отправляет каждое действие в сообществе по отдельности на сервер). Поэтому его тоже следует настроить. Переходим в
«Управление сообществом» →»Работа с API». Для работы бота нужно зарегистрировать ключ доступа. Нажимаете «Создать ключ» и выбираете необходимые права доступа, для этого бота нужны только права на сообщения. Подтверждаем номер телефона и сохраняем куда нибудь ключ доступа. Теперь переходим во вкладку Callback API. Ставим свое название сервера и выбираем последнюю версию API(на данный момент она 5.80, и именно с ней ниже представленный бот будет работать 100%) . Во вкладке «Типы запросов» выбираем только входящие сообщения.

Настройка сервера

Теперь вам понадобится сервер для хостинга своего бота. Вы можете использовать бесплатные хостинги, например 000webhost.

Если вы будете использовать дешевые/бесплатные хостинги, то вероятнее всего на них будет отключен cURL(вы не сможете отправлять ботом медиа файлы, только текст), и его нельзя включить. У 000webhost все с этим нормально, можете использовать. Если у вас свой сервер или хороший купленный, то вам надо подключить cURL для полноценной работы бота из нашего примера.

Как работает Callback API и keyboard

Проведу краткий экскурс как все работает. Сallback API отсылает на ваш сервер любое событие, которое происходит в группе виде JSON. Полный список событий можно посмотреть во вкладке «Сallback API» → «Типы событий». Вот так выглядит JSON запрос когда пользователь отправляет сообщение, в данном случае он нажал на кнопку:

{"type":"message_new","object":{"date":1529668584,"from_id":89846036,"id":1522,"out":1,"peer_id":89846036,"text":"Золотая рыбка","conversation_message_id":305,"fwd_messages":,"important":false,"random_id":0,"attachments":,"payload":"{\"animals\":\"Goldfish\"}","is_hidden":false},"group_id":101461081}

{ "type" : "message_new" , "object" : { "date" : 1529668584 , "from_id" : 89846036 , "id" : 1522 , "out" : 1 , "peer_id" : 89846036 , "text" : "Золотая рыбка" , "conversation_message_id" : 305 , "fwd_messages" : , "important" : false , "random_id" : 0 , "attachments" : , "payload" : "{\"animals\":\"Goldfish\"}" , "is_hidden" : false } , "group_id" : 101461081 }

Тут есть несколько интересных полей, которые можно обработать: id пользователя, текст сообщения(text), полезная нагрузка кнопки(payload).

Отправка сообщений пользователю происходит с помощью метода messages.send . Если вы отправляете клавиатуру, то после всех стандартных параметров вы добавляете параметр keyboard, который содержит json кнопок, вот как он выглядит:

Keyboard: { "one_time": false, "buttons": [ [{ "action": { "type": "text", "payload": "{\"button\": \"1\"}", "label": "Red" }, "color": "negative" }, { "action": { "type": "text", "payload": "{\"button\": \"2\"}", "label": "Green" }, "color": "positive" }]

keyboard : {

"one_time" : false ,

"buttons" : [

"action" : {

"type" : "text" ,

"payload" : "{\"button\": \"1\"}" ,

"label" : "Red"

"color" : "negative"

"action" : {

"type" : "text" ,

"payload" : "{\"button\": \"2\"}" ,

"label" : "Green"

"color" : "positive"

Работа с библиотекой

Для работы бота мы используем самописную библиотеку на PHP. (Если ссылка не работает, то вот архив)вы можете найти документацию к библиотеке и скачать саму библиотеку. Вот короткий листинг готовых функций для написания бота, подробнее ищите по ссылке выше. Если вы хотите узнавать об изменениях в библиотеке, то напишите хотя бы одно сообщение нашему боту в ВК , через него мы будет вас оповещать об изменениях.

$vk = new vk_api(vk_key, version_api) — инициализация бота. Параметры: ключ сообщества(vk_key), версия API(version_api).

sendMessage(id, text) — функция отправки сообщений юзеру. Параметры: id пользователя(id), текст сообщения(text).

sendImage(id, patch) — функция отправки изображений. Параметры: id пользователя(id), путь до изображения(patch).

sendButton(id, text, buttons, one_time) — функция отправки сообщения с кнопками. Параметры: id пользователя(id), текст сообщения(не может быть пустым)(text), массив с кнопками(buttons), не обязательный параметр one_time, по дефолту false, если поставить true, то после нажатия на любую кнопку клавиатура скроется.

request(method, array_arguments) — универсальная функция работы с методами. Параметры: method — название метода из официального api, array_arguments — массив параметров.

sendOK() — Бета функция. Используется вместо echo «ok», помогает в тех случаях, когда время работы скрипта долгое, и бот начинает повторять сообщения по несколько раз.
ВАЖНО: есть использовать эту функцию, то у вас не будет отображаться вывод ошибок. Во время дебага заменяйте на echo «ok»

Полный код бота на PHP

Теперь перейдем собственно к коду, где прокомментирована почти каждая строка.
Данный код поддерживается на PHP 5.6+
В блоке CONFIG укажите свой ключ доступа сообщества, ключ для подтверждения сервера а так же выбранную вами версию API.

Полный код бота

"Fish"], "А какие бывают?", "blue"]; //Код кнопки "Fish" const BTN_BACK = [["command" => "start"], "<< Назад", "red"]; // Код кнопки "<< Назад" const BTN_SALMON = [["animals" => "Pink_salmon"], "Горбуша", "white"]; // Код кнопки "Горбуша" const BTN_GOLDFISH = [["animals" => "Goldfish"], "Золотая рыбка", "blue"]; // Код кнопки "Золотая рыбка" const BTN_PLOTVA = [["animals" => "Plotva"], "Плотва", "green"]; // Код кнопки "Плотва" $vk = new vk_api(VK_KEY, VERSION); // создание экземпляра класса работы с api, принимает ключ и версию api $data = json_decode(file_get_contents("php://input")); //Получает и декодирует JSON пришедший из ВК if ($data->type == "confirmation") { //Если vk запрашивает ключ exit(ACCESS_KEY); //Завершаем скрипт отправкой ключа } $vk->sendOK(); //Говорим vk, что мы приняли callback if (isset($data->type) and $data->type == "message_new") { //Проверяем, если это сообщение от пользователя $id = $data->object->from_id; //Получаем id пользователя, который написал сообщение $message = $data->object->text; if (isset($data->object->peer_id)) $peer_id = $data->object->peer_id; // Получаем peer_id чата, откуда прилитело сообщение else $peer_id = $id; if (isset($data->object->payload)){ //получаем payload $payload = json_decode($data->object->payload, True); } else { $payload = null; } if (isset($payload["command"]) or mb_strtolower($message) == "начать") { //Если нажата кнопка начать или << назад $vk->sendButton($peer_id, "Хочешь посмотреть на рыбок?", []); //Отправляем кнопку пользователю } else { if ($payload != null) { // если payload существует switch ($payload["animals"]) { //Смотрим что в payload кнопках case "Fish": //Если это Fish $vk->sendButton($peer_id, "Вот такие, выбирай", [ //Отправляем кнопки пользователю , ]); break; case "Pink_salmon": //Если это Горбуша $vk->sendMessage($peer_id, "Держи свою горбушу!"); //отправляем сообщение $vk->sendImage($peer_id, "img/pink_salmon.jpg"); //отправляем картинку break; case "Goldfish": //Если это Золотая рыбка $vk->sendMessage($peer_id, "Она исполнит твои желания..."); $vk->sendImage($peer_id, "img/goldfish.jpg"); break; case "Plotva": //Если это Плотва $vk->sendMessage($peer_id, "Ой, похоже картинку перепутали)"); $vk->sendImage($peer_id, "img/plotva.jpg"); break; default: break; } } } } ?>

include "vk_api.php" ; //Подключаем библиотеку для работы с api vk

//**********CONFIG**************

const VK_KEY = "your_key" ; //тот самый длинный ключ доступа сообщества

const ACCESS_KEY = "your_key" ; //например c40b9566, введите свой

const VERSION = "5.80" ; //ваша версия используемого api

//******************************

const BTN_FISH = [ [ "animals" = > "Fish" ] , "А какие бывают?" , "blue" ] ; //Код кнопки "Fish"

const BTN_BACK = [ [ "command" = > "start" ] , "<< Назад" , "red" ] ; // Код кнопки "<< Назад"

const BTN_SALMON = [ [ "animals" = > "Pink_salmon" ] , "Горбуша" , "white" ] ; // Код кнопки "Горбуша"

const BTN_GOLDFISH = [ [ "animals" = > "Goldfish" ] , "Золотая рыбка" , "blue" ] ; // Код кнопки "Золотая рыбка"

const BTN_PLOTVA = [ [ "animals" = > "Plotva" ] , "Плотва" , "green" ] ; // Код кнопки "Плотва"

$vk = new vk_api (VK_KEY , VERSION ) ; // создание экземпляра класса работы с api, принимает ключ и версию api

$data = json_decode (file_get_contents ("php://input" ) ) ; //Получает и декодирует JSON пришедший из ВК

if ($data -> type == "confirmation" ) { //Если vk запрашивает ключ

exit (ACCESS_KEY ) ; //Завершаем скрипт отправкой ключа

$vk -> sendOK () ; //Говорим vk, что мы приняли callback

if (isset ($data -> type ) and $data -> type == "message_new" ) { //Проверяем, если это сообщение от пользователя

$id = $data -> object -> from_id ; //Получаем id пользователя, который написал сообщение

$message = $data -> object -> text ;

if (isset ($data -> object -> peer_id ) )

$peer_id = $data -> object -> peer_id ; // Получаем peer_id чата, откуда прилитело сообщение

else

$peer_id = $id ;

if (isset ($data -> object -> payload ) ) { //получаем payload

$payload = json_decode ($data -> object -> payload , True ) ;

} else {

$payload = null ;

if (isset ($payload [ "command" ] ) or mb_strtolower ($message ) == "начать" ) { //Если нажата кнопка начать или << назад

Сообщества Вконтакте уже давно стали не просто способами развлечений, но и отличным инструментом для бизнеса и продаж. Команда разработчиков Вконтакте сделала для сообществ отличную функцию CallBack API смысл которой в отправке событий происходящих в Вашем сообществе.

Мы сделали в U-CRM инструмент отслеживания происходящих событий в Ваших сообществах. Все уведомления о комментариях, новых постах, сообщениях сообщества и прочего приходят в систему и удобно распределены по разделам, которые можно оперативно просматривать.

Чем это Вам поможет?

Если у вас есть сообщество, которое вы используете как бизнес инструмент для взаимодействия с вашей ЦА, которая находится Вконтакте, то эта функция просто необходима вам! И вот почему...

1. Вы всегда будете в курсе любого события вашего сообщества комментарий, отзыв или новый пост не будет пропущен.

2. Мгновенная реакция ваших менеджеров на любой вопрос ваших клиентов заданный в сообществе.

3. Увеличение продаж за счет быстрой реакции на вопросы участников сообщества.

4. Контроль нежелательных комментариев которые портят имидж вашей компании (происки конкурентов).

Настройка отслеживания сообщества

Настройка отслеживания очень проста и займет у вас не больше 5 минут. Мы постарались сделать все достаточно удобно и понятно.

Добавление сообщества в U-CRM


1 - скопируйте адрес вашего сообщества, id или короткое имя, например: http://vk.com/ucrmru короткое имя выделено жирным. И вставьте в поле добавления сообщества.

2 - нажмите добавить сообщество, после чего система попросит вас перейти в настройки.

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


1 - Скопируйте URL-адрес показанный в поле "Адрес Вашего сервера", после чего вставьте его в Настройках сообщества >> работа с API >> Callback API в поле "Адрес Вашего сервера" .

2 - в этом поле нужно указать Код указанный в Настройках сообщества >> работа с API >> Callback API в поле "Строка, которую должен вернуть сервер" .

Настройки в сообществе

Теперь вам надо сделать настройки в самом сообществе вконтакте, для этого перейдите в сообщество и зайдите в "Управление сообществом"


Сразу после этого идем в правом меню в раздел "Работа с API"



1 - Заходим в Callback API.

2 - В поле "Адрес Вашего сервера" вставляем URL-адрес, который выдала система U-CRM после добавления сообщества (было описано выше).

3 - Копируем Код указанный "Строка, которую должен вернуть сервер" и вставляем его в одноименное поле в U-CRM.

После сохранения настроек в U-CRM возвращаемся к настройкам сообщества Вконтакте и нажимаем во вкладке CallBack API кнопку "Обновить"<.b>, после чего должно получится что-то такое:


Если у вас все получилось,то все что осталось сделать настроить какие Типы событий будет отсылать Вконтакте в U-CRM. Для этого переходим в вкладку "Типы событий" , отмечаем все галочки (чтобы не париться)


Вы можете настроить уведомления о событиях в сообществе через VK Bot (удобнее) или через Telegram Bot. Уведомления будут приходить вам в личные сообщения.


Настроить интеграцию с Vk Bot или Telegram Bot вы можете в Личном профиле >> Настройки уведомлений .

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

Чтобы включить интеграцию на Вашем аккаунте Webim , выполните следующие шаги:

  1. Зайдите в Личный кабинет сервиса Webim и проверьте номер своей версии сервиса. Номер версии отображается слева внизу каждой страницы ЛК:
  2. Если у Вас Webim старее версии 8.14, обратитесь, пожалуйста, в для обновления сервиса.

  3. Отправьте в запрос на активацию функции интеграции с сообществами ВКонтакте.
  4. После того как версия Webim обновлена, войдите в сеть ВКонтакте и откройте страницу сообщества, которое хотите связать с учётной записью Webim.
  5. Нажмите кнопку Управление сообществом (Manage community):


    Откроется страница Настройки выбранного сообщества.

  6. Вам нужно использовать для входа такую учётную запись ВКонтакте, которая имеет статус Владелец , Администратор или Редактор в этом сообществе.Чтобы увидеть статус аккаунтов руководства сообществом, выберите вкладку Участники (Members), на ней Руководители (Management):


  7. Убедитесь, что в этом сообществе включен сервис сообщений. Для этого перейдите на страницу Сообщения выбранного сообщества:

  8. Найдите опцию Сообщения сообщества (выделена красным на иллюстрации выше). Если сообщения выключены, включите их.
  9. На странице настроек сообщества перейдите к разделу Работа с API . Там выберите вкладку Ключи доступа и нажмите кнопку Создать ключ :

    Вкладка работы с API сообщества ВКонтакте:

    Откроется форма Создание ключа доступа .

  10. В этой форме выберите пункт Разрешить приложению доступ к сообщения сообщества и нажмите кнопку Создать :

    Форма создания ключа доступа:

    Откроется форма Подтверждение действия .

  11. Вид и функциональность этой формы зависят от персональных настроек аккаунта и мобильного устройства. Если система предлагает выбор, то выберите удобный и доступный способ подтверждения, например, через SMS:

    Форма подтверждения действия:

  12. Дождитесь короткого сообщения на телефон с кодом подтверждения:

  13. Введите его в поле Код подтверждения и нажмите кнопку Отправить код :

    Ввод кода подтверждения:

    В случае ввода правильного кода Вы вернётесь на страницу Работа с API .

  14. На этой странице обратите внимание на появление сведений о только что созданном ключе. Выделите этот ключ доступа и скопируйте его в буфер обмена:


  15. Не закрывая вкладки браузера с открытой страницей сообщества ВКонтакте, откройте новую вкладку браузера с сервиса Webim , страница , раздел Каналы общения :


  16. В блоке настроек каналов ВКонтакте нажмите кнопку Добавить сообщество . Откроется форма Добавление сообщества ВКонтакте :

  17. Найдите поле Название сообщества и введите там наименование, под которым этот канал будет отображаться в Личном кабинете оператора.
  18. Найдите поле Ключ доступа и вставьте в него ключ из буфера обмена:


  19. Далее, найдите в той же форме поле Адрес сервера


  20. Не закрывая вкладки браузера с открытой страницей ЛК Webim, перейдите обратно к странице настроек API сообщества ВКонтакте и выберите вкладку Callback API / Настройки .
  21. Найдите поле Адрес Вашего сервера и вставьте в него адрес сервера из буфера обмена, не нажимая кнопку "Подтвердить" :


  22. Ниже на странице настроек найдите поле Строка, которую должен вернуть сервер и скопируйте её в буфер обмена:


  23. Вернитесь на вкладку ЛК Webim, найдите поле Код подтверждения и вставьте в него содержимое буфера обмена:


  24. Ниже на странице настроек Webim найдите поле Секретный ключ и скопируйте его содержимое в буфер обмена:


  25. Вернитесь на страницу настроек сообщества ВКонтакте, найдите поле Секретный ключ , вставьте в него содержимое буфера обмена и нажмите Сохранить :


  26. Переключитесь на страницу ЛК Webim. В нижней части формы выберите отдел из выпадающего списка, если пользователи данного канала должны попадать только на специалистов одного отдела, или оставьте значение Без отдела :


  27. В самом низу формы Webim нажмите кнопку Сохранить (см. иллюстрацию выше). Введённые значения полей будут проверены и сохранены. В случае успешной проверки и сохранения настроек форма закроется, на экране снова появится страница настроек каналов общения, на которой в списке появится только что созданный канал.
  28. Переключитесь на страницу настроек сообщества ВКонтакте и нажмите кнопку Подтвердить (если настройки вводятся повторно, кнопка будет называться Обновить ). После этого данные проверяются, и в случае успеха настройки сохранятся, а ниже появится надпись Адрес сервера успешно сохранён :


    В ином случае на этом же месте появится сообщение об ошибке:


  29. Выберите вкладку Callback API / Типы событий . На ней в разделе Сообщения отметьте флажок в поле Входящее сообщение , чтобы сервер Webim начал получать от сети ВКонтакте уведомления о новых личных сообщениях в Вашем сообществе:


  30. На этом настройка интеграции между сервисами Webim и ВКонтакте завершена.




Top