# Voice Call Service

- [API reference](https://docs.qualcomm.com/doc/80-41102-2/topic/_doxygen_rst_file__doxygen_sources_taf_voicecall_interface_h.html#file-taf-voicecall-interface-h)

A voice call is needed for applications that want to establish voice communication with a remote party. The voice call can be over a mobile network or over VoIP.

## IPC interfaces binding

The functions of this API are provided by the **tafVoiceCallSvc** application service.

The following example illustrates how to bind to the Voice Call service.

bindings:
    {
        clientExe.clientComponent.taf_voicecall -> tafVoiceCallSvc.taf_voicecall
    }
    Copy to clipboard

## Starting a voice call

A voice call can be started using [taf\_voicecall\_Start()](https://docs.qualcomm.com/doc/80-41102-2/topic/function_a00770_1a0a4122a488da98609e0c816d8373c472.html#Documentationa00770_1a0a4122a488da98609e0c816d8373c472) with the destination identifier and SIM slot number passed as parameters.

myTafCallRef = taf_voicecall_Start(DestinationNum, Slot);
    if (!myTafCallRef)
    {
       res = taf_voicecall_GetEndCause(myTafCallRef, &reason);
       LE_ASSERT(res == LE_OK);
       LE_INFO("taf_voicecall_GetEndCause %d", reason);
       return LE_FAULT;
    }
    Copy to clipboard

Before the voice call is started, an application registers a state handler using [taf\_voicecall\_AddStateHandler()](https://docs.qualcomm.com/doc/80-41102-2/topic/function_a00770_1a1f857b7e1ed50d8aee640266b08f53fe.html#Documentationa00770_1a1f857b7e1ed50d8aee640266b08f53fe). Once the voice call is established, the handler will be called indicating it’s now connected. If the state of the voice call changes, the handler will be called with the new state.

tafVoiceCallHandlerRef = taf_voicecall_AddStateHandler((taf_voicecall_StateHandlerFunc_t)MyCallEventHandler, NULL);
    Copy to clipboard

To hang up a voice call, an application can use [taf\_voicecall\_End()](https://docs.qualcomm.com/doc/80-41102-2/topic/function_a00770_1a0aee12ce9d2be389dde7b9212ed87fbd.html#Documentationa00770_1a0aee12ce9d2be389dde7b9212ed87fbd).

Applications must use [taf\_voicecall\_Delete()](https://docs.qualcomm.com/doc/80-41102-2/topic/function_a00770_1af082394a49bf62cc0429e3174417a7ae.html#Documentationa00770_1af082394a49bf62cc0429e3174417a7ae) to release the [taf\_voicecall\_CallRef\_t](https://docs.qualcomm.com/doc/80-41102-2/topic/typedef_a00767_1a516a43e42179b9496bf7dbea3c80497a.html#Documentationa00767_1a516a43e42179b9496bf7dbea3c80497a) voice call reference object when it is no longer used.

Last Published: Jun 09, 2026

[Previous Topic
Version Information Service](https://docs.qualcomm.com/bundle/publicresource/80-41102-2/topics/page_c_tafVerInfo.md) [Next Topic
WLAN services](https://docs.qualcomm.com/bundle/publicresource/80-41102-2/topics/wlan_services.md)