This FAQs are addressing common concerns, questions or objections that might come up to your mind, when get into touch with Smarti development.
Administration
What value should be passed by the chat as 'clientID'?
Since Smarti has a multi client architecture a per 'customer' configuration is required.
In Smarti Client
is used to represent customer information. Each Client
has a unique
name
([a-z0-9-_\.:]+
).
For the Rocket.Chat integration this name
MUST BE configured as clientId
(versions < 0.7
)
All conversations refer exact one client. This concept enables to protect conversation access across clients.
Integration and API
Do I have to wait for the webhook’s response after sending a 'POST/rocket/{clientId}'
For Smarti versions before 0.7
the retrieval of processing and query results
GET /conversation/{id}/template
GET /conversation/{id}/template/{template}/{creator}
is complete only when the processing of the webhook has been completed.
Messages, can be transmitted at any time at any frequency and speed.
Smarti v0.7
will introduce a revamped webservice API where updates for conversations will
be synchronous and requests for processing results will allow for both synchronous and
asynchronous execution via webhook’s
Should I only send the customer’s messages to Smarti API or should I send messages from the agents as well?
All messages of a conversation should be sent to the Smarti API. Messages of agents do also contain keywords, entities, etc. Including those is important for both suggestions and conversation search.
Could you please describe the workflow for interacting with the conversational API?
this describes the workflow until v0.6.*
|
-
The Rocket.Chat server sends the message to Rocket.Chat Endpoint of Smarti
POST /rocket/{clientId}
. -
Smarti answers to the chat server via a web hook as soon as the processing of the message has been completed.
-
call
GET /conversation/{conversationId}/template
and extracts the correct values fortemplate
andcreator
from the result.-
call
GET /conversation/{conversationId}/template/{template}/{creator}
to execute a the query provided by thecreator
based on thetemplate
-
or use the information provided by the
template.query
to directly execute the query
-
For more Information see the Working with Smarti processing results section of the Smarti Integration Guide
Why do sent messages do not appear as suggestions, even if I enter the same question?
A conversation consists of multiple messages send by different callers
. In oder to make
a conversation available as suggestion, it needs to be published.
In Rocket.Chat this happens when a room is closed, but if this is not the case one can
manually trigger publish a conversation by calling:
POST /conversation/{conversationId}/publish
After a conversation is published a new conversation will be automatically created on the next message sent to a room. |
Knowledge Base
Do suggestions always refer to the last message within a conversation?
Currently (v0.6.*)
suggestions always refer to the entire conversation. By default a
conversation is the sum of all messages within a room.
As long as every single message of a conversation has been sent to Smarti, all of them are considered by Smarti for retrieving suggestions.
This might change in future version through as rules (e.g. ageing, classification, …) might be introduced the automatically split messages in a room to different conversations.