| Version 10 (modified by jano.simas, 10 years ago) (diff) |
|---|
Comunicação TCP
A comunicação da aplicação web e as instâncias dos serviços deve ser feita através do protocolo TCP.
As mensagens devem ser compostas por 3 partes:
- Tamanho da mensagem (inteiro de 4 bytes)
- Sinal (inteiro de 4 bytes)
- Mensagem [opcional]
O Tamanho da mensagem deve ser calculado como: tamanho do sinal + tamanho dos dados.
Sinais disponíveis
| 0 | TERMINATE_SIGNAL | Desliga o serviço |
| 1 | STATUS_SIGNAL | Requisição de informações sobre o serviço |
| 2 | DATA_SIGNAL | Envio de dados |
| 3 | START_SIGNAL | Inicializa um processo (Coleta, análise,...) |
| 4 | ERROR_SIGNAL | Sinal utilizado para que o serviço envie mensagens de erro para a aplicação Web |
Mensagem
O envio de dados deve ser feito através de um objeto JSon composto por arrays de cada tipo de dado.
A mensagem deve ser antecedida pelo cabeçalho: x00 x00 x01 x01
As tags de tipos de dados aceitos :
- DataProviders
- DataSeries
- Collectors
- Analysis
Exemplo de mensagem
{
"DataProviders": [
{
"active": true,
"class": "DataProvider",
"data_provider_type": "",
"description": "Testing provider",
"id": 1,
"intent": 0,
"name": "Provider",
"project_id": 1,
"uri": "file:///home/user/MyDevel/dpi/terrama2-build/data/PCD_serrmar_INPE"
}
],
"DataSeries": [
{
"class": "DataSeries",
"data_provider_id": 1,
"datasets": [
{
"active": true,
"class": "DataSet",
"data_series_id": 0,
"format": {
"mask": "fires.csv",
"srid": "4326",
"timezone": "+00"
},
"id": 1
}
],
"description": "",
"id": 1,
"name": "DataProvider queimadas local",
"semantics": "OCCURRENCE-mvf"
}
]
}
