Python 3 library for connecting to WolkAbout IoT Platform
Project description
██╗ ██╗ ██████╗ ██╗ ██╗ ██╗ ██████╗ ██████╗ ███╗ ██╗███╗ ██╗███████╗ ██████╗████████╗
██║ ██║██╔═══██╗██║ ██║ ██╔╝██╔════╝██╔═══██╗████╗ ██║████╗ ██║██╔════╝██╔════╝╚══██╔══╝
██║ █╗ ██║██║ ██║██║ █████╔╝ ██║ ██║ ██║██╔██╗ ██║██╔██╗ ██║█████╗ ██║ ██║
██║███╗██║██║ ██║██║ ██╔═██╗ ██║ ██║ ██║██║╚██╗██║██║╚██╗██║██╔══╝ ██║ ██║
╚███╔███╔╝╚██████╔╝███████╗██║ ██╗╚██████╗╚██████╔╝██║ ╚████║██║ ╚████║███████╗╚██████╗ ██║
╚══╝╚══╝ ╚═════╝ ╚══════╝╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═══╝╚═╝ ╚═══╝╚══════╝ ╚═════╝ ╚═╝
██████╗ ██╗ ██╗████████╗██╗ ██╗ ██████╗ ███╗ ██╗
██╔══██╗╚██╗ ██╔╝╚══██╔══╝██║ ██║██╔═══██╗████╗ ██║
█████╗██████╔╝ ╚████╔╝ ██║ ███████║██║ ██║██╔██╗ ██║
╚════╝██╔═══╝ ╚██╔╝ ██║ ██╔══██║██║ ██║██║╚██╗██║
██║ ██║ ██║ ██║ ██║╚██████╔╝██║ ╚████║
╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═══╝
WolkAbout Python Connector library for connecting devices to WolkAbout IoT Platform.
Supported device communication protocols:
- WolkAbout Protocol
Prerequisite
- Python 3.7+
Installation
There are two ways to install this package
Installing with pip
python3 -m pip install wolk-connect
Installing from source
Clone this repository from the command line using:
git clone https://github.com/Wolkabout/WolkConnect-Python.git
Install dependencies by invoking python3 -m pip install -r requirements.txt
Install the package by running:
python3 setup.py install
Example Usage
Establishing connection with WolkAbout IoT platform
Create a device on WolkAbout IoT platform by using the provided Simple example device type. This template fits main.py and demonstrates the sending of a temperature sensor reading.
import wolk
# Setup the device credentials which you received
# when the device was created on the platform
device = wolk.Device(key="device_key", password="some_password")
# Pass your device and server information
# defaults to secure connection to Demo instance - comment out host, port and ca_cert
wolk_device = wolk.WolkConnect(
device, host="api-demo.wolkabout.com", port=8883, ca_cert="path/to/ca.crt"
)
wolk_device.connect()
Adding sensor readings
wolk_device.add_sensor_reading("T", 26.93)
# Multi-value sensor reading
wolk_device.add_sensor_reading("ACL", (4, 2, 0))
or multiple sensors at once with add_sensor_readings
:
wolk_device.add_sensor_readings({"T": 26.93, "ACL": (4, 2, 0)})
Optionally pass a timestamp
as round(time.time()) * 1000
.
This is useful for maintaining data history when readings are not published immediately after adding them to storage.
If timestamp
is not provided, the library will assign a timestamp before placing the reading into storage.
Data publish strategy
Stored sensor readings are pushed to WolkAbout IoT platform on demand by calling:
wolk_device.publish()
Disconnecting from the platform
wolk_device.disconnect()
Additional functionality
WolkConnect-Python library has integrated additional features which can perform full WolkAbout IoT platform potential. Read more about full feature set example HERE.
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
Hashes for wolk_connect-4.1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d44c69b742b77b1d586f23bd2a8016949287d708e937561a0fabd0f78db05683 |
|
MD5 | ae63829c8123072f73526fce4d1b7fac |
|
BLAKE2b-256 | 3ae0bbd131eac1427dd3c7eeaba9a3c3464f781c4cd831272fa580487e55f1d6 |