NEWS
Nummernabfrage in Tellows möglich?
-
Seit einiger Zeit nutze ich ioBroker dazu, bei ankommenden Anrufen (im Falle das die Nummer nicht im Telefonbuch der FritzBox steht) eine Abfrage bei "Das Örtliche" zu machen, um mir Namen und Nummer via Telegram Bot aufs Smartphone zu schicken. Das funktioniert soweit ganz gut.
Codesample ist dieses hier:
// Rückwärtssuche von das Örtliche const callerName = 'tr-064.0.callmonitor.inbound.callerName'; const lastCallerName ='tr-064.0.callmonitor.lastCall.callerName'; const ringing = 'tr-064.0.callmonitor.ringing'; const caller = 'tr-064.0.callmonitor.inbound.caller'; const isRequestFinished = '0_userdata.0.isRequestFinished'; const axios = require('axios'); function getCallerName(url) { axios.get(url) .then(function (response) { // handle success var matches = response.data.match(/class="st-treff-name"\>(.*?)\</); // in matches[1] steht der Namen aus Das Örtliche log(response.data); if (!matches){ // Das Örtliche kein Name gefunden setState(callerName,'Unbekannt'); setState(lastCallerName,'Unbekannt'); } else { setState(callerName,matches[1]); setState(lastCallerName,matches[1]); } }) .catch(function (error) { // handle error console.log(error); }) } on({id: ringing, val: true, ack: true}, function (obj) { // wenn Anruf setState(isRequestFinished, false); var nummer = String(getState(caller).val); // caller Nummer auslesen var namen = String(getState(callerName).val); // caller Name auslesen if (!namen.length){ // Namen leer in Fritz Telefonbuch, dann Namen in Das Örtliche suchen var url = 'http://www.dasoertliche.de/Controller?form_name=search_inv&ph=' + nummer; // suche namen getCallerName(url); } setState(isRequestFinished, true); });
Nun kämpfe seit geraumer Zeit aber auch mit SPAM-Anrufen, also irgendwelchen unbekannten Nummern, die dauernd versuchen zuhause anzurufen. Als erstes Mittel habe ich für die FritzBox ein Tellows-Abo, welches ständig ein internes Telefonbuch mit den Spamnummern aktualisiert. Dort stehen aber auch nur Nummern, die besonders häufig schon Penalty-Points bekommen haben.
Ich hätte nun gerne via ioBroker eine Abfrage gemacht, die die Nummer an Tellows schickt und als Result die Treffer zurückbekommt. Soweit scheint das auch prinzipiell möglich, in dem man eine Abfrage aufhttps://www.tellows.de/basic/num/<number>?xml=1&partner=tellowsfritz&apikey=<apikey>';
triggert. Ich weiß nur nicht, wie man das Result vernünftig auswertet. Wenn ein Treffer einer Spamkategorie 7-9 herauskommt, hätte ich gerne dieses Resultat wieder zurück.
Hätte hier jemand aus der Community eine Idee? -
Hi,
ich kann dir leider nicht helfen.
Hast du vielleicht schon eine Lösung gefunden?Ich würde gerne dein tellows Skript nutzen.
Es funktioniert aber leider nicht.
Vermutlich weil mir axios fehlt?!
Was ist das, wie installiere ich es und wie beeinflusst es mein bisheriges System/Skripte? -
@christian-ortmann schau dir axios mal an.. damit kannst du dann die Antwort aus der url weiter verarbeiten