Administração da Plataforma
...
Ação Automática via E-mail
Graph Mail

Diretriz no desenvolvimento

13min

Esta implementação não substitui a antiga integração POP3, SMT e IMAP para outros serviços de e-mail. Pode inclusive estar parametrizada para ser usada ao mesmo tempo com estas integrações.

Configuração

Os passos a seguir devem ser realizados na ordem em que estão apresentados:

Infraestrutura

Parametrização Azure

Dentro da plataforma Microsoft Azure:

  • Crie ou escolha um e-mail para ser utilizado pelo sistema nestas integrações. Não é necessário ser uma conta de e-mail específica, mas o usuário tem que ter ciência de que a leitura e envio de e-mails pelo sistema pode modificar e poluir esta caixa de correio. Então, deve criar regras e pastas para limpeza e organização das mensagens, a fim de que o trabalho de um não interfira no trabalho do outro;
  • Crie ou escolha um aplicativo no Azure Active Directory desta conta de e-mail, será utilizado para envio e leitura de e-mails.
Document image

Document image

Document image

Document image

  • Defina as seguintes permissões:
Document image

  • Defina o acesso ao aplicativo para a conta de e-mail que será utilizada:
Document image

  • Permita os fluxos de cliente público para o aplicativo:
Document image

  • APP ID: Guarde este ID para as futuras configurações.
Document image

  • Pastas para leitura de e-mail: Se o usuário deseja definir pastas e regras de filtragem para a leitura da caixa de e-mail, crie-as neste momento. Nesta primeira versão do projeto Graph Mail só é realizada a varredura para identificar as pastas no momento em que é iniciado;

Service Management

WildFly 1.1.2

Usuário ActiveMQ

Defina um usuário para acesso às filas ActiveMQ executando o comando abaixo e parametrizando uma senha segura para a opção “-p” de acordo com seu ambiente:

sh add-user.sh -a -u jmsuser -p 1 -g guest

Filas ActiveMQ

No arquivo de configuração do WilfFly (standalone.xml, por exemplo) devem ser definidas as filas de leitura e envio de e-mail. Adicione as tags com seus devidos nomes de fila dentro da tag principal: <subsystem xmlns="urn:jboss:domain:messaging-activemq:3.0">

Exemplo

<jms-queue name="graphMailQueue" entries="queue/graphMailQueue java:jboss/exported/jms/queue/queue/graphMailQueue"/>
<jms-queue name="readGraphMailQueue" entries="queue/readGraphMailQueue java:jboss/exported/jms/queue/queue/readGraphMailQueue"/>

System Properties

Para que o projeto Service Management suba os listeners, que irão escutar as filas da leitura de e-mail, é necessário definir a property na tag <system-properties> do standalone.xml, onde se pode colocar mais de um nome de lista para ser ouvida, se separar por vírgula:

<property name="jms.readGraphMailQueue.list" value="readGraphMailQueue"/>

Compartilhamento de Arquivo

Pasta para compartilhamento de imagens e arquivos anexos

Deve-se criar uma pasta e definir permissões de escrita e leitura no servidor das aplicações, para o mapeamento de volume dos containers docker, que irão subir as aplicações. Assim permitem o compartilhamento de arquivos entre elas. Esta pasta será utilizada nos arquivos compose e no parâmetro 479.

Parametrização do Graph Mail

Docker

No arquivo docker-compose.yml do projeto Graph Mail deve-se definir o correto local do arquivo config.properties e da pasta definida para compartilhamento de imagens e anexos.

