This function is used in Python Scripting.

Description

Sends an email through the given SMTP server. Note that this email is relayed first through the Gateway; the Client host machine doesn't need network access to the SMTP server.  

Note that you can use this function to send emails as text messages. Most phone service providers offer a domain that can be used to convert emails into text messages. For example: 1234567890@phone.domain.com. Contact your cell carrier for details. 

The following feature is new in Ignition version 8.1.22
Click here to check out the other new features
Ignition now supports more attachment file formats with associated MIME type mappings, including .ics, .ifb, .otf, and .wav. Additional or modified mappings may be specified in \webserver\webdefault.xml:

Example
<!-- Add <mime-mapping> blocks like the one below or modify default mappings -->
<!-- Map the file extension 'pwn' to the specified mime-type: -->
<mime-mapping>
	<extension>pwn</extension>
	<mime-type>application/vnd.3m.post-it-notes</mime-type>
</mime-mapping>

Client Permission Restrictions

This scripting function has no Client Permission restrictions.

Syntax

This function accepts keyword arguments.

system.net. sendEmail( smtp, fromAddr, [ subject ] , [ body ] , [ html ] , to, [ attachmentNames ] , [ attachmentData ] , [ timeout ] , [ username ] , [ password ] , [ priority ] , [ smtpProfile ] , [ cc ] , [ bcc ] , [ retries ], [replyTo] )

  • Parameters

String  smtp  - The address of an SMTP server to send the email through, like "mail.example.com". A port can be specified, like "mail.example.com:25". SSL can also be forced, like "mail.example.com:25:tls".

String  fromAddr  - An email address to have the email come from.

String  subject  - The subject line for the email. [optional]

String  body  - The body text of the email. [optional]

Boolean  html  - A flag indicating whether or not to send the email as an HTML email. Will auto-detect if omitted. [optional]

List[String] to  - A list of email addresses to send to.

List[String] attachmentNames  - A list of attachment names. Attachment names must have the correct extension for the file type or an error will occur. [optional] 

List[Byte]  attachmentData  - A list of attachment data, in binary format. [optional]

Integer  timeout  - A timeout for the email, specified in milliseconds. Defaults to 5 minutes (60,000*5).  [optional]

String  username  - If specified, will be used to authenticate with the SMTP host. [optional]

String  password  - If specified, will be used to authenticate with the SMTP host. [optional]

String  priority  - Priority for the message, from "1" to "5", with "1" being highest priority. Defaults to "3" (normal) priority. [optional]

String  smtpProfile  -  If specified, the named SMTP profile defined in the Gateway will be used. If this keyword is present, the smtp, username, and password keywords will be ignored. [optional]

List[String] cc  -  A list of email addresses to carbon copy. Only available if an smtpProfile is used. [optional]

List[String] bcc  -  A list of email addresses to blind carbon copy. Only available if an smtpProfile is used. [optional]

Integer  retries  -  The number of additional times to retry sending on failure. Defaults to 0. Only available if an smtpProfile is used. [optional]

List[String] replyTo An list of addresses to have the recipients reply to. If omitted, this defaults to the from address. [optional]

  • Returns

Nothing

  • Scope

Gateway, Vision Client, Perspective Session

Code Examples
Code Snippet
# This code sends a simple plain-text email to a single recipient, with no attachments.
body = "Hello, this is an email."
recipients = ["bobsmith@mycompany.com"]
system.net.sendEmail("mail.mycompany.com", 
 "myemail@mycompany.com", "Here is the email!", body, 0, recipients)
Code Snippet
# This code sends an HTML-formatted email to multiple recipients (including 
# cellphones) with no attachments.
body = "<HTML><BODY><H1>This is a big header</H1>"
body += "And this text is <font color='red'>red</font></BODY></HTML>"
recipients = ["bobsmith@mycompany.com", "1235558383@vtext.com", "sally@acme.org", "1235557272@vtext.com"]
myuser = "mycompany"
mypass = "1234"
system.net.sendEmail(smtp="mail.mycompany.com", fromAddr="myemail@mycompany.com", 
subject="Here is the email!", body=body, html=1, to=recipients, username=myuser, password=mypass)
Code Snippet
# This code asks the user for an attachment file and attaches the file.
filePath = system.file.openFile()
if filePath != None:
   # This gets the filename without the C:\folder stuff
   fileName = filePath.split("\\")[-1] 
   fileData = system.file.readFileAsBytes(filePath)
   smtp = "mail.mycompany.com"
   sender = "myemail@mycompany.com"
   subject = "Here is the file you requested"
   body = "Hello, this is an email."
   recipients = ["bobsmith@mycompany.com"]
   system.net.sendEmail(smtp, sender, subject, body, 0, recipients, [fileName], [fileData])
Code Snippet
# This code sends an HTML-formatted email to multiple recipients, including a cc, with no attachments,
# using an smtp server defined in the Gateway.
body = "<HTML><BODY><H1>This is a big header</H1>"
body += "And this text is <font color='red'>red</font></BODY></HTML>"
recipients = ["bobsmith@mycompany.com", "1235558383@vtext.com", "sally@acme.org", "1235557272@vtext.com"]
cc_recipients = ["annejones@mycompany.com"]
smtp_server = "mySmtpServer"
system.net.sendEmail(smtpProfile=smtp_server, fromAddr="myemail@mycompany.com", subject="Here is the email!", body=body, html=1, to=recipients, cc=cc_recipients)
Keywords

system net sendEmail, net.sendEmail