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


⚠️ Attention ⚠️
This Python package, the VideoIPath Automation Tool, is still under development and currently in the beta phase. Features and interfaces may change as development progresses. Feel free to use the module and provide feedback, but be aware that breaking changes may occur in future versions.

Introduction

The VideoIPath Automation Tool is a Python package designed to simplify and optimize interactions with the VideoIPath API. The focus is on providing a user-friendly and efficient way to automate configuration tasks and bulk operations on VideoIPath servers. The package abstracts the complexity of the API and provides a high-level interface. Currently, the package offers methods for managing devices in the Inventory and Topology apps, as well as the configuration of multicast pools and profiles.

The provided methods and data models ensure easy handling, robust validation, comprehensive logging, and enhanced reliability.

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

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.2.5.dev202

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.2.5.dev202
File Size Uploaded
videoipath_automation_tool-0.2.5.dev202.tar.gz 288.7 kB Details

Built distribution (wheel)

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

Total release size: 626.2 kB

Release files / videoipath_automation_tool-0.2.5.dev202.tar.gz

Download URL videoipath_automation_tool-0.2.5.dev202.tar.gz
Size 288.7 kB
Tags Source
SHA-256 checksum
How to use checksums
3b958b53870ab8546347e13027bd427201c17ca6bbc50e04c1273488718fb530
BLAKE2b-256 checksum
How to use checksums
31d529d9590e8358306fd336f5543c2f965ff73afdad1b618fd6faba7e58d55e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.3 CPython/3.13.3 Linux/6.11.0-1014-azure

Release files / videoipath_automation_tool-0.2.5.dev202-py3-none-any.whl

Download URL videoipath_automation_tool-0.2.5.dev202-py3-none-any.whl
Size 337.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5f059e5fd0777297aea2aa98fc49a0c990b5d03b391e1806fc126e28c51bcff5
BLAKE2b-256 checksum
How to use checksums
7adfdc6115270e77af23467adcd80d093699ad531d9a9b7a3384bef1c855fcde
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.3 CPython/3.13.3 Linux/6.11.0-1014-azure

Release history Release notifications | RSS feed

0.9.0

2 release files

0.8.4

2 release files

0.8.3

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

This release

0.2.5.dev202 This release

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

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