· 6 years ago · Apr 01, 2019, 06:40 PM
1
2
3<?php
4
5if (!isset($_REQUEST)) {
6 return;
7}
8
9$confirmationToken = '';
10
11
12$token = '';
13
14$secretKey = '';
15
16$data = json_decode(file_get_contents('php://input'));
17
18if(strcmp($data->secret, $secretKey) !== 0 && strcmp($data->type, 'confirmation') !== 0)
19 return;
20 $peer=$data->object->peer_id;
21 $msg=$data->object->text;
22 $chat=$peer-2000000000;
23 $message=explode(' ',$data->object->text,2);
24 $from=$data->object->from_id;
25 $userInfo = json_decode(file_get_contents("https://api.vk.com/method/users.get?access_token={$token}&user_ids={$fromId}&v=5.92"));
26
27switch ($data->type) {
28
29 case 'confirmation':
30
31 echo $confirmationToken;
32 break;
33}
34class api{
35
36 public function send ($peer, $message, $token) {
37$params = array(
38'message' => $message,
39'peer_id' => $peer,
40'random_id' => 0,
41'v' => '5.92',
42'access_token' => $token
43);
44return file_get_contents('api.vk.com/method/messages.send?'.http_build_query($params));
45}
46
47 public function method ($method, $params, $token) {
48return file_get_contents("https://api.vk.com/method/{$method}?".http_build_query($params)."&v=5.92&access_token={$token}");
49}
50
51 public function sendSticker($peer, $sticker_id, $token){
52$params = ['peer_id' => $peer,'random_id' => 0,'sticker_id' => $sticker_id] ;
53return file_get_contents("https://api.vk.com/method/messages.send?".http_build_query($params)."&v=5.92&access_token={$token}");
54}
55
56 public function kick($chat,$user,$token){
57$params = ['chat_id'=>$chat,'user_id'=>$user,'access_token'=>$token];
58return file_get_contents("https://api.vk.com/method/messages.removeChatUser?".http_build_query($params)."&v=5.92");
59}
60
61 public function randomStr($length = 10) {
62$characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
63$charactersLength = strlen($characters);
64$randomString = '';
65for ($i = 0; $i < $length; $i++) {
66$randomString .= $characters[rand(0, $charactersLength - 1)];
67};
68return $randomString;
69}
70
71 public function info($peer,$token){
72$params=['peer_id'=>$peer,'access_token'=>$token,'v'=>'5.92'];
73return json_decode(file_get_contents("https://api.vk.com/method/messages.getConversationMembers?".http_build_query($params)));
74}
75
76 public function transl($text,$yapi){
77$params=['lang'=>'en-ru','text'=>$text,'key'=>$yapi];
78$msg=json_decode(file_get_contents("https://translate.yandex.net/api/v1.5/tr.json/translate?".http_build_query($params)));
79return $msg->text[0];
80}
81}
82
83$vk= new api();
84
85 if (in_array($msg, array("/Ñофт"))){
86
87 $vk->send($peer,"ОК",$token);
88 }
89
90elseif (in_array($msg, array("/date","/дата","/времÑ","/time"))){
91 setlocale(LC_ALL, ru_RU);
92 $datef=date('F');
93 $dated=date('d');
94 $dateh=date('h')+3;
95 $dates=date('i:s');
96 $datem=$datef.', '
97 .$dated;
98 $dateo=$dateh.':'.$dates;
99 $request_params = array(
100 'message' =>
101 "{$datem}. ВремÑ: {$dateo}",
102 'peer_id' => $userId,
103 'access_token' => $token,
104 'v' => '5.92',
105 'random_id' => rand());
106
107
108$get_params = http_build_query($request_params);
109
110file_get_contents('https://api.vk.com/method/messages.send?' . $get_params);
111}
112?>