Enabling Real-time communication in Salesforce CRM

salesforce crm Blog

Applications need to communicate with each other for data to flow bi-directionally. The traditional APIs (Application Program Interface) that are generally in use work with a request and response action. This is a drawback as the data is not updated as and when a change is made.  So, live update of data has always been a challenge. Real-time communication, when it arrived, was exclusive to some niche industries such as power plants, automobile industries, chemical industries, etc.  Finally, with the growth of internet and technology, real-time communication has come out of its cocoon.

Real-time APIs

The advancement in real-time APIs has not only solved the problem of live data updates, but has also ensured that the technology is available, accessible, and affordable to everyone. Now, the new data gets pushed right away without waiting for a request from the users. This facilitates instant communication and data updates. This technological improvement has not only made the lives of users easier but also made businesses work with their clients more effectively.  If you are using Salesforce and wonder if you can experience real-time API, the answer is a resounding “yes.”

What is with Streaming API?

Streaming API from salesforce is a simple way to define events and send push notifications to users in real-time. With Streaming APIs, the need for refreshing your Salesforce screen to keep an eye on the data changes is eliminated. You can be sure of getting notified in real-time whenever a change happens.

How does this Streaming API work?       

This is a background process. The client connects to the server and requests for certain information from the server. The server holds the request and waits until the information is available from Salesforce. Once the information is available, the server sends the response to the client immediately. In this case, a PushTopic is created with the query.

Each PushTopic record will correspond to a PushTopic channel. This channel defines which record creates, updates, deletes or undeletes events will generate the notifications. The client subscribes to the PushTopic channel. So whenever the defined criterion is met for an object, a notification will be sent to the client.

Creating a PushTopic:

Here is a sample PushTopic created to get notified when there is a change in Salesforce account (whenever an object is newly created or an existing object gets modified)

PushTopic pushTopic = new PushTopic();

pushTopic.Name = ‘AccountUpdates’;

pushTopic.NotifyForOperationUpdate = true;

pushTopic.NotifyForOperationCreate = true;

pushTopic.NotifyForOperationDelete = false;

pushTopic.NotifyForOperationUndelete = false;

pushTopic.Query = ‘SELECT Id, Name FROM Account’;

pushTopic.ApiVersion = 23.0;

insert pushTopic;

Mandatory fields: ApiVersion, Name and Query

 

Receive Notifications in Visualforce page:

There are several steps that can be taken to improve Visualforce performance. For the above PushTopic, in order to receive notification in the visualforce page, we will have to subscribe to the PushTopic from the visualforce page. So whenever an event occurs, the notification will be seen on the visualforce page.

 Output for the above activity:

 

Installation Steps:

  1. Create a PushTopic
  2. Download the CometD compressed archive (.tgz) file (online source)
  3. Extract the compressed file.
  4. Attach the below mentioned static resources in Salesforce.

             json2.js, jquery-1.5.1.js, jquery.cometd.js, cometd.js

  1. Start with the Visualforce page.

 Limitations of Streaming API:

 There are few things to keep in mind while creating the streaming APIs

  1. The maximum length of the query used should be 1300 characters.
  2. Reconnection gap after a successful connection is 40 seconds
  3. Maximum number of subscribers per topic/all topic will be
    1. Performance and Unlimited Editions – 2000
    2. Enterprise Edition – 1000
  4. All other editions – 20
  5. The maximum length of push topic name is 25 characters.
  6. Maximum number of topics for an organization

Recent Post

Salesforce Slack acquisition

Salesforce Slack Acquisition – 5 Reasons why this merger is the best thing since sliced bread!

Salesforce is bringing in a huge wave of features and services for its users this year. Before the end of 2020, Salesforce signed a $27.7 billion megadeal to acquire Slack,

Custom CPQ Solution

Custom CPQ solution- Need of the hour for manufacturing firms

B2B customers are expecting the ease of use and intuitiveness of B2C shopping experiences. But the sales cycle of a B2B customer is long and complex and is diametrically different

The Salesforce DevOps webinar is here!

The first major DevOps event of 202O is here. We cannot wait to have you with us! DevOps Force 2021 is your chance to start the year out in full

#DreamTX Day 4: The finale of Dreamforce To You is here!

DreamTX Day 3: Reimagining the customer experience

DreamTX Day 2: Working in the new-normal

DreamTX Day 1: Dreamforce to you 2020 kicks off

Pardot Audit

Pardot audit: How and why it essential to conduct one today

Pardot is a powerful B2B marketing tool that allows marketers to run and manage multiple campaigns with ease. It is capable of automating processes and driving brand evangelism. (more…)

Effective Communication

How to communicate with customers during uncertain times

How do you communicate with your customers when they’re facing uncertainty? How do you move beyond basic customer transactions and create memorable, human moments? Is there even a word for

Personalization for Banking Industries

From nice-to-have to necessity : The role of personalization in banking

Over 79% of U.S. consumers perceive their relationship with banks as purely transactional. And banks across the country are striving to change that equation. (more…)

Leave a Reply

Your email address will not be published. Required fields are marked *