Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Conteúdo

Índice
minLevel2


01. Objetivo

Esta documentação tem a finalidade de servir como uma guia no momento da integração com o TOTVS Privacidade de Dados. Para mais informações sobre a ferramenta, acesse TOTVS Privacidade de Dados.

Para tanto, abaixo seguem as instruções para que a integração seja realizada corretamente.



02. Informações

Leia Documentos de Referência do TOTVS Privacidade de Dados.

O produto Datasul faz o uso do Smart Link, que é um mecanismo de troca de mensagens entre aplicações TOTVSApps e aplicações OnPremises (ou remotas).

  • Foi utilizada a biblioteca Smart Link Client Java, que por meio deste foi implementado o processador de mensagens.
  • O processador de mensagens é uma aplicação java 

Obtenha informações (client, secret, name e id) do seu tenant para poder realizar as configurações necessárias nos prximos passos. 




03. Instalação


Copiar arquivo compactado

O arquivo está localizado no diretório do Foundation src/interfac/smart-link/dts-smart-link-client.zip


Extrair os arquivos do arquivo compactado

Expandir
titleProcedimento

Extrair os arquivos em um deretório de sua escolha, sugerimos o uso do nome do seu tenant para complementar e facilitar a organização dos aterfatos.   

Exemplo:

  • O nome do tenant para exemplo é totvs-fwk e o nome da pasta extraida é dts-smart-link-client, e o complemento com o nome do tenant para exemplo é -totvs-fwk.
    • Exemplo: C:/TOTVS/totvs-fwk/dts-smart-link-client-totvs-fwk
  • Como resultado temos a estrutura abaixo:
    • C:/TOTVS/totvs-fwk/dts-smart-link-client-totvs-fwk/README.txt
    • C:/TOTVS/totvs-fwk/dts-smart-link-client-totvs-fwk/client/application.yml
    • C:/TOTVS/totvs-fwk/dts-smart-link-client-totvs-fwk/client/dts-smart-link-client.jar
    • C:/TOTVS/totvs-fwk/dts-smart-link-client-totvs-fwk/client/log
    • C:/TOTVS/dtstotvs-fwk/dts-smart-link-client-totvs-fwk/service/Windows/install.bat
    • C:/TOTVS/totvs-fwk/dts-smart-link-client-totvs-fwk/service/Windows/JavaService.exe
    • C:/TOTVS/totvs-fwk/dts-smart-link-client-/totvs-fwk/service/Windows/uninstall.bat

Instalador de serviço para Windows

Expandir
titleProcedimento

Editar o arquivo "C:/TOTVS/dts-smart-link-client-totvs-fwk/service/Windows/install.bat"

Expandir
titleNome do serviço
  • Sugerimos o uso do nome do seu tenant para complementar e facilitar a organização do serviço.
  • Exemplo: TOTVS-DTS-SMART-LINK-CLIENT-totvs-fwk (O nome do serviço é TOTVS-DTS-SMART-LINK-CLIENT, e o complemento é -totvs-fwk)fwk 
  • Image AddedImage Removed
Expandir
titleDescrição do serviço
  • A descrição também pode ser alterada.
  • Image RemovedImage Added
Expandir
titleJAVA
  • Deve ser utilizado JAVA 11
  • No arquivo estamos utilizando o %JAVA_HOME% como padrão, caso necessário faça a alteração para utilizar a sua váriavel de ambiente já existente.
Expandir
title Parâmetros
  • Informe a localização do arquivo dts-smart-link-client.jar no parâmetro -Os parâmetros -Djava.class.path
    • Image Removed
  • Informe a localização da pasta onde está localizado o arquivo dts-smart-link-client.jar no parâmetro -current
    • Image Removed
  • , -current e -err fazem o uso do valor informando em LINK_CLIENT
  • Image AddedInforme o arquivo de log de erros para o parâmetro -errImage Removed

Instalação do serviço:

  • Execute Prompt de Comando como administrador
  • Acesse Execute o o arquivo "C:/TOTVS/dts-smart-link-client-totvs-fwk/service/Windows/install.bat"
    • Image RemovedImage Added
  • Serviço instalado:

Desinstalador de serviço para Windows

Expandir
titleProcedimento

Editar o arquivo "C:/TOTVS/dts-smart-link-client-totvs-fwk/service/Windows/uninstall.bat"

  • Informe o nome do serviço definido na etapa anterior (Instalador de serviço para Windows)

Desinstalação do serviço:

  • Execute Prompt de Comando como administrador
  • Acesse Execute o o arquivo "C:/TOTVS/dts-smart-link-client-totvs-fwk/service/Windows/uninstall.bat"
  • Image RemovedImage Added

