if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("01-con-discon-success", keepalive=keepalive)
-connack_packet = mosq_test.gen_connack(rc=0)
+connect_packet = paho_test.gen_connect("01-con-discon-success", keepalive=keepalive)
+connack_packet = paho_test.gen_connack(rc=0)
-disconnect_packet = mosq_test.gen_disconnect()
+disconnect_packet = paho_test.gen_disconnect()
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(10)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "disconnect", disconnect_packet):
+ if paho_test.expect_packet(conn, "disconnect", disconnect_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 4
-connect_packet = mosq_test.gen_connect("01-keepalive-pingreq", keepalive=keepalive)
-connack_packet = mosq_test.gen_connack(rc=0)
+connect_packet = paho_test.gen_connect("01-keepalive-pingreq", keepalive=keepalive)
+connack_packet = paho_test.gen_connack(rc=0)
-pingreq_packet = mosq_test.gen_pingreq()
-pingresp_packet = mosq_test.gen_pingresp()
+pingreq_packet = paho_test.gen_pingreq()
+pingresp_packet = paho_test.gen_pingresp()
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(keepalive+10)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "pingreq", pingreq_packet):
+ if paho_test.expect_packet(conn, "pingreq", pingreq_packet):
time.sleep(1.0)
conn.send(pingresp_packet)
- if mosq_test.expect_packet(conn, "pingreq", pingreq_packet):
+ if paho_test.expect_packet(conn, "pingreq", pingreq_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("01-no-clean-session", clean_session=False, keepalive=keepalive)
+connect_packet = paho_test.gen_connect("01-no-clean-session", clean_session=False, keepalive=keepalive)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(10)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("01-unpwd-set", keepalive=keepalive, username="uname", password=";'[08gn=#")
+connect_packet = paho_test.gen_connect("01-unpwd-set", keepalive=keepalive, username="uname", password=";'[08gn=#")
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(10)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("01-will-set", keepalive=keepalive, will_topic="topic/on/unexpected/disconnect", will_qos=1, will_retain=True, will_payload="will message")
+connect_packet = paho_test.gen_connect("01-will-set", keepalive=keepalive, will_topic="topic/on/unexpected/disconnect", will_qos=1, will_retain=True, will_payload="will message")
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(10)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("01-will-unpwd-set",
+connect_packet = paho_test.gen_connect("01-will-unpwd-set",
keepalive=keepalive, username="oibvvwqw", password="#'^2hg9a&nm38*us",
will_topic="will-topic", will_qos=2, will_payload="will message")
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(10)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("subscribe-qos0-test", keepalive=keepalive)
-connack_packet = mosq_test.gen_connack(rc=0)
+connect_packet = paho_test.gen_connect("subscribe-qos0-test", keepalive=keepalive)
+connack_packet = paho_test.gen_connack(rc=0)
-disconnect_packet = mosq_test.gen_disconnect()
+disconnect_packet = paho_test.gen_disconnect()
mid = 1
-subscribe_packet = mosq_test.gen_subscribe(mid, "qos0/test", 0)
-suback_packet = mosq_test.gen_suback(mid, 0)
+subscribe_packet = paho_test.gen_subscribe(mid, "qos0/test", 0)
+suback_packet = paho_test.gen_suback(mid, 0)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(10)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "subscribe", subscribe_packet):
+ if paho_test.expect_packet(conn, "subscribe", subscribe_packet):
conn.send(suback_packet)
- if mosq_test.expect_packet(conn, "disconnect", disconnect_packet):
+ if paho_test.expect_packet(conn, "disconnect", disconnect_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("subscribe-qos1-test", keepalive=keepalive)
-connack_packet = mosq_test.gen_connack(rc=0)
+connect_packet = paho_test.gen_connect("subscribe-qos1-test", keepalive=keepalive)
+connack_packet = paho_test.gen_connack(rc=0)
-disconnect_packet = mosq_test.gen_disconnect()
+disconnect_packet = paho_test.gen_disconnect()
mid = 1
-subscribe_packet = mosq_test.gen_subscribe(mid, "qos1/test", 1)
-suback_packet = mosq_test.gen_suback(mid, 1)
+subscribe_packet = paho_test.gen_subscribe(mid, "qos1/test", 1)
+suback_packet = paho_test.gen_suback(mid, 1)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(10)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "subscribe", subscribe_packet):
+ if paho_test.expect_packet(conn, "subscribe", subscribe_packet):
conn.send(suback_packet)
- if mosq_test.expect_packet(conn, "disconnect", disconnect_packet):
+ if paho_test.expect_packet(conn, "disconnect", disconnect_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("subscribe-qos2-test", keepalive=keepalive)
-connack_packet = mosq_test.gen_connack(rc=0)
+connect_packet = paho_test.gen_connect("subscribe-qos2-test", keepalive=keepalive)
+connack_packet = paho_test.gen_connack(rc=0)
-disconnect_packet = mosq_test.gen_disconnect()
+disconnect_packet = paho_test.gen_disconnect()
mid = 1
-subscribe_packet = mosq_test.gen_subscribe(mid, "qos2/test", 2)
-suback_packet = mosq_test.gen_suback(mid, 2)
+subscribe_packet = paho_test.gen_subscribe(mid, "qos2/test", 2)
+suback_packet = paho_test.gen_suback(mid, 2)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(10)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "subscribe", subscribe_packet):
+ if paho_test.expect_packet(conn, "subscribe", subscribe_packet):
conn.send(suback_packet)
- if mosq_test.expect_packet(conn, "disconnect", disconnect_packet):
+ if paho_test.expect_packet(conn, "disconnect", disconnect_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("unsubscribe-test", keepalive=keepalive)
-connack_packet = mosq_test.gen_connack(rc=0)
+connect_packet = paho_test.gen_connect("unsubscribe-test", keepalive=keepalive)
+connack_packet = paho_test.gen_connack(rc=0)
-disconnect_packet = mosq_test.gen_disconnect()
+disconnect_packet = paho_test.gen_disconnect()
mid = 1
-unsubscribe_packet = mosq_test.gen_unsubscribe(mid, "unsubscribe/test")
-unsuback_packet = mosq_test.gen_unsuback(mid)
+unsubscribe_packet = paho_test.gen_unsubscribe(mid, "unsubscribe/test")
+unsuback_packet = paho_test.gen_unsuback(mid)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(10)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "unsubscribe", unsubscribe_packet):
+ if paho_test.expect_packet(conn, "unsubscribe", unsubscribe_packet):
conn.send(unsuback_packet)
- if mosq_test.expect_packet(conn, "disconnect", disconnect_packet):
+ if paho_test.expect_packet(conn, "disconnect", disconnect_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("publish-qos1-test", keepalive=keepalive)
-connack_packet = mosq_test.gen_connack(rc=0)
+connect_packet = paho_test.gen_connect("publish-qos1-test", keepalive=keepalive)
+connack_packet = paho_test.gen_connack(rc=0)
-disconnect_packet = mosq_test.gen_disconnect()
+disconnect_packet = paho_test.gen_disconnect()
mid = 123
-publish_packet = mosq_test.gen_publish("pub/qos1/receive", qos=1, mid=mid, payload="message")
-puback_packet = mosq_test.gen_puback(mid)
+publish_packet = paho_test.gen_publish("pub/qos1/receive", qos=1, mid=mid, payload="message")
+puback_packet = paho_test.gen_puback(mid)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(10)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
conn.send(publish_packet)
- if mosq_test.expect_packet(conn, "puback", puback_packet):
+ if paho_test.expect_packet(conn, "puback", puback_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("publish-qos2-test", keepalive=keepalive)
-connack_packet = mosq_test.gen_connack(rc=0)
+connect_packet = paho_test.gen_connect("publish-qos2-test", keepalive=keepalive)
+connack_packet = paho_test.gen_connack(rc=0)
-disconnect_packet = mosq_test.gen_disconnect()
+disconnect_packet = paho_test.gen_disconnect()
mid = 13423
-publish_packet = mosq_test.gen_publish("pub/qos2/receive", qos=2, mid=mid, payload="message")
-pubrec_packet = mosq_test.gen_pubrec(mid)
-pubrel_packet = mosq_test.gen_pubrel(mid)
-pubcomp_packet = mosq_test.gen_pubcomp(mid)
+publish_packet = paho_test.gen_publish("pub/qos2/receive", qos=2, mid=mid, payload="message")
+pubrec_packet = paho_test.gen_pubrec(mid)
+pubrel_packet = paho_test.gen_pubrel(mid)
+pubcomp_packet = paho_test.gen_pubcomp(mid)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(10)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
conn.send(publish_packet)
- if mosq_test.expect_packet(conn, "pubrec", pubrec_packet):
+ if paho_test.expect_packet(conn, "pubrec", pubrec_packet):
# Should be repeated due to timeout
- if mosq_test.expect_packet(conn, "pubrec", pubrec_packet):
+ if paho_test.expect_packet(conn, "pubrec", pubrec_packet):
conn.send(pubrel_packet)
- if mosq_test.expect_packet(conn, "pubcomp", pubcomp_packet):
+ if paho_test.expect_packet(conn, "pubcomp", pubcomp_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("publish-qos1-test", keepalive=keepalive)
-connack_packet = mosq_test.gen_connack(rc=0)
+connect_packet = paho_test.gen_connect("publish-qos1-test", keepalive=keepalive)
+connack_packet = paho_test.gen_connack(rc=0)
-disconnect_packet = mosq_test.gen_disconnect()
+disconnect_packet = paho_test.gen_disconnect()
mid = 1
-publish_packet = mosq_test.gen_publish("pub/qos1/test", qos=1, mid=mid, payload="message")
-publish_packet_dup = mosq_test.gen_publish("pub/qos1/test", qos=1, mid=mid, payload="message", dup=True)
-puback_packet = mosq_test.gen_puback(mid)
+publish_packet = paho_test.gen_publish("pub/qos1/test", qos=1, mid=mid, payload="message")
+publish_packet_dup = paho_test.gen_publish("pub/qos1/test", qos=1, mid=mid, payload="message", dup=True)
+puback_packet = paho_test.gen_puback(mid)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
(conn, address) = sock.accept()
conn.settimeout(15)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "publish", publish_packet):
+ if paho_test.expect_packet(conn, "publish", publish_packet):
# Disconnect client. It should reconnect.
conn.close()
(conn, address) = sock.accept()
conn.settimeout(15)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "retried publish", publish_packet_dup):
+ if paho_test.expect_packet(conn, "retried publish", publish_packet_dup):
conn.send(puback_packet)
- if mosq_test.expect_packet(conn, "disconnect", disconnect_packet):
+ if paho_test.expect_packet(conn, "disconnect", disconnect_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("publish-qos1-test", keepalive=keepalive)
-connack_packet = mosq_test.gen_connack(rc=0)
+connect_packet = paho_test.gen_connect("publish-qos1-test", keepalive=keepalive)
+connack_packet = paho_test.gen_connack(rc=0)
-disconnect_packet = mosq_test.gen_disconnect()
+disconnect_packet = paho_test.gen_disconnect()
mid = 1
-publish_packet = mosq_test.gen_publish("pub/qos1/test", qos=1, mid=mid, payload="message")
-publish_packet_dup = mosq_test.gen_publish("pub/qos1/test", qos=1, mid=mid, payload="message", dup=True)
-puback_packet = mosq_test.gen_puback(mid)
+publish_packet = paho_test.gen_publish("pub/qos1/test", qos=1, mid=mid, payload="message")
+publish_packet_dup = paho_test.gen_publish("pub/qos1/test", qos=1, mid=mid, payload="message", dup=True)
+puback_packet = paho_test.gen_puback(mid)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(5)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "publish", publish_packet):
+ if paho_test.expect_packet(conn, "publish", publish_packet):
# Delay for > 3 seconds (message retry time)
- if mosq_test.expect_packet(conn, "dup publish", publish_packet_dup):
+ if paho_test.expect_packet(conn, "dup publish", publish_packet_dup):
conn.send(puback_packet)
- if mosq_test.expect_packet(conn, "disconnect", disconnect_packet):
+ if paho_test.expect_packet(conn, "disconnect", disconnect_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("publish-qos2-test", keepalive=keepalive)
-connack_packet = mosq_test.gen_connack(rc=0)
+connect_packet = paho_test.gen_connect("publish-qos2-test", keepalive=keepalive)
+connack_packet = paho_test.gen_connack(rc=0)
-disconnect_packet = mosq_test.gen_disconnect()
+disconnect_packet = paho_test.gen_disconnect()
mid = 1
-publish_packet = mosq_test.gen_publish("pub/qos2/test", qos=2, mid=mid, payload="message")
-publish_dup_packet = mosq_test.gen_publish("pub/qos2/test", qos=2, mid=mid, payload="message", dup=True)
-pubrec_packet = mosq_test.gen_pubrec(mid)
-pubrel_packet = mosq_test.gen_pubrel(mid)
-pubrel_dup_packet = mosq_test.gen_pubrel(mid, dup=True)
-pubcomp_packet = mosq_test.gen_pubcomp(mid)
+publish_packet = paho_test.gen_publish("pub/qos2/test", qos=2, mid=mid, payload="message")
+publish_dup_packet = paho_test.gen_publish("pub/qos2/test", qos=2, mid=mid, payload="message", dup=True)
+pubrec_packet = paho_test.gen_pubrec(mid)
+pubrel_packet = paho_test.gen_pubrel(mid)
+pubrel_dup_packet = paho_test.gen_pubrel(mid, dup=True)
+pubcomp_packet = paho_test.gen_pubcomp(mid)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(5)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "publish", publish_packet):
+ if paho_test.expect_packet(conn, "publish", publish_packet):
# Disconnect client. It should reconnect.
conn.close()
(conn, address) = sock.accept()
conn.settimeout(15)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "retried publish", publish_dup_packet):
+ if paho_test.expect_packet(conn, "retried publish", publish_dup_packet):
conn.send(pubrec_packet)
- if mosq_test.expect_packet(conn, "pubrel", pubrel_packet):
+ if paho_test.expect_packet(conn, "pubrel", pubrel_packet):
# Disconnect client. It should reconnect.
conn.close()
conn.settimeout(15)
# Complete connection and message flow.
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "2nd retried publish", publish_dup_packet):
+ if paho_test.expect_packet(conn, "2nd retried publish", publish_dup_packet):
conn.send(pubrec_packet)
- if mosq_test.expect_packet(conn, "pubrel", pubrel_packet):
+ if paho_test.expect_packet(conn, "pubrel", pubrel_packet):
conn.send(pubcomp_packet)
- if mosq_test.expect_packet(conn, "disconnect", disconnect_packet):
+ if paho_test.expect_packet(conn, "disconnect", disconnect_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("publish-qos2-test", keepalive=keepalive)
-connack_packet = mosq_test.gen_connack(rc=0)
+connect_packet = paho_test.gen_connect("publish-qos2-test", keepalive=keepalive)
+connack_packet = paho_test.gen_connack(rc=0)
-disconnect_packet = mosq_test.gen_disconnect()
+disconnect_packet = paho_test.gen_disconnect()
mid = 1
-publish_packet = mosq_test.gen_publish("pub/qos2/test", qos=2, mid=mid, payload="message")
-publish_dup_packet = mosq_test.gen_publish("pub/qos2/test", qos=2, mid=mid, payload="message", dup=True)
-pubrec_packet = mosq_test.gen_pubrec(mid)
-pubrel_packet = mosq_test.gen_pubrel(mid)
-pubrel_dup_packet = mosq_test.gen_pubrel(mid, dup=True)
-pubcomp_packet = mosq_test.gen_pubcomp(mid)
+publish_packet = paho_test.gen_publish("pub/qos2/test", qos=2, mid=mid, payload="message")
+publish_dup_packet = paho_test.gen_publish("pub/qos2/test", qos=2, mid=mid, payload="message", dup=True)
+pubrec_packet = paho_test.gen_pubrec(mid)
+pubrel_packet = paho_test.gen_pubrel(mid)
+pubrel_dup_packet = paho_test.gen_pubrel(mid, dup=True)
+pubcomp_packet = paho_test.gen_pubcomp(mid)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(5)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "publish", publish_packet):
+ if paho_test.expect_packet(conn, "publish", publish_packet):
# Delay for > 3 seconds (message retry time)
- if mosq_test.expect_packet(conn, "dup publish", publish_dup_packet):
+ if paho_test.expect_packet(conn, "dup publish", publish_dup_packet):
conn.send(pubrec_packet)
- if mosq_test.expect_packet(conn, "pubrel", pubrel_packet):
- if mosq_test.expect_packet(conn, "dup pubrel", pubrel_dup_packet):
+ if paho_test.expect_packet(conn, "pubrel", pubrel_packet):
+ if paho_test.expect_packet(conn, "dup pubrel", pubrel_dup_packet):
conn.send(pubcomp_packet)
- if mosq_test.expect_packet(conn, "disconnect", disconnect_packet):
+ if paho_test.expect_packet(conn, "disconnect", disconnect_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("publish-qos0-test-np", keepalive=keepalive)
-connack_packet = mosq_test.gen_connack(rc=0)
+connect_packet = paho_test.gen_connect("publish-qos0-test-np", keepalive=keepalive)
+connack_packet = paho_test.gen_connack(rc=0)
-publish_packet = mosq_test.gen_publish("pub/qos0/no-payload/test", qos=0)
+publish_packet = paho_test.gen_publish("pub/qos0/no-payload/test", qos=0)
-disconnect_packet = mosq_test.gen_disconnect()
+disconnect_packet = paho_test.gen_disconnect()
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(10)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "publish", publish_packet):
- if mosq_test.expect_packet(conn, "disconnect", disconnect_packet):
+ if paho_test.expect_packet(conn, "publish", publish_packet):
+ if paho_test.expect_packet(conn, "disconnect", disconnect_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("publish-qos0-test", keepalive=keepalive)
-connack_packet = mosq_test.gen_connack(rc=0)
+connect_packet = paho_test.gen_connect("publish-qos0-test", keepalive=keepalive)
+connack_packet = paho_test.gen_connack(rc=0)
-publish_packet = mosq_test.gen_publish("pub/qos0/test", qos=0, payload="message")
+publish_packet = paho_test.gen_publish("pub/qos0/test", qos=0, payload="message")
-disconnect_packet = mosq_test.gen_disconnect()
+disconnect_packet = paho_test.gen_disconnect()
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(10)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "publish", publish_packet):
- if mosq_test.expect_packet(conn, "disconnect", disconnect_packet):
+ if paho_test.expect_packet(conn, "publish", publish_packet):
+ if paho_test.expect_packet(conn, "disconnect", disconnect_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
rc = 1
keepalive = 60
mid = 16
-connect_packet = mosq_test.gen_connect("retain-qos0-test", keepalive=keepalive)
-connack_packet = mosq_test.gen_connack(rc=0)
+connect_packet = paho_test.gen_connect("retain-qos0-test", keepalive=keepalive)
+connack_packet = paho_test.gen_connack(rc=0)
-publish_packet = mosq_test.gen_publish("retain/qos0/test", qos=0, payload="retained message", retain=True)
+publish_packet = paho_test.gen_publish("retain/qos0/test", qos=0, payload="retained message", retain=True)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(10)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "publish", publish_packet):
+ if paho_test.expect_packet(conn, "publish", publish_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
if sys.version < '2.7':
print("WARNING: SSL not supported on Python 2.6")
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
client.wait()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
if sys.version < '2.7':
print("WARNING: SSL not supported on Python 2.6")
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("08-ssl-connect-crt-auth", keepalive=keepalive)
-connack_packet = mosq_test.gen_connack(rc=0)
-disconnect_packet = mosq_test.gen_disconnect()
+connect_packet = paho_test.gen_connect("08-ssl-connect-crt-auth", keepalive=keepalive)
+connack_packet = paho_test.gen_connack(rc=0)
+disconnect_packet = paho_test.gen_disconnect()
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = ssock.accept()
conn.settimeout(10)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "disconnect", disconnect_packet):
+ if paho_test.expect_packet(conn, "disconnect", disconnect_packet):
rc = 0
conn.close()
if cmd_subfolder not in sys.path:
sys.path.insert(0, cmd_subfolder)
-import mosq_test
+import paho_test
if sys.version < '2.7':
print("WARNING: SSL not supported on Python 2.6")
rc = 1
keepalive = 60
-connect_packet = mosq_test.gen_connect("08-ssl-connect-no-auth", keepalive=keepalive)
-connack_packet = mosq_test.gen_connack(rc=0)
-disconnect_packet = mosq_test.gen_disconnect()
+connect_packet = paho_test.gen_connect("08-ssl-connect-no-auth", keepalive=keepalive)
+connack_packet = paho_test.gen_connack(rc=0)
+disconnect_packet = paho_test.gen_disconnect()
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = ssock.accept()
conn.settimeout(10)
- if mosq_test.expect_packet(conn, "connect", connect_packet):
+ if paho_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
- if mosq_test.expect_packet(conn, "disconnect", disconnect_packet):
+ if paho_test.expect_packet(conn, "disconnect", disconnect_packet):
rc = 0
conn.close()
client_args = sys.argv[1:]
env = dict(os.environ)
-env['LD_LIBRARY_PATH'] = '../../lib:../../lib/cpp'
try:
pp = env['PYTHONPATH']
except KeyError:
pp = ''
-env['PYTHONPATH'] = '../../lib/python:'+pp
+env['PYTHONPATH'] = '../../src:'+pp
client = subprocess.Popen(client_args, env=env)
client.wait()
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.disconnect()
+ mqttc.disconnect()
-def on_disconnect(mosq, obj, rc):
- mosq.loop()
+def on_disconnect(mqttc, obj, rc):
+ mqttc.loop()
obj = rc
run = -1
-mosq = mosquitto.Mosquitto("01-con-discon-success", run)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
+mqttc = mqtt.Client("01-con-discon-success", run)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
run = -1
-mosq = mosquitto.Mosquitto("01-keepalive-pingreq")
-mosq.on_connect = on_connect
+mqttc = mqtt.Client("01-keepalive-pingreq")
+mqttc.on_connect = on_connect
-mosq.connect("localhost", 1888, 4)
+mqttc.connect("localhost", 1888, 4)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
#!/usr/bin/python
-import mosquitto
+import paho.mqtt.client as mqtt
-mosq = mosquitto.Mosquitto("01-no-clean-session", False)
+mqttc = mqtt.Client("01-no-clean-session", False)
run = -1
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
#!/usr/bin/python
-import mosquitto
+import paho.mqtt.client as mqtt
-mosq = mosquitto.Mosquitto("01-unpwd-set")
+mqttc = mqtt.Client("01-unpwd-set")
run = -1
-mosq.username_pw_set("uname", ";'[08gn=#")
-mosq.connect("localhost", 1888)
+mqttc.username_pw_set("uname", ";'[08gn=#")
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
#!/usr/bin/python
-import mosquitto
+import paho.mqtt.client as mqtt
-mosq = mosquitto.Mosquitto("01-will-set")
+mqttc = mqtt.Client("01-will-set")
run = -1
-mosq.will_set("topic/on/unexpected/disconnect", "will message", 1, True)
-mosq.connect("localhost", 1888)
+mqttc.will_set("topic/on/unexpected/disconnect", "will message", 1, True)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
#!/usr/bin/python
-import mosquitto
+import paho.mqtt.client as mqtt
-mosq = mosquitto.Mosquitto("01-will-unpwd-set")
+mqttc = mqtt.Client("01-will-unpwd-set")
run = -1
-mosq.username_pw_set("oibvvwqw", "#'^2hg9a&nm38*us")
-mosq.will_set("will-topic", "will message", 2, False)
-mosq.connect("localhost", 1888)
+mqttc.username_pw_set("oibvvwqw", "#'^2hg9a&nm38*us")
+mqttc.will_set("will-topic", "will message", 2, False)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.subscribe("qos0/test", 0)
+ mqttc.subscribe("qos0/test", 0)
-def on_disconnect(mosq, obj, rc):
+def on_disconnect(mqttc, obj, rc):
obj = rc
-def on_subscribe(mosq, obj, mid, granted_qos):
- mosq.disconnect()
+def on_subscribe(mqttc, obj, mid, granted_qos):
+ mqttc.disconnect()
run = -1
-mosq = mosquitto.Mosquitto("subscribe-qos0-test", run)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
-mosq.on_subscribe = on_subscribe
+mqttc = mqtt.Client("subscribe-qos0-test", run)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
+mqttc.on_subscribe = on_subscribe
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.subscribe("qos1/test", 1)
+ mqttc.subscribe("qos1/test", 1)
-def on_disconnect(mosq, obj, rc):
+def on_disconnect(mqttc, obj, rc):
obj = rc
-def on_subscribe(mosq, obj, mid, granted_qos):
- mosq.disconnect()
+def on_subscribe(mqttc, obj, mid, granted_qos):
+ mqttc.disconnect()
run = -1
-mosq = mosquitto.Mosquitto("subscribe-qos1-test", run)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
-mosq.on_subscribe = on_subscribe
+mqttc = mqtt.Client("subscribe-qos1-test", run)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
+mqttc.on_subscribe = on_subscribe
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.subscribe("qos2/test", 2)
+ mqttc.subscribe("qos2/test", 2)
-def on_disconnect(mosq, obj, rc):
+def on_disconnect(mqttc, obj, rc):
obj = rc
-def on_subscribe(mosq, obj, mid, granted_qos):
- mosq.disconnect()
+def on_subscribe(mqttc, obj, mid, granted_qos):
+ mqttc.disconnect()
run = -1
-mosq = mosquitto.Mosquitto("subscribe-qos2-test", run)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
-mosq.on_subscribe = on_subscribe
+mqttc = mqtt.Client("subscribe-qos2-test", run)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
+mqttc.on_subscribe = on_subscribe
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.unsubscribe("unsubscribe/test")
+ mqttc.unsubscribe("unsubscribe/test")
-def on_disconnect(mosq, obj, rc):
+def on_disconnect(mqttc, obj, rc):
obj = rc
-def on_unsubscribe(mosq, obj, mid):
- mosq.disconnect()
+def on_unsubscribe(mqttc, obj, mid):
+ mqttc.disconnect()
run = -1
-mosq = mosquitto.Mosquitto("unsubscribe-test", run)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
-mosq.on_unsubscribe = on_unsubscribe
+mqttc = mqtt.Client("unsubscribe-test", run)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
+mqttc.on_unsubscribe = on_unsubscribe
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_message(mosq, obj, msg):
+def on_message(mqttc, obj, msg):
if msg.mid != 123:
print("Invalid mid: ("+str(msg.mid)+")")
exit(1)
exit(1)
exit(0)
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
print("Connect failed ("+str(rc)+")")
exit(rc)
-mosq = mosquitto.Mosquitto("publish-qos1-test")
-mosq.message_retry_set(3)
-mosq.on_connect = on_connect
-mosq.on_message = on_message
+mqttc = mqtt.Client("publish-qos1-test")
+mqttc.message_retry_set(3)
+mqttc.on_connect = on_connect
+mqttc.on_message = on_message
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
rc = 0
while rc == 0:
- rc = mosq.loop()
+ rc = mqttc.loop()
print("rc: "+str(rc))
exit(1)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_message(mosq, obj, msg):
+def on_message(mqttc, obj, msg):
global run
if msg.mid != 13423:
print("Invalid mid ("+str(msg.mid)+")")
run = 0
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
run = -1
-mosq = mosquitto.Mosquitto("publish-qos2-test", run)
-mosq.message_retry_set(3)
-mosq.on_connect = on_connect
-mosq.on_message = on_message
+mqttc = mqtt.Client("publish-qos2-test", run)
+mqttc.message_retry_set(3)
+mqttc.on_connect = on_connect
+mqttc.on_message = on_message
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
rc = 0
while run == -1 and rc == 0:
- rc = mosq.loop(0.3)
+ rc = mqttc.loop(0.3)
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
sent_mid = -1
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
global sent_mid
if rc != 0:
exit(rc)
else:
if sent_mid == -1:
- res = mosq.publish("pub/qos1/test", "message", 1)
+ res = mqttc.publish("pub/qos1/test", "message", 1)
sent_mid = res[1]
-def on_disconnect(mosq, obj, rc):
+def on_disconnect(mqttc, obj, rc):
if rc == 1:
- mosq.reconnect()
+ mqttc.reconnect()
else:
run = 0
-def on_publish(mosq, obj, mid):
+def on_publish(mqttc, obj, mid):
global sent_mid
if mid == sent_mid:
- mosq.disconnect()
+ mqttc.disconnect()
else:
exit(1)
run = -1
-mosq = mosquitto.Mosquitto("publish-qos1-test", run)
-mosq.message_retry_set(3)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
-mosq.on_publish = on_publish
+mqttc = mqtt.Client("publish-qos1-test", run)
+mqttc.message_retry_set(3)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
+mqttc.on_publish = on_publish
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
rc = 0
while run == -1:
- rc = mosq.loop()
+ rc = mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
sent_mid = -1
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
global sent_mid
if rc != 0:
exit(rc)
else:
- res = mosq.publish("pub/qos1/test", "message", 1)
+ res = mqttc.publish("pub/qos1/test", "message", 1)
sent_mid = res[1]
-def on_disconnect(mosq, obj, rc):
+def on_disconnect(mqttc, obj, rc):
run = 0
-def on_publish(mosq, obj, mid):
+def on_publish(mqttc, obj, mid):
global sent_mid
if mid == sent_mid:
- mosq.disconnect()
+ mqttc.disconnect()
else:
exit(1)
run = -1
-mosq = mosquitto.Mosquitto("publish-qos1-test", run)
-mosq.message_retry_set(3)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
-mosq.on_publish = on_publish
+mqttc = mqtt.Client("publish-qos1-test", run)
+mqttc.message_retry_set(3)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
+mqttc.on_publish = on_publish
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
rc = 0
while run == -1 and rc == 0:
- rc = mosq.loop()
+ rc = mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
first_connection = 1
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
global first_connection
if rc != 0:
exit(rc)
else:
if first_connection == 1:
- mosq.publish("pub/qos2/test", "message", 2)
+ mqttc.publish("pub/qos2/test", "message", 2)
first_connection = 0
-def on_disconnect(mosq, obj, rc):
+def on_disconnect(mqttc, obj, rc):
if rc == 1:
- mosq.reconnect()
+ mqttc.reconnect()
else:
run = 0
-def on_publish(mosq, obj, mid):
- mosq.disconnect()
+def on_publish(mqttc, obj, mid):
+ mqttc.disconnect()
run = -1
-mosq = mosquitto.Mosquitto("publish-qos2-test", run)
-mosq.message_retry_set(3)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
-mosq.on_publish = on_publish
+mqttc = mqtt.Client("publish-qos2-test", run)
+mqttc.message_retry_set(3)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
+mqttc.on_publish = on_publish
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
rc = 0
while run == -1:
- rc = mosq.loop()
+ rc = mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.publish("pub/qos2/test", "message", 2)
+ mqttc.publish("pub/qos2/test", "message", 2)
-def on_disconnect(mosq, obj, rc):
+def on_disconnect(mqttc, obj, rc):
run = 0
-def on_publish(mosq, obj, mid):
- mosq.disconnect()
+def on_publish(mqttc, obj, mid):
+ mqttc.disconnect()
run = -1
-mosq = mosquitto.Mosquitto("publish-qos2-test", run)
-mosq.message_retry_set(3)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
-mosq.on_publish = on_publish
+mqttc = mqtt.Client("publish-qos2-test", run)
+mqttc.message_retry_set(3)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
+mqttc.on_publish = on_publish
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
rc = 0
while run == -1 and rc == 0:
- rc = mosq.loop()
+ rc = mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
sent_mid = -1
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
global sent_mid
if rc != 0:
exit(rc)
else:
- (res, sent_mid) = mosq.publish("pub/qos0/no-payload/test")
+ (res, sent_mid) = mqttc.publish("pub/qos0/no-payload/test")
-def on_publish(mosq, obj, mid):
+def on_publish(mqttc, obj, mid):
global sent_mid, run
if sent_mid == mid:
- mosq.disconnect()
+ mqttc.disconnect()
run = 0
run = -1
-mosq = mosquitto.Mosquitto("publish-qos0-test-np", run)
-mosq.on_connect = on_connect
-mosq.on_publish = on_publish
+mqttc = mqtt.Client("publish-qos0-test-np", run)
+mqttc.on_connect = on_connect
+mqttc.on_publish = on_publish
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
sent_mid = -1
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
global sent_mid
if rc != 0:
exit(rc)
else:
- res = mosq.publish("pub/qos0/test", "message")
+ res = mqttc.publish("pub/qos0/test", "message")
sent_mid = res[1]
-def on_publish(mosq, obj, mid):
+def on_publish(mqttc, obj, mid):
global sent_mid, run
if sent_mid == mid:
- mosq.disconnect()
+ mqttc.disconnect()
run = -1
-mosq = mosquitto.Mosquitto("publish-qos0-test", run)
-mosq.on_connect = on_connect
-mosq.on_publish = on_publish
+mqttc = mqtt.Client("publish-qos0-test", run)
+mqttc.on_connect = on_connect
+mqttc.on_publish = on_publish
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.publish("retain/qos0/test", "retained message", 0, True)
+ mqttc.publish("retain/qos0/test", "retained message", 0, True)
run = -1
-mosq = mosquitto.Mosquitto("retain-qos0-test", run)
-mosq.on_connect = on_connect
+mqttc = mqtt.Client("retain-qos0-test", run)
+mqttc.on_connect = on_connect
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
if sys.version < '2.7':
print("WARNING: SSL/TLS not supported on Python 2.6")
exit(0)
rc = 1
-mosq = mosquitto.Mosquitto("08-ssl-bad-cacert")
+mqttc = mqtt.Client("08-ssl-bad-cacert")
try:
- mosq.tls_set("this/file/doesnt/exist")
+ mqttc.tls_set("this/file/doesnt/exist")
except IOError as err:
rc = 0
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
if sys.version < '2.7':
print("WARNING: SSL/TLS not supported on Python 2.6")
exit(0)
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.disconnect()
+ mqttc.disconnect()
-def on_disconnect(mosq, obj, rc):
- mosq.loop()
+def on_disconnect(mqttc, obj, rc):
+ mqttc.loop()
obj = rc
run = -1
-mosq = mosquitto.Mosquitto("08-ssl-connect-crt-auth", run)
-mosq.tls_set("../ssl/test-ca.crt", "../ssl/client.crt", "../ssl/client.key")
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
+mqttc = mqtt.Client("08-ssl-connect-crt-auth", run)
+mqttc.tls_set("../ssl/test-ca.crt", "../ssl/client.crt", "../ssl/client.key")
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
if sys.version < '2.7':
print("WARNING: SSL/TLS not supported on Python 2.6")
exit(0)
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.disconnect()
+ mqttc.disconnect()
-def on_disconnect(mosq, obj, rc):
- mosq.loop()
+def on_disconnect(mqttc, obj, rc):
+ mqttc.loop()
obj = rc
run = -1
-mosq = mosquitto.Mosquitto("08-ssl-connect-no-auth", run)
-mosq.tls_set("../ssl/test-ca.crt")
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
+mqttc = mqtt.Client("08-ssl-connect-no-auth", run)
+mqttc.tls_set("../ssl/test-ca.crt")
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
#!/usr/bin/python
-# Copyright (c) 2012 Roger Light <roger@atchoo.org>
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are met:
-#
-# 1. Redistributions of source code must retain the above copyright notice,
-# this list of conditions and the following disclaimer.
-# 2. Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in the
-# documentation and/or other materials provided with the distribution.
-# 3. Neither the name of mosquitto nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-# POSSIBILITY OF SUCH DAMAGE.
-
-import mosquitto
+import paho.mqtt.client as mqtt
import sys
-if mosquitto.topic_matches_sub("foo/bar", "foo/bar") == False:
+if mqtt.topic_matches_sub("foo/bar", "foo/bar") == False:
print("ERROR: foo/bar : foo/bar")
sys.exit(1)
-if mosquitto.topic_matches_sub("foo/+", "foo/bar") == False:
+if mqtt.topic_matches_sub("foo/+", "foo/bar") == False:
print("ERROR: foo/+ : foo/bar")
sys.exit(1)
-if mosquitto.topic_matches_sub("foo/+/baz", "foo/bar/baz") == False:
+if mqtt.topic_matches_sub("foo/+/baz", "foo/bar/baz") == False:
print("ERROR: foo/+/baz : foo/bar/baz")
sys.exit(1)
-if mosquitto.topic_matches_sub("foo/+/#", "foo/bar/baz") == False:
+if mqtt.topic_matches_sub("foo/+/#", "foo/bar/baz") == False:
print("ERROR: foo/+/# : foo/bar/baz")
sys.exit(1)
-if mosquitto.topic_matches_sub("#", "foo/bar/baz") == False:
+if mqtt.topic_matches_sub("#", "foo/bar/baz") == False:
print("ERROR: # : foo/bar/baz")
sys.exit(1)
-if mosquitto.topic_matches_sub("foo/bar", "foo") == True:
+if mqtt.topic_matches_sub("foo/bar", "foo") == True:
print("ERROR: foo/bar : foo")
sys.exit(1)
-if mosquitto.topic_matches_sub("foo/+", "foo/bar/baz") == True:
+if mqtt.topic_matches_sub("foo/+", "foo/bar/baz") == True:
print("ERROR: foo/+ : foo/bar/baz")
sys.exit(1)
-if mosquitto.topic_matches_sub("foo/+/baz", "foo/bar/bar") == True:
+if mqtt.topic_matches_sub("foo/+/baz", "foo/bar/bar") == True:
print("ERROR: foo/+/baz : foo/bar/bar")
sys.exit(1)
-if mosquitto.topic_matches_sub("foo/+/#", "fo2/bar/baz") == True:
+if mqtt.topic_matches_sub("foo/+/#", "fo2/bar/baz") == True:
print("ERROR: foo/+/# : foo/bar/baz")
sys.exit(1)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.disconnect()
+ mqttc.disconnect()
-def on_disconnect(mosq, obj, rc):
- mosq.loop()
+def on_disconnect(mqttc, obj, rc):
+ mqttc.loop()
obj = rc
run = -1
-mosq = mosquitto.Mosquitto("01-con-discon-success", run)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
+mqttc = mqtt.Client("01-con-discon-success", run)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
run = -1
-mosq = mosquitto.Mosquitto("01-keepalive-pingreq")
-mosq.on_connect = on_connect
+mqttc = mqtt.Client("01-keepalive-pingreq")
+mqttc.on_connect = on_connect
-mosq.connect("localhost", 1888, 4)
+mqttc.connect("localhost", 1888, 4)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
#!/usr/bin/python3
-import mosquitto
+import paho.mqtt.client as mqtt
-mosq = mosquitto.Mosquitto("01-no-clean-session", False)
+mqttc = mqtt.Client("01-no-clean-session", False)
run = -1
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
#!/usr/bin/python3
-import mosquitto
+import paho.mqtt.client as mqtt
-mosq = mosquitto.Mosquitto("01-unpwd-set")
+mqttc = mqtt.Client("01-unpwd-set")
run = -1
-mosq.username_pw_set("uname", ";'[08gn=#")
-mosq.connect("localhost", 1888)
+mqttc.username_pw_set("uname", ";'[08gn=#")
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
#!/usr/bin/python3
-import mosquitto
+import paho.mqtt.client as mqtt
-mosq = mosquitto.Mosquitto("01-will-set")
+mqttc = mqtt.Client("01-will-set")
run = -1
-mosq.will_set("topic/on/unexpected/disconnect", "will message", 1, True)
-mosq.connect("localhost", 1888)
+mqttc.will_set("topic/on/unexpected/disconnect", "will message", 1, True)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
#!/usr/bin/python3
-import mosquitto
+import paho.mqtt.client as mqtt
-mosq = mosquitto.Mosquitto("01-will-unpwd-set")
+mqttc = mqtt.Client("01-will-unpwd-set")
run = -1
-mosq.username_pw_set("oibvvwqw", "#'^2hg9a&nm38*us")
-mosq.will_set("will-topic", "will message", 2, False)
-mosq.connect("localhost", 1888)
+mqttc.username_pw_set("oibvvwqw", "#'^2hg9a&nm38*us")
+mqttc.will_set("will-topic", "will message", 2, False)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.subscribe("qos0/test", 0)
+ mqttc.subscribe("qos0/test", 0)
-def on_disconnect(mosq, obj, rc):
+def on_disconnect(mqttc, obj, rc):
obj = rc
-def on_subscribe(mosq, obj, mid, granted_qos):
- mosq.disconnect()
+def on_subscribe(mqttc, obj, mid, granted_qos):
+ mqttc.disconnect()
run = -1
-mosq = mosquitto.Mosquitto("subscribe-qos0-test", run)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
-mosq.on_subscribe = on_subscribe
+mqttc = mqtt.Client("subscribe-qos0-test", run)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
+mqttc.on_subscribe = on_subscribe
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.subscribe("qos1/test", 1)
+ mqttc.subscribe("qos1/test", 1)
-def on_disconnect(mosq, obj, rc):
+def on_disconnect(mqttc, obj, rc):
obj = rc
-def on_subscribe(mosq, obj, mid, granted_qos):
- mosq.disconnect()
+def on_subscribe(mqttc, obj, mid, granted_qos):
+ mqttc.disconnect()
run = -1
-mosq = mosquitto.Mosquitto("subscribe-qos1-test", run)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
-mosq.on_subscribe = on_subscribe
+mqttc = mqtt.Client("subscribe-qos1-test", run)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
+mqttc.on_subscribe = on_subscribe
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.subscribe("qos2/test", 2)
+ mqttc.subscribe("qos2/test", 2)
-def on_disconnect(mosq, obj, rc):
+def on_disconnect(mqttc, obj, rc):
obj = rc
-def on_subscribe(mosq, obj, mid, granted_qos):
- mosq.disconnect()
+def on_subscribe(mqttc, obj, mid, granted_qos):
+ mqttc.disconnect()
run = -1
-mosq = mosquitto.Mosquitto("subscribe-qos2-test", run)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
-mosq.on_subscribe = on_subscribe
+mqttc = mqtt.Client("subscribe-qos2-test", run)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
+mqttc.on_subscribe = on_subscribe
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.unsubscribe("unsubscribe/test")
+ mqttc.unsubscribe("unsubscribe/test")
-def on_disconnect(mosq, obj, rc):
+def on_disconnect(mqttc, obj, rc):
obj = rc
-def on_unsubscribe(mosq, obj, mid):
- mosq.disconnect()
+def on_unsubscribe(mqttc, obj, mid):
+ mqttc.disconnect()
run = -1
-mosq = mosquitto.Mosquitto("unsubscribe-test", run)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
-mosq.on_unsubscribe = on_unsubscribe
+mqttc = mqtt.Client("unsubscribe-test", run)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
+mqttc.on_unsubscribe = on_unsubscribe
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_message(mosq, obj, msg):
+def on_message(mqttc, obj, msg):
if msg.mid != 123:
print("Invalid mid: ("+str(msg.mid)+")")
exit(1)
exit(1)
exit(0)
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
print("Connect failed ("+str(rc)+")")
exit(rc)
-mosq = mosquitto.Mosquitto("publish-qos1-test")
-mosq.message_retry_set(3)
-mosq.on_connect = on_connect
-mosq.on_message = on_message
+mqttc = mqtt.Client("publish-qos1-test")
+mqttc.message_retry_set(3)
+mqttc.on_connect = on_connect
+mqttc.on_message = on_message
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
rc = 0
while rc == 0:
- rc = mosq.loop()
+ rc = mqttc.loop()
print("rc: "+str(rc))
exit(1)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_message(mosq, obj, msg):
+def on_message(mqttc, obj, msg):
global run
if msg.mid != 13423:
print("Invalid mid ("+str(msg.mid)+")")
run = 0
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
run = -1
-mosq = mosquitto.Mosquitto("publish-qos2-test", run)
-mosq.message_retry_set(3)
-mosq.on_connect = on_connect
-mosq.on_message = on_message
+mqttc = mqtt.Client("publish-qos2-test", run)
+mqttc.message_retry_set(3)
+mqttc.on_connect = on_connect
+mqttc.on_message = on_message
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
rc = 0
while run == -1 and rc == 0:
- rc = mosq.loop(0.3)
+ rc = mqttc.loop(0.3)
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
sent_mid = -1
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
global sent_mid
if rc != 0:
exit(rc)
else:
if sent_mid == -1:
- res = mosq.publish("pub/qos1/test", "message", 1)
+ res = mqttc.publish("pub/qos1/test", "message", 1)
sent_mid = res[1]
-def on_disconnect(mosq, obj, rc):
+def on_disconnect(mqttc, obj, rc):
if rc == 1:
- mosq.reconnect()
+ mqttc.reconnect()
else:
run = 0
-def on_publish(mosq, obj, mid):
+def on_publish(mqttc, obj, mid):
global sent_mid
if mid == sent_mid:
- mosq.disconnect()
+ mqttc.disconnect()
else:
exit(1)
run = -1
-mosq = mosquitto.Mosquitto("publish-qos1-test", run)
-mosq.message_retry_set(3)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
-mosq.on_publish = on_publish
+mqttc = mqtt.Client("publish-qos1-test", run)
+mqttc.message_retry_set(3)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
+mqttc.on_publish = on_publish
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
rc = 0
while run == -1:
- rc = mosq.loop()
+ rc = mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
sent_mid = -1
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
global sent_mid
if rc != 0:
exit(rc)
else:
- res = mosq.publish("pub/qos1/test", "message", 1)
+ res = mqttc.publish("pub/qos1/test", "message", 1)
sent_mid = res[1]
-def on_disconnect(mosq, obj, rc):
+def on_disconnect(mqttc, obj, rc):
run = 0
-def on_publish(mosq, obj, mid):
+def on_publish(mqttc, obj, mid):
global sent_mid
if mid == sent_mid:
- mosq.disconnect()
+ mqttc.disconnect()
else:
exit(1)
run = -1
-mosq = mosquitto.Mosquitto("publish-qos1-test", run)
-mosq.message_retry_set(3)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
-mosq.on_publish = on_publish
+mqttc = mqtt.Client("publish-qos1-test", run)
+mqttc.message_retry_set(3)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
+mqttc.on_publish = on_publish
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
rc = 0
while run == -1 and rc == 0:
- rc = mosq.loop()
+ rc = mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
first_connection = 1
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
global first_connection
if rc != 0:
exit(rc)
else:
if first_connection == 1:
- mosq.publish("pub/qos2/test", "message", 2)
+ mqttc.publish("pub/qos2/test", "message", 2)
first_connection = 0
-def on_disconnect(mosq, obj, rc):
+def on_disconnect(mqttc, obj, rc):
if rc == 1:
- mosq.reconnect()
+ mqttc.reconnect()
else:
run = 0
-def on_publish(mosq, obj, mid):
- mosq.disconnect()
+def on_publish(mqttc, obj, mid):
+ mqttc.disconnect()
run = -1
-mosq = mosquitto.Mosquitto("publish-qos2-test", run)
-mosq.message_retry_set(3)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
-mosq.on_publish = on_publish
+mqttc = mqtt.Client("publish-qos2-test", run)
+mqttc.message_retry_set(3)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
+mqttc.on_publish = on_publish
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
rc = 0
while run == -1:
- rc = mosq.loop()
+ rc = mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.publish("pub/qos2/test", "message", 2)
+ mqttc.publish("pub/qos2/test", "message", 2)
-def on_disconnect(mosq, obj, rc):
+def on_disconnect(mqttc, obj, rc):
run = 0
-def on_publish(mosq, obj, mid):
- mosq.disconnect()
+def on_publish(mqttc, obj, mid):
+ mqttc.disconnect()
run = -1
-mosq = mosquitto.Mosquitto("publish-qos2-test", run)
-mosq.message_retry_set(3)
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
-mosq.on_publish = on_publish
+mqttc = mqtt.Client("publish-qos2-test", run)
+mqttc.message_retry_set(3)
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
+mqttc.on_publish = on_publish
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
rc = 0
while run == -1 and rc == 0:
- rc = mosq.loop()
+ rc = mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
sent_mid = -1
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
global sent_mid
if rc != 0:
exit(rc)
else:
- (res, sent_mid) = mosq.publish("pub/qos0/no-payload/test")
+ (res, sent_mid) = mqttc.publish("pub/qos0/no-payload/test")
-def on_publish(mosq, obj, mid):
+def on_publish(mqttc, obj, mid):
global sent_mid, run
if sent_mid == mid:
- mosq.disconnect()
+ mqttc.disconnect()
run = 0
run = -1
-mosq = mosquitto.Mosquitto("publish-qos0-test-np", run)
-mosq.on_connect = on_connect
-mosq.on_publish = on_publish
+mqttc = mqtt.Client("publish-qos0-test-np", run)
+mqttc.on_connect = on_connect
+mqttc.on_publish = on_publish
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
sent_mid = -1
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
global sent_mid
if rc != 0:
exit(rc)
else:
- res = mosq.publish("pub/qos0/test", "message")
+ res = mqttc.publish("pub/qos0/test", "message")
sent_mid = res[1]
-def on_publish(mosq, obj, mid):
+def on_publish(mqttc, obj, mid):
global sent_mid, run
if sent_mid == mid:
- mosq.disconnect()
+ mqttc.disconnect()
run = -1
-mosq = mosquitto.Mosquitto("publish-qos0-test", run)
-mosq.on_connect = on_connect
-mosq.on_publish = on_publish
+mqttc = mqtt.Client("publish-qos0-test", run)
+mqttc.on_connect = on_connect
+mqttc.on_publish = on_publish
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.publish("retain/qos0/test", "retained message", 0, True)
+ mqttc.publish("retain/qos0/test", "retained message", 0, True)
run = -1
-mosq = mosquitto.Mosquitto("retain-qos0-test", run)
-mosq.on_connect = on_connect
+mqttc = mqtt.Client("retain-qos0-test", run)
+mqttc.on_connect = on_connect
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
if sys.version < '2.7':
print("WARNING: SSL/TLS not supported on Python 2.6")
exit(0)
rc = 1
-mosq = mosquitto.Mosquitto("08-ssl-bad-cacert")
+mqttc = mqtt.Client("08-ssl-bad-cacert")
try:
- mosq.tls_set("this/file/doesnt/exist")
+ mqttc.tls_set("this/file/doesnt/exist")
except IOError as err:
rc = 0
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.disconnect()
+ mqttc.disconnect()
-def on_disconnect(mosq, obj, rc):
- mosq.loop()
+def on_disconnect(mqttc, obj, rc):
+ mqttc.loop()
obj = rc
run = -1
-mosq = mosquitto.Mosquitto("08-ssl-connect-crt-auth", run)
-mosq.tls_set("../ssl/test-ca.crt", "../ssl/client.crt", "../ssl/client.key")
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
+mqttc = mqtt.Client("08-ssl-connect-crt-auth", run)
+mqttc.tls_set("../ssl/test-ca.crt", "../ssl/client.crt", "../ssl/client.key")
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
import time
from struct import *
-import mosquitto
+import paho.mqtt.client as mqtt
-def on_connect(mosq, obj, rc):
+def on_connect(mqttc, obj, rc):
if rc != 0:
exit(rc)
else:
- mosq.disconnect()
+ mqttc.disconnect()
-def on_disconnect(mosq, obj, rc):
- mosq.loop()
+def on_disconnect(mqttc, obj, rc):
+ mqttc.loop()
obj = rc
run = -1
-mosq = mosquitto.Mosquitto("08-ssl-connect-no-auth", run)
-mosq.tls_set("../ssl/test-ca.crt")
-mosq.on_connect = on_connect
-mosq.on_disconnect = on_disconnect
+mqttc = mqtt.Client("08-ssl-connect-no-auth", run)
+mqttc.tls_set("../ssl/test-ca.crt")
+mqttc.on_connect = on_connect
+mqttc.on_disconnect = on_disconnect
-mosq.connect("localhost", 1888)
+mqttc.connect("localhost", 1888)
while run == -1:
- mosq.loop()
+ mqttc.loop()
exit(run)
#!/usr/bin/python
-# Copyright (c) 2012 Roger Light <roger@atchoo.org>
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are met:
-#
-# 1. Redistributions of source code must retain the above copyright notice,
-# this list of conditions and the following disclaimer.
-# 2. Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in the
-# documentation and/or other materials provided with the distribution.
-# 3. Neither the name of mosquitto nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-# POSSIBILITY OF SUCH DAMAGE.
-
-import mosquitto
+import paho.mqtt.client as mqtt
import sys
-if mosquitto.topic_matches_sub("foo/bar", "foo/bar") == False:
+if mqtt.topic_matches_sub("foo/bar", "foo/bar") == False:
print("ERROR: foo/bar : foo/bar")
sys.exit(1)
-if mosquitto.topic_matches_sub("foo/+", "foo/bar") == False:
+if mqtt.topic_matches_sub("foo/+", "foo/bar") == False:
print("ERROR: foo/+ : foo/bar")
sys.exit(1)
-if mosquitto.topic_matches_sub("foo/+/baz", "foo/bar/baz") == False:
+if mqtt.topic_matches_sub("foo/+/baz", "foo/bar/baz") == False:
print("ERROR: foo/+/baz : foo/bar/baz")
sys.exit(1)
-if mosquitto.topic_matches_sub("foo/+/#", "foo/bar/baz") == False:
+if mqtt.topic_matches_sub("foo/+/#", "foo/bar/baz") == False:
print("ERROR: foo/+/# : foo/bar/baz")
sys.exit(1)
-if mosquitto.topic_matches_sub("#", "foo/bar/baz") == False:
+if mqtt.topic_matches_sub("#", "foo/bar/baz") == False:
print("ERROR: # : foo/bar/baz")
sys.exit(1)
-if mosquitto.topic_matches_sub("foo/bar", "foo") == True:
+if mqtt.topic_matches_sub("foo/bar", "foo") == True:
print("ERROR: foo/bar : foo")
sys.exit(1)
-if mosquitto.topic_matches_sub("foo/+", "foo/bar/baz") == True:
+if mqtt.topic_matches_sub("foo/+", "foo/bar/baz") == True:
print("ERROR: foo/+ : foo/bar/baz")
sys.exit(1)
-if mosquitto.topic_matches_sub("foo/+/baz", "foo/bar/bar") == True:
+if mqtt.topic_matches_sub("foo/+/baz", "foo/bar/bar") == True:
print("ERROR: foo/+/baz : foo/bar/bar")
sys.exit(1)
-if mosquitto.topic_matches_sub("foo/+/#", "fo2/bar/baz") == True:
+if mqtt.topic_matches_sub("foo/+/#", "fo2/bar/baz") == True:
print("ERROR: foo/+/# : foo/bar/baz")
sys.exit(1)
+++ /dev/null
-import struct
-
-def expect_packet(sock, name, expected):
- if len(expected) > 0:
- rlen = len(expected)
- else:
- rlen = 1
-
- packet_recvd = sock.recv(rlen)
- return packet_matches(name, packet_recvd, expected)
-
-def packet_matches(name, recvd, expected):
- if recvd != expected:
- print("FAIL: Received incorrect "+name+".")
- try:
- print("Received: "+to_string(recvd))
- except struct.error:
- print("Received (not decoded): "+recvd)
- try:
- print("Expected: "+to_string(expected))
- except struct.error:
- print("Expected (not decoded): "+expected)
-
- return 0
- else:
- return 1
-
-def remaining_length(packet):
- l = min(5, len(packet))
- all_bytes = struct.unpack("!"+"B"*l, packet[:l])
- mult = 1
- rl = 0
- for i in range(1,l-1):
- byte = all_bytes[i]
-
- rl += (byte & 127) * mult
- mult *= 128
- if byte & 128 == 0:
- packet = packet[i+1:]
- break
-
- return (packet, rl)
-
-
-def to_string(packet):
- if len(packet) == 0:
- return ""
-
- packet0 = struct.unpack("!B", packet[0])
- packet0 = packet0[0]
- cmd = packet0 & 0xF0
- if cmd == 0x00:
- # Reserved
- return "0x00"
- elif cmd == 0x10:
- # CONNECT
- (packet, rl) = remaining_length(packet)
- pack_format = "!H" + str(len(packet)-2) + 's'
- (slen, packet) = struct.unpack(pack_format, packet)
- pack_format = "!" + str(slen)+'sBBH' + str(len(packet)-slen-4) + 's'
- (protocol, proto_ver, flags, keepalive, packet) = struct.unpack(pack_format, packet)
- s = "CONNECT, proto="+protocol+str(proto_ver)+", keepalive="+str(keepalive)
- if flags&2:
- s = s+", clean-session"
- else:
- s = s+", durable"
-
- pack_format = "!H" + str(len(packet)-2) + 's'
- (slen, packet) = struct.unpack(pack_format, packet)
- pack_format = "!" + str(slen)+'s' + str(len(packet)-slen) + 's'
- (client_id, packet) = struct.unpack(pack_format, packet)
- s = s+", id="+client_id
-
- if flags&4:
- pack_format = "!H" + str(len(packet)-2) + 's'
- (slen, packet) = struct.unpack(pack_format, packet)
- pack_format = "!" + str(slen)+'s' + str(len(packet)-slen) + 's'
- (will_topic, packet) = struct.unpack(pack_format, packet)
- s = s+", will-topic="+will_topic
-
- pack_format = "!H" + str(len(packet)-2) + 's'
- (slen, packet) = struct.unpack(pack_format, packet)
- pack_format = "!" + str(slen)+'s' + str(len(packet)-slen) + 's'
- (will_message, packet) = struct.unpack(pack_format, packet)
- s = s+", will-message="+will_message
-
- s = s+", will-qos="+str((flags&24)>>3)
- s = s+", will-retain="+str((flags&32)>>5)
-
- if flags&128:
- pack_format = "!H" + str(len(packet)-2) + 's'
- (slen, packet) = struct.unpack(pack_format, packet)
- pack_format = "!" + str(slen)+'s' + str(len(packet)-slen) + 's'
- (username, packet) = struct.unpack(pack_format, packet)
- s = s+", username="+username
-
- if flags&64:
- pack_format = "!H" + str(len(packet)-2) + 's'
- (slen, packet) = struct.unpack(pack_format, packet)
- pack_format = "!" + str(slen)+'s' + str(len(packet)-slen) + 's'
- (password, packet) = struct.unpack(pack_format, packet)
- s = s+", password="+password
-
- return s
- elif cmd == 0x20:
- # CONNACK
- (cmd, rl, resv, rc) = struct.unpack('!BBBB', packet)
- return "CONNACK, rl="+str(rl)+", res="+str(resv)+", rc="+str(rc)
- elif cmd == 0x30:
- # PUBLISH
- dup = (packet0 & 0x08)>>3
- qos = (packet0 & 0x06)>>1
- retain = (packet0 & 0x01)
- (packet, rl) = remaining_length(packet)
- pack_format = "!H" + str(len(packet)-2) + 's'
- (tlen, packet) = struct.unpack(pack_format, packet)
- pack_format = "!" + str(tlen)+'s' + str(len(packet)-tlen) + 's'
- (topic, packet) = struct.unpack(pack_format, packet)
- s = "PUBLISH, rl="+str(rl)+", topic="+topic+", qos="+str(qos)+", retain="+str(retain)+", dup="+str(dup)
- if qos > 0:
- pack_format = "!H" + str(len(packet)-2) + 's'
- (mid, packet) = struct.unpack(pack_format, packet)
- s = s + ", mid="+str(mid)
-
- s = s + ", payload="+packet
- return s
- elif cmd == 0x40:
- # PUBACK
- (cmd, rl, mid) = struct.unpack('!BBH', packet)
- return "PUBACK, rl="+str(rl)+", mid="+str(mid)
- elif cmd == 0x50:
- # PUBREC
- (cmd, rl, mid) = struct.unpack('!BBH', packet)
- return "PUBREC, rl="+str(rl)+", mid="+str(mid)
- elif cmd == 0x60:
- # PUBREL
- dup = (packet0 & 0x08)>>3
- (cmd, rl, mid) = struct.unpack('!BBH', packet)
- return "PUBREL, rl="+str(rl)+", mid="+str(mid)+", dup="+str(dup)
- elif cmd == 0x70:
- # PUBCOMP
- (cmd, rl, mid) = struct.unpack('!BBH', packet)
- return "PUBCOMP, rl="+str(rl)+", mid="+str(mid)
- elif cmd == 0x80:
- # SUBSCRIBE
- (packet, rl) = remaining_length(packet)
- pack_format = "!H" + str(len(packet)-2) + 's'
- (mid, packet) = struct.unpack(pack_format, packet)
- s = "SUBSCRIBE, rl="+str(rl)+", mid="+str(mid)
- topic_index = 0
- while len(packet) > 0:
- pack_format = "!H" + str(len(packet)-2) + 's'
- (tlen, packet) = struct.unpack(pack_format, packet)
- pack_format = "!" + str(tlen)+'sB' + str(len(packet)-tlen-1) + 's'
- (topic, qos, packet) = struct.unpack(pack_format, packet)
- s = s + ", topic"+str(topic_index)+"="+topic+","+str(qos)
- return s
- elif cmd == 0x90:
- # SUBACK
- (packet, rl) = remaining_length(packet)
- pack_format = "!H" + str(len(packet)-2) + 's'
- (mid, packet) = struct.unpack(pack_format, packet)
- pack_format = "!" + "B"*len(packet)
- granted_qos = struct.unpack(pack_format, packet)
-
- s = "SUBACK, rl="+str(rl)+", mid="+str(mid)+", granted_qos="+str(granted_qos[0])
- for i in range(1, len(granted_qos)-1):
- s = s+", "+str(granted_qos[i])
- return s
- elif cmd == 0xA0:
- # UNSUBSCRIBE
- (packet, rl) = remaining_length(packet)
- pack_format = "!H" + str(len(packet)-2) + 's'
- (mid, packet) = struct.unpack(pack_format, packet)
- s = "UNSUBSCRIBE, rl="+str(rl)+", mid="+str(mid)
- topic_index = 0
- while len(packet) > 0:
- pack_format = "!H" + str(len(packet)-2) + 's'
- (tlen, packet) = struct.unpack(pack_format, packet)
- pack_format = "!" + str(tlen)+'s' + str(len(packet)-tlen) + 's'
- (topic, packet) = struct.unpack(pack_format, packet)
- s = s + ", topic"+str(topic_index)+"="+topic
- return s
- elif cmd == 0xB0:
- # UNSUBACK
- (cmd, rl, mid) = struct.unpack('!BBH', packet)
- return "UNSUBACK, rl="+str(rl)+", mid="+str(mid)
- elif cmd == 0xC0:
- # PINGREQ
- (cmd, rl) = struct.unpack('!BB', packet)
- return "PINGREQ, rl="+str(rl)
- elif cmd == 0xD0:
- # PINGRESP
- (cmd, rl) = struct.unpack('!BB', packet)
- return "PINGRESP, rl="+str(rl)
- elif cmd == 0xE0:
- # DISCONNECT
- (cmd, rl) = struct.unpack('!BB', packet)
- return "DISCONNECT, rl="+str(rl)
- elif cmd == 0xF0:
- # Reserved
- return "0xF0"
-
-def gen_connect(client_id, clean_session=True, keepalive=60, username=None, password=None, will_topic=None, will_qos=0, will_retain=False, will_payload="", proto_ver=3):
- if client_id == None:
- remaining_length = 12
- else:
- remaining_length = 12 + 2+len(client_id)
- connect_flags = 0
- if clean_session:
- connect_flags = connect_flags | 0x02
-
- if will_topic != None:
- remaining_length = remaining_length + 2+len(will_topic) + 2+len(will_payload)
- connect_flags = connect_flags | 0x04 | ((will_qos&0x03) << 3)
- if will_retain:
- connect_flags = connect_flags | 32
-
- if username != None:
- remaining_length = remaining_length + 2+len(username)
- connect_flags = connect_flags | 0x80
- if password != None:
- connect_flags = connect_flags | 0x40
- remaining_length = remaining_length + 2+len(password)
-
- rl = pack_remaining_length(remaining_length)
- packet = struct.pack("!B"+str(len(rl))+"s", 0x10, rl)
- packet = packet + struct.pack("!H6sBBH", len("MQIsdp"), "MQIsdp", proto_ver, connect_flags, keepalive)
- if client_id != None:
- packet = packet + struct.pack("!H"+str(len(client_id))+"s", len(client_id), client_id)
-
- if will_topic != None:
- packet = packet + struct.pack("!H"+str(len(will_topic))+"s", len(will_topic), will_topic)
- if len(will_payload) > 0:
- packet = packet + struct.pack("!H"+str(len(will_payload))+"s", len(will_payload), will_payload)
- else:
- packet = packet + struct.pack("!H", 0)
-
- if username != None:
- packet = packet + struct.pack("!H"+str(len(username))+"s", len(username), username)
- if password != None:
- packet = packet + struct.pack("!H"+str(len(password))+"s", len(password), password)
- return packet
-
-def gen_connack(resv=0, rc=0):
- return struct.pack('!BBBB', 32, 2, resv, rc);
-
-def gen_publish(topic, qos, payload=None, retain=False, dup=False, mid=0):
- rl = 2+len(topic)
- pack_format = "!BBH"+str(len(topic))+"s"
- if qos > 0:
- rl = rl + 2
- pack_format = pack_format + "H"
- if payload != None:
- rl = rl + len(payload)
- pack_format = pack_format + str(len(payload))+"s"
- else:
- payload = ""
- pack_format = pack_format + "0s"
-
- cmd = 48 | (qos<<1)
- if retain:
- cmd = cmd + 1
- if dup:
- cmd = cmd + 8
-
- if qos > 0:
- return struct.pack(pack_format, cmd, rl, len(topic), topic, mid, payload)
- else:
- return struct.pack(pack_format, cmd, rl, len(topic), topic, payload)
-
-def gen_puback(mid):
- return struct.pack('!BBH', 64, 2, mid)
-
-def gen_pubrec(mid):
- return struct.pack('!BBH', 80, 2, mid)
-
-def gen_pubrel(mid, dup=False):
- if dup:
- cmd = 96+8+2
- else:
- cmd = 96+2
- return struct.pack('!BBH', cmd, 2, mid)
-
-def gen_pubcomp(mid):
- return struct.pack('!BBH', 112, 2, mid)
-
-def gen_subscribe(mid, topic, qos):
- pack_format = "!BBHH"+str(len(topic))+"sB"
- return struct.pack(pack_format, 130, 2+2+len(topic)+1, mid, len(topic), topic, qos)
-
-def gen_suback(mid, qos):
- return struct.pack('!BBHB', 144, 2+1, mid, qos)
-
-def gen_unsubscribe(mid, topic):
- pack_format = "!BBHH"+str(len(topic))+"s"
- return struct.pack(pack_format, 162, 2+2+len(topic), mid, len(topic), topic)
-
-def gen_unsuback(mid):
- return struct.pack('!BBH', 176, 2, mid)
-
-def gen_pingreq():
- return struct.pack('!BB', 192, 0)
-
-def gen_pingresp():
- return struct.pack('!BB', 208, 0)
-
-def gen_disconnect():
- return struct.pack('!BB', 224, 0)
-
-def pack_remaining_length(remaining_length):
- s = ""
- while True:
- byte = remaining_length % 128
- remaining_length = remaining_length // 128
- # If there are more digits to encode, set the top bit of this digit
- if remaining_length > 0:
- byte = byte | 0x80
-
- s = s + struct.pack("!B", byte)
- if remaining_length == 0:
- return s
--- /dev/null
+import struct
+
+def expect_packet(sock, name, expected):
+ if len(expected) > 0:
+ rlen = len(expected)
+ else:
+ rlen = 1
+
+ packet_recvd = sock.recv(rlen)
+ return packet_matches(name, packet_recvd, expected)
+
+def packet_matches(name, recvd, expected):
+ if recvd != expected:
+ print("FAIL: Received incorrect "+name+".")
+ try:
+ print("Received: "+to_string(recvd))
+ except struct.error:
+ print("Received (not decoded): "+recvd)
+ try:
+ print("Expected: "+to_string(expected))
+ except struct.error:
+ print("Expected (not decoded): "+expected)
+
+ return 0
+ else:
+ return 1
+
+def remaining_length(packet):
+ l = min(5, len(packet))
+ all_bytes = struct.unpack("!"+"B"*l, packet[:l])
+ mult = 1
+ rl = 0
+ for i in range(1,l-1):
+ byte = all_bytes[i]
+
+ rl += (byte & 127) * mult
+ mult *= 128
+ if byte & 128 == 0:
+ packet = packet[i+1:]
+ break
+
+ return (packet, rl)
+
+
+def to_string(packet):
+ if len(packet) == 0:
+ return ""
+
+ packet0 = struct.unpack("!B", packet[0])
+ packet0 = packet0[0]
+ cmd = packet0 & 0xF0
+ if cmd == 0x00:
+ # Reserved
+ return "0x00"
+ elif cmd == 0x10:
+ # CONNECT
+ (packet, rl) = remaining_length(packet)
+ pack_format = "!H" + str(len(packet)-2) + 's'
+ (slen, packet) = struct.unpack(pack_format, packet)
+ pack_format = "!" + str(slen)+'sBBH' + str(len(packet)-slen-4) + 's'
+ (protocol, proto_ver, flags, keepalive, packet) = struct.unpack(pack_format, packet)
+ s = "CONNECT, proto="+protocol+str(proto_ver)+", keepalive="+str(keepalive)
+ if flags&2:
+ s = s+", clean-session"
+ else:
+ s = s+", durable"
+
+ pack_format = "!H" + str(len(packet)-2) + 's'
+ (slen, packet) = struct.unpack(pack_format, packet)
+ pack_format = "!" + str(slen)+'s' + str(len(packet)-slen) + 's'
+ (client_id, packet) = struct.unpack(pack_format, packet)
+ s = s+", id="+client_id
+
+ if flags&4:
+ pack_format = "!H" + str(len(packet)-2) + 's'
+ (slen, packet) = struct.unpack(pack_format, packet)
+ pack_format = "!" + str(slen)+'s' + str(len(packet)-slen) + 's'
+ (will_topic, packet) = struct.unpack(pack_format, packet)
+ s = s+", will-topic="+will_topic
+
+ pack_format = "!H" + str(len(packet)-2) + 's'
+ (slen, packet) = struct.unpack(pack_format, packet)
+ pack_format = "!" + str(slen)+'s' + str(len(packet)-slen) + 's'
+ (will_message, packet) = struct.unpack(pack_format, packet)
+ s = s+", will-message="+will_message
+
+ s = s+", will-qos="+str((flags&24)>>3)
+ s = s+", will-retain="+str((flags&32)>>5)
+
+ if flags&128:
+ pack_format = "!H" + str(len(packet)-2) + 's'
+ (slen, packet) = struct.unpack(pack_format, packet)
+ pack_format = "!" + str(slen)+'s' + str(len(packet)-slen) + 's'
+ (username, packet) = struct.unpack(pack_format, packet)
+ s = s+", username="+username
+
+ if flags&64:
+ pack_format = "!H" + str(len(packet)-2) + 's'
+ (slen, packet) = struct.unpack(pack_format, packet)
+ pack_format = "!" + str(slen)+'s' + str(len(packet)-slen) + 's'
+ (password, packet) = struct.unpack(pack_format, packet)
+ s = s+", password="+password
+
+ return s
+ elif cmd == 0x20:
+ # CONNACK
+ (cmd, rl, resv, rc) = struct.unpack('!BBBB', packet)
+ return "CONNACK, rl="+str(rl)+", res="+str(resv)+", rc="+str(rc)
+ elif cmd == 0x30:
+ # PUBLISH
+ dup = (packet0 & 0x08)>>3
+ qos = (packet0 & 0x06)>>1
+ retain = (packet0 & 0x01)
+ (packet, rl) = remaining_length(packet)
+ pack_format = "!H" + str(len(packet)-2) + 's'
+ (tlen, packet) = struct.unpack(pack_format, packet)
+ pack_format = "!" + str(tlen)+'s' + str(len(packet)-tlen) + 's'
+ (topic, packet) = struct.unpack(pack_format, packet)
+ s = "PUBLISH, rl="+str(rl)+", topic="+topic+", qos="+str(qos)+", retain="+str(retain)+", dup="+str(dup)
+ if qos > 0:
+ pack_format = "!H" + str(len(packet)-2) + 's'
+ (mid, packet) = struct.unpack(pack_format, packet)
+ s = s + ", mid="+str(mid)
+
+ s = s + ", payload="+packet
+ return s
+ elif cmd == 0x40:
+ # PUBACK
+ (cmd, rl, mid) = struct.unpack('!BBH', packet)
+ return "PUBACK, rl="+str(rl)+", mid="+str(mid)
+ elif cmd == 0x50:
+ # PUBREC
+ (cmd, rl, mid) = struct.unpack('!BBH', packet)
+ return "PUBREC, rl="+str(rl)+", mid="+str(mid)
+ elif cmd == 0x60:
+ # PUBREL
+ dup = (packet0 & 0x08)>>3
+ (cmd, rl, mid) = struct.unpack('!BBH', packet)
+ return "PUBREL, rl="+str(rl)+", mid="+str(mid)+", dup="+str(dup)
+ elif cmd == 0x70:
+ # PUBCOMP
+ (cmd, rl, mid) = struct.unpack('!BBH', packet)
+ return "PUBCOMP, rl="+str(rl)+", mid="+str(mid)
+ elif cmd == 0x80:
+ # SUBSCRIBE
+ (packet, rl) = remaining_length(packet)
+ pack_format = "!H" + str(len(packet)-2) + 's'
+ (mid, packet) = struct.unpack(pack_format, packet)
+ s = "SUBSCRIBE, rl="+str(rl)+", mid="+str(mid)
+ topic_index = 0
+ while len(packet) > 0:
+ pack_format = "!H" + str(len(packet)-2) + 's'
+ (tlen, packet) = struct.unpack(pack_format, packet)
+ pack_format = "!" + str(tlen)+'sB' + str(len(packet)-tlen-1) + 's'
+ (topic, qos, packet) = struct.unpack(pack_format, packet)
+ s = s + ", topic"+str(topic_index)+"="+topic+","+str(qos)
+ return s
+ elif cmd == 0x90:
+ # SUBACK
+ (packet, rl) = remaining_length(packet)
+ pack_format = "!H" + str(len(packet)-2) + 's'
+ (mid, packet) = struct.unpack(pack_format, packet)
+ pack_format = "!" + "B"*len(packet)
+ granted_qos = struct.unpack(pack_format, packet)
+
+ s = "SUBACK, rl="+str(rl)+", mid="+str(mid)+", granted_qos="+str(granted_qos[0])
+ for i in range(1, len(granted_qos)-1):
+ s = s+", "+str(granted_qos[i])
+ return s
+ elif cmd == 0xA0:
+ # UNSUBSCRIBE
+ (packet, rl) = remaining_length(packet)
+ pack_format = "!H" + str(len(packet)-2) + 's'
+ (mid, packet) = struct.unpack(pack_format, packet)
+ s = "UNSUBSCRIBE, rl="+str(rl)+", mid="+str(mid)
+ topic_index = 0
+ while len(packet) > 0:
+ pack_format = "!H" + str(len(packet)-2) + 's'
+ (tlen, packet) = struct.unpack(pack_format, packet)
+ pack_format = "!" + str(tlen)+'s' + str(len(packet)-tlen) + 's'
+ (topic, packet) = struct.unpack(pack_format, packet)
+ s = s + ", topic"+str(topic_index)+"="+topic
+ return s
+ elif cmd == 0xB0:
+ # UNSUBACK
+ (cmd, rl, mid) = struct.unpack('!BBH', packet)
+ return "UNSUBACK, rl="+str(rl)+", mid="+str(mid)
+ elif cmd == 0xC0:
+ # PINGREQ
+ (cmd, rl) = struct.unpack('!BB', packet)
+ return "PINGREQ, rl="+str(rl)
+ elif cmd == 0xD0:
+ # PINGRESP
+ (cmd, rl) = struct.unpack('!BB', packet)
+ return "PINGRESP, rl="+str(rl)
+ elif cmd == 0xE0:
+ # DISCONNECT
+ (cmd, rl) = struct.unpack('!BB', packet)
+ return "DISCONNECT, rl="+str(rl)
+ elif cmd == 0xF0:
+ # Reserved
+ return "0xF0"
+
+def gen_connect(client_id, clean_session=True, keepalive=60, username=None, password=None, will_topic=None, will_qos=0, will_retain=False, will_payload="", proto_ver=3):
+ if client_id == None:
+ remaining_length = 12
+ else:
+ remaining_length = 12 + 2+len(client_id)
+ connect_flags = 0
+ if clean_session:
+ connect_flags = connect_flags | 0x02
+
+ if will_topic != None:
+ remaining_length = remaining_length + 2+len(will_topic) + 2+len(will_payload)
+ connect_flags = connect_flags | 0x04 | ((will_qos&0x03) << 3)
+ if will_retain:
+ connect_flags = connect_flags | 32
+
+ if username != None:
+ remaining_length = remaining_length + 2+len(username)
+ connect_flags = connect_flags | 0x80
+ if password != None:
+ connect_flags = connect_flags | 0x40
+ remaining_length = remaining_length + 2+len(password)
+
+ rl = pack_remaining_length(remaining_length)
+ packet = struct.pack("!B"+str(len(rl))+"s", 0x10, rl)
+ packet = packet + struct.pack("!H6sBBH", len("MQIsdp"), "MQIsdp", proto_ver, connect_flags, keepalive)
+ if client_id != None:
+ packet = packet + struct.pack("!H"+str(len(client_id))+"s", len(client_id), client_id)
+
+ if will_topic != None:
+ packet = packet + struct.pack("!H"+str(len(will_topic))+"s", len(will_topic), will_topic)
+ if len(will_payload) > 0:
+ packet = packet + struct.pack("!H"+str(len(will_payload))+"s", len(will_payload), will_payload)
+ else:
+ packet = packet + struct.pack("!H", 0)
+
+ if username != None:
+ packet = packet + struct.pack("!H"+str(len(username))+"s", len(username), username)
+ if password != None:
+ packet = packet + struct.pack("!H"+str(len(password))+"s", len(password), password)
+ return packet
+
+def gen_connack(resv=0, rc=0):
+ return struct.pack('!BBBB', 32, 2, resv, rc);
+
+def gen_publish(topic, qos, payload=None, retain=False, dup=False, mid=0):
+ rl = 2+len(topic)
+ pack_format = "!BBH"+str(len(topic))+"s"
+ if qos > 0:
+ rl = rl + 2
+ pack_format = pack_format + "H"
+ if payload != None:
+ rl = rl + len(payload)
+ pack_format = pack_format + str(len(payload))+"s"
+ else:
+ payload = ""
+ pack_format = pack_format + "0s"
+
+ cmd = 48 | (qos<<1)
+ if retain:
+ cmd = cmd + 1
+ if dup:
+ cmd = cmd + 8
+
+ if qos > 0:
+ return struct.pack(pack_format, cmd, rl, len(topic), topic, mid, payload)
+ else:
+ return struct.pack(pack_format, cmd, rl, len(topic), topic, payload)
+
+def gen_puback(mid):
+ return struct.pack('!BBH', 64, 2, mid)
+
+def gen_pubrec(mid):
+ return struct.pack('!BBH', 80, 2, mid)
+
+def gen_pubrel(mid, dup=False):
+ if dup:
+ cmd = 96+8+2
+ else:
+ cmd = 96+2
+ return struct.pack('!BBH', cmd, 2, mid)
+
+def gen_pubcomp(mid):
+ return struct.pack('!BBH', 112, 2, mid)
+
+def gen_subscribe(mid, topic, qos):
+ pack_format = "!BBHH"+str(len(topic))+"sB"
+ return struct.pack(pack_format, 130, 2+2+len(topic)+1, mid, len(topic), topic, qos)
+
+def gen_suback(mid, qos):
+ return struct.pack('!BBHB', 144, 2+1, mid, qos)
+
+def gen_unsubscribe(mid, topic):
+ pack_format = "!BBHH"+str(len(topic))+"s"
+ return struct.pack(pack_format, 162, 2+2+len(topic), mid, len(topic), topic)
+
+def gen_unsuback(mid):
+ return struct.pack('!BBH', 176, 2, mid)
+
+def gen_pingreq():
+ return struct.pack('!BB', 192, 0)
+
+def gen_pingresp():
+ return struct.pack('!BB', 208, 0)
+
+def gen_disconnect():
+ return struct.pack('!BB', 224, 0)
+
+def pack_remaining_length(remaining_length):
+ s = ""
+ while True:
+ byte = remaining_length % 128
+ remaining_length = remaining_length // 128
+ # If there are more digits to encode, set the top bit of this digit
+ if remaining_length > 0:
+ byte = byte | 0x80
+
+ s = s + struct.pack("!B", byte)
+ if remaining_length == 0:
+ return s