Zana Brain
Abstract
Zana Brain is the name of the main service, and at the same time it is used to denote the set of all microservices at Zana.
Zana Brain - Routing Operations
Zana Brain is the name of the main service, and at the same time it is used to denote the set of all microservices at Zana.
Whenever there is a new request to be processed by the Brain, the main service ZB will receive a user utterance U.
Utterances are always transmitted in plain text. (In case of Speech communications, an external service will handle the Speech-to-Text conversation)
Due to HTML being stateless, a session variable that allows to track the current user (client) is also required. The Session Id is a unique identifier generated at client side (?) and transmitted as an argument (URL String ?argument) or as a http-Header (still to be defined)
Whenever identification of a specific microservice is predefined (e.g. the case of rrunning a Poll or a specific questionnaire such as Breast Risk Assessment), a Referral ID is passed as an argument. The referral Id is generated at Server Side and passed to the client for further communications.
Whenever neccessary, Zana Brain will make use of an Authentication Token. Authentication tokesn are used to allow a secure communication verified by the token. Such token is generated server side after a successful authentication (login). Such process is not foreseen in the short term.
Input Variables
Zana Brains expects the following input variables:
Input Parameter | Second Header |
---|---|
Utterance - U | A user statement |
Session ID - SID | An identifier for each client/users |
Referral ID - RID | A specific use case used to bypass/fastforward to specific Zana-Service |
Authentication Token - AUTH-TOKEN | A Token that authentifies a specific user / N/A |