Compártelo con tus amigos!

Los Platform Events de Salesforce son eventos para lograr una comunicación entre Salesforce y aplicaciones externas. A continuación hablaremos, de manera genera, sobre puntos claves de este tema.

¿Para qué nos sirven los Platform Events de Salesforce?

Un Platform Event o Evento de Plataforma, nos sirve para enviar notificaciones entre Salesforce y aplicaciones Externas. Esta comunicación se realiza en casi tiempo real y utiliza la arquitectura Event-Driven.

¿Qué es la Arquitectura Event-Driven?

Los Platform Events utilizan la arquitectura Event-driven para realizar comunicaciones constantes entre dos puntos. Esta arquitectura consiste en enviar un mensaje desde un productor a un receptor, mediante un canal.

Por lo tanto, la arquitectura Event-driven se compone de tres entidades:

  • Productor: Quien produce el evento.
  • Canal: Por donde se envía el mensaje.
  • Consumidor: Quien recibe el evento.

¿Qué es un Evento?

Un evento es cualquier cambio realizado en el proceso del negocio.

¿Cómo definir un Evento de Plataforma?

Para definir un Platform Event, debemos ir al Setup > Platform Event. Una vez creado este evento, podemos acceder a él como un objeto customizado de Salesforce.

4 Cosas sobre Platform Events de Salesforce

  • La instancia de un evento es llamado “Event message” o mensaje y no registro.
  • El API de su nombre termina con “__e” y no con “__c”, a diferencia de un campo regular.
  • La única operación DML que admite es la inserción o insert.
  • Un evento de plataforma expira luego de 72 horas.
  • No se pueden realizar consultas SOQL o SOSL para estos eventos.
  • A diferencia de un registro regular, no podemos verlos en la UI de Salesforce.
  • No siguen los niveles de seguridad de un campo o field-level security.

Campos Estándar de un Evento de Plataforma

Los eventos de plataforma, al igual que otros objetos, tienen campos estándares definidos por Salesforce. Por ejemplo:

  • CreatedBy: Para registrar el usuario que lo creó.
  • CreatedDate: Para identificar la fecha de creación.
  • ReplayId: Nos muestra la posición actual del evento.
  • EventUuid: Para identificar el mensaje de un evento.

Tipo de campos personalizados de los Platform Events

Un evento de plataforma permite agregar campos personalizados y los tipos admitidos por estos campos son:

  • Checkbox
  • Date
  • Date/time
  • Number
  • Text
  • TextArea (Long)

Publicar y Suscribirse a un Platform Event de Salesforce

Publicar un Platform Event desde Salesforce

Para publicar un Platform Event desde Salesforce, podemos usar Process Builder, Flows y Apex.

Para publicar un evento desde Apex, debemos utilizar la siguiente línea de código: EventBus.publish(event)

Publicar un Platform Event desde una Aplicación Externa

Para publicar un platform event desde una aplicación externa, podemos utilizar las siguientes APIs: REST, SOAP y Bulk.

Suscribirse a un Platform Event desde Salesforce

Para suscribirse a un platform event desde Salesforce, podemos utilizar un Process Builder, Flow y Triggers. Además del componente empApi para conectarnos al evento desde Lightning Components.

Para suscribirse al evento desde un trigger, basta con crear un after insert trigger en el objecto del evento.

Para suscribirse a un evento desde Lighining Web Component y Aura Component, podemos utilizar el modulo lightning/empApi y lightning:empApi respectivamente.

Suscribirse a un Platform Event desde una Aplicación Externa

Para suscribirse a un evento desde una aplicación externa, podemos utilizar el protocolo Bayeux utilizando el cliente de CometD o utilizando el EMP Conector.

Eventos de Plataforma Estándar de Salesforce

Salesforce nos ofrece dos tipos de eventos de plataforma estándares:

  • AssetTokenEvent
  • BatchApexErrorEvent

Más Información

Si quieres aprender más de Salesforce en Español, también puedes visitar nuestro post sobre Governor Limits haciendo clic aquí.

(Visited 65 times, 1 visits today)

Compártelo con tus amigos!

Close