Skip to main content

No project description provided

Project description

voipbox Plugin

this plugins forked and compatible with phonebox_plugin

A Telephone Number Management Plugin for NetBox and more.

Compatibility

NetBox Version VoipBox Plugin Version
4.3.0-4.3.2 0.0.3
4.3.0-4.3.3 0.0.4
4.3.0-4.3.7 0.0.5
4.3.0-4.5.0 0.0.6
4.3.0-4.5.0 0.0.7
4.4.X-4.5.X 0.0.8, 0.0.9
4.5.X-4.6.X 0.0.10

Configuration

Preview

Supported Features and Models

Pool

The plugin currently implements a Pool numbers abstraction representing a single telephone number of an arbitrary format.
A Pool numbers can consist of valid DTMF characters and leading plus sign for E.164 support:

  • leading plus ("+") sign (optional)
  • digits 0-9
  • characters A, B, C, D
  • pound sign ("#")
  • asterisk sign ("*")

Sample valid numbers: +12341234567, 1000, 123#2341234567, *100#.
Numbers are stored without delimiters. They will be implemented as an additional formatting function.
Number values can be not unique. Tenant is a mandatory option representing a number partition. Number and Tenant are globally unique.
A Number can optionally be assigned with Provider and Region relations.
A Number can contain an optional Description.
A Number can optionally be tagged with Tags.

The plugin supports Bulk Edit and Delete operations for Numbers.

Voice Circuits

Voice Circuit is an entity on a voice-enabled device representing a physical or virtual connection to another voice-enabled device. The plugin supports the following voice circuit types:

  • SIP Trunk.
  • Digital Voice Circuit (PRI/BRI/etc).
  • Analog Voice Circuit (CO lines/etc).

A Voice Circuit must be assigned to an interface of a Device or Virtual Machine.

Plugin API

The plugin introduces a NetBox REST API extension /api/plugins/voipbox/.
It currently supports all create, read, update, and delete operations for Numbers via /api/plugins/voipbox/numbers/.
The API is compatible with pynetbox:

>>> nb.plugins.voipbox.pool.get(1)

Installation

General installation steps and considerations follow the official guidelines.

Package Installation from PyPi

Assuming you use a Virtual Environment for Netbox:

$ source /opt/netbox/venv/bin/activate
(venv) $ pip3 install voipbox-plugin

Package Installation from Source Code

The source code is available on GitHub.
Download and install the package. Assuming you use a Virtual Environment for Netbox:

$ git clone https://github.com/panaceya/voipbox_plugin.git
$ cd voipbox_plugin
$ source /opt/netbox/venv/bin/activate
(venv) $ pip3 install .

To ensure NextBox UI plugin is automatically re-installed during future upgrades, create a file named local_requirements.txt (if not already existing) in the NetBox root directory (alongside requirements.txt) and list the voipbox_plugin package:

# echo voipbox_plugin >> local_requirements.txt

Enable the Plugin

In a global Netbox configuration.py configuration file, update or add PLUGINS parameter:

PLUGINS = [
    'voipbox_plugin',
]

Collect Static Files

The Plugin contains static files for topology visualization. They should be served directly by the HTTP frontend. In order to collect them from the package to the Netbox static root directory use the following command:

(venv) $ cd /opt/netbox/netbox/
(venv) $ python3 manage.py collectstatic

Apply Database Migrations

Apply database migrations with Django manage.py:

(venv) $ python3 manage.py migrate

Restart Netbox

Restart the WSGI service to apply changes:

sudo systemctl restart netbox

Installation with Docker

The Plugin may be installed in a Netbox Docker deployment. The package contains a Dockerfile for Netbox-Community Docker extension. Latest-LDAP version is used by default as a source.
Download the Plugin and build from source:

$ git clone https://github.com/iDebugAll/voipbox_plugin
$ cd voipbox_plugin
$ docker build -t netbox-custom .

Update a netbox image name in docker-compose.yml in a Netbox Community Docker project root:

services:
  netbox: &netbox
    image: netbox-custom:latest

Update a configuration.py. It is stored in netbox-docker/configuration/ by default. Update or add PLUGINS parameter and PLUGINS_CONFIG parameter as described above.

Rebuild the running docker containers:

$ cd netbox-docker
$ docker-compose down
$ docker-compose up -d

Netbox Community Docker setup performs static files collection on every startup. No manual actions required.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

voipbox_plugin-0.0.10.tar.gz (17.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

voipbox_plugin-0.0.10-py3-none-any.whl (21.3 kB view details)

Uploaded Python 3

File details

Details for the file voipbox_plugin-0.0.10.tar.gz.

File metadata

  • Download URL: voipbox_plugin-0.0.10.tar.gz
  • Upload date:
  • Size: 17.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for voipbox_plugin-0.0.10.tar.gz
Algorithm Hash digest
SHA256 98a1ee84d7e78726cf4363e830cd1f085d35f269bc4a2330eea76647c5ef6fe7
MD5 46ab1fc8d5ed5a8c9140ac44a405fb5c
BLAKE2b-256 b27a194d7d13b9674ddf00e12dc883aef199cba9c469cf64984d538dc5762591

See more details on using hashes here.

Provenance

The following attestation bundles were made for voipbox_plugin-0.0.10.tar.gz:

Publisher: python-publish.yml on panaceya/voipbox_plugin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file voipbox_plugin-0.0.10-py3-none-any.whl.

File metadata

  • Download URL: voipbox_plugin-0.0.10-py3-none-any.whl
  • Upload date:
  • Size: 21.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for voipbox_plugin-0.0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 e29284c28578d311d61fbc58ac44bcc66a3d76962f6fa5c1c92902125e7bf7f2
MD5 5de815254686a4c06ba470ebf4f23ec3
BLAKE2b-256 3d35287ff77200abde316f26bd16c7e9035187cb50ea127d7adee8a18e006c7a

See more details on using hashes here.

Provenance

The following attestation bundles were made for voipbox_plugin-0.0.10-py3-none-any.whl:

Publisher: python-publish.yml on panaceya/voipbox_plugin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page