Does WebRTC/Presence work across multiple browser tabs? How?

I’m currently working to integrate our FreePBX with Salesforce. One of the things our employees do is work from multiple Chrome tabs at once, to juggle different customers.

I noticed that in Chrome, I’m actually able to make two different browser tabs, open UCP WebRTC phone in both, and make calls to different numbers with both. Chrome will actually sends the mic input to both phone calls. If I change presence settings (i.e. change “Available” to “Do Not Disturb”) in one tab, it does update it in the second tab after a second or two.

I guess I’m trying to better understand how Asterisk/FreePBX handles this. I thought that if I register two endpoints (i.e. two Polycom desk phones) to the same extension, they’ll fight to register and kick each other off. But the two WebRTC phones on the same extension seem to work simultaneously.

Is it that potential conflicts only apply to ringing the correct endpoint on an incoming call?

I’m noticing as well that the iSymphony page, even though it uses different terminology for Presence, does update the UCP Precense in real-time. For example, if I set an iSymphony extension to “Out to Lunch”, UCP will change to “Away”. What is the component that handles these real-time status changes? The Presence State module in FreePBX? Or is that just for modifying the list of states?

these apps refresh a “remotely stored” state. so they will all sync up.

1 Like

When you say the apps all sync up, do you just mean for presence?

I’m more interested in how the WebRTC dialer is able to handle multiple calls out of different browser tabs. Obviously there’s no use case for that, but I’m surprised it handles it gracefully when you’re not supposed to have two endpoints on the same extension. I just want to be sure that once our users have click-to-call app app tied to our FreePBX, and running in 20 chrome tabs at once, that their prescence/calls/desk phone aren’t going to be massively confused by them all.