PI-Hole – Sensores e Interruptor

En esta entrada voy a explicar como crear los sensores para PI-Hole así como un interruptor para poder deshabilitar durante una hora el bloqueo de anuncios.

El resultado será algo como esto:

Dando por sentado que tenemos Pi-Hole instalado el primer paso es crear los sensores:

 

En el configuration.yaml revisamos que tenemos creada la linea

sensor: !include_dir_merge_list sensors

y  la carpeta sensors en la raiz de .homeassistant (si no la tenemos, la creamos) dentro de sensors creamos un archivo llamado pihole.yaml introduciendo en el interior

################################################################################
########################### Servicio PiHole ####################################
################### http://192.168.x.x:8081/admin/ ##########################
################################################################################
– platform: pi_hole
host: 192.168.x.x

Mostrar Código

Despues vamos a crear el interruptor:

################################################################################
################################ PiHoleSwitch ##################################
################################################################################
– platform: command_line
switches:
pihole_switch:
command_on: “curl -X GET ‘http://192.168.x.x/admin/api.php?enable&auth=98974b95f31bdf12aae680acbab30ad0aa2aad79d0abdd9bf7123124124′”
command_off: “curl -X GET ‘http://192.168.x.x/admin/api.php?disable=3600&auth=98974b95f31bdf12aae680acbab30ad0aa2aad79d0abdd9bf71234124312′”
command_state: “curl -X GET ‘http://192.168.x.x/admin/api.php?status'”
value_template: “{{ value_json.status == ‘enabled’ }}”

Mostrar Código

OJO! Si tienes habilitada la autenticacion tienes que ver tu WEBPASSWORD en /etc/pihole/setupVars.conf y ponerlo después de &auth=

Ahora vamos a mostrar los sensores, podemos crear un archivo en nuestra carpeta de grupos llamado pihole.yaml por ejemplo…

################################################################################
############################# Pihole Grupo ####################################
################################################################################
varios:
name: varios
icon: mdi:tune
view: yes
entities:
– group.pihole
– sensor.pihole_ads_percentage_blocked_today
– sensor.pihole_ads_blocked_today
– sensor.pihole_dns_queries_today

pihole:
name: Pi-Hole
view: no
entities:
– switch.pihole_switch
– sensor.pihole_ads_percentage_blocked_today
– sensor.pihole_ads_blocked_today
– sensor.pihole_dns_queries_today

Mostrar Código

Y por ultimo le damos un toque personalizado:

sensor.pihole_ads_percentage_blocked_today:
friendly_name: Porcentaje Anuncios Bloqueados Hoy
entity_picture: /local/porcentaje.png

sensor.pihole_ads_blocked_today:
friendly_name: Anuncios Bloqueados Hoy
entity_picture: /local/adds.jpg
sensor.pihole_dns_queries_today:
friendly_name: Consultas DNS Hoy
entity_picture: /local/dns.png
switch.pihole_switch:
friendly_name: Off / ON Anuncios

Mostrar Código

el directorio /local que pone en el entity_picture hace referencia al directorio www de tu instalación de ha (/home/homeassistant/.homeassistant/www )

 

Y como siempre aquí tienes el paquete con los archivos para evitar problemas estructurales en el código.

pihole

 

Y aquí las imágenes que yo utilizo.

5 comentarios sobre “PI-Hole – Sensores e Interruptor

  • Pingback:Home Assistant. Instalación y pasos previos. | Domology 2.0

  • el 28 enero, 2018 a las 11:07
    Permalink

    Hola, he copiado el archivo pihole.yaml a “/home/homeassistant/.homeassistant/sensors” y ahora al intentar arrancar HA muestra el siguiente error, como si hubiese algún fallo en el archivo… sabéis qué puede ser?
    2018-01-28 11:03:12 ERROR (Thread-2) [homeassistant.util.yaml] while parsing a block collection
    in “/home/homeassistant/.homeassistant/sensors/pihole.yaml”, line 5, column 1
    expected , but found ‘?’
    in “/home/homeassistant/.homeassistant/sensors/pihole.yaml”, line 23, column 1
    2018-01-28 11:03:12 ERROR (MainThread) [homeassistant.bootstrap] Error loading /home/homeassistant/.homeassistant/configuration.yaml: while parsing a block collection
    in “/home/homeassistant/.homeassistant/sensors/pihole.yaml”, line 5, column 1
    expected , but found ‘?’
    in “/home/homeassistant/.homeassistant/sensors/pihole.yaml”, line 23, column 1

      • el 2 febrero, 2018 a las 17:12
        Permalink

        Al final he utilizado otro archivo con configuración mínima, no me hace falta encender y apagar el pihole.

        Con el fichero que descargué había otro problema, contenía caracteres “extraños” de MSDOS al final (^N), con el archivo actual ya no me salen (no se si es cosa mía entonces o lo habéis cambiado).

        Para solucionar el problema de caracteres MSDOS, hay una utilidad en linux llamada dos2unix.
        Si alguien tiene este problema, se soluciona ejecutando:
        dos2unix fichero.txt

        Saludos!

    • el 28 enero, 2018 a las 19:30
      Permalink

      Hola!, Cómo has copiado el archivo? Lo ideal sería que lo hicieras con winscp.
      Es probable que sea simplemente un problema en la sintaxis del .yaml

Deja un comentario

Síguenos

Siguenos en facebook