Funciones de Correo
Las funciones de Correo permiten enviar mensajes desde secuencias de comandos, ya sea como un proyecto predefinido o un correo del sistema o mediante una especificación completa de opciones.
Validar direcciones de correo
Para validar una dirección de correo, puede utilizar una expresión regular para comprobar que la dirección de correo sigue reglas específicas. Compruebe si coincide (la 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 a las que enviar una copia del correo.bcc
: Una lista delimitada por comas de direcciones de correo para realizar una "copia" a ciegasreplyTo
: 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 usar caracteres multibyte con cualquiera de estos parámetros a partir del agente Jitterbit versión 10.1.
Descripción
Envía un correo con la información suministrada. Si la operación se realiza correctamente, se devuelve una cadena vacía; de lo contrario, se devuelven los mensajes de error.
Solo son obligatorios los cuatro primeros parámetros, el resto son opcionales. Si no se especifica información, se leerá desde el archivo de configuración del servidor. Si no está disponible en el archivo de configuración, no se enviará el correo.
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 hay direcciones copiadas ni copiadas a ciegas en el mensaje de correo, se muestran como cadenas vacías. Como no hay una dirección de correo a la que responder, también es una cadena vacía.
SendEmailMessage
Declaración
string SendEmailMessage(string emailMessageId)
Sintaxis
SendEmailMessage(<emailMessageId>)
Parámetros necesarios
emailMessageId
: Un mensaje de correo en el proyecto actual
Descripción
Envía un correo utilizando un mensaje de correo predefinido. Si la operación se realiza correctamente, 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 un mensaje de correo en el proyecto actual. Consulte las instrucciones sobre insertar elementos del proyecto.
Ejemplos
// Send a predefined email message
SendEmailMessage("<TAG>Email Messages/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 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. Si la operación se realiza correctamente, 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