All Case Studies
CS / 03Contact Center · IntegrationEnterprise Contact Center (500 Agents)

Designing a Connector linking Salesforce, Voice SoftSwitch and Voice SDK for a 500-agent Contact Center (2024)

A purpose-built Connector that fuses Salesforce CRM, the carrier-grade Voice SoftSwitch and a browser Voice SDK into a single agent workflow — click-to-dial, screen-pop, call control and full activity logging for 500 agents.

Contact Center · Integration · Enterprise Contact Center (500 Agents)
01
500
Concurrent agents
02
1 click
From CRM record to live call
03
<1s
Screen-pop latency
04
100%
Calls auto-logged to Salesforce
Project timeline

Challenge → Solution → Outcome

Step-by-step view of how we moved from the brief to the outcome.

Step 01Challenge

A 500-agent contact center ran Salesforce as the source of truth for customers, a carrier-grade Voice SoftSwitch for telephony, and a separate softphone — three systems, three logins, manual after-call work. Existing off-the-shelf CTI adapters did not speak the customer's SoftSwitch dialect and could not survive a 500-seat concurrency profile.

Step 1 / 11
01 / 11
Story arc

Problem. Solution. Result.

01
Problem

A 500-agent contact center ran Salesforce as the source of truth for customers, a carrier-grade Voice SoftSwitch for telephony, and a separate softphone — three systems, three logins, manual after-call work. Existing off-the-shelf CTI adapters did not speak the customer's SoftSwitch dialect and could not survive a 500-seat concurrency profile.

02
Approach
  • 01Designed a 3-leg Connector: Salesforce Open CTI ↔ Connector core ↔ SoftSwitch (SIP/REST) + Voice SDK (WebRTC).
  • 02Single sign-on across Salesforce and the Voice SDK; per-agent device registration handled by the Connector.
  • 03Click-to-dial from any Salesforce object; inbound calls trigger screen-pop with matched contact/case in <1s.
03
Result
  • 500 agents migrated to a single unified desktop — softphone retired.
  • Average handle time down materially thanks to screen-pop and click-to-dial.
  • After-call work effectively zero — dispositions and recordings land in Salesforce automatically.
02 · Solution

Solution

  • 01Designed a 3-leg Connector: Salesforce Open CTI ↔ Connector core ↔ SoftSwitch (SIP/REST) + Voice SDK (WebRTC).
  • 02Single sign-on across Salesforce and the Voice SDK; per-agent device registration handled by the Connector.
  • 03Click-to-dial from any Salesforce object; inbound calls trigger screen-pop with matched contact/case in <1s.
  • 04Call control surface (answer, hold, transfer, conference, mute) exposed both as Salesforce widget and as a JS API for embedded apps.
  • 05Activity logging is atomic — every call writes a Task with disposition, duration and recording URL to Salesforce.
  • 06Horizontal-scaled Connector tier sized for 500 concurrent agents with HA pair per region.
03 · Outcome

Outcome

  • 500 agents migrated to a single unified desktop — softphone retired.
  • Average handle time down materially thanks to screen-pop and click-to-dial.
  • After-call work effectively zero — dispositions and recordings land in Salesforce automatically.
  • Reusable Connector pattern adopted later for IVR + bot integrations on the same SoftSwitch.
04 · Before / After

Measurable shift

01
Agent desktops
BeforeSalesforce + softphone + SoftSwitch UI
After
1 unified desktop
02
Logins per shift
Before3+
After
1 (SSO)
03
Screen-pop on inbound
BeforeNone
After
<1s, matched record
04
Calls logged to CRM
BeforeManual, partial
After
100% automatic
05
Concurrent agents supported
BeforeLimited by adapter
After
500 with HA
In their words
Off-the-shelf adapters all failed our SoftSwitch dialect or our concurrency. The custom Connector spoke both sides natively from day one.
Head of Contact Center Engineering·Enterprise Contact Center (under NDA)
Tech Stack
Salesforce Open CTIVoice SoftSwitch (SIP/REST)WebRTC Voice SDKNode.jsRedisWebSocketOAuth/SAML SSOKubernetes (HA)

Have a similar challenge?
Let's talk.

ZaloContact