Zoom for Salesforce - Anyone using "Pop to Visualforce" page?

Salesforce Open CTI Softphone works with Zoom and typical setup is matched phone numbers open the relevant Salesforce record (Pop detail page).

Instead, can we use the “Pop to Visualforce page” option in the Softphone layout for Multiple-matching records? Are there any sample custom Visualforce pages or documentation what the Zoom integration passes to Open CTI.

I have the same question. Also how would we implement it with a flow. What parameters are being passed. Please let us know if you have documented any examples.
Thanks!

Great question. I was trying to figure out with flow as well and can’t seem to pass any parameters but I was guessing at the variable names. Any documentation on this or examples others have done would be very helpful.

@chris.gilzean I created a sample Visualforce page just to check what the url looked like. This is what the paramaters look like:

t?clc=0&isdtp=p1&ltn_app_id=06m5Y000002Fo8jQAC&nonce=eb96c3cc2318b77c4f430b8046dfbb49d1c82e10b4d52ef5e667bafac5606c8f&sfdcIFrameHost=web&sfdcIFrameOrigin=https%3A%2F%2Fopfocusinc-d-dev-ed.lightning.force.com&tour=

It looks like it does not have any information on ANI, DNIS, etc.
The url was the same for all three situations (no matching Contact, single matching Contact, and, multiple matching Contacts)

Could someone from Zoom please tell us if this functionality has been implemented and point us to the documentation?

1 Like

Hi, for our Zoom Phone integration to Salesforce, we will be adding a variable named ‘Phone’ that will be available for pop to ‘Flow’. This variable will be populated with the caller’s phone number. This enhancement is currently planned for our October release which is targeted for later this month.

Thank you! That’s exciting news. Will keep an eye out for the release.

Agreed - very exciting news!

Pushing my luck, will there also be a way to push a Contact Id from the Screen Flow back into the softphone’s Contact/Lead lookup?

While we’re pie in the sky, external vs internal call parameter would be super helpful to allow no pop when dialing out.

As long as we’re pie-in-the-skying, having an ability to transfer both inbound and outbound calls would be really helpful! (Is there a better place to log these product improvement suggestions?)

Hi MJ & Chris,

Thanks for the feedback.

MJ - Currently there is not a way to pass back from the Flow to the Zoom Phone integration UI. You could have your Zoom Phone users manually link to the Contact/Lead in the Zoom UI.

Chris - your comment regarding internal/external, do you mean you want to know whether the caller is ‘internal’ or ‘external’?

MJ - when you say ‘transfer’ calls, do you mean you want to have some logic in your Flow initiate a transfer on behalf of Zoom Phone? That is not possible today as the call control capabilities require the user input directly to the Zoom integration currently.

As far as product feedback/enhancement requests, you can post in the forum here but it is always a good idea to work with your account team as they can help to pass feedback to our product teams.

Sorry external was a bad choice of words. I mean we would like to be able to treat inbound and outbound calls differently. To my knowledge, there is no way to turn off screen pops for external calls. We would like to have calls pop when a client calls us but if we’re calling them we already have their record open in Salesforce and end up with a duplicate record.

if we’re using screen flow for our call pops, it would be nice if an inbound/outbound indicator was possible so we can have flow exit if it’s outbound.

Hi Justin! (This is fun!)

You mentioned passing a parameter with the Phone to the Flow. Could you also pass it to the Visualforce (VF) page? The problem with the Flow is that it’s modal, which means that the user can’t interact with the softphone widget while the Flow is displayed. That’s not a problem with the Visualforce page option. So if you can pass the Phone as a parameter into the VF page as well, that would be really helpful.

One more request for parameters to the VF page: Could you also pass in the Ids of the Task and Call Log records? Here’s what I’m thinking: When a call comes in, we launch the VF page. The VF page determines whether it can find a match or not and lets the user search if necessary. Then the same page lets the user take notes while they’re on the call. When the user ends the call and then clicks Save on the VF page, the page saves some information from the page (in our case, creating a Salesforce Case record), and then updates the Task that the integration created to set its WhoId field to refer to the Contact that the user found on the page.

One issue that we have at our end is that our users of the softphone widget also use a Salesforce Omni-Channel widget, and Salesforce allows only one widget to be open at a time. So I’d like to use the softphone widget for answering the phone and hanging up, and let it create the Task and Call Log as it does today, but I’d like to take control of the UI during the call, building in VF a custom UI that allows us to lead the user to select or create a Contact and to enter the appropriate notes about the caller’s case, then update the Task so that it refers to the Contact the user selected.

Of course, this plan depends on the widget passing the caller’s phone number and (hopefully) Task Id into the VF page. Would love to hear your thoughts on this plan! (Yours too, Chris!)

As to what I mean by “transfer,” I mean that a call comes in, the agent answers it, talks to the caller, and then says, “I need this guy to talk with someone else in my company,” so they want to transfer the call to another number.

For my own use case, I’m focused on inbound calls, but I could also
imagine someone making an outbound call and, during the course of the call, deciding that they want to transfer the call to someone else in the company.

That’s an interesting idea.

If that doesn’t work (passing task and call log ids), I know you can turn call logs off in the Zoom settings. I wonder if you could just have screen flow create the call log for you. It can definitely create the task. Start start time would be when the flow launches and end time would be when they disposition and close out the flow. That would make it pretty easy to allow the user to create a contact when one isn’t found.

Visualforce could do the same but it sounded like the phone variable is just for phone this release.

Chris, (I am replying for MJ as she reached the limit on the number of replies for the topic!!)

MJ and I were just discussing whether it’s possible to disable the auto-creation of the Task. We see where you can turn off creation of the Call Logs, but not Tasks.
On the theory that there aren’t going to be a lot of inbound calls from the same number to the same agent, we could write some code to find the auto-created call log and task and either update or delete the task.

But it would be better if the softphone integration could pass the Ids of the call log and task since it is creating those records.

I was actually wondering that too. Do you have “Call Results” enabled under “Log a Call” in setup?

Funny you ask. I was trying to find the setting after MJs message. I was thinking it might be a Salesforce setting outside of the Zoom app. We’re not auto creating tasks (but might want to) so there must be a way to turn it off.

(Ah, turns out if I read enough posts, I’m no longer considered “new” and the boards allow me more than 3 replies per topic!)

To your question about whether I have Call Results enabled:

I don’t have “Call Results” enabled. When I tried to enable it, I got a Salesforce error message. I’m testing in a Developer Edition org - that may have something to do with it.

I do see in the Zoom app settings where I can prevent a Call Log from being created, but even when I set it to not create a Call Log, it still creates a Task.

I know that the Task and Call Log are created as soon as the phone rings, then updates it as the user works with the Softphone widget, and again after the call ends. So it seems that the widget would know the Id of the Task and Call Log, so it should be possible technically to pass those Ids, together with the phone number, into the Screen Flow and/or Visualforce page.