From 4dc1f1c264714edac5889877647345c7e9b966af Mon Sep 17 00:00:00 2001 From: Paul Sokolovsky Date: Mon, 9 May 2016 13:55:41 +0300 Subject: [PATCH 1/3] umqtt.simple: Add pubsub example. --- umqtt.simple/example_pubsub.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 umqtt.simple/example_pubsub.py diff --git a/umqtt.simple/example_pubsub.py b/umqtt.simple/example_pubsub.py new file mode 100644 index 000000000..1d0f4451f --- /dev/null +++ b/umqtt.simple/example_pubsub.py @@ -0,0 +1,13 @@ +import time +from umqtt.simple import MQTTClient + +def sub_cb(topic, msg): + print((topic, msg)) + +c = MQTTClient("uqmtt_client", "localhost") +c.connect() +c.subscribe(b"foo_topic") +c.publish(b"foo_topic", b"hello") +while 1: + c.wait_msg() +c.disconnect() From d3d0b4f0b59eff77415da0822ae7eb18e38ba26f Mon Sep 17 00:00:00 2001 From: Paul Sokolovsky Date: Sun, 5 Jun 2016 14:35:33 +0300 Subject: [PATCH 2/3] umqtt.robust: Add universal with_retry method, and publish_() using it. This method uses more memory though. --- umqtt.robust/umqtt/robust.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/umqtt.robust/umqtt/robust.py b/umqtt.robust/umqtt/robust.py index 7ee40e020..582628c2e 100644 --- a/umqtt.robust/umqtt/robust.py +++ b/umqtt.robust/umqtt/robust.py @@ -26,6 +26,18 @@ def reconnect(self): i += 1 self.delay(i) + def with_retry(self, meth, *args, **kwargs): + while 1: + try: + return meth(*args, **kwargs) + except OSError as e: + print("%r" % e) + time.sleep(0.5) + self.reconnect() + + def publish_(self, *args, **kwargs): + return self.with_retry(super().publish, *args, **kwargs) + def publish(self, topic, msg, retain=False, qos=0): while 1: try: From 6f9131e59a4c27691b378cd027151f8d0352d976 Mon Sep 17 00:00:00 2001 From: Paul Sokolovsky Date: Sun, 3 Jul 2016 13:56:16 +0300 Subject: [PATCH 3/3] umqtt.simple: Add example for publishing over SSL. --- umqtt.simple/example_pub_ssl.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 umqtt.simple/example_pub_ssl.py diff --git a/umqtt.simple/example_pub_ssl.py b/umqtt.simple/example_pub_ssl.py new file mode 100644 index 000000000..9d2f62dd9 --- /dev/null +++ b/umqtt.simple/example_pub_ssl.py @@ -0,0 +1,13 @@ +from umqtt.simple import MQTTClient + +# Test reception e.g. with: +# mosquitto_sub -t foo_topic + +def main(server="localhost"): + c = MQTTClient("umqtt_client", server, ssl=True) + c.connect() + c.publish(b"foo_topic", b"hello") + c.disconnect() + +if __name__ == "__main__": + main() pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy