Package to integrate with Flume Sensor
Project description
PyFlume
Authenticates to Flume API, returns a list of devices and allows you to pull the latest sensor results over a period of time.
Configuration
You can find your Client ID and Client Secret under "API Access" on the settings page.
Configuration Variables
username:
description: Your flume user id.
required: true
type: string
password:
description: Your flume password.
required: true
type: string
client_id:
description: Your flume Client ID.
required: true
type: string
client_secret:
description: Your flume Client Secret.
required: true
type: string
Examples
import pyflume
from datetime import timedelta
from requests import Session
import logging
logging.basicConfig(filename="flume.log",level=logging.DEBUG)
KEY_DEVICE_TYPE = "type"
KEY_DEVICE_ID = "id"
FLUME_TYPE_SENSOR = 2
username="<username>"
password="<password>"
client_id="<client_id>"
client_secret="<client_secret>"
SCAN_INTERVAL = timedelta(minutes=60)
auth = pyflume.FlumeAuth(
username, password, client_id, client_secret, http_session=Session()
)
flume_devices = pyflume.FlumeDeviceList(auth)
devices = flume_devices.get_devices()
print("DEVICE LIST")
print(devices)
print("DEVICE ID")
for device in flume_devices.device_list:
if device[KEY_DEVICE_TYPE] == FLUME_TYPE_SENSOR:
print(device[KEY_DEVICE_ID])
device_id = device[KEY_DEVICE_ID]
device_timezone = device['location']['tz']
flume = pyflume.FlumeData(
auth,
device_id,
device_timezone,
SCAN_INTERVAL,
http_session=Session(),
)
flume_notifications = pyflume.FlumeNotificationList(auth, read="true")
print("NOTIFICATION LIST")
print(flume_notifications.notification_list)
## Force Update
flume.update_force()
print("AUTH HEADER")
print(auth.authorization_header)
print("QUERY PAYLOAD")
print(pyflume._generate_api_query_payload(SCAN_INTERVAL, device_timezone))
print("FLUME VALUES")
print(flume.values)
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
PyFlume-0.6.2.tar.gz
(7.4 kB
view details)
Built Distribution
File details
Details for the file PyFlume-0.6.2.tar.gz
.
File metadata
- Download URL: PyFlume-0.6.2.tar.gz
- Upload date:
- Size: 7.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f7fb892c8d428e1ee5c640f1890f3cf71a3614a9dd3bcf68ba80e1ec845f2e0d |
|
MD5 | 4d1b549b0960689914d39bb8e0f2f7e3 |
|
BLAKE2b-256 | 9cfd8678337f382c7ed94797b3f07c31c2ac47d5c5c96b710450497f8ce38cf3 |
File details
Details for the file PyFlume-0.6.2-py3-none-any.whl
.
File metadata
- Download URL: PyFlume-0.6.2-py3-none-any.whl
- Upload date:
- Size: 8.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a24cba9316f802868ed90db67e04d31b92af58093aeceb9da61ad3964194a2ca |
|
MD5 | 8ee6947ed56e44f1ed7cd149cb9138fb |
|
BLAKE2b-256 | 1bdd08929b43f5dea05338f8206032c02180e27ab3b1b45fe6c5aaee971ea1bf |