# Press 1 to Connect a Caller

> Build an IVR Studio flow that speaks or plays a message, waits for a keypress, and forwards the caller to your sales or support number when they press 1. Works on inbound numbers and outbound campaigns.

Source: https://edesy.in/docs/ivr/guides/press-1-to-transfer

To build a "press 1 to connect" flow, add a **Config** node for the language, a **Say** or **Play Audio** node with your message, a **Menu** node with key `1`, an **Email** node on key 1 so you hear about every interested caller, and a **Transfer** node that forwards the call to your phone number. Connect the Menu's **timeout** exit to a **Hangup** with a goodbye. Test it, publish it, then attach it to a number or a [campaign](https://edesy.in/docs/ivr/campaigns).

> **Ready to build?** Sign up at [ivr.edesy.in](https://ivr.edesy.in). New accounts get Rs 20 of free credit, no card needed.

## The flow

```
Start
  → Config         language: Hindi (or English, Tamil…)
  → Say / Play     your message
  → Menu           "For more details, press 1"   options: 1 Interested
       ├─ 1        → Email  "Hot lead: {{var.lead_phone}}"
       │            → Transfer  +91 98XXX XXXXX  (announce: "Connecting you to our team")
       ├─ 9        → HTTP Request (add to Do Not Call)  → Hangup "You won't be called again"
       └─ timeout  → Hangup  "Thank you. Goodbye."
```

## Steps

1. **Create a flow.** Open **Flows** at [ivr.edesy.in](https://ivr.edesy.in), create a flow and name it, e.g. "Diwali offer: press 1". You can start blank or from the **Menu: Sales or Support** template.
2. **Add a Config node** right after Start. Set **Voice & speech language**, e.g. Hindi. For Bengali, Tamil, Telugu or Marathi also set **Voice provider** to Google. See [Flows in Every Language](https://edesy.in/docs/ivr/guides/multilingual-flows).
3. **Add your message.**
   - **Say** for text to speech: "Namaste {{var.contact_name}}, Diwali par hamare naye project par special offer hai."
   - Or **Play Audio** for a recording (mp3, wav, m4a or ogg, up to 5 MB). Use a recording for languages without text to speech, or when you want a voice artist.
4. **Add a Menu node.**
   - **Prompt:** "Aur jaankari ke liye 1 dabaiye." (For more details, press 1.)
   - **Timeout (seconds):** 6 to 8 for an outbound call, so people have time to take the phone from their ear.
   - **Max digits:** 1.
   - **Keypad options:** `1` labelled "Interested". Optionally `9` labelled "Stop calls".
5. **On key 1, add an Email node**, then a **Transfer** node.
   - Email subject: `Hot lead: {{var.lead_phone}} pressed 1`. Message: `{{var.contact_name}} ({{var.lead_phone}}) chose {{menu_choice}} at {{time}}.`
   - Transfer **Phone number:** your sales number, e.g. `+919800000001` (a 10-digit number gets +91 added). **Announce message:** "Kripya line par bane rahein, hum aapko hamari team se jod rahe hain." **Ring timeout:** 30 seconds.
6. **On the timeout exit, add a Hangup node** with a **Goodbye message** in the caller's language: "Dhanyavaad. Aapka din shubh ho."
7. **Optional: key 9 to stop calls.** Add an **HTTP Request** node that adds the number to your Do Not Call list (see below), then a Hangup: "Aapko dobara call nahi kiya jayega."
8. **Check, test and publish.** Fix anything in the flow checks, place a test call to your own phone, press 1 and check the transfer rings. Then **Publish**. See [Test and Publish](https://edesy.in/docs/ivr/getting-started/test-and-publish).

## Node settings at a glance

| Node | Setting | Value for this flow |
|---|---|---|
| Config | Voice & speech language | The caller's language |
| Say | Text | Your offer. `{{var.contact_name}}` speaks the name from your contact list |
| Menu | Prompt / Timeout / Max digits | "Press 1 for details" / 6–8 s / 1 |
| Menu | Keypad options | `1` Interested, optional `9` Stop calls |
| Email | Subject / Message | Use `{{var.lead_phone}}` and `{{menu_choice}}` |
| Transfer | Phone number / Announce / Ring timeout | Your sales number / "Connecting you…" / 30 s |
| Hangup | Goodbye message | In the caller's language |

## Things to get right

- **Put the Email (or HTTP Request) before the Transfer.** Transfer ends the flow and has no "no answer" exit. If your sales phone doesn't pick up within the ring timeout, the call ends. The email means you still have the lead and can call back.
- **Always connect the Menu's timeout exit.** Without it, the menu repeats up to two more times and then says "We didn't receive any input. Goodbye." in English. A wrong key plays "Sorry, that's not a valid option." in English and repeats the menu.
- **Who sees which number.** On a campaign call, the person you forward to sees your campaign caller ID. On an inbound call they see your IVR number. Use [Dial](https://edesy.in/docs/ivr/nodes/dial) to set a different caller ID, or to forward to a SIP address.
- **One phone number per Transfer.** To send different keys to different teams, give each key its own Transfer node (e.g. 1 for sales, 2 for site visits).
- **A forwarded call keeps a second line busy** while the two people talk. Keep **Max Concurrent Calls** on a campaign in line with how many calls your team can take at once.
- **Use the right tokens.** On outbound and campaign calls, `{{caller}}` is your own number and `{{did}}` is the person called. In emails, use `{{var.lead_phone}}` for the lead's number. See [Variables and Tokens](https://edesy.in/docs/ivr/variables-and-tokens).
- **Short prompts work better.** Say the key early and repeat it once: "For details, press 1. Again, press 1 for details."

## Add a "press 9 to stop calls" option

Add an **HTTP Request** node on key 9:

| Field | Value |
|---|---|
| Method | POST |
| URL | `https://voice-api.edesy.in/v1/dnc` |
| Headers | `Authorization: Bearer <your API key>` |
| Content type | JSON |
| Body | `{"phone_numbers": ["{{var.lead_phone}}"], "reason": "opt_out", "source": "ivr_press_9"}` |
| Mode | Async |

Numbers on the Do Not Call list are removed from every future campaign upload. See [AMD, Fallback Caller ID and DNC](https://edesy.in/docs/voice-api/campaigns/amd-fallback-caller-id-and-dnc).

## Use the flow

- **On an inbound number:** callers to the number hear the flow. See [Connect a Number](https://edesy.in/docs/ivr/getting-started/connect-a-number).
- **On an outbound campaign:** call a list and run the flow on every answered call. See [Run a Flow as a Campaign](https://edesy.in/docs/ivr/campaigns).
- **One call at a time from your system:** see the [outbound IVR API](https://edesy.in/docs/ivr/api/outbound-ivr-calls).

## FAQ

### Can the caller say "yes" instead of pressing 1?

Partly. The [Ask](https://edesy.in/docs/ivr/nodes/ask) node captures a spoken answer in English or Hindi and saves it as text, but it does not branch on what was said. For routing, use the keypad.

### Can I forward to more than one number?

Each key can forward to its own number. A single Transfer rings one number. There are no ring groups.

### What happens if my sales team doesn't answer?

The call ends after the ring timeout. Put an Email or HTTP Request node before the Transfer so you have the lead's number and can call back.

### Does it work in Tamil or Gujarati?

Yes. Use text to speech for Tamil (Config language Tamil, provider Google), or upload recorded prompts for Gujarati and any other language. Keypresses work the same in every language. See [Flows in Every Language](https://edesy.in/docs/ivr/guides/multilingual-flows).
