{ "info": { "author": "Iwan Budi Kusnanto", "author_email": "iwan.b.kusnanto@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "Nyamuk\r\n======\r\n\r\nNyamuk is a python MQTT library, originally based on libmosquitto. \r\nIt implements both 3.1 and 3.1.1 versions of MQTT protocol. \r\nCurrently only supporting python 2.7\r\n\r\nFeatures\r\n--------\r\n\r\n* [x] MQTT v3.1\r\n* [x] MQTT v3.1.1\r\n* [x] SSL\r\n* [x] Qos 0, 1 & 2 support\r\n* [ ] docstring & documentation\r\n* [\u00a0] python3 support\r\n* [ ]\u00a0advanced logging\r\n\r\nInstall\r\n-------\r\n\r\nfrom sources:\r\n```\r\n$> python setup.py install\r\n```\r\n\r\nusing pypi package:\r\n```\r\n$> pip install nyamuk\r\n```\r\n\r\nExample\r\n-------\r\n\r\nPublishing a message with Qos 1 (with MQTT v3.1.1)\r\n```python\r\nimport sys\r\nfrom nyamuk import *\r\n\r\ndef nloop(client):\r\n client.packet_write() # flush write buffer (messages sent to MQTT server)\r\n client.loop() # fill read buffer (enqueue received messages)\r\n return client.pop_event() # return 1st received message (dequeued)\r\n\r\nclient = Nyamuk(\"test_nyamuk\", server=\"test.mosquitto.org\")\r\nret = client.connect(version=4)\r\nret = nloop(client) # ret should be EventConnack object\r\nif not isinstance(ret, EventConnack) or ret.ret_code != 0:\r\n print 'connection failed'; sys.exit(1)\r\n\r\nclient.publish('foo/bar', 'this is a test', qos=1)\r\nret = nloop(client) # ret should be EventPuback\r\n\r\nclient.disconnect()\r\n```\r\n\r\nSubscribing a topic\r\n```python\r\nimport sys\r\nfrom nyamuk import *\r\n\r\ndef nloop(client):\r\n client.packet_write() # flush write buffer (messages sent to MQTT server)\r\n client.loop() # fill read buffer (enqueue received messages)\r\n return client.pop_event() # return 1st received message (dequeued)\r\n\r\nclient = Nyamuk(\"test_nyamuk\", server=\"test.mosquitto.org\")\r\nret = client.connect(version=4)\r\nret = nloop(client) # ret should be EventConnack object\r\nif not isinstance(ret, EventConnack) or ret.ret_code != 0:\r\n print 'connection failed'; sys.exit(1)\r\n\r\nclient.subscribe('foo/bar', qos=1)\r\nret = nloop(client)\r\nif not isinstance(ret, EventSuback):\r\n print 'SUBACK not received'; sys.exit(2)\r\nprint 'granted qos is', ret.granted_qos[0]\r\n\r\ntry:\r\n while True:\r\n evt = nloop(client)\r\n if isinstance(evt, EventPublish):\r\n print 'we received a message: {0} (topic= {1})'.format(evt.msg.payload, evt.msg.topic)\r\n \r\n # received message is either qos 0 or 1\r\n # in case of qos 1, we must send back PUBACK message with same packet-id\r\n if evt.msg.qos == 1:\r\n client.puback(evt.msg.mid)\r\n\r\nexcept KeyboardInterrupt:\r\n pass\r\n\r\nclient.disconnect()\r\n```\r\n\r\n\r\nAuthors\r\n-------\r\n\r\nOriginal creator: Iwan B. Kusnanto \r\nCurrent maintainer: Guillaume Bour\r\n\r\nLicense\r\n-------\r\n\r\nNyamuk is distributed under BSD license", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/iwanbk/nyamuk", "keywords": "", "license": "BSD", "maintainer": "Guillaume Bour", "maintainer_email": "guillaume@bour.cc", "name": "nyamuk", "package_url": "https://pypi.org/project/nyamuk/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/nyamuk/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/iwanbk/nyamuk" }, "release_url": "https://pypi.org/project/nyamuk/0.2.0/", "requires_dist": null, "requires_python": null, "summary": "Python MQTT Client Library", "version": "0.2.0" }, "last_serial": 2199512, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "4439e810417dba8e450d0c93316532d6", "sha256": "1c6ad418a3ca0bdbea707ea0195b49bf317b66705114f564b040c9f2c51a4580" }, "downloads": -1, "filename": "nyamuk-v0.1.tar.gz", "has_sig": false, "md5_digest": "4439e810417dba8e450d0c93316532d6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8719, "upload_time": "2012-04-19T10:58:27", "url": "https://files.pythonhosted.org/packages/29/90/5290b5ab5adcbfda6349365e5b9359811cec6f3d3c406d1bee740890e1da/nyamuk-v0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "8f0bce019dbe5eb7f0f914ecb5ddd8ce", "sha256": "4d4d692dada7bd57ec662746b89e9a7e4acf780bfb5751427979874c38572400" }, "downloads": -1, "filename": "nyamuk-v0.1.1.tar.gz", "has_sig": false, "md5_digest": "8f0bce019dbe5eb7f0f914ecb5ddd8ce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8807, "upload_time": "2012-05-07T11:27:24", "url": "https://files.pythonhosted.org/packages/c2/fb/f0a9d338ef1456fce79596b0388cd8ea7758e666106ec48180a984f82844/nyamuk-v0.1.1.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "460a27e5ca09e702677831cd00539792", "sha256": "3e6ae1a40f556945f31a541c7be3bae96ebe53f8dd1362b38965fd37c665b2c9" }, "downloads": -1, "filename": "nyamuk-v0.2.0.tar.gz", "has_sig": false, "md5_digest": "460a27e5ca09e702677831cd00539792", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12999, "upload_time": "2016-07-02T13:20:16", "url": "https://files.pythonhosted.org/packages/de/44/1a25ae956b13341cb2e3d54d1dc3d3cdd3a687f6e226f5f850848133767a/nyamuk-v0.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "460a27e5ca09e702677831cd00539792", "sha256": "3e6ae1a40f556945f31a541c7be3bae96ebe53f8dd1362b38965fd37c665b2c9" }, "downloads": -1, "filename": "nyamuk-v0.2.0.tar.gz", "has_sig": false, "md5_digest": "460a27e5ca09e702677831cd00539792", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12999, "upload_time": "2016-07-02T13:20:16", "url": "https://files.pythonhosted.org/packages/de/44/1a25ae956b13341cb2e3d54d1dc3d3cdd3a687f6e226f5f850848133767a/nyamuk-v0.2.0.tar.gz" } ] }