Instalador de serviço para Linux

Expandir
titleProcedimento


Desinstalador de serviço para Linux

Expandir
titleProcedimento



04. Configuração


Arquvio de configuração

Arquivo de configuração application.yml.

Utilizando a pasta de exemplo dos passos anteriores, podemos encontrar o arquivo em: C:/TOTVS/dts-smart-link-client-totvs-fwk"/client/application.yml"


Configurações do arquivo application.yml


Aviso

Leia com atenção o detalhamento das configurações abaixo:

# SERVER

A porta de acesso da aplicação pode ser alterado na prorpriedade:

Bloco de código
languageyml
themeRDark
# -------------------------------------------------
# SERVER
# -------------------------------------------------  
server:
  port: 8777
https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#application-properties.server.server.port


# SPRING

Por padrão estamos utilizando 10MB para poder trafegar metadado no formato JSON.

Bloco de código
languageyml
themeRDark
# -------------------------------------------------
# SPRING
# ------------------------------------------------- 
spring:
  codec:
    max-in-memory-size: 10MB

https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#application-properties.core.spring.codec.max-in-memory-size


# LOG

O nome do arquivo de log pode ser alterado na propriedade:

Bloco de código
languageyml
themeRDark
# -------------------------------------------------
# LOG
# -------------------------------------------------    
logging:
  file:
    name: log/dts-smart-link-client.log
https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#application-properties.core.logging.file.name


# SMART LINK CLIENT

Bloco de código
languageyml
themeRDark
# -------------------------------------------------
# SMART LINK CLIENT
# -------------------------------------------------
totvs:
  link:
    auth:
      url: INFORMAR_URL_RAC
      client: INFORMAR-CLIENT
      secret: INFORMAR-SECRET
    client:
      subscriptions:      
        - SGDPDataCommand
        - SGDPMaskCommand
    server:
      host: INFORMAR_HOST
      port: 443
      secure: true
  tenant:
    name: INORMAR-NOME-TENANT
    id: INORMAR-ID-TENANT   
  product:
    name: 'Datasul'
    url: 'INFORMAR_URL_DATASUL'
    username: 'INFORMAR_USUÁRIO'
    password: 'INFORMAR_SENHA'
    companies:
      - 'INFORMAR_CÓDIGO_EMPRESA'
Aviso

Leia com atenção o detalhamento das configurações abaixo:

Expandir
titleSmart Link Client Java

O Smart Link Client Java é uma bibloteca que facilita o desenvolvimento de um LINK Client para a plataforma Java, sendo necessária a implementação de uma aplicação que implemente um processador de mensagens (LINK Client Java Application mais abaixo).

No Smart Link Client Java utiliza o protocolo GRPC, sendo necessária a seguinte configuração:

Bloco de código
languageyml
themeRDark
totvs:
  link:
    server:
      host: INFORMAR_HOST
      port: 443
      secure: true
  • INFORMAR_HOST:  Utilizar o host conforme o tipo do seu ambiente:
    • DEV: link.dev.totvs.app
    • STAGING: link.staging.totvs.app
    • PROD: link.totvs.app

Deve ser informada também uma lista de subscrições, onde somente mensagens com determinados "types" são efetivamente enviadas para o Smart Link Client. 

No Smart Link Client Java é necessária a seguinte configuração:

Bloco de código
languageyml
themeRDark
totvs:
  link:
    client:
      subscriptions:
        - SGDPDataCommand
        - SGDPMaskCommand

O produto Datasul está preparado para processar os tipos SGDPDataCommand e SGDPMaskCommand.

Expandir
titleSmart Link Client Single Tenant

O produto Datasul suporta apenas o single tenant, é necessária a seguinte configuração:

Bloco de código
languageyml
themeRDark
totvs:
  link:
    auth:
      url: INFORMAR_URL_RAC
      client: INFORMAR-CLIENT
      secret: INFORMAR-SECRET
  • INORMAR-NOME-TENANT: Subistituir pelo nome do seu tenant.
  • INFORMAR_URL_RAC:  Utilizar a url conforme o tipo do seu ambiente:
    • DEV: https://INORMAR-NOME-TENANT.rac.dev.totvs.app/totvs.rac/connect/token
    • STAGING: https://INORMAR-NOME-TENANT.rac.staging.totvs.app/totvs.rac/connect/token
    • PROD https://INORMAR-NOME-TENANT.rac.totvs.app/totvs.rac/connect/token
  • INFORMAR-DEV-PROD-STAGING:  Subistituir pelo tipo do seu ambient tenant (dev, prod, staging).
  • INFORMAR-CLIENT: Subistituir pelo valor do seu client.
  • INFORMAR-SECRET:  Subistituir pelo valor da sua secret.
