Á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 da pasta extraida é dts-smart-link-client, e o complemento com o nome do tenant para exemplo é -totvs-fwk.
    • Exemplo: C:/TOTVS/dts-smart-link-client-totvs-fwk
  • Como resultado temos a estrutura abaixo:
    • C:/TOTVS/dts-smart-link-client-totvs-fwk/README.txt
    • C:/TOTVS/dts-smart-link-client-totvs-fwk/client/application.yml
    • C:/TOTVS/dts-smart-link-client-totvs-fwk/client/dts-smart-link-client.jar
    • C:/TOTVS/dts-smart-link-client-totvs-fwk/client/log
    • C:/TOTVS/dts-smart-link-client-totvs-fwk/service/Windows/install.bat
    • C:/TOTVS/dts-smart-link-client-totvs-fwk/service/Windows/JavaService.exe
    • C:/TOTVS/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)
Expandir
titleDescrição do serviço
  • A descrição também pode ser alterada.
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 -Djava.class.path
  • Informe a localização da pasta onde está localizado o arquivo dts-smart-link-client.jar no parâmetro -current
  • Informe o arquivo de log de erros para o parâmetro -err

Instalação do serviço:

  • Execute Prompt de Comando como administrador
  • Acesse o o arquivo "C:/TOTVS/dts-smart-link-client-totvs-fwk/service/Windows/install.bat"
  • 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 o o arquivo "C:/TOTVS/dts-smart-link-client-totvs-fwk/service/Windows/uninstall.bat"

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   
  datasulproduct:
    urlname: 'INFORMAR_URL_DATASULDatasul'
    usernameurl: 'INFORMAR_USUÁRIOURL_DATASUL'
    passwordusername: 'INFORMAR_SENHAUSUÁRIO_USUÁRIODATASUL'
    #linkClientUrlpassword: 'INFORMAR_URL_SMART_LINK_CLIENTSENHA_USUÁRIO'
    companies:
      - 'INFORMAR_CÓDIGO_EMPRESA'      
    tpdDisabled: false
    jboss: false
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, o arquivo application.yml já possui essa configuração.

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:
  datasulproduct:
    url:   name: 'Datasul'
    url: 'INFORMAR_URL_DATASUL'
    username: 'INFORMAR_USUÁRIO_DATASUL'
    password: 'INFORMAR_SENHA_USUÁRIO'
    #linkClientUrl: 'INFORMAR_URL_SMART_LINK_CLIENT'
    companies:
      - 'INFORMAR_CÓDIGO_EMPRESA'
    tpdDisabled: false
    jboss: false
  • INFORMAR_URL_DATASUL: Subistituir pelo valor do seu ambiente Datasul.
    • Exemplo: 'http://localhost:8080'
  • INFORMAR_USUÁRIO_DATASUL:  Subistituir pelo valor de um usuário existente no Datasul. 
  • INFORMAR_SENHA_USUÁRIO:  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:
        datasulproduct:
          companies:
            - '10'
            - 'TST' 
            - 'E11' 
  • Configuração tpdDisabled: Caso tenha a necessidade em desativar a integração, altere o valor para true.
  • Configuração jboss: Caso utilize a antiga arquitetura Jboss, altere o valor para true.
  • 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
    Configuração linkClientUrl:
    • A configuração está comentada (#)  
    • A configuração recebe por padrão
      • 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,
      retire o comentário # e informe o valor
      • você deverá adicionar a configuração:
        • Bloco de código
          languageyml
          themeRDark
          totvs:
            product:
              linkClientUrl: 'INFORMAR_URL_SMART_LINK_CLIENT
      'http://SERVIDOR:PORTA
        • '


Informações

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

Bloco de código
languageyml
themeRDark
totvs:
  datasulproduct:
    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 v11.5.X-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.datasul)]
INFO 3528 --- [main] c.totvs.link.client.ApplicationStartup   : [SMART-LINK-CLIENT][ApplicationStartup.showConfiguration] Configuration jboss: false(totvs.product)
INFO 3528 --- [main] c.totvs.link.client.ApplicationStartup   : [SMART-LINK-CLIENT][ApplicationStartup.showConfiguration] Configuration tpdDisabledname: falseDatasul
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.DatasulSyncDefaultMetadataProductSyncDefaultMetadata     : [SMART-LINK-CLIENT][DatasulSyncDefaultMetadataProductSyncDefaultMetadata.sync]
INFO 3528 --- [main] c.t.l.client.datasulproduct.DatasulSendMessageProductSendMessage  : [SMART-LINK-CLIENT][DatasulSendMessageProductSendMessage.send][REQUEST][GET] to http://----:8380/api/sec/v1/sgdp/metadata/default
INFO 3528 --- [main] c.t.l.client.datasulproduct.DatasulSendMessageProductSendMessage  : [SMART-LINK-CLIENT][DatasulSendMessageProductSendMessage.send][RESPONSE][GET][200] from http://----:8380/api/sec/v1/sgdp/metadata/default
INFO 3528 --- [main] c.t.l.c.d.DatasulSyncDefaultMetadataProductSyncDefaultMetadata     : [SMART-LINK-CLIENT][DatasulSyncDefaultMetadataProductSyncDefaultMetadata.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.DatasulSyncDefaultMetadataProductSyncDefaultMetadata     : [SMART-LINK-CLIENT][DatasulSyncDefaultMetadataProductSyncDefaultMetadata.sync] Sent to Smart Link Server
INFO 3528 --- [main] c.t.l.c.datasulproduct.DatasulUpdatePropertiesProductUpdateProperties  : [SMART-LINK-CLIENT][DatasulUpdatePropertiesProductUpdateProperties.update]
INFO 3528 --- [main] c.t.l.c.datasulproduct.DatasulUpdatePropertiesProductUpdateProperties  : [SMART-LINK-CLIENT][DatasulUpdatePropertiesProductUpdateProperties.update] {"companies":["10"],"subscriptions":["SGDPDataCommand","SGDPMaskCommand"],"linkClientUrl":"http://----:8777","tpdDisabled":false}
INFO 3528 --- [main] c.t.l.client.datasulproduct.DatasulSendMessageProductSendMessage  : [SMART-LINK-CLIENT][DatasulSendMessageProductSendMessage.send][REQUEST][POST] to http://----:8380/api/btb/v1/properties/integrations/totvslinkclient
INFO 3528 --- [main] c.t.l.client.datasulproduct.DatasulSendMessageProductSendMessage  : [SMART-LINK-CLIENT][DatasulSendMessageProductSendMessage.send][RESPONSE][POST][200] from http://----:8380/api/btb/v1/properties/integrations/totvslinkclient
INFO 3528 --- [main] c.t.l.c.datasulproduct.DatasulUpdatePropertiesProductUpdateProperties  : [SMART-LINK-CLIENT][DatasulUpdatePropertiesProductUpdateProperties.update] OK