Below are the web services to call up to interact with the bot.
Asking a question
To ask a question to the Bot specify the standard "RFAQ" node in the request and pass the text of the question in the "hda_sematic_question" parameter.
Syntax:
HTTP GET https://{brain-host}:{port}/brain/autojson/{brain-service}/RFAQ?hda_semantic_question={question}
Query string parameters:
Name | Description |
---|---|
hda_semantic_question | Text that will be passed to the bot to be interpreted |
To trace the session, the "cookie" header must be set with the value of the session cookie.
The first request will not present the session cookie, but its response will contain the "set-cookie" header with the value of the session cookie. This cookie must be used for all subsequent requests of the same session:
headers = {
cookie: <BRAINSID_SessionCookie>
};
Example:
Text Response:
{ "node":{ "brain_id":"n_22367", "brain_version":"5.10.0-SNAPSHOT", "id":"n_22367_725744298", "key":"TEST_NODE_MSG", "serviceName":"enghouse-brain-bot", "serviceVersion":"1", "contents":{ "content":[ { "bargein":"true", "brain_id":"c_22367_1", "contentType":"VIDEO", "id":"c_22367_1_1782882512", "usePreviousText":"false" }, { "bargein":"true", "brain_id":"c_22367_3", "contentType":"TEXT_CONTENT_RICH", "id":"c_22367_3_41735189", "usePreviousText":"false", "text":"Questo è un contenuto di <b>test</b>." }, { "bargein":"true", "brain_id":"c_22367_2", "contentType":"READABLE_PLAIN", "id":"c_22367_2_1418502948", "usePreviousText":"false", "text":"Questo è un contenuto di *test*." } ] } } }
Menu Response:
{ "node":{ "brain_id":"n_22369", "brain_version":"5.10.0-SNAPSHOT", "id":"n_22369_698945808", "key":"TEST_MENU", "serviceName":"enghouse-brain-bot", "serviceVersion":"1", "contents":{ "content":[ { "bargein":"true", "brain_id":"c_22369_1", "contentType":"VIDEO", "id":"c_22369_1_494762750", "usePreviousText":"false" }, { "bargein":"true", "brain_id":"c_22369_3", "contentType":"TEXT_CONTENT_RICH", "id":"c_22369_3_1619889357", "usePreviousText":"false", "text":"Choose an option" } ] }, "actions":{ "action":{ "brain_id":"a_34423", "command":"menu", "content":"", "id":"a_34423_1259541208", "order":"1", "runAt":"-1", "target":"", "actions":{ "action":[ { "brain_id":"a_34424", "command":"load-item", "content":"OPTION 1", "id":"a_34424_1211377995", "order":"1", "runAt":"-1", "target":"TEST_M_1", "node_ref":{ "key":"TEST_M_1", "targetUrl":"/enghouse-brain-bot/1/TEST_M_1?referrerActionId=34424" } }, { "brain_id":"a_34425", "command":"load-item", "content":"OPTION 2", "id":"a_34425_308197190", "order":"2", "runAt":"-1", "target":"TEST_MENU_2", "node_ref":{ "key":"TEST_MENU_2", "targetUrl":"/enghouse-brain-bot/1/TEST_MENU_2?referrerActionId=34425" } }, { "brain_id":"a_34426", "command":"open-url", "content":"PAT WEBSITE", "id":"a_34426_1665019718", "order":"3", "runAt":"-1", "target":"https://www.pat.eu", "params":{ "param":[ { "name":"method", "text":"GET" }, { "name":"where", "text":"_blank" } ] } } ] }, "params":{ "param":{ "name":"display", "text":"v" } } } } } }
Calling a specific node
This service must be called whenever it is specified by a previous response. For example, in the case of a menu, one of the options can specify a node url to be called in the "targetUrl" parameter if the option is chosen by the user.
Syntax:
HTTP GET http://{brain-host}:{port}/brain/autojson/{brain-service}/{node}
headers = {
cookie: <BRAINSID_SessionCookie>
};
Example
Response:
{ "node":{ "brain_id":"n_22370", "brain_version":"5.10.0-SNAPSHOT", "id":"n_22370_1287493518", "key":"TEST_M_1", "serviceName":"enghouse-brain-bot", "serviceVersion":"1", "contents":{ "content":[ { "bargein":"true", "brain_id":"c_22370_3", "contentType":"TEXT_CONTENT_RICH", "id":"c_22370_3_266538648", "usePreviousText":"false", "text":"Option 1 selected" }, { "bargein":"true", "brain_id":"c_22370_1", "contentType":"VIDEO", "id":"c_22370_1_962092860", "usePreviousText":"false" } ] } } }
Redirect to operator
The human escalation is triggered by a redirect-to-operator action. It is possible to specify the target queue, the requested service level and skills.
Example
{ "node":{ "brain_id":"n_22357", "brain_version":"5.10.0-SNAPSHOT", "id":"n_22357_1488672544", "key":"REDIRECT_TO_OPERATOR", "serviceName":"enghouse-brain-bot", "serviceVersion":"1", "contents":{ "content":[ { "bargein":"true", "brain_id":"c_22357_2", "contentType":"READABLE_PLAIN", "id":"c_22357_2_942788559", "usePreviousText":"false" }, { "bargein":"true", "brain_id":"c_22357_1", "contentType":"VIDEO", "id":"c_22357_1_506882387", "usePreviousText":"false" }, { "bargein":"true", "brain_id":"c_22357_3", "contentType":"TEXT_CONTENT_RICH", "id":"c_22357_3_1607223715", "usePreviousText":"false", "text":"<div><b>Ti sto mettendo in contatto con un operatore, un attimo di pazienza...</b></div><div><br></div>" } ] }, "params":{ "param":{ "name":"isPlayerVisible", "text":"true" } }, "actions":{ "action":{ "brain_id":"a_34422", "command":"redirect-to-operator", "content":"", "id":"a_34422_891966757", "order":"1", "runAt":"-1", "target":"", "params":{ "param":[ { "name":"skills", "text":"ENGLISH,ITALIAN" }, { "name":"serviceLevel", "text":"GOLD" }, { "name":"queue", "text":"QUEUE1" } ] } } } } }