**4.3 Embodied conversational system and embodied conversational agent**

A RASA NLU [60] and ECA framework [61] are a core framework for an Embodied Conversational System (ECA). In this way, multilingual ECAs are capable of creating responses in natural language. All responses can also be visualized. Namely, multilingual chatbots are used to manage the more natural discourse between the system and patient. They are implemented as an API. Here, the NLU is the main engine of the chatbots and is programmed in Python and YAML language. Chatbots are all running on a Linux server. It implements standardized patientreported outcomes (PROs) as storylines in six languages used in the PERSIST Clinical Study [62]. For storing the data, SQLite database within RASA is used, while POST and GET requests are used to store information, such as patients' answers, questionnaires, and other events that are triggered in a specific conversation.

The ECA framework is then used to transform plain text generated by the chatbot into ECA's multimodal responses incorporating gestures. The proprietary algorithm proposed in [61] has been used (**Figure 6**). It uses proprietary EVA-Script notations.

**Figure 6.** *Generation of expressive co-verbal behavior.*

Each movement is formalized as a simultaneous execution within the block <bgesture>. The poses are described then within stroke phases, where the preparation phases are defined by <unit> blocks. Each <unit> also contains the complete configuration of individual movement controllers that are used in the representation of the specific pose. The retraction and hold phases then represent the shape being withheld or just retracted into some neutral state. They are both added within the <unit> by using attributes DurationHold and DurationRetraction.