Expandir
titleTenant

Informar os valores do seu Tenant:

Bloco de código
languageyml
themeRDark
totvs:
  tenant:
    name: INORMAR-NOME-TENANT
    id: INORMAR-ID-TENANT 
  • INORMAR-NOME-TENANT: Subistituir pelo nome do seu tenant.
  • INORMAR-ID-TENANT:  Subistituir pelo valor do id do seu tenant.
Expandir
titleDatasul
Aviso

Utilize aspas simples para valores do tipo texto ao informar as configurações do produto Datasul.

A  comunicação acontece nos dois sentidos (TOTVS Privacidade de Dados > Datasul) e (Datasul > TOTVS Privacidade de Dados) por meio das configurações abaixo:

Bloco de código
languageyml
themeRDark
totvs:
  product:
    name: 'Datasul'
    url: 'INFORMAR_URL_DATASUL'
    username: 'INFORMAR_USUÁRIO'
    password: 'INFORMAR_SENHA'    
    companies:
      - 'INFORMAR_CÓDIGO_EMPRESA'
  • INFORMAR_URL_DATASUL: Subistituir pelo valor do seu ambiente Datasul.
    • Exemplo: 'http://localhost:8080'
  • INFORMAR_USUÁRIO:  Subistituir pelo valor de um usuário existente no Datasul. 
  • INFORMAR_SENHA:  Subistituir pelo valor da senha do usuário.
  • INFORMAR_CÓDIGO_EMPRESA: Subistituir pelo valor do código da empresa
    • A integração pode ser para mais de uma empresa, basta adicionar outras empresas respeitando o formato/espaçamento do arquivo .yml
    • Bloco de código
      languageyml
      themeRDark
      totvs:
        product:
          companies:
            - '10'
            - 'TST' 
            - 'E11' 
  • Outras configurações:
    • Adicionar a configuração tpdDisabled para desativar a comunicação do entre o Smart Link Client e o Produto Datasul.
      • Bloco de código
        languageyml
        themeRDark
        totvs:
          product:
            tpdDisabled: true
    • Adicionar a configuração jboss para indicar a antiga arquitetura.
      • Bloco de código
        languageyml
        themeRDark
        totvs:
          product:
            jboss: true
    • Caso necessário, adicionar a configuração linkClientUrl para indicar onde está o LINK Client Java Application.
      • A configuração recebe o valor 'http://SERVIDOR:PORTA'
        • SERVIDOR:  Servidor que está executando o processador de mensagens dts-smart-link-client.jar
        • PORTA: Valor da porta (server: port) da configuração #SERVER
      • Caso precise adicionar um valor diferente do padrão, você deverá adicionar a configuração:
        • Bloco de código
          languageyml
          themeRDark
          totvs:
            product:
              linkClientUrl: 'INFORMAR_URL_SMART_LINK_CLIENT'


Informações

Ao informar o endereço de um ambiente Datasul com protocolo HTTPS na configuração totvs.product.url, leia Procedimento HTTPS.

Bloco de código
languageyml
themeRDark
totvs:
  product:
    url: 'https://meu-servidor:8080'    
Expandir
titleProcedimento HTTPS



05. Iniciar o serviço instalado


Após concluir as etapas anteriores, basta iniciar o serviço instalado e verificar no log se a aplicação foi inciada com sucesso.

Starting Application

Bloco de código
themeRDark
INFO 15788 --- [main] com.totvs.link.client.Application        : Starting Application v11v12.51.X34-NFRW-SNAPSHOT on 00000 with PID 15788 (C:\TOTVS\dts-smart-link-client\client\dts-smart-link-client.jar started by 00000$ in C:\TOTVS\dts-smart-link-client\client)
INFO 15788 --- [main] com.totvs.link.client.Application        : No active profile set, falling back to default profiles: default
INFO 15788 --- [main] com.totvs.link.client.LinkService        : *** Connecting to server (link.staging.totvs.app:443)
INFO 15788 --- [main] o.s.s.c.ThreadPoolTaskScheduler          : Initializing ExecutorService 'taskScheduler'
INFO 15788 --- [main] o.s.b.web.embedded.netty.NettyWebServer  : Netty started on port(s): 8777
INFO 15788 --- [main] com.totvs.link.client.Application        : Started Application in 4.994 seconds

Após o Started Application serão executados os processos:

