Skip to content

Skripten / Logik

Hilfe zu JavaScript, Blockly, TypeScript, Node-RED, Scenes und text2command

16.4k Themen 211.7k Beiträge

NEWS

Unterkategorien


  • Hilfe für Skripterstellung mit JavaScript

    2k 48k
    2k Themen
    48k Beiträge
    P
    @ArnoD Ich habs mir noch mal geladen, muss aber warten, bis der Fehler wieder auftritt. Oder genügt dir die Logausgabe ohne den Fehler? Wahrscheinlich eher nicht.
  • Hilfe für Skripterstellung mit Blockly

    6k 78k
    6k Themen
    78k Beiträge
    nik82N
    Hi, hab downgrade gemacht, kommt aber immer noch leider :-)
  • Hilfe für Skripterstellung mit Node-RED

    952 13k
    952 Themen
    13k Beiträge
    HomoranH
    @fiddle sagte in [Gelöst]: Adapter per {Node Red | JS} (de)aktivieren: Ok, nicht als "Wert" schreiben, sondern als "Befehl". Dann scheint ihn das zu beeindrucken. du zeigst ja nichts, aber es geht mit true/false [image: 1763416200051-screenshot_20251117-224854_firefox.jpg] gesteuert über eigenen DP vom typ Bool
  • RFLInk: Problem mit Schalten von mehreren Empfängern.

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    926 Aufrufe
    Z
    Das klingt nach einem sehr guten Plan. Wobei ich mich echt frage wie du das alles immer Zeitlich hinbekommst. Ich bin schwer begeistert. Wenn du die Daten hättest könnte man eventuell die Wiederholung schon in den Adapter integrieren. Ich poste nachher mal mein wiederholungsskript vielleicht hast du noch eine bessere Idee. Ich muss allerdings sagen dass pinatic die Sendeleistubg und -Zuverlässigkeit tatsächlich im Griff hatte. Dafür ist nur der RFLInk in der Lage meine Ikea Küchenbeleichtubg und die neuen Rolling Code Steckdosen von Aldi zu schalten. Somit hat jedes System sein für und wieder. [emoji58] Gesendet von iPhone mit Tapatalk
  • GELÖST: Zeitsteuerubg mi PI und Blockly

    Verschoben
    6
    0 Stimmen
    6 Beiträge
    1k Aufrufe
    BluefoxB
    @Zipkart: @Jeeper.at: Hallo. Ich denke du meinst folgendes. Wenn du exakt 16:00 vergleichst, dann klappt es normalerweise nicht. Grund ist das im Hintergrund auch Sekunden und evt. Millisekunden abgefragt werden. Und es ist sehr unwahrscheinlich das du da genau vorbeikommst. Frage immer ein Intervall ab. Also Zwischen 16:00 und 16:01 Dann klappt es. Lg Günther ` Hallo Günther. Danke für den Tipp. Das war Genau dass was ich gesucht habe. Somit habe ich Sonnen Problem lösen können, wobei ich es schon etwas umständlich fand. Aber die Lampen schalten nun so zeitlich wie sie sollen. Gesendet von iPhone mit Tapatalk ` Genau dafür gibt es schedule Kommando: https://github.com/ioBroker/ioBroker.ja … e-schedule schedule('0 16 * * *', function () { setState('lampe', true); });
  • Tasterbetrieb mit Node Red

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    3k Aufrufe
    E
    Super danke, das hilft mir weiter
  • Script zum Hochzählen bzw. Rundzählen einer Variable

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    4k Aufrufe
    paul53P
    Timer stoppt man mit clearTimeout(timer) bzw. clearInterval(timer): ... var stateView = 0; var max = 4; var timer = null; function counter() { if(stateView < max) stateView++; else stateView = 0; setState(idView, stateView); } function pushbutton () { if (stateButton0 === true) { stateAuto = false; stateView = 0; if(timer) clearInterval(timer); } else { stateAuto = true; timer = setInterval(counter, 10000); // alle 10 s[ } setState(idAuto, stateAuto); setState(idView, stateView); }
  • [Fixed] Skripte weg

    Verschoben
    6
    1
    0 Stimmen
    6 Beiträge
    1k Aufrufe
    DirkKD
    Hallo Bluefox, kommando zurück, geht wieder alles, war ein aktualiesierungsproblem, trotzdem danke für deine Mühe.
  • [Gelöst] Ordner auslesen und jüngstes File finden

    Verschoben
    7
    0 Stimmen
    7 Beiträge
    1k Aufrufe
    T
    @Jey Cee: Ich bin mir ziemlich sicher das deine pfad angabe nicht wie von FS erwartet ist. Es macht auch einen unterschied ob Windows oder Linux verwendet wird, da die beiden Systeme unterschiedliche Pfad Angaben haben. ` Stimmt! Danke nochmals! Grüße, Torsten
  • IP Cam snapshot per mail

    Verschoben
    9
    0 Stimmen
    9 Beiträge
    3k Aufrufe
    R
    Mal schauen :) :) :)
  • Mit Blockly set state und create state erstellen

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    4k Aufrufe
    rantanplanR
    @charlyphyro: Ich bekomme es hin ein zustand zu erzeugen (createstate). Im Bild deaktviert ist es das "Lichter.an_aus". Wird auch in den Objekten im java angezeigt. Das problem ist nur es zu füllen :?: Wollte eigentlich das beim Prüfen der Lichter in eine Liste erstellt wird welche an sind und welche aus… Habe das jetzt so gelöst :) Aber für die Zukunft wäre es hilfreich :) Viele Grüße Charly Edit: wäre auch nicht schlecht um im vis Beispiel ein: Jqui Button State zu ändern! ` Hallo charlyphyro Wie versprochen, melde ich mich kurz. Deine erzeugten Objekte kannst Du wie alle anderen ioBroker Objekte abfragen und ändern. " steuere Lichter.an_aus mit …..." Wenn Du in einem Baustein die ObjektID anwählst, findest Du "Lichter.an_aus" unter Deiner Javascript-Instanz (z.B. Javasricpt.0) In VIS geht das genauso. Dein "Prüfen Lichter an" kannst Du noch etwas vereinfachen. Du kannst den Zustand der Lampen direkt der Variablen übergeben. "setze Licht Theke auf Wert vom Objekt ID Licht Theke.State" Grüße
  • Sayit Skript startet nicht selbst und hackt Text ab

    Verschoben
    8
    0 Stimmen
    8 Beiträge
    1k Aufrufe
    N
    @pix: Hallo Nordlicht, ich würde die für die beschriebene Aufgabe das Skript auch deutlich kürzen, um so Fehler auszuschließen. Wenn das Skript immer um 15 Uhr startet, dann lass doch das Errechnen der Zeit und vor allem des Datums. Schreib einfach:var ansage = "Hallihallo, es ist schon wieder drei Uhr ....";Dann kannst du alles darüber von//Wochentag ermitteln bis```` mi = d.getMinutes() Gruß Pix ` Hi Pix, danke, ich hab das mal so übernommen und werde sehen was passiert. Wenn in einer Ansage jedoch die Uhrzeit mit dabei sein muss, dann wäre das Skript schon richtig, oder ist es dann trotzdem zu lang? Gruß NordlichtHH
  • Skript zur Prüfung der Erreichbarkeit eines Dienst per Telnet (Port 80)

    Verschoben
    4
    2
    0 Stimmen
    4 Beiträge
    1k Aufrufe
    ruhr70R
    @simpixo: Hallo ruhr70 Wie erstellst du eigentlich diese Eventliste? Sowas hätte ich auch gern… Danke und Gruß Adrian ` Ich habe Skript laufen, welches einen Datenpunkt überwacht. Wenn sich bei dem Datenpunkt etwas ändert, wird die Eventliste den Inhalt des Datenpunks um einen Eintrag erweitert. Skript und Beschreibung, siehe: http://forum.iobroker.net/viewtopic.php … ent#p39480 Dazu gibt es dann ein globales "Skript" event(), damit aus jedem beliebigen Skript ein Ereignis erzeugt werden kann. Das globale "Skript": function event(text) { log("Event: " + text); setState("javascript.0.Ereignisliste.event",text); } Wenn man nun in einem Skript event("ein **neuer** Tag beginnt"); schreibt, wird die Ereignisliste um den Eintrag 05.12. 17:42 ein neuer Tag beginnt erweitert. Man könnte auch mehrere Listen beschreiben. Dann brächte man für jede Liste ein Event-Skript und die globale event() Funktion müsste so erweitert werden, dass man auswählen kann, welche Liste gemeint ist, z.B.: event("Eintrag in die Hauptliste (Default"); event("Eintrag in Liste 1",1); event("Eintrag in Liste Systemereignisse","Systemevents"); Das muss dann halt angepasst werden.
  • Klingel / view umschaltung bei Betätigung… nur wie ?

    Verschoben
    2
    0 Stimmen
    2 Beiträge
    731 Aufrufe
    S
    Hallo Rubi, ich nutze so etwas ähnliches wie du beschreibst. Ich lasse von meiner Klingel eine Variable auf "true" setzen wenn jemand klingelt. Diese nutze ich dann um in meinem "Homeview" ein widget mit dem Inhalt "Es ist jemand an der Haustür" anzeigen zu lassen. Dafür habe ich ein neues VIEW mit den folgenden Widgets erstellt: [{"tpl":"tplHtml","data":{"hm_id":65535,"digits":"","factor":1,"min":0,"max":1,"step":0.01,"html":"Da ist jemand an der Haustür","visibility-cond":"==","visibility-val":1,"refreshInterval":"0","views":["OG","Garten"],"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,"visibility-groups-action":"hide"},"style":{"left":"0px","top":"15px","width":"392px","height":"160px","text-shadow":"","color":"darkred","font-size":"45px","font-family":"Tahoma, Geneva, sans-serif","line-height":"","font-weight":"700","padding":"","text-align":"center"},"widgetSet":"basic"},{"tpl":"tplBasicState","data":{"oid":"hm-rega.0.16791","visibility-cond":"==","visibility-val":1,"gestures-offsetX":0,"gestures-offsetY":0,"value":"false","html":"Schließen","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","views":["Wetter"]},"style":{"left":"12px","top":"588px","color":"darkred","width":"370px","height":"44px","font-size":"xx-large","text-align":"center","background":"white","font-weight":"bold","font-family":"Tahoma, Geneva, sans-serif"},"widgetSet":"basic"}] Dann habe ich auf dem Hauptview noch das folgende Widget erstellt: [{"tpl":"tplContainerView","data":{"visibility-cond":"==","visibility-val":"true","gestures-offsetX":0,"gestures-offsetY":0,"contains_view":"Haustuer","visibility-oid":"hm-rega.0.16791","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":"490px","top":"104px","width":"390px","height":"680px","z-index":"10"},"widgetSet":"basic"}] Ich hoffe das hilft dir schon mal ein wenig in die richtige Richtung die du möchtest. Gruß Sven
  • Triggern von Scripten

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    4k Aufrufe
    P
    Hallo zusammen, wenn ich die Skripte richtig lese, dann wird die Anwesenheit auf CCU2 auf true gesetzt, wenn sich die Anwesenheit auf CCU1 ändert. Also bei jeder Änderung, auch bei Änderung zu false. @hmanfred: CCU1 auf die CCU2 "spiegeln". ` Laut iobroker.javascript-Github readme ist die einfachste Art, zwei States zu synchronisieren doch so (vom ersten zum zweiten State): on("hm-rega.0.41913"/*Anwesend*/, "hm-rega.1.1881"/*Anwesend*/); ````oder für mehr Übersichtlichkeit: var ccu1anwesenheit = "hm-rega.0.41913"/Anwesend/, ccu2anwesenheit = "hm-rega.1.1881"/Anwesend/; on(ccu1anwesenheit, ccu2anwesenheit); Gruß Pix
  • Mein Javascript global und neue Art js-scripte zu schreiben

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    4k Aufrufe
    frankjokeF
    Hallo ruhr! Kein Problem, können/sollen auch sehr wohl Fragen gestellt werden! Man ist ja selbst immer 'betriebsblind'. Nach der kleinen Zwangspause gehts weiter. Habe eins vergessen: Wie schaut ihr welche Node-Version ihr habt? mit node -v geht das ganz leicht. Hatte gestern einen Raspi 3 mit dem neuen Jessie-Image von letzter Woche gestartet und war geschockt dass da noch 0.10.irgendwas dabei war. Das wird in einigen Wochen nicht mehr supported! Um am Raspi (oder anderen Debian Linux) ein neueres node zu installieren lädt man die nodesource mit curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash - oder curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - sudo apt-get install nodejs Die 6er ist die letztgültige Long-Time-Support-Version (Boron). Es gibt auch 7er aber das ist nur für developers da sie nach Erscheinen der 8ter (nächstes halbes Jahr) dann nicht mehr supported werden. Unter Windows rate ich auf https://nodejs.org/de/download/ sich die letzte oder andere Versionen wie 4.6.x dort zu suchen https://nodejs.org/en/download/releases/. Ja, so machen wir mal weiter. In vielen Scripten muss man Variablen anlegen. Ich habe mir das so angewöhnt: function createStates () { "use strict"; // Die Funktion returniert eine Promise damit sie verschachtelt werden kann!, 'use strict' erlaubt verwendung von let usw. _D("Create States"); const states = [ // Ich kreiere eine objekt-Array mit allen zu erzeugenden Objekten { id: alarm, val: false, common: {type: 'boolean',name:alarm, unit: '',role: 'state',write:true}}, { id: alarmPot, val: "", common: {type: 'string',name:alarmPot, unit: '',role: 'state',write:true}}, { id: alarmState, val: 0, common: {type: 'number',name:alarmState, unit: '',role: 'state',write:true,max:2,min:0,states:'0:Aus;1:Nacht;2:Ein'}}, ]; for (let i=0; i<3;i++) // muss 3 Variablem programmatisch anlegen, können ja auch von aussen kommen states.push({ id: dpPfad+'Var_'+i , val: i, common: {type: 'number',name:`${dpPfad}Variable ${i}`, unit: '',role: 'state',write:true}}); return pSeries(states, (item) => pCst(item.id,item.val,item.common,{}).then(() => item.id), 10) // cSt ist die in Promise umgewandelte Form von createState, ruft pSeries ruft es für jedes array-item auf und fügt zwischen den items 10ms Pause ein .then(x => wait(100,_D('end created states:'+_O(x),x))); // am Ende wird die Liste der angelegten ID's ausgegeben und 100ms gewartet } Damit erzeuge ich erstmals ein array von Objekten die die Variablen beschreiben, entweder hard-coded oder programmatisch und dann kreiere ich alle Variablen mittels pSeries. pSeries(iterable, functionPromise, delay) durchläuft die iterable (kann ein Objekt oder Array sein) und ruft functionPromis(item) für jedes item auf. Die Funktion muß eione Promise zurückgeben. Falls delay angegeben wird wird so viele ms gewartet und dann (sonst sofort) das nächste item aufgerufen. der Teil '(item) => pCst(item.id,item.val,item.common,{}).then(() => item.id)' verwendet die umgewandelte createState und gibt eine id and pSeries zurück. pSeries sammelt alle returnbieren Arguimente und wenn es durch ist giebt sie al array zurück. Damit kann '.then(x =>…' dieses Array anzeigen, warten und selbst dann zurückgegeben werden. Am Ende unseres scripts steht die Folge: wait(100) .then(() => createStates()) .then(() => onAnlegen()) // ist ähnlich wie createStates aufgebaut. .then(() => main()) // test functions .catch(error => _W(_O(error))) // war da ein Fehler? .then(() => _I(`Finished Initialization and running ${instanz}${name}`)); Damit wird beim Start des scriptes zuerst 100ms gewartet, dann dies Variablen kreiert, dann onAnlegen ausgeführt, dann main ausgeführte, dann auf eventuellen Fehlern in einigen der vorigen Routinen geprüft und dann die info ausgegeben dass das Script jetzt läuft! Was kann man sonst noch machen? Ich zeig mal ein Beispiel welches fast gleich ich einen Adapter eingeflossen ist (hab dort nur einen cache eingebaut um nicht alle x Sekunden das selbe abzufragen): arp-scan kann unter linux mit sudo apt-get install arp-scan installiert werden uns scannt das lokale Netz nach angeschlossenen/laufenden Geräten. const dns = require('dns'); // inkludiere die 'dns'-funktionen pExec('arp-scan -lgq --retry=10') // rufe arp-scan auf .then(res => res && res.match(/(\d*\.){3}\d*\s*([\dA-F]{2}\:){5}[\dA-F]{2}/gi)) // gib ein Array aus die aus den IP und MAC-Adressen besteht die gefunden wurden .then(res => pSeries(res, item => { // Für jedes gefundene IP/MAC-Paar const s = item.split('\t'); // splitte die IP von der MAC-Adresse, diese sind durch \t getrennt return pGet('http://api.macvendors.com/'+s[1]) // nun prüfe mittels einer web-Api wer der Erzeuge für die HW ist mit dieser Mac-Adresse .then(x => x.trim(), err => 'Vendor not found') // wenn ein Fehler auftritt und der Hersteller nicht gefunden wird gib 'Vendor not found' zurück .then(x => s.push(x) && c2pP(dns.reverse)(s[0])) // hänge an das split array den Herstellernamen an und versuche einen dns.reverse call mit der IP-Adresse um den Namen am lokalen DNS-Server zu erfahren .then(nam => s.concat(nam), err => s.concat(['N/A'])) // Hänge den Namen oder 'N/A' an wenn er nicht gefunden wurde .then(res => res.join('; ')); // Mach aus dem Array ein String mit '; ' getrennt },10)) // warte 10ms nach jedem gefundenen Paar .then(res => pSeries(res,item => _D(_O(item),Promise.resolve()))); // Zeig alle Ergebnisse an. Promise.resolve returniert eine Promise die sofort 'Erfolg' bestätigt. Warum verwende ich lieber const/let? Es reduziert die Proigrammierfehler! Mit const s = xxx sag ich dass ich s diesen Block definiere und es nicht neu zugewiesen werden darf. Mit s.push() kann ich den Inhalt veändern aber ich darf s nich mit s = x neu zuweisen. Mit let definiert man variablen die auch nur in diesem Block gültig sind, also ist `var k = [1,2,3]; for (let i in k) { let j = k[i]; for(let k of [11,22,33]) _D(`${k}:${j}`); } _D(k);` immer eine neue Variable i,j und k und das 'var k' bleibt so wie es ist. Aber Vorsicht: Wenn ihr Node Version 4.x oder darunter (0.12) verwendet ist let nur anwendbar wenn '"use strict";' auf Funktionslevel angewendet wird. Wenn ihr Version 6.9.x verwendet (die momentane Note-LTS = Long Time Support-Version) dann ist let auch im gesamten schript ohne '"use strict";' möglich. In einer weiteren Folge weden wir dann einige weiteren Tricks beleuchten! Liebe Grüße Frank[/i]
  • Scriptersatz für direkte Verknüpfung in iobroker?

    Verschoben
    9
    0 Stimmen
    9 Beiträge
    2k Aufrufe
    B
    Naja, da sind deiner Logik keine Grenzen gesetzt. Gäste, Abwesenheit usw sind Variablen die abgeprüft werden. Morgens hoch hängt davon ab wie die realen Lichtverhältnisse sind (Bewegungsmelder oder Lichtsensor außen), abends automatisch runter mögen wir nicht. Drücken beim Schlafen gehen eine zentrale Taste. Laufen lasse ich alles auf der CCU, dafür ist sie da und das funktioniert auch alles. Zu den Berechnungen gibt's im Homematic Forum viele Threads. Das Tageszeiten Script würde ich noch empfehlen. Das gliedert den Tag abhängig von Sonnen auf / Untergang ganz sinnvoll. Grüße Brati von unterwegs gesendet.
  • Optimaler Umgang mit Request Fehlern

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    1k Aufrufe
    blauholstenB
    Hi, Hier ist Recht gut beschrieben warum das mit try…Catch nicht funktioniert. <url url="http://m.heise.de/developer/artikel/Einfuehrung-in-die-asynchrone-JavaScript-Programmierung-2752531.html">~~[http://m.heise.de/developer/artikel/Einfuehrung-in-die-asynchrone-JavaScript-Programmierung-2752531.html" target="_blank">](</s><LINK_TEXT text=)~~ [<link_text text=" http://m.heise.de/developer/artikel/Ei … 52531.html">http://m.heise.de/developer/artikel/Einfuehrung-in-die-asynchrone-JavaScript-Programmierung-2752531.html</link_text>](</s><LINK_TEXT text=)</url>
  • Durchschnittswerte errechnen

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    822 Aufrufe
    paul53P
    Du kannst sicherlich die Energiewerte (Einspeisung, Verbrauch) täglich zu einer festen Uhrzeit (schedule) abfragen. Die durchschnittliche Leistung eines Tages lässt sich daraus einfach berechnen: 24-h-Durchschnitts-Leistung = (Energie_heute - Energie_gestern) / 24 h
  • Suche einige Funktionen.

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    578 Aufrufe
    eric2905E
    Hi, @ThomasD: Danke erst einmal, aber wie führe ich die Kommandos im Javascript aus? ` einmal die Suche genutzt und schon was passendes gefunden ;-) http://forum.iobroker.net/viewtopic.php?t=3228 Gruß, Eric
  • [erledigt]Zeichenkette zerlegen

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    698 Aufrufe
    blauholstenB
    Hi, danke für deine schnelle Antwort. Hatte das mit dem Objekt Zugriff auch schon vorhin probiert. Aber das mit dem // Falls es ein JSON-string ist ist mir nicht eingefallen, darum ging es nicht. :oops: DANKE NOCHMAL
  • String in 2 Variable/Objekte

    Verschoben
    7
    0 Stimmen
    7 Beiträge
    4k Aufrufe
    M
    Danke für die ausführliche Antwort, hatte die Anzahl der Ausgänge nur auf 2 erhöht. Werde das heute Abend nochmal versuchen. Gruß Micha Gesendet von iPhone mit Tapatalk
  • Fritzbox bedienen

    Verschoben
    6
    0 Stimmen
    6 Beiträge
    2k Aufrufe
    L
    Morgen, Hat jemand schon ne Möglichkeit gefunden die Anrufliste im der Fritzbox per HTTP zu löschen? Oder per Command im TR064 Adapter? Mfg Sven

794

Online

32.4k

Benutzer

81.5k

Themen

1.3m

Beiträge