Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. [Gelöst] Pi-Hole Daten auslesen

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.0k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.0k

[Gelöst] Pi-Hole Daten auslesen

[Gelöst] Pi-Hole Daten auslesen

Scheduled Pinned Locked Moved ioBroker Allgemein
47 Posts 13 Posters 13.3k Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • P Offline
    P Offline
    pix
    wrote on last edited by
    #3

    Hallo,

    auf diesen Hinweis hin habe ich mir meinenersten Raspi gekauft 😄

    Die Anleitung klappt einwandfrei (unter OS X), Raspi eingerichtet und pi-hole gestartet.

    Hier das neueste Skript zum Auslesen der Daten (24.4.2017):

    ! ````
    /* Pi-hole
    pi-hole JSON Leser
    ! erstellt: 23.04.2017 von Pix
    /
    var logging = false;
    var pfad = '.Pi-hole.';
    var zeitplan = '
    /5 * * * *';
    var url = 'http://192.168.178.20/admin/api.php';
    ! // ab hier nix mehr ändern
    ! // Instanz des Javascript-Adapters ermitteln
    var instanz = 'javascript.' + instance;
    if (logging) log(instanz);
    ! // ID definieren
    var idJSON = instanz + pfad + 'JSON',
    idDomains = instanz + pfad + 'Domains_blocked',
    idDNSQueries = instanz + pfad + 'DNS_queries',
    idAdsBlocked = instanz + pfad + 'Ads_blocked',
    idAdsPercentage = instanz + pfad + 'Ads_percentage',
    idActive = instanz + pfad + 'aktiv',
    idTabelle = instanz + pfad + 'Tabelle';
    ! // States erstellen
    createState(idJSON, '', {
    name: 'JSON Datei vom Pi-hole Server',
    desc: 'Kopie der JSON Datei',
    type: 'string',
    read: true,
    write: true,
    role: 'json'
    });
    createState(idDomains, {
    name: 'Pi-hole Domains blocked today',
    desc: 'Heute blockierte Domains',
    type: 'number',
    def: 0,
    read: true,
    write: true,
    role: 'value'
    });
    createState(idDNSQueries, {
    name: 'Pi-hole DNS Queries today',
    desc: 'Heutige DOmain Name Server Anfragen',
    type: 'number',
    def: 0,
    read: true,
    write: true,
    role: 'value'
    });
    createState(idAdsBlocked, {
    name: 'Pi-hole Ads blocked today',
    desc: 'Heute blockierte Werbungen',
    type: 'number',
    def: 0,
    read: true,
    write: true,
    role: 'value'
    });
    createState(idAdsPercentage, {
    name: 'Pi-hole Ads percentage today',
    desc: 'Anteil heute blockierter Werbungen an allen Werbungen', // weiß nicht, ob das korrekt übersetzt ist
    type: 'number',
    def: 0,
    read: true,
    write: true,
    role: 'value'
    });
    createState(idActive, false, {
    name: 'Ist der Pi-hole Server aktiv?',
    desc: 'Liefert das Webinterface pi.hole/admin/api.php Daten?',
    type: 'boolean',
    read: true,
    write: true,
    role: 'indicator'
    });
    createState(idTabelle, '', {
    name: 'Pi-hole HTML Tabelle',
    desc: 'HMTL Tabelle mit den Daten der JSON-Datei',
    type: 'string',
    read: true,
    write: true,
    role: 'html'
    });
    ! // weitere Datenpunkte möglich (Abfragen des PI und dessen Zustands)
    ! var request = require('request');
    ! function readPihole() {
    if (logging) log('Pi-hole: URL "' + url + '" wird abgefragt ...');
    request(url, function (error, response, body) {
    if (!error && response.statusCode == 200) {
    var result;
    try{
    result = JSON.parse(body);
    var data = JSON.stringify(result, null, 2);
    if (logging) log(data);
    if (logging) log(body);
    setState(idJSON, data);
    if (logging) log('JSON: '+ getState(idJSON).val);
    } catch (fehler_try) {
    log('Pi-hole - Parse Fehler: ' + fehler_try, 'error');
    }
    var tabelle ='';
    var dnsblocked,
    dnsqueries,
    adsblocked,
    adspercentage;

            if (result) { // CHECK
    
                setState(idActive, true);
                if (logging) log('Pi-hole liefert Daten und ist aktiv');
    
                dnsblocked = (result.domains_being_blocked).replace(/,/, "");
                dnsqueries = (result.dns_queries_today).replace(/,/, "");
                adsblocked = result.ads_blocked_today;
                adspercentage = result.ads_percentage_today;
    
                setState(idDomains, parseFloat(dnsblocked));
                setState(idDNSQueries, parseFloat(dnsqueries));
                setState(idAdsBlocked, parseFloat(adsblocked));
                setState(idAdsPercentage, parseFloat(adspercentage));
    
                // Eintrag anfügen
                tabelle += ''
                        +  ''
    
                        +  ''
                        +  ''
    
                        +  ''
                        +  ''
    
                        +  ''
                        +  '';
    
            } else tabelle += '';
            tabelle += '
    

    ! <caption>Pi-hole</caption>
    | Admin Service: ' + url + ' |
    | --- |
    | Anzahl blockierter Domains: | ' + dnsblocked + ' |
    | DNS-Abfragen (heute): | ' + dnsqueries + ' |
    | Blockierte Werbung (heute): | ' + adsblocked + ' |
    | Werbeanteil (heute in Prozent): | ' + adspercentage + ' |
    | Pi-hole nicht gefunden! |
    ! ';
    setState(idTabelle, tabelle);
    if (logging) log('HTML-Tabelle: ' + tabelle);
    } else {
    log('Pi-hole - Fehler: ' + error);
    }
    }); // Ende request
    }
    ! schedule(zeitplan, readPihole);
    setTimeout(readPihole, 500);

    
    Hier das erste Skript zum Auslesen der Daten (alt):
    
    >! ````
    /* Pi-hole
    pi-hole JSON Leser
    >! erstellt: 23.04.2017 von Pix
    */
    var logging = false;
    var pfad = '.Pi-hole.';
    var zeitplan = '*/30 * * * *';
    var url = 'http://192.168.178.20/admin/api.php';
    >! // ab hier nix mehr ändern
    >! // Instanz des Javascript-Adapters ermitteln
    var instanz = 'javascript.' + instance;
    if (logging) log(instanz);
    >! // ID definieren
    var idJSON          = instanz + pfad + 'JSON',
        idDomains       = instanz + pfad + 'Domains_blocked',
        idDNSQueries    = instanz + pfad + 'DNS_queries',
        idAdsBlocked    = instanz + pfad + 'Ads_blocked',
        idAdsPercentage = instanz + pfad + 'Ads_percentage',
        idActive        = instanz + pfad + 'aktiv',
        idTabelle       = instanz + pfad + 'Tabelle';
    >! // States erstellen
    createState(idJSON, '', {
        name: 'JSON Datei vom Pi-hole Server',
        desc: 'Kopie der JSON Datei',
        type: 'string',
        read: true,
        write: true,
        role: 'json'
    });
    createState(idDomains, {
        name: 'Pi-hole Domains blocked today', 
        desc: 'Heute blockierte Domains',
        type: 'number', 
        def:  0,
        read: true,
        write: true,
        role: 'value'
    });
    createState(idDNSQueries, {
        name: 'Pi-hole DNS Queries today', 
        desc: 'Heutige DOmain Name Server Anfragen',
        type: 'number', 
        def:  0,
        read: true,
        write: true,
        role: 'value'
    });
    createState(idAdsBlocked, {
        name: 'Pi-hole Ads blocked today', 
        desc: 'Heute blockierte Werbungen',
        type: 'number', 
        def:  0,
        read: true,
        write: true,
        role: 'value'
    });
    createState(idAdsPercentage, {
        name: 'Pi-hole Ads percentage today', 
        desc: 'Anteil heute blockierter Werbungen an allen Werbungen', // weiß nicht, ob das korrekt übersetzt ist
        type: 'number', 
        def:  0,
        read: true,
        write: true,
        role: 'value'
    });
    createState(idActive, false, {
        name: 'Ist der Pi-hole Server aktiv?', 
        desc: 'Liefert das Webinterface pi.hole/admin/api.php Daten?',
        type: 'boolean', 
        read: true,
        write: true,
        role: 'indicator'
    });
    createState(idTabelle, '', {
        name: 'Pi-hole HTML Tabelle',
        desc: 'HMTL Tabelle mit den Daten der JSON-Datei',
        type: 'string',
        read: true,
        write: true,
        role: 'html'    
    });
    >! // weitere Datenpunkte möglich (Abfragen des PI und dessen Zustands)
    >! var request = require('request');
    >! function readPihole() {
        if (logging) log('Pi-hole: URL "' + url + '" wird abgefragt ...');
        request(url, function (error, response, body) {
            if (!error && response.statusCode == 200) {
                var result;
                try{
                    result = JSON.parse(body);
                    var data = JSON.stringify(result, null, 2);
                    if (logging) log(data);
                    if (logging) log(body);
                    setState(idJSON, data);
                    if (logging) log('JSON: '+ getState(idJSON).val);
                } catch (fehler_try) {
                    log('Pi-hole - Parse Fehler: ' + fehler_try, 'error');
                }    
                var tabelle ='';
                var dnsblocked,
                    dnsqueries,
                    adsblocked,
                    adspercentage;  
    
                if (result) { // CHECK
    
                    setState(idActive, true);
                    if (logging) log('Pi-hole liefert Daten und ist aktiv');
    
                    dnsblocked = result.domains_being_blocked;
                    dnsqueries = result.dns_queries_today;
                    adsblocked = result.ads_blocked_today;
                    adspercentage = result.ads_percentage_today;
    
                    setState(idDomains, dnsblocked);
                    setState(idDNSQueries, dnsqueries);
                    setState(idAdsBlocked, adsblocked);
                    setState(idAdsPercentage, adspercentage);
    
                    // Eintrag anfügen
                    tabelle += ''
                            +  ''
    
                            +  ''
                            +  ''
    
                            +  ''
                            +  ''
    
                            +  ''
                            +  '';
    
                } else tabelle += '';
                tabelle += '
    >! <caption>Pi-hole</caption>
    | Admin Service: ' + url + ' |
    | --- |
    | Anzahl blockierter Domains: | ' + dnsblocked + ' |
    | DNS-Abfragen (heute): | ' + dnsqueries + ' |
    | Blockierte Werbung (heute): | ' + adsblocked + ' |
    | Werbeanteil (heute in Prozent): | ' + adspercentage + ' |
    | Pi-hole nicht gefunden! |
    >! ';  
                setState(idTabelle, tabelle);                     
                if (logging) log('HTML-Tabelle: ' + tabelle);
            } else {
                log('Pi-hole - Fehler: ' + error);
            }
        });   // Ende request 
    }
    >! schedule(zeitplan, readPihole);
    setTimeout(readPihole, 500);
    

    Hier ein Widget mit etwas CSS Formatierung. Es nutzt die HTML-tabelle, die im Skript zusammengebaut wird.

    [{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"html":"{javascript.2.Pi-hole.Tabelle}"},"style":{"left":"197px","top":"588px","z-index":"25","font-size":"60%","width":"231px","height":"130px"},"widgetSet":"basic"}]
    

    So siehts aus: 261_bildschirmfoto_2017-04-23_um_13.39.28.jpg

    Viel Spaß beim Nachbauen.

    More to come…

    Gruß

    Pix

    ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

    1 Reply Last reply
    0
    • kmxakK Offline
      kmxakK Offline
      kmxak
      Most Active
      wrote on last edited by
      #4

      Hi pix.

      Toll das du sowas gebaut hast.

      Leider kann ich aktuell nichts mit dem Script anfangen da ich nicht weiß wo ich es ausführen soll. In ioBroker unter Scripte dann javascript/js oder direkt auf dem Pi?

      Anmerkung zum Pi-Hole.

      Habe mit ein paar Filterlisten Probleme da sie google und web.de geblockt haben.

      Das waren die Easylist Filter

      Gruß Alex

      1 Reply Last reply
      0
      • HomoranH Do not disturb
        HomoranH Do not disturb
        Homoran
        Global Moderator Administrators
        wrote on last edited by
        #5

        Ich habe mir jetzt endlich die Seite mal genauer angesehen.

        Klingt Gut, aber…

        Was passiert mit Seiten, die einen Adblocker-Blocker haben und dann nichts mehr anzeigen?

        Kann man die dann lokal ausnehmen, oder muss man das zentral im piHole machen oder geht das gar nicht?

        Bevor ich das netzwerkweit einrichte und mir anschließend der Rest der Familie aufs Dach steigt 😉

        Gruß

        Rainer

        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

        1 Reply Last reply
        0
        • kmxakK Offline
          kmxakK Offline
          kmxak
          Most Active
          wrote on last edited by
          #6

          Falls eine Seite von pi-hole geblockt wird bekommst du folgende Meldung:
          2343_pihole.png

          Diese kannst du dann direkt Whitelisten.

          Du musst die DNS abfragen ja nicht über PI Hole laufen lassen.

          Ich hatte bis eben nur den einen Rechner darüber laufen zum Testen.

          Habe nun da alles lief die Fritzbox angewieden den DNS an die DHCP Clients raus zu geben.

          Edit:

          Habe es eben mal auf Bild.de getestet. Adblock Plus erkennt Bild.de und blockiert den Inhalt. Pi-Hole erkennt Bild.de nicht.

          Gruß Alex

          1 Reply Last reply
          0
          • P Offline
            P Offline
            pix
            wrote on last edited by
            #7

            Hallo,

            für mich war der Raspi ja schon ein böhmisches Dorf. Ganz stolz, dass das gleich geklappt hat.

            Pi-hole ist bei mir noch in der Testphase. Ich habe in der Fritzbox den Pi-hole als lokalen DNS-Server angegeben. Mehr noch nicht.

            Allerdings wird zB Bild.de geblockt (kein AdBlocker im Browser, sondern Pi-hole). Dafür muss ich irgendwo eine Ausnahme einstellen, aber? :roll:

            Das oben geteilte Skript muss im Javascript-Adapter von ioBroker erstellt werden. Wie das geht, steht auf der Webseite iobroker.net hier: http://www.iobroker.net/docu/?page_id=6818&lang=de

            Hier eine Einführung in die Sprache: http://www.iobroker.net/docu/?page_id=5385&lang=de

            Das Skript legt die Datenpunkte an, die in VIS verwendet werden können. Es wird auch ein Datenpunkt Tabelle angelegt und mit einem HTML-Code gefüllt, der die Daten abbildet (siehe Widget oben). Alternativ lassen sich die einzelnen Daten natürlich auch in anderen Widgets anzeigen. Ein Datenpunkt "Aktiv" zeigt nur an, ob der pi-hole-Server die Daten in JSON geliefert hat.

            Gruß

            Pix

            ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

            1 Reply Last reply
            0
            • kmxakK Offline
              kmxakK Offline
              kmxak
              Most Active
              wrote on last edited by
              #8

              ok

              das script ist drin und läuft allerdings weiß ich nicht was:````
              var pfad = '.Pi-hole.';

              
              Die IP ist klar.
              
              So das Script rennt schon mal 8-)
              
              Musste nur im Widget````
              javascript.2.Pi-hole.Tabelle
              ````anpassen du hast wohl mehrere js adapter am laufen?!
              
              Jetzt geht alles.
              
              In wiefern wird Bild.de bei dir geblockt?
              
              Welche Filter hast du aktiv?

              Gruß Alex

              1 Reply Last reply
              0
              • P Offline
                P Offline
                pix
                wrote on last edited by
                #9

                Hallo kmxak,

                ja, ich habe für Testzwecke mehrere Javascript Adapter. Habe das im Widget nicht angepasst, mein Fehler.

                var pfad = '.Pi-hole.';
                ````ist tatsächlich nur der Pfad zum Objekt im Objektreiter. Es sollen ja nicht alle Datenpunkte im Hauptverzeichnis liegen.
                
                Hier nochmal eine andere Variante für die VIS-Darstellung. Daten werden einzeln dargestellt (nicht HTML-Datenpunkt). Bitte Javascript-Instanz ggf. anpassen (steht auf 2). Es sind 5 einzelne Widgets, die sich natürlich auch gut gruppieren lassen. Der Hintergrund wird rot dargestellt, wenn das Skript nicht aktiv ist (übers Objekt __javascript.2.scriptEnabled.Test.Test_pihole__)
                

                [{"tpl":"tplValueString","data":{"oid":"javascript.2.Pi-hole.DNS_queries","visibility-cond":"==","visibility-val":1,"name":"Elevation Anzeige","html_prepend":"

                DNS-Abfragen (heute)

                ","html_append":"","test_html":"","gestures-offsetX":0,"gestures-offsetY":0,"signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"label_true":"Hauptschalter
                Beschattung aktiviert Automatische Erkennung, ob Beschattung notwendig ist","visibility-groups-action":"hide"},"style":{"left":"91px","top":"901px","z-index":"21","width":"140px","color":"rgba(250,250,250,1)","font-size":"25px","height":"45px","text-align":"right","padding":"10px","background":"rgba(150,150,150,0.5)"},"widgetSet":"basic"},{"tpl":"tplValueString","data":{"oid":"javascript.2.Pi-hole.Ads_blocked","visibility-cond":"==","visibility-val":1,"name":"Anzeige Sonnenuntergang","html_prepend":"

                Blockierte Werbung (heute)

                ","html_append":"","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"visibility-groups-action":"hide"},"style":{"left":"91px","top":"972px","z-index":"21","width":"140px","height":"45px","text-align":"right","background-color":"rgba(150,150,150,0.5)","color":"rgba(250,250,250,1)","font-size":"25px","font-weight":"","padding":"10"},"widgetSet":"basic"},{"tpl":"tplValueString","data":{"oid":"javascript.2.Pi-hole.Ads_percentage","visibility-cond":"==","visibility-val":1,"name":"Anzeige Sonnenaufgang","html_prepend":"

                Werbeanteil (heute)

                ","html_append":" %","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"visibility-groups-action":"hide"},"style":{"left":"91px","top":"1043px","z-index":"21","width":"140px","height":"45px","text-align":"right","background-color":"rgba(150,150,150,0.5)","color":"rgba(250,250,250,1)","font-size":"25px","font-weight":"","padding":"10"},"widgetSet":"basic"}]

                
                Ich habe diese Domain Name Server verwendet:
                ~~@[url=https://www.kuketz-blog.de/pi-hole-schwarzes-loch-fuer-werbung-raspberry-pi-teil1/:~~ 
                
                > ~~www.kuketz-blog.de"]~~Custom: 85.214.20.141, 213.73.91.35 [Ergänzung: DNS: Unzensierte und freie DNS-Server ohne Protokollierung] `  und die Standard Gravity Liste.
                
                Welche Domain müsste ich zB für Bild.de in die Whitelist eintragen? Die Werbung kommt ja wohl nicht von bild.de..
                
                Eintrag in die Whitelist:````
                pihole -w domainname.de
                

                Gruß

                Pix

                ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                1 Reply Last reply
                0
                • kmxakK Offline
                  kmxakK Offline
                  kmxak
                  Most Active
                  wrote on last edited by
                  #10

                  mit

                  nano /etc/pihole/adlists.list
                  

                  kannst du ja die ADListen bearbeiten

                  Und mir pihole -g neu einlesen.

                  Habe die ersten 6

                  die w10 telemetry

                  die erste untestet list url

                  aktiv

                  Bild.de habe ich nicht whitelisted.

                  Wird bei mir nicht geblockt

                  Gruß Alex

                  1 Reply Last reply
                  0
                  • P Offline
                    P Offline
                    pix
                    wrote on last edited by
                    #11

                    @kmxak:

                    mit

                    nano /etc/pihole/adlists.list
                    

                    kannst du ja die ADListen bearbeiten `
                    Die ist bei mir leer.

                    @kmxak:

                    Habe die ersten 6

                    die w10 telemetry

                    die erste untestet list url

                    aktiv `
                    Kannst du das nochmal genauer beschreiben?

                    Danke

                    Pix

                    ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                    1 Reply Last reply
                    0
                    • kmxakK Offline
                      kmxakK Offline
                      kmxak
                      Most Active
                      wrote on last edited by
                      #12

                      ach wahrscheinlich musst du noch die Befehle ausführen.

                      Siehe Bild.

                      Aber warum er per default bei dir Bild.de blockt weiß ich jetzt nicht.

                      Kommt bei aufruf bild.de gleich site was blocked by pi hole?

                      Du kannst im pi-hole admin ja auch schauen was er aktuell geblockt hat und dann gleich whitelisten oder blacklisten.
                      2343_pi-hole.png

                      Gruß Alex

                      1 Reply Last reply
                      0
                      • P Offline
                        P Offline
                        pix
                        wrote on last edited by
                        #13

                        Danke, sehe mir das morgen nochmal an.

                        Ich habe das Javascript nochmal leicht optimiert. Die Zahlen sind nicht ganz sauber. Da werden Kommas als Tausendertrennzeichen verwendet, deshalb gab es Mecker im Log. Das neue Skript ist oben eingestellt.

                        Gruß

                        Pix

                        ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                        1 Reply Last reply
                        0
                        • kmxakK Offline
                          kmxakK Offline
                          kmxak
                          Most Active
                          wrote on last edited by
                          #14

                          Hab in den Logs folgende Ausgabe:

                          javascript.0	2017-05-17 19:33:51.239	warn	Wrong type of javascript.0.Pi-hole.Ads_percentage: "string". Please fix, while deprecated and will not work in next versions.
                          javascript.0	2017-05-17 19:33:51.239	warn	Wrong type of javascript.0.Pi-hole.Ads_blocked: "string". Please fix, while deprecated and will not work in next versions.
                          javascript.0	2017-05-17 19:33:51.238	warn	Wrong type of javascript.0.Pi-hole.DNS_queries: "string". Please fix, while deprecated and will not work in next versions.
                          javascript.0	2017-05-17 19:33:51.237	warn	Wrong type of javascript.0.Pi-hole.Domains_blocked: "string". Please fix, while deprecated and will not work in next versions.
                          

                          Kannst du damit was anfangen? Sollten wir was fixen oder irgnorieren?

                          Gruß Alex

                          1 Reply Last reply
                          0
                          • paul53P Offline
                            paul53P Offline
                            paul53
                            wrote on last edited by
                            #15

                            @kmxak:

                            Sollten wir was fixen oder irgnorieren? `
                            Das ist in der letzten Version von Pix schon gefixed:

                                            dnsblocked = (result.domains_being_blocked).replace(/,/, "");
                                            dnsqueries = (result.dns_queries_today).replace(/,/, "");
                                            adsblocked = result.ads_blocked_today;
                                            adspercentage = result.ads_percentage_today;
                            
                                            setState(idDomains, parseFloat(dnsblocked));
                                            setState(idDNSQueries, parseFloat(dnsqueries));
                                            setState(idAdsBlocked, parseFloat(adsblocked));
                                            setState(idAdsPercentage, parseFloat(adspercentage));
                            
                            

                            parseFloat() macht den Unterschied.

                            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                            1 Reply Last reply
                            0
                            • kmxakK Offline
                              kmxakK Offline
                              kmxak
                              Most Active
                              wrote on last edited by
                              #16

                              Ok danke hatte die Änderung nicht bemerkt :roll:

                              Gruß Alex

                              1 Reply Last reply
                              0
                              • kmxakK Offline
                                kmxakK Offline
                                kmxak
                                Most Active
                                wrote on last edited by
                                #17

                                Habe heute Pi-Hole geupdatet.

                                Seitdem bekomme ich folgende Fehlermeldung:

                                host.FHEM	2017-05-25 18:12:33.021	error	instance system.adapter.javascript.0 terminated with code 0 (OK)
                                javascript.0	2017-05-25 18:12:32.972	error	TypeError: result.domains_being_blocked.replace is not a function at Request._callback (script.js.Test.pi-hole:118:61) at Request.self.callback (/opt/iobroker/node_modules/iobroker.javascript/
                                javascript.0	2017-05-25 18:12:32.971	error	uncaught exception: result.domains_being_blocked.replace is not a function
                                
                                18:13:02.679	[error]	javascript.0 TypeError: result.domains_being_blocked.replace is not a function at Request._callback (script.js.Test.pi-hole:118:61) at Request.self.callback (/opt/iobroker/node_modules/iobroker.javascript/node_modules/request/request.js:188:22) at emitTwo (events.js:87:13) at Request.emit (events.js:172:7) at Request. (/opt/iobroker/node_modules/iobroker.javascript/node_modules/request/request.js:1171:10) at emitOne (events.js:77:13) at Request.emit (events.js:169:7) at IncomingMessage. (/opt/iobroker/node_modules/iobroker.javascript/node_modules/request/request.js:1091:12) at IncomingMessage.g (events.js:260:16) at emitNone (events.js:72:20)
                                

                                Gruß Alex

                                1 Reply Last reply
                                0
                                • P Offline
                                  P Offline
                                  pix
                                  wrote on last edited by
                                  #18

                                  Hallo,

                                  den Fehler kann ich nicht bestätigen. Habe über das Dashboard mit Tools/Lists ein update ausgeführt. Danach keine Probleme mit dem Skript.

                                  Werden die anderen Werte gefüllt?

                                  Kannst du die API mit````
                                  http://IPPIHOLE/admin/api.php

                                  
                                  Pix

                                  ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                                  1 Reply Last reply
                                  0
                                  • kmxakK Offline
                                    kmxakK Offline
                                    kmxak
                                    Most Active
                                    wrote on last edited by
                                    #19

                                    Ja die Api wird geladen.

                                    Habe aber nicht nur die Listen geupdatet sondern das ganze Programm.

                                    der befehl war pihole -up

                                    Pi-hole Version v3.0.1 Web Interface Version v3.0.1 FTL Version v2.7.
                                    

                                    Finde es auch komisch das es jedes mal gleich die JS Instanz mit zum absturz bringt:

                                    host.FHEM	2017-05-26 16:46:28.570	error	instance system.adapter.javascript.0 terminated with code 0 (OK)
                                    

                                    Edit: Was ich gerade bemerkt habe ist das irgendwie mein FTL immer crashed. Ist schon wieder offline

                                    Edit: Gerade nochmal PiHole neu aufgesetzt… immer noch gleicher Fehler. :?

                                    Gruß Alex

                                    1 Reply Last reply
                                    0
                                    • ruhr70R Offline
                                      ruhr70R Offline
                                      ruhr70
                                      wrote on last edited by
                                      #20

                                      @kmxak:

                                      Habe heute Pi-Hole geupdatet.

                                      Seitdem bekomme ich folgende Fehlermeldung:

                                      host.FHEM	2017-05-25 18:12:33.021	error	instance system.adapter.javascript.0 terminated with code 0 (OK)
                                      javascript.0	2017-05-25 18:12:32.972	error	TypeError: result.domains_being_blocked.replace is not a function at Request._callback (script.js.Test.pi-hole:118:61) at Request.self.callback (/opt/iobroker/node_modules/iobroker.javascript/
                                      javascript.0	2017-05-25 18:12:32.971	error	uncaught exception: result.domains_being_blocked.replace is not a function
                                      ```` `  
                                      

                                      Probier mal den Block hier auszutauschen:

                                                      dnsblocked = JSON.stringify(result.domains_being_blocked).replace(/,/, "");
                                                      dnsqueries = JSON.stringify(result.dns_queries_today).replace(/,/, "");
                                                      adsblocked = JSON.stringify(result.ads_blocked_today);
                                                      adspercentage = JSON.stringify(result.ads_percentage_today);
                                      
                                      

                                      Adapter: Fritzbox, Unify Circuit
                                      Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                                      1 Reply Last reply
                                      0
                                      • P Offline
                                        P Offline
                                        pix
                                        wrote on last edited by
                                        #21

                                        Hallo,

                                        ich habe es etwas verändert, so läuft es bei mir:

                                                        dnsblocked = (result.domains_being_blocked)/*.replace(/,/, "")*/;
                                                        dnsqueries = (result.dns_queries_today)/*.replace(/,/, "")*/;
                                                        adsblocked = result.ads_blocked_today;
                                                        adspercentage = result.ads_percentage_today;
                                        
                                                        if ( isNaN(parseFloat(adspercentage)) === false ) {
                                                            setState(idAdsPercentage, parseFloat(adspercentage));
                                                        } else setState(idAdsPercentage, 100);
                                                        setState(idDomains, parseFloat(dnsblocked));
                                                        setState(idDNSQueries, parseFloat(dnsqueries));
                                                        setState(idAdsBlocked, parseFloat(adsblocked));
                                        

                                        Gruß

                                        Pix

                                        ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                                        1 Reply Last reply
                                        0
                                        • kmxakK Offline
                                          kmxakK Offline
                                          kmxak
                                          Most Active
                                          wrote on last edited by
                                          #22

                                          Danke euch beiden.

                                          Nun läuft es wieder.

                                          Lag es nun an der neuen PI Hole version?

                                          Gruß Alex

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          624

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe