Как создать бота с кнопками в ВК

Сегодня мы будем рассматривать разработку простого callback бота на PHP 5.6+ для вашей беседы или группы в ВК.
Для обращения к api Вконтакте будем использовать библиотеку SimpleVK разработанную нашей командой. Для запуска бота потребуется сервер. Можно поискать бесплатные хостинги, но на них не всегда хорошо работают боты, или же купить себе дешевый VDS за 150р.
Решили купить VDS? Посмотрите статью по настройке VDS .

О настройке и бота и установку в сообществе можете прочитать здесь

Разработка бота

Теперь перейдем к разработке. Устанавливаем себе библиотеку отсюда , процесс установки написан там же. Если вам не интересна установка руками, то в конце статьи будет ссылка на скачивание всего проекта, который работает из коробки.
В моем случае, я установил библиотеку через composer, что и вам советую, через него удобно обновляться на новые версии библиотеки. Создаем и открываем bot.php, пишем код:

setConfirm(CONFIRM_STR); $vk->debug(); //включение дебаг режима. Если в коде ошибка — ее можно посмотреть в неудавшихся запросах $vk->initVars($id, $message, $payload); //инициализация переменных $info_btn = $vk->buttonText(‘Информация’, ‘blue’, [‘command’ => ‘info’]); //создание кнопки if ($payload) < //если пришло нажатие кнопки if($payload[‘command’] == ‘info’) //если это кнопка info $vk->reply(‘Тебя зовут %a_full%’); //отвечает пользователю или в беседу > else //если пришло обычное сообщение $vk->sendButton($id, ‘Видишь кнопку? Нажми на нее!’, [[$info_btn]]); //отправляем клавиатуру с сообщением

Весь код прокомментирован. Вам осталось внести свой ключ и строку подтверждения сервера в константы и залить файл на сервер. В настройках сообщества указываете путь до скрипта и нажимаете «Подтвердить». Теперь бот работает как и в сообществе, так и в беседе(не забудьте дать боту админа)

Еще по теме:  Как удалить свою тему ВК

Как создать бота в (Robochat) «ЧАСТЬ2» #бот. ДЕЛАЕМ КЛИКЕР!!!!


И собственно, весь проект вы можете скачать по ссылке ниже

Если ссылки не видно, и вы сидите с мобильного устройства нажмите «Читать на ScriptHub.ru»

Подписывайтесь на нас в ВК, Одноклассники, Facebook, Twitter, Telegram

Чат Вконтакте для общения по разработке ботов: https://vk.me/join/AJQ1dzQRUQxtfd7zSm4STOmt

Поддержите курс монеткой:
Сбер — 2202 2012 7265 2211
Яндекс.Деньги — 410014638432302
Bitcoin кошелек — 1DwRVf5gTqaWqJ65qQHc4nHFVBfRH3xSJ1

Новость отредактировал: Runnin — 1.10.2019, 01:11
Причина: Исправлена ошибка в коде

Runnin

  • Runnin
  • Боты / Боты вк
  • 2019-03-15
  • 11 729

Источник: scripthub.ru

Гайд VK Бот на Python 2 часть — Keyboard / Динамичное меню

Mamashin

Известный

Автор темы

Делаем бота с клавиатурой в ВКонтакте

да я все же выжил.
Всем привет. Уже писал тему с ботом для вк, там мы использовали модуль vk_api(честно сказать не очень для постоянной основы).
Сегодня немного познакомлю вас с таким модулем как vkbottle, ко всем строкам в коде буду оставлять комментарии, так что не бойтесь.
Хотел бы начать с того, что данный модуль действительно удобен во многом — код, реакция на ошибки со стороны вк, структура.
НАДА:
1. Python(Желательно 3.9) — python.org
2. Любой кодовый редактор(НЕ БЛОКНОТ!) — Notepad ++, Atom, VSC, IDLE Python, PyCharm, я использую Sublime Text и вам советую.
3. Сама библиотека vkbottle — Установка: pip install vkbottle
4. Так же библиотека asyncio — pip install asyncio

Так же:
pip install requests

ВНИМАНИЕ! В данном гайде я не буду рассказывать как создать python-файл и как запустить его, так как если вы не знаете этого, данная тема будет вам довольно сложна и не понятно, советую вам начать с vk_api если так надо.

Начнём с настройки сообщества, перед этим создаем его, создаем API ключ, ставим галочки на нужные евенты, так же и с LongPoll, затем ставим самую последнию версию Long Poll Api(Советую 5.131)

Еще по теме:  Почему Вконтакте стало много рекламы

Спойлер: LongPoll Set

Затем, заходим в «Сообщения» включаем их, так же включаем возможности ботов, по желанию можно включить кнопку «Начать» и указать приветствие.

Спойлер: Message Set

Теперь копируем наш созданный API ключ, так же нам нужно ID сообщества(цифры после public. ) если у вас паблик уже с аудиторией, вы можете узнать ID своего паблика тут -regvk.com

Теперь наконец-то, мы можем перейти к коду =)
Для начала импортируем нужные нам библиотеки и библиотеки которые мы установили.
Затем создадим переменные в которые поместим и передадим нужные нам данные, в нашем случае это токен и id нашей группы.
Так же, дабы не ходить во круг и около, создадим первую функцию ответа на сообщение!

Теперь сразу разберем вопрос с вложениями видео/фото/файлы и тд
В методах вк -vk.com/dev, в категории messages, есть метод attachment — отвечающий за прикрепление вложений к сообщению.
Создадим пару функций..

Спойлер: Result

Теперь рассмотрим клавиатуру и напишем простое динамичное меню, так же добавим ответ на сообщение которое мы не знаем =)

Keyborad + Menu:

Источник: www.blast.hk

6stprod/vk_bot

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Switch branches/tags
Branches Tags
Could not load branches
Nothing to show
Could not load tags

Nothing to show

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Cancel Create

  • Local
  • Codespaces

HTTPS GitHub CLI
Use Git or checkout with SVN using the web URL.
Work fast with our official CLI. Learn more.

Еще по теме:  Как установить невидимку в ВК

Sign In Required

Please sign in to use Codespaces.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching Xcode

If nothing happens, download Xcode and try again.

Launching Visual Studio Code

Your codespace will open once ready.

There was a problem preparing your codespace, please try again.

Latest commit

Git stats

Files

Failed to load latest commit information.

Latest commit message
Commit time

README.md

Данного бота я делал для сервиса розыгрышей jokenews.ru

ВНИМАНИЕ — Для работы с ВК боту необходим HTTPS

  1. Поместить скрипты в папку на хостинге (Например: https://site.com/bot/ . файлы keyboard_bot.php и vk_api.php . )
  2. Заходим в группу ВК, нажимаем «Управление» — выбираем «Работа с API», в разделе «Ключи доступа» создаем ключ, токен (длинный ключ, который необходимо вписать в файл keyboard_bot.php) При создании ключа доступа во всплывающем окне выбираем «Разрешить приложению доступ к сообщениям сообщества» и к фотографиям (если вы будете отправлять изображения пользователю)
  3. Далее выбираем «Callback API» — Настройки сервера: выбираем версию API 5.75, в адрес сервера вписываем полный путь до скрипта. Ниже появится пояснялка со строкой «Строка, которую должен вернуть сервер: xxxxxxxx» — xxxxxxxx это ваш ключ, который так же необходимо вписать в keyboard_bot.php и нажимаем «Подтвердить» — должно отобразиться зеленое оповещение, что сервер подтвержден. Секретный ключ генерируем свой. «Callback API» — Тип события: — выбираем «Входящее сообщение»
  4. В правом меню (где настройки группы) выбираем Сообщения — настройки для бота и включаем «Возможности бота», а так же обе галочки.

Думаю, все понятно. Если есть вопросы, обращайтесь.

About

ВК Бот для группы. Отображает пользователю меню с кнопками. На каждую кнопку можно настроить определенное действие. Написан для 5.78 VK API.

Источник: github.com

Рейтинг
( Пока оценок нет )
Загрузка ...