NEWS
??? TypeError [ERR_INVALID_CALLBACK]: ???
-
Hallo zusammen,
seit kurzem sehe ich bei einem Script Fehler im Log:
javascript.0 2020-05-10 10:04:59.188 error (63680) at FSReqWrap.args [as oncomplete] (fs.js:140:20) javascript.0 2020-05-10 10:04:59.187 error (63680) at script.js.common.Klingel_-_Kamerabild:21:20 javascript.0 2020-05-10 10:04:59.187 error (63680) at ProtectFs.unlink (/volume1/opt/iobroker/node_modules/iobroker.javascript/lib/protectFs.js:35:30) javascript.0 2020-05-10 10:04:59.187 error (63680) at unlink (fs.js:943:14) javascript.0 2020-05-10 10:04:59.187 error (63680) at makeCallback (fs.js:136:11) javascript.0 2020-05-10 10:04:59.187 error (63680) script.js.common.Klingel_-_Kamerabild: TypeError [ERR_INVALID_CALLBACK]: Callback must be a functionDas Script sendet ein Kamerabild wenn jemand klingelt, funktioniert auch, jedoch seit kurzem (vermutlich durch irgendein Update von NPM oder des Javascript Adapters) sehe ich diese Fehlermeldung im log und beim ausführen des Programms startet der Javascript Adapter neu. Ich würde ich gern verstehen was da nicht passt.
Kann mir jemand auf die Sprünge helfen?Hier noch der Code:
var request = require('request'); var fs = require('fs'); function sendMailWithAttachment(subject, msg, attachment) { sendTo("email", { to: "xxx@xxx.xx", subject: subject, text: msg, html: "<body style='font-family: Verdana;font-size: 12.0px;'><p>" + msg + "<br /><br /><br /><img src='cid:image1'/></p></body>", attachments: [{path: attachment, cid: "image1"}] }); } function sendPictureByMail(subject, message) { // URL var req = 'http://192.168.178.79/axis-cgi/jpg/image.cgi?resolution=2592x1944'; request.get({url: req, encoding: 'binary'}, function (err, response, body) { fs.writeFile('/tmp/snap.jpg', body, 'binary', function(err, result) { if (!err) { sendMailWithAttachment(subject, message, '/tmp/snap.jpg'); fs.unlink('/tmp/snap.jpg'); } }); }); } subscribe({id: 'hm-rpc.0.MEQ0046034.1.PRESS_SHORT' , val: true}, function (obj) { sendPictureByMail('Haussteuerung -> Klingel', 'Bild im Anhang:'); });Danke...
-
Sehe da auf den ersten Blick keinen Fehler. Zeile 1 ist unnötig das wird schon intern erledigt und ich würde mal Zeile 21 auskommentieren, da die in der Fehlermeldung genannt wird und ein löschen nicht wirklich wichtig ist.
Oder alternativ Zeile 21:
fs.unlink('/tmp/snap.jpg', (err)=>{if (err) throw err;});weil er sich beschwert das der nicht vorhandene callback ungültig ist.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden