НачатьНачать бесплатно

Кэширование потока данных

Теперь вы будете собирать данные с 2 счётчиков энергопотребления. Это минималистичный поток данных, который содержит только идентификатор устройства измерения и значение, разделённые запятой.

Пример записи: C331,6020

Поскольку в самом измерении время не указывается, нужно использовать момент отправки сообщения брокеру MQTT. Эта метка времени доступна как message.timestamp в формате epoch.

Это упражнение является частью курса

Анализ данных Интернета вещей на Python

Посмотреть курс

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

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)
Редактировать и запускать код