Você está aqui: Página Inicial Artigos Kankei DBM Monitorando Contas de Email

Monitorando Contas de Email

Como utilizar o processo do Kankei para importar para uma dimensão todos os emails recebidos em uma determinada conta de um servidor POP3, permitindo assim que o sistema execute ações automaticamente para cada email recebido.

A partir do build 110, o Kankei possui um item de processo que permite monitorar uma conta de email (servidor POP) e importar os dados dos emails para uma dimensão.

Esta feature possui inúmeras utilidades práticas, pois permite que ações sejam executadas em resposta a cada email recebido. Um bom exemplo é um sistema de SAC ou HelpDesk. Os clientes ou usuários poderiam enviar suas dúvidas para um endereço de email específico. O Kankei permite então que aquela conta de email seja monitorada e todos os emails que chegarem nela podem imediatamente iniciar um chamado.

Segue um passo-a-passo completo sobre a feature, desde a criação da dimensão até a configuração do item de processo.

Caso você prefira importar a estrutura dos objetos ao invés de criá-los manualmente, use os links abaixo para fazer o download das estruturas:

 

Passo 1: Criando a dimensão que armazenará os emails recebidos

 

Atenção: Ao criar a dimensão, precisaremos tomar o cuidado de definir identificadores para a dimensão e para todas as questões que forem criadas dentro dela, pois os identificadores serão necessários durante a criação do processo de importação. Neste passo a passo, vamos criar as questões com o identificador igual ao nome da questão, para facilitar as coisas.

1) Vamos criar uma dimensão restrita chamada "dimEmailRecebido". Vamos criar nessa dimensão duas questões do tipo "Texto" chamadas "emr-De" e "emr-Assunto" e uma questão do tipo "Texto Longo" chamada "emr-CorpoDaMensagem".

Questões

 

2) Como os emails recebidos podem conter anexos, vamos criar um conjunto chamado "emr-Anexos". Dentro deste conjunto, criaremos uma questão do tipo "Anexo" chamada "emr-Anexo" e uma questão do tipo "Texto" chamada "emr-NomeDoArquivo".

Conjunto de Anexos

 

 

Passo 2: Criando o item de processo

 

1) Crie um novo processo e clique na opção "Criar novo item". Na janela "Adicionar Item ao Processo", escolha a categoria "Kankei" e selecione o item "Importação KBS/Monitorar Pasta". Clique em "OK".

Item de processo de Importação KBS

2) Clique na guia "Template de Importação". Todas as nossas alterações serão feitas nesta guia, portanto as guias "Pasta" e "Destino" podem ser ignoradas.

 

3) Selecione o primeiro item da árvore (que deve se chamar "Tipo: Nova Importação") e localize a propriedade "Classe para processamento". Para esta propriedade deve ser definida a opção "Email (Servidor POP3)". A seguir, desmarque a opção "Importação utiliza arquivo".

Obs.: Marque também a opção "Empilhar" - esta opção não tem efeito nenhum sobre a importação de emails, mas o ato de marcá-la impede que o sistema emita uma mensagem de aviso quando o processo for executado.

Classe de Importação
 

4) Selecione, na árvore, selecione o item "Servidor POP3" (em algumas versões, esta opção aparece incorretamente com o nome "Servidor SMTP", mas este texto já foi corrigido nas versões mais recentes). Nas propriedades deste item, informe os dados do seu servidor POP3. 

Obs.: A última propriedade, "Excluir emails do servidor", indica se os emails deverão ser excluídos do servidor POP após o término da importação. Se a intenção é agendar o processo para ser executado automaticamente, esta opção deve ser marcada, caso contrário o sistema irá importar diversas vezes o mesmo email.

Configurando o Servidor POP

 

5) O próximo passo é informar ao processo os identificadores das questões que irão receber os dados. Clique para expandir o item "Eventos" e escolha o evento "Após ler registro". É neste item que vamos informar as questões da raiz da dimensão.

6) Logo acima da árvore de objetos onde você selecionou o evento, aparece a palavra "Novo" e uma seta apontando para baixo. Clique sobre esta seta para abrir um menu. Precisaremos inserir 3 objetos do tipo "Comando Set" neste evento, usando para isso a primeira opção do menu.

Após ter inserido os 3 comandos Set, edite as propriedades de cada um deles, de acordo com a tabela abaixo. Perceba que a propriedade "Nome do Campo" é o identificador das questões que criamos no passo 1.

Nome do Campo Tipo Campo de Origem
emr-De Obter de outro campo From
emr-Assunto Obter de outro campo Subject
emr-CorpoDaMensagem Obter de outro campo Body
 
Campo
 
Campo Assunto
 
Campo CorpoDaMensagem
 
 

Até aqui já temos o suficiente para importar os campos básicos do email. Se os emails a serem recebidos não terão anexos ou se os anexos deverão ser ignorados, seu processo está pronto, basta escolher a opção "Confirmar", e salvar o processo. Se você deseja salvar os anexos de email no conjunto que criamos especialmente para isso, continue lendo o passo 3.

 
 

Passo 3: Importando anexos

 

O tratamento de anexos é um pouco mais complexo do que os outros campos, devido ao fato de não haver um limite para o número de arquivos que podem vir anexados no email. Neste exemplo, iremos mostrar como fazer para incluir cada um dos anexos em um registro do conjunto "emr-Anexos" da nossa dimensão "dimEmailRecebido".


1) Selecione o evento "Antes dos Cálculos Bancários" e adicione dois comandos Set. Atualize a propriedade "Nome do Campo" de cada comando Set com os valores "emr-Anexo" e "emr-NomeDoArquivo", respectivamente. Ignore as demais proprieades dos comandos Set, pois este evento não será executado pela importação de servidor POP3. Só queremos que o processo saiba que deve gravar algo para as questões "emr-Anexo" e "emr-NomeDoArquivo".

Campo Anexo
 
Campo NomeDoArquivo
 
2) No evento "Após Ler Registro", adicione um comando "Script". Insira neste script o seguinte código:
obj('emr-Anexos') = CreateObject("Collection");

for(var n = 1; n <= obj("Attachments").Count(); n++) {
 var anexo = obj("Attachments")(n);

 var registro = CreateObject("Bloqueto");
 registro("emr-Anexo") = anexo;
 registro("emr-NomeDoArquivo") = anexo("FileName"); 

 obj('emr-Anexos').add(registro);
}

A importação disponibiliza os anexos como uma coleção chamada "Attachments". O que o script faz é criar e popular uma outra coleção cujas chaves sejam os identificadores das questões onde queremos que os dados sejam gravados. Perceba que para a questão do tipo anexo precisamos passar a variável "anexo" ao invés de apenas uma das propriedades dela (como fazemos com a questão "emr-NomeDoArquivo").

Código KankeiScript para os anexos
 

Conclusão

Se você seguiu os passos acima, o seu processo está pronto para ser executado. A cada execução, o processo irá fazer o download de todos os emails da conta especificada no servidor POP e irá criar um registro na dimensão para cada email recebido.

Perceba que os dados importados para a questão "emr-CorpoDaMensagem" poderão conter códigos HTML, o que provavelmente precisará ser tratado, mas isto foge ao escopo deste artigo.

Outros itens podem ser adicionados ao processo para fazer o tratamento dos registros importados, como por exemplo, para criar chamados em um sistema de HelpDesk.

O processo então pode ser agendado para que seja executado periodicamente (exemplo: a cada 2 horas).

Ações do documento
« Maio 2012 »
Maio
SeTeQuQuSeSaDo
123456
78910111213
14151617181920
21222324252627
28293031
Acessar


Esqueceu sua senha?