SMTPValve
Valve to send mail using an SMTP server .
Note: This valve is commonly used when sending notifications to users and administrators. NOT for sending one-time passwords.
Properties
Example Configuration
A connection to SMTP can be made using scenario's in PhenixID configuration portal.
So some of the parameters will be contained within that global smtp configuration.
If a connection has been created already, the id for smtp_settings will be used and configuration will look similar to the first example.
More information about the Scenario for SMTP can be found here.
The valve can also be added with all the parameters, through the Advanced tab in PhenixID configuration portal.
Configuration will then look similar to the second example.
{
"id": "27dffbf8-ff93-4766-918a-34b5423278df",
"name": "SMTPValve",
"enabled": "true",
"config": {
"smtp_settings": "fff21007-4fbe-450d-8aa2-3756a44745fa",
"mail_template": "resources/otp_mail_template.mustache",
"mail_param_name": "mail",
"userid_param_name": "User-Name",
"start_tls_enabled": "true",
"ssl_on_connect": "false",
"ssl_check_server_identity": "false",
"socket_connection_timeout": "15",
"removal_prefixes": "smtp:,SMTP:,sip:",
,
"message_body_key":"valves.delivery.smtp.message.body",
"dynamic_values" : "$$USER
={{item.givenName}}"
}
}
{
"name": "SMTPValve",
"config": {
"userid_param_name":"{{request.username}}",
"mail_param_name": "{{item.mail}}",
"mail_template" : "resources/myowntemplate.mustache",
"recipients" : "[email protected],[email protected]",
"smtp_host" : "smtp.company.org",
"smtp_port" : "587",
"smtp_username" : "[email protected]",
"smtp_password" : "{enc}Lsd28p9AMU1oAjwHgHprVdWmGteLZ6XYxY/AxkBusXg=",
"smtp_from_address" : "[email protected]",
"attachment_param_name": "document",
"attachment_name_param_name": "MyDocument.txt",
"message_subject": "Hi $$USER
,
your subject text",
"message_body": "Hi $$USER
, your body text",
"dynamic_values" : "$$USER
={{item.givenName}}"
}
}
In the example above the value for attribute mail has been picked up earlier in the flow.
The value for userid_param_name has been picked up from the request. Most common values are {{request.User-Name}} for RADIUS and {{request.username}} for HTTP.
In the first example the message sent to user is fetched from the entry: valves.delivery.smtp.message.body located in the lang/en/strings.xml file.
Requirements
Item set must have at least one entry.