# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= python-phonebox-plugin VERSION= 0.0.7b2 KEYWORDS= python VARIANTS= v11 v12 SDESC[v11]= Phone numbers management plugin for NetBox (3.11) SDESC[v12]= Phone numbers management plugin for NetBox (3.12) HOMEPAGE= https://github.com/iDebugAll/phonebox_plugin CONTACT= Python_Automaton[python@ironwolf.systems] DOWNLOAD_GROUPS= main SITES[main]= PYPI/p/phonebox-plugin DISTFILE[1]= phonebox_plugin-0.0.7b2.tar.gz:main DF_INDEX= 1 SPKGS[v11]= single SPKGS[v12]= single OPTIONS_AVAILABLE= PY311 PY312 OPTIONS_STANDARD= none VOPTS[v11]= PY311=ON PY312=OFF VOPTS[v12]= PY311=OFF PY312=ON DISTNAME= phonebox_plugin-0.0.7b2 GENERATED= yes [PY311].USES_ON= python:v11,sutools [PY312].USES_ON= python:v12,sutools [FILE:2932:descriptions/desc.single] # PhoneBox Plugin A Telephone Number Management Plugin for [NetBox] and more. >The plugin versions 0.0.1b1-0.0.1b4 support NetBox 2.10.x versions. > >Latest plugin version 0.0.1b5 supports NetBox 2.11.0+ versions I described some general considerations behind the plugin development and future plans in my [blog post]. ### Preview ![](docs/media/preview_01.png) # Supported Features and Models ### Numbers The plugin currently implements a Number abstraction representing a single telephone number of an arbitrary format.
A Number 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/phonebox/`.
It currently supports all create, read, update, and delete operations for Numbers via `/api/plugins/phonebox/numbers/`.
The API is compatible with [pynetbox]: ``` >>> nb.plugins.phonebox.numbers.get(7) 2000 >>> ``` # 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 phonebox-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/iDebugAll/phonebox_plugin $ cd phonebox_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 `phonebox_plugin` package: ```no-highlight # echo phonebox_plugin >> local_requirements.txt ``` [FILE:109:distinfo] 4ea9428e495af071151440ee53fbd793b92c9317a10a70d1a8957d8bd4013e50 19578 phonebox_plugin-0.0.7b2.tar.gz