version: '2.2' services: citSOLR:     container_name: citSOLR     image: registry.cloud4biz.com/templates/solr:latest     command: solr-create -c base_conhecimento -d base_conhecimento_configs   citTIKA:     container_name: citTIKA     image: registry.cloud4biz.com/templates/tika:latest     command: tika.sh     ports:     - 9998:9998   graphmail:     image: registry.cloud4biz.com/templates/graphmail:1.1.2      container_name: graphmail     restart: on-failure     depends_on:         - "4BIZ"     volumes:     - /storage/my4biz/attachments:/opt/attachments/     - /storage/my4biz/config.properties:/opt/graphmail/config.properties   4BIZ:     container_name: 4BIZ     image: registry.cloud4biz.com/templates/itsmops:2.2.9      links:     - citSOLR     - citTIKA     environment:     - XMS=9600     - XMX=9600     - MIN_POOL_SIZE=10     - MAX_POOL_SIZE=600     - STATISTICS_ENABLE=true     - BLOCKING_TIMEOUT_MILLIS=60000     - IDLE_TIMEOUT_MINUTES=2     - GC_CLIENT_INTERVAL=1800000     - GC_SERVER_INTERVAL=1800000     - PARALLELGCTHREADS=4     - ADMIN_USER=seuuser     - ADMIN_PASS=QSPLwso497665kderfij     - DB_4BIZ=db_seubanco     - JB_CONFI_XML=standalone-full-ha.x     - TIME_ZONE=America/Fortaleza     - DB_HOST=10.10.10.20     - DB_USER=seuuser     - DB_PASSWORD=QSPLwso497665kderfij     - DB_PORT=5432     - 4BIZ_URL=10.10.10.30     - GRAPHMAIL_READ=readGraphMailQueue     - SOLR_URL=citSOLR     - ENABLE_SSL=yes     - VALID_SSL=yes     - CERT_KEY_FILE=seucertificado.jks     - CERT_FILE=seucertificado.com.crt     - CERT_PASSWORD=789321456     - CERT_ALIAS=seualias     - TIMEOUT_DEPLOY=60000     - EVM_ENABLE=false     - INV_ENABLE=false     - MONGODB_HOST= #citmongo     - MONGODB_PORT= #27017     - MONGODB_USER= #admin     - MONGODB_PASSWORD= #admin     - ESPER_THREADS=4     - 4BIZ_PROTOCOL=http     - 4BIZ_LOGIN=consultor     - 4BIZ_PASSWORD=P@ssW0rd     - 4BIZINV_ID=4bizinventory     - 4BIZEVM_ID=4bizevm     - 4BIZ_HTTP_PORT=8080     - ENABLE_NEURO=Yes #### Parametros do IVM e EVM     - START_MONITORA_INCIDENTES=FALSE     - JDBC_ALIAS_REPORTS=     - JDBC_ALIAS_BPM=     - JDBC_ALIAS_BPM_EVENTOS=     - START_VERIFICA_EVENTOS=FALSE     - QUANTIDADE_BACKUPLOGDADOS=1000     - START_MODE_RULES=FALSE     - START_MODE_ITSM=FALSE     - INICIAR_PROCESSAMENTOS_BATCH=TRUE     - DBQUARTZ=STANDALONE ##### Deploys     - 4BIZ_APP=Helium-2.3.3.war     - CITNEURO_APP=4biz-neuro-builder-1.3.7.7.war     - CITPROFILE_APP=     - 4BIZEVM_APP=     - 4BIZINV_APP=     - CITAUDIT_APP=     - EVM_INV_ONLY=No     # If EVM_INV_ONLY=Yes you need to set FULL_STACK=Yes     - FULL_STACK=Yes     - LOG_LEVEL=INFO     - DB_SYSTEM=postgres     - ITSM_FLAVOR=4biz     ports:     - 8080:8080     - 443:8443     - 9990:9990     volumes:     - /storage/my4biz/deploys:/opt/deploys     - /storage/my4biz/4biz:/opt/4biz     - /storage/my4biz/certs:/opt/wildfly/certs     - /storage/my4biz/log:/opt/wildfly/standalone/log     - /storage/my4biz/mp4:/opt/wildfly/mp4     - /storage/my4biz/assets:/opt/wildfly/assets     - /storage/my4biz/attachments:/opt/attachments/
Document image


Config File

No arquivo config.properties do projeto Graph Mail devem ser parametrizadas, de acordo com o cenário do cliente, as seguintes propriedades:

JMS_CONNECTION_FACTORY_JNDI = jms/RemoteConnectionFactory JMS_WILDFLY_REMOTING_URL = http-remoting://172.18.0.4:8080 JMS_QUEUE_JNDI = jms/queue/queue/graphMailQueue JMS_READ_MAIL_QUEUE_JNDI = jms/queue/queue/readGraphMailQueue JMS_USERNAME = jmsuser JMS_PASSWORD = 352TEDDWtHpfRObR166VOuOBI1F4 GRAPH_APP_ID = 51255c25-165446-25d5sd5d5-dssdsd GRAPH_USERNAME = [email protected] GRAPH_PASSWORD = QsPlWSOK GRAPH_MAIL_FOLDERS_LIST = Inbox