Integrating SalesForce platform events in SAP Cloud Platform

 

This blog demonstrates how to integrate Salesforce platform events in SAP Cloud platform integration(SAP CPI).

 

As part of this demonstration, we will be creating the platform events in Salesforce lightning environment and subscribing to these events in SAP CPI using ADVANTCO SFDC adapter.

This blog is divided into 2 parts. We will cover the Salesforce side of things in this part and Part 2 will cover mostly the SAP CPI side.

To start with let me provide some brief on platform events and event-driven software architecture.

An event-driven software architecture comprises of Events, Event Messages, Event Producers and Subscribers. The main benefit of event-driven software architecture is its capabilities of decoupling the Event producers from event subscribers.

Event

An event is basically a change in state.

Event message

Its a message that contains data about the event occurred.

Event producer

Event producer is a publisher of an event over a defined channel.

Event consumer

Event consumer is subscriber to a event channel and receives messages from the event channel.

Enterprise Messaging Platform Events

Enterprise messaging in Salesforce is event based and complies to the fundamentals of event driven software architecture. Platform events in Salesforce are the event messages that simplifies the process of communication between the producer and consumers.

I think its enough of the theoretical aspects about platform events and event-driven software architecture. Let’s switch to see some artifacts built in Salesforce environment for the Salesforce and CPI integration using OAuth JWT bearer flow.

Just FYI, This is my first development in Salesforce and I have kept this limited to the Platform events and How to trigger the events.

Okkkkk… Time to see some interesting stuff…

I started with signing up on Salesforce lightning environment.

Integrating SalesForce platform events in SAP Cloud Platform

After completing the login procedure, The goal is to set up a platform event, Process builder(to publish the event), and a connected application to expose the event to the outside world( SAP CPI in our scenario).

Below are the 3 steps performed in Salesforce lightning environment:

  1. Creation of Platform events: Search for platform events in Salesforce Home screen, and you will see below screen.

Integrating SalesForce platform events in SAP Cloud Platform

Click on New platform event and create one for your scenario.

I have created LeadInfo1 platform event, which will trigger whenever a new lead is created or changed.

Integrating SalesForce platform events in SAP Cloud Platform

Integrating SalesForce platform events in SAP Cloud Platform

OK, so now the platform event is created. Next, we will be creating a Process Builder, to trigger the event whenever a lead gets created or changed.

  1. Creation of Process Builder: Search for process builder on the Home screen, and you will see below screen.

Integrating SalesForce platform events in SAP Cloud Platform

I have created Lead_Event_New to trigger the platform event, whenever a lead gets changed or a new one got created.

Integrating SalesForce platform events in SAP Cloud Platform

The above screenshots depict that whenever a Lead gets created or changed, create a record of type LeadInfo1 with FirstName details changed/created.

  1. Create a connected application: the last step is to create a connected application to create a connection between SF and any third-party application.

Integrating SalesForce platform events in SAP Cloud Platform

Connected app details for your reference:

Integrating SalesForce platform events in SAP Cloud Platform

Below are the details to connect to Salesforce using OAuth 2.0

Integrating SalesForce platform events in SAP Cloud Platform

Cool, we are all set to trigger events in Salesforce. To check the details of the triggered events, we can use the Workbench tool.

With the help of Workbench tool, we can check the payload of the event triggered.

Login to the workbench using the same credentials used for Salesforce login, and provide details of event channels.

Integrating SalesForce platform events in SAP Cloud Platform

Integrating SalesForce platform events in SAP Cloud Platform

Integrating SalesForce platform events in SAP Cloud Platform

Now we can test the event details by changing the Lead details.

To go to the lead, go to the Sales console as shown in the below screenshot.

Integrating SalesForce platform events in SAP Cloud Platform

Open lead and change the user details as shown below

Integrating SalesForce platform events in SAP Cloud Platform

and save.

This should trigger the platform event. We can check the details updated in the Workbench tool as shown in the screenshot below.

Integrating SalesForce platform events in SAP Cloud Platform

We can see the updated First Name details in the above payload. This message is in the event bus queue and is ready to be subscribed.

In the next blog, we will see how can we subscribe to the platform events in SAP CPI.

Stay tuned and stay safe, Happy Learning!


Please reach out to our sales team at sales@advantco.com if you have any questions.