{ "info": { "author": "y\u025bl\u025bman s.\u00e0.r.l", "author_email": "reg@yeleman.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: SQL" ], "description": "= NoSMSd =\n\nNoSMSd is a python wrapper around the Gammu-smsd Database.\nIt allows one to easily setup Gammu-smsd and interact with it from python.\n\nIt's moto is to let Gammu do all the work. It's a wrapper, not a framework.\n\nDependences:\n * peewee (pip install peewee)\n * Any database connector you might need.\n Beware that it's been tested only on MySQL.\n\nInstallation:\n pip install nosmsd\n\n* Django Integration\n\nNoSMSd does _NOT_ require django.\n\nStill, if you are using it server-side and you are already using django,\nyou can benefit from the following features:\n - a management command for processing incoming SMS\n ./manage.py nosmsd_incoming 3\n This will allow you to access you django models & other from your\n SMS handler.\n - Django Admin integration: you can view your received and sent messages\n right from the django admin.\n - Add a database named 'smsd' for your NoSMSd schema and 'nosmsd' in the\n INSTALLED_APPS in your django settings.py\n - Also add DATABASE_ROUTERS = ['nosmsd.django_routers.NoSMSdRouter'] to\n your django settings.py\n\n* Warnings\n - Gammu is not expecting third parties to mess-around with its DB.\n You should not attempt to write to Django Model.\n It is disabled on purpose. If Gammu encounters a MySQL error (like a\n pk error on the sentitems table with have two pk), it will freeze.\n\n\nExample Use:\n\n * Setting-up Gammu\n Please note that NoSMSd Gammu assumes you have a working Gammu-smsd setup.\n NoSMSd itself does only rely on its Database so you can do anything\n without Gammu but you'll eventually need it.\n You can find an example gammu-smsdrc in the contrib/ folder.\n\n * Database schema\n NoSMSd is using the Gammu SQL schema with a small addition to the Inbox\n Table.\n Create your tables with provided script in contrib/ or use the alter\n statement also available if you already have a working Gammu.\n\n * Settings\n If you only want to send out SMS, you don't need to configure anything.\n If you want to receive, you need to specify your message handler with\n NOSMSD_HANDLER. It is the full module.function path to your handler.\n Configure it by creating a python module in one of the following locations:\n - /etc/nosmsd.conf.py\n - ~/.nosmsd.conf.py\n - ~/nosmsd.conf.py\n - nosmsd.conf.py\n You can overwrite any of the existing config vars in the settings.py module.\n You can find an example in the contrib/ folder.\n\n * I want to send a message to number +33198765432\n $ /path/to/env/bin/nosmsd_sendout.py '+22377667766' \"Hello world\"\n\n * I want to test my handler / simulate an incoming SMS\n $ /path/to/env/bin/nosmsd_inject.py '+22366908765' \"weather in bamako?\"\n\n * How do I configure Gammu to process SMS in Python?\n In your gammu-smsdrc file, configure the RunOnReceive directive\n RunOnReceive = /path/to/env/bin/nosmsd_incoming.py\n\n If you are using Django and want to access django features from within\n your handler, add NoSMSd to your django settings then use the following:\n RunOnReceive = /path/to/djangoproj/manage.py nosmsd_incoming\n\n * I want to send an SMS from Python\n from nosmsd.utils import send_sms\n send_sms('+22377667766', u\"\u0635\u0628\u0627\u062d \u0627\u0644\u062e\u064a\u0631\")\n\n * How do I write a handler?\n A handler is a regular function accepting a single parameter: message.\n message is a database.Inbox message with the following (notable) fields:\n - date\n - content\n - identity (the sender number\n - status\n - respond(text) method to reply directly.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/yeleman/nosmsd", "keywords": "sms gammu smsd", "license": "GNU Lesser General Public License (LGPL), Version 3", "maintainer": null, "maintainer_email": null, "name": "nosmsd", "package_url": "https://pypi.org/project/nosmsd/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/nosmsd/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/yeleman/nosmsd" }, "release_url": "https://pypi.org/project/nosmsd/0.27/", "requires_dist": null, "requires_python": null, "summary": "Python wrapper around Gammu-smsd Database.", "version": "0.27" }, "last_serial": 795547, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "4074ec79a3c83bb4b012861364461df0", "sha256": "a65606521db076f3788ee74922328fa3d6eb8b51e42dc778e2c0dd0869d1a6c5" }, "downloads": -1, "filename": "nosmsd-0.1.tar.gz", "has_sig": false, "md5_digest": "4074ec79a3c83bb4b012861364461df0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9344, "upload_time": "2011-12-27T12:29:35", "url": "https://files.pythonhosted.org/packages/72/a3/2c623b0b9efce3cc85850c2ebde3bbecbfaf8c4ce3274a1611112bde0163/nosmsd-0.1.tar.gz" } ], "0.10": [ { "comment_text": "", "digests": { "md5": "1bb3c441621e3516d0feccabc2359f3a", "sha256": "d19a2c41ea8056f7d261bfcc9d40d9087d1e65a2a91327a9416872fb76e3996e" }, "downloads": -1, "filename": "nosmsd-0.10.tar.gz", "has_sig": false, "md5_digest": "1bb3c441621e3516d0feccabc2359f3a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10593, "upload_time": "2012-01-26T10:40:13", "url": "https://files.pythonhosted.org/packages/82/be/64146fc7050bda03d012fd96ea3454ccb7a66081213cd6a20158521a5a21/nosmsd-0.10.tar.gz" } ], "0.11": [ { "comment_text": "", "digests": { "md5": "486cca071e63c0b89a29f40c15bef58a", "sha256": "ec25f2abda228e6bba2d1995c1ef52c43f209b35bd9b7f890520cf4189559fa3" }, "downloads": -1, "filename": "nosmsd-0.11.tar.gz", "has_sig": false, "md5_digest": "486cca071e63c0b89a29f40c15bef58a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12942, "upload_time": "2012-01-27T15:27:09", "url": "https://files.pythonhosted.org/packages/fb/d3/db5c1b23c0ff551ca407a239ab70dedbf4a648bd09426289f18ebea92f21/nosmsd-0.11.tar.gz" } ], "0.12": [ { "comment_text": "", "digests": { "md5": "4253b6599ea2040dd2e3fcf96fb53e66", "sha256": "a6fdeb1f53074b5b96c81c6870d1401271bdb0624421b3fc9f901d7b1e866a5e" }, "downloads": -1, "filename": "nosmsd-0.12.tar.gz", "has_sig": false, "md5_digest": "4253b6599ea2040dd2e3fcf96fb53e66", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13236, "upload_time": "2012-01-28T14:49:33", "url": "https://files.pythonhosted.org/packages/85/55/a14f73ffdb0a922b6c1e16f6cfd174b9b70760770d5127ce26b44f18945e/nosmsd-0.12.tar.gz" } ], "0.13": [ { "comment_text": "", "digests": { "md5": "580128f3f28c7efec8e5cd1110479fd8", "sha256": "f650d9859dfe58f022bf1883f46a1d493b7747b0be446e6b29bd6e3c014c2b7e" }, "downloads": -1, "filename": "nosmsd-0.13.tar.gz", "has_sig": false, "md5_digest": "580128f3f28c7efec8e5cd1110479fd8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13259, "upload_time": "2012-02-07T18:36:07", "url": "https://files.pythonhosted.org/packages/0e/7c/cc98d3128a977fa1ba02bff0298eb1580964897b10ced346eb1e84b1e2c0/nosmsd-0.13.tar.gz" } ], "0.14": [ { "comment_text": "", "digests": { "md5": "4f62414a9adb197bb71ee2218bebe533", "sha256": "6a5a45a0ae92bf7ee5140b0acfd7769a61f71bef1ec6639efcdb57799bce2009" }, "downloads": -1, "filename": "nosmsd-0.14.tar.gz", "has_sig": false, "md5_digest": "4f62414a9adb197bb71ee2218bebe533", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13414, "upload_time": "2012-02-13T18:34:32", "url": "https://files.pythonhosted.org/packages/fa/2b/a4e614f5d00767b176cd0268b5a928851a91196297e1e162b2ea56e5dad0/nosmsd-0.14.tar.gz" } ], "0.15": [ { "comment_text": "", "digests": { "md5": "b6578d3d2f4ea310936643fcbdb404ec", "sha256": "18eb47e4248e7209eae95191fa9d9a219f832813f1e53b86e013c99d5cf7afaf" }, "downloads": -1, "filename": "nosmsd-0.15.tar.gz", "has_sig": false, "md5_digest": "b6578d3d2f4ea310936643fcbdb404ec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13563, "upload_time": "2012-07-16T18:30:21", "url": "https://files.pythonhosted.org/packages/17/e9/e2969614517ee7e95300bd97f998e72f83458686006be2ac8f86ad255b66/nosmsd-0.15.tar.gz" } ], "0.16": [ { "comment_text": "", "digests": { "md5": "c0ae23f430ec9de210f2cb69c40a70b4", "sha256": "e2e69c6ee6a4a5c75b8b7cef53622209fa96a23aba04bedc7487dee0cbcd9bfa" }, "downloads": -1, "filename": "nosmsd-0.16.tar.gz", "has_sig": false, "md5_digest": "c0ae23f430ec9de210f2cb69c40a70b4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13565, "upload_time": "2012-07-16T20:47:50", "url": "https://files.pythonhosted.org/packages/0c/78/99caa883cca31b0eba183c59e3351ff06bdd1695c07d7c1e3a6b68d3457c/nosmsd-0.16.tar.gz" } ], "0.17": [ { "comment_text": "", "digests": { "md5": "5128144da0269b2083b1049f3168ea24", "sha256": "0619404043c9bd7d4306c36c5db4eb6300e1d57f15487ba5d907223c03ec418a" }, "downloads": -1, "filename": "nosmsd-0.17.tar.gz", "has_sig": false, "md5_digest": "5128144da0269b2083b1049f3168ea24", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13566, "upload_time": "2012-07-16T20:49:47", "url": "https://files.pythonhosted.org/packages/4a/d6/d640058562ba800cf7ddda06c49a925d5b1581576dd8e220073a96421be8/nosmsd-0.17.tar.gz" } ], "0.18": [ { "comment_text": "", "digests": { "md5": "015e1c873ce4fa83a6794c5541825096", "sha256": "1039660557030d2723f681ec0db4ae1d3c87e95cc7080f34acd1e15d5dcaf0db" }, "downloads": -1, "filename": "nosmsd-0.18.tar.gz", "has_sig": false, "md5_digest": "015e1c873ce4fa83a6794c5541825096", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17616, "upload_time": "2012-10-18T16:41:58", "url": "https://files.pythonhosted.org/packages/90/2b/16bf71526e132f9ee1fc8adf819c4fb57e3bf4367444f5a11a421546c991/nosmsd-0.18.tar.gz" } ], "0.19": [ { "comment_text": "", "digests": { "md5": "bdc7c99f2d44cf0661ca16b013b160aa", "sha256": "2feede9f134176d1e4a4a7db336c37355526c3fcb51a44c5e26556c374ca7e4b" }, "downloads": -1, "filename": "nosmsd-0.19.tar.gz", "has_sig": false, "md5_digest": "bdc7c99f2d44cf0661ca16b013b160aa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17616, "upload_time": "2012-10-18T16:50:38", "url": "https://files.pythonhosted.org/packages/2f/68/f8c7a15fa5bca98871bf6a9f026730bc0b8cd8297a2370f859790a9c76cb/nosmsd-0.19.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "a86f98b67e0cb7cc0fc5d6818f041639", "sha256": "9251d5eaa930b8e756a0f4402ae7d93e10a311383d9e5bd8cb7faed6ce528152" }, "downloads": -1, "filename": "nosmsd-0.2.tar.gz", "has_sig": false, "md5_digest": "a86f98b67e0cb7cc0fc5d6818f041639", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12183, "upload_time": "2011-12-28T11:51:46", "url": "https://files.pythonhosted.org/packages/10/4b/d41e9521ec57f6ad0d33dc5875de6da32ba48e97d1c1d9a48eac4a332d4c/nosmsd-0.2.tar.gz" } ], "0.20": [ { "comment_text": "", "digests": { "md5": "e9f963c836d81e9209aa3c62b09b9575", "sha256": "161baece62812bb00c9dbd0fff5da779bfd48a2168eda88bec6ef0b1c0edf22a" }, "downloads": -1, "filename": "nosmsd-0.20.tar.gz", "has_sig": false, "md5_digest": "e9f963c836d81e9209aa3c62b09b9575", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17607, "upload_time": "2012-10-18T17:16:40", "url": "https://files.pythonhosted.org/packages/1f/cf/83c65bbf3837903fbcac16f81da8af1ab5578cfb24fbe252fa3f0780d1ba/nosmsd-0.20.tar.gz" } ], "0.21": [ { "comment_text": "", "digests": { "md5": "73d813b1ac8f5bdc5fcd077a8084b2e9", "sha256": "c9000624d0af17bd2f02278d7aae8ea13aa341cd5fb3701e43f50aa30c2b0b0a" }, "downloads": -1, "filename": "nosmsd-0.21.tar.gz", "has_sig": false, "md5_digest": "73d813b1ac8f5bdc5fcd077a8084b2e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17598, "upload_time": "2012-10-18T17:33:57", "url": "https://files.pythonhosted.org/packages/68/4c/4c3d070ca491d8b7d2e58827525638a4a136c8419bd6a3d902a5ed7740ea/nosmsd-0.21.tar.gz" } ], "0.22": [ { "comment_text": "", "digests": { "md5": "bfa4c59d00ec258488733b2f1f047b25", "sha256": "23c21a27656f0cccaea3031999ba0aa6473c6459a95c5f0f454de7f79cc6d5a9" }, "downloads": -1, "filename": "nosmsd-0.22.tar.gz", "has_sig": false, "md5_digest": "bfa4c59d00ec258488733b2f1f047b25", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17623, "upload_time": "2012-10-18T17:49:37", "url": "https://files.pythonhosted.org/packages/a4/3b/391fe21701f3ae70125f3f22013414148d6395391796be40e7db498ed12e/nosmsd-0.22.tar.gz" } ], "0.23": [ { "comment_text": "", "digests": { "md5": "6785e13bcbfe170f5a44ad7e33e5a466", "sha256": "b5389079667c765567d996edbd7c337f720252e8ac8b70385cc6987c0420873b" }, "downloads": -1, "filename": "nosmsd-0.23.tar.gz", "has_sig": false, "md5_digest": "6785e13bcbfe170f5a44ad7e33e5a466", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17617, "upload_time": "2012-10-18T19:05:32", "url": "https://files.pythonhosted.org/packages/b1/ce/2ccc02489810fea001d62aa1ed358ae82b3811f19f20db12fb795d221114/nosmsd-0.23.tar.gz" } ], "0.24": [ { "comment_text": "", "digests": { "md5": "c24914d760565d367d015741314182bb", "sha256": "0a5dc2a4ef0e47a63c219b26e910ed457496da1b374a1d402e297476f30dfbc5" }, "downloads": -1, "filename": "nosmsd-0.24.tar.gz", "has_sig": false, "md5_digest": "c24914d760565d367d015741314182bb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17630, "upload_time": "2012-10-19T17:31:35", "url": "https://files.pythonhosted.org/packages/76/c6/08cb3e64a6f5c20e96c281a8efd6dc92fc6ff1e1b544662037b01f90ffb3/nosmsd-0.24.tar.gz" } ], "0.25": [ { "comment_text": "", "digests": { "md5": "afb2edeef103f138729910d77ae8bdad", "sha256": "6658a8ffea675bccbe63adbb8126853ecbd500d03dab9df74ac2f8b1ddaad521" }, "downloads": -1, "filename": "nosmsd-0.25.tar.gz", "has_sig": false, "md5_digest": "afb2edeef103f138729910d77ae8bdad", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17673, "upload_time": "2012-10-19T18:23:57", "url": "https://files.pythonhosted.org/packages/67/51/1ca95fab1177992245e511d77a72414e183d87dba996780d0423207a32e5/nosmsd-0.25.tar.gz" } ], "0.26": [ { "comment_text": "", "digests": { "md5": "8733fdf031cf974284be46fd5bf6f933", "sha256": "83161d723b1b20dfc342af7ae46c4f241063913911e4e940157d2c647b103634" }, "downloads": -1, "filename": "nosmsd-0.26.tar.gz", "has_sig": false, "md5_digest": "8733fdf031cf974284be46fd5bf6f933", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18010, "upload_time": "2012-10-29T17:32:31", "url": "https://files.pythonhosted.org/packages/24/6f/fde93fee4724119cb9eb1862e7f540c93fd5724cca4b3071e483417f56cd/nosmsd-0.26.tar.gz" } ], "0.27": [ { "comment_text": "", "digests": { "md5": "0a7e990d1234309bceb5a8c9df35b518", "sha256": "835fc846c219c9b4d2640bf33c735433fa5f1af528b1e7af430bc418ce737c1c" }, "downloads": -1, "filename": "nosmsd-0.27.tar.gz", "has_sig": false, "md5_digest": "0a7e990d1234309bceb5a8c9df35b518", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17926, "upload_time": "2012-11-01T09:16:09", "url": "https://files.pythonhosted.org/packages/be/4e/6547c1ceb39f8c73837dbb93f1fdfc3a9f3d0a4860be677f19d81095db55/nosmsd-0.27.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "e81f3d32f2cd31acb86a536573f01223", "sha256": "0c3255d5e9228452901e2b2a891986e334caeca3813d31f465142b5a15c11a01" }, "downloads": -1, "filename": "nosmsd-0.3.tar.gz", "has_sig": false, "md5_digest": "e81f3d32f2cd31acb86a536573f01223", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12107, "upload_time": "2011-12-28T12:47:13", "url": "https://files.pythonhosted.org/packages/55/c7/44488e97273f632c8a7b5174a729024b5404ee69198ce97051ca6d1f6eeb/nosmsd-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "aedaaa7dd5ffed309c76d1f723af9e19", "sha256": "7938c47d0fa11cc835555d12ecf516c903418698bb3a3c90cd5694f84ab7740c" }, "downloads": -1, "filename": "nosmsd-0.4.tar.gz", "has_sig": false, "md5_digest": "aedaaa7dd5ffed309c76d1f723af9e19", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12113, "upload_time": "2011-12-28T12:54:40", "url": "https://files.pythonhosted.org/packages/d1/80/24c4911c6f9794d187aac296f2f5569035ff45b66af1d41899627c509985/nosmsd-0.4.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "7dfa801ec650ec4112225f2589750c17", "sha256": "2cc1e85fc198fe7161af205e6ee86ce34f40fe5ec7a585625b2bb8d3a1d41a40" }, "downloads": -1, "filename": "nosmsd-0.5.tar.gz", "has_sig": false, "md5_digest": "7dfa801ec650ec4112225f2589750c17", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12335, "upload_time": "2011-12-28T13:21:35", "url": "https://files.pythonhosted.org/packages/c4/38/5e0a4f64e2c48a9f5970e2f2e1bdc2276942c9fdd7f2eeaa41c99c989562/nosmsd-0.5.tar.gz" } ], "0.6": [ { "comment_text": "", "digests": { "md5": "27d5320b9cc6887b5b8ebc6f4b1e72e2", "sha256": "4fa459f58d1ffe3145bdb7718201e7c9e40f7632565ed76ac0f28416b2e5a9e4" }, "downloads": -1, "filename": "nosmsd-0.6.tar.gz", "has_sig": false, "md5_digest": "27d5320b9cc6887b5b8ebc6f4b1e72e2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12501, "upload_time": "2011-12-28T14:28:22", "url": "https://files.pythonhosted.org/packages/ca/2a/b2accaaf2a7ad87e6e807cbf96aa69a1068f3ad673f2fd71a227cc93484a/nosmsd-0.6.tar.gz" } ], "0.7": [ { "comment_text": "", "digests": { "md5": "0c96be7b4d4210161391954132d16d02", "sha256": "3a6bc3eec7f1df4eed5490034742a26c1aeeef068619b6d74831000ab05e2af0" }, "downloads": -1, "filename": "nosmsd-0.7.tar.gz", "has_sig": false, "md5_digest": "0c96be7b4d4210161391954132d16d02", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12503, "upload_time": "2011-12-28T14:37:20", "url": "https://files.pythonhosted.org/packages/e8/0a/17d81823129b746b83a6c76a7a087c7f6cb8617617484b7815dfde1c1dfc/nosmsd-0.7.tar.gz" } ], "0.8": [ { "comment_text": "", "digests": { "md5": "2a30964c0dcd8be62e520bfe9dedf764", "sha256": "600e4e5d9e3dd83efa4a3621322e0c729ea9aa8feb9061ea5aedfa26839a870d" }, "downloads": -1, "filename": "nosmsd-0.8.tar.gz", "has_sig": false, "md5_digest": "2a30964c0dcd8be62e520bfe9dedf764", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12505, "upload_time": "2011-12-28T19:13:45", "url": "https://files.pythonhosted.org/packages/66/d1/5cc0bd6969216f87c397ba909b1c1d6c0adb65cdedeb8fc90e2b9953f9a5/nosmsd-0.8.tar.gz" } ], "0.9": [ { "comment_text": "", "digests": { "md5": "29e472d87f687887fb34675467ea2010", "sha256": "bd61dae47ed1d6676b33981b9a4aac7ab7788e27b8b7304e249fc932f663215d" }, "downloads": -1, "filename": "nosmsd-0.9.tar.gz", "has_sig": false, "md5_digest": "29e472d87f687887fb34675467ea2010", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12155, "upload_time": "2012-01-26T10:36:19", "url": "https://files.pythonhosted.org/packages/56/ac/f337bdc417cba7f96e119f62e24110245a6352b1ebb6b8330f9f7db5ec04/nosmsd-0.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0a7e990d1234309bceb5a8c9df35b518", "sha256": "835fc846c219c9b4d2640bf33c735433fa5f1af528b1e7af430bc418ce737c1c" }, "downloads": -1, "filename": "nosmsd-0.27.tar.gz", "has_sig": false, "md5_digest": "0a7e990d1234309bceb5a8c9df35b518", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17926, "upload_time": "2012-11-01T09:16:09", "url": "https://files.pythonhosted.org/packages/be/4e/6547c1ceb39f8c73837dbb93f1fdfc3a9f3d0a4860be677f19d81095db55/nosmsd-0.27.tar.gz" } ] }