Почати, як ви вже здогадалися, потрібно було з пошуку баз для відповідей бота і елементарного технічного завдання, яке допомогло б зробити все швидко і з мінімальною кількістю милиць (у мене без милиць не вийшло).
Трохи раніше я познайомився з одним цікавим проектом від компанії "Наносемантіка", яка займається подібними завданнями і створює, на кшталт, комерційних ботів-САППОРТ та інше. Цей проект - iii.ru. На сайті проекту можна створити бота і отримати його flash-версію для вставки на сайті. API у них не було, довелося декомпілювати swf.
Перше, що прийшло до мене в голову, коли я відкрив декомпільовану код SWF файлу - де тепер знайти точку виведення відповідей і яким чином це все перевернути в сторону своєї задумки. Здивуванню не було меж, коли я побачив, що всі запити і відповіді шифруються за допомогою XOR + Base64, а ключ для розшифровки був на початку коду. Навіщо тоді кріптовать?
Основні завдання, які повинен був виконувати мій бот - отримувати останні повідомлення з "Вконтакте", відсилати їх на сервер, отримувати відповідь, відправляти відповідь людині, яка спілкується з ботом.
Було створено такі файли:
- index.php (працює як клієнт, відновлювальний за допомогою jquery файл з підвантаженням що прийшли і подальшою відповіддю)
- autoload.php (власне, той файл, який приймає і відповідає)
- showmeid.php (файл, який створює новий ID чату, якщо співрозмовник вперше спілкується з ботом)
- config.php (коннект до бази даних з клієнтами бота)
- classes.php (класи для роботи з ботом)
- Імпорт dump.sql в свою базу даних
- Отримайте "довгограючий" access token для роботи з VK API за допомогою посилання - отримати token
- Перейменуйте config.sample.php в config.php попередньо змінивши дані для конекту до бази даних
- Користуйтеся запустивши index.php
UPD: Якщо бот не відповідає - значить блокується відправка повідомлення проханням ввести капчу.