Homebridge Pi-hole
Pi-hole plugin for Homebridge. This plugin publishes a virtual switch that disables Pi-hole, making it easier to temporarily turn off the ad-blocker. Supports SSL connections and can be configured with a timer to turn Pi-hole back on.
Requirements
- Homebridge - HomeKit support for the impatient
- Pi-hole - A black hole for Internet advertisements
Installation
- Install this plugin
npm install -g homebridge-pihole
- Update your configuration file. See sample-config.json in this repository for a sample.
See the Pi-hole installation section for more details.
Configuration
There are the following options:
name
Required. Accessory name, default is Pi-hole.
Pi-hole Configuration
auth
Pi-hole auth token.host
Pi-hole host, default islocalhost
.port
Pi-hole port, default is80
.ssl
If the Pi-hole server should be connected to with SSL.rejectUnauthorized
If the HTTPS agent should check the validity of SSL cert, set it tofalse
to allow self-signed certs to work. Default istrue
.baseDirectory
The directory where Pi-hole is found on the server, default is/admin/
.time
How long Pi-hole will be disabled, in seconds, default is 0 that means permanently disabled.reversed
When set totrue
reverse the status of Pi-hole. When Pi-hole is off the plugin will be set to on and when Pi-hole is on the plugin will be set to off. Default isfalse
.logLevel
Logging level, three different levels: 0: logging disabled, 1: logs only HTTP errors, 2: logs each HTTP response. Default is set to 1.
Device Information
manufacturer
Custom manufacturer, default is Raspberry Pi.model
Custom model, default is Pi-hole.serial-number
Should be a 9 digit number in the string format 123-456-789.
See the sample-config.json file to see an example of how to configure the accessory. In the example the configured accessory will disable Pi-hole for a time interval of two minutes (120 seconds).
How to get a Pi-hole authentication token
- Login into your Pi-hole Admin Console.
- Navigate to the Settings page and then to the API / Web interface tab.
- At the bottom of the page click on the Show API Token button, a popup window will ask for confirmation, go ahead and click on Yes, show API token.
- A new window will open showing a QR code, copy the Raw API Token below the QR code.
- Paste your API token in the homebridge configuration file.