Commit 9508e0b4d0069478a41f1d9f2f76d5776900fb64
1 parent
2166f4c0
Exists in
master
Acrescentado o comando "Registry" para comunicacao entre o Gerente WEB e agente …
…principal no MS-Windows (cacic2.exe) git-svn-id: http://svn.softwarepublico.gov.br/svn/cacic/cacic/trunk/agente-windows@519 fecfc0c7-e812-0410-ae72-849f08638ee7
Showing
1 changed file
with
46 additions
and
25 deletions
Show diff stats
main.pas
... | ... | @@ -2071,30 +2071,49 @@ begin |
2071 | 2071 | // ********************************************************************************************************** |
2072 | 2072 | // Esta procedure tratará os comandos e suas ações, enviados em um pacote XML na requisição, conforme abaixo: |
2073 | 2073 | // ********************************************************************************************************** |
2074 | - // Execute -> Comando que forçará a execução do Gerente de Coletas (Sugestão: Configurar coletas forçadas no Gerente WEB e executar esse comando) | |
2075 | - // Requisição: Tag <Execute> | |
2076 | - // Respostas: AResponseinfo.ContentText := AResponseinfo.ContentText + 'OK' | |
2074 | + // Execute -> Comando que forçará a execução do Gerente de Coletas (Sugestão: Configurar coletas forçadas no Gerente WEB e executar esse comando) | |
2075 | + // Requisição: Tag <Execute> | |
2076 | + // Respostas: AResponseinfo.ContentText := AResponseinfo.ContentText + 'OK' | |
2077 | 2077 | // |
2078 | - // Ask -> Comando que perguntará sobre a existência de um determinado arquivo na estação. | |
2079 | - // Requisição: Tag <FileName>: Nome do arquivo a pesquisar no repositório local | |
2080 | - // Tag <FileHash>: Hash referente ao arquivo a ser pesquisado no repositório local | |
2081 | - // Respostas: AResponseinfo.ContentText := AResponseinfo.ContentText + 'OK'; | |
2082 | - // AResponseinfo.ContentText := AResponseinfo.ContentText + 'Tenho' ou | |
2083 | - // AResponseinfo.ContentText := AResponseinfo.ContentText + 'NaoTenho' ou | |
2084 | - // AResponseinfo.ContentText := AResponseinfo.ContentText + 'Baixando' ou | |
2085 | - // AResponseinfo.ContentText := AResponseinfo.ContentText + 'Ocupado'. | |
2078 | + // Ask -> Comando que perguntará sobre a existência de um determinado arquivo na estação. | |
2079 | + // Requisição: Tag <FileName>: Nome do arquivo a pesquisar no repositório local | |
2080 | + // Tag <FileHash>: Hash referente ao arquivo a ser pesquisado no repositório local | |
2081 | + // Respostas: AResponseinfo.ContentText := AResponseinfo.ContentText + 'OK'; | |
2082 | + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'Tenho' ou | |
2083 | + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'NaoTenho' ou | |
2084 | + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'Baixando' ou | |
2085 | + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'Ocupado'. | |
2086 | 2086 | // |
2087 | 2087 | // |
2088 | - // Erase -> Comando que provocará a exclusão de determinado arquivo. | |
2089 | - // Deverá ser acompanhado das tags <FileName> e <FileHash> | |
2090 | - // Requisição: Tag <FileName>: Nome do arquivo a ser excluído do repositório local | |
2091 | - // Tag <FileHash>: Hash referente ao arquivo a ser excluído do repositório local | |
2092 | - // Respostas: AResponseinfo.ContentText := AResponseinfo.ContentText + 'OK'; | |
2088 | + // Erase -> Comando que provocará a exclusão de determinado arquivo. | |
2089 | + // Deverá ser acompanhado das tags <FileName> e <FileHash> | |
2090 | + // Requisição: Tag <FileName>: Nome do arquivo a ser excluído do repositório local | |
2091 | + // Tag <FileHash>: Hash referente ao arquivo a ser excluído do repositório local | |
2092 | + // Respostas: AResponseinfo.ContentText := AResponseinfo.ContentText + 'OK'; | |
2093 | + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'AcaoExecutada' ou | |
2094 | + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'ArquivoNaoEncontrado' ou | |
2095 | + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'EscritaNaoPermitida'; | |
2093 | 2096 | // |
2097 | + // Registry -> Comando que provocará ação no Registry de estações com MS-Windows. | |
2098 | + // Deverá ser acompanhado das tags <Path>, <Action>, <Condition> e <Value> | |
2099 | + // Requisição: Tag <Path> : Caminho no Registry | |
2100 | + // Tag <Action> : Ação para execução | |
2101 | + // SAVE => Salva o valor contido na tag <Value> de acordo com condição contida na tag <Condition> | |
2102 | + // ERASE => Apaga a chave de acordo com condição contida na tag <Condition> | |
2103 | + // Tag <Condition> : Condiçção para execução da ação | |
2104 | + // EQUAL => Se o valor contido na tag <Value> for IGUAL ao valor encontrado na chave | |
2105 | + // DIFFER => Se o valor contido na tag <Value> for DIFERENTE ao valor encontrado na chave | |
2106 | + // NONE => Nenhuma condição, permitindo a execução da ação de forma incondicional | |
2107 | + // Tag <Value> : Valor a ser utilizado na ação | |
2108 | + // Respostas: AResponseinfo.ContentText := AResponseinfo.ContentText + 'OK'; | |
2109 | + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'AcaoExecutada' ou | |
2110 | + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'ChaveNaoEncontrada' ou | |
2111 | + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'EscritaNaoPermitida'; | |
2094 | 2112 | // |
2095 | - // Exit -> Comando para finalização do agente principal (bandeja) | |
2113 | + // Exit -> Comando para finalização do agente principal (bandeja) | |
2096 | 2114 | |
2097 | 2115 | // Palavra Chave definida por Ger_Cols, enviada e armazenada no BD. A autenticação da comunicação é baseada na verificação deste valor. |
2116 | + // A geração da palavra chave dar-se-á a cada contato do Ger_Cols com o módulo Gerente WEB | |
2098 | 2117 | // te_palavra_chave -> <TE_PALAVRA_CHAVE> |
2099 | 2118 | |
2100 | 2119 | // Tratamento da requisição http... |
... | ... | @@ -2111,10 +2130,11 @@ begin |
2111 | 2130 | strCmd := XML_RetornaValor('cmd',strXML); |
2112 | 2131 | // As ações terão seus valores |
2113 | 2132 | |
2114 | - if (strCmd = 'Execute') or | |
2115 | - (strCmd = 'Ask') or | |
2116 | - (strCmd = 'Erase') or | |
2117 | - (strCmd = 'Exit') then | |
2133 | + if (strCmd = 'Execute') or | |
2134 | + (strCmd = 'Ask') or | |
2135 | + (strCmd = 'Erase') or | |
2136 | + (strCmd = 'Registry') or | |
2137 | + (strCmd = 'Exit') then | |
2118 | 2138 | AResponseinfo.ContentText := 'OK' |
2119 | 2139 | else |
2120 | 2140 | AResponseinfo.ContentText := 'COMANDO NÃO PERMITIDO!'; |
... | ... | @@ -2122,15 +2142,16 @@ begin |
2122 | 2142 | else |
2123 | 2143 | AResponseinfo.ContentText := 'ACESSO NÃO PERMITIDO!'; |
2124 | 2144 | |
2125 | - if (strCmd = 'Execute') then | |
2145 | + if (strCmd = 'Execute') then | |
2126 | 2146 | ExecutaCacic(nil) |
2127 | - else if (strCmd = 'Ask') then | |
2147 | + else if (strCmd = 'Ask') then | |
2128 | 2148 | Begin |
2129 | 2149 | strFileName := XML_RetornaValor('FileName',strXML); |
2130 | 2150 | strFileHash := XML_RetornaValor('FileHash',strXML); |
2131 | 2151 | End |
2132 | - else if (strCmd = 'Erase') then | |
2133 | - else if (strCmd = 'Exit') then | |
2152 | + else if (strCmd = 'Erase') then | |
2153 | + else if (strCmd = 'Registry') then | |
2154 | + else if (strCmd = 'Exit') then | |
2134 | 2155 | Finaliza; |
2135 | 2156 | end; |
2136 | 2157 | ... | ... |