Email connector

Hello everyone,

Hope you are good.

I followed the tutorial of beginning that Bonita provided on the site and on the step of connector, they gave the example of a fkaesmtp to make the test. Currently I automate the process of a company and I have created real users, now for the email connector I would like not to use the fakeSMTP but to make a configuration of a real email connector where the users really receive emails from each other. How to do this configuration? For sending real emails.

In the expectation of a positive response please receive my deepest greetings.

Best regards.

Tengo dos ejemplos. Espero que te sirva:

En los groovy scripts crea el siguiente paquete con los metodos que están abajo:

package com.correo

/**
 * @author Daniel Saenz
 *Permite obtener el correo electrónico del revisor de la solicitud inicial (hay más importaciones de las necesarias)
 *@version x.0
 */

import java.util.logging.Logger
import org.bonitasoft.engine.api.IdentityAPI
import org.bonitasoft.engine.api.ProcessAPI
import org.bonitasoft.engine.bpm.flownode.ArchivedHumanTaskInstance
import org.bonitasoft.engine.bpm.flownode.ArchivedHumanTaskInstanceSearchDescriptor
import org.bonitasoft.engine.identity.UserMembershipCriterion
import org.bonitasoft.engine.identity.UserNotFoundException
import org.bonitasoft.engine.search.SearchOptionsBuilder
import org.bonitasoft.engine.search.SearchResult
import org.bonitasoft.engine.identity.UserSearchDescriptor

class Util {
    
    private static final Logger logger = Logger.getLogger(Util.class.toString())

        static String getGetEmailInitiatorProcess(ProcessAPI processAPI, IdentityAPI identityAPI, long processInstanciaId) {
            try {
            
                Long idUsuario = processAPI.getProcessInstance(processInstanciaId).getStartedBy()
                String emailIniciadorDelProceso = identityAPI.getUserContactData(idUsuario, false).getEmail()
            
                return emailIniciadorDelProceso.trim()
            
                } catch(UserNotFoundException e) {
                
                logger.severe("Usuario no encontrado en la organización" + e.message())
                
                                             }
        }

/**En el conector de entrada de la tarea automática en el destinatario lo llamas de la siguiente forma:

*import com.correo.Util

*return Util.getGetEmailInitiatorProcess(apiAccessor.getProcessAPI(), apiAccessor.getIdentityAPI(), processInstanceId)

 */

/**
 * @author Daniel Saenz
 *Permite obtener el correo electronico del grupo especificado en la ruta, el grupo solo debe contener 1 usuario

*Estoy tratando de hacerlo para un usuario al que le sigue la próxima actividad del proceso
 *@version x.0
 */

 


        static String getGetEmailRevisor(IdentityAPI identityAPI) {
            try {
                                
                long groupId = identityAPI.getGroupByPath("/Acme/Hr").id
                SearchOptionsBuilder builder = new SearchOptionsBuilder(0, 1)
                builder.filter(UserSearchDescriptor.GROUP_ID, groupId)
                long userId = identityAPI.searchUsers(builder.done())result.get(0).id
                
                String emailRevisorDelProceso = identityAPI.getUserContactData(userId, false).getEmail()
            
                return emailRevisorDelProceso.trim()
            
                } catch(UserNotFoundException e) {
                
                logger.severe("Usuario no encontrado en la organización" + e.message())
                
                                             }
        }

}

 

/**En el conector de entrada de la tarea automática en el destinatario lo llamas de la siguiente forma:

*import com.correo.Util

*return Util.getGetEmailRevisor(apiAccessor.getIdentityAPI())

*/

No olvide activar la dependencia java en la configuración del servidor.

Hi,

You need to provide the SMTP server connection information that is used by the company (Gmail or others…).

HTH
Romain

Thanks