NEWS
[gelöst] email-Adapter nutzen
-
Hallo,
habe gesehen, daß der ioBroker einen email-Adaptr hat. Testmails kann er schon mal senden. Aber wie bindet man ihn ein? Wie übergebe ich Adresse, Betreff und Text? Kann man den email-Adapter auch von außen beauftragen, z.B. von einem anderen Kleinrechner wie dem ESP8266?
-
Hi klassisch,
falls du noch auf der Suche bist, ist hier die Lösung:
// send email to all instances of email adapter sendTo("email", "Email body"); // send email to specific instance of email adapter sendTo("email.1", "Email body"); // To specify subject or other options sendTo("email", { from: "iobroker@mydomain.com", to: "aabbcc@gmail.com", subject: "Message from ioBroker", text: "This is test email to you!" }); // To send attachments sendTo("email", { attachments: [ // use file on disk as attachment {path: "/pathToImage/picture1.jpg"}, { // use URL as an attachment filename: 'license.txt', path: 'https://raw.github.com/andris9/Nodemailer/master/LICENSE' } ] }); // To send in html format sendTo("email", { html: " Embedded image: ![](cid:image1) ", attachments:[ {path: "path/to/file/image1.jpg", cid: "image1"} ] });
Hier gefunden: https://github.com/ioBroker/ioBroker.email
-
Vielen Dank, ja, bin noch auf der Suche, wenn auch nicht mit Hochdruck. Derzeit wickle ich das noch alles auf der HM CCU ab. Auf ioBroker läuft nur vis zur Visualisierung und history + FLOT. Wenn sich mein Orange Pi Plus 2e stabiler als der Raspi erweist, kann ich meine ioBroker Aktivitäten ausbauen. Und emails-Senden ist eine der Grundfunktionen einer Hausautomatisierung/Überwachung.
Habe gesehen, daß die ScriptEngine dafür genutzt wird. Hatte ich noch nicht aktiviert und benutzt. Da muß ich mich mal einarbeiten, javascript wird wohl auch die Grundlage der Automatisierung sein.
-
Guten Tag liebe ioBroker Community,
könnt ihr mir sagen wie ich mehrere Anhänge an eine E-Mail anhängen kann?
var erstellteDateien = []; erstellteDateien.push("/opt/iobroker/node_modules/iobroker.javascript/2022.12.03_1.pdf"); erstellteDateien.push("/opt/iobroker/node_modules/iobroker.javascript/2022.12.03_2.pdf");
so bekomme ich es hin:
sendTo("email", { attachments: [ {path: erstellteDateien[0]}, {path: erstellteDateien[1]} ] });
aber die Anzahl der Dateien ist variabel. So oder anders :
sendTo("email", { attachments: erstellteDateien });
Edit:
OK, für die Nachwelt...var erstellteDateien = []; //enthält die Liste mit Dateien var newPath[]; for (var datei of erstellteDateien){ newPath.push({path: javaPath + datei}); } sendTo("email", { attachments: newPath });
Edit 2:
Gibt es eine Möglichkeit bei sendTo("email".... auf die Versendung zu warten bevor fortgesetzt wird. Await hat anscheinend keinen Einfluss.
Gelöst hiermit:
https://forum.iobroker.net/topic/28294/asynchron-callback-promise-await-hilfe/39Besten Dank
Benjamin