A complete package for data ingestion into the Switch Automation platform.
Project description
Switch Automation library for Python
This is a package for data ingestion into the Switch Automation software platform.
You can find out more about the platform on Switch Automation
Getting started
Prerequisites
- Python 3.8 or later is required to use this package.
- You must have a Switch Automation user account to use this package.
Install the package
Install the Switch Automation library for Python with pip:
pip install switch_api
History
0.1.11
Changed
- Update to access to
logger
- now available asswitch_api.pipeline.logger()
- Update to function documentation
0.1.10
Changed
- Updated the calculation of min/max date (for timezone conversions) inside the
upsert_device_sensors
function as the previous calculation method will not be supported in a future release of numpy.
Fixed
- Fixed issue with retrieval of tag groups and tags via the functions:
get_sites
get_device_sensors
0.1.9
Added
- New module
platform_insights
In the integration
module:
- New function
get_sites
added to lookup site information (optionally with site-level tags) - New function
get_device_sensors
added to assist with lookup of device/sensor information, optionally including either metadata or tags. - New function
get_tag_groups
added to lookup list of sensor-level tag groups - New function
get_metadata_keys
added to lookup list of device-level metadata keys
Changed
- Modifications to connections to storage accounts.
- Additional parameter
queue_name
added to the following methods of theAutomation
class of thepipeline
module:deploy_on_timer
deploy_as_email_data_feed
deploy_as_upload_data_feed
deploy_as_ftp_data_feed
Fixed
In the pipeline
module:
- Addressed issue with the schema validation for the
upsert_workorders
function
0.1.8
Changed
In the integrations
module:
- Updated to batch upserts by DeviceCode to improve reliability & performance of the
upsert_device_sensors
function
Fixed
In the analytics
module:
- typing issue that caused error in the import of the switch_api package for python 3.8
0.1.7
Added
In the integrations
module:
- Added new function
upsert_workorders
- Provides ability to ingest work order data into the Switch Automation platform.
- Documentation provides details on required & optional fields in the input dataframe and also provides information on allowed values for some fields.
- Two attributes available for function, added to assist with creation of scripts by providing list of required & optional fields:
upsert_workorders.df_required_columns
upsert_workorders.df_optional_columns
- Added new function
get_states_by_country
:- Retrieves the list of states for a given country. Returns a dataframe containing both the state name and abbreviation.
- Added new function
get_equipment_classes
:- Retrieves the list of allowed values for Equipment Class.
- EquipmentClass is a required field for the upsert_device_sensors function
- Retrieves the list of allowed values for Equipment Class.
Changed
In the integrations
module:
- For the
upsert_device_sensors
function:- New attributes added to assist with creation of tasks:
upsert_device_sensors.df_required_columns
- returns list of required columns for the inputdf
- Two new fields required to be present in the dataframe passed to function by parameter
df
:EquipmentClass
EquipmentLabel
- Fix to documentation so required fields in documentation match.
- New attributes added to assist with creation of tasks:
- For the
upsert_sites
function:- New attributes added to assist with creation of tasks:
upsert_sites.df_required_columns
- returns list of required columns for the inputdf
upsert_sites.df_optional_columns
- returns list of required columns for the inputdf
- New attributes added to assist with creation of tasks:
- For the
get_templates
function:- Added functionality to filter by type via new parameter
object_property_type
- Fixed capitalisation issue where first character of column names in dataframe returned by the function had been converted to lowercase.
- Added functionality to filter by type via new parameter
- For the
get_units_of_measure
function:- Added functionality to filter by type via new parameter
object_property_type
- Fixed capitalisation issue where first character of column names in dataframe returned by the function had been converted to lowercase.
- Added functionality to filter by type via new parameter
In the analytics
module:
- Modifications to type hints and documentation for the functions:
get_clone_modules_list
run_clone_modules
- Additional logging added to
run_clone_modules
0.1.6
Added
- Added new function
upsert_timeseries_ds()
to theintegrations
module
Changed
- Additional logging added to
invalid_file_format()
function from theerror_handlers
module.
Removed
- Removed
append_timeseries()
function
0.1.5
Fixed
- bug with
upsert_sites()
function that caused optional columns to be treated as required columns.
Added
Added additional functions to the error_handlers
module:
validate_datetime()
- which checks whether the values of the datetime column(s) of the source file are valid. Any datetime errors identified by this function should be passed to thepost_errors()
function.post_errors()
- used to post errors (apart from those identified by theinvalid_file_format()
function) to the data feed dashboard.
0.1.4
Changed
Added additional required properties to the Abstract Base Classes (ABC): Task, IntegrationTask, AnalyticsTask, LogicModuleTask. These properties are:
- Author
- Version
Added additional parameter query_language
to the switch.integration.get_data()
function. Allowed values for this parameter are:
sql
kql
Removed the name_as_filename
and treat_as_timeseries
parameter from the following functions:
switch.integration.replace_data()
switch.integration.append_data()
switch.integration.upload_data()
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 switch_api-0.1.11-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 08b5170ac3501348977e753d55a328b292648ee7186f41270ea7073905d8745a |
|
MD5 | 7ac05330f9a1f65890db709cc4da3ea1 |
|
BLAKE2b-256 | 964c6115a77871af9dd24458c807b1c950d472a6bc332bcde9ebc170695df958 |