Memória do Usuário
As variáveis definidas usando o usernamespace são salvas como atributos para o usuário. Isso significa que esses atributos sempre seguirão o usuário.
Quando um usuário envia uma mensagem para o chatbot, o primeiro middleware carrega as informações desse usuário.
Depois de processar tudo, quaisquer alterações no userobjeto serão persistidas no banco de dados. Isso significa que você pode alterar o userobjeto usando middlewares e ações, e seu chatbot o salvará no final.
Memória do usuário - Retenção
Como a privacidade é um assunto importante, um sistema integrado facilita a definição de períodos de retenção para diferentes tipos de informações.
Você pode ter, por exemplo, uma política que diga "o e-mail expira após dois meses" ou "lembrar o humor do usuário por um dia".
Então, sempre que o atributo do usuário é alterado, a política de expiração é atualizada.
Veja como ele pode ser configurado:
//data/global/botpress.config.json
dataRetention: {
janitorInterval: '2m', // Check each 2 mins for expired data
policies: {
email: '60d', // Keep email for 30 days, reset if it is changed
mood: '1d' // Forget user's mood after 1 day
someChoice: '5m' // Keeps the variable alive for 5 minutes
}
}
Memória de Sessão
A sessionloja dura para a sessão do usuário, dependendo da configuração de sessionIntervalTimeoutin botpress.config.json.
É também aqui que guardamos as últimas mensagens enviadas pelo utilizador. Essas informações são usadas pelo Decision Engine para entender melhor a intenção do usuário e evitar a repetição de coisas sem sentido.