Get to Know OmniOut
Learning Objectives
After completing this unit, you’ll be able to:
- Define what OmniOut is.
- Understand how OmniOut works.
- Identify your approach for using OmniOut.
Before You Start
Before you start this module, make sure you complete this content. The work you do here builds on the concepts and work you do in that content.
-
Flexcards in Omnistudio for Managed Packages
-
Omniscripts in Omnistudio for Managed Packages
-
Flexcard Building and Publishing in Omnistudio for Managed Packages
Meet OmniOut
When you decided to use Omnistudio for Managed Packages in your org, you spent a lot of time developing Flexcards to present information and creating Omniscripts that help users intuitively create records and make updates. Wouldn’t it be nice to compile the Lightning Web Component (LWC) Flexcards and Omniscripts into standard web components to run them on websites or apps outside Salesforce?
Well, great news! Using OmniOut, you can embed Flexcards and Omniscripts inside a custom app or deploy them to a content management system (CMS) that connects back to Salesforce.
In this module, you learn how to use OmniOut to publish your Omnistudio for Managed Package components where they are needed, for true omnichannel experiences.
How OmniOut Works
OmniOut helps you to generate web components from LWCs without writing code. These web components offer framework interoperability and can be embedded without an iFrame. Handy, right?
With OmniOut, your customers can start a process off-platform, save the progress, and one of your reps can complete the process on-platform. For example, imagine that a customer logs in to an off-platform website to view their account status. They see an offer for a phone upgrade, and start the process to select a new phone, but they’re interrupted. Later that day, they call the customer service center with a question. The good news is that the service rep can see the incomplete customer upgrade and finish the upgrade process on-platform.
Even better, OmniOut uses standard Omnistudio for Managed Packages tools, such as Omnistudio Data Mappers and Integration Procedures.
Let’s understand how this works.
- An OmniOut web form or app displays data and handles user input, then stores the data in a client-side JSON object on a CMS or web server.
- Any calls to Salesforce from this web form or app use Apex REST.
- Omniscripts and Flexcards are added to an OmniOut project. Then, the OmniOut project is integrated into the application and deployed to the CMS or web server.
- If the implementation requires a proxy server for security, you can configure one to work with the CMS or web server.
- OmniOut web components on the CMS or web server pull dependencies from a npm repository. What’s npm? It’s a tool used to install and manage packages of code that add features to your JavaScript projects.
While data is sent and received from Salesforce and other APIs, the solution stores data locally to optimize performance. You can also add an API gateway to cache responses from Salesforce or limit the number of API requests to further improve performance and reduce costs.
Use Cases for OmniOut
Let’s explore some examples of how to use OmniOut by following along with Robert, a technical architect at Get Cloudy Consulting and one of the most knowledgeable people in the Salesforce community.
Because OmniOut is CMS agnostic, Robert has flexibility in how he deploys Omniscripts and Flexcards. This flexibility is why Robert uses OmniOut with his clients who want to deploy their apps outside of Salesforce. The size of the project doesn’t matter.
Let’s look at four of his current Omnistudio for Managed Packages projects, where Robert plans to deploy off-platform with OmniOut.
Simply Solar: Deploy with JSforce to Heroku
Simply Solar is an energy company that created an Omniscript that helps its service reps and customers track the energy their panels generate and give back into the grid.
Simply Solar wants Robert to help deploy this Omniscript off-platform in a Heroku app. This is easy, because this is a relatively simple project. He can use Salesforce JSforce to do the job. JSforce is an isomorphic JavaScript library that uses the Salesforce APIs.
Europa Communications: Deploy with Multilanguage Support
Europa Communications is a communications service provider based in Germany with customers across Europe. Robert helped Europa Comm develop a console using Flexcards to give service reps information on customers’ current mobile phones and service plans. Agents launch multilanguage Omniscripts from the console to guide them in working with customers.
Now, Europa Comm wants to deploy the Flexcards and Omniscripts to its client website. Robert has deployed OmniOut before, but he’s still excited to tackle the new requirement for multilanguage Omniscript support.
Healthy Benefits: Deploy to Adobe Experience Manager (AEM)
Healthy Benefits is a large health insurance company. It uses Omnistudio Flexcards to give insurance reps information on customers' current plans. It also uses Omniscripts to help agents update existing plans and add new ones.
Healthy Benefits has a customer self-service site built on Adobe Experience Manager (AEM), where it wants to deploy the Flexcards and Omniscripts. This project focuses on AEM, and it’s Robert’s first time working with an AEM app. He studies up on the specifics of deploying OmniOut to AEM.
Bull Market Investments: Deploy CSS to Its Own App
Bull Market Investments is a global financial services company. Robert has worked with Bull Market for years and knows its complicated security needs. Bull Market also loves custom style sheets to show off its brand. When Bull Market asks Robert to help deploy Flexcards and Omniscripts on its customer self-service site, he’s happy to take on the challenge.
This is the most complex scenario. Robert needs to build a middleware connection between Salesforce and the customer self-service site to meet Bull Market’s specific security requirements. The middleware connection is outside OmniOut, but he feels confident, because he’s set up this type of connection before.
Meet Different Requirements with OmniOut
As you can see, companies have different needs for their OmniOut solutions, and Robert's got them covered.
He takes a similar approach for each customer to prepare their orgs before he downloads the Flexcards and Omniscripts for off-platform deployment. You learn more about those prerequisites in the next unit.
Resources
- Salesforce Help: OmniOut (Omnistudio for Managed Packages)
- External Website: Adobe Experience Manager
- Heroku Website: What Is Heroku?
- Trailhead: Develop Apps with Heroku
- External Website: JSforce: Overview