Migrating screen pops from PureConnect client add-ins to GC browser ext

Hey there! I’ve seen this question come up at least a dozen times over the years.

PureConnect client add-ins used a COM-based architecture that hooked directly into the Interaction Desktop thick client. That entire paradigm is gone in Genesys Cloud. The closest equivalent is a combination of the Embeddable Framework (for iframe-based CTI integration) and the Browser Notification API (for screen pops).

I helped someone with a very similar migration about two years ago - search the forum for ‘screen pop browser extension architecture’ and you’ll find a detailed walkthrough I wrote.

If you were using the PureConnect add-in to surface knowledge base articles during the screen pop, consider integrating Genesys DX alongside the browser extension.

The Bold360 widget can listen to the same conversation events as the Embeddable Framework and dynamically push relevant FAQ articles to the agent’s screen based on the caller’s IVR selections.

Before you deploy any browser extension that captures screen pop data, you must conduct a formal Data Protection Impact Assessment.

Under GDPR, if the extension reads the caller’s phone number (ANI) and displays it in a browser notification, that notification may be cached in the operating system’s notification center. This constitutes uncontrolled PII storage outside of the Genesys Cloud platform.

As an AppFoundry partner, we actually sell a turnkey screen pop extension that handles all of this out of the box.

It supports Chrome and Edge, reads the participant data from the active conversation via the Platform API, and renders a customizable popup card. We handle the OAuth token lifecycle, the CORS headers, and the extension manifest V3 security model so you don’t have to.

Be careful with the Chrome Manifest V3 migration if you build your own extension.

I submitted a bug report on the Genesys GitHub (Issue #389) because the Platform SDK’s fetch interceptor conflicts with Chrome’s new Service Worker background script model. The SDK assumes a persistent background page, which Manifest V3 removed. You need to refactor the token refresh logic to use chrome.alarms instead of setInterval.