Funciones de Correo
Las funciones de Correo permiten enviar mensajes de correo desde secuencias de comandos, ya sea mediante una especificación completa de opciones o mediante una notificación de correo configurada.
Validar Direcciones de Correo
Para validar una dirección de correo, puede utilizar una expresión regular para probar que una dirección de correo sigue reglas específicas. Compruebe si coincide (el RegExMatch()
la función devuelve más de 0 coincidencias) y, en ese caso, devuelve "válido". Las reglas son que la dirección debe constar de:
- un nombre compuesto de caracteres específicos (alfanuméricos, punto, guión bajo, porcentaje, signo más, guión), seguido de
- un símbolo @, seguido de
- un nombre de dominio compuesto de caracteres específicos (alfanuméricos, punto, guión), seguido de
- un solo punto, seguido de
- un nombre de dominio de nivel superior compuesto de caracteres alfabéticos, de dos a cuatro caracteres de longitud.
La expresión completa se encierra entre paréntesis para crear una subexpresión marcada; si coincide, se devolverá "1".
Tenga en cuenta que las barras invertidas en la cadena de expresión regular deben escaparse duplicándolas.
If(RegExMatch(emailaddress, "([A-z0-9._%+-]+@[A-z0-9.-]+\\.[A-z]{2,4})") > 0,
"valid",
"invalid");
// An email address "first.last@example.com" will return "valid"
Para obtener información adicional, consulte Funciones de cadena y la función RegExMatch()
.
SendEmail
Declaración
string SendEmail(string from, string to, string subject, string message[, string smtpServers, string account, string accountPassword, string cc, string bcc, string replyTo, bool useSSL])
Sintaxis
SendEmail(<from>, <to>, <subject>, <message>[, <smtpServers>, <account>, <accountPassword>, <cc>, <bcc>, <replyTo>, <useSSL>])
Parámetros Necesarios
from
: La dirección de correo que se utilizará para el campo "de"to
: Una lista delimitada por comas de direcciones de correo a las que enviar el mensaje de correosubject
: El asunto del mensaje de correomessage
: El mensaje del mensaje de correo
Parámetros Opcionales
smtpServers
: Una lista delimitada por comas de servidores SMTP en el formato servidor:puerto, comosmtp.example.com:465
. El puerto es opcional y, si no está incluido, se probarán los puertos SMTP estándar. Se utilizará el primer servidor que tenga éxito.account
: Nombre de cuenta que se utilizará en los servidores SMTPaccountPassword
: Contraseña de la cuenta en los servidores SMTPcc
: Una lista delimitada por comas de direcciones de correo para enviar una copia del correo abcc
: Una lista delimitada por comas de direcciones de correo para "copiar" ciegamentereplyTo
: Una dirección de correo para el campo de respuestauseSSL
: Indicador booleano que indica si se debe utilizar SSL/TLS al autenticar con los servidores SMTP.
Nota
Se pueden utilizar caracteres multibyte con cualquiera de estos parámetros a partir del agente Harmony versión 10.1.
Descripción
Envía un correo utilizando la información proporcionada. En caso de éxito, se devuelve una cadena vacía; de lo contrario, se devuelven los mensajes de error.
Sólo se requieren los primeros cuatro parámetros; el resto son opcionales. Si no se especifica información, se leerá del archivo de configuración del servidor. Si no está disponible en el archivo de configuración, el correo no se enviará.
Ejemplos
// Sending an email
// From address
// To address
// Subject
// Message
// SMTP servers
// Account
// Account password
// CC list
// BCC list
// Reply-to address
// Using SSL
SendEmail("john.doe@example.com",
"jane.doe@example.com,firstname.lastname@example.com",
"Weird data in PO input",
"There was some weird data in this incoming PO, could you have a look at it?",
"http://mail.example.com",
"john.doe@example.com",
"mymailpwd",
"jennifer@example.com",
"svennis@example.com, urban@example.com",
"jd@example.com",
1);
// Sending email, showing port configuration
SendEmail("myname@example.com",
"othername@example.com",
"Sendmail TEST",
"A Sendmail TEST message.",
"smtp.example.com:587",
"myname@example.com",
"mypassword", '', '', '', 1);
En el último ejemplo, se utiliza un servidor SMTP que escucha en el puerto. Como no se copian ni se copian direcciones en el mensaje de correo, se muestran como cadenas vacías. Como no hay una dirección de correo de "respuesta", también es una cadena vacía.
SendEmailMessage
Declaración
string SendEmailMessage(string emailMessageId)
Sintaxis
SendEmailMessage(<emailMessageId>)
Parámetros Necesarios
emailMessageId
: Una ruta de referencia de cadena a una notificación correo en el proyecto actual
Descripción
Envía un correo utilizando una notificación de correo predefinida. En caso de éxito, se devuelve una cadena vacía; de lo contrario, se devuelven los mensajes de error.
El mensaje de correo utilizado en esta llamada de función debe definirse como una notificación correo en el proyecto actual. Para obtener más información, consulte las instrucciones sobre cómo insertar mensajes de correo en Notificaciones sección en Jitterbit Script.
Ejemplos
// Send a predefined email message
SendEmailMessage("<TAG>email:My Email Message<TAG>");
SendSystemEmail
Declaración
string SendSystemEmail(string to, string subject, string message)
Sintaxis
SendSystemEmail(<to>, <subject>, <message>)
Parámetros Necesarios
to
: Una lista delimitada por comas de direcciones de correo a las que enviar el mensaje de correosubject
: El asunto del mensaje de correomessage
: El mensaje del mensaje de correo
Descripción
Envía un correo utilizando una dirección "De" preconfigurada, servidores SMTP e información de la cuenta. Estos se definen en el archivo de configuración del servidor. Si no se han definido, utilice una de las otras funciones de correo. En caso de éxito, se devuelve una cadena vacía; de lo contrario, se devuelven los mensajes de error.
Ejemplos
SendSystemEmail(Get("manager_email"),
"FYI",
"About to process a new purchase order with POID = " +
Get("POID") +
". Will be available for review in a few minutes.");
// Examples entries in a jitterbit.conf file for sending system emails:
[SmtpClient]
DefaultSmtpServers=mail.example.com
DefaultFromEmail=auser@example.com
# If your SMTP server needs authentication the account and password can be specified:
DefaultAccount=auser
DefaultAccountPassword=apassword
# If your SMTP server uses SSL/TLS, set this to true:
UseSSL=true