Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import sys
- import time
- import json
- import codecs
- import argparse
- import numpy as np
- import pickle as pkl
- import paho.mqtt.client as mqtt
- def on_message(client, userdata, msg):
- m_decode = str(msg.payload.decode("utf-8","ignore"))
- print(m_decode)
- print("data Received type:",type(m_decode))
- print("data Received",m_decode)
- #Processing message payload
- #Converting received data from json to object
- tmp1 = json.loads(m_decode)
- data_in = np.array(tmp1[0])
- ncols = tmp1[1]
- #Reshaping 1-D array to 2-D array
- converted_arr = np.reshape(data_in, (-1, ncols))
- print("\n Array after de-serialization")
- print(converted_arr)
- def array_to_cloud():
- i = input("Enter row dimensions:")
- i = int(i)
- j = input("Enter column dimensions:")
- j = int(j)
- print("Dimensions:",i,j)
- #Creating random values to fill the np array
- a = np.random.randint(low=1,high=11,size=(i,j))
- print(a)
- #Duplicating array
- b = a
- #Concatenating matrix rows
- print("\nConcatenating matrix rows")
- a = a.ravel()
- print(a)
- #Converting array to list
- new_a = a.tolist()
- #print(new_a)
- #Creating a list consisting of the 1D array and its column zdimensions(j)
- tmp = []
- tmp = [new_a,j]
- data_out = json.dumps(tmp)
- print("data_out type:",type(data_out))
- return data_out
- topic="test/json_test"
- client=mqtt.Client("pythontest1")
- client.on_message=on_message
- print("\n\n MQTT:\n\n")
- print("Connecting to broker ","localhost")
- client.connect("localhost")
- client.loop_start()
- client.subscribe(topic)
- time.sleep(3)
- print("sending data")
- data_out = array_to_cloud()
- client.publish(topic,data_out)
- time.sleep(2)
- client.loop_stop()
- client.disconnect()
- print("Connection closed!")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement