## List of Verbs

The table presents the list of supported verbs.

| Verb | Description | Node Analogue |
| --- | --- | --- |
| [Answering Machine Detection](https://docs.cognigy.com/voice-gateway/references/verbs/amd) | This verb can be enabled on outbound calls to provide an indication of whether a call has been answered by a person or a machine. To use this feature, provide the `amd` property in a [dial](https://docs.cognigy.com/voice-gateway/references/verbs/dial) verb. | [Transfer](https://docs.cognigy.com/ai/agents/develop/node-reference/voice/voice-gateway/transfer) ( **Dial > Answering Machine Detection** settings) |
| [Config](https://docs.cognigy.com/voice-gateway/references/verbs/config) | This verb lets the developer modify the default speech settings for the current session or to collect speech or DTMF input in the background while other verbs are executed. | [Set Session Config](https://docs.cognigy.com/ai/agents/develop/node-reference/voice/voice-gateway/set-session-config) |
| [Dial](https://docs.cognigy.com/voice-gateway/references/verbs/dial) | This verb initiates a new call by connecting to a telephone number, registered SIP user, or SIP URI. | [Transfer](https://docs.cognigy.com/ai/agents/develop/node-reference/voice/voice-gateway/transfer) ( **Dial** settings) |
| [Dub](https://docs.cognigy.com/voice-gateway/references/verbs/dub) | This verb adds a background audio track to the conversation. | [Set Session Config](https://docs.cognigy.com/ai/agents/develop/node-reference/voice/voice-gateway/set-session-config) |
| [DTMF](https://docs.cognigy.com/voice-gateway/references/verbs/dtmf) | This verb generates a string of DTMF digit signals, which are transmitted as RTP payloads according to [RFC 2833](https://datatracker.ietf.org/doc/html/rfc2833). | [DTMF](https://docs.cognigy.com/ai/agents/develop/node-reference/voice/voice-gateway/dtmf) |
| [Gather](https://docs.cognigy.com/voice-gateway/references/verbs/gather) | This verb collects DTMF or speech input. | - |
| [Hangup](https://docs.cognigy.com/voice-gateway/references/verbs/hangup) | This verb terminates the call and ends the session. | [Hangup](https://docs.cognigy.com/ai/agents/develop/node-reference/voice/voice-gateway/hangup) |
| [Listen](https://docs.cognigy.com/voice-gateway/references/verbs/listen) | This verb sends real-time audio streams to your application over a WebSocket connection for processing. The [Call Recording](https://docs.cognigy.com/voice-gateway/webapp/recent-calls#call-recordings) feature relies on this verb. | [Call Recording](https://docs.cognigy.com/ai/agents/develop/node-reference/voice/voice-gateway/call-recording) |
| [Play](https://docs.cognigy.com/voice-gateway/references/verbs/play) | This verb streams recorded audio to a call. | [Play](https://docs.cognigy.com/ai/agents/develop/node-reference/voice/voice-gateway/play) |
| [Say](https://docs.cognigy.com/ai/agents/develop/node-reference/basic/say) | This verb sends synthesized speech to the remote party. The text provided may be either plain text or use SSML tags. | [Say](https://docs.cognigy.com/ai/agents/develop/node-reference/basic/say) |
| [SIP:request](https://docs.cognigy.com/voice-gateway/references/verbs/sip-request) | This verb sends a SIP `INFO`, `NOTIFY`, or `MESSAGE` request on an established call, which is an in-dialog request. | [Send Metadata](https://docs.cognigy.com/ai/agents/develop/node-reference/voice/voice-gateway/send-metadata) |
| [SIP:refer](https://docs.cognigy.com/voice-gateway/references/verbs/sip-refer) | This verb transfers a call and disconnect. | [Transfer](https://docs.cognigy.com/ai/agents/develop/node-reference/voice/voice-gateway/transfer) ( **Refer** settings) |
| [Transcribe](https://docs.cognigy.com/voice-gateway/references/verbs/transcribe) | This verb generates real-time transcriptions of speech. | [Set Session Config](https://docs.cognigy.com/ai/agents/develop/node-reference/voice/voice-gateway/set-session-config) ( **Recognizer - Speech-To-Text** settings) |

## Custom Verbs in Code Nodes

The example shows how a [Code Node](https://docs.cognigy.com/ai/for-developers/code/overview) can send a customized [`dial`](https://docs.cognigy.com/voice-gateway/references/verbs/dial) verb with an Answering Machine Detection (`amd`) action hook.

```javascript
api.output(null, {
    "_cognigy": {
        "_voice-gateway2": {
            "json": {
                "verb": "dial",
                "actionHook": "dial",
                "callerId": "+49XXXXXXXXXXX",
                "target": [
                    {
                        "type": "phone",
                        "number": "+49XXXXXXXXXXX",
                    }
                ],
                "amd": {
                    "actionHook": "amd",
                    "recognizer": {
                        "vendor": "microsoft",
                        "language": "en-US",
                    }
                }
            }
        }
    }
})
```

## More Information

- [Voice Gateway Events](https://docs.cognigy.com/voice-gateway/references/events/overview)