Expandir
titleSolicitação do metadado padrão que será enviado para o TOTVS Privacidade de Dados
Bloco de código
themeRDark
titleMetadado
{
  "header": {
    "type": "SGDPUpdateApplicationMetadata"
  },
  "content": {
    "models": {},
    "codes": {},
    "package": "Datasul",
    "productId": "Datasul",
    "readOnly": true,
    "smartLink": "singleTenant",
    "localLogs": false,
    "applicationId": "Datasul"
  }
}
Expandir
titleEnvio de configurações para o Datasul
Bloco de código
themeRDark
titleConfigurações
{
  "subscriptions": ["SGDPDataCommand","SGDPMaskCommand"],
  "companies": ["10"],
  "linkClientUrl": "http://----:8777",
  "tpdDisabled": false
}

Para facilitar a visualização de log foi adicionada a infomação [SMART-LINK-CLIENT] no LOG para as classes java implementadas.

Bloco de código
themeRDark
INFO 3528 --- [main] c.totvs.link.client.ApplicationStartup   : [SMART-LINK-CLIENT][ApplicationStartup.readyEvent]
INFO 3528 --- [main] c.totvs.link.client.ApplicationStartup   : [SMART-LINK-CLIENT][ApplicationStartup.showConfiguration] Configuration (totvs.product)
INFO 3528 --- [main] c.totvs.link.client.ApplicationStartup   : [SMART-LINK-CLIENT][ApplicationStartup.showConfiguration] Configuration name: Datasul
INFO 3528 --- [main] c.totvs.link.client.ApplicationStartup   : [SMART-LINK-CLIENT][ApplicationStartup.showConfiguration] Configuration username: ----
INFO 3528 --- [main] c.totvs.link.client.ApplicationStartup   : [SMART-LINK-CLIENT][ApplicationStartup.showConfiguration] Configuration url: http://----:8380/
INFO 3528 --- [main] c.totvs.link.client.ApplicationStartup   : [SMART-LINK-CLIENT][ApplicationStartup.showConfiguration] Configuration password: *********
INFO 3528 --- [main] c.totvs.link.client.ApplicationStartup   : [SMART-LINK-CLIENT][ApplicationStartup.showConfiguration] Configuration companies: [10] 
INFO 3528 --- [main] c.t.l.c.d.ProductSyncDefaultMetadata     : [SMART-LINK-CLIENT][ProductSyncDefaultMetadata.sync]
INFO 3528 --- [main] c.t.l.client.product.ProductSendMessage  : [SMART-LINK-CLIENT][ProductSendMessage.send][REQUEST][GET] to http://----:8380/api/sec/v1/sgdp/metadata/default
INFO 3528 --- [main] c.t.l.client.product.ProductSendMessage  : [SMART-LINK-CLIENT][ProductSendMessage.send][RESPONSE][GET][200] from http://----:8380/api/sec/v1/sgdp/metadata/default
INFO 3528 --- [main] c.t.l.c.d.ProductSyncDefaultMetadata     : [SMART-LINK-CLIENT][ProductSyncDefaultMetadata.sync] Sending message to Smart Link Server - type: SGDPUpdateApplicationMetadata - metadado: {"header":{"type":"SGDPUpdateApplicationMetadata"},"content":{"models":{},"codes":{},"package":"Datasul","productId":"Datasul","readOnly":true,"smartLink":"singleTenant","localLogs":false,"applicationId":"Datasul"}}
INFO 3528 --- [main] c.t.l.c.d.ProductSyncDefaultMetadata     : [SMART-LINK-CLIENT][ProductSyncDefaultMetadata.sync] Sent to Smart Link Server
INFO 3528 --- [main] c.t.l.c.product.ProductUpdateProperties  : [SMART-LINK-CLIENT][ProductUpdateProperties.update]
INFO 3528 --- [main] c.t.l.c.product.ProductUpdateProperties  : [SMART-LINK-CLIENT][ProductUpdateProperties.update] {"companies":["10"],"subscriptions":["SGDPDataCommand","SGDPMaskCommand"],"linkClientUrl":"http://----:8777","tpdDisabled":false}
INFO 3528 --- [main] c.t.l.client.product.ProductSendMessage  : [SMART-LINK-CLIENT][ProductSendMessage.send][REQUEST][POST] to http://----:8380/api/btb/v1/properties/integrations/totvslinkclient
INFO 3528 --- [main] c.t.l.client.product.ProductSendMessage  : [SMART-LINK-CLIENT][ProductSendMessage.send][RESPONSE][POST][200] from http://----:8380/api/btb/v1/properties/integrations/totvslinkclient
INFO 3528 --- [main] c.t.l.c.product.ProductUpdateProperties  : [SMART-LINK-CLIENT][ProductUpdateProperties.update] OK