i
Envío de Emails
El envío de emails es administrado por una única clase modelo y una única clase servicio, incluidas en Deyel SDK.
La clase modelo contiene las propiedades con sus métodos getter y setter, mientras que la clase servicio contiene las operaciones a realizar con el modelo.
Contenido de la Clase Modelo Email
El modelo "Email" contiene:
•Constructor del modelo.
•Conjunto de métodos getter y setter para acceder a las propiedades del email.
Métodos getter y setter de las propiedades del modelo Email
Operación |
Descripción |
Parámetros |
---|---|---|
getTo() |
Recupera la lista de direcciones de email de los destinatarios. |
|
getCc() |
Recupera la lista de direcciones de email de quienes recibirán copia del email. |
|
getBcc() |
Recupera la lista de direcciones de email de quienes recibirán copia oculta del email. |
|
getReplyTo() |
Recupera la lista de direcciones de email configuradas con respuesta automática. |
|
getSubject() |
Permite recuperar el asunto del email. |
|
setSubject() |
Permite definir el asunto del email. |
String asunto: Asunto del email |
getText() |
Permite recuperar el texto del email. |
|
setText() |
Permite definir el texto del email. |
String texto: Texto del email |
getAttachments() |
Permite recuperar la lista de archivos adjuntos del email. |
|
setAttachments() |
Permite definir una lista de archivos adjuntos al email. |
Lista de Files: Archivos que se envían como adjuntos en el email |
getAttachmentReferences() |
Permite recuperar el conjunto de referencias de archivos asociadas al email. |
|
setAttachments() |
Permite definir el conjunto de referencias a archivos y asociarlas al email. |
Lista de FileReference |
El atributo Reply To en el estándar de emails permite asignar direcciones receptoras del email de respuesta. Cuando el receptor del email seleccione “Responder” desde su cliente de email, las casillas ingresadas con Reply To se proponen como receptoras permitiendo su modificación si el usuario lo desea.
El máximo definido para la suma total del tamaño de los archivos adjuntos es de 25mb, tanto para objetos File como para FileReference.
Contenido de la Clase Servicio EmailService
El servicio permite realizar la siguiente operación:
Operación |
Descripción |
Parámetros |
---|---|---|
send(email) |
Envía un email. |
Email email: Clase modelo del email |
Ejemplo de Uso
El ejemplo contiene el uso de clase servicio “EmailService”.
1- Envío de un email con un archivo adjunto
En este ejemplo se envía un email en donde se especifican las diferentes secciones del mismo: ”Destinatario”, “Con copia”, “Con copia oculta”,
“Responder a”, “Asunto”, “Cuerpo del email”. Se adjunta al email una tarjeta de invitación generada por un método externo (la generación del archivo no se aborda en este ejemplo).
Se instancian el servicio “EmailService” y la clase modelo “Email”, y se indica el valor de sus propiedades mediante los correspondientes métodos getter y setter de la clase modelo.
Se crea una tarjeta de invitación, que es adjuntada a la clase modelo “Email” con el método correspondiente.
Para enviar el email se ejecuta el método send(email), del servicio “EmailService”.
EmailService emailService = new EmailService(getApiClient());
Email email = new Email();
email.getTo().add("partner@gmail.com");
email.getCc().add("afarias@deyel.com");
email.getBcc().add("slopez@deyel.com");
email.getReplyTo().add("contact@deyel.com");
email.setSubject("Invitation to Event");
email.setText("Hi Partner!!, our new webinar will be next Friday..");
File invitationCardFile = createInvitationCard();
email.getAttachments().add(invitationCardFile);
emailService.send(email); emailService.send(email); |
2- Envío de un email con un archivo adjunto leído de un campo de un formulario
En este ejemplo se muestran dos alternativas para recuperar un archivo de un formulario. El archivo recuperado se envía por email.
El objeto Java modelo de un formulario provee métodos para recuperar la referencia al archivo almacenado en sus campos. Esta referencia es un objeto Java más eficiente para este tipo de operaciones y permite que el tiempo de procesamiento de las reglas sea menor.
Cuando los archivos recuperados de un formulario se envian vía email se recomienda el uso de la alternativa FileReference.
Se lee una instancia del formulario “Account” utilizando el método read(account) de la clase servicio “AccountService”.
AccountService accountService = new AccountService(getApiClient()); Account account = new Account(); account.setIdAccount(50); account = accountService.read(account);
|
Alternativa File
Se recupera el campo “fllogo” del formulario “Account”, creando un nuevo objeto File y se envía el archivo por email.
File logo = accountService.getFlLogo(account); email.getAttachments().add(logo); emailService.send(email);
|
Se recupera el campo “fllogo” del formulario “Account”, utilizando FileReference y se envía el archivo por email.
FileReference logoReference = account.getReference_FlLogo(); email.getAttachmentReferences().add(logoReference); emailService.send(email);
|