NEWS
SOLVED Pushnachricht an Telegram über Node Red
-
Hallo Leute, ich wollte mir gerne eine Pushnachricht über Telegram und Node Red senden lassen wenn in einem Objekt ein bestimmter Inhalt auftaucht.
Ich bekomme es leider uns verrecken nicht hin, wie ich der „function“ die Nachricht schicken lassen.
In Node Red ist der Telegrambot Norm installiert und auch beim deployen verbunden.
Nur bekomme ich keine Nachricht.
Wie stelle ich sowas vernünftig auf die Beine und vll hat ja sogar jemand einen passenden Flow den er zur Verfügung stellen kann?Danke Schonmal!
-
So, habs jetzt geschafft..Nach einem Langem Kampf
Habe es nun so gemacht:
Mit einem kleinen JavaScript schreibt er mir immer die SSID bzw. den Namen in einen Datenpunkt und nun trigger ich einfach im Blockly den Wert und wenn dieser Auftaucht, bekomme ich eine Telegram Meldung! Trotzdem Danke fürs "Unterstützen" -
ich bin leider kein NodeRed Experte aber fur andere wurde es helfen wen du ein par screenshots einstellst was du genau probiert hast
-
https://haus-automatisierung.com/projekt/2019/01/13/projekt-paketdienst-erkennen-probe-wifi.html
Diese Anleitung wollte ich mal folgen, weiß aber nicht, wie ich nun bei dem Flow was dort auf der Seite vorhanden ist, weiter agieren muss / soll, um mir auf meinen TelegramBot eine Nachricht senden zu lassen.
Bin leider noch sehr grün hinter den Ohren wenn es um Node Red etc geht..[{"id":"fee8da92.ffe228","type":"subflow","name":"An FHEM","info":"","in":[{"x":320,"y":140,"wires":[{"id":"7d4eb671.f86aa8"}]}],"out":[]},{"id":"7d4eb671.f86aa8","type":"mqtt out","z":"fee8da92.ffe228","name":"An FHEM","topic":"/Service/fhem/cmnd","qos":"","retain":"","broker":"afa97030.18184","x":460,"y":140,"wires":[]},{"id":"9ac0b213.4b60d","type":"tab","label":"WiFiProbes","disabled":false,"info":""},{"id":"af7ec61a.250718","type":"mqtt in","z":"9ac0b213.4b60d","name":"","topic":"/SmartHome/Interface/WiFi/ProbeRequest","qos":"2","broker":"afa97030.18184","x":180,"y":140,"wires":[["e20cd860.836888"]]},{"id":"e20cd860.836888","type":"json","z":"9ac0b213.4b60d","name":"","property":"payload","action":"","pretty":false,"x":440,"y":140,"wires":[["8df8bce5.be216"]]},{"id":"8df8bce5.be216","type":"switch","z":"9ac0b213.4b60d","name":"Welcher Dienst","property":"payload.ssid","propertyType":"msg","rules":[{"t":"cont","v":"DHL","vt":"str"},{"t":"cont","v":"UPS","vt":"str"},{"t":"cont","v":"DPD","vt":"str"},{"t":"cont","v":"GLS","vt":"str"},{"t":"else"}],"checkall":"false","repair":false,"outputs":5,"x":610,"y":140,"wires":[["275d4978.731266"],["2a31156a.f23f5a"],["86fc14c5.edc9c8"],["77d835b5.45b92c"],[]]},{"id":"275d4978.731266","type":"trigger","z":"9ac0b213.4b60d","op1":"DHL","op2":"false","op1type":"str","op2type":"bool","duration":"60","extend":true,"units":"s","reset":"","bytopic":"all","name":"DHL","x":800,"y":80,"wires":[["2ef92fab.3ea27"]]},{"id":"2a31156a.f23f5a","type":"trigger","z":"9ac0b213.4b60d","op1":"UPS","op2":"false","op1type":"str","op2type":"bool","duration":"60","extend":true,"units":"s","reset":"","bytopic":"all","name":"UPS","x":800,"y":120,"wires":[["2ef92fab.3ea27"]]},{"id":"86fc14c5.edc9c8","type":"trigger","z":"9ac0b213.4b60d","op1":"DPD","op2":"false","op1type":"str","op2type":"bool","duration":"60","extend":true,"units":"s","reset":"","bytopic":"all","name":"DPD","x":800,"y":160,"wires":[["2ef92fab.3ea27"]]},{"id":"77d835b5.45b92c","type":"trigger","z":"9ac0b213.4b60d","op1":"GLS","op2":"false","op1type":"str","op2type":"bool","duration":"60","extend":true,"units":"s","reset":"","bytopic":"all","name":"GLS","x":800,"y":200,"wires":[["2ef92fab.3ea27"]]},{"id":"2ef92fab.3ea27","type":"switch","z":"9ac0b213.4b60d","name":"Neuer Dienst","property":"payload","propertyType":"msg","rules":[{"t":"false"},{"t":"else"}],"checkall":"false","repair":false,"outputs":2,"x":980,"y":140,"wires":[[],["8b5e750b.842698"]]},{"id":"bf1000dc.99902","type":"subflow:fee8da92.ffe228","z":"9ac0b213.4b60d","x":1320,"y":160,"wires":[]},{"id":"8b5e750b.842698","type":"function","z":"9ac0b213.4b60d","name":"FHEM-CMD","func":"msg.payload = \"msg push @rr_Matthias |Paketdienst| \" + msg.payload + \" ist jetzt da!\"\nreturn msg;","outputs":1,"noerr":0,"x":1170,"y":160,"wires":[["bf1000dc.99902"]]},{"id":"afa97030.18184","type":"mqtt-broker","z":"","name":"","broker":"mqtt","port":"1883","clientid":"nodered","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"willTopic":"/Service/nodered/status","willQos":"0","willPayload":"crashed","birthTopic":"/Service/nodered/status","birthQos":"0","birthPayload":"started"}]
Das ist der Flow aus der "Anleitung. wie ich aber nun weitermachen muss ist für mich noch unverständlich.
Vielleicht hat ja jemand eine Anregung oder einen Fertigen Flow.. -
@4-Real said in Pushnachricht an Telegram über Node Red:
https://haus-automatisierung.com/projekt/2019/01/13/projekt-paketdienst-erkennen-probe-wifi.html
verstehe, diese Anleitung hat aber glaube ich keine relation mit iobroker ist also eher eine selbständiges system.
Hmm ... es word gehen da bin ich mir sicherda du noch auf Anfänger fuss bist, muss es node red sein ?
Per blocky script least sich sowas auch relativ einfach realisieren (wette fast einfacher als NodeRed wen man noch keine Grundlagen/Erfahrungen hat)so mal als tip
-
Ja hast du nicht Unrecht Das ist natürlich beides Unabhängig voneinander wollte damit aber nur verdeutlichen was "geplant" ist. Momentan ein wenig Spielerrei..
Wie kann ich denn in einem Blockly so etwas auswerten?
Blockly mache ich eigentlich jedes Script aber bestimmte MQTT auswerten etc, habe ich noch nicht so speziell gemacht.. -
So Mal spontan: du kannst jeden Wert mit einen falls Block prüfen und dann eine Aktion auslösen.
Also erst einen Trigger, was soll es auslösen
Dan eine abfrage, die Wert Überprüfung
Dan die Aktion, in diesen Fall telegram Nachricht.Bin gerade (und heute) nicht mehr an PC wen wer Avers ein Beispiel hatte bitte ergänzen
-
So, habs jetzt geschafft..Nach einem Langem Kampf
Habe es nun so gemacht:
Mit einem kleinen JavaScript schreibt er mir immer die SSID bzw. den Namen in einen Datenpunkt und nun trigger ich einfach im Blockly den Wert und wenn dieser Auftaucht, bekomme ich eine Telegram Meldung! Trotzdem Danke fürs "Unterstützen" -
So, hätte da nochmal eine Frage:
Habe mir jetzt wie oben schon gesagt ein Script erstellt was mir eben jedes mal einen Text in meinen Datenpunkt schreibt. So sieht dies aus:
var idJSON = 'mqtt.0.SmartHome.MQTTS'; // Datenpunkt-ID mit JSON-String var make; function JSONtoTemp(json) { var obj = JSON.parse(json); make = obj.make; log('make:'); setState("meinedatenpunkte.0.ssiddhl"/*ssiddhl*/, obj.make, true); } JSONtoTemp(getState(idJSON).val); // Script start on(idJSON, function(dp) { // triggern bei Wertänderung JSONtoTemp(dp.state.val); });
Da er nun aber alle 10 bis 20 Sekunden (manchmal weniger, manchmal mehr) etwas in diesen Datenpunkt schreibt und das manchmal sehr oft in einer Sekunde wollte ich auch einerseits nicht den Iobroker ständig mit so viel Daten auf einmal überfordern.
Das wäre das Logging.
Könnte ich jetzt irgendwie noch einstellen das dieses Script nur ab einer bestimmten Uhrzeit und bis zu einer Bestimmten Uhrzeit abläuft?!
Wenn ja, wie würde ich dies machen?