Compare commits

..

4 Commits

Author SHA1 Message Date
2ebb6ff77e change default log name 2024-10-19 18:23:11 +02:00
89ac85bacd add basic docs
Signed-off-by: anima <p.schreiner@4nima.de>
2024-10-19 18:21:59 +02:00
5681316673 remove bad if's 2024-10-19 18:05:14 +02:00
590faef1bb add description 2024-10-19 17:58:55 +02:00
3 changed files with 74 additions and 21 deletions

View File

@@ -10,7 +10,7 @@ class Pihole:
__VERSION__ = '1.0.0'
_log = logging.getLogger(__name__)
__logFile = logging.FileHandler(__name__)
__logFile = logging.FileHandler('Pihole.log')
__logPrinter = logging.StreamHandler()
__logFormat = logging.Formatter('%(asctime)s %(levelname)s \t %(name)s : %(message)s')
__logFile.setFormatter(__logFormat)
@@ -123,10 +123,7 @@ class Pihole:
data = { 'action': 'add' }
data['domain'] = domain
data['ip'] = ip
if reload:
data['reload'] = 'true'
else:
data['reload'] = 'false'
data['reload'] = str(reload).lower()
self._log.info(f'try to add new {domain=} for {ip=}')
return self._query('customdns', data)
@@ -145,10 +142,7 @@ class Pihole:
data = { 'action': 'delete' }
data['domain'] = domain
data['ip'] = ip
if reload:
data['reload'] = 'true'
else:
data['reload'] = 'false'
data['reload'] = str(reload).lower()
self._log.info(f'try to delete {domain=} for {ip=}')
return self._query('customdns', data)
@@ -177,10 +171,8 @@ class Pihole:
data = { 'action': 'add' }
data['domain'] = domain
data['target'] = target
if reload:
data['reload'] = 'true'
else:
data['reload'] = 'false'
data['reload'] = str(reload).lower()
self._log.info(f'try to add {domain=} cname for {target=}')
return self._query('customcname', data)
@@ -199,10 +191,7 @@ class Pihole:
data = { 'action': 'delete' }
data['domain'] = domain
data['target'] = target
if reload:
data['reload'] = 'true'
else:
data['reload'] = 'false'
data['reload'] = str(reload).lower()
self._log.info(f'try to delete {domain=} cname for {target=}')
return self._query('customcname', data)
@@ -354,7 +343,7 @@ class Pihole:
return False
def set_tmp_unit(self, unit: str = 'c') -> dict | None:
"""set temperature unit (supported: c, f or k)
"""set cpu temperature unit (supported: c, f or k)
:param unit: temp unit (c, f or k)
:type: unit: str

View File

@@ -1,3 +1,66 @@
# api-pihole
# API Wrapper: Pi-hole
>A basic API wrapper for Pi-hole
API wrapper for pihole
## Functions
### Custom DNS
Read, add or delete a custom dns entry (no cname's!)
```python
get_custom_dns()
add_custom_dns(domain, ip)
del_custom_dns(domain, ip)
```
### Custom CNAMES
Same as Custom DNS but for CNAMES only.
```python
get_custom_cname()
add_custom_cname(domain, target)
del_custom_cname(domain, target)
```
### Filter Lists
Read, add or delete a filter list.
Availible lists:
- white
- black
- regex_white
- regex_black
*white and black only match exact machtes!*
```python
get_list(list, entry)
""" aliases """
get_whitelist(entry)
get_regex_whitelist(entry)
get_blacklist(entry)
get_regex_blacklist(entry)
add_to_list(list, entry)
""" aliases """
add_to_whitelist(entry)
add_to_regex_whitelist(entry)
add_to_blacklist(entry)
add_to_regex_blacklist(entry)
del_from_list(list, entry)
""" aliases """
del_from_whitelist(entry)
del_from_regex_whitelist(entry)
del_from_blacklist(entry)
del_from_regex_blacklist(entry)
```
### Misc
Misc functions for:
- enable / disable filter
- get / check update status
- set temp unit from cpu
```python
enable()
disable()
get_version()
check_updates()
set_tmp_unit(unit)
```

1
__init__.py Normal file
View File

@@ -0,0 +1 @@
from .Pihole import Pihole