*** id: 98d96bd9-b467-4b6b-9f69-d6933e01f719 title: CallDetect slug: /node/reference/voice/call-detect sidebar-title: CallDetect description: >- CallDetect object reference for detecting call conditions including answering machines, fax tones, and DTMF digits during voice calls. max-toc-depth: 3 ---------------- [calldetectresult-4]: /docs/server-sdk/v3/node/reference/voice/call-detect [link]: #ended [voice-call-1]: /docs/server-sdk/v3/node/reference/voice/call/detect-answering-machine [voice-call-2]: /docs/server-sdk/v3/node/reference/voice/call/detect-digit [voice-call-3]: /docs/server-sdk/v3/node/reference/voice/call/detect-fax [voice-call-4]: /docs/server-sdk/v3/node/reference/voice/call/amd [voice-call]: /docs/server-sdk/v3/node/reference/voice/call/detect Represents a current or past detecting session in a call. You can obtain instances of this class by starting a Detect session with one of the following methods: * [`Call.detect`][voice-call] * [`Call.detectAnsweringMachine`][voice-call-1] * [`Call.detectDigit`][voice-call-2] * [`Call.detectFax`][voice-call-3] ## Properties ### id The unique id for this detecting session. **Syntax:** `CallDetect.id()` **Returns:** `string` ### type The type of this detecting session. **Syntax:** `CallDetect.type()` **Returns:** `"machine"` | `"digit"` | `"fax"`| `"beep"` ### result The result of the detecting session. **Syntax:** `CallDetect.result()` **Returns:** | Detect Type | Type | Event Values | | :---------------------------------------------------------------- | :--------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | [`amd`][voice-call-4] \| [`detectAnsweringMachine`][voice-call-1] | `"string"` | | | [`detectDigit`][voice-call-2] | `"string"` | Possible digits detected: `0 1 2 3 4 5 6 7 8 9 # *` | | [`detectFax`][voice-call-3] | `"string"` | | ## Methods ### ended * **ended**(): `Promise` - See [CallDetectResult][calldetectresult-4] for more details. Returns a promise which will get resolved only after the detecting session is completed. #### Returns `Promise` - See [CallDetectResult][calldetectresult-4] for more details. #### Example ```js const detect = await call.detectDigit(); const result = await detect.ended(); console.log("Detect result:", result.type); ``` ### stop * **stop**(): `Promise` - See [CallDetectResult][calldetectresult-4] for more details. Stops the detect. #### Returns `Promise` - See [CallDetectResult][calldetectresult-4] for more details. #### Example ```js const detect = await call.detectDigit(); await detect.stop(); ``` ### ~~waitForResult~~ * waitForResult(): `Promise` - See [CallDetectResult][calldetectresult-4] for more details. Returns a promise which will get resolved only after the detecting session is completed. This method is deprecated. See [ended][link] instead.