Skip to main content

FusionPBX Pilot Python Library

Gnovit

email: fusionpbx-pilot@gnovit.com

This python library is intended to automate FusionPBX administrative tasks. This library is based on Selenium WebDriver and abstracts FusionPBX objects as python objects. Should be used in an API to manage FusionPBX. This is licensed under the terms of the GNU GPL v3 license.

Examples

Install the library:

python3 -m venv .venv
source .venv/bin/activate
pip install fusionpbx-pilot

Install webdriver_manager to automatically manage the browser driver:

pip install webdriver_manager

Install GeckoDriver and instantiate the FusionPBX class:

from selenium import webdriver
from selenium.webdriver.firefox.service import Service as FirefoxService
from webdriver_manager.firefox import GeckoDriverManager
from selenium.webdriver.firefox.service import Service as FirefoxService
from fusionpbx_pilot.page_objects import FusionPBX


service = FirefoxService(GeckoDriverManager().install())
driver = webdriver.Firefox(service=service)

f = FusionPBX(driver, '<https://addr>', '<login_user>', '<login_password>')
  • Set domain object: If domain no exist, raises DomainNotFound exception.
d = f.domain('<domain_name>')
  • To create a new domain, use the following:
d = f.domain('<domain_name>', create=True)

Returns a new domain object.

Domain manipulate

  • Domain rename:
d.name = '<new_domain_name>'
  • Domain get uuid:
d.uuid
  • Domain delete: You must to add domain delete permission to the user used to login to FusionPBX.
del f.domain.name

Extensions manipulate

  • List all extensions of a domain:
d.extensions.list()
  • Set or create an extension object:
e = d.extension('<extension_name>')

Generally extension name is a number...

If extension no exist, the lib will create it.

  • Rename extension object
e.name = '<new_extension_name>'
  • Get or set password
e.password

Returns password

e.password = '<new_password>'

Set the password

  • Get or set voicemail enabled:
e.voicemail_enabled
  • Get or set voicemail_mail_to:
e.voicemail_mail_to
  • Get UUID:
e.uuid
  • Delete extension
del d.extension.name

Contributions

Contribuitions are welcome. Please fork the project and send a pull request.

Metadata

Release files for fusionpbx_pilot 0.2.2

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

Source distribution (sdist)

Source distribution for fusionpbx_pilot 0.2.2
File Size Uploaded Provenance Actions
fusionpbx_pilot-0.2.2.tar.gz 22.5 kB Without provenance Details for fusionpbx_pilot-0.2.2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for fusionpbx_pilot 0.2.2
File Interpreter ABI Platform Actions
fusionpbx_pilot-0.2.2-py3-none-any.whl Python 3 none any Details for fusionpbx_pilot-0.2.2-py3-none-any.whl

Total release size: 45.5 kB

Release files / fusionpbx_pilot-0.2.2.tar.gz

Download URL fusionpbx_pilot-0.2.2.tar.gz
Size 22.5 kB
Tags Source
SHA-256 checksum
How to use checksums
97bd025ca1e1886b6430db6db3187eda406d2ead369c4ac1ba93085a9bb4f341
BLAKE2b-256 checksum
How to use checksums
a1bbb1baa522282162ecfc293c857cdf97ca154d274c7a8ec663ad2ac578e5bd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.6.13

Release files / fusionpbx_pilot-0.2.2-py3-none-any.whl

Download URL fusionpbx_pilot-0.2.2-py3-none-any.whl
Size 23.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9cad2b7c246891abd817266065dd26f76f93314e24e99c0f04d71f695505d89a
BLAKE2b-256 checksum
How to use checksums
d5ed92c2f325a803cc9f7e549c4d4b193557ad21a6a748308c309f09c6e1a96c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.6.13

Security for fusionpbx_pilot 0.2.2

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.

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