A library to help create apps for the voice assistant Snips
Project description
SnipsKit is a Python library with some helper tools to work with the voice assistant Snips. This can be used by Snips apps or other programs that work with Snips.
With SnipsKit, you can create Snips apps without having to write much boilerplate code. The simplest example of an app using SnipsKit is the following:
from snipskit.hermes.apps import HermesSnipsApp
from snipskit.hermes.decorators import intent
class SimpleSnipsApp(HermesSnipsApp):
@intent('User:ExampleIntent')
def example_intent(self, hermes, intent_message):
hermes.publish_end_session(intent_message.session_id,
"I received ExampleIntent")
if __name__ == "__main__":
SimpleSnipsApp()
And that’s it! No need to connect to an MQTT broker, no need to register callbacks, because the HermesSnipsApp class:
reads the MQTT connection settings from the snips.toml file;
connects to the MQTT broker;
registers the method with the intent decorator as a callback method for the intent ‘User:ExampleIntent’;
starts the event loop.
SnipsKit also has decorators for other events, and there’s also a class MQTTSnipsApp to listen to MQTT topics directly. Moreover, SnipsKit also gives the app easy access to:
the Snips configuration;
the Hermes or MQTT connection object;
the assistant’s configuration;
the app’s configuration.
System requirements
SnipsKit is a Python 3-only library, requiring Python 3.5 or higher. It’s currently tested on Python 3.5, 3.6 and 3.7.
Installation
SnipsKit is packaged on PyPI. The latest stable version with all functionality can be installed with the following command:
pip3 install snipskit[hermes,mqtt]
Documentation
The full documentation can be found on Read the Docs, for both the stable version and the development version.
Copyright
This library is provided by Koen Vervloesem as open source software. See LICENSE for more information.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file snipskit-0.6.0.tar.gz
.
File metadata
- Download URL: snipskit-0.6.0.tar.gz
- Upload date:
- Size: 13.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2463620dc23716f867899985125cd7cf2fc64bba107f190dd18df363fb0ec1ad |
|
MD5 | 503d6e31022703e367370520fd7cf505 |
|
BLAKE2b-256 | 6b0586bbd4b9bf42a4a892f56419f68a16c32649b96be82c1e7741e118cb926b |
File details
Details for the file snipskit-0.6.0-py3-none-any.whl
.
File metadata
- Download URL: snipskit-0.6.0-py3-none-any.whl
- Upload date:
- Size: 23.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2511c7f9b344904e250f2ab75bb0ea041160fa1912f29742a6d11c009c373776 |
|
MD5 | b30fb578cb5d6dddc1422b14686afd10 |
|
BLAKE2b-256 | ebc2219c15d42dab0f72510760bfefeeaf94c4384614598ecab0f8eb66b61dff |