# Gather User Input via Keypad (DTMF Tones)

In this guide, we'll show you how to gather user input during a phone call through the phone's keypad (using [DTMF tones](/docs/glossary/what-is-dtmf)) in your application. By using the [TwiML \<Gather> Verb](/docs/voice/twiml/gather), you can create interactive voice response ([IVR](/docs/glossary/what-is-ivr)) systems and other phone-based interfaces for your users.

> \[!NOTE]
>
> Choose a language below to get started!

* **[C# / .NET](/docs/voice/tutorials/how-to-gather-user-input-via-keypad/csharp)**
* **[Java](/docs/voice/tutorials/how-to-gather-user-input-via-keypad/java)**
* **[Node.js](/docs/voice/tutorials/how-to-gather-user-input-via-keypad/node)**
* **[PHP](/docs/voice/tutorials/how-to-gather-user-input-via-keypad/php)**
* **[Python](/docs/voice/tutorials/how-to-gather-user-input-via-keypad/python)**
* **[Ruby](/docs/voice/tutorials/how-to-gather-user-input-via-keypad/ruby)**

*See our IVR landing page for [specific IVR features and language walkthroughs](/docs/voice/interactive-voice-response).*
