{ "info": { "author": "Mpower", "author_email": "mpower.public@yandex.ru", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 1.10", "Framework :: Django :: 1.11", "Framework :: Django :: 1.8", "Framework :: Django :: 1.9", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: Dynamic Content" ], "description": ".. image:: https://travis-ci.org/mp0wer/django-otp-sms.svg?branch=master\n :target: https://travis-ci.org/mp0wer/django-otp-sms\n\n==============\ndjango-otp-sms\n==============\n\nDjango \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0447\u0435\u0440\u0435\u0437 SMS\n\n\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430\n---------\n\n1. \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \"otp_sms\" \u0432 \u0432\u0430\u0448 INSTALLED_APPS::\n\n INSTALLED_APPS = (\n ...\n 'otp_sms',\n )\n\n2. \u0412\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u044e::\n\n python manage.py migrate\n\n\n3. \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0431\u0435\u043a\u0435\u043d\u0434 otp_sms.backends.SMSBackend \u0432 \u0432\u0430\u0448 AUTHENTICATION_BACKENDS::\n\n AUTHENTICATION_BACKENDS = (\n ...\n 'otp_sms.backends.SMSBackend',\n )\n\n4. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 otp_sms.views.SMSAuthenticationWizardView \u0434\u043b\u044f \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439::\n\n from otp_sms.views import SMSAuthenticationWizardView\n\n urlpatterns = patterns('',\n ...\n url(r'^login/', SMSAuthenticationWizardView.as_view(template_name='login.html'), name='login'),\n ...\n )\n\n5. \u0423\u043a\u0430\u0437\u0430\u0442\u044c \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 \u0430\u0434\u0430\u043f\u0442\u0435\u0440 \u0434\u043b\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 SMS (\u043d\u0430 \u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b: SMSRuAdapter \u0438 ProstorAdapter)::\n\n OTP_SMS_ADAPTER = 'otp_sms.adapters.SMSRuAdapter'\n\n6. \u0423\u043a\u0430\u0437\u0430\u0442\u044c \u0443\u0447\u0435\u0442\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u043e\u0433\u043e \u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0430::\n\n OTP_SMS_AUTH = {\n 'KEY': <\u0441\u0435\u043a\u0440\u0435\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0434\u043b\u044f sms.ru, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440>\n }\n\n\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\n---------\n\n**OTP_SMS_COUNT_ATTEMPTS**\n \u043a\u043e\u043b\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u043f\u044b\u0442\u043e\u043a \u0434\u043b\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 SMS\n\n**OTP_SMS_LATENCY_ATTEMPTS**\n \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0430 (timedelta) \u043f\u043e\u0441\u043b\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u0441\u0435\u0445 \u043f\u043e\u043f\u044b\u0442\u043e\u043a \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c SMS, \u043f\u043e\u0441\u043b\u0435 \u0438\u0441\u0442\u0435\u0447\u0435\u043d\u0438\u044f \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 \u0441\u043d\u043e\u0432\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 SMS\n\n**OTP_SMS_AUTH**\n \u0443\u0447\u0435\u0442\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u043e\u0433\u043e \u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0430\n\n**OTP_SMS_TOKEN_TEMPLATE**\n \u0448\u0430\u0431\u043b\u043e\u043d SMS, \u043a \u043f\u0440\u0438\u043c\u0435\u0440\u0443 \"\u0412\u0430\u0448 \u043f\u0430\u0440\u043e\u043b\u044c {token}\"\n\n**OTP_SMS_NOTIFY_ADMINS_ADAPTER_ERROR**\n True \u0438\u043b\u0438 False, \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0438\u043b\u0438 \u043d\u0435\u0442 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430\u043c \u043e\u0448\u0438\u0431\u043a\u0438 \u043f\u0440\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0435 \u0441\u043c\u0441\n\n**OTP_SMS_TEST_MODE**\n \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0435\u0441\u043b\u0438 True \u043b\u044e\u0431\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432\u0430\u043b\u0438\u0434\u043d\u044b\u043c \u0442\u043e\u043a\u0435\u043d\u043e\u043c", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/mp0wer/django-otp-sms", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "django-otp-sms", "package_url": "https://pypi.org/project/django-otp-sms/", "platform": "", "project_url": "https://pypi.org/project/django-otp-sms/", "project_urls": { "Homepage": "https://github.com/mp0wer/django-otp-sms" }, "release_url": "https://pypi.org/project/django-otp-sms/0.5/", "requires_dist": null, "requires_python": "", "summary": "Django \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0447\u0435\u0440\u0435\u0437 sms", "version": "0.5" }, "last_serial": 5783288, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "b72f74883a5a276de11fac32e8c835cf", "sha256": "5418349fe186981194f08aa6da28fb2b8cfd8f5309002d6378dcd3215fcab168" }, "downloads": -1, "filename": "django-otp-sms-0.1.tar.gz", "has_sig": false, "md5_digest": "b72f74883a5a276de11fac32e8c835cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7426, "upload_time": "2015-12-16T15:59:30", "url": "https://files.pythonhosted.org/packages/96/fe/0ebbaf14c9100fcb5460103f6dffe1671feede08d4ebff91654e2a22e328/django-otp-sms-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "e8be172e6af7b577e747b3a3caf56f6c", "sha256": "d1f4a164d72cf5471c1cc8a2e1ce21fef67e5cd3cca8ef10727c94f9183b522d" }, "downloads": -1, "filename": "django-otp-sms-0.2.tar.gz", "has_sig": false, "md5_digest": "e8be172e6af7b577e747b3a3caf56f6c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9470, "upload_time": "2016-10-28T12:10:26", "url": "https://files.pythonhosted.org/packages/77/ec/0ccdfc5fc524f76045b206de5e86cb64c2c80771254e550386ceb54db356/django-otp-sms-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "fe223bbf23bbbb458fafd1bb6bed9105", "sha256": "d122132717c3062d7833433d45d548a06d9b375f10f2d04d2a3c85d62ac69573" }, "downloads": -1, "filename": "django-otp-sms-0.3.tar.gz", "has_sig": false, "md5_digest": "fe223bbf23bbbb458fafd1bb6bed9105", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10303, "upload_time": "2016-11-24T12:04:29", "url": "https://files.pythonhosted.org/packages/7d/ae/6a4843cd4b5f69712bc199b0ca14668bbac126d512d41440746e36a42a92/django-otp-sms-0.3.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "e85371848c05bb5f853343a10db0a130", "sha256": "f53887152a81ba5740958b20f659d5e7b298a72e9951e8c1a8ffb1bf61b04bd2" }, "downloads": -1, "filename": "django-otp-sms-0.3.1.tar.gz", "has_sig": false, "md5_digest": "e85371848c05bb5f853343a10db0a130", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13682, "upload_time": "2016-11-24T12:46:17", "url": "https://files.pythonhosted.org/packages/62/57/1e1a1454d73b7950fcd78d1806d30ed716b396bbfa8a0b2b9d1d87296982/django-otp-sms-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "ad88d67f7024401f7b9834b94e0cecc1", "sha256": "9c19c3a81eda65f47edc1d9d8a03682def4a98af1f5d155b30fb6eb47ffb5673" }, "downloads": -1, "filename": "django-otp-sms-0.3.2.tar.gz", "has_sig": false, "md5_digest": "ad88d67f7024401f7b9834b94e0cecc1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12652, "upload_time": "2017-01-13T19:13:38", "url": "https://files.pythonhosted.org/packages/94/68/1cb4ad7f1d56f994653fc860fd36e52bee0dd1e88cfcc0ab4c132bf59957/django-otp-sms-0.3.2.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "6a4aab58cc7b8546f5c3aec97edd32a7", "sha256": "b80d4301791c58d7307d954bd57154bd18d731e590c14709c04cf504e41d9697" }, "downloads": -1, "filename": "django-otp-sms-0.4.tar.gz", "has_sig": false, "md5_digest": "6a4aab58cc7b8546f5c3aec97edd32a7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16166, "upload_time": "2017-04-14T10:51:36", "url": "https://files.pythonhosted.org/packages/c2/64/dc5bc0db04e447a09fd367ff3f49d232169df32636cac707ebfc0b92fb82/django-otp-sms-0.4.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "12785b4fa9f20d1efaa8200c56c00a78", "sha256": "3cde50b32a62f95cecae9d670e2e532c757428f19bd49792a4010b74bd91cf87" }, "downloads": -1, "filename": "django-otp-sms-0.5.tar.gz", "has_sig": false, "md5_digest": "12785b4fa9f20d1efaa8200c56c00a78", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15198, "upload_time": "2019-09-04T20:16:53", "url": "https://files.pythonhosted.org/packages/c6/4a/9df36dc3bc7ac4a5b2b3cf4cb1835128091df899fa7dd2c0d3f131df798a/django-otp-sms-0.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "12785b4fa9f20d1efaa8200c56c00a78", "sha256": "3cde50b32a62f95cecae9d670e2e532c757428f19bd49792a4010b74bd91cf87" }, "downloads": -1, "filename": "django-otp-sms-0.5.tar.gz", "has_sig": false, "md5_digest": "12785b4fa9f20d1efaa8200c56c00a78", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15198, "upload_time": "2019-09-04T20:16:53", "url": "https://files.pythonhosted.org/packages/c6/4a/9df36dc3bc7ac4a5b2b3cf4cb1835128091df899fa7dd2c0d3f131df798a/django-otp-sms-0.5.tar.gz" } ] }