%global _empty_manifest_terminate_build 0 Name: python-ucbox-plugin Version: 0.0.22 Release: 1 Summary: A unified communications management plugin for NetBox. License: MIT URL: https://github.com/levensailor/ucbox.git Source0: https://mirrors.nju.edu.cn/pypi/web/packages/3c/8a/da5d50b1a52a304bd9f6de393b2ec292701777b9da953d9b0562d3b9ea47/ucbox_plugin-0.0.22.tar.gz BuildArch: noarch %description # UCBox Plugin A Unified Communications Management Plugin for [NetBox](https://github.com/netbox-community/netbox). >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 ### 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. ### SIP Trunks A sip trunk has a name, a region, and destination ### Plugin API The plugin introduces a NetBox REST API extension `/api/plugins/ucbox/`.
It currently supports all create, read, update, and delete operations for Numbers via `/api/plugins/ucbox/numbers/`.
The API is compatible with [pynetbox](https://github.com/digitalocean/pynetbox): ``` >>> nb.plugins.ucbox.numbers.get(7) 2000 >>> ``` # Installation General installation steps and considerations follow the [official guidelines](https://netbox.readthedocs.io/en/stable/plugins/). ### Package Installation from PyPi Assuming you use a Virtual Environment for Netbox: ``` $ source /opt/netbox/venv/bin/activate (venv) $ pip3 install ucbox_plugin ``` ### Package Installation from Source Code The source code is available on [GitHub](https://github.com/iDebugAll/ucbox_plugin).
Download and install the package. Assuming you use a Virtual Environment for Netbox: ``` $ git clone https://github.com/iDebugAll/ucbox_plugin $ cd ucbox_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 `ucbox_plugin` package: ```no-highlight # echo ucbox_plugin >> local_requirements.txt ``` ### Enable the Plugin In a global Netbox **configuration.py** configuration file, update or add PLUGINS parameter: ```python PLUGINS = [ 'ucbox_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](https://github.com/netbox-community/netbox-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/ucbox_plugin $ cd ucbox_plugin $ docker build -t netbox-custom . ``` Update a netbox image name in **docker-compose.yml** in a Netbox Community Docker project root: ```yaml 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. %package -n python3-ucbox-plugin Summary: A unified communications management plugin for NetBox. Provides: python-ucbox-plugin BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-ucbox-plugin # UCBox Plugin A Unified Communications Management Plugin for [NetBox](https://github.com/netbox-community/netbox). >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 ### 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. ### SIP Trunks A sip trunk has a name, a region, and destination ### Plugin API The plugin introduces a NetBox REST API extension `/api/plugins/ucbox/`.
It currently supports all create, read, update, and delete operations for Numbers via `/api/plugins/ucbox/numbers/`.
The API is compatible with [pynetbox](https://github.com/digitalocean/pynetbox): ``` >>> nb.plugins.ucbox.numbers.get(7) 2000 >>> ``` # Installation General installation steps and considerations follow the [official guidelines](https://netbox.readthedocs.io/en/stable/plugins/). ### Package Installation from PyPi Assuming you use a Virtual Environment for Netbox: ``` $ source /opt/netbox/venv/bin/activate (venv) $ pip3 install ucbox_plugin ``` ### Package Installation from Source Code The source code is available on [GitHub](https://github.com/iDebugAll/ucbox_plugin).
Download and install the package. Assuming you use a Virtual Environment for Netbox: ``` $ git clone https://github.com/iDebugAll/ucbox_plugin $ cd ucbox_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 `ucbox_plugin` package: ```no-highlight # echo ucbox_plugin >> local_requirements.txt ``` ### Enable the Plugin In a global Netbox **configuration.py** configuration file, update or add PLUGINS parameter: ```python PLUGINS = [ 'ucbox_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](https://github.com/netbox-community/netbox-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/ucbox_plugin $ cd ucbox_plugin $ docker build -t netbox-custom . ``` Update a netbox image name in **docker-compose.yml** in a Netbox Community Docker project root: ```yaml 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. %package help Summary: Development documents and examples for ucbox-plugin Provides: python3-ucbox-plugin-doc %description help # UCBox Plugin A Unified Communications Management Plugin for [NetBox](https://github.com/netbox-community/netbox). >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 ### 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. ### SIP Trunks A sip trunk has a name, a region, and destination ### Plugin API The plugin introduces a NetBox REST API extension `/api/plugins/ucbox/`.
It currently supports all create, read, update, and delete operations for Numbers via `/api/plugins/ucbox/numbers/`.
The API is compatible with [pynetbox](https://github.com/digitalocean/pynetbox): ``` >>> nb.plugins.ucbox.numbers.get(7) 2000 >>> ``` # Installation General installation steps and considerations follow the [official guidelines](https://netbox.readthedocs.io/en/stable/plugins/). ### Package Installation from PyPi Assuming you use a Virtual Environment for Netbox: ``` $ source /opt/netbox/venv/bin/activate (venv) $ pip3 install ucbox_plugin ``` ### Package Installation from Source Code The source code is available on [GitHub](https://github.com/iDebugAll/ucbox_plugin).
Download and install the package. Assuming you use a Virtual Environment for Netbox: ``` $ git clone https://github.com/iDebugAll/ucbox_plugin $ cd ucbox_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 `ucbox_plugin` package: ```no-highlight # echo ucbox_plugin >> local_requirements.txt ``` ### Enable the Plugin In a global Netbox **configuration.py** configuration file, update or add PLUGINS parameter: ```python PLUGINS = [ 'ucbox_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](https://github.com/netbox-community/netbox-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/ucbox_plugin $ cd ucbox_plugin $ docker build -t netbox-custom . ``` Update a netbox image name in **docker-compose.yml** in a Netbox Community Docker project root: ```yaml 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. %prep %autosetup -n ucbox-plugin-0.0.22 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-ucbox-plugin -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Tue May 30 2023 Python_Bot - 0.0.22-1 - Package Spec generated