Datastream cachen
Je gaat nu gegevens verzamelen van 2 energietellers. Dit is een heel minimalistische datastroom, die alleen het meetapparaat en de waarde geeft, gescheiden door een komma.
Dit ziet er zo uit:
C331,6020
Omdat de meting zelf geen tijd bevat, moet je vertrouwen op het moment waarop het bericht is ingediend bij de MQTT-broker.
Deze timestamp is beschikbaar als message.timestamp in epoch-formaat.
Deze oefening maakt deel uit van de cursus
IoT-gegevens analyseren in Python
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
cache = []
def on_message(client, userdata, message):
# Combine timestamp and payload
data = f"{____.____},{____.____}"
# Append data to cache
____.____(____)
# Connect function to mqtt datastream
subscribe.callback(on_message, topics="datacamp/energy", hostname=MQTT_HOST)