Skip to content

Bundle OSGI responsável por realizar o cálculo de Top-K dos dispositivos a partir de uma requisição feita por um Client superior.

Notifications You must be signed in to change notification settings

larsid/soft-iot-fog-broker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

soft-iot-dlt-fog-broker

O soft-iot-dlt-fog-broker é o bundle genérico que pode atuar tanto na camada Edge quanto na Fog. Ele responsável por realizar o cálculo de Top-K dos dispositivos a partir de uma requisição feita por um Client superior.
Para a comunicação, é utilizado o protocolo MQTT.

Modelo da arquitetura

Configurações

Propriedade Descrição Valor Padrão
ip_up Endereço IP do Client situado na camada acima localhost
ip Endereço IP de onde o Bundle está sendo executado localhost
port Porta para conexão com o Broker 1883
user Usuário para conexão com o Broker karaf
pass Senha para conexão com o Broker karaf
urlAPI URL da API onde estão os dispositivos http://localhost:8181/cxf/iot-service/devices
hasNodes Se o gateway onde o bundle está sendo executado irá possuir filhos true
timeoutInSeconds Tempo máximo de espera da resposta dos filhos 30
debugModeValue Modo depuração true

Protocolo TopKP

Requisita quais são os sensores disponíveis:

Requisição:

GET sensors

Resposta

{
    "sensors": [
        "sensorType1",
        "sensorType2",
        "sensorType3"
    ]
}

Requisita os Top-Ks dispositivos:

Requisição:

GET topk {
    "id": "requestId",
    "k": value,
    "functionHealth": [
        {
            "sensor": "sensorType1",
            "weight": value
        },
        {
            "sensor": "sensorType2",
            "weight": value
        },
        {
            "sensor": "sensorType3",
            "weight": "value
        },
    ]
}

Resposta

{
    "id": "responseId",
    "timestamp": "currentTime",
    "devices": [
        {
            "deviceId": "deviceId1",
            "score": value
        },
        {
            "deviceId": "deviceId2",
            "score": value
        },
    ]
}

Requisições através do Mosquitto MQTT Broker

Requisita quais são os sensores disponíveis

mosquitto_sub -t "SENSORS_FOG_RES/" -u <USER> -P <PASSWORD -h <HOST_NAME> -p <PORT>
mosquitto_pub -t "GET sensors" -m "" -u <USER> -P <PASSWORD -h <HOST_NAME> -p <PORT>

Requisita os Top-Ks dispositivos

mosquitto_sub -t "TOP_K_HEALTH_FOG_RES/#" -u <USER> -P <PASSWORD> -h <HOST_NAME> -p <PORT>
mosquitto_pub -t "GET topk" -m '{"id": value,"k": value,"functionHealth": [{"sensor": "sensorType1","weight": value},{"sensor": "sensorType2","weight": value}]}' -u <USER> -P <PASSWORD> -h <HOST_NAME> -p <PORT>

About

Bundle OSGI responsável por realizar o cálculo de Top-K dos dispositivos a partir de uma requisição feita por um Client superior.

Topics

Resources

Stars

Watchers

Forks

Languages