Web based FritzBox management using Python/Django.
Project description
django-fritzconnection
Web based FritzBox management using Python/Django and the great fritzconnection library.
The basic idea is to block/unblock Internet access to a group of devices as easily as possible.
Current state: early development stage
Existing features:
- actions:
- Change WAN access of a host or for all host of a group
- models:
- HostModel - A host/device that is/was connected to your FritzBox
- "Static" storage for all
FritzHosts().get_hosts_info()
information - Update in Admin via change list tools link and manage command
- "Static" storage for all
- HostGroupModel - Collect host/device into groups to manage "WAN access"
- Every group are listed on the front page
- Allow/Disallow "WAN access" for all hosts of a group with one click
- HostModel - A host/device that is/was connected to your FritzBox
- a few "test" views:
- Host information
- Get information about registered hosts
- Get raw mesh topology
- Diagnose
- Test FritzBox connection
- List all FritzBox services
- Host information
django-fritzconnection_ynh allows you to install django-fritzconnection quickly and simply on a YunoHost server. If you don't have YunoHost, please consult the guide to learn how to install it.
Pull requests welcome ;)
Screenshots
Quick start for developers
~$ git clone https://github.com/jedie/django-fritzconnection.git
~$ cd django-fritzconnection
~/django-fritzconnection$ ./devshell.py
...
Developer shell - djfritz - v0.1.0
...
(djfritz) run_testserver
FritzBox Credentials
Some of the FritzBox API requests needs a login. Currently the only way to store FritzBox Credentials is to add them into the environment.
Error message if login credentials are missing is: Unable to perform operation. 401 Unauthorized
Shell script work-a-round for developing, e.g.:
#!/bin/bash
(
set -ex
export FRITZ_USERNAME="<username>"
export FRITZ_PASSWORD="<password>"
./devshell.py run_testserver
)
See also: Issues #5
versions
- dev
- Replace
DynamicViewMenu
withbx_django_utils.admin_extra_views
- Use RunServerCommand from django-tools
- Update test/CI setup
- TBC
- Replace
- v0.2.0 - 15.05.2022
- NEW: Hosts admin action to ping all IPs from selected hosts
- NEW: "unique host name" change list filter
- v0.1.0 - 08.04.2022
- NEW: 'Manage host WAN access via host-groups'
- NEW: Add "host group" model to collect hosts into groups
- NEW: 'List "last connect" information about hosts' view
- Display
FRITZ_USERNAME
andFRITZ_PASSWORD
(anonymized) on connection info page
- v0.0.2 - 04.04.2022
- Store Host information
- Possible to set WAN access for one host
- v0.0.1-alpha - 24.03.2022
- init the project
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for django-fritzconnection-0.3.0rc1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | be21ac87f32a55dbc444f735bd9d63343e8a9180f9c7b712b4f3a21f4d26e74f |
|
MD5 | 2c59401ecb83f73077ce2016e1919e3a |
|
BLAKE2b-256 | 7451c753d0e268d37f932cbc7bf94e300d8e2748839a7f692a53cc3181db0d41 |
Hashes for django_fritzconnection-0.3.0rc1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5cb488d0d5958a421e25a9d5f6607e3e922d877894a80a2060e391e5839cec56 |
|
MD5 | d27a866fa5ec10b9f96d8a299a21fe08 |
|
BLAKE2b-256 | e1c2c12c808483423b367c1970ff27fbff1de55a937186ce3ae6015adce5a0fe |