IMPORTANTE: Esta documentação foi descontinuada. Leia a documentação Event Publisher atualizada no nosso novo portal de documentação.
Um evento é uma mensagem que notifica outros componentes sobre uma mudança de estado, uma ação ou um fato ocorrido. O Event Publisher publica um evento para que outros pipelines configurados para escutá-lo possam reagir quando a publicação ocorrer.
Mais informações sobre Arquitetura Orientada a Eventos podem ser encontradas aqui.
Dê uma olhada nos parâmetros de configuração do componente:
Evento: nome do evento criado que será publicado para consumo por outros pipelines. Este parâmetro aceita Double Braces.
Body: payload a ser enviado com o evento. Este parâmetro aceita Double Braces.
Log Each Event Sent: quando ativada, a opção irá gerar uma entrada de log para cada evento enviado.
Fail On Error: se a opção estiver habilitada, a execução do pipeline com erro será interrompida; do contrário, a execução do pipeline continua, mas o resultado vai mostrar um valor falso para a propriedade "success".
Alguns dos parâmetros acima aceitam Double Braces. Para entender melhor como funciona essa linguagem, leia o nosso artigo clicando aqui.
Como o Event Publisher é utilizado?
Para implementar uma Arquitetura Orientada a Eventos é necessário definir:
o pipeline que publicará o evento (Publicador)
um ou mais pipelines que irão consumir o evento (Assinantes)
Para configurar o pipeline que publicará o evento:
arraste o Event Publisher para o canvas do pipeline Publicador;
configure o nome do evento na propriedade “Evento” do Event Publisher;
caso deseje passar um payload junto com o evento, defina o conteúdo da propriedade “Body”.
Para configurar o pipeline que consumirá o evento:
altere o tipo do trigger para "Event" no pipeline Assinante;
abra as configurações do trigger e informe o nome do evento a ser consumido na propriedade “Nome do Evento”. Esse valor deve ser idêntico ao informado no Event Publisher do pipeline Publicador.
Fluxo de Mensagens
Entrada
O componente espera uma mensagem válida em formato JSON. Não é esperado nenhum atributo específico. A mensagem de entrada poderá ser referenciada através de Double Braces tanto para a configuração do atributo “Evento” quanto do atributo “Body”. Por exemplo, digamos que a mensagem abaixo fosse passada para o Event Publisher:
{
"eventName": "example",
"body": {
"id": "1",
"description": "Description of the case"
}
}
Você poderia definir uma expressão Double Braces no atributo “Evento” para obter o valor do atributo eventName:
{{ message.eventName }}
O atributo body também poderia ser configurado da mesma forma:
{{ message.body }}
Saída
O componente repassa a mensagem recebida do componente anterior sem nenhuma alteração. No caso do exemplo acima, a mensagem repassada seria:
{
"eventName": "example",
"body": {
"id": "1",
"description": "Description of the case"
}
}