Você está na página 1de 4

Comandos HTTP

Versão 1.03

Este documento descreve os comandos HTTP compatíveis com os módulos de automação da


família TCR.

Histórico do documento

Versão Alterações
1.00 Versão inicial.
1.01 Pequenas correções.
1.02 Comando info alterado
1.03 Comando info corrigido e expandido

Respostas padrão
Em caso de sucesso, o servidor HTTP do módulo responderá “1”. Caso haja qualquer erro, ou a
requisição não possa ser atendida no momento: “0”.
Isto vale para todos as requisições, de maneira que só estão documentadas as respostas dos
comandos que diferem deste padrão.

Detalhes das requisições HTTP


As requisições HTTP aqui listadas são todas do tipo GET e devem ser prefixadas por
“/sistema.cgi?”, seguindo os exemplos abaixo:

Exemplo de URL: Descrição


http://192.168.1.20/sistema.cgi?info=1 Requisição via endereço IP em
uma rede interna.
Requisição via nome de domínio e
http://dominiodmi.issodns.com:8080/sistema.cgi?info=1
especificando uma porta.

Requisição utilizando autenticação.


http://usuario:senha@dominiodmi.issodns.com/sistema.cgi?lermc=10
,3

Comandos

Comando: lerpt=[Porta inicial],[Número de portas a serem lidas]


Descrição: Retorna valores de portas de entrada/saída.
Retorno: Retorna um vetor no formato JSON contendo o valor das portas especificadas.
Exemplos: lerpt=0,8: retorna o valor de 8 portas, iniciando e incluindo a porta 0 (0, 1, 2, 3, 4, 5, 6, 7).
lerpt=1005,3: retorna o valor das portas 1005, 1006 e 1007.
lerpt=7002,2: retorna o valor das portas 7002 e 7003.
Comando: lermc
Descrição: Idêntico a lerpt, mas se aplica à memória compartilhada volátil (lê posições da memória
em vez de portas).

Comando: lermp
Descrição: Idêntico a lerpt, mas se aplica à memória compartilhada permanente (lê posições da
memória em vez de portas).

Comando: escpt=[Porta inicial],[Número de portas a serem escritas],[Valor]


Descrição: Escreve o [Valor] na(s) porta(s) especificada(s).
Exemplos: escpt=10,1,123.456: escreve o valor 123.456 na porta 10.
escpt=48,4,9: escreve o valor 9 nas portas 48,49,51,52.

Comando: escmc
Descrição: Idêntico a escpt, mas se aplica à memória compartilhada volátil (escreve em posições
da memória em vez de portas).

Comando: escmp
Descrição: Idêntico a escpt, mas se aplica à memória compartilhada permanente (escreve em
posições da memória em vez de portas).

Comando: escptm=[Porta inicial],[Valor1],[Valor2],[Valor3](...)


Descrição: Escreve os valores fornecidos nas portas iniciadas em [Porta inicial].
Exemplos: escptm=2000,123,456,789: escreve o valor 123 na porta 2000, 456 na porta 2001 e 789
na porta 2002.

Comando: escmcm
Descrição: Idêntico a escptm, mas se aplica à memória compartilhada volátil (escreve em posições
da memória em vez de portas).

Comando: escmpm
Descrição: Idêntico a escptm, mas se aplica à memória compartilhada permanente (escreve em
posições da memória em vez de portas).
Comando: info=1
Descrição: Retorna informações sobre o módulo de automação numa string hexadecimal contendo
147 caracteres que, quando descodificada, resulta na seguinte sequência de dados:

Uptime do sistema (U32)


Data atual em (UNIX timestamp) (U32)
Versão do firmware (U32)
Status da conexão com o servidor (U8)
Endereço IP do módulo (U32)
Máscara de rede (U32)
Gateway (U32)
DNS 1 (U32)
DNS 2 (U32)
Endereco MAC (6 bytes)
Porta HTTP (U16)
Número serial do módulo (32 bytes)
Número que identifica o modelo do módulo (U32)
Número que identifica a família do módulo (U32)
ID da sessão atual (número aleatório alterado sempre que o módulo é ligado/reiniciado)
(U32)
Status do cartão SD (U4)
Versão do bootloader (U32)

U4 = nibble não assinado.


U8 = byte não assinado.
U16 = número inteiro não assinado de 16 bits.
U32 = número inteiro não assinado de 32 bits.

Comando: leresdig=1
Descrição: Retorna uma string de 32 caracteres em formato hexadecimal que, quando
descodificada, contém 128 bits representado o valor das portas 1000-1063 e 0-63 (nesta
ordem).

Comando: reiniciar=1
Descrição: Reinicia o módulo de automação. Pode levar alguns segundos até que o módulo seja
efetivamente reiniciado.

Comando: formatar=[Modo]
Descrição: Formata o cartão SD do módulo de automação. [Modo] pode ser:
0: formatação normal.
1: formata e restaura o arquivo CONFIG.TXT (se este existia antes da formatação).
2: formata e cria um novo arquivo CONFIG.TXT com base nas configurações atuais do
módulo.

Comando: diag=1
Descrição: Retorna um relatório de diagnóstico do módulo.

Você também pode gostar