-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathoverview.uml
33 lines (31 loc) · 1.21 KB
/
overview.uml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
@startuml esp8266
!includeurl https://gist.githubusercontent.com/anoff/c531251183cf9590b0f86ac85d5bc353/raw/fancy.plantuml
!define ICONURL https://raw.githubusercontent.com/tupadr3/plantuml-icon-font-sprites/v2.0.0
!includeurl ICONURL/common.puml
!includeurl ICONURL/devicons/firebase.puml
!includeurl ICONURL/font-awesome-5/microchip.puml
!includeurl ICONURL/font-awesome-5/chart_bar.puml
!includeurl ICONURL/weather/day_rain_mix.puml
skinparam defaultTextAlignment center
DEV_FIREBASE(db, database, database)
DEV_FIREBASE(http_func, HTTP endpoint, node)
DEV_FIREBASE(weather_func, Weather Query, node)
DEV_FIREBASE(aggregate_func, Aggregate Hour/Day, node)
FA5_MICROCHIP(uc, ESP8266, node)
FA5_CHART_BAR(sensors, sensors, card)
WEATHER_DAY_RAIN_MIX(weather, OpenWeatherMap, card)
card trigger [
<size:42><&clock>
Time trigger
]
trigger .left.> uc: 15min
sensors -> uc
uc -down-> http_func: report heartbeat/data
http_func -> db: store data
db ..> weather_func: trigger weather query
weather_func -> db: enrich sensor reading\nwith weather data
weather_func ..> weather: fetch current weather
weather_func <- weather
db ..> aggregate_func: trigger aggregation by doc update
aggregate_func -> db: create hourly/daily aggregates
@enduml