const request = require('request'); const link = 'http://pass.telekom.de/api/service/generic/v1/status'; var options = { url: link, // korrekten Link erstellen headers: { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.1'} }; createState('Telekom.Tarif', "", { desc: 'Tarif', type: 'string', role: 'value' }); createState('Telekom.Verbrauch', "", { desc: 'verbrauchtes Volumen', type: 'string', role: 'value' }); createState('Telekom.Restzeit', "", { desc: 'restliche Zeit', type: 'string', role: 'value' }); createState('Telekom.Volumen', "", { desc: 'gesamt volumen', type: 'string', role: 'value' }); createState('Telekom.Packet', "", { desc: 'Nachgeladen ?', type: 'string', role: 'value' }); function telekom() { request(options, function(error,response, body) { if(error) log('Fehler request Telekom: ' + error, 'error'); else { var start = body.indexOf('{'); var json = body.slice(start); var obj = JSON.parse(json); //log(JSON.stringify(json)); setState('Telekom.Tarif', obj.passName, true); setState('Telekom.Verbrauch', obj.usedVolumeStr, true); setState('Telekom.Restzeit', obj.remainingTimeStr, true); setState('Telekom.Volumen', obj.initialVolumeStr, true); setState('Telekom.Packet', obj.passStage, true); } }); } schedule('10 * * * *', telekom); // jede Stunde // telekom();
Tags: ioBroker