Training
Training
Welcome
Guided Paths
Build an App
Training Planner
Courses
Developer Schools
Boot Camps
Certifications
Tech Talks
Documentation
Documentation
Overview
ODC
O11
Forums
Forge
Get Involved
Get Involved
Home
Jobs
Ideas
Members
Mentorship
User Groups
Downloads
Platforms
OutSystems.com
My Platform
Community
Resources
Support
Search in OutSystems
Log in
Sign Up
Community
›
Forge
›
Assets list
›
Email Extended
Email Extended
Stable version
1.0.1
(Compatible with
OutSystems 11
)
Uploaded
on
02 August 2023
by
5.0
(7 ratings)
Overview
Reviews
Versions
Documentation
Support
Email Extended
Details
Extends the email capabilities of the platform. With this library you can send emails without referencing the emails' module, and you can set test email list per application.
Read more
No references to Emails modules
If you want just to send emails without upwards (or any) reference, you can call the action
SendEmail in the module EmailExtended_lib. The action receives almost the same parameters as the
Email node, so it's pretty straightforward to use. The
SendEmail action relies on OutSystems Email libraries, this means that email logs and dispatches to the SMTP server act like normal
Email calls.
Custom email lists for each project/app/module/email
If you want to set a different test email list for each project/application/module/email/project, you can use the Email Extended app to configure as many list as you want. For each list, you can specify which emails addresses (
) you want to redirect them to.
Email Address Validation - Check if a given string is an email address
The EmailExtended_lib also include helpers to validate the email addresses.
To validate we can rely on regex validations, or we can rely on the parser provided by the .NET Framework. We can parse an email address using the MailAddress class, which internally use MailAddressParser.
Email_isValidEmail action uses this parser to validate an email address.
Email Address Validation - Check if the domain has an email server
Having an email address marked as valid, doesn't mean we'll be able to send an email at this address. If the user types "john@doe.dom" instead of "john@doe.com" (".dom" instead of ".com"), we may email a domain that doesn't exist.
We can avoid this kind of typing errors by checking the provided domain exists and has an email server. Indeed, when you email a recipient, you must first ask the IP address of the email server of the recipient. This information is provided by the DNS server, and more specifically the MX or A entry.
To query the DNS server in .NET, we can use the NuGet package DnsClient (
NuGet
,
GitHub
) which support .NET and .NET Core.
Email_isValidEmailWithDNSCheck will do that.
Like my components?
Buy me a beer
:) and support my work.
Release notes
(1.0.1)
Upgraded DnsClient from version
1.4.0 to 1.7.0
Added cache (configurable via site property, defaults to 1 hour) to DNS checks. This improves performance and reduce the number of DNS request for repeated domains
2 new SendEmail actions
SendEmail_WithSimpleValidation
- will raise an exception if the email is not valid, does basic validation (Email_isValidEmail)
Email_isValidEmailWithDNSCheck
- will raise an exception if the email is not valid, does DNS validation over the host part of the email address (Email_isValidEmailWithDNSCheck)
Created Service Actions that can be used instead of Server Actions
Fixed a bug with the EmailExtended Test List configurations
License
(1.0.1)
BSD-3 license (
https://opensource.org/licenses/BSD-3-Clause
)
Reviews
(2)
by
2021-07-13
in version 1.0.0
Very clever solution indeed that eliminates the nightmare of upward references for email screens!
by
2021-05-10
in version 1.0.0
Perfect solution to avoid upward references. You have made me very happy.
Team
MVP
Other assets in this category
Functional libraries & utilities, Other functions & libraries
XML Records
Afonso Carvalho
An extension that allows you to convert an hierarchical structure, composed of Records and/or RecordLists to XML. It also allows you to read an XML into the structure.
7928
Event System
Leonardo Fernandes
Use custom events in your OutSystems apps! Communicate events instantly between web blocks, refactor your screen logic, use divide-and-conquer for complex forms, build reusable components, and much more. And do all of these with a beautifully simple API.
2730
ardoJSON
João Barata
Generic extension for serializing and deserializing Outsystems values into and out of JSON
12201
More from Miguel Antunes
Advanced Excel
Carlos Freitas
Advanced Excel integration with the export/import of Excel files. Enables data formatting, even automatic creation of Excel charts. This enables writing of binary multi-sheet excel-files without the use of an office installation.
17578
Html2PdfConverter
Guilherme Pereira
Simple to use html to pdf/image converter. Based on wkhtmltopdf (https://wkhtmltopdf.org/)
13447
Ultimate PDF
Leonardo Fernandes
Generate PDF reports by using modern web technologies.
21353
Loading...
Loading