Telematics SDK - Interface Specification
v1.26.3
|
Data Structures | |
class | telux::tel::ICall |
ICall represents a call in progress. An ICall cannot be directly created by the client, rather it is returned as a result of instantiating a call or from the PhoneListener when receiving an incoming call. More... | |
class | telux::tel::ICallListener |
A listener class for monitoring changes in call, including call state change and ECall state change. Override the methods for the state that you wish to receive updates for. More... | |
class | telux::tel::ICallManager |
Call Manager is the primary interface for call related operations Allows to conference calls, swap calls, make normal voice call and emergency call, send and update MSD pdu. More... | |
class | telux::tel::IMakeCallCallback |
Interface for Make Call callback object. Client needs to implement this interface to get single shot responses for commands like make call. More... | |
This section contains APIs related to Call.
class telux::tel::ICall |
ICall represents a call in progress. An ICall cannot be directly created by the client, rather it is returned as a result of instantiating a call or from the PhoneListener when receiving an incoming call.
|
virtual |
|
pure virtual |
Allows the client to answer the call. This is only applicable for CallDirection::INCOMING.
[in] | callback | - optional callback pointer to get the response of answer request below are possible error codes for callback response
|
|
pure virtual |
Puts the ongoing call on hold.
[in] | callback | - optional callback pointer to get the response of hold request below are possible error codes for callback response
|
|
pure virtual |
Resumes this call from on-hold state to active state
[in] | callback | - optional callback pointer to get the response of resume request below are possible error codes for callback response
|
|
pure virtual |
Reject the incoming call. Only applicable for CallDirection::INCOMING.
[in] | callback | - optional callback pointer to get the response of reject request below are possible error codes for callback response
|
|
pure virtual |
Reject the call and send an SMS to caller. Only applicable for CallDirection::INCOMING.
[in] | rejectSMS | SMS string used to send in response to a call rejection. |
[in] | callback | - optional callback pointer to get the response of rejectwithSMS request below are possible error codes for callback response
|
|
pure virtual |
Hang up the active call.
[in] | callback | - optional callback pointer to get the response of hangup request below are possible error codes for callback response
|
|
pure virtual |
Play a DTMF tone and stop it. The interval for which the tone is played is dependent on the system implementation. If continuous DTMF tone is playing, it will be stopped.
[in] | tone | - a single character with one of 12 values: 0-9, *, #. |
[in] | callback | - Optional callback pointer to get the result of playDtmfTones function |
|
pure virtual |
Starts a continuous DTMF tone. To terminate the continous DTMF tone,stopDtmfTone API needs to be invoked explicitly.
[in] | tone | - a single character with one of 12 values: 0-9, *, #. |
[in] | callback | - Optional callback pointer to get the result of startDtmfTone function. |
|
pure virtual |
Stop the currently playing continuous DTMF tone.
[in] | callback | - Optional callback pointer to get the result of stopDtmfTone function. |
|
pure virtual |
Get the current state of the call, such as ringing, in progress etc.
|
pure virtual |
Get the unique index of the call assigned by Telephony subsystem
|
pure virtual |
Get the direction of the call
|
pure virtual |
Get the dailing number
|
pure virtual |
Get the cause of the termination of the call.
|
pure virtual |
Get id of the phone object which represents the network/SIM on which the call is in progress.
class telux::tel::ICallListener |
A listener class for monitoring changes in call, including call state change and ECall state change. Override the methods for the state that you wish to receive updates for.
The methods in listener can be invoked from multiple different threads. The implementation should be thread safe.
Public Member Functions | |
virtual void | onIncomingCall (std::shared_ptr< ICall > call) |
virtual void | onCallInfoChange (std::shared_ptr< ICall > call) |
virtual void | onECallMsdTransmissionStatus (int phoneId, telux::common::ErrorCode errorCode) |
virtual void | onECallMsdTransmissionStatus (int phoneId, telux::tel::ECallMsdTransmissionStatus msdTransmissionStatus) |
virtual | ~ICallListener () |
|
virtual |
|
virtual |
This function is called when device receives an incoming call.
[in] | call | - Pointer to ICall instance |
|
virtual |
This function is called when there is a change in call attributes
[in] | call | - Pointer to ICall instance |
|
virtual |
This function is called when device completes MSD Transmission.
[in] | phoneId | - Unique Id of phone on which MSD Transmission Status is being reported |
[in] | status | - Indicates MSD Transmission status i.e. success or failure |
|
virtual |
This function is called when device completes MSD Transmission.
[in] | phoneId | - Unique Id of phone on which MSD Transmission Status is being reported |
[in] | msdTransmissionStatus | - Indicates MSD Transmission status ECallMsdTransmissionStatus |
class telux::tel::ICallManager |
Call Manager is the primary interface for call related operations Allows to conference calls, swap calls, make normal voice call and emergency call, send and update MSD pdu.
Public Member Functions | |
virtual telux::common::Status | makeCall (int phoneId, const std::string &dialNumber, std::shared_ptr< IMakeCallCallback > callback=nullptr)=0 |
virtual telux::common::Status | makeECall (int phoneId, const ECallMsdData &eCallMsdData, int category, int variant, std::shared_ptr< IMakeCallCallback > callback=nullptr)=0 |
virtual telux::common::Status | makeECall (int phoneId, const std::string dialNumber, const ECallMsdData &eCallMsdData, int category, std::shared_ptr< IMakeCallCallback > callback=nullptr)=0 |
virtual telux::common::Status | makeECall (int phoneId, const std::vector< uint8_t > &msdPdu, int category, int variant, MakeCallCallback callback=nullptr)=0 |
virtual telux::common::Status | makeECall (int phoneId, const std::string dialNumber, const std::vector< uint8_t > &msdPdu, int category, MakeCallCallback callback=nullptr)=0 |
virtual telux::common::Status | updateECallMsd (int phoneId, const ECallMsdData &eCallMsd, std::shared_ptr< telux::common::ICommandResponseCallback > callback=nullptr)=0 |
virtual telux::common::Status | updateECallMsd (int phoneId, const std::vector< uint8_t > &msdPdu, telux::common::ResponseCallback callback)=0 |
virtual std::vector< std::shared_ptr< ICall > > | getInProgressCalls ()=0 |
virtual telux::common::Status | conference (std::shared_ptr< ICall > call1, std::shared_ptr< ICall > call2, std::shared_ptr< telux::common::ICommandResponseCallback > callback=nullptr)=0 |
virtual telux::common::Status | swap (std::shared_ptr< ICall > callToHold, std::shared_ptr< ICall > callToActivate, std::shared_ptr< telux::common::ICommandResponseCallback > callback=nullptr)=0 |
virtual telux::common::Status | registerListener (std::shared_ptr< telux::tel::ICallListener > listener)=0 |
virtual telux::common::Status | removeListener (std::shared_ptr< telux::tel::ICallListener > listener)=0 |
virtual | ~ICallManager () |
|
virtual |
|
pure virtual |
Initiate a voice call.
|
pure virtual |
Initiate an emergency call to the emergency number(e.g. 112)
[in] | phoneId | Represents phone corresponding to which make eCall operation is performed |
[in] | eCallMsdData | The structure containing required fields to create eCall Minimum Set of Data (MSD) |
[in] | category | ECallCategory |
[in] | variant | ECallVariant |
[in] | callback | Optional callback pointer to get the response of makeECall request. Possible(not exhaustive) error codes for callback response
|
|
pure virtual |
Initiate an emergency call to the specified phone number. It is similar to a regular voice call, except that it facilitates MSD transmission.
[in] | phoneId | Represents phone corresponding to which make eCall operation is performed |
[in] | dialNumber | String representing the dialing number |
[in] | eCallMsdData | The structure containing required fields to create eCall Minimum Set of Data (MSD) |
[in] | category | ECallCategory |
[in] | callback | Optional callback pointer to get the response of makeECall request. Possible(not exhaustive) error codes for callback response
|
|
pure virtual |
Initiate an emergency call with raw MSD pdu, to the emergency number(e.g. 112)
[in] | phoneId | Represents phone corresponding to which on make eCall operation is performed |
[in] | msdPdu | Encoded MSD(Minimum Set of Data) PDU as per spec EN 15722 2015 or GOST R 54620-2011/33464-2015 |
[in] | category | ECallCategory |
[in] | variant | ECallVariant |
[in] | callback | Callback function to get the response of makeECall request. Possible(not exhaustive) error codes for callback response
|
|
pure virtual |
Initiate an emergency call with raw MSD pdu, to the specified phone number. It is similar to a regular voice call, except that it facilitates MSD transmission.
[in] | phoneId | Represents phone corresponding to which on make eCall operation is performed |
[in] | dialNumber | String representing the dialing number |
[in] | msdPdu | Encoded MSD(Minimum Set of Data) PDU as per spec EN 15722 2015 or GOST R 54620-2011/33464-2015 |
[in] | category | ECallCategory |
[in] | callback | Callback function to get the response of makeECall request. Possible(not exhaustive) error codes for callback response
|
|
pure virtual |
Update the eCall MSD in modem to be sent to Public Safety Answering Point (PSAP) when requested.
[in] | phoneId | Represents phone corresponding to which updateECallMsd operation is performed |
[in] | eCallMsd | The data structure represents the Minimum Set of Data (MSD) |
[in] | callback | Optional callback pointer to get the response of updateECallMsd. |
|
pure virtual |
Update the eCall MSD in modem to be sent to Public Safety Answering Point (PSAP) when requested.
[in] | phoneId | Represents phone corresponding to which updateECallMsd operation is performed |
[in] | msdPdu | Encoded MSD(Minimum Set of Data) PDU as per spec EN 15722 2015 or GOST R 54620-2011/33464-2015 |
[in] | callback | Callback function to get the response of updateECallMsd. |
|
pure virtual |
Get in-progress calls.
|
pure virtual |
Merge two calls in a conference.
[in] | call1 | Call object to conference. |
[in] | call2 | Call object to conference. |
[in] | callback | Optional callback pointer to get the result of conference function |
|
pure virtual |
Swap calls to make one active and put the another on hold.
[in] | callToHold | Active call object to swap to hold state. |
[in] | callToActivate | Hold call object to swap to active state. |
[in] | callback | Optional callback pointer to get the result of swap function |
|
pure virtual |
Add a listener to listen for incoming call, call info change and eCall MSD transmission status change.
[in] | listener | Pointer to ICallListener object which receives event corresponding to phone |
|
pure virtual |
Remove a previously added listener.
[in] | listener | Listener to be removed. |
class telux::tel::IMakeCallCallback |
Interface for Make Call callback object. Client needs to implement this interface to get single shot responses for commands like make call.
The methods in callback can be invoked from multiple different threads. The implementation should be thread safe.
Public Member Functions | |
virtual void | makeCallResponse (telux::common::ErrorCode error, std::shared_ptr< ICall > call=nullptr) |
virtual | ~IMakeCallCallback () |
Public Member Functions inherited from telux::common::ICommandCallback | |
virtual | ~ICommandCallback () |
|
virtual |
|
virtual |
This function is called with the response to makeCall API.
[out] | error | ErrorCode |
[out] | call | Pointer to Call object or nullptr in case of failure |
|
strong |
|
strong |
Defines the states a call can be in
|
strong |
Reason for the recently terminated call (either normally ended or failed)