Outros Tipos de Variáveis
Além de variáveis de fluxo e variáveis globais, você pode usar variáveis de escopo do usuário, perfil e sistema.
Perfil-Variáveis de Escopo para Contexto do Usuário
Você pode acessar valores de nome, localidade e hora local de um usuário usando variáveis de perfil-escopo, que acessam as configurações de perfil do cliente de chat.
"Hello ${profile.firstName}, how can I help you today?"

Use essas variáveis predefinidas para gerar contexto específico do usuário da habilidade.
Para isso... | Use isso... |
---|---|
Obtenha o nome do usuário do bot. | ${profile.firstName} |
Obtenha o sobrenome do usuário do bot. | ${profile.lastName} |
Obtenha a configuração regional do usuário do bot. | ${profile.locale}
|
Obtenha o fuso horário do usuário (deslocamento em milissegundos). | ${profile.timezoneOffset} |
Essas variáveis predefinidas são definidas automaticamente com base em valores transmitidos pela plataforma de mensagens. Os valores diferem de acordo com a plataforma de mensagens e algumas plataformas podem não fornecê-los. Para integrações de assistente digital como agente, por exemplo, profile.firstName
, profile.lastName
e profile.email
só terão valores se o usuário tiver acessado o Oracle Service Cloud ou se um usuário tiver preenchido campos de nome, sobrenome e endereço de e-mail na página de início de chat do Oracle Service Cloud antes de solicitar um chat. No Oracle Web Client, esses valores de perfil devem ser definidos com a propriedade initUserProfile
ou com o método updateUser
.
Salvar Valores Específicos do Usuário para Visitas de Devolução
Você pode criar variáveis de escopo do usuário para persistir nas sessões.
Em geral, quando uma conversa do usuário com uma habilidade ou um assistente digital termina, os valores de variáveis que foram definidos na entrada do usuário são destruídos. No entanto, você também pode definir variáveis de escopo do usuário para reter a entrada do usuário das sessões anteriores para aprimorar novas conversas. Você cria variáveis de escopo do usuário diretamente nos próprios componentes.
Para criar uma variável de escopo do usuário:
- No campo Variável do inspetor de propriedades do componente em que você deseja criá-lo, selecione Variável de Escopo do Usuário na lista drop-down.
- No campo Nome da Variável com Escopo exibido, informe o nome da variável.
Informe o nome sem o prefixo
user.
. (Embora você use esse prefixo ao fazer referência a uma variável de escopo do usuário, não o use ao defini-la.)
Para fazer referência a uma variável de escopo do usuário, use uma expressão como ${user.VAR_NAME}
.
Por exemplo, na habilidade de amostra Habilidade de Pizza - Designer de Fluxo Visual, a variável de escopo do usuário lastOrderNumber
é definida depois que o usuário coloca a ordem no fluxo service.reg.placeOrder
. Essa variável é referenciada pela expressão ${((user.lastOrderNumber)?has_content)}
no primeiro estado do fluxo que é chamado sempre que a habilidade é iniciada (handler.startSkill
) para determinar se o usuário fez alguma ordem anterior.
Os valores das variáveis de escopo do usuário são específicos do canal. Por exemplo, se um usuário acessar uma habilidade em um canal da Web e depois acessar a habilidade por meio de um canal do Microsoft Teams, o canal do Teams terá suas próprias instâncias das variáveis do usuário e não reconhecerá os valores da conversa anterior no canal da Web.
Variáveis do Sistema
Variável | Tipo | Descrição |
---|---|---|
system.nlpresult |
Resultado NLP | Usado para armazenar o resultado de NLP para a declaração do usuário. Para obter o resultado completo do NLP, você pode usar a expressão ${skill.system.nlpresult.value} .
|
system.intent.utterance |
String | Quando essa variável tiver um valor, ela será usada para correspondência de intenções em vez da última mensagem do usuário. Para acessar essa variável, você pode usar a expressão ${skill.system.intent.utterance} .
|
system.event |
Mapear | Quando um dos eventos incorporados é mapeado no fluxo principal ou em um subfluxo, essa variável contém propriedades de evento que você pode usar para tratar o evento. Por exemplo, para obter um payload de evento, você usaria uma expressão no formato ${skill.system.event.value.EVENT_NAME} .
|
system.rb |
pacote de recursos | Usado para acessar entradas do pacote de recursos do idioma. Para acessar uma entrada de pacote de recursos, você pode usar uma expressão no formato ${skill.system.rb.RB_ENTRY_NAME} .
|