BISMail: mudanças entre as edições

De BIS Wiki
Ir para navegação Ir para pesquisar
Sem resumo de edição
Sem resumo de edição
 
(Uma revisão intermediária pelo mesmo usuário não está sendo mostrada)
Linha 1: Linha 1:
BISMail é o serviço que o BIS10 oferece para gerenciar caixas de e-mail do sistema. De forma centralizada permitindo que vários módulos e plugins possam usar a mesma caixa de e-mail para diferentes fins. A caixa de e-mail pode ser usada para o envio de e-mail, ou mesmo para a interpretação dos e-mails recebidos.
BISMail é o serviço que o BIS10 oferece para gerenciar caixas de e-mail do sistema. Montado em cima dos métodos oferecidos pelo [[FWMail]], o BISMail centraliza as funcionalidades de e-mail do sistema peritindo que o sistema compartilhe as caixas de e-mails cadastradas no sistema.


= Entidades =
= Entidades =
Linha 20: Linha 20:
Todos os métodos de acesso ao serviço estão disponibilizados através da fachada. Melhor e mais atualizada documentação no JavaDoc dos métodos.
Todos os métodos de acesso ao serviço estão disponibilizados através da fachada. Melhor e mais atualizada documentação no JavaDoc dos métodos.


=== Agendamento de Checagem de E-mails ===
== Agendamento de Checagem de E-mails ==


Uma vez criada a caixa de e-mail e configurada o agendador de checagens, o sistema fará a checagem de novas mensagens de acordo com o tempo estabelecido. Para cada nova mensagem recebida o serviço disparará eventos para sinalizar a chegada das novas mensagens através do serviço [[EventDispatcher]]. A relação de eventos pode ser encontrada em [[Relação_de_Eventos_do_BISCore]] (onde os eventos são listados e mantidos de forma centralizada para simplificar a manutenção).
A caixa de e-mail tem um parâmetro que permite configurar se os e-mails devem ou não serem "baixados" do servidor. Caso verdadeiro, o sistema fará a verificação de novas mensagens automaticamente. Para cada nova mensagem recebida o serviço disparará eventos através do serviço [[EventDispatcher]]. A relação de eventos pode ser encontrada em [[Eventos do BIS10]].


=== Métodos CRUD ===
== Os métodos do CRUD ==


O serviço apresenta os métodos de CRUD padrões para as entiades '''MailBoxVO''' e '''MailMessageVO'''
O CRUD apresenta tantos métodos com a finalidade de enviar um e-mail a partir de uma caixa de correio específica (como a conta de e-mail de um usuário específico), quando o método '''sendMailFromSystem()''' com a finalidade de enviar um e-mail com a conta padrão do sistema.


=== Manipulação de E-mails ===
A conta padrão do sistema deve ser utilizada para enviar e-mails automáticos do sistema, de notificação, relatórios agendados, etc. diretamente para seus usuários. As contas de e-mail particulares devem ser utilizadas quando um usuário deseja compartilhar algum relatório/informação com alguém.


Para funcionar como um "cliente" de e-mail o serviço deve prover métodos utilizados como em um cliente de e-mail como por exemplo para verificar novos e-mails, enviar mensagens, etc.
 
{{nota|Sistema de Notificações do BIS|Note que além do e-mail, o BIS tem o [[BISNotification]]. O [[BISNotification]] é o sistema de centralização de envio de notificações do sistema para "targets" específicos. Leia o material para entender como funciona o sistema, e se for o caso faça os disparos de e-mails através do [[BISNotification]] ao invés de enviar um e-mail diretamente.}}

Edição atual tal como às 16h59min de 28 de outubro de 2020

BISMail é o serviço que o BIS10 oferece para gerenciar caixas de e-mail do sistema. Montado em cima dos métodos oferecidos pelo FWMail, o BISMail centraliza as funcionalidades de e-mail do sistema peritindo que o sistema compartilhe as caixas de e-mails cadastradas no sistema.

Entidades

MailBoxVO

Representa uma caixa (ou conta) de e-mail. Tem os atributos necessários para identificação e acesso do e-mail, como usuário, senha, servidor, etc.

MailMessageVO

Entidade que representa uma mensagem de e-mail. Pode ser uma mensagem de e-mail recebida, um rascunho aguardando finalização, ou uma mensagem já enviada.

  • Mantém referência para a caixa de e-mail à qual esta mensagem foi recebida/enviada.
  • Referencia quatro listas de MailAddress***VO para armazenar os destinatários, os "Cópia Carbono" e os "Cópia Carbono Oculta" e dos remetentes da mensagem.
  • Referencia ainda uma instância de MailAddressVO para o endereço do remetente usado na ocasião do recebimento/envio.
    Embora pareça um absurdo o campo "from" pode conter uma lista de endereços pela API de e-mail do java. Como não pude encontrar se há mesmo a possibilidade de múltiplos "senders", acatei a API.
  • Referencia ainda o MailAttachmentVO que representa os anexos da mensagem.

Funcionalidades

Todos os métodos de acesso ao serviço estão disponibilizados através da fachada. Melhor e mais atualizada documentação no JavaDoc dos métodos.

Agendamento de Checagem de E-mails

A caixa de e-mail tem um parâmetro que permite configurar se os e-mails devem ou não serem "baixados" do servidor. Caso verdadeiro, o sistema fará a verificação de novas mensagens automaticamente. Para cada nova mensagem recebida o serviço disparará eventos através do serviço EventDispatcher. A relação de eventos pode ser encontrada em Eventos do BIS10.

Os métodos do CRUD

O CRUD apresenta tantos métodos com a finalidade de enviar um e-mail a partir de uma caixa de correio específica (como a conta de e-mail de um usuário específico), quando o método sendMailFromSystem() com a finalidade de enviar um e-mail com a conta padrão do sistema.

A conta padrão do sistema deve ser utilizada para enviar e-mails automáticos do sistema, de notificação, relatórios agendados, etc. diretamente para seus usuários. As contas de e-mail particulares devem ser utilizadas quando um usuário deseja compartilhar algum relatório/informação com alguém.


Sistema de Notificações do BIS
Note que além do e-mail, o BIS tem o BISNotification. O BISNotification é o sistema de centralização de envio de notificações do sistema para "targets" específicos. Leia o material para entender como funciona o sistema, e se for o caso faça os disparos de e-mails através do BISNotification ao invés de enviar um e-mail diretamente.