2016-12-22 10 views
11

Я пишу агента, использующего API.AI Я наблюдаю, что мой back-end не вызывается каждый раз. Я вижу это в моих журналах доступа. Любая идея, что может вызвать проблему?API.AI не подключается к моему back-end

Вот ответ консоли:

{ 
    "id": "c1902c75-1550-43f6-9cc8-b0461f1dfac7", 
    "timestamp": "2016-12-22T19:58:13.49Z", 
    "result": { 
    "source": "agent", 
    "resolvedQuery": "echo test", 
    "action": "", 
    "actionIncomplete": false, 
    "parameters": { 
     "myInput": "test" 
    }, 
    "contexts": [], 
    "metadata": { 
     "intentId": "062b4383-06a0-40fe-bbeb-9189db49aeb8", 
     "webhookUsed": false, 
     "webhookForSlotFillingUsed": "false", 
     "intentName": "Response" 
    }, 
    "fulfillment": { 
     "speech": "", 
     "messages": [ 
     { 
      "type": 0, 
      "speech": "" 
     } 
     ] 
    }, 
    "score": 0.75 
    }, 
    "status": { 
    "code": 200, 
    "errorType": "success" 
    }, 
    "sessionId": "70be8f65-81f0-40be-a271-84a2d4960224" 
} 

Я не вижу там нет ошибки, которая объясняет, почему мой бэкенд не называется.

Вот скриншот моего намерения:

my intent with webhook

+1

Это ответ API.AI JSON, который возвращается после вашего намерения, настроили ли вы какой-либо webhook. Вы создали webhook для вашего бэкэнда? – Connor

+0

Конечно, я иногда настраивал обратный вызов (когда я удаляю интеграцию slack и добавляю его), он отлично работает. Я не уверен, почему он перестает работать. – rekire

+0

У вас есть журналы на вашей стороне? Возможно ли, что запросы терпят неудачу/возвращают некоторый код не-200? – Connor

ответ

2

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

основном поток

1) пользователь вводит входные данные.

2) api.ai пытается совместить вход пользователя с определенными вами намерениями, если не найден, он попадет в резервное намерение.

3) как только соответствующее намерение будет согласовано, тогда api.ai попытается извлечь параметры из предложения пользователя.

4) после того, как все необходимые параметры найдены, он будет вызывать действие, которое вы определили в намерении.

ПРИМЕЧАНИЕ: если ни один из параметров не требуется в намерении, он непосредственно вызывает действие.

+0

Я думаю, вы правы позже, я всегда определял это действие, и он работает. – rekire