[Урок] Получение данных из AHK в ВКонтакте - Форум Cheat-Master.ru
  • Страница 1 из 1
  • 1
Модератор форума: Sanoxxx, Alowir, Phoenixxx_Czar  
[Урок] Получение данных из AHK в ВКонтакте
ZeusGang Дата: Пятница, 25.12.2015, 16:49 | Сообщение # 1
Боец
Сообщений: 100
Статус: Offline

Недавно, я решил встроить в один из своих скриптов некий Баг-Репорт, дабы можно было получать разную информацию о багах, и сразу решать их. Для этого, я решил использовать этот способ. Но, к сожалению, как только я вшил его в свой скрипт я понял, что мне он не очень сильно поможет, ибо заходить на хостинг ежедневно, и проверять "Нет ли новых сообщений" не очень удобно. Немного подумав, я решил использовать VK API, для того, чтобы получать сообщения прямо в ВК.
Приступим.
1. Для начала нам следует создать фейковый аккаунт ВКонтакте, свой использовать крайне не рекомендую.
2. Далее, заходим на наш аккаунт ВКонтакте и получаем токен для него: получить токен
Токен будет в ссылке наверху, вот пример:
api.vk.com/blank.html#access_token=вот тут ваш токен&expires_in=0&user_id=ваш id вконтакте
3. Редактируем под себя следующий php-файл(к примеру, я назвал его bagreport.php). Так же, на всякий случай, я дублирую все сообщения в файл report.txt:
Код
<?php
$text = $_GET['Text'];
$text2 = iconv('WINDOWS-1251', 'UTF-8', $text);
$text2 = str_replace(' ', '%20', $text2);

$file = 'report.txt';
$access_token = 'указываем ваш токен';

$current = file_get_contents($file);
$current .= "$text\n";

sendMessage($message[""], $text2);
file_put_contents($file, $current);

    function sendMessage($id, $text2){
        echo $id;
        global $access_token;
        file_get_contents("https://api.vk.com/method/messages.send?user_id=тут указываем Ваш id вк(куда будем получать сообщения)&message=AHK%20script:%20{$text2}&access_token={$access_token}");
    }
?>

ВАЖНО: хостингер и аналогичные хостинги блокируют file_get_contents, скрипт работать не будет
4. Прекрасно, работа с php окончена. Заливаем наш файл на любой хостинг. К примеру, мой находится по адресу: site.ru/bagreport.php
5. Начинаем работу с самим AHK.

В самое начало скрипта добавляем строку:
Код
RegRead, TimeString, HKEY_CURRENT_USER, SoftWare\SAMP, timeofscr ;Для сравнения времени отправки сообщений

И в нужное место вставляем код:
Код
    
infaprobl = Распишите свою проблему в окошке ниже. `nЕсли Вы хотите получить ответ, оставьте любой способ связи с вами(Skype, ВК, почта, телефон).`nПри желании вы можете связаться со мной в ВК.`nИнтервал подачи проблем: около 10 минут. ;Текст, который будет отображаться в InputBox`e
InputBox, problem, Сообщить о проблеме, %infaprobl%
    if ErrorLevel ;Если мы нажмем на кнопку отмены, скрипт не будет работать
    {
        MsgBox, 48, Отмена действия, Вы отменили Ваш запрос.
    }
    else
    {
        if problem = ;Если человек не ввел текст в окошко - сообщение не отправится
        {
            MsgBox, 16, Неудачно, Вы не ввели текст сообщения.
        }
        else
        {
            FormatTime, TimeString3, , MMdyyyyHHmm ;Получаем время компьютера пользователя
            TimeString2 := % TimeString + 10 ;Записываем в переменную TimeString2 время отправки сообщения и прибавку 10 минут(комментарий по этому поводу ниже)
            if TimeString3 > %TimeString2% ;Сравниваем время, если настоящее время больше, чем время прошлой отправки + 10 минут, то отправляем сообщение
            {
                URLDownloadToFile, http://site.ru/bagreport.php?Text=%problem%,%a_temp%/bagreport.php ;Отправка сообщения, site.ru/bagreport.php меняем на свое
                MsgBox, , Удачно, Отправлено следующее сообщение:`n%problem%
                FormatTime, TimeString, , MMdyyyyHHmm ;Запись времени отправки сообщения
                RegWrite, REG_SZ, HKEY_CURRENT_USER, Software\SAMP ,timeofscr , %TimeString% ;И сохранение в реестр, дабы люди не пытались обмануть систему(комментарий тоже ниже)
            }
            else ;Если 10 минут не прошло - сообщение не будет отправлено
            {
                MsgBox, 16, Неудачно, 10 минут еще не прошло.
            }
        }
    }
    return
; Если сообщение будет отправлено в конце часа, то вначале следующего таймер сбросится, что не так важно. Эта проверка для того, чтобы вашего бота не заблокировали за очень большое кол-во сообщений Вам.
; Опять же, на то, чтобы поменять время в реестре уйдет около 30 секунд. За это время бот не будет сильно флудить, и вк его не заблокирует.

6. На этом все. Благодарю за чтение моего урока. by ZeusGang for CM.

Код без использования php:


Сообщение отредактировал ZeusGang - Среда, 10.02.2016, 21:11
КАБАЧЕК Дата: Пятница, 08.01.2016, 16:06 | Сообщение # 2
Боец
Сообщений: 57
Статус: Offline
Интересная системка. Спасибо.
ZeusGang Дата: Воскресенье, 07.02.2016, 13:53 | Сообщение # 3
Боец
Сообщений: 100
Статус: Offline
АПну.
tumkin Дата: Воскресенье, 07.02.2016, 19:20 | Сообщение # 4
Tumkin Project
Сообщений: 1186
Статус: Offline
Как я понял ты используешь PHP. Хотя все это можно делать используя только ахк.

ZeusGang Дата: Среда, 10.02.2016, 21:06 | Сообщение # 5
Боец
Сообщений: 100
Статус: Offline
Цитата tumkin ()
Хотя все это можно делать используя только ахк.

Я видел твои скрипты. пусть я и понимаю ахк, но все-таки не могу делать настолько качественную защиту. Сделать нормальную защиту для ахк-скрипта на чм может только 5-6 человек, а они явно смогут составить этот код без моей помощи. Дарить апи кей явно не есть хорошо, в моем варианте потерять апи кей без вскрытия хоста не возможно.
Добавил в шапку код без php.
tumkin Дата: Четверг, 11.02.2016, 20:44 | Сообщение # 6
Tumkin Project
Сообщений: 1186
Статус: Offline
Работу с капчой бы встроил тогда ещё, и было бы идеально. Если запросит капчу - нагнулась тех. поддержка..

ZeusGang Дата: Понедельник, 04.07.2016, 17:23 | Сообщение # 7
Боец
Сообщений: 100
Статус: Offline
tumkin, немного позднее добавлю.

Добавлено (11.06.2016, 00:04)
---------------------------------------------
up

Добавлено (18.06.2016, 14:38)
---------------------------------------------
Поднял

Добавлено (04.07.2016, 17:23)
---------------------------------------------
up

  • Страница 1 из 1
  • 1
Поиск:
Статистика Форума