Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

A Python package for automating VideoIPath configuration workflows.

PyPI version GitHub Workflow Status Python Versions License: AGPL v3

Introduction

The VideoIPath Automation Tool is a Python package designed to simplify interactions with the VideoIPath API. Its focus is on automating configuration tasks and bulk operations on VideoIPath servers in a user-friendly and efficient way. The package hides the complexity of the API behind a clean, high-level interface – from system-wide Settings, through device onboarding in Inventory, to network modeling in Topology and Inspect.

Its data models provide robust validation and easy handling, complemented by comprehensive logging.

Quick Start Guide

Prerequisites

  • Access to a VideoIPath Server (version 2023.4.2 or higher, LTS versions recommended)
  • Username and Password for a user account with API access
  • Python 3.11 or higher

Installation

The package is available via the Python Package Index (PyPI) and can be installed directly using pip.

Install the package using pip

pip install videoipath-automation-tool

For production use, it is recommended to pin a minor version, as minor releases may contain breaking changes until 1.0:

pip install "videoipath-automation-tool~=0.11.0"

Note: By default, the latest Long-Term Support (LTS) version (currently 2024.4.30) is used for schema validation and IntelliSense.

To switch to a specific version, see the Driver Versioning Guide

A Simple Example: Adding a Device to the Inventory

# Import the `VideoIPathApp` class from the videoipath_automation_tool package
from videoipath_automation_tool import VideoIPathApp

# Initialize the VideoIPathApp
app = VideoIPathApp(server_address="10.1.100.10", username="api-user", password="veryStrongPassword", use_https=False, verify_ssl_cert=False)

# Create a device object with NMOS Multidevice driver
staged_device = app.inventory.create_device(driver="com.nevion.NMOS_multidevice-0.1.0")

# Set the device label, description, address, nmos port and disable 'Use indices in IDs' option
staged_device.configuration.label = "Media-Node-1"
staged_device.configuration.description = "Hello World"
staged_device.configuration.address = "10.100.100.1"
staged_device.configuration.custom_settings.port = 8080
staged_device.configuration.custom_settings.indices_in_ids = False

# Add the configured device to the inventory of the VideoIPath server
# This immediately registers the device and returns the assigned device object.
try:
    device = app.inventory.add_device(staged_device)
    print(f"Device added successfully: {device.device_id}")
    #> Device added successfully: device34
except Exception as e:
    print(f"Failed to add device: {e}")

Documentation

Feedback & Contributions

Your feedback and contributions are highly appreciated! There are several ways to participate and help improve the VideoIPath Automation Tool:

✅ Report issues & suggest features: Open an issue on GitHub: ➝ GitHub Issues

✅ Contribute via pull requests: If you want to implement a fix or a new feature yourself, feel free to fork the repository and submit a pull request. ➝ Fork the Repository

✅ Discuss & provide feedback: If you have general feedback or ideas that don’t fit into an issue, feel free to reach out via email: 📧 moip@swr.de

Thank you for your support and contributions!

Disclaimer

VideoIPath Automation Tool is an independent software tool that can be used with the VideoIPath media orchestration platform. However, it is not a product or service offered by Nevion, and Nevion is not responsible for its functionality, performance, support, or any unforeseen consequences arising from its use. Nevion's VideoIPath platform is used to manage critical media infrastructure, and special care is advised concerning the use of external tools such as this.

License

Affero General Public License v3.0

Metadata

Release files for videoipath-automation-tool 0.11.0.dev477

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for videoipath-automation-tool 0.11.0.dev477
File Size Uploaded Provenance Actions
videoipath_automation_tool-0.11.0.dev477.tar.gz 819.8 kB Without provenance Details for videoipath_automation_tool-0.11.0.dev477.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for videoipath-automation-tool 0.11.0.dev477
File Interpreter ABI Platform Actions
videoipath_automation_tool-0.11.0.dev477-py3-none-any.whl Python 3 none any Details for videoipath_automation_tool-0.11.0.dev477-py3-none-any.whl

Total release size: 1.8 MB

Release files / videoipath_automation_tool-0.11.0.dev477.tar.gz

Download URL videoipath_automation_tool-0.11.0.dev477.tar.gz
Size 819.8 kB
Tags Source
SHA-256 checksum
How to use checksums
194690b1aaa26f4d4a4fd290f5a944e584a31665ea79c485ad1ddc225bdd0a86
BLAKE2b-256 checksum
How to use checksums
08603556c2fa75f0033194972c346ba210f0f5ca90a8dadf45b567dab5a746d9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.5.1 CPython/3.14.10 Linux/7.0.0-1017-azure

Release files / videoipath_automation_tool-0.11.0.dev477-py3-none-any.whl

Download URL videoipath_automation_tool-0.11.0.dev477-py3-none-any.whl
Size 954.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
851b8d04c80fd77a9bb3d72f79fc5fe36aa034ae04a508685c3225505551b7d9
BLAKE2b-256 checksum
How to use checksums
111c2684e6387b96b9aa0fa11a3a20d1eabf00920aed157ac0c4b2107aaee491
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.5.1 CPython/3.14.10 Linux/7.0.0-1017-azure

Security for videoipath-automation-tool 0.11.0.dev477

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page