Salvar fluxo de dados
Agora você vai receber um fluxo de dados MQTT e adicionar cada novo ponto de dados à lista store.
Usando a biblioteca paho.mqtt, você pode assinar um fluxo de dados com subscribe.callback().
Cada nova mensagem vai gerar uma chamada para a nossa função, que precisa ter os seguintes argumentos:
client, a instância do cliente para este callbackuserdata, os dados privados do usuário definidos ao criar a instânciamessage, uma instância deMQTTMessage. Para este exercício,payloadé o único atributo que nos interessa.
Você precisa analisar os dados como string JSON usando json.loads() e adicioná-los à lista store.
Em seguida, você vai converter isso em um DataFrame e salvar o DataFrame como arquivo CSV.
json, pandas como pd, MQTT_HOST e topic estão disponíveis na sua sessão.
Este exercício faz parte do curso
Analisando Dados de IoT em Python
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Define function to call by callback method
def ____(____):
# Parse the message.payload
data = ____
store.append(data)