File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ # -*- coding: utf-8 -*-
2+ from flask import Flask
3+ import vk_api
4+
5+ """
6+ Пример бота для группы ВКонтакте использующего
7+ callback-api для получения сообщений.
8+
9+ Подробнее: https://vk.com/dev/callback_api
10+
11+ """
12+
13+ app = Flask (__name__ )
14+ vk_session = vk_api .VkApi (token = 'your_group_token' )
15+ vk = vk_session .get_api ()
16+
17+ access_code = "smthing code"
18+
19+ @app .route ('/my_bot' , methods = ['POST' ])
20+ def bot ():
21+ # получаем данные из запроса
22+ data = json .loads (request .data )
23+ # ВКонтакте в своих запросах всегда отправляет поле type:
24+ if 'type' not in data .keys ():
25+ return 'not ok'
26+
27+ # проверяем тип пришедшего события
28+ if data ['type' ] == 'confirmation' :
29+ # если это запрос защитного кода
30+ # отправляем его
31+ return access_code
32+ # если же это сообщение, отвечаем пользователю
33+ elif data ['type' ] == 'message_new' :
34+ # получаем ID пользователя
35+ from_id = data ['object' ]['from_id' ]
36+ # отправляем сообщение
37+ vk .messages .send (message = 'Hello World!' , random_id = 0 , peer_id = from_id )
38+ # возвращаем серверу VK "ok" и код 200
39+ return 'ok'
40+
41+ # точка входа приложения
42+ if __name__ == '__main__' :
43+ # запускаем веб-сервер
44+ app .run ()
You can’t perform that action at this time.
0 commit comments