iobeam is a data platform for connected devices.
This is a Python library for sending data to iobeam. For more information on the iobeam, please check our our documentation.
Please note that we are currently invite-only. You will need an invite to generate a valid token and use our APIs. (Sign up here for an invite.)
- Client will reuse a DataStore with the same columns when using
createDataStore
if it exists (rather than create a duplicate)
- Clients will reuse HTTP connections more intelligently
- Fix publishing/build process to include all dependencies
- Work with both base64 and base64url tokens
- Check that series names are not empty strings
- Library checks that device ID is valid with regex
[a-zA-Z0-9:_-]+
instead of error from server
- Error messages from the server are now included in stacktrace output
- Errors during refreshing tokens now raise an
UnknownCodeError
- Rejects reserved column names, case-insensitive
- Add additional reserved column name: 'all'
- Fix error with when manually adding
DataStore
to a client (not recommended)
- Raise
ValueError
ifDataStore
contains reserved column names: time, time_offset
- Remove accidental dependency on pypandoc when installing from sources
registerOrSetId()
now accepts optionaldeviceName
argument
- IMPORTANT: The client now correctly tracks batches it has seen before
so subsequent calls to
send()
do not send nothing. - Documentation fixes
- Adding data should now be done via the new
iobeam.createDataStore(columns)
method, which allows you to track multiple streams of data in one object. - Internally, old methods involving
DataPoint
s andDataSerie
s have been converted to useDataStore
s. - Additional documentation provided here.
- Automatic refresh of project tokens when they are expired. It is recommended that you update as soon as possible to avoid breakage.
- bugfix: device ids are no longer allowed to be non-strings when registering
- IMPORTANT: previously sent data points were being kept and sent on subsequent sends, this has been fixed
- Query assumes time values given in to/from are same unit as when it is initialized
Timestamp
: changedtype
param name tounit
in constructor- utils: Adds a check for whether this is python2 or 3
- New Error for duplicate ids
- New
registerOrSetId()
added toiobeam.ClientBuilder
to allow you to register a name, or if it already exists, set the client to use that id.
- Fix missing return for
iobeam.makeQuery()
- Use persistent connections for HTTP to improve performance
- Rename
iobeam.MakeQuery()
toiobeam.makeQuery()