comparison src/g23m-aci/aci/cmh_cc.h @ 162:53929b40109c

src/g23m-aci: initial import from TCS3.2/LoCosto
author Mychaela Falconia <falcon@freecalypso.org>
date Tue, 11 Oct 2016 02:02:43 +0000
parents
children
comparison
equal deleted inserted replaced
161:4557e2a9c18e 162:53929b40109c
1 /*
2 +-----------------------------------------------------------------------------
3 | Project : GSM-PS (6147)
4 | Modul : CMH
5 +-----------------------------------------------------------------------------
6 | Copyright 2002 Texas Instruments Berlin, AG
7 | All rights reserved.
8 |
9 | This file is confidential and a trade secret of Texas
10 | Instruments Berlin, AG
11 | The receipt of or possession of this file does not convey
12 | any rights to reproduce or disclose its contents or to
13 | manufacture, use, or sell anything it may describe, in
14 | whole, or in part, without the specific written consent of
15 | Texas Instruments Berlin, AG.
16 +-----------------------------------------------------------------------------
17 | Purpose : Definitions for the command handler of Call Control
18 +-----------------------------------------------------------------------------
19 */
20
21 #ifndef CMH_CC_H
22 #define CMH_CC_H
23
24 /* #include "cmh.h" */
25
26
27 /*==== CONSTANTS ==================================================*/
28
29 typedef enum
30 {
31 NO_CHLD_ADD_INFO = 0, /* no additional CHLD info */
32 CHLD_ADD_INFO_RTV_CAL, /* additional CHLD info, retrieve call */
33 CHLD_ADD_INFO_ACC_CAL, /* additional CHLD info, accept call */
34 CHLD_ADD_INFO_DIAL_CAL /* additional CHLD info, dial call */
35 } T_CHLD_ADD_INFO;
36
37 typedef enum
38 {
39 NO_VLD_CC_SIM_QLF = 0, /* not a valid SIM CC qualifier */
40 CC_SIM_YES, /* yes, perform SIM CC check */
41 CC_SIM_NO /* no, do not perform SIM CC check */
42 } T_CC_SIM_QLF;
43
44 typedef enum
45 {
46 TTY_STOP, /* stop TTY Service */
47 TTY_PAUSE, /* pause TTY Service (call held/modified) */
48 TTY_TCH, /* TCH assigned */
49 TTY_START /* start TTY Service, if possible */
50 } T_CC_TTY_ACTION;
51
52 typedef enum
53 {
54 NO_VLD_CC_CALL_TYPE = -1,
55 VOICE_CALL = 0
56 #ifdef FAX_AND_DATA
57 ,
58 TRANS_CALL,
59 NON_TRANS_CALL,
60 FAX_CALL,
61 UNSUP_DATA_CALL
62 #endif /* FAX_AND_DATA */
63 #ifdef CO_UDP_IP
64 ,
65 UDPIP_CALL
66 #endif /* CO_UDP_IP */
67 #ifdef FF_PPP
68 ,
69 PPP_CALL
70 #endif /* FF_PPP */
71 #ifdef FF_GPF_TCPIP
72 ,
73 TCPIP_CALL
74 #endif /* FF_GPF_TCPIP */
75 }
76 T_CC_CALL_TYPE;
77
78 /*==== TYPES ======================================================*/
79
80
81 /*==== PROTOTYPES =================================================*/
82
83 /*
84 * PSA notification events
85 */
86 EXTERN void cmhCC_CallConnected ( SHORT cId );
87 EXTERN void cmhCC_CallDisconnected( SHORT cId );
88 EXTERN void cmhCC_CallReleased ( SHORT cId );
89 EXTERN void cmhCC_CPIReleaseMsg ( SHORT cId );
90 EXTERN void cmhCC_CPIrejectMsg ( SHORT cId );
91 EXTERN void cmhCC_CallProceeding ( SHORT cId );
92 EXTERN void cmhCC_CallAlerted ( SHORT cId );
93 EXTERN void cmhCC_CallModified ( SHORT cId );
94 EXTERN void cmhCC_IncomingCall ( SHORT cId );
95 /*EXTERN void cmhCC_DisconnectCall ( SHORT cId );*/ // HM 11-May-2005: Dead code
96 EXTERN void cmhCC_Synchronized ( SHORT cId );
97 EXTERN void cmhCC_CallRetrieved ( SHORT cId );
98 EXTERN void cmhCC_CallHeld ( SHORT cId );
99 EXTERN void cmhCC_RA_Activated ( SHORT cId );
100 EXTERN void cmhCC_RA_Deactivated ( SHORT cId );
101 EXTERN void cmhCC_RA_Modified ( SHORT cId );
102 EXTERN void cmhCC_L2R_Failed ( void );
103 EXTERN void cmhCC_T30_Activated ( void );
104 EXTERN void cmhCC_T30_Deactivated ( void );
105 EXTERN void cmhCC_T30_Failed ( void );
106 EXTERN void cmhCC_T30_RmtCaps ( void );
107 EXTERN void cmhCC_SSTransFail ( SHORT cId );
108
109
110 EXTERN void cmhCC_get_active_als_mode( T_ACI_CMD_SRC srcId, T_ACI_ALS_MOD *mode );
111 EXTERN void cmhCC_init_cldPty ( T_CLPTY_PRM *cldPty );
112 EXTERN BOOL cmhCC_SendDTMFdig ( T_ACI_AT_CMD cmd, SHORT cId, CHAR digit, UBYTE mode);
113 EXTERN SHORT cmhCC_find_call_for_DTMF( void );
114 EXTERN BOOL is_call_ok_for_dtmf ( SHORT cId );
115 EXTERN T_ACI_RETURN cmhCC_chkShortString ( T_ACI_CMD_SRC srcId,
116 SHORT cId,
117 T_CLPTY_PRM *cldPty);
118
119 EXTERN void cmhCC_PrepareCmdEnd (SHORT cId, UBYTE *cmdBuf, UBYTE *srcBuf);
120
121 EXTERN UBYTE cmhCC_set_speech_serv ( T_CC_CMD_PRM *pCCCmdPrm);
122
123 #ifdef FAX_AND_DATA
124 EXTERN UBYTE cmhCC_SelCE ( T_ACI_CBST_CE ce );
125 EXTERN UBYTE cmhCC_SelServ ( T_ACI_CBST_NAM name );
126 EXTERN UBYTE cmhCC_SelRate ( T_ACI_BS_SPEED speed );
127 EXTERN UBYTE cmhCC_SelMT ( T_ACI_BS_SPEED speed );
128 EXTERN UBYTE cmhCC_SelTransferCap ( T_ACI_BS_SPEED speed );
129 EXTERN UBYTE cmhCC_SelRateAdaption ( T_ACI_BS_SPEED speed);
130 EXTERN UBYTE cmhCC_SelStopBit ( T_ACI_CMD_SRC srcId );
131 EXTERN UBYTE cmhCC_SelDataBit ( T_ACI_CMD_SRC srcId );
132 EXTERN UBYTE cmhCC_SelParity ( T_ACI_CMD_SRC srcId );
133 #endif /* FAX_AND_DATA */
134 EXTERN SHORT cmhCC_GetCallType_from_bearer( void * bearCap );
135 #ifdef FAX_AND_DATA
136 EXTERN SHORT cmhCC_GetSrvType ( void * bearCap );
137 EXTERN SHORT cmhCC_GetDataRate ( void * bearCap );
138 EXTERN SHORT cmhCC_GetParity ( void * bearCap );
139 EXTERN SHORT cmhCC_GetFormat ( void * bearCap );
140 #endif /* FAX_AND_DATA */
141 EXTERN T_ACI_CLASS cmhCC_GetCallClass ( SHORT cId );
142 EXTERN T_ACI_TOA* cmhCC_ctbGetCldNumTyp ( SHORT cId,
143 T_ACI_TOA * pToaBuf );
144 EXTERN T_ACI_TOS* cmhCC_ctbGetCldSubTyp ( SHORT cId,
145 T_ACI_TOS * pTosBuf );
146 EXTERN T_ACI_TOA* cmhCC_ctbGetClrNumTyp ( SHORT cId,
147 T_ACI_TOA * pToaBuf );
148 EXTERN T_ACI_TOS* cmhCC_ctbGetClrSubTyp ( SHORT cId,
149 T_ACI_TOS * pTosBuf );
150 EXTERN T_ACI_TOA* cmhCC_ctbGetRdrNumTyp ( SHORT cId,
151 T_ACI_TOA * pToaBuf );
152 EXTERN T_ACI_TOS* cmhCC_ctbGetRdrSubTyp ( SHORT cId,
153 T_ACI_TOS * pTosBuf );
154 EXTERN void cmhCC_SndDiscRsn ( SHORT cId );
155 EXTERN BOOL cmhCC_ChckInCallMdfy ( SHORT cId, UBYTE cmd );
156 EXTERN void cmhCC_flagCall ( SHORT cId,
157 USHORT * flags );
158 EXTERN BOOL cmhCC_tstAndUnflagCall( SHORT cId,
159 USHORT * flags );
160 EXTERN void cmhCC_ClearCall ( SHORT cId,
161 USHORT cs,
162 T_ACI_CMD_SRC srcId,
163 UBYTE cmd,
164 SHORT *waitId);
165 EXTERN void cmhCC_NewCall ( SHORT cId,
166 T_ACI_CMD_SRC srcId,
167 T_ACI_AT_CMD cmd );
168 EXTERN void cmhCC_RetrieveCall ( SHORT cId,
169 T_ACI_CMD_SRC srcId );
170 EXTERN void cmhCC_AcceptCall ( SHORT cId,
171 T_ACI_CMD_SRC srcId,
172 T_ACI_AT_CMD cmd );
173 EXTERN void cmhCC_HoldCall ( SHORT cId,
174 T_ACI_CMD_SRC srcId,
175 T_ACI_AT_CMD cmd );
176 EXTERN BOOL cmhCC_atdsendok ( SHORT cId );
177
178 EXTERN void send_CSSX_notification(SHORT ctbIdx,
179 T_ACI_CSSX_CODE cssx_code,
180 SHORT index,
181 CHAR *number,
182 T_ACI_TOA *toa,
183 CHAR *subaddr,
184 T_ACI_TOS *tos);
185
186 EXTERN void cmhrat_ccbs ( UBYTE srcId,
187 T_ACI_CCBS_IND ccbs_ind,
188 T_ACI_CCBS_STAT status,
189 T_ACI_CCBS_SET *setting );
190 EXTERN T_CC_CALL_TYPE cmhCC_getcalltype ( SHORT cId );
191 EXTERN void cmhCC_NotifySS ( SHORT cId,
192 T_NOTIFY_SS_INV *ntfySS );
193 EXTERN void cmhCC_CheckSS ( SHORT cId );
194 EXTERN void cmhCC_MPTYBuild ( SHORT cId,
195 T_BUILD_MPTY_RES *bldMPTY );
196 EXTERN void cmhCC_MPTYSplit ( SHORT cId,
197 T_SPLIT_MPTY_RES *splMPTY );
198 EXTERN void cmhCC_MPTYHeld ( SHORT cId,
199 T_HOLD_MPTY_RES *hldMPTY );
200 EXTERN void cmhCC_MPTYRetrieved ( SHORT cId,
201 T_RETRIEVE_MPTY_RES *rtvMPTY );
202 EXTERN void cmhCC_MPTYTimeout ( void );
203 EXTERN void cmhCC_ECTTimeout ( void );
204 EXTERN void cmhCC_CCBSRegistered ( SHORT cId,
205 T_ACC_REGISTER_CC_ENTRY_RES *CCBSreg );
206 EXTERN void cmhCC_CDRegistered ( SHORT cId );
207 EXTERN T_ACI_RETURN cmhCC_chkKeySeq ( T_ACI_CMD_SRC srcId,
208 T_CLPTY_PRM *cldPty,
209 T_ACI_D_TOC *callType,
210 T_ACI_D_CLIR_OVRD *CLIRovrd,
211 T_CC_SIM_QLF ccSIMQlf );
212 EXTERN T_ACI_RETURN cmhCC_Dial ( T_ACI_CMD_SRC srcId,
213 T_CLPTY_PRM * cldPty,
214 T_ACI_D_CLIR_OVRD clirOvrd,
215 T_ACI_D_CUG_CTRL cugCtrl,
216 T_ACI_D_TOC callType );
217 EXTERN T_ACI_RETURN cmhCC_fillSetupPrm ( SHORT cId,
218 T_ACI_CMD_SRC srcId,
219 T_CLPTY_PRM *cldPty,
220 T_MNCC_bcpara *bc,
221 UBYTE prio,
222 T_ACI_D_CLIR_OVRD clirOvrd,
223 T_ACI_D_CUG_CTRL cugCtrl,
224 T_ACI_D_TOC callType );
225 EXTERN void cmhCC_chkDTMFDig ( CHAR *num,
226 SHORT cId,
227 USHORT length,
228 BOOL within_dial_string );
229 EXTERN void cmhCC_DTMFsent ( SHORT cId );
230 EXTERN void cmhCC_DTMFstopped ( SHORT cId );
231 EXTERN BOOL is_digit_dtmf_separator(CHAR digit);
232 #ifdef FF_TTY
233 EXTERN T_ACI_CTTY_TRX cmhCC_getTTYtrx_state (int ttyTrxState);
234 EXTERN void cmhCC_notifyTTY ( T_ACI_CTTY_NEG neg,
235 T_ACI_CTTY_TRX trx );
236 EXTERN void cmhCC_TTY_Control ( SHORT cId, UBYTE action );
237 #else
238 #define cmhCC_TTY_Control(_x_,_y_)
239 #endif
240
241 EXTERN void cmhCC_ChngWaitingToIncoming ( void );
242 EXTERN void cmhCC_checkALS_Support ( );
243 EXTERN void cmhCC_checkALS_Support_cb ( SHORT aId );
244 EXTERN void cmhCC_checkALS_Support_2 ( );
245 EXTERN void cmhCC_checkALS_Support_cb_2 ( SHORT aId );
246 GLOBAL void cmhCC_checkALS_Support_exec ( UBYTE flag );
247
248 EXTERN T_ACI_RETURN cmhCC_sendFie( T_ACI_FAC_DIR tDirection,
249 SHORT cId,
250 T_MNCC_fac_inf *fie );
251 #if defined(_TARGET_)
252 EXTERN T_ACI_RETURN cmhCC_rd_mode_FFS(T_ACI_CC_REDIAL_MODE rdl_mode,
253 T_ACI_CC_RDL_FFS ffs_mode);
254 #endif /* _TARGET_ */
255 EXTERN void cmhCC_redialTimeout ( void );
256 EXTERN void cmhCC_satTimeout (void );
257 EXTERN void cmhCC_redialCheck(SHORT cId);
258 EXTERN T_ACI_RETURN cmhCC_redialChkBlackl(SHORT cId);
259 EXTERN void cmhCC_CheckRedialTimer( BOOL sim_toolkit_enable );
260 /*==== EXPORT =====================================================*/
261
262 #ifdef CMH_CCF_C
263
264 GLOBAL T_CHLD_ADD_INFO CHLDaddInfo;
265 GLOBAL T_ACI_CC_REDIAL_PAR rdlPrm;
266 #else
267
268 EXTERN T_CHLD_ADD_INFO CHLDaddInfo;
269 EXTERN T_ACI_CC_REDIAL_PAR rdlPrm;
270 #endif /* CMH_CCF_C */
271
272
273 #endif /* CMH_CC_H */
274
275 /*==== EOF =======================================================*/