Why Your UI Matters—Open CTI for Salesforce Classic vs. Lightning Experience
The way you implement Open CTI depends on your org’s user interface. There are separate Open CTI APIs for Salesforce Classic and Lightning Experience.
Open CTI is in maintenance mode and is scheduled for retirement in February 2028. No new features or enhancements are being added to Open CTI. Effective immediately, Open CTI is deprecated and unavailable for newly created Agentforce Service orgs. To ensure long-term compatibility and access to the latest innovations, we recommend transitioning your development efforts to Salesforce Voice. For more information, see this Knowledge Article.
To enable your contact center users to take advantage of the latest phone channel innovations, Salesforce recommends that you modernize your experience by moving to Salesforce Voice. Salesforce Voice offers many of the Open CTI features that you love and more. Unlike Open CTI, Salesforce Voice is natively integrated with Omni-Channel and Command Center for Service, providing a seamless experience for contact center reps and supervisors across all digital channels. See Get to Know Salesforce Voice.
You can’t swap the two Open CTI APIs in custom JavaScript code because they behave and function differently. Make sure that you think about where you want to implement your CTI system before you begin developing.
-
You connect to the API differently.
- In Salesforce Classic
/support/api/66.0/interaction.js- In Lightning Experience
/support/api/66.0/lightning/opencti_min.js
-
The input syntax for methods is different.
- In Salesforce Classic
Input example:
- In Lightning Experience
Input example:
-
The two APIs provide similar methods, but a few methods behave differently. The input and output for methods can be different.
Remember that the APIs can’t be swapped. If your users plan to switch between user interfaces, make sure that they understand that the CTI system might behave or function differently depending on what user interface they’re working in.
- Use Open CTI for Salesforce Classic if...
- You want to make calls using a softphone in Salesforce Classic
- You want to make calls using a softphone in a Salesforce Classic console app
- Use Open CTI for Lightning Experience if...
- You want to make calls using a softphone in Lightning Experience
- You want to make calls using a softphone in a Lightning Experience console app
To make calls in Lightning Experience, complete the following.
- Create a Lightning app and add the Open CTI Softphone to your utility bar.
- In the call center definition file, the
reqSalesforceCompatibilityModeitem must be set toLightningorClassic_and_Lightning.
Open CTI for Lightning Experience works only in Lightning apps—it doesn’t work in Salesforce Classic apps. Even though you can view Salesforce Classic apps in Lightning Experience, those apps are still Classic apps under-the-covers. To check if your app is a Lightning app, use the App Manager in Setup.
If you want your Open CTI implementation to work in Lightning Experience and in a console in Salesforce Classic, develop a unique implementation that uses both Open CTI for Salesforce Classic and Lightning Experience.