with MQTT and Python?
Write Python and use any of the 350k+ PyPi packages available. Refer to the Pipedream Python docs to learn more.
import mqtt from "mqtt";
export default defineComponent({
props: {
mqtt: {
type: "app",
app: "mqtt",
}
},
async run({ steps, $ }) {
const url = `${this.mqtt.$auth.protocol}://${this.mqtt.$auth.host}:${this.mqtt.$auth.port}`;
const options = {
clientId: this.mqtt.$auth.client_id ?? `pipedream-client-${Date.now()}`,
connectTimeout: 5000,
username: this.mqtt.$auth.username,
password: this.mqtt.$auth.password,
};
const client = mqtt.connect(url, options);
await new Promise((resolve) => {
client.on("connect", () => {
client.publish("pipedream/test", 'Welcome MQTT + Pipedream users! ' + new Date().toISOString(), () => {
client.end();
console.log("Message sent");
resolve();
});
});
});
return {
mqttClientIsConnected: client.connected,
};
},
})
Develop, run and deploy your Python code in Pipedream workflows. Integrate seamlessly between no-code steps, with connected accounts, or integrate Data Stores and manipulate files within a workflow
This includes installing PyPI packages, within your code without having to manage a requirements.txt
file or running pip
.
Below is an example of using Python to access data from the trigger of the workflow, and sharing it with subsequent workflow steps:
def handler(pd: "pipedream"):
# Reference data from previous steps
print(pd.steps["trigger"]["context"]["id"])
# Return data for use in future steps
return {"foo": {"test":True}}