smartapp-sdk


Namesmartapp-sdk JSON
Version 0.6.7 PyPI version JSON
download
home_pagehttps://pypi.org/project/smartapp-sdk/
SummaryFramework to build a webhook-based SmartThings SmartApp
upload_time2024-02-26 03:46:43
maintainer
docs_urlNone
authorKenneth J. Pronovici
requires_python>=3.9,<4
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": "",
    "docs_url": null,
    "requires_python": ">=3.9,<4",
    "maintainer_email": "",
    "keywords": "",
    "author": "Kenneth J. Pronovici",
    "author_email": "pronovic@ieee.org",
    "download_url": "https://files.pythonhosted.org/packages/2b/d7/4aeabd2a828e63b09588a4a247889992f4f8f6007e507839aeb09b0b8e06/smartapp_sdk-0.6.7.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.7",
    "project_urls": {
        "Homepage": "https://pypi.org/project/smartapp-sdk/",
        "Repository": "https://github.com/pronovic/smartapp-sdk"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c00b2221cf39312a4b51f2ee08a917a323a9b9a66b977f1e1d032f27646ce935",
                "md5": "7eb1912d9cee13a983735deb8e35a952",
                "sha256": "020e5bfb4d110a657579c0713702652d42b1ebba9797687fac5163cc35aa79fa"
            },
            "downloads": -1,
            "filename": "smartapp_sdk-0.6.7-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "7eb1912d9cee13a983735deb8e35a952",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9,<4",
            "size": 22833,
            "upload_time": "2024-02-26T03:46:42",
            "upload_time_iso_8601": "2024-02-26T03:46:42.119481Z",
            "url": "https://files.pythonhosted.org/packages/c0/0b/2221cf39312a4b51f2ee08a917a323a9b9a66b977f1e1d032f27646ce935/smartapp_sdk-0.6.7-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2bd74aeabd2a828e63b09588a4a247889992f4f8f6007e507839aeb09b0b8e06",
                "md5": "d3485eb70828e6ad0a70803db9c5cf3a",
                "sha256": "c261e0874ad7d593b07d3c3c172b10fa4da1f2f78ee6e1eb4c09edc04c1c519b"
            },
            "downloads": -1,
            "filename": "smartapp_sdk-0.6.7.tar.gz",
            "has_sig": false,
            "md5_digest": "d3485eb70828e6ad0a70803db9c5cf3a",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9,<4",
            "size": 53006,
            "upload_time": "2024-02-26T03:46:43",
            "upload_time_iso_8601": "2024-02-26T03:46:43.992450Z",
            "url": "https://files.pythonhosted.org/packages/2b/d7/4aeabd2a828e63b09588a4a247889992f4f8f6007e507839aeb09b0b8e06/smartapp_sdk-0.6.7.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-02-26 03:46:43",
    "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.19269s