PHP Рассылка вк без подписок на PHP

Revalto

Известный
Автор темы
532
225
Всем привет, сливаю вам скрипт для рассылки в группу без всяких там подписок.
Автор: Revalto ( Я )
Сам скрипт:​
Код:
<?php
$token = 'ваш токен';
$textbot = "Рассылочка Revalto";

for($i = 0; $i < 16; $i++) { // Ну вообщем тут уже сами вместо 16 подставляете круги. Количество диалогов / 200 = число
    $request_params = array(
        'offset' => ($i * 200),
        'count' => 200,
        'access_token' => $token,
        'v' => '5.91'
    );
    $ss = file_get_contents('https://api.vk.com/method/messages.getDialogs?'. http_build_query($request_params));
    $ss = json_decode($ss, true);
    for($is = 0; $is <= 200; $is++) {
        $request_params = array(
            'message' => $textbot,
            'user_id' => $ss['response']['items'][$is]['message']['user_id'],
            'access_token' => $token,
            'v' => '5.0'
        );
        file_get_contents('https://api.vk.com/method/messages.send?'. http_build_query($request_params));
    }
}
?>
 

Romelo

dev.
Проверенный
540
622
1. Метод messages.getDialogs уже не поддерживается и совсем скоро его вовсе уберут.
- Заменён на messages.getConversations.
2. Метод messages.send для ключа доступа сообщества может отправить одним запросом сообщения 100-а пользователям.
3. Это рассылка загнется еще на самом старте, если конечно у вас не 5-10 юзеров в рассылке.

Любые рассылки на php - дичь полная.
 
  • Нравится
Реакции: все еще. 44

Revalto

Известный
Автор темы
532
225
1. Метод messages.getDialogs уже не поддерживается и совсем скоро его вовсе уберут.
- Заменён на messages.getConversations.
2. Метод messages.send для ключа доступа сообщества может отправить одним запросом сообщения 100-а пользователям.
3. Это рассылка загнется еще на самом старте, если конечно у вас не 5-10 юзеров в рассылке.

Любые рассылки на php - дичь полная.
Могу поспорить с 3ым пунктом. Писал данную рыссулку для группы в 3200 диалогов. Рассылка прошла успешно.
Скрины
Затарчено примерно 3-7 минут.
 

Romelo

dev.
Проверенный
540
622
Могу поспорить с 3ым пунктом. Писал данную рыссулку для группы в 3200 диалогов. Рассылка прошла успешно.
Это мало в плане диалогов и долго по времени. У меня бы ушло 30 секунд.
Буквально вчера тестировал collectStream, слишком долго собирает все диалоги с помощью метода messages.getConversations.
Поэтому я делаю рассылку через базу данных, пускай даже юзеров не существует..
Регистрируешь юзеров, обычным циклом получаешь вк логины.

Вот тебе код, взял со своего старого исходника.
Убирай $attach, если не собираешься отправлять какие-то вложения.
PHP:
function send_all_message($users, $message, $attach){
$get_params = http_build_query(array('message'=>$message,'attachment'=>$attach,'user_ids'=>$users,'access_token'=>$GLOBALS[token],'v'=>'5.80'));
$send = file_get_contents('https://api.vk.com/method/messages.send?'.$get_params);
if(preg_match('/error/iu',$send)){return 1;}else{return 0;}
}



$users = mysql_query("SELECT * FROM `users`"); // на свой вкус и цвет, дал тебе основу
$count = 0;
$users_list = '';
while($users_info = mysql_fetch_array($users))
{ 
$count++;
if($count < 100) { $users_list = $users_list.$users_info['login'].','; }
if($count == 100) {
$users_list = $users_list.$users_info['login'];
$count = 0;
send_all_message($users_list, $spam, $attach);    
$users_list = '';
}
}
if($users_list) {
$last_users = substr($users_list, 0, -1); 
send_all_message($last_users, $spam, $attach);    
}
 
Последнее редактирование:
  • Нравится
Реакции: Revalto

xISRAPILx

Перепишу свою жизнь на PHP
Проверенный
248
173
1. Метод messages.getDialogs уже не поддерживается и совсем скоро его вовсе уберут.
- Заменён на messages.getConversations.
2. Метод messages.send для ключа доступа сообщества может отправить одним запросом сообщения 100-а пользователям.
3. Это рассылка загнется еще на самом старте, если конечно у вас не 5-10 юзеров в рассылке.

Любые рассылки на php - дичь полная.
Используем execute и увеличиваем скорость в несколько раз. Если у человека кривые руки - ЯП их не выпрямит. На любом языке будут действовать ограничения ВК по количеству запросов в секунду, если конечно вы не боитесь капчи.
 

Revalto

Известный
Автор темы
532
225
Используем execute и увеличиваем скорость в несколько раз. Если у человека кривые руки - ЯП их не выпрямит. На любом языке будут действовать ограничения ВК по количеству запросов в секунду, если конечно вы не боитесь капчи.
- Группа вк
-- Капча
=== Рофл
 

iAmerican

Известный
Друг
615
257
Можете разжевать ? Это флудилка по подписчикам в своём паблике? И как на это сам ВК реагирует , банят?
 

Revalto

Известный
Автор темы
532
225
Можете разжевать ? Это флудилка по подписчикам в своём паблике? И как на это сам ВК реагирует , банят?
Просто перебирает все диалоги в твоем сообществе и пишет этим людям текст который ты укажешь :)
Не банят, это же рассылка, капчи так же нету, ведь это группа, а не страница.
Код можно применить на страницу вк, но придется юзать антикапчу какую то :D