CRM Factory logoCRM Factory

Telephony & Voice

Make and receive calls from the browser with click-to-dial, AI voice agents, voicemail transcription, and post-call analysis.

CRM Factory includes a browser-based softphone powered by the Twilio Voice SDK. Make outbound calls, receive inbound calls with screen pops, and let AI handle voicemail intake — all without leaving the CRM.

Softphone

The softphone widget is available in the app header for all internal users. It provides:

  • Dial pad with E.164 phone number normalization
  • Mute and hold controls during active calls
  • DTMF tone input for navigating IVR menus
  • Call dispositions — Log the outcome (connected, voicemail, no answer, busy, wrong number) after each call
  • Post-call notes with rich text support

The softphone initializes the Twilio Voice SDK on first use, fetching an access token from the server. Tokens auto-refresh before expiry.

Click-to-Dial

Every phone number in the CRM is a click-to-dial link. Click a phone number on any contact, account, lead, case, task, or opportunity record to instantly dial from the softphone.

For server-side dialing without the softphone widget, use the ClickToDial button which calls the telephony adapter directly.

Inbound Calls

Screen Pop

When an inbound call arrives, a screen pop notification appears showing:

  • Matched contact name and company
  • Associated account, open cases, and active opportunities
  • Quick links to navigate directly to the relevant record

Screen pops are delivered via server-sent events (SSE) from /api/v1/events/stream.

AI Voice Agent

Inbound calls can be routed to an AI voice agent that uses:

  • Deepgram for real-time speech-to-text
  • Claude for conversation intelligence and tool use
  • ElevenLabs for natural text-to-speech

The AI agent can look up customer information, check order status, and create cases — then hand off to a human agent when needed. Enable with VOICE_AGENT_ENABLED=true or pass mode=ai in the TwiML URL.

Voicemail

When the AI agent is not enabled or the call goes unanswered, callers hear a greeting and can leave a voicemail. The voicemail pipeline:

  1. Records the message via Twilio <Record>
  2. Transcribes the audio using OpenAI Whisper
  3. Analyzes the content with AI to extract intent, urgency, and action items
  4. Matches the caller to an existing contact
  5. Creates an activity record (and optionally a case)
  6. Notifies the assigned user via SMS

Post-Call Analysis

After a call ends and a recording is available, CRM Factory automatically:

  • Transcribes the full call via Whisper
  • Generates an AI analysis with summary, action items, sentiment, and topics
  • Stores everything on the call activity record

View call analysis from the activity timeline on any contact, account, or case record. The CallActivityCard shows direction, duration, disposition, full transcript, and AI insights.

Call Activity Logging

Every call — inbound and outbound — is automatically logged as an activity with:

FieldDescription
directioninbound or outbound
durationCall length in seconds
dispositionAgent-set outcome code
recordingUrlLink to the call recording
transcriptFull transcription text
aiAnalysisStructured AI insights (summary, action items, sentiment, topics)

Provider Setup

Twilio (Full Feature Set)

Twilio is the primary provider with the deepest integration:

  1. Navigate to Settings → Integrations → Telephony → Twilio
  2. Enter your Account SID, Auth Token, and API Key / Secret
  3. Select a phone number from your Twilio account
  4. CRM Factory automatically configures the TwiML App and webhook URLs

Features: softphone, click-to-dial, call recording, real-time transcription, AI voice agent, post-call analysis, voicemail pipeline, screen pop.

Other Providers

Additional telephony providers are supported with click-to-dial and webhook-based call logging:

ProviderSetup
AircallAPI key + webhook configuration
RingCentralOAuth + webhook configuration
NextivaAPI credentials + webhook configuration
MasergyAPI credentials + webhook configuration

Navigate to Settings → Integrations → Telephony → [Provider] for the guided setup wizard.

API

Get Telephony Status

GET /api/v1/telephony/status

Returns the current telephony configuration: availability, mode, provider, phone number, and connection ID.

Dial

POST /api/v1/telephony/dial
Content-Type: application/json

{
  "to": "+15551234567",
  "contactId": "cnt_abc123"
}

Log Disposition

POST /api/v1/telephony/disposition
Content-Type: application/json

{
  "callSid": "CA...",
  "disposition": "connected",
  "notes": "Discussed renewal timeline"
}

Voice Dictation

Separate from telephony calls, CRM Factory offers a voice dictation button on text fields. Press the microphone icon to dictate notes, case descriptions, or any text input using real-time Deepgram speech-to-text in the browser.

On this page