Files
MSE-PI-E2EEDA-Plein-de-eeee…/doc_resources/gateway/sequence_data_collection.puml
DjeAvd 3668ef4520 docs(gateway): remove store measurement arrow from sequence diagram
broker -> db storage is handled by the database manager, not the gateway
2026-06-04 12:32:48 +02:00

41 lines
1.0 KiB
Plaintext

@startuml
skinparam sequenceMessageAlign center
collections "BLE broadcaster" as thingy
participant "Gateway\n(Raspberry Pi)" as gw
participant "MQTT Broker\n(RabbitMQ)" as broker
participant "Database\n(InfluxDB)" as db
== Data collection ==
thingy -> gw : BLE advertising packet
alt company_id != 0xffff
gw -> gw : discard packet
else
gw -> gw : check payload size
alt payload size != 14 bytes
gw -> gw : discard packet\n(non-Thingy device)
else
gw -> gw : decode_payload()
alt unknown key in payload
gw -> gw : discard packet\nlog debug
else
alt CO2 == 0xFFFFFFFF
gw -> gw : discard CO2 value\n(sensor not ready)
end
alt duplicate within 10 seconds
gw -> gw : discard packet\n(deduplication)
else
gw -> gw : add UTC timestamp
gw -> broker : publish JSON\n{gateway_id}/{mac}/update
broker --> gw : on_publish confirmed
end
end
end
end
@enduml