Answer the question
In order to leave comments, you need to log in
Album photo attachment in community private messages?
Hello, I need help.
There is a bot in PHP, it only implements a response to messages in text format.
It is necessary to make it so that, on command, the bot takes a photo from its album and makes an attachment to its message.
Here is the whole code:
<?php
require __DIR__.'/config/config.php';
require __DIR__.'/core/apiVK.php';
$v = new vk();
$confirmation_token = 'токен';
//Ключ доступа сообщества
$token = 'токен';
if (!isset($_REQUEST)) {
return;
}
//Получаем и декодируем уведомление
$data = $v->get();
//Проверяем, что находится в поле "type"
switch ($data->type) {
//Если это уведомление для подтверждения адреса сервера...
case 'confirmation':
//...отправляем строку для подтверждения адреса
echo $confirmation_token;
break;
//Если это уведомление о новом сообщении...
case 'message_new':
//...получаем id его автора
$uid = $data->object->user_id;
$user_msg = $data->object->body;
//затем с помощью users.get получаем данные об авторе
$user_info = $v->usersGet($uid);
//и извлекаем из ответа его имя
$info = array_shift(json_decode($user_info)->response);
$uname = $info->first_name;
//С помощью messages.send и токена сообщества отправляем ответное сообщение
$user_msg = mb_strtolower($user_msg);
if (strpos($user_msg, 'привет') !== false) {
$v->msgsend("Ответ'", $uid, $token);
}elseif (strpos($user_msg, 'помощь') !== false) {
$v->msgsend("Ответ", $uid, $token);
}elseif (strpos($user_msg, 'girl') !== false) {
$v->msgsend("На данный момент на сервере нету подобных фотографий :-(", $uid, $token);
}elseif (strpos($user_msg, 'boy') !== false) {
$v->msgsend("На данный момент на сервере нету подобных фотографий :-(", $uid, $token);
}elseif (strpos($user_msg, 'vape') !== false) {
$v->msgsend("На данный момент на сервере нету подобных фотографий :-(", $uid, $token);
}elseif (strpos($user_msg, 'porno') !== false) {
$v->msgsend("Держи бро", $uid, $token);
}else{
$v->msgsend("Извини, такой команды у меня нету :-(
Чтобы узнать все мои доступные команды, напиши - 'Помощь'", $uid, $token);
}
//Возвращаем "ok" серверу Callback API
echo('ok');
die;
break;
}
?>
Answer the question
In order to leave comments, you need to log in
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question