Skip to main content
AgentSDR places WhatsApp calls through WhatsApp Web, in your own Chrome. A small extension, the Call Recorder, dials the number, records the call and uploads the recording. AgentSDR then transcribes it and keeps it on the lead. Only calls placed from AgentSDR’s Call button are recorded. Your own calls in WhatsApp Web are never touched.

What you need

  • Google Chrome, version 116 or newer.
  • A WhatsApp number linked and connected. See WhatsApp numbers.
  • Cloudflare R2 connected, where recordings are stored. Connect it on Settings → WhatsApp → Integrations. See Integrations.
  • For transcripts, a transcription model chosen under Settings → AI provider.
  • WhatsApp Web in English. The extension finds WhatsApp’s Voice call and End call controls by their English labels.

Install the extension

The extension is loaded unpacked, so Chrome will not update it by itself.
1

Download it

Open Settings → WhatsApp → Integrations and find the Call Recorder extension card. Click Download. The file is served to signed-in people from /downloads/call-recorder.
2

Unzip and keep it

Unzip it and move the agentsdr-call-recorder folder somewhere it can stay, such as Documents. Chrome reads the extension from that folder every time it starts.
3

Load it unpacked

Open chrome://extensions, turn on Developer mode, click Load unpacked and choose that folder.
The card shows whether the extension is Not installed in this browser, Up to date, or has an Update available with the version you have.

Update the extension

From version 0.14.0 the card’s Update button opens the extension’s own Update page.
1

Click Update

On Settings → WhatsApp → Integrations, click Update. The Update page opens and shows the version you run.
2

Choose the folder, once

Click Choose folder. Pick the folder Chrome loaded the extension from. To find it, open chrome://extensions, click Details on AgentSDR Call Recorder and look under Source. Allow Chrome to edit it. After that, updates are written there.
3

Update now

Click Update now. The extension installs the version this AgentSDR serves and reloads itself.
4

Reload WhatsApp Web

Reload your WhatsApp Web tab before the next call.
Versions before 0.14.0 have no Update button. Download the zip once, replace the folder, and click the reload arrow on the extension in chrome://extensions.
AgentSDR refuses to start a call if the extension is too old for the page. It tells you to download the latest, replace the folder and reload the extension.

Self-hosted AgentSDR

The extension only works with AgentSDR addresses it has been told about. https://agentsdr.ai and http://localhost:3000 are built in. If you run your own AgentSDR, add its address:
  1. Open the extension’s Options page. In chrome://extensions, click Details on the extension, then Extension options.
  2. Under Your AgentSDR addresses, enter the address, for example https://sdr.yourcompany.com, and click Add.
  3. Allow access when Chrome asks. Reload any open AgentSDR tab.
Addresses must use https. Plain http is accepted only for localhost. Remove takes an address and its permission back. No rebuild is needed.

Place a call

Click Call next to a lead. It appears on contacts in WhatsApp → Call campaigns and in the header of a CRM record.
  • If the lead has a phone number, Call dials it. The arrow beside the button opens Change number.
  • If not, you are asked for a WhatsApp number. It is saved to the lead and replaces a number you correct.
AgentSDR then hands the call to the extension, which opens the chat in WhatsApp Web and presses Voice call. A live call strip in AgentSDR shows the stages: Opening WhatsApp…, Calling…, Ringing — recording starts when they pick up, Recording. You may see these notices:
  • The extension cannot press Voice call: you press it yourself. Recording still starts by itself.
  • Chrome paused the call audio — switch to the WhatsApp tab and click anywhere.
  • Not answered — nothing was recorded.
  • The chat has no call button, as with a business number run through Meta’s API. The strip reports the number as not on WhatsApp.

What is recorded, and when

The recording is stereo: your microphone on the left, the lead on the right. It starts when the call opens your microphone, so the lead’s first words are not lost. The pickup is the moment the call timer appears. It stops when the timer disappears, End call goes away or the microphone is released. A call that nobody picks up is discarded. If no timer shows within a minute, the extension records anyway and the strip says Call timer not detected — recording started as a fallback. The player starts at the pickup, not at the first ring. When the call ends, the recording uploads straight to your R2 bucket. If the upload fails, the file is saved to your Downloads instead and the strip tells you. A recording can be up to 200 MB, about three hours. Recordings are never public. Every play uses a short-lived link, and the upload link is valid for 15 minutes.

Transcripts

If you chose a model, AgentSDR transcribes each recording after it saves, usually in under a minute. Choose it under Settings → AI provider in Call transcription model. Pick a model that accepts audio, for example a Gemini model. With no model chosen, transcription is off. Transcription runs on your own OpenRouter key like every other AI call. See AI provider. A transcript has the language, a two or three sentence English summary and the utterances. The speaker labels “rep” and “lead” are inferred, because the model receives the channels merged. If transcription fails, the strip shows Transcription failed — retry below.

After the call

You are taken back to AgentSDR to mark the outcome, for example No answer, Busy / declined, Not on WhatsApp, Wrong number, Interested, Meeting booked, Call back later, Send details, Not interested or Do not call. Most outcomes offer a short WhatsApp message you can edit before it opens. A lead who does not pick up comes round again after 1, 2 and then 4 days, then is done. Many places require everyone on a call to consent before it is recorded, and some require you to announce it. Tell people when you record. You are responsible for the law where you and the lead are. Read Responsible use.

WhatsApp numbers

Link the number you call from.

AI provider

Choose the transcription model.

Integrations

Connect Cloudflare R2 for recordings.

Responsible use

Recording and consent.