С помощью webhook, установленных на сообщения пользователей, можно реализовать систему автоответов (бота).
При отправке такого типа webhook в POST параметрах приходит текст сообщения пользователя, которое можно проверить по словарю и отправить соответствующий ответ через Web API.
Метод, позволяющий ответить в диалоге через Web API, описан здесь.
Ниже приведем простой пример на python 2.7:
# -*- coding: utf-8 -*-
import json
import re
import requests
TOKEN = 'xxx' //токен приложения можно сгенерировать в панели администратора Настройки -> Разработчикам
QUESTIONS = [{'question':'Привет, как дела', 'answer':'Привет, отлично!'}] //Массив, по которому будем проверять совпадения фразы
def run(request):
conversation = json.loads(request['conversation'])
conversation_body = conversation['body'].upper()
conversation_id = str(conversation['conversation'])
for element in QUESTIONS:
exp = re.compile(r'(#\s|)(' + element['question'].upper() + ')')
if exp.search(converstation_body):
param = {"body": element['answer']}
response = requests.post('https://api.carrotquest.io/v1/conversations/%d/reply?auth_token=%s' % (conversation_id, TOKEN), data=param)