Nota de Liberação
📢 O desenvolvimento do WebAgent já foi concluído, e tem liberação prevista para inicio dos testes até o final do 1o Trimestre de 2022.
Data que pode ser revista de acordo com os testes já em execução para sua liberação definitiva.
WebAgent (topo)
O WebAgent permitirá utilizar o Smartclient HTML, através dos Navegadores homologados, disponibilizando os mesmos acessos à estação de trabalho hoje só possiveis através do SmartClient Desktop, dentre eles:
- Acesso nativo ao dispositivo, para:
- Leitura e gravação de arquivos
- Leitura de diretórios
- Integração com o pacote Microsoft Office
- Consumo de DLLs (Windows), SOs (Linux) e Dylibs (MacOS), para por exemplo, integrações com dispositivos, veja mais em ExecInDllOpen.
Segurança (topo)
Os Navegadores modernos (ex: Edge, Chrome e Firefox) possuem um ambiente de execução segura, chamado Sandbox, que impede o acesso ao dispositivo onde está sendo executado.
O WebAgent é um aplicativo seguro, que permitirá ao Smartclient HTML acesso às operações bloqueadas, citadas acima.
Os mecanismos de segurança para execução do WebAgent são:
- Conexão entre o Navegador e o WebAgent exclusivamente via Websocket Secure (wss);
- Conexão entre o Navegador e o WebAgent exclusivamente através do endereço localhost, impedindo acesso ao dispositivo, via Navegador, a partir de ataques externos;
- O protocolo de comunicação entre o Navegador e o WebAgent é o mesmo utilizado entre SmartClient Desktop e o Appserver, um motor utilizado a mais de 20 anos, e conhecidamente seguro.
Instalação (topo)
Para disponibilizar a opção de download do WebAgent na tela de parâmetros do SmartClient HTML é necessário configurar a origem dos arquivos.
Para tanto, o Administrador do Sistema deve criar ou editar o arquivo webagent.json na mesma pasta do AppServer.
No exemplo abaixo os arquivos para download serão disponibilizados em uma sub-pasta do AppServer, por exemplo: /home/admin/totvs/appserver/webagent/
🚨Importante: Os arquivos de instalação do WebAgent serão disponibilizados no Portal de Clientes assim que os testes estiverem concluidos.
{ "version": "0.0.4", "windows_x86": "webagent/web-agent-9.0.0-SNAPSHOT-windows-x86-release.setup.exe", "windows_x64": "webagent/web-agent-9.0.0-SNAPSHOT-windows-x64-release.setup.exe", "darwin_x64": "webagent/web-agent-9.0.0-SNAPSHOT-darwin-x64-release.dmg", "darwin_arm64": "webagent/web-agent-9.0.0-SNAPSHOT-darwin-x64-release.dmg", "linux_x64_deb": "webagent/web-agent-9.0.0-SNAPSHOT-linux-x64-release.deb", "linux_x64_rpm": "webagent/web-agent-9.0.0-SNAPSHOT-linux-x64-release.rpm", "windows_arm64": "webagent/web-agent-9.0.0-SNAPSHOT-windows-x64-release.setup.exe", "darwin_universal": "webagent/web-agent-9.0.0-SNAPSHOT-darwin-x64-release.dmg", "linux_arm_deb": "webagent/web-agent-9.0.0-SNAPSHOT-linux-x64-release.rpm", "linux_arm64_deb": "webagent/web-agent-9.0.0-SNAPSHOT-linux-x64-release.rpm", "linux_arm_rpm": "webagent/web-agent-9.0.0-SNAPSHOT-linux-x64-release.rpm", "linux_arm64_rpm": "webagent/web-agent-9.0.0-SNAPSHOT-linux-x64-release.rpm" }
Após a configuração, deve-se reiniciar o AppServer, e na sequência será exibida a tela para download, conforme exemplo abaixo:
O instalador vai sugerir o Sistema Operacional, porém, caso use o Windows 64 bits, mas possua o Microsoft Office 32 bits, poderá instalar a versão 32 para garantir sua integração, veja mais informações aqui.
Sistemas Operacionais (topo)
Em sua primeira liberação o WebAgent estará disponível para os Sistemas Operacionais:
- Window 32 e 64 bits:
- Windows 10 Pro/Enterprise ou superior
- Windows 11 Pro/Enterprise ou superior
- Linux 64 bits:
- Ubuntu 20.04 LTS ou superior
- Red Hat Enterprise Linux Desktop 8.0 ou superior
- macOS 11.0 Big Sur ou superior.
Configuração (topo)
O WebAgent estará acessível à estação de trabalho através de um ícone na bandeja do usuário, facilitando seu acesso e uso:
Para habilitar o uso pelo SmartClient HTML, na tela de configuração do WebApp no navegador, é possível escolher a porta de inicialização e conexão com o WebAgent (por padrão a porta é a 21021).
Exemplos de uso (topo)
Integração com o Microsoft Excel: (clique nas imagens para visualização)
Consumindo uma DLL via função ExeDllRun3():
Executando uma aplicação nativa via função ShellExecute():
Retornando as pastas de um diretório através da função Directory():