Меню
Светлый путь
  • Главная
  • Документация
    • Php
    • Linux
    • Windows
    • Bitrix
    • WordPress
    • Полезное
  • Бесплатный хостинг
    • Российский бесплатный хостинг
    • Зарубежный бесплатный хостинг
  • Книги
    • Администрирование
      • Windows
      • Linux
      • Cisco
      • Other
    • Программирование
      • Delphi
      • Python
      • PHP
      • Assembler
      • Kotlin
    • Хакинг
    • Вирусы
    • SEO
  • Журналы
    • Хакер Спец
Светлый путь

Создаем примитивного VK для ответа на сообщения

Опубликовано 23 июня, 202124 июня, 2021

Бота будет создавать для сообщества для этого нужно его сперва настроить в группе для отправки сообщения. Переходим в настройки.

Далее в раздел Сообщения и включаем данную функцию, без нее работать наш бот не будет.

Далее переходим: Настройки -> Работа с API -> Ключи доступа и создаем ключ со следующими параметрами: Далее нажимает создать ключ и разрешить доступ к управлению сообществом и отправку сообщений от сообщества

Далее запрашивает подтверждение по телефону для создания ключа.

Получаем вот такой код (токен)

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

С настройками сообщества пока закончим, но в данный раздел нам нужно будет еще вернутся, теперь приступаем к написанию кода для нашего будущего бота. Конечно в данной статье я не буду показывать основные функции своего бота, а лишь небольшую часть, остальное Вы сможете сделать сами при желании, это лишь начальный этап создания бота, учитывайте это.

Бота мы будем писать на PHP.

Открываем редактором и начинаем писать код.
Вместе с исходником, я положу библиотеку, без нее бот работать не будет, библиотека является общедоступной, ее можно найти на просторах интернета.   

Библиотека упрощает работу с кодом и методами API VK можно скачать здесь.

<?php
require_once('simplevk-master/autoload.php');
use DigitalStar\vk_api\VK_api as vk_api; // Основной класс

Теперь создаем константы

const VK_KEY = "127bd1e64d97f0c71813ef13ba3d0eccfca127bd1e64d97f077bb346127bd1e64d97f0";  // Токен сообщества
const ACCESS_KEY = "13c587b3a0";  // Тот самый ключ из сообщества 
const VERSION = "5.80"; // Версия API VK

Их нужно заполнить. в кавычках вставляем тот самый длинный код (токен), вторую константу мы берем с настроек группы управление ->Работа Api и на вкладке Callback API берем строку которая должна вернуть сервер в моем случае это 5c92b645, а в 3 пишем версию API, которую мы будем использовать. Давайте возьмем 5.80. Нам так же нужно указать и ACCESS_KEY его мы берем в сообществе.

<?php

require_once('simplevk-master/autoload.php');
use DigitalStar\vk_api\VK_api as vk_api; // Основной класс


const VK_KEY = "127bd1e64d97f0c71813ef13ba3d0eccfca127bd1e64d97f077bb346127bd1e64d97f0";  // Токен сообщества
const ACCESS_KEY = "13c587b3a0";  // Тот самый ключ из сообщества 
const VERSION = "5.80"; // Версия API VK

Теперь нам нужно создать экземпляр класса работы с api, получить и декодировать JSON пришедший из VK и сообщить VK что мы приняли callback.

Еще нам понадобятся переменные для работы с сообщением от пользователей и индификатор пользователя для дальнейшей работы.

Получаем следующий код:

$vk = vk_api::create(VK_KEY, VERSION)->setConfirm(ACCESS_KEY);

$vk->initVars($peer_id, $message, $payload, $vk_id, $type, $data); // Инициализация переменных

$id = $data->object->from_id; // Узнаем ID пользователя
$message = $data->object->text; // Сообщение от пользователя

Для начала нам нужно получить объект новых сообщений, для его дальнейшей обработки:

if ($data->type == 'message_new') {


    }

Теперь можно попробовать обработать первую команду! Наша команда будет обрабатывать строку hello, давайте напишем ее:

if ($data->type == 'message_new') {

    if ($message == 'hello') {

            $vk->sendMessage($peer_id, "Привет"); // Отправляем ответ
            
        }


    }

Это уже примитивный бот который может здороваться с вами.

Теперь подключим скрипт в сообщества это более быстрый вариант, что бы выполнялся автоматически или как вариант можете в крон задачу поставить это уже дело вкуса. Закачиваем файл с библиотекой на сервер и можно тестировать.

Search

Свежие записи

  • Использование фильтра plugin_row_meta WordPress
  • Cron отключаем отправку писем при выполнении заданий
  • Использование библиотеки phpQuery в PHP
  • MariaDB/MySQL: general_log – логгирование всех запросов
  • Ошибка Mysql 1142. Got error: 1142.

Свежие комментарии

    Архивы

    • Январь 2023
    • Декабрь 2022
    • Сентябрь 2022
    • Август 2022
    • Июль 2022
    • Июнь 2022
    • Май 2022
    • Июль 2021
    • Июнь 2021
    • Февраль 2021
    • Октябрь 2020
    • Сентябрь 2020
    • Август 2020
    • Июль 2020

    Рубрики

    • Bitrix
    • htaccess
    • Linux
    • Mysql
    • Php
    • SEO
    • Uncategorized
    • Windows
    • WordPress
    • Бесплатный хостинг
    • Веб Сервер
    • Документация
    • Зарубежный бесплатный хостинг
    • Книги
    • Полезное
    • Российский бесплатный хостинг

    Мета

    • Войти
    • Лента записей
    • Лента комментариев
    • WordPress.org

    Тизер

    cod

    ©2023 Светлый путь | sinicha.ru | animesound.sinicha.ru | hentaij.ru
    Яндекс.Метрика