4 * Copyright (c) 2014 Samsung Electronics Co., Ltd. All rights reserved.
6 * Contact: Ja-young Gu <jygu@samsung.com>
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
27 * @addtogroup CAPI_TELEPHONY_SERVICE_CALL
42 * @brief Definition for the maximum length of the string for the calling party name.
45 #define TAPI_CALLING_NAME_SIZE_MAX 80
48 * @brief Definition for the maximum length of the user to user signalling data string.
51 #define TAPI_CALL_UUS_DATA_LEN_MAX 131
54 * @brief Definition for the maximum length of the string for display record in CDMA.
57 #define TAPI_CALL_DISPLAY_RECORD_MAX 32
60 * @brief Definition for the maximum number of calls possible at a time.
63 #define MAX_TAPI_CALL_COUNT 6
66 * @brief Definition for the maximum number of calls possible in a conference call at a time.
69 #define MAX_TAPI_CONF_CALL_COUNT 5
72 * @brief Definition for the invalid call handle.
73 * @details TS_UINT is used for the call handle.
76 #define INVALID_CALL_HANDLE 0
81 * @brief Definition for the maximum dialling digit length.
84 #define TAPI_CALL_DIALDIGIT_LEN_MAX 82
87 * @brief Definition for the maximum call subaddress length.
90 #define TAPI_CALL_SUBADDRESS_LEN_MAX 40
93 * @brief Definition for the dialling number length.
96 #define TAPI_CALL_NUMBER_LEN_MAX 7
99 * @brief Definition for the maximum call context size.
102 #define TAPI_CONTEXT_CALL_SIZE_MAX 6
105 * @brief Definition for the maximum dialling number length.
108 #define TAPI_CALL_DIAL_NUMBER_LEN_MAX 82
111 * @brief Definition for the maximum Burst DTMF string length.
114 #define TAPI_CALL_BURST_DTMF_STRING_MAX 32
117 * @brief Enumeration for the call cause values.
121 TAPI_CAUSE_SUCCESS, /**< Success */
122 TAPI_CAUSE_ACCESSDISCARD, /**< Access discarded */
123 TAPI_CAUSE_BARR_BYOPERATOR, /**< Barred by operator */
124 TAPI_CAUSE_BEARERMODE_NOTIMPL, /**< Bearer mode not implemented */
125 TAPI_CAUSE_BEARERMODE_RESTRICTED, /**< Bearer mode restricted */
126 TAPI_CAUSE_BEARERMODE_UNAUTH, /**< Bearer mode unauthorized */
127 TAPI_CAUSE_BEARERMODE_UNAVAIL, /**< Bearer mode not available */
128 TAPI_CAUSE_BUSY, /**< (Network/Server) busy */
129 TAPI_CAUSE_CALLMETER_EXPIRED, /**< Call meter expired */
130 TAPI_CAUSE_CALLNO_ERROR, /**< Call number error */
131 TAPI_CAUSE_CKTUNAVAIL, /**< Circuit channel unavailable */ //10
132 TAPI_CAUSE_CONGESTION, /**< Congestion occurred */
133 TAPI_CAUSE_NO_CIRCUIT_AVAIL, /**< Circuit not available */
134 TAPI_CAUSE_DESTIN_INCOMPAT, /**< Destination incompatibility */
135 TAPI_CAUSE_DTMF_NOSPEECH, /**< No speech in DTMF */
136 TAPI_CAUSE_DTMF_REJECTED, /**< DTMF rejected */
137 TAPI_CAUSE_FACILITY_NOTIMPL, /**< Facility not implemented */
138 TAPI_CAUSE_FACILITY_NOTSUBSCRIBED, /**< Facility not subscribed */
139 TAPI_CAUSE_INCOMINGCUGCALLS_BARRED, /**< Incoming CUG Calls barred */
140 TAPI_CAUSE_INVALNUM, /**< Invalid number */
141 TAPI_CAUSE_MPTY_ERROR, /**< Multiparty error */ //20
142 TAPI_CAUSE_NOANSWER, /**< No answer */
143 TAPI_CAUSE_NONCUGMEMBER, /**< Non CUG member */
144 TAPI_CAUSE_NUMBERCHANGED, /**< Number changed */
145 TAPI_CAUSE_NUMBER_ERROR, /**< Number error */
146 TAPI_CAUSE_NWFAILURE, /**< Network failure */
147 TAPI_CAUSE_OPERATIONUNAVAIL, /**< Operation not available */
148 TAPI_CAUSE_OUTOFORDER, /**< Out of order */
149 TAPI_CAUSE_PROTOCOL_ERROR, /**< Protocol error */
150 TAPI_CAUSE_QOSUNAVAIL, /**< QOS unavailable */
151 TAPI_CAUSE_REJECT, /**< Rejected */ //30
152 TAPI_CAUSE_REJ_FAIL, /**< Rejection failed */
153 TAPI_CAUSE_REJ_SRVC_NOT_AVL, /**< Rejection service not available */
154 TAPI_CAUSE_REJ_SAT_CALL_CTRL, /**< Rejection SAT Call Control */
155 TAPI_CAUSE_REMOTE_CKTUNAVAIL, /**< Remote Circuit channel unavailable */
156 TAPI_CAUSE_RESOURCEUNAVAIL, /**< Resource not available */
157 TAPI_CAUSE_SERVICEID_ERROR, /**< Service ID error */
158 TAPI_CAUSE_SERVICE_NOTIMPL, /**< Service not implemented */
159 TAPI_CAUSE_SERVICE_UNAVAIL, /**< Service not available */
160 TAPI_CAUSE_MODIFY_SAME_BEARER, /**< Modify same bearer */
161 TAPI_CAUSE_MODIFY_NOT_PERMITTED, /**< Modification not permitted */
162 TAPI_CAUSE_HOLD_FAIL, /**< Call hold failure */ //40
163 TAPI_CAUSE_TEMPFAILURE, /**< Temporary failure */
164 TAPI_CAUSE_WRONGNUM, /**< Wrong number */
165 TAPI_CAUSE_NORMAL_UNSPECIFIED, /**< Normal but unspecified */
166 TAPI_CAUSE_SSERRINVALIDTIVALUE, /**< SS invalid transaction ID value */
167 TAPI_CAUSE_SSERRINVALIDTI, /**< SS Invalid transaction ID */
168 TAPI_CAUSE_SSINCOMPATIBLESTATE, /**< SS incompatible state */
169 TAPI_CAUSE_SSERRSYNTAXERROR, /**< SS syntax error */
170 TAPI_CAUSE_SSPROTOCOLERROR, /**< Protocol error */
171 TAPI_CAUSE_SSNEGATIVEPASSWORDCHECK, /**< Negative password check */
172 TAPI_CAUSE_SSSENTASPHASE1, /**< SS sent as phase1 message */ //50
173 TAPI_CAUSE_SSERROR, /**< Supplementary service error */
174 TAPI_CAUSE_SS_USSD_BUSY, /**< Second USSD request will be rejected when a USSD transaction is already in progess */
175 TAPI_CAUSE_IDLE, /**< Idle */
176 TAPI_CAUSE_NETWORK_SPECIFIC, /**< Network specific error */
177 TAPI_CAUSE_FADE, /**< Voice call is dropped e.g. because of a loss of signal */
178 TAPI_CAUSE_UNKNOWN, /**< Unknown and no details available */
179 TAPI_CAUSE_INCOM_CALL, /**< Terminated by an incoming call */
180 TAPI_CAUSE_ALERT_STOP, /**< Terminated by an alert stop */
181 TAPI_CAUSE_INTERCEPT, /**< Voice call is dropped by interception */
182 TAPI_CAUSE_REORDER, /**< Voice call is dropped by reordering */ //60
183 TAPI_CAUSE_CLIENT_END, /**< Client ended the call */
184 TAPI_CAUSE_ACCESS_CLASS_BLOCKED, /**< Access class blocked */
185 TAPI_CAUSE_MEMCAPEXCEEDED, /**< Memory capacity exceeded */
186 TAPI_CAUSE_TYPENOTSUPPORTED, /**< Type not supported */
187 TAPI_CAUSE_REPLACENOTSUPPORTED, /**< Replace not supported */
188 TAPI_CAUSE_PROTOCOLID_ERROR, /**< Protocol ID error */
189 TAPI_CAUSE_CLASSNOTSUPPORTED, /**< Class not supported */
190 TAPI_CAUSE_DATACODING_ERROR, /**< Data coding error */
191 TAPI_CAUSE_INVAL_MSG, /**< Invalid message */
192 TAPI_CAUSE_CALL_BARRED, /**< Call barred */ //70
193 TAPI_CAUSE_SIM_CALL_CONTROL_CHANGED_TO_SS, /**< Sim call control changed to SS */
194 TAPI_CAUSE_SIM_CALL_CONTROL_CHANGED_TO_CALL, /**< SIM Call control changed to call */
195 TAPI_CAUSE_SIM_ERROR, /**< SIM error */
196 TAPI_CAUSE_SIM_CALL_CONTROL_MODIFIED, /**< SIM call control modified */
197 TAPI_CAUSE_RANDOM_ACCESS_FAILURE, /**< Random access error */
198 TAPI_CAUSE_LOWER_LAYER_FAILURE, /**< Lower layer error */
199 TAPI_CAUSE_ACCESS_REJECTED, /**< Access rejected */
200 TAPI_CAUSE_RESET_NOT_ALLOWED, /**< Reset not allowed */
201 TAPI_CAUSE_EMERGENCY_CALL_NOT_ALLOWED, /**< Emergency call not allowed */
202 TAPI_CAUSE_ACCESS_NOT_ALLOWED, /**< Access not allowed */ //80
203 TAPI_CAUSE_RADIO_LINK_FAILURE, /**< Radio link failure */
204 TAPI_CAUSE_INVALID_IDENTITY, /**< Invalid identity */
205 TAPI_CAUSE_UNKNOWN_IDENTITY, /**< Unknown identity */
206 TAPI_CAUSE_UNACCEPTABLE_IDENTITY, /**< Unacceptable identity */
207 TAPI_CAUSE_NO_SERVICE_HERE, /**< No service here */
208 TAPI_CAUSE_SERVICE_NOT_ALLOWED, /**< Service not allowed */
209 TAPI_CAUSE_SERVICE_NOT_AVAIL, /**< Service not available */
210 TAPI_CAUSE_SERVICE_NOT_WORKING, /**< Service not working */
211 TAPI_CAUSE_CANNOT_IDENTIFY_CALL, /**< Cannot identify the call */
212 TAPI_CAUSE_DEACTIVATION, /**< Deactivation */ //90
213 TAPI_CAUSE_FATAL_ERROR, /**< Fatal error */
214 TAPI_CAUSE_SEND_DTMF_SUCCESS, /**< Sending DTMF succeeded */
215 TAPI_CAUSE_SEND_DTMF_FAIL, /**< Sending DTMF failed */
216 TAPI_CAUSE_FIXED_DIALING_NUMBER_ONLY, /**< Fixed Dialing Number Only */
217 TAPI_CAUSE_TIMER_EXPIRED, /**< Call Timer Expired */
221 * @brief Enumeration when a call is ended, this end cause is given with the CALL END notification to the application.
222 * @details This end cause can be originated from different elements in the communication path or different modules in the same element.
226 TAPI_CALL_END_NO_CAUSE = 0x00, /**< No Cause */
228 TAPI_CC_CAUSE_UNASSIGNED_NUMBER, /**< Unassigned Number */
229 TAPI_CC_CAUSE_NO_ROUTE_TO_DEST, /**< No Route to Destination */
230 TAPI_CC_CAUSE_CHANNEL_UNACCEPTABLE, /**< Channel Unacceptable */
231 TAPI_CC_CAUSE_OPERATOR_DETERMINED_BARRING, /**< Operator Determined Barring */
232 TAPI_CC_CAUSE_NORMAL_CALL_CLEARING, /**< Normal Call Clearing */
234 TAPI_CC_CAUSE_USER_BUSY, /**< User Busy */
235 TAPI_CC_CAUSE_NO_USER_RESPONDING, /**< No user responding */
236 TAPI_CC_CAUSE_USER_ALERTING_NO_ANSWER, /**< User Alerting no Answer */
237 TAPI_CC_CAUSE_CALL_REJECTED, /**< Call Rejected */
238 TAPI_CC_CAUSE_NUMBER_CHANGED, /**< Number Changed */
240 TAPI_CC_CAUSE_NON_SELECTED_USER_CLEARING, /**< Non Selected User Clearing */
241 TAPI_CC_CAUSE_DESTINATION_OUT_OF_ORDER, /**< Destination out of Order */
242 TAPI_CC_CAUSE_INVALID_NUMBER_FORMAT, /**< Invalid Number Format */
243 TAPI_CC_CAUSE_FACILITY_REJECTED, /**< Facility Rejected */
244 TAPI_CC_CAUSE_RESPONSE_TO_STATUS_ENQUIRY, /**< Response to Status Enquiry */
246 TAPI_CC_CAUSE_NORMAL_UNSPECIFIED, /**< Normal Unspecified */
247 TAPI_CC_CAUSE_NO_CIRCUIT_CHANNEL_AVAILABLE, /**< No Circuit Channel Available */
248 TAPI_CC_CAUSE_NETWORK_OUT_OF_ORDER, /**< Network out of Order */
249 TAPI_CC_CAUSE_TEMPORARY_FAILURE, /**< Temporary Failure */
250 TAPI_CC_CAUSE_SWITCHING_EQUIPMENT_CONGESTION, /**< Switching Equipment Congestion */
252 TAPI_CC_CAUSE_ACCESS_INFORMATION_DISCARDED, /**< Access Information Discarded */
253 TAPI_CC_CAUSE_REQUESTED_CIRCUIT_CHANNEL_NOT_AVAILABLE, /**< Requested Circuit channel not available */
254 TAPI_CC_CAUSE_RESOURCES_UNAVAILABLE_UNSPECIFIED, /**< Resources unavailable and unspecified */
255 TAPI_CC_CAUSE_QUALITY_OF_SERVICE_UNAVAILABLE, /**< Quality of service unavailable */
256 TAPI_CC_CAUSE_REQUESTED_FACILITY_NOT_SUBSCRIBED, /**< Requested facility not subscribed */
258 TAPI_CC_CAUSE_INCOMING_CALL_BARRED_WITHIN_CUG, /**< Incoming call barred within CUG */
259 TAPI_CC_CAUSE_BEARER_CAPABILITY_NOT_AUTHORISED, /**< Bearer capability not Authorised */
260 TAPI_CC_CAUSE_BEARER_CAPABILITY_NOT_PRESENTLY_AVAILABLE,/**< Bearer capability not presently Available */
261 TAPI_CC_CAUSE_SERVICE_OR_OPTION_NOT_AVAILABLE, /**< Service or Option not available */
262 TAPI_CC_CAUSE_BEARER_SERVICE_NOT_IMPLEMENTED, /**< Service not implemented */
264 TAPI_CC_CAUSE_ACM_GEQ_ACMMAX, /**< ACM GEQ ACMAX */
265 TAPI_CC_CAUSE_REQUESTED_FACILITY_NOT_IMPLEMENTED, /**< Requested facility not implemented */
266 TAPI_CC_CAUSE_ONLY_RESTRICTED_DIGITAL_INFO_BC_AVAILABLE,/**< Restricted digital info BC not available */
267 TAPI_CC_CAUSE_SERVICE_OR_OPTION_NOT_IMPLEMENTED, /**< Service or Option not Implemented */
268 TAPI_CC_CAUSE_INVALID_TRANSACTION_ID_VALUE, /**< Transaction ID value */
270 TAPI_CC_CAUSE_USER_NOT_MEMBER_OF_CUG, /**< Not a member of CUG */
271 TAPI_CC_CAUSE_INCOMPATIBLE_DESTINATION, /**< Incompatible Destination */
272 TAPI_CC_CAUSE_INVALID_TRANSIT_NETWORK_SELECTION, /**< Transit Network selection */
273 TAPI_CC_CAUSE_SEMANTICALLY_INCORRECT_MESSAGE, /**< Semantically Incorrect message */
274 TAPI_CC_CAUSE_INVALID_MANDATORY_INFORMATION, /**< Invalid Mandatory Message */
276 TAPI_CC_CAUSE_MESSAGE_TYPE_NON_EXISTENT, /**< Message Type Non Existent */
277 TAPI_CC_CAUSE_MESSAGE_TYPE_NOT_COMPATIBLE_WITH_PROT_STATE, /**< Message type not compatible with Prot state */
278 TAPI_CC_CAUSE_IE_NON_EXISTENT_OR_NOT_IMPLEMENTED, /**< IE non exitent or not implemented */
279 TAPI_CC_CAUSE_CONDITIONAL_IE_ERROR, /**< Conditional IE error */
280 TAPI_CC_CAUSE_MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE, /**< Not Compatible with protocol state */
282 TAPI_CC_CAUSE_RECOVERY_ON_TIMER_EXPIRY, /**< Recovery on timer expiry */
283 TAPI_CC_CAUSE_PROTOCOL_ERROR_UNSPECIFIED, /**< Protocol error unspecified */
284 TAPI_CC_CAUSE_INTERWORKING_UNSPECIFIED, /**< Interworking unspecified */
285 TAPI_CC_CAUSE_REORDER, /**< Reorder */
287 TAPI_CC_CAUSE_END = 128, /**< End unspecified */
290 TAPI_REJECT_CAUSE_IMSI_UNKNOWN_IN_HLR, /**< IMSI unknown in HLR */
291 TAPI_REJECT_CAUSE_ILLEGAL_MS, /**< Illegal MS */
292 TAPI_REJECT_CAUSE_IMSI_UNKNOWN_IN_VLR, /**< IMSI unknown in VLR */
293 TAPI_REJECT_CAUSE_IMEI_NOT_ACCEPTED, /**< IMEI not accepted */
294 TAPI_REJECT_CAUSE_ILLEGAL_ME, /**< Illegal ME */
296 TAPI_REJECT_CAUSE_GPRS_SERVICES_NOT_ALLOWED, /**< GPRS service not allowed */
297 TAPI_REJECT_CAUSE_GPRS_SERVICES_AND_NON_GPRS_SERVICES_NOT_ALLOWED, /**< GPRS services and Non-GPRS services not allowed */
298 TAPI_REJECT_CAUSE_MS_IDENTITY_CANNOT_BE_DERIVED_BY_THE_NETWORK, /**< MS device cannot be derived by the network */
299 TAPI_REJECT_CAUSE_IMPLICITLY_DETACHED, /**< Implicitly detached */
300 TAPI_REJECT_CAUSE_PLMN_NOT_ALLOWED, /**< PLMN not allowed */
302 TAPI_REJECT_CAUSE_LA_NOT_ALLOWED, /**< LA not allowed */
303 TAPI_REJECT_CAUSE_NATIONAL_ROAMING_NOT_ALLOWED, /**< National roaming not allowed */
304 TAPI_REJECT_CAUSE_GPRS_SERVICES_NOT_ALLOWED_IN_THIS_PLMN, /**< GPRS services not allowed in this PLMN */
305 TAPI_REJECT_CAUSE_NO_SUITABLE_CELLS_IN_LA, /**< No suitable cells in the LA */
306 TAPI_REJECT_CAUSE_MSC_TEMPORARILY_NOT_REACHABLE, /**< MSC temporarily not reachable */
308 TAPI_REJECT_CAUSE_NETWORK_FAILURE, /**< Network unavailable */
309 TAPI_REJECT_CAUSE_MAC_FAILURE, /**< MAC failure */
310 TAPI_REJECT_CAUSE_SYNCH_FAILURE, /**< SYNCH failure */
311 TAPI_REJECT_CAUSE_CONGESTTION, /**< Congestion */
312 TAPI_REJECT_CAUSE_GSM_AUTH_UNACCEPTED, /**< GSM Auth unaccepted */
314 TAPI_REJECT_CAUSE_SERVICE_OPTION_NOT_SUPPORTED, /**< Service option not supported */
315 TAPI_REJECT_CAUSE_REQ_SERV_OPT_NOT_SUBSCRIBED, /**< REQ_SERV option not suscribed */
316 TAPI_REJECT_CAUSE_SERVICE_OPT__OUT_OF_ORDER, /**< Service OPT out of order */
317 TAPI_REJECT_CAUSE_CALL_CANNOT_BE_IDENTIFIED, /**< Call cannot be identified */
318 TAPI_REJECT_CAUSE_NO_PDP_CONTEXT_ACTIVATED, /**< No PDP context Activated */
320 TAPI_REJECT_CAUSE_RETRY_UPON_ENTRY_INTO_A_NEW_CELL_MIN_VALUE, /**< Retry upon entry into a new call min value */
321 TAPI_REJECT_CAUSE_RETRY_UPON_ENTRY_INTO_A_NEW_CELL_MAX_VALUE, /**< Retry upon entry into a new call max value */
322 TAPI_REJECT_CAUSE_SEMANTICALLY_INCORRECT_MSG, /**< Semantically incorret message */
323 TAPI_REJECT_CAUSE_INVALID_MANDATORY_INFO, /**< Invalid mandatory information */
324 TAPI_REJECT_CAUSE_MESSAGE_TYPE_NON_EXISTANT, /**< Message type non-existant */
326 TAPI_REJECT_CAUSE_MESSAGE_TYPE_NOT_COMP_PRT_ST, /**< Message type not COMP PRT ST */
327 TAPI_REJECT_CAUSE_IE_NON_EXISTANT, /**< IE non existent */
328 TAPI_REJECT_CAUSE_MSG_NOT_COMPATIBLE_PROTOCOL_STATE, /**< MSG not compatible protocol state */
330 /* Connection Management establishment rejection cause */
331 TAPI_REJECT_CAUSE_REJ_UNSPECIFIED, /**< REJ unspecified */
333 /* AS reject causes */
334 TAPI_REJECT_CAUSE_AS_REJ_RR_REL_IND, /**< RR release indication */
335 TAPI_REJECT_CAUSE_AS_REJ_RR_RANDOM_ACCESS_FAILURE, /**< Random Access Failure */
336 TAPI_REJECT_CAUSE_AS_REJ_RRC_REL_IND, /**< RRC release indication */
337 TAPI_REJECT_CAUSE_AS_REJ_RRC_CLOSE_SESSION_IND, /**< RRC close session indication */
338 TAPI_REJECT_CAUSE_AS_REJ_RRC_OPEN_SESSION_FAILURE, /**< RRC open session failure */
339 TAPI_REJECT_CAUSE_AS_REJ_LOW_LEVEL_FAIL, /**< Low level failure */
340 TAPI_REJECT_CAUSE_AS_REJ_LOW_LEVEL_FAIL_REDIAL_NOT_ALLOWED, /**< Low level failure redial not alowed */
341 TAPI_REJECT_CAUSE_AS_REJ_LOW_LEVEL_IMMED_RETRY, /**< Low level immediate retry */
343 /* MM reject causes */
344 TAPI_REJECT_CAUSE_MM_REJ_INVALID_SIM, /**< Invalid SIM */
345 TAPI_REJECT_CAUSE_MM_REJ_NO_SERVICE, /**< No service */
346 TAPI_REJECT_CAUSE_MM_REJ_TIMER_T3230_EXP, /**< Timer T3230 expiry */
347 TAPI_REJECT_CAUSE_MM_REJ_NO_CELL_AVAILABLE, /**< No call available */
348 TAPI_REJECT_CAUSE_MM_REJ_WRONG_STATE, /**< Wrong state */
349 TAPI_REJECT_CAUSE_MM_REJ_ACCESS_CLASS_BLOCKED, /**< Access class blocked */
351 /* Definitions for release ind causes between MM and CNM */
352 TAPI_REJECT_CAUSE_ABORT_MSG_RECEIVED, /**< Abort Message received */
353 TAPI_REJECT_CAUSE_OTHER_CAUSE, /**< Other cause */
355 /* CNM reject causes */
356 TAPI_REJECT_CAUSE_CNM_REJ_TIMER_T303_EXP, /**< Timer T303 expiry */
357 TAPI_REJECT_CAUSE_CNM_REJ_NO_RESOURCES, /**< Rejected due to unavailibilty of resources */
358 TAPI_REJECT_CAUSE_CNM_MM_REL_PENDING, /**< MM release pending */
359 TAPI_REJECT_CAUSE_CNM_INVALID_USER_DATA, /**< Invalid user data */
360 TAPI_CALL_END_CAUSE_MAX = 255, /**< Maximum End Cause limit for GSM/WCDMA */
362 /* CDMA CALL END CAUSE */
363 TAPI_CDMA_END_CAUSE_REL_BY_USER = 0x1001, /**< Call Released by User */
364 TAPI_CDMA_END_CAUSE_REL_BY_NET, /**< Call Released by Network */
365 TAPI_CDMA_END_CAUSE_REL_NET_BUSY, /**< Call Released because the network is busy */
366 TAPI_CDMA_END_CAUSE_NO_SVC, /**< Call Released because of No Service area */
367 TAPI_CDMA_END_CAUSE_FADING, /**< Call Released because of Fading */
368 TAPI_CDMA_END_CAUSE_RELEASE_BY_REORDER, /**< Call Released because of reorder */
369 TAPI_CDMA_END_CAUSE_RELEASE_BY_INTERCEPT, /**< Call Released because of intercept */
370 TAPI_CDMA_END_CAUSE_SILENT_ZONE_RETRY, /**< Call Released because of silent zone retry */
371 TAPI_CDMA_END_CAUSE_OTA_CALL_FAIL, /**< Call Released because of OTA call failure */
372 TAPI_CDMA_END_CAUSE_PHONE_OFFLINE, /**< Call Released because phone is offline */
373 TAPI_CDMA_END_CAUSE_PHONE_IS_CDMA_LOCKED, /**< Call Released because CDMA is locked */
374 TAPI_CDMA_END_CAUSE_FLASH_IS_IN_PROGRESS_ERR, /**< Call Released because of the flash-is-in-progress error */
375 TAPI_CDMA_END_CAUSE_E911_MODE_ERR, /**< Call Released because of the e911 mode */
376 TAPI_CDMA_END_CAUSE_OTHERS, /**< Call Released by Others */
377 TAPI_CDMA_END_CAUSE_MAX /**< Maximum End Cause limit for CDMA */
381 * @brief Enumeration for the call conference states.
385 TAPI_CALL_CONFERENCE_IDLE, /**< Idle */
386 TAPI_CALL_CONFERENCE_ACTIVE /**< Active */
387 } TelConferenceCallState_t;
390 * @brief Enumeration for application usable states. Applications can have their own states as well.
394 TAPI_CALL_STATE_IDLE, /**< Call is in the idle state - i.e. no call */
395 TAPI_CALL_STATE_ACTIVE, /**< Call is in the connected and conversation state */
396 TAPI_CALL_STATE_HELD, /**< Call is in the held state */
397 TAPI_CALL_STATE_DIALING, /**< Call is in the dialing state */
398 TAPI_CALL_STATE_ALERT, /**< Call is in the alerting state */
399 TAPI_CALL_STATE_INCOMING, /**< Call is in the incoming state */
400 TAPI_CALL_STATE_WAITING, /**< Call is in the answered state, and waiting for connected indication event */
401 TAPI_CALL_STATE_MAX /**< Call state unknown */
405 * @brief IN GSM ONLY: call identification number.
409 TAPI_CALL_ACTIVE_LINE1, /**< Line 1 */
410 TAPI_CALL_ACTIVE_LINE2 /**< Line 2 */
411 } TelCallActiveLine_t;
414 TAPI_CALL_UUS_NONE, /**< No User to User information */
415 TAPI_CALL_UUS_1, /**< User to User information 1 */
419 * @brief Enumeration for SS info messages of an incoming call indication.
423 TAPI_CALL_MT_CLI_PRESENT = 0x31, /**< Number details are present in the "char number" of the call info struct. If the number is not present then the "no cli cause" member in mt_ss_info is set accordingly */
424 TAPI_CALL_MT_CNA_PRESENT = 0x32, /**< Calling Name Info present, #TelCallingNameInfo_t of the call info struct contains this info */
425 TAPI_CALL_MT_SS_UNDEFINED = 0x00, /**< Undefined SS indication. Ignore mt_ss_info */
430 * @brief Enumeration for the answer type used as a parameter in the answer call API.
434 TAPI_CALL_ANSWER_ACCEPT = 0, /**< Used to answer an incoming call when there are no current active calls */
435 TAPI_CALL_ANSWER_REJECT, /**< Used to reject the incoming call */
436 TAPI_CALL_ANSWER_REPLACE, /**< Release current active call and accept the waiting call */
437 TAPI_CALL_ANSWER_HOLD_AND_ACCEPT, /**< Hold the current active call, and accept the waiting call */
438 } TelCallAnswerType_t;
441 * @brief Enumeration for the end type used as a parameter in the end call API.
445 TAPI_CALL_END = 0, /**< End Specific Call */
446 TAPI_CALL_END_ALL, /**< End All Calls */
447 TAPI_CALL_END_ACTIVE_ALL, /**< End All Active Calls */
448 TAPI_CALL_END_HOLD_ALL, /**< End All Held Calls */
455 * @brief Enumeration for call type to be used by applications while using the setup call API. Like the requested call is a voice call or video call.
459 TAPI_CALL_TYPE_VOICE, /**< Voice call type */// in ipcv4, 0x0100
460 TAPI_CALL_TYPE_DATA, /**< Data call type - (for modem, fax, packet, and other such calls) */// in ipcv4, 0x0200
461 TAPI_CALL_TYPE_E911 /**< Emergency call type */// in ipcv4, 0x0700
465 * @brief Enumeration for the various alerting patterns available.
469 TAPI_CALL_ALERTING_PATTERN_1 = 0x00, /**< Pattern 1 */
470 TAPI_CALL_ALERTING_PATTERN_2 = 0x01, /**< Pattern 2 */
471 TAPI_CALL_ALERTING_PATTERN_3 = 0x02, /**< Pattern 3 */
472 TAPI_CALL_ALERTING_PATTERN_4 = 0x03, /**< Pattern 4 */
473 TAPI_CALL_ALERTING_PATTERN_5 = 0x04, /**< Pattern 5 */
474 TAPI_CALL_ALERTING_PATTERN_6 = 0x05, /**< Pattern 6 */
475 TAPI_CALL_ALERTING_PATTERN_7 = 0x06, /**< Pattern 7 */
476 TAPI_CALL_ALERTING_PATTERN_8 = 0x07, /**< Pattern 8 */
477 TAPI_CALL_NO_ALERTING_PATTERN = 0x08 /**< No Alerting Pattern */
478 } TelCallAlertingPattern_t;
481 * @brief Enumeration for state of the current call.
485 TAPI_CALL_CONNECT_IDLE, /**< Call is in the Idle state */
486 TAPI_CALL_CONNECT_ACTIVE, /**< Call is in the Active state */
487 TAPI_CALL_CONNECT_HELD /**< Call is in the Held state */
488 } TelCallActiveState_t;
491 * @brief Enumeration for closed user group options.
495 TAPI_CALL_CUG_NO_INFO = 0x00, /**< No information */
496 TAPI_CALL_CUG_SUPRESS_OA, /**< Suppress OA */
497 TAPI_CALL_CUG_SUPRESS_PRF_CUG, /**< Suppress preferential CUG */
498 TAPI_CALL_CUG_SUPRESS_OA_AND_CUG /**< Suppress OA and preferential CUG */
499 } TelCallCugOptions_t;
502 * @brief Enumeration for tapi call UUS protocol types.
506 TAPI_CALL_UUS_PROTO_SPECIFIC = 0, /**< The user information is structured according to user needs */
507 TAPI_CALL_UUS_PROTO_OSI_HIGHER_LAYER = 1, /**< OSI high layer protocols */
508 TAPI_CALL_UUS_PROTO_IA5_CHARS = 4, /**< User information consists of IA5 characters */
509 TAPI_CALL_UUS_PROTO_V120 = 7, /**< Rate adaptation */
510 TAPI_CALL_UUS_PROTO_Q931 = 8 /**< User-network call control messages */
511 } TelCallUusProtocolType_t;
514 * @brief Enumeration for the call name mode.
518 TAPI_CALL_NAME_AVAIL = 0, /**< This identifier refers to presenting the calling party's name identity to the called party */
519 TAPI_CALL_NAME_RESTRICTED = 1, /**< This identifier refers to restricting the name identity of the calling party from being presented to the called party */
520 TAPI_CALL_NAME_UNAVAIL = 2, /**< This identifier refers to the unavailability of the calling party's name identity from being offered to the called party */
521 TAPI_CALL_NAME_AVAIL_RESTRICTED = 3 /**< This identifier refers to offering the calling party's name identity to the called party with which the presentation restriction is overridden */
525 * @brief Enumeration for the "No Cli cause" value.
529 TAPI_CALL_NO_CLI_CAUSE_NONE = -1, /**< None */
530 TAPI_CALL_NO_CLI_CAUSE_UNAVAILABLE = 0x00, /**< Unavailable */
531 TAPI_CALL_NO_CLI_CAUSE_REJECTBY_USER = 0x01, /**< Rejected by User */
532 TAPI_CALL_NO_CLI_CAUSE_INTERACTION_OTHERSERVICES = 0x02, /**< Other services */
533 TAPI_CALL_NO_CLI_CAUSE_COINLINE_PAYPHONE = 0x03, /**< Coin line phone */
534 } TelCallNoCliCause_t;
537 * @brief Enumeration for the "Cli mode" value.
541 TAPI_CALL_PRES_AVAIL, /**< Presentation Allowed */
542 TAPI_CALL_PRES_RESTRICTED, /**< Presentation Restricted */
543 TAPI_CALL_NUM_UNAVAIL, /**< Number Not Available */
547 * @brief Enumeration for the the fwded ind type used for MO and Mt from SS Noti Info.
551 TAPI_CALL_OUTGOING_FWDED = 0x00, /**< Outgoing call forwarded */
552 TAPI_CALL_INCOMMING_FWDED = 0x01, /**< Incoming call forwarded */
553 } TelCallForwardType_t;
556 * @brief Enumeration for the voice privacy option mode. (CDMA only)
560 TAPI_CALL_PRIVACY_MODE_STANDARD = 0x00, /**< Standard mode */
561 TAPI_CALL_PRIVACY_MODE_ENHANCED /**< Enhanced mode */
562 } TelCallPrivacyMode_t;
565 * @brief Enumeration for the OTASP Status. (CDMA only)
569 TAPI_CALL_OTASP_OK_SPL_UNLOCKED = 0x01, /**< OTASP : SPL unlocked ok */
570 TAPI_CALL_OTASP_OK_AKEY_EXCESS, /**< OTASP : A-Key excess ok */
571 TAPI_CALL_OTASP_OK_SSD_UPDATE, /**< OTASP : SSD update ok */
572 TAPI_CALL_OTASP_OK_NAM_DWNLD, /**< OTASP : NAM download ok */
573 TAPI_CALL_OTASP_OK_MDN_DWNLD, /**< OTASP : MDN download ok */
574 TAPI_CALL_OTASP_OK_IMSI_DWNLD, /**< OTASP : IMSI download ok */
575 TAPI_CALL_OTASP_OK_PRL_DWNLD, /**< OTASP : PRL download ok */
576 TAPI_CALL_OTASP_OK_COMMIT, /**< OTASP : commit ok */
577 TAPI_CALL_OTASP_OK_PROGRAMMING, /**< OTASP : programming ok */
578 TAPI_CALL_OTASP_SUCCESS, /**< OTASP : success */
579 TAPI_CALL_OTASP_UNSUCCESS, /**< OTASP : unsuccess */
580 TAPI_CALL_OTASP_OK_OTAPA_VERIFY, /**< OTASP : verify ok */
581 TAPI_CALL_OTASP_PROGRESS, /**< OTASP : progress */
582 TAPI_CALL_OTASP_FAILURES_EXCESS_SPC, /**< OTASP : SPC excess failure */
583 TAPI_CALL_OTASP_LOCK_CODE_PW_SET, /**< OTASP : lock code password set */
584 } TelCallOtaspStatus_t;
587 * @brief Enumeration for the OTAPA Status. (CDMA only)
591 TAPI_CALL_OTAPA_STOP = 0x00, /**< OTAPA : stop */
592 TAPI_CALL_OTAPA_START, /**< OTAPA : start */
593 } TelCallOtapaStatus_t;
596 * @brief Enumeration for the Alert Signal Type. (CDMA only)
600 TAPI_CALL_SIGNAL_TYPE_TONE = 0x00,
601 TAPI_CALL_SIGNAL_TYPE_ISDN_ALERTING,
602 TAPI_CALL_SIGNAL_TYPE_IS54B_ALERTING,
603 TAPI_CALL_SIGNAL_TYPE_RESERVED
604 } TelCallAlertSignalType_t;
607 * @brief Enumeration for the Alert Pitch Type. (CDMA only)
611 TAPI_CALL_ALERT_PITCH_MED = 0x00,
612 TAPI_CALL_ALERT_PITCH_HIGH,
613 TAPI_CALL_ALERT_PITCH_LOW,
614 TAPI_CALL_ALERT_PITCH_RESERVED
615 } TelCallAlertPitchType_t;
618 * @brief Enumeration for the signals specific to the alert signal type TAPI_CALL_SIGNAL_TYPE_TONE. (CDMA only)
622 TAPI_CALL_SIGNAL_TONE_DIAL = 0x00,
623 TAPI_CALL_SIGNAL_TONE_RINGBACK_TONE_ON,
624 TAPI_CALL_SIGNAL_TONE_INTERCEPT_TONE_ON,
625 TAPI_CALL_SIGNAL_TONE_ABBREV_TONE,
626 TAPI_CALL_SIGNAL_TONE_NETWORK_CONGESTION_TONE_ON,
627 TAPI_CALL_SIGNAL_TONE_ABBREV_NETWORK_CONGESTION,
628 TAPI_CALL_SIGNAL_TONE_BUSY_TONE_ON,
629 TAPI_CALL_SIGNAL_TONE_CFRM_TONE_ON,
630 TAPI_CALL_SIGNAL_TONE_ANSWER_TONE_ON,
631 TAPI_CALL_SIGNAL_TONE_CALL_WAITING_TONE_ON,
632 TAPI_CALL_SINGNAL_TONE_PIPE_TONE_ON,
633 TAPI_CALL_SIGNAL_TONE_OFF
634 } TelCallToneSignal_t;
637 * @brief Enumeration for the signals specific to the alert signal type TAPI_CALL_SIGNAL_TYPE_ISDN_ALERTING. (CDMA only)
640 TAPI_CALL_SIGNAL_ISDN_ALERT_NORMAL = 0x00,
641 TAPI_CALL_SIGNAL_ISDN_ALERT_INTER_GROUP,
642 TAPI_CALL_SIGNAL_ISDN_ALERT_SPECIAL_PRIORITY,
643 TAPI_CALL_SIGNAL_ISDN_ALERT_ISDN_RESERVED1,
644 TAPI_CALL_SIGNAL_ISDN_ALERT_PING_RING,
645 TAPI_CALL_SIGNAL_ISDN_ALERT_ISDN_RESERVED2,
646 TAPI_CALL_SIGNAL_ISDN_ALERT_ISDN_RESERVED3,
647 TAPI_CALL_SIGNAL_ISDN_ALERT_ISDN_RESERVED4,
648 TAPI_CALL_SIGNAL_ISDN_ALERT_OFF
649 } TelCallIsdnAlertSignal_t;
652 * @brief Enumeration for the signals specific to the alert signal type TAPI_CALL_SIGNAL_TYPE_IS54B_ALERTING. (CDMA only)
655 TAPI_CALL_SIGNAL_IS54B_ALERT_NOTONE = 0x00,
656 TAPI_CALL_SIGNAL_IS54B_ALERT_LONG,
657 TAPI_CALL_SIGNAL_IS54B_ALERT_SHORT_SHORT,
658 TAPI_CALL_SIGNAL_IS54B_ALERT_SHORT_SHORT_LONG,
659 TAPI_CALL_SIGNAL_IS54B_ALERT_SHORT_SHORT_2,
660 TAPI_CALL_SIGNAL_IS54B_ALERT_SHORT_LONG_SHORT,
661 TAPI_CALL_SIGNAL_IS54B_ALERT_SHORT_SHORT_SHORT_SHORT,
662 TAPI_CALL_SIGNAL_IS54B_ALERT_PBX_LONG,
663 TAPI_CALL_SIGNAL_IS54B_ALERT_PBX_SHORT_SHORT,
664 TAPI_CALL_SIGNAL_IS54B_ALERT_PBX_SHORT_SHORT_LONG,
665 TAPI_CALL_SIGNAL_IS54B_ALERT_PBX_SHORT_LONG_SHORT,
666 TAPI_CALL_SIGNAL_IS54B_ALERT_PBX_SHORT_SHORT_SHORT_SHORT,
667 TAPI_CALL_SIGNAL_IS54B_ALERT_PIP_PIP_PIP_PIP
668 } TelCallIs54bAlertSignal_t;
671 * @brief Enumeration for the call time request mask type.
675 TAPI_CALL_TIME_TYPE_TOTAL_CALL_CNT = 0x01, /**< Total Call Count Mask */
676 TAPI_CALL_TIME_TYPE_TOTAL_CALL_TIME = 0x02, /**< Total Call Time Mask */
677 TAPI_CALL_TIME_TYPE_LAST_CALL_TIME = 0x04, /**< Last Call Time Mask */
678 } TelCallTimeMaskType_t;
681 * @brief Enumeration for the DTMF tone length.
685 TAPI_CALL_TONE_DURATION_SHORT = 0x01, /**< Tone Duration Short */
686 TAPI_CALL_TONE_DURATION_LONG /**< Tone Duration Long */
687 } TelCallToneDuration_t;
690 * @brief Enumeration for the emergency category type.
694 TAPI_CALL_ECC_DEFAULT = 0x00, /**< Default case */
695 TAPI_CALL_ECC_POLICE = 0x01, /**< Police emergency */
696 TAPI_CALL_ECC_AMBULANCE = 0x02, /**< Ambulance emergency */
697 TAPI_CALL_ECC_FIREBRIGADE = 0x04, /**< Firebrigade emergency */
698 TAPI_CALL_ECC_MARINEGUARD = 0x08, /**< Marineguard emergency */
699 TAPI_CALL_ECC_MOUNTAINRESCUE = 0x10, /**< Mountain rescue emergency */
700 TAPI_CALL_ECC_MANUAL_ECALL = 0x20, /**< Manual emergency call */
701 TAPI_CALL_ECC_AUTO_ECALL = 0x40, /**< Automatic emergency call */
702 TAPI_CALL_ECC_NONE = 0xff, /**< Unspecified emergency */
703 } TelCallEmergencyCategory_t;
706 TAPI_CALL_IDENTITY_DEFAULT, /**< Calling line identity will be sent. Based on the network setting, the line identity will be presented to the called party */
707 TAPI_CALL_IDENTITY_SHOW, /**< Display the calling line identity */
708 TAPI_CALL_IDENTITY_HIDE /**< Hide the display of the calling line identity */
709 } TelCallIdentityMode_t;
712 * @brief Enumeration for the context type.
716 TAPI_CONTEXT_TYPE_NONE = 0x00, /**< Unspecified context */
717 TAPI_CONTEXT_TYPE_VOICE_CALL = 0x01, /**< Voice call context */
718 TAPI_CONTEXT_TYPE_DATA_CALL = 0x2, /**< Data call context */
719 TAPI_CONTEXT_TYPE_VIDEO_CALL = 0x3, /**< Video call context */
720 TAPI_CONTEXT_TYPE_NETTEXT, /**< Network text context */
721 TAPI_CONTEXT_TYPE_E911, /**< Emergency context */
725 * @brief Enumeration for the timer state and/or call timer ID.
729 TAPI_CALL_TSTATE_IDLE = 0x00, /**< No timer running */
730 TAPI_CALL_TSTATE_SETUP_PENDING, /**< Setup Timer */
731 TAPI_CALL_TSTATE_CONNECT_PENDING, /**< Connect Timer */
732 TAPI_CALL_TSTATE_END_PENDING, /**< Release Timer */
733 TAPI_CALL_TSTATE_HOLD_PENDING, /**< Hold Timer */
734 TAPI_CALL_TSTATE_RETRIEVE_PENDING, /**< Retrieve Timer */
735 TAPI_CALL_TSTATE_JOIN_PENDING, /**< Join Timer */
736 TAPI_CALL_TSTATE_SPLIT_PENDING, /**< Split Timer */
737 TAPI_CALL_TSTATE_ECT_PENDING, /**< ECT Timer */
738 TAPI_CALL_TSTATE_DTMF_PENDING, /**< DTMF Timer */
739 } TelTapiCallTimerState;
742 * @brief Enumeration for the offlength to send DTMF.
746 TAPI_CALL_DTMF_OFFLENGTH_60MS,
747 TAPI_CALL_DTMF_OFFLENGTH_100MS,
748 TAPI_CALL_DTMF_OFFLENGTH_150MS,
749 TAPI_CALL_DTMF_OFFLENGTH_200MS,
750 } TelCallDtmfInterDigitInterval_t;
753 * @brief Enumeration for the onlength to send DTMF.
757 TAPI_CALL_DTMF_ONLENGTH_95MS,
758 TAPI_CALL_DTMF_ONLENGTH_150MS,
759 TAPI_CALL_DTMF_ONLENGTH_200MS,
760 TAPI_CALL_DTMF_ONLENGTH_250MS,
761 TAPI_CALL_DTMF_ONLENGTH_300MS,
762 TAPI_CALL_DTMF_ONLENGTH_350MS,
763 TAPI_CALL_DTMF_ONLENGTH_SMS
764 }TelCallDtmfPulseWidth_t;
767 * @brief Enumeration for the Call Record Info Type
771 TAPI_CALL_REC_INFO_TYPE_NAME,
772 TAPI_CALL_REC_INFO_TYPE_NUMBER,
773 }TelCallRecordInfoType_t;
776 * @brief TelCallPreferredVoiceSubs_t
777 * This enumeration defines possible 'preferred' Voice Subscriptions
781 TAPI_CALL_PREFERRED_VOICE_SUBS_UNKNOWN = -1, /**< Unknown status **/
782 TAPI_CALL_PREFERRED_VOICE_SUBS_CURRENT_NETWORK = 0, /**< Current network **/
783 TAPI_CALL_PREFERRED_VOICE_SUBS_ASK_ALWAYS, /**< ASK Always **/
784 TAPI_CALL_PREFERRED_VOICE_SUBS_SIM1, /**< SIM 1 **/
785 TAPI_CALL_PREFERRED_VOICE_SUBS_SIM2 /**< SIM 2 **/
786 } TelCallPreferredVoiceSubs_t;
790 int bRequestedBySAT; /**< This flag is to indicate whether the request has been initiated by SAT. Possible values are @c 0 and @c 1. This flag should be updated only when initiating a setup request */
791 TelCallIdentityMode_t IdentityMode; /**< Sets the Calling Line Identity mode. If the default value #TAPI_IDENTITY_DEFAULT is set, OEM will set the default value */
792 TelCallEmergencyCategory_t ecc;
793 } tel_set_call_satflag_identiymode;
796 * @brief The structure type to redirect destination information.
800 unsigned char number[TAPI_CALL_DIAL_NUMBER_LEN_MAX + 1]; /**< Redirect destination number */
801 } TelCallDeflectDstInfo_t;
804 * @brief The structure type for calling name information.
808 TelCallNameMode_t NameMode; /**< Display mode of @a szNameData */
809 char szNameData[TAPI_CALLING_NAME_SIZE_MAX]; /**< Calling party name string */
810 } TelCallingNameInfo_t;
813 * @brief The structure type for information about an outgoing call.
817 TelCallType_t CallType; /**< Sets type of call (voice, data, video, emergency) */
818 TelCallEmergencyCategory_t Ecc;
819 char szNumber[TAPI_CALL_DIALDIGIT_LEN_MAX + 1]; /**< A string containing the destination phone number. This follows the dial number format */
823 * @brief The structure type for information about call status.
828 int bMoCall; /**< Status will be yes for MO Calls. If MT call, then FALSE */
829 char pNumber[TAPI_CALL_DIALDIGIT_LEN_MAX + 1]; /**< Mobile Number */
830 TelCallType_t CallType; /**< Type of call (voice, data, emergency) */
831 TelCallStates_t CallState; /**< Current Call state */
832 int bConferenceState; /**< Whether Call is in Conference */
836 * @brief Called to get the call status.
839 typedef void (*TelCallStatusCallback)( TelCallStatus_t *out, void *user_data );
843 * @brief The structure type for information about call redirection details.
847 char szRedirectedNumber[TAPI_CALL_DIALDIGIT_LEN_MAX + 1]; /**< Redirected party number */
848 char szRedirectSubAddress[TAPI_CALL_SUBADDRESS_LEN_MAX + 1]; /**< Redirect party sub-address */
849 } TelCallRedirectionInfo_t;
852 * @brief The structure type for incoming call information.
856 unsigned int CallHandle; /**< At the Foundation API Level, call handle indicates the handle of the call for the application. At the Framework API Level, call handle indicates the call identifier used for a call by the OEM Adaptation Layer Plug-in */
857 TelCallType_t CallType; /**< Call type */
858 TelSsLineIdentificationType_t CliPresentationIndicator; /**< Calling Party presentation indicator */
859 char szCallingPartyNumber[TAPI_CALL_DIALDIGIT_LEN_MAX + 1]; /**< Caller number, null terminated ASCII */
860 TelCallingNameInfo_t CallingNameInfo; /**< Call name info. If there is no information from the network, this information will be @c NULL */
861 TelCallRedirectionInfo_t RedirectInfo; /**< The data for the Call Redirect information. If there is no information from the network, this information will be @c NULL */
862 TelCallCliMode_t CliMode; /**< CLI mode */
863 TelCallNoCliCause_t CliCause; /**< No CLI cause */
864 int fwded; /**< True or false. If the incoming call is a forwarded call, then @c true else @c false */
865 TelCallActiveLine_t ActiveLine; /**< Current Active Line */
866 } TelCallIncomingCallInfo_t;
869 * @brief The structure type for SS Info message.
873 TelCallMtSSInfo_t type; /**< Type of SS Info present */
874 TelCallCliMode_t CliMode; /**< CLI mode */
875 TelCallNoCliCause_t no_cli_cause; /**< TBD */
876 } TelCallMtSsInfo_t; // not used
879 int isMobileOriginated; /**< Is this call Mobile Originated? */
880 TelCallNameMode_t nameMode; /**< Calling Party Name availability mode */
881 char callNumber[TAPI_CALL_DIALDIGIT_LEN_MAX + 1]; /**< A character array of the destination address. This follows the dial @a callNumber format */
882 unsigned int startTime; /**< Time when a call is started */
883 unsigned int endTime; /**< Time when a call is ended */
884 TelCallType_t callType; /**< Type of a call */
885 TelCallStates_t callState; /**< State of a call */
886 TelCallActiveState_t activeState; /**< Status of a call */
887 TelConferenceCallState_t conferenceState; /**< State of a conference call */
888 TelCallingNameInfo_t callingNameInfo; /**< Calling name information of a call */
889 TelCallActiveLine_t current_line; /**< Line information of a call */
890 TelCallCause_t cause; /**< End type of a call when a call is ended */
891 TelTapiEndCause_t endCause; /**< End Cause */
895 * @brief The structure type for the connected number information.
899 TelCallCliMode_t CliMode; /**< CLI mode */
900 TelCallNoCliCause_t no_cli_cause; /**< Cause when no CLI number */
901 unsigned char dcs; /**< DCS */
902 unsigned char number_type; /**< Number type */
903 TelCallNameMode_t name_mode; /**< Display mode of the name */
904 char number[TAPI_CALL_DIALDIGIT_LEN_MAX + 1]; /**< Caller number, null terminated ASCII */
905 char sub_address[TAPI_CALL_SUBADDRESS_LEN_MAX + 1]; /**< Called sub-address, null terminated ASCII */
906 } TelCallConnectedNumberInfo_t;
909 * @brief The structure type for information about call time and call count.
913 unsigned short req_type_mask; /**< Call time request type */
914 unsigned long TotalCallCnt; /**< Total Call Count */
915 unsigned long OutgoingCallCnt; /**< Outgoing Call Count */
916 unsigned long IncomingCallCnt; /**< Incoming Call Count */
917 unsigned long TotalCallTime; /**< Overall Call Time(Outgoing + Incoming, in seconds) */
918 unsigned long OutgoingCallTime; /**< Overall Outgoing Call Time(in seconds) */
919 unsigned long IncomingCallTime; /**< Overall Incoming Call Time(in seconds) */
920 unsigned long LastCallTime; /**< Last Call Time(in seconds) */
924 * @brief The structure type for information about display record in CDMA.
928 unsigned char Record[TAPI_CALL_DISPLAY_RECORD_MAX + 1]; /**< Display record */
929 } TelCallDisplayRecordInfo_t;
932 * @brief The structure type for information about burst DTMF in CDMA.
936 char dtmf_string[TAPI_CALL_BURST_DTMF_STRING_MAX + 1]; /** Burst DTMF string NULL terminated */
937 TelCallDtmfPulseWidth_t pulse_width;
938 TelCallDtmfInterDigitInterval_t inter_digit_interval;
939 } TelCallBurstDtmf_t;
942 * @brief Structure type for the information about records in CDMA.
946 unsigned int id; /**< Call id */
947 TelCallRecordInfoType_t type;
949 char name[TAPI_CALLING_NAME_SIZE_MAX + 1]; /**< name record */
950 char number[TAPI_CALL_DIAL_NUMBER_LEN_MAX + 1]; /**< number record */
952 } TelCallRecordInfo_t;
955 * @brief Enumeration for call sound volume level.
959 TAPI_SOUND_MUTE =0x00, /**< Sound is mute */
960 TAPI_SOUND_VOLUME_LEVEL_1=0x01, /**< Volume level is 1 */
961 TAPI_SOUND_VOLUME_LEVEL_2=0x02, /**< Volume level is 2 */
962 TAPI_SOUND_VOLUME_LEVEL_3=0x03, /**< Volume level is 3 */
963 TAPI_SOUND_VOLUME_LEVEL_4=0x04, /**< Volume level is 4 */
964 TAPI_SOUND_VOLUME_LEVEL_5=0x05, /**< Volume level is 5 */
965 TAPI_SOUND_VOLUME_LEVEL_6=0x06, /**< Volume level is 6 */
966 TAPI_SOUND_VOLUME_LEVEL_7=0x07, /**< Volume level is 7 */
967 TAPI_SOUND_VOLUME_LEVEL_8=0x08, /**< Volume level is 8 */
968 TAPI_SOUND_VOLUME_LEVEL_9=0x09 /**< Volume level is 9 */
972 * @brief Enumeration for call sound device type.
976 TAPI_SOUND_DEVICE_RECEIVER = 0x00, /**< Device type Receiver */
977 TAPI_SOUND_DEVICE_SPEAKER_PHONE = 0x10, /**< Device type Speaker */
978 TAPI_SOUND_DEVICE_HFK = 0x20, /**< Device type Handsfree */
979 TAPI_SOUND_DEVICE_HEADSET = 0x30, /**< Device type HeadSet */
980 TAPI_SOUND_DEVICE_BLUETOOTH = 0x40, /**< Device type Bluetooth */
981 TAPI_SOUND_DEVICE_EC = 0xA0, /**< Device type external*/
985 * @brief Enumeration for call sound type.
989 TAPI_SOUND_TYPE_VOICE = 0x01, /**< Call Sound type voice */
990 TAPI_SOUND_TYPE_KEYTONE = 0x02, /**< Call Sound type keytone */
991 TAPI_SOUND_TYPE_BELL = 0x03, /**< Call Sound type bell */
992 TAPI_SOUND_TYPE_MESSAGE = 0x04, /**< Call Sound type message */
993 TAPI_SOUND_TYPE_ALARM = 0x05, /**< Call Sound type alarm */
994 TAPI_SOUND_TYPE_PDA_MISC = 0x06, /**< Call Sound type PDA miscellaneous */
999 TelSoundDevice_t device; /**< Call Sound device info structure */
1000 TelSoundType_t type; /**< Call Sound type info structure */
1001 TelSoundVolume_t volume; /**< Call Sound volume info structure */
1002 } TelCallVolumeInfo_t;
1005 TAPI_SOUND_PATH_HANDSET =0x01, /**< Audio path is handset */
1006 TAPI_SOUND_PATH_HEADSET =0x02, /**< Audio path is handset */
1007 TAPI_SOUND_PATH_HANDSFREE =0x03, /**< Audio path is Handsfree */
1008 TAPI_SOUND_PATH_BLUETOOTH =0x04, /**< Audio path is bluetooth */
1009 TAPI_SOUND_PATH_STEREO_BLUETOOTH =0x05, /**< Audio path is stereo bluetooth */
1010 TAPI_SOUND_PATH_SPK_PHONE =0x06, /**< Audio path is speaker phone */
1011 TAPI_SOUND_PATH_HEADSET_3_5PI =0x07, /**< Audio path is headset_3_5PI */
1012 TAPI_SOUND_PATH_BT_NSEC_OFF =0x08, /**< Audio path Bluetooth NSEC is off */
1013 TAPI_SOUND_PATH_MIC1 =0x09, /**< Audio path Mic one */
1014 TAPI_SOUND_PATH_MIC2 =0x0A, /**< Audio path Bluetooth Mic two */
1015 TAPI_SOUND_PATH_HEADSET_HAC =0x0B, /**< Audio path is headset HAC */
1019 TelSoundPath_t path; /**< TBD */
1020 enum ExtraVolumeStatus {
1021 TAPI_SOUND_EX_VOLUME_OFF, /**< TBD */
1022 TAPI_SOUND_EX_VOLUME_ON, /**< TBD */
1023 } ex_volume; /**< TBD */
1024 } TelCallSoundPathInfo_t;
1027 TAPI_SOUND_MUTE_PATH_TX = 0x00, /**< Sound mute path transmit */
1028 TAPI_SOUND_MUTE_PATH_RX = 0x02, /**< Sound mute path receiver */
1029 TAPI_SOUND_MUTE_PATH_ALL= 0x04, /**< Sound mute path all */
1030 } TelSoundMutePath_t;
1033 TAPI_SOUND_MUTE_STATUS_OFF = 0x00, /**< Sound mute status off */
1034 TAPI_SOUND_MUTE_STATUS_ON = 0x01, /**< Sound mute status on */
1035 } TelSoundMuteStatus_t;
1038 TAPI_SOUND_NOISE_REDUCTION_OFF, /**< Sound noise reduction off */
1039 TAPI_SOUND_NOISE_REDUCTION_ON, /**< Sound noise reduction on */
1040 } TelSoundNoiseReduction_t;
1043 unsigned int id; /**< TBD */
1044 } TelCallAnswerCnf_t;
1047 TelCallEndType_t type; /**< TBD */
1048 unsigned int id; /**< TBD */
1052 unsigned int id; /**< TBD */
1056 unsigned int id; /**< TBD */
1057 } TelCallActiveCnf_t;
1060 unsigned int id; /**< TBD */
1064 unsigned int id; /**< TBD */
1068 unsigned int id; /**< TBD */
1069 } TelCallSplitCnf_t;
1072 unsigned int id; /**< TBD */
1073 } TelCallTransferCnf_t;
1076 unsigned int record_num; /**< TBD */
1077 TelCallVolumeInfo_t record[ 20 ]; /**< TBD */
1078 } TelCallGetVolumeInfoResp_t;
1081 TelSoundMutePath_t path; /**< TBD */
1082 TelSoundMuteStatus_t status; /**< TBD */
1083 } TelCallGetMuteStatusResp_t;
1086 TelCallPrivacyMode_t mode;
1087 } TelCallGetPrivacyModeResp_t;
1090 unsigned int id; /**< TBD */
1091 TelTapiEndCause_t cause; /**< End cause for the call indicates whether the call is released normally or due to some other cause */
1092 } TelCallStatusIdleNoti_t;
1095 unsigned int id; /**< TBD */
1096 } TelCallStatusActiveNoti_t;
1099 unsigned int id; /**< TBD */
1100 } TelCallStatusHeldNoti_t;
1103 unsigned int id; /**< TBD */
1104 } TelCallStatusDialingNoti_t;
1107 unsigned int id; /**< TBD */
1108 } TelCallStatusAlertNoti_t;
1111 unsigned int id; /**< TBD */
1112 } TelCallStatusIncomingNoti_t;
1115 unsigned int id; /**< TBD */
1116 } TelCallStatusWaitingNoti_t;
1119 unsigned int id; /**< TBD */
1120 } TelCallInfoWaitingNoti_t;
1123 unsigned int id; /**< TBD */
1124 } TelCallInfoForwardedNoti_t;
1128 } TelCallInfoForwardedCallNoti_t;
1131 unsigned int id; /**< TBD */
1132 } TelCallInfoBarredIncomingNoti_t;
1135 unsigned int id; /**< TBD */
1136 } TelCallInfoBarredOutgoingNoti_t;
1139 unsigned int id; /**< TBD */
1140 } TelCallInfoForwardConditionalNoti_t;
1143 unsigned int id; /**< TBD */
1144 } TelCallInfoForwardUnconditionalNoti_t;
1147 unsigned int id; /**< TBD */
1148 } TelCallInfoActiveNoti_t;
1151 unsigned int id; /**< TBD */
1152 } TelCallInfoHeldNoti_t;
1155 unsigned int id; /**< TBD */
1156 } TelCallInfoJoinedNoti_t;
1159 TelCallOtaspStatus_t otasp_status;
1160 } TelCallOtaspStatusNoti_t;
1163 TelCallOtapaStatus_t otapa_status;
1164 } TelCallOtapaStatusNoti_t;
1168 TelCallPrivacyMode_t privacy_mode; /**< Voice Privacy Mode */
1169 } TelCallVoicePrivacyNoti_t;
1173 TelCallRecordInfo_t info;
1174 } TelCallRecordInfoNoti_t;
1177 TelCallAlertSignalType_t signal_type;
1178 TelCallAlertPitchType_t pitch_type;
1180 TelCallToneSignal_t sig_tone_type;
1181 TelCallIsdnAlertSignal_t sig_isdn_alert_type;
1182 TelCallIs54bAlertSignal_t sig_is54b_alert_type;
1184 } TelCallSignalInfoNoti_t;
1187 TelSoundPath_t path; /**< TBD */
1188 } TelCallSoundPathNoti_t;
1191 TAPI_CALL_SOUND_RINGBACK_TONE_END, /**< TBD */
1192 TAPI_CALL_SOUND_RINGBACK_TONE_START, /**< TBD */
1193 } TelCallSoundRingbackToneNoti_t;
1196 TAPI_CALL_SOUND_WBAMR_STATUS_OFF, /**< TBD */
1197 TAPI_CALL_SOUND_WBAMR_STATUS_ON, /**< TBD */
1198 TAPI_CALL_SOUND_WBAMR_STATUS_OFF_16K, /**< TBD */
1199 TAPI_CALL_SOUND_WBAMR_STATUS_ON_8K, /**< TBD */
1200 } TelCallSoundWbamrNoti_t;
1203 TelSoundNoiseReduction_t status; /**< TBD */
1204 } TelCallSoundNoiseReductionNoti_t;
1207 TelCallPreferredVoiceSubs_t preferred_subs;
1208 } TelCallPreferredVoiceSubsNoti_t;
1214 #endif // _TEL_CALL_H_