smartapp-sdk


Namesmartapp-sdk JSON
Version 0.6.8 PyPI version JSON
download
home_pagehttps://pypi.org/project/smartapp-sdk/
SummaryFramework to build a webhook-based SmartThings SmartApp
upload_time2024-10-15 16:23:05
maintainerNone
docs_urlNone
authorKenneth J. Pronovici
requires_python<4,>=3.10
licenseApache-2.0
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            # SmartApp SDK

[![pypi](https://img.shields.io/pypi/v/smartapp-sdk.svg)](https://pypi.org/project/smartapp-sdk/)
[![license](https://img.shields.io/pypi/l/smartapp-sdk.svg)](https://github.com/pronovic/smartapp-sdk/blob/master/LICENSE)
[![wheel](https://img.shields.io/pypi/wheel/smartapp-sdk.svg)](https://pypi.org/project/smartapp-sdk/)
[![python](https://img.shields.io/pypi/pyversions/smartapp-sdk.svg)](https://pypi.org/project/smartapp-sdk/)
[![Test Suite](https://github.com/pronovic/smartapp-sdk/workflows/Test%20Suite/badge.svg)](https://github.com/pronovic/smartapp-sdk/actions?query=workflow%3A%22Test+Suite%22)
[![docs](https://readthedocs.org/projects/smartapp-sdk/badge/?version=stable&style=flat)](https://smartapp-sdk.readthedocs.io/en/stable/)
[![coverage](https://coveralls.io/repos/github/pronovic/smartapp-sdk/badge.svg?branch=master)](https://coveralls.io/github/pronovic/smartapp-sdk?branch=master)
[![Poetry](https://img.shields.io/endpoint?url=https://python-poetry.org/badge/v0.json)](https://python-poetry.org/)

smartapp-sdk is a Python library to build a [webhook-based SmartApp](https://developer-preview.smartthings.com/docs/connected-services/smartapp-basics/) for the [SmartThings platform](https://www.smartthings.com/).

The SDK is intended to be easy to use no matter how you choose to structure your code, whether that's a traditional Python webapp (such as FastAPI on Uvicorn) or a serverless application (such as AWS Lambda).

The SDK handles all the mechanics of the [webhook lifecycle interface](https://developer-preview.smartthings.com/docs/connected-services/lifecycles/) on your behalf.  You just implement a single endpoint to accept the SmartApp webhook requests, and a single callback class where you define specialized behavior for the webhook events.  A clean [attrs](https://www.attrs.org/en/stable/) object interface is exposed for use by your callback.

SDK documentation is found at [smartapp-sdk.readthedocs.io](https://smartapp-sdk.readthedocs.io/en/stable/).  Look there for installation instructions, the class model documentation, and example code. The [smartapp-sensortrack](https://github.com/pronovic/smartapp-sensortrack) repo on GitHub is also a good example of how to use this SDK to build a traditional Python webapp.

            

Raw data

            {
    "_id": null,
    "home_page": "https://pypi.org/project/smartapp-sdk/",
    "name": "smartapp-sdk",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4,>=3.10",
    "maintainer_email": null,
    "keywords": null,
    "author": "Kenneth J. Pronovici",
    "author_email": "pronovic@ieee.org",
    "download_url": "https://files.pythonhosted.org/packages/73/d9/9e0cf37f62b5d83543f436a414e437ebb205735ccdaa4d57bd54440b39b0/smartapp_sdk-0.6.8.tar.gz",
    "platform": null,
    "description": "# SmartApp SDK\n\n[![pypi](https://img.shields.io/pypi/v/smartapp-sdk.svg)](https://pypi.org/project/smartapp-sdk/)\n[![license](https://img.shields.io/pypi/l/smartapp-sdk.svg)](https://github.com/pronovic/smartapp-sdk/blob/master/LICENSE)\n[![wheel](https://img.shields.io/pypi/wheel/smartapp-sdk.svg)](https://pypi.org/project/smartapp-sdk/)\n[![python](https://img.shields.io/pypi/pyversions/smartapp-sdk.svg)](https://pypi.org/project/smartapp-sdk/)\n[![Test Suite](https://github.com/pronovic/smartapp-sdk/workflows/Test%20Suite/badge.svg)](https://github.com/pronovic/smartapp-sdk/actions?query=workflow%3A%22Test+Suite%22)\n[![docs](https://readthedocs.org/projects/smartapp-sdk/badge/?version=stable&style=flat)](https://smartapp-sdk.readthedocs.io/en/stable/)\n[![coverage](https://coveralls.io/repos/github/pronovic/smartapp-sdk/badge.svg?branch=master)](https://coveralls.io/github/pronovic/smartapp-sdk?branch=master)\n[![Poetry](https://img.shields.io/endpoint?url=https://python-poetry.org/badge/v0.json)](https://python-poetry.org/)\n\nsmartapp-sdk is a Python library to build a [webhook-based SmartApp](https://developer-preview.smartthings.com/docs/connected-services/smartapp-basics/) for the [SmartThings platform](https://www.smartthings.com/).\n\nThe SDK is intended to be easy to use no matter how you choose to structure your code, whether that's a traditional Python webapp (such as FastAPI on Uvicorn) or a serverless application (such as AWS Lambda).\n\nThe SDK handles all the mechanics of the [webhook lifecycle interface](https://developer-preview.smartthings.com/docs/connected-services/lifecycles/) on your behalf.  You just implement a single endpoint to accept the SmartApp webhook requests, and a single callback class where you define specialized behavior for the webhook events.  A clean [attrs](https://www.attrs.org/en/stable/) object interface is exposed for use by your callback.\n\nSDK documentation is found at [smartapp-sdk.readthedocs.io](https://smartapp-sdk.readthedocs.io/en/stable/).  Look there for installation instructions, the class model documentation, and example code. The [smartapp-sensortrack](https://github.com/pronovic/smartapp-sensortrack) repo on GitHub is also a good example of how to use this SDK to build a traditional Python webapp.\n",
    "bugtrack_url": null,
    "license": "Apache-2.0",
    "summary": "Framework to build a webhook-based SmartThings SmartApp",
    "version": "0.6.8",
    "project_urls": {
        "Homepage": "https://pypi.org/project/smartapp-sdk/",
        "Repository": "https://github.com/pronovic/smartapp-sdk"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "25955d456fbf2f86e9dc2d340c3a17593783fe484e410de2ff6478af74700f29",
                "md5": "c585e487e0889dfb41d150cac9720deb",
                "sha256": "d9a2d6e5f586c8a785447a260be009289817564f45285f0b589c3363640384d0"
            },
            "downloads": -1,
            "filename": "smartapp_sdk-0.6.8-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "c585e487e0889dfb41d150cac9720deb",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4,>=3.10",
            "size": 22853,
            "upload_time": "2024-10-15T16:23:04",
            "upload_time_iso_8601": "2024-10-15T16:23:04.447332Z",
            "url": "https://files.pythonhosted.org/packages/25/95/5d456fbf2f86e9dc2d340c3a17593783fe484e410de2ff6478af74700f29/smartapp_sdk-0.6.8-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "73d99e0cf37f62b5d83543f436a414e437ebb205735ccdaa4d57bd54440b39b0",
                "md5": "f424d0bb165ef15fed0b6e7e90d8f404",
                "sha256": "fe2512fa2c913c2e607a9eeaf765d21b4e0a7f318ab9577a75da2aa34298b5d3"
            },
            "downloads": -1,
            "filename": "smartapp_sdk-0.6.8.tar.gz",
            "has_sig": false,
            "md5_digest": "f424d0bb165ef15fed0b6e7e90d8f404",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4,>=3.10",
            "size": 53178,
            "upload_time": "2024-10-15T16:23:05",
            "upload_time_iso_8601": "2024-10-15T16:23:05.751413Z",
            "url": "https://files.pythonhosted.org/packages/73/d9/9e0cf37f62b5d83543f436a414e437ebb205735ccdaa4d57bd54440b39b0/smartapp_sdk-0.6.8.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-15 16:23:05",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "pronovic",
    "github_project": "smartapp-sdk",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "lcname": "smartapp-sdk"
}
        
Elapsed time: 0.47914s