{ "info": { "author": "Lennart Grahl", "author_email": "lennart.grahl@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python :: 3 :: Only", "Topic :: Communications :: Chat", "Topic :: Internet :: WWW/HTTP", "Topic :: Security", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: System :: Logging" ], "description": "Threema Gateway API\n===================\n\n|Travis| |codecov|\n\n**threema-gateway** is a Python 3 module for the Threema gateway service.\nThis API can be used to send and receive text messages to and from any Threema\nuser.\n\nNote\n****\n\nOn machines where Python 3 is not the default Python runtime, you should\nuse ``pip3`` instead of ``pip``.\n\nPrerequisites\n*************\n\n.. code-block:: bash\n\n $ sudo apt-get install python3 python3-pip\n\nWe recommend using `venv`_ to create an isolated Python environment:\n\n.. code-block:: bash\n\n $ pyvenv venv\n\nYou can switch into the created virtual environment *venv* by running\nthis command:\n\n.. code-block:: bash\n\n $ source venv/bin/activate\n\nWhile the virtual environment is active, all packages installed using\n``pip`` will be installed into this environment.\n\nTo deactivate the virtual environment, just run:\n\n.. code-block:: bash\n\n $ deactivate\n\nIf you want easier handling of your virtualenvs, you might also want to\ntake a look at `virtualenvwrapper`_.\n\nInstallation\n------------\n\nIf you are using a virtual environment, activate it first.\n\nInstall the module by running:\n\n.. code-block:: bash\n\n $ pip install threema.gateway\n\nThe dependency ``libnacl`` will be installed automatically. However, you\nmay need to install `libsodium`_ for ``libnacl`` to work.\n\nCommand Line Usage\n******************\n\nThe script ``threema-gateway`` provides a command line interface for\nthe Threema gateway. Run the following command to see usage information:\n\n.. code-block:: bash\n\n $ threema-gateway --help\n\nFeature Levels\n**************\n\n+---------+--------+----------------+---------+--------+-----------+\n| Level | Text | Capabilities | Image | File | Credits |\n+=========+========+================+=========+========+===========+\n| 1 | X | | | | |\n+---------+--------+----------------+---------+--------+-----------+\n| 2 | X | X | X | X | |\n+---------+--------+----------------+---------+--------+-----------+\n| 3 | X | X | X | X | X |\n+---------+--------+----------------+---------+--------+-----------+\n\nYou can see the implemented feature level by invoking the following\ncommand:\n\n.. code-block:: bash\n\n $ threema-gateway version\n\nCallback Server\n---------------\n\nThe callback server can be used to receive messages. The demo script\n``threema-callback-server`` prints out received message on the command\nline. Run the following command to see usage information.\n\n.. code-block:: bash\n\n $ threema-callback-server --help\n\nThe script resides `here `_.\n\nContributing\n************\n\nIf you want to contribute to this project, you should install the\noptional ``dev`` requirements of the project in an editable environment:\n\n.. code-block:: bash\n\n $ git clone https://github.com/lgrahl/threema-msgapi-sdk-python.git\n $ cd threema-msgapi-sdk-python\n $ pip install -e .[dev]\n\nBefore creating a pull request, it is recommended to run the following\ncommands to check for code style violations (``flake8``), optimise\nimports (``isort``) and run the project's tests:\n\n.. code-block:: bash\n\n $ flake8 .\n $ isort -rc .\n $ py.test\n\nYou should also run the type checker that might catch some additional bugs:\n\n.. code-block:: bash\n\n $ mypy .\n\nReporting Security Issues\n*************************\n\nPlease report security issues directly to one or both of the following\ncontacts:\n\n- Danilo Bargen\n\n - Email: mail@dbrgn.ch\n - Threema: EBEP4UCA\n - GPG: `EA456E8BAF0109429583EED83578F667F2F3A5FA`_\n\n- Lennart Grahl\n\n - Email: lennart.grahl@gmail.com\n - Threema: MSFVEW6C\n - GPG: `3FDB14868A2B36D638F3C495F98FBED10482ABA6`_\n\n.. _asyncio: https://docs.python.org/3/library/asyncio.html\n.. _venv: https://docs.python.org/3/library/venv.html\n.. _virtualenvwrapper: https://virtualenvwrapper.readthedocs.io/\n.. _libsodium: https://download.libsodium.org/doc/installation/index.html\n\n.. |Travis| image:: https://travis-ci.org/lgrahl/threema-msgapi-sdk-python.svg?branch=master\n :target: https://travis-ci.org/lgrahl/threema-msgapi-sdk-python\n.. |codecov| image:: https://codecov.io/gh/lgrahl/threema-msgapi-sdk-python/branch/master/graph/badge.svg\n :target: https://codecov.io/gh/lgrahl/threema-msgapi-sdk-python\n.. |PyPI| image:: https://badge.fury.io/py/threema.gateway.svg\n :target: https://badge.fury.io/py/threema.gateway\n.. _EA456E8BAF0109429583EED83578F667F2F3A5FA: https://keybase.io/dbrgn\n.. _3FDB14868A2B36D638F3C495F98FBED10482ABA6: https://keybase.io/lgrahl\n\nChangelog\n*********\n\n`3.0.6`_ (2017-09-22)\n---------------------\n\n- Migrate to aiohttp2\n\n`3.0.5`_ (2017-07-25)\n---------------------\n\n- Fix to handle new `libnacl `_\n exceptions.\n\n`3.0.4`_ (2017-05-23)\n---------------------\n\n- Fix CLI\n\n`3.0.2`_ (2017-05-12)\n---------------------\n\n- Initial publication on PyPI\n\n.. _3.0.6: https://github.com/lgrahl/threema-msgapi-sdk-python/compare/v3.0.5...v3.0.6\n.. _3.0.5: https://github.com/lgrahl/threema-msgapi-sdk-python/compare/v3.0.4...v3.0.5\n.. _3.0.4: https://github.com/lgrahl/threema-msgapi-sdk-python/compare/v3.0.2...v3.0.4\n.. _3.0.2: https://github.com/lgrahl/threema-msgapi-sdk-python/compare/e982c74cbe564c76cc58322d3154916ee7f6863b...v3.0.2\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gateway.threema.ch/", "keywords": "threema gateway service sdk api", "license": "MIT License", "maintainer": "", "maintainer_email": "", "name": "threema.gateway", "package_url": "https://pypi.org/project/threema.gateway/", "platform": "", "project_url": "https://pypi.org/project/threema.gateway/", "project_urls": { "Homepage": "https://gateway.threema.ch/" }, "release_url": "https://pypi.org/project/threema.gateway/3.0.6/", "requires_dist": [ "py-lru-cache (>=0.1.4,<0.2)", "logbook (<2,>=1.1.0)", "libnacl (<2,>=1.5.2)", "click (>=6.7,<7)", "aiohttp (>=2.2.5,<3)", "wrapt (<2,>=1.10.10)", "asyncio (==3.4.3); python_version<=\"3.4\"", "pytest-asyncio (==0.5.0); python_version<=\"3.4\"", "typing (>=3.6.1,<3.7); python_version<=\"3.5\"", "pytest (>=3.1.3); extra == 'dev'", "pytest-asyncio (>=0.6.0); extra == 'dev'", "pytest-cov (>=2.5.1); extra == 'dev'", "flake8 (>=3.3.0); extra == 'dev'", "isort (>=4.2.15); extra == 'dev'", "collective.checkdocs (>=0.2); extra == 'dev'", "Pygments (>=2.2.0); extra == 'dev'", "mypy (>=0.521); extra == 'dev'", "uvloop (<2,>=0.8.0); extra == 'uvloop'" ], "requires_python": "", "summary": "An API for the Threema gateway service to send and receive messages including text, images, files and delivery reports.", "version": "3.0.6" }, "last_serial": 3193148, "releases": { "3.0.2": [ { "comment_text": "", "digests": { "md5": "e5299d181a6f0c6aa3f3690d237d32b0", "sha256": "ab95427eeee6bcfb7fd43f91b4e2fd41e078b231f45115a0bca3d1c30d7c065e" }, "downloads": -1, "filename": "threema.gateway-3.0.2-py34.py35.py36-none-any.whl", "has_sig": true, "md5_digest": "e5299d181a6f0c6aa3f3690d237d32b0", "packagetype": "bdist_wheel", "python_version": "py34.py35.py36", "requires_python": null, "size": 28749, "upload_time": "2017-05-12T21:39:28", "url": "https://files.pythonhosted.org/packages/03/3d/3651e33bfe89129cbc049cfcb2fb04a3462d22c77042ef39b181ef794e3e/threema.gateway-3.0.2-py34.py35.py36-none-any.whl" }, { "comment_text": "", "digests": { "md5": "17d5f6801201845a7471d5c4c98f456c", "sha256": "9a8b23b54e865dc1a523c30a44674cb419d9cec4e2335a920c183966e9cbd0f0" }, "downloads": -1, "filename": "threema.gateway-3.0.2.tar.gz", "has_sig": true, "md5_digest": "17d5f6801201845a7471d5c4c98f456c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 42488, "upload_time": "2017-05-12T21:39:30", "url": "https://files.pythonhosted.org/packages/23/61/2dcb04f2923698391cc278501b587af76ce0f99f480a98dbd333498b6828/threema.gateway-3.0.2.tar.gz" } ], "3.0.4": [ { "comment_text": "", "digests": { "md5": "4352ff0e229c160642d5d1a1d1226dcf", "sha256": "614b1b4497bd8dd18f629321b8ad8bd32c4d656827c454e09738c4d9bb61aabf" }, "downloads": -1, "filename": "threema.gateway-3.0.4-py34.py35.py36-none-any.whl", "has_sig": true, "md5_digest": "4352ff0e229c160642d5d1a1d1226dcf", "packagetype": "bdist_wheel", "python_version": "py34.py35.py36", "requires_python": null, "size": 35041, "upload_time": "2017-05-23T19:45:17", "url": "https://files.pythonhosted.org/packages/68/54/4ab6c64d5e41f2a8136d14e42ddd529f30e1b2424f2c6b364109c3e8d18c/threema.gateway-3.0.4-py34.py35.py36-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7ddab248177f62b73bbf9fa987688c6b", "sha256": "bf361b7cc82baf751a4c09edbba4728e1fd6c93c045fb69f071fc1064ec40009" }, "downloads": -1, "filename": "threema.gateway-3.0.4.tar.gz", "has_sig": true, "md5_digest": "7ddab248177f62b73bbf9fa987688c6b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 46703, "upload_time": "2017-05-23T19:45:19", "url": "https://files.pythonhosted.org/packages/0f/28/ec77d03ed5c7003e7083ca2339aa243d89606699ee77973240ca6e2d532e/threema.gateway-3.0.4.tar.gz" } ], "3.0.5": [ { "comment_text": "", "digests": { "md5": "f0248c85ee72c38aeafa1da1a472c5e7", "sha256": "b20772f191dfd3ce44b56a0fa800abeab77275219516973c9bd0a8f75cc831ca" }, "downloads": -1, "filename": "threema.gateway-3.0.5-py34.py35.py36-none-any.whl", "has_sig": true, "md5_digest": "f0248c85ee72c38aeafa1da1a472c5e7", "packagetype": "bdist_wheel", "python_version": "py34.py35.py36", "requires_python": null, "size": 35223, "upload_time": "2017-07-25T17:04:24", "url": "https://files.pythonhosted.org/packages/69/1d/a78aac5e58b661342c2f48ce6281162ca7948c6fc00d8ccb93ec26741a85/threema.gateway-3.0.5-py34.py35.py36-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5f7f726f1281316ad6c8bb70c2f1317b", "sha256": "f6c14ce031372bbb0dfb2c1c33920f1ea61f01906d8e7b13fd7fa73ec2fde789" }, "downloads": -1, "filename": "threema.gateway-3.0.5.tar.gz", "has_sig": true, "md5_digest": "5f7f726f1281316ad6c8bb70c2f1317b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47376, "upload_time": "2017-07-25T17:04:26", "url": "https://files.pythonhosted.org/packages/54/93/9a2adba21f3b87304699c15f6b37fc49142b333d5ca91958c085343628e8/threema.gateway-3.0.5.tar.gz" } ], "3.0.6": [ { "comment_text": "", "digests": { "md5": "5d4de9ddb174eff2c79974c7018d5ff4", "sha256": "1454cef64221d96cfc51f7583f33aa3b753adcd15d4bbcf1ef51e566c6adc234" }, "downloads": -1, "filename": "threema.gateway-3.0.6-py34.py35.py36-none-any.whl", "has_sig": true, "md5_digest": "5d4de9ddb174eff2c79974c7018d5ff4", "packagetype": "bdist_wheel", "python_version": "py34.py35.py36", "requires_python": null, "size": 35412, "upload_time": "2017-09-21T22:53:10", "url": "https://files.pythonhosted.org/packages/6d/3f/ef7179d33dd65e799edd016fce8a91645408ab86cf714ef8a9bc4dbd7d98/threema.gateway-3.0.6-py34.py35.py36-none-any.whl" }, { "comment_text": "", "digests": { "md5": "16c6d24b7d0a704b0c1faa502a42e39d", "sha256": "df5dd72343ae479c878ae30291d529ff76b812ee34fd6211dcaef5e354ce58a7" }, "downloads": -1, "filename": "threema.gateway-3.0.6.tar.gz", "has_sig": true, "md5_digest": "16c6d24b7d0a704b0c1faa502a42e39d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47595, "upload_time": "2017-09-21T22:53:12", "url": "https://files.pythonhosted.org/packages/90/34/24a4c79491d0e9e23d8caa19790cdb5b8da592c47a42e0ece7854b2de01c/threema.gateway-3.0.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "5d4de9ddb174eff2c79974c7018d5ff4", "sha256": "1454cef64221d96cfc51f7583f33aa3b753adcd15d4bbcf1ef51e566c6adc234" }, "downloads": -1, "filename": "threema.gateway-3.0.6-py34.py35.py36-none-any.whl", "has_sig": true, "md5_digest": "5d4de9ddb174eff2c79974c7018d5ff4", "packagetype": "bdist_wheel", "python_version": "py34.py35.py36", "requires_python": null, "size": 35412, "upload_time": "2017-09-21T22:53:10", "url": "https://files.pythonhosted.org/packages/6d/3f/ef7179d33dd65e799edd016fce8a91645408ab86cf714ef8a9bc4dbd7d98/threema.gateway-3.0.6-py34.py35.py36-none-any.whl" }, { "comment_text": "", "digests": { "md5": "16c6d24b7d0a704b0c1faa502a42e39d", "sha256": "df5dd72343ae479c878ae30291d529ff76b812ee34fd6211dcaef5e354ce58a7" }, "downloads": -1, "filename": "threema.gateway-3.0.6.tar.gz", "has_sig": true, "md5_digest": "16c6d24b7d0a704b0c1faa502a42e39d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47595, "upload_time": "2017-09-21T22:53:12", "url": "https://files.pythonhosted.org/packages/90/34/24a4c79491d0e9e23d8caa19790cdb5b8da592c47a42e0ece7854b2de01c/threema.gateway-3.0.6.tar.gz" } ] }