--- title: "Event Listeners personalizados" url: https://docs.catalyst.zoho.com/es/cloud-scale/help/event-listeners/custom-event-listeners/ description: "Catalyst proporciona event listeners de componentes y personalizados que escuchan ocurrencias de eventos específicos en los componentes o en una fuente personalizada, respectivamente, y te permiten ejecutar tu propia lógica cuando ocurre el evento." last_updated: 2026-08-17T12:16:04Z service: Cloud Scale type: general --- # Event Listeners personalizados ### Introducción > **Nota:** Catalyst ahora te ofrece un servicio de bus de eventos completamente nuevo llamado **Signals**. Este servicio es una mejora significativa del componente actual *Cloud Scale Event Listeners*. Puedes obtener más información sobre el servicio Catalyst Signals [aquí](https://docs.catalyst.zoho.com/es/signals/). Un event listener personalizado se utiliza para pasar datos a una función o circuit objetivo cada vez que su URL es invocada por el usuario final. No puedes asociar una ocurrencia de evento en un componente con un event listener personalizado. Cualquier event listener que crees en Catalyst será un event listener personalizado, ya que el event listener de componentes está presente de forma predeterminada. > **Nota:** Puedes crear hasta 4 event listeners personalizados y de Zoho en un proyecto. Catalyst te permite crear hasta 50 reglas en cada event listener personalizado. Puedes solicitar a Catalyst un aumento de este límite contactando a nuestro soporte en [**support@zohocatalyst.com**](mailto:support@zohocatalyst.com). Atenderemos cada solicitud de forma individual. Entendamos el comportamiento de un event listener personalizado en una secuencia lógica: 1. Cuando creas un event listener personalizado, se generará una URL para él. La misma URL se utilizará para todas las reglas del evento. Puedes incluir esta URL en el código de tu aplicación o usarla como necesites. 2. Puedes asociar cada regla de un event listener personalizado con una función o circuit objetivo diferente. También puedes enviar diferentes datos en el cuerpo de la solicitud de la URL del event listener para cada regla. Es decir, la invocación de la URL de un event listener se puede configurar para activar diferentes funciones o circuits y enviar diferentes datos para cada regla en cada ocasión. 3. También puedes asociar múltiples reglas a la misma función o circuit objetivo, y enviar diferentes datos a la misma función o circuit cada vez. Esto te permite usar la misma función o circuit para diferentes necesidades. 4. Para identificar qué regla necesita activarse cuando se invoca la URL de un event listener personalizado, las reglas contienen una variable llamada **rule identifier**. Cuando se crea una regla en un event listener personalizado, deberás proporcionar un valor único como su identificador. Este rule identifier se asocia solo con esa regla, que a su vez asocia las funciones o circuits objetivo con la regla. 5. Dado que un event listener personalizado tiene la misma URL para todas sus reglas, puedes indicar qué regla debe invocarse pasando el valor del rule identifier en el cuerpo de la solicitud de la URL. El cuerpo de la solicitud está en formato JSON (_application/JSON_), y por lo tanto debe contener esta información como un par clave-valor con la clave `rule\_identifier`. También puedes pasar más información en el cuerpo de la solicitud según tus necesidades. 6. La URL solo puede invocarse usando el método HTTP `POST`, ya que otros métodos no admiten la inclusión de datos de formulario dentro del cuerpo del mensaje de la solicitud. 7. Cuando se invoca la URL del event listener, Catalyst hace coincidir el rule identifier especificado en el cuerpo de la solicitud con una regla de ese event listener configurado en la consola. Cuando la coincidencia es exitosa, Catalyst activa esa regla y pasa los datos del evento a las funciones o circuits asociados con esa regla. Los datos del evento pueden entonces procesarse en el circuit o la event function objetivo para llevar a cabo la tarea requerida. Si no hay una coincidencia exitosa, será un evento fallido. Entendamos mejor el funcionamiento de un event listener personalizado con un ejemplo: Supongamos que creas un event listener personalizado en tu proyecto de Catalyst. La URL del event listener se generará automáticamente. Ahora creas una regla (_rule\_1_) en él y proporcionas el valor del rule identifier como _ID1_. Esta regla ejecuta la función objetivo _Func_ cuando se activa. Ahora creas una segunda regla (_rule\_2_) cuyo rule identifier es _ID2_ y ejecuta la misma función _Func_ cuando se activa. Es decir, tanto _rule\_1_ como _rule\_2_ tienen la misma URL de invocación y ejecutan la misma función. Ahora, usas esta URL en la lógica de la aplicación en dos lugares diferentes. **Uso 1:** El usuario envía datos a través de un formulario (_Form 1_) en la página de inicio del cliente y se invoca la URL. Especificas el rule identifier como ID1 en los datos del formulario del cuerpo de la URL. **Uso 2:** El usuario envía datos en un formulario diferente (_Form 2_) y se invoca la misma URL. Especificas el rule identifier como _ID2_ en los datos del formulario del cuerpo de la URL. El event listener de Catalyst estará escuchando la invocación de esta URL. Cuando un usuario envía datos a través de _Form 1_, se invoca la URL. El cuerpo de la solicitud HTTP contendría los datos del formulario que incluyen el rule identifier como se muestra a continuación: ```json { "data": "Sample data from Form 1", "rule_identifier": "ID1" } ``` Cuando Catalyst captura este evento, hará coincidir el rule identifier _ID1_ con _rule\_1_ configurada en el proyecto. Cuando la coincidencia es exitosa, activa la función _Func_. Luego pasará los datos del evento a la función en el siguiente patrón de datos de ejemplo: ```json { "project_details": { "id": 57*************, "project_name": "Eventbus" }, "event_bus_details": { "name": "ThirdPartyBus", "id": 13************* }, "data": "Sample data 1", "current_project": { "id": 57*************, "project_name": "Eventbus" }, "action": "Produce", "source_entity_id": 570000000003015, "rule_identifier": "com.abc", "source": "Custom", "event_time": 1568192053790 } ``` Si un usuario envía datos a través de _Form 2_, se invocará la misma URL con el valor de `rule\_identifier` en el cuerpo de la solicitud como _ID2_. Cuando Catalyst captura este evento y asocia _ID2_ con _rule\_2_, los datos relevantes se pasan a _Func_. El patrón de datos es el mismo para las reglas de todos los event listeners personalizados. Ahora creemos un event listener personalizado y configurémoslo. ### Crear un event listener personalizado Para crear un event listener personalizado: 1. Haz clic en **Create Event Listener** desde la sección _Event Listeners_ en _Amplify_, en la consola de Catalyst. ![catalyst_event_listener_add_event](https://catalyst-docs-development.zohostratus.in/images/help/event-listeners/catalyst_el_page.webp) 2. Ingresa un nombre y una descripción para el event listener personalizado. Selecciona **Custom Events** como el tipo. ![catalyst_event_listener_create_custom_rule](https://catalyst-docs-development.zohostratus.in/images/help/event-listeners/catalyst_event_listener_create_custom_rule.webp) 3. Haz clic en **Create**. El event listener personalizado se creará y se mostrará en la página de Event Listeners con su ID y las mismas [estadísticas de rendimiento](https://docs.catalyst.zoho.com/es/cloud-scale/help/event-listeners/terminology/) que el event listener de componentes. ![catalyst_event_listener_tile_view](https://catalyst-docs-development.zohostratus.in/images/help/event-listeners/catalyst_event_listener_tile_view.webp) Puedes ver los detalles de un event listener haciendo clic en **View** en su mosaico. También puedes acceder a la URL del event listener desde esta página. ![catalyst_event_listener_custom_empty](https://catalyst-docs-development.zohostratus.in/images/help/event-listeners/catalyst_event_listener_custom_empty.webp) La URL de un event listener personalizado tiene el siguiente formato: ```json https://api.catalyst.zoho.com/baas/v1/project/project_id/event-bus/event_listener_id_/produce?ZCFKEY=_zcf_key ``` con los valores de [Project ID](https://docs.catalyst.zoho.com/es/getting-started/set-up-a-catalyst-project/general-settings/), [Event Listener ID](https://docs.catalyst.zoho.com/es/cloud-scale/help/event-listeners/terminology/) y una ZCF Key única completados. #### Crear una regla en el event listener personalizado Para crear un event listener personalizado: 1. Haz clic en el event listener personalizado desde la página _Event Listeners_ para abrirlo. 2. Haz clic en **Create Rule**. ![catalyst_event_listener_custom_create_rule_highlight](https://catalyst-docs-development.zohostratus.in/images/help/event-listeners/catalyst_event_listener_custom_create_rule_highlight.webp) 3. Ingresa un nombre, una descripción y un [rule identifier](https://docs.catalyst.zoho.com/es/cloud-scale/help/event-listeners/custom-event-listeners/#Custom) para la regla. ![catalyst_event_listener_custom_create_rule](https://catalyst-docs-development.zohostratus.in/images/help/event-listeners/catalyst_event_listener_custom_create_rule.webp) La página muestra la estructura de ejemplo de los datos que se pasarán a la función o circuit objetivo. 4. Elige **Function** o **Circuit** como tu *Target Point*: * Si eliges activar **Functions**: Selecciona la acción y la event function objetivo de la lista desplegable. Actualmente solo puedes seleccionar **Produce** para habilitar el paso de datos a la función objetivo. Puedes seleccionar múltiples funciones objetivo. ![catalyst_event_listener_custom_create_rule_2](https://catalyst-docs-development.zohostratus.in/images/help/event-listeners/catalyst_event_listener_custom_create_rule_2.webp) * Si eliges activar un **Circuit**: Selecciona el circuit objetivo de la lista desplegable. Actualmente solo puedes seleccionar **Produce** para habilitar el paso de datos al circuit objetivo. Puedes seleccionar múltiples circuits objetivo. ![catalyst_event_listener_custom_circuit_multi_select](https://catalyst-docs-development.zohostratus.in/images/help/event-listeners/catalyst_event_listener_custom_circuit_multi_select.webp) > **Nota:** * Si eliges una event function como tu objetivo, la lista desplegable solo mostrará [event functions](https://docs.catalyst.zoho.com/es/serverless/help/functions/event-functions/). * Si eliges un circuit como tu objetivo, la lista desplegable mostrará todos los circuits que hayas creado previamente. * Si no has creado una event function o un circuit antes de configurar tu event listener, haz clic en **Create New** en la lista desplegable y serás dirigido a la sección del componente correspondiente para crear tu [event function](https://docs.catalyst.zoho.com/es/serverless/help/functions/event-functions/#introduction) o [circuit](https://docs.catalyst.zoho.com/es/serverless/help/circuits/implementation/#create-a-circuit). 5. Haz clic en **Create**. La regla se creará en el event listener personalizado. Aparecerá en la página del event listener con sus detalles. La fuente de un event listener personalizado siempre es "**custom**". ![catalyst_event_listener_custom_queue_events_button_highlight](https://catalyst-docs-development.zohostratus.in/images/help/event-listeners/catalyst_event_listener_custom_queue_events_button_highlight.webp) Haz clic en el nombre de una regla en la lista para ver los detalles de la regla y su patrón de datos. ![catalyst_event_listener_custom_rule_dets](https://catalyst-docs-development.zohostratus.in/images/help/event-listeners/catalyst_event_listener_custom_rule_dets.webp) > **Nota:** Puedes configurar Application Alerts para tus Custom Events, de la misma manera que configuraste alertas en la sección [Catalyst Component Events](https://docs.catalyst.zoho.com/es/cloud-scale/help/event-listeners/component-event-listeners/#configure-alerts-for-catalyst-component-listeners). Antes de hablar sobre la gestión de las reglas de tus event listeners o los eventos procesados, repasemos rápidamente cómo editar y eliminar un event listener personalizado. #### Editar un event listener personalizado Puedes renombrar un event listener personalizado o editar su descripción de la siguiente manera: 1. Abre el event listener personalizado desde la página *Event Listeners*. 2. Haz clic en el menú de puntos suspensivos en la parte superior de la página, luego haz clic en **Edit**. ![catalyst_event_listener_custom_edit_listener_highlight](https://catalyst-docs-development.zohostratus.in/images/help/event-listeners/catalyst_event_listener_custom_edit_listener_highlight.webp) 3. Actualiza los detalles del event listener, luego haz clic en **Save**. ![catalyst_event_listener_custom_edit_event_lis](https://catalyst-docs-development.zohostratus.in/images/help/event-listeners/catalyst_event_listener_custom_edit_event_lis.webp) #### Eliminar un event listener personalizado Para eliminar un event listener personalizado: 1. Abre el event listener personalizado desde la página *Event Listeners*. 2. Haz clic en el menú de puntos suspensivos en la parte superior de la página, luego haz clic en **Delete**. ![catalyst_event_listener_custom_delete_highlight](https://catalyst-docs-development.zohostratus.in/images/help/event-listeners/catalyst_event_listener_custom_delete_highlight.webp) 3. Haz clic en **Yes, Proceed** en la ventana emergente de confirmación. ![catalyst_el_custom_delete_confirmation](https://catalyst-docs-development.zohostratus.in/images/help/event-listeners/catalyst_el_custom_delete_confirmation.webp)