1
0
mirror of https://github.com/node-red/node-red-nodes.git synced 2023-10-10 13:36:58 +02:00

Node red mail usetls (#480)

* Default value for tls, checking if tls is set to false
This commit is contained in:
Schreck1985 2018-08-22 14:57:42 +02:00 committed by Dave Conway-Jones
parent 35cbcb3345
commit 45e4c6d9d4
3 changed files with 13 additions and 1 deletions

View File

@ -49,6 +49,10 @@
<input type="password" id="node-input-password"> <input type="password" id="node-input-password">
</div> </div>
<br/> <br/>
<div class="form-row">
<label for="node-input-useTLS"><i class="fa fa-lock"></i> <span data-i18n="email.label.useTLS"></label>
<input type="checkbox" id="node-input-tls" style="display:inline-block; width:20px; vertical-align:baseline;">
</div>
<div class="form-row"> <div class="form-row">
<label for="node-input-dname"><i class="fa fa-tag"></i> <span data-i18n="node-red:common.label.name"></span></label> <label for="node-input-dname"><i class="fa fa-tag"></i> <span data-i18n="node-red:common.label.name"></span></label>
<input type="text" id="node-input-dname" data-i18n="[placeholder]node-red:common.label.name"> <input type="text" id="node-input-dname" data-i18n="[placeholder]node-red:common.label.name">
@ -69,6 +73,7 @@
<p>Alternatively you may provide <code>msg.attachments</code> which should contain an array of one or <p>Alternatively you may provide <code>msg.attachments</code> which should contain an array of one or
more attachments in <a href="https://www.npmjs.com/package/nodemailer#attachments" target="_new">nodemailer</a> format.</p> more attachments in <a href="https://www.npmjs.com/package/nodemailer#attachments" target="_new">nodemailer</a> format.</p>
<p>If required by your recipient you may also pass in a <code>msg.envelope</code> object, typically containing extra from and to properties.</p> <p>If required by your recipient you may also pass in a <code>msg.envelope</code> object, typically containing extra from and to properties.</p>
<p>If you have own signed certificates, Nodemailer can complain about that and refuse sending the message. In this case you can try switching off TLS.</p>
<p>Note: uses SMTP with SSL to port 465.</p> <p>Note: uses SMTP with SSL to port 465.</p>
</script> </script>
@ -81,6 +86,7 @@
server: {value:"smtp.gmail.com",required:true}, server: {value:"smtp.gmail.com",required:true},
port: {value:"465",required:true}, port: {value:"465",required:true},
secure: {value: true}, secure: {value: true},
tls: {value: true},
name: {value:""}, name: {value:""},
dname: {value:""} dname: {value:""}
}, },

View File

@ -30,6 +30,7 @@ module.exports = function(RED) {
this.outserver = n.server; this.outserver = n.server;
this.outport = n.port; this.outport = n.port;
this.secure = n.secure; this.secure = n.secure;
this.tls = true;
var flag = false; var flag = false;
if (this.credentials && this.credentials.hasOwnProperty("userid")) { if (this.credentials && this.credentials.hasOwnProperty("userid")) {
this.userid = this.credentials.userid; this.userid = this.credentials.userid;
@ -50,12 +51,16 @@ module.exports = function(RED) {
if (flag) { if (flag) {
RED.nodes.addCredentials(n.id,{userid:this.userid, password:this.password, global:true}); RED.nodes.addCredentials(n.id,{userid:this.userid, password:this.password, global:true});
} }
if (n.tls === false){
this.tls = false;
}
var node = this; var node = this;
var smtpOptions = { var smtpOptions = {
host: node.outserver, host: node.outserver,
port: node.outport, port: node.outport,
secure: node.secure secure: node.secure,
tls: {rejectUnauthorized: node.tls}
} }
if (this.userid && this.password) { if (this.userid && this.password) {

View File

@ -13,6 +13,7 @@
"folder": "Folder", "folder": "Folder",
"protocol": "Protocol", "protocol": "Protocol",
"useSSL": "Use SSL?", "useSSL": "Use SSL?",
"useTLS": "Use TLS?",
"disposition": "Disposition", "disposition": "Disposition",
"none": "None", "none": "None",
"read": "Mark Read", "read": "Mark Read",