Отправка сообщений всем пользователям(друзьям) в vk через скрипт

Отправка сообщений всем пользователям(друзьям) в vk через скрипт

Для того чтобы оправлять сообщения пользователям(своим друзьям) или другим через консоль, используя php скрипт необходимо выполнить несколько шагов.

Шаг1. Создать в VK standalone-приложение vk.com/editapp?act=create

Имя пишем какое угодно — фигурировать оно нигде не будет.
Тип — Standalone-приложение.

Далее потребуется ввести код с смс-ки которая придет на привязанный к аккаунту номер. После ввода кода ничего не меняем в полях, идем в настройки и копируем ID приложения.

 

Шаг2. Перейдем по ссылке вида

https://oauth.vk.com/authorize?client_id=ИД_ПРИЛОЖЕНИЯ&display=page&redirect_uri=https://oauth.vk.com/blank.html&scope=ПРАВА_ДОСТУПА&response_type=token&v=5.37

где,
заменяем CLIENT — на id вашего приложения послу выполнения шага 1.
заменяем ПРАВАДОСТУПА — на права для вашего приложения,например(messages,wall,photos,friends). Более подробно о правах — здесь здесь.
Вставим строку в адресную строку браузера и нажмем Enter. Появится окно

Нажимаем разрешить.
В адресной строке появиться новая строка с токеном такого вида. Токен выделен красным. Он то нам и нужен. Он начинается после token= и заканчивается перед &. Скопируем его куда нибудь.

Теперь собственно сам скрипт php, который отправляет сообщение всем пользователям вк, указанным в массиве. Для его использования необходимо чтобы в системы был пакет curl и php-cli, в интернете найдете без проблем инструкции для Linux(если у вас винда — «бейтесь головой»).

//Создадим переменную, 1 - текст
$text = "$argv[1]";
$token="";
$id = array(юзерid1, юзерid2);
foreach ($id as &$value) {
$address="https://api.vk.com/method/messages.send?user_id=$value&v=5.37&access_token=$token&message=$text";
// создание нового ресурса cURL
$ch = curl_init();
// установка URL и других необходимых параметров
curl_setopt($ch, CURLOPT_URL, "$address");
echo "$address";
//а это что бы на страницу не выводилось
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
//это в справочнике прочтете
curl_setopt($ch, CURLOPT_HEADER, 0);
// загрузка страницы и выдача её браузеру другими словами при открытии страницы где вы этот скрипт сделаете автоматически отправится сообщение в заданный вами телеграм чат.
curl_exec($ch);
// завершение сеанса и освобождение ресурсов
curl_close($ch);
}

где
юзерid1, юзерid2 — надо заменить на id пользоветелей, которым вы хотите отправлять сообещения(может быть сколько угодно),
$token =»»;между кавычками вставляем токен,который мы получили выше.
Ограничения на отправку(обращение к api) vk — не более 3-х в секунду.
Теперь нам надо получить список пользователей, которым мы будем отправлять сообщения.
Это делается запросом вида в адресной строке или через консоль:
В строке браузера

https://api.vk.com/method/friends.get?user_id=вашюзер_ид&message='test'&v=5.37&access_token=токен

В консоли Linux

curl -i  https://api.vk.com/method/friends.get?user_id=вашюзер_ид&v=5.37&access_token=токен

Он вернет вам массив с пользователями, который вы вставите в скрипт.

Запуск скрипта

Переходим в каталог со скриптом и запускаем его через консоль. Допустим мы сохранили скрипт с именем script.php

chmod 775 script.php
php script.php "Отправленный_текст"

В тексте не должно быть пробелов, пока не разобрался как отправлять с пробелами.
Для тестирования можете отправить себе.

Добавить комментарий

Войти с помощью: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *

 

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.