📄 mfw_cm.h
字号:
{
Linear,
Circular
} T_MFW_CM_RI;
typedef enum /* SS notification result code */
{
MFW_CM_NOTIFY_UNKNOWN,
MFW_CM_HOLD, /* call has been put on hold */
MFW_CM_RETRIEVED /* call has been retrieved */
} T_MFW_CM_NOTIFY_CODES;
typedef enum /* connection element */
{
MFW_MPTY_NotPresent = -1,
MFW_NO_MTPY_MEMBER,
MFW_MTPY_MEMBER
} T_MFW_MTPY_MEMBER;
typedef UBYTE T_CM_CLI;
typedef struct
{
SHORT call_number;
UBYTE cause;
} T_MFW_CM_DISCONNECT;
/* glowing,2004-06-10, import from TCS2112 */
typedef struct
{
UBYTE result;
UBYTE cause;
} T_MFW_CM_DISCONNECT_ALL;
/* glowig,2004-06-10, end of import */
typedef struct
{
UBYTE rate; /* used baud rate */
UBYTE bearer_serv; /* used bearer service */
UBYTE conn_elem; /* used connect_element */
UBYTE stop_bits; /* used stop bits */
UBYTE data_bits; /* used data bits */
UBYTE parity; /* used parity */
UBYTE flow_control; /* used flow control */
} T_MFW_CM_BC_PARA;
#ifdef NO_ASCIIZ
typedef struct {
SHORT call_id; /* call identify */
UBYTE number[MFW_NUM_LEN]; /* call number */
UBYTE ton; /* type of number */
UBYTE type;
T_MFW_PHB_TEXT name; /* alpha identfier */
UBYTE subaddr[MFW_SUBADR_LEN]; /* subaddress */
} T_MFW_CM_MO_INFO; /* type definition for E_CM_COLP event */
#else
typedef struct {
SHORT call_id; /* call identify */
UBYTE number[MFW_NUM_LEN]; /* call number */
UBYTE ton; /* type of number */
UBYTE type;
UBYTE name[MFW_TAG_LEN]; /* alpha identfier */
UBYTE subaddr[MFW_SUBADR_LEN]; /* subaddress */
} T_MFW_CM_MO_INFO; /* type definition for E_CM_COLP event */
#endif
typedef struct {
UBYTE result; /* result of operation */
SHORT call_number; /* call index */
UBYTE number[MFW_NUM_LEN]; /* call number */
UBYTE ton; /* type of number */
T_MFW_CM_CALL_TYPE type; /* type of this call */
#ifdef NO_ASCIIZ
T_MFW_PHB_TEXT name; /* alpha identfier */
#else
UBYTE name[MFW_TAG_LEN]; /* alpha identfier */
#endif
UBYTE subaddr[MFW_SUBADR_LEN]; /* subaddress */
UBYTE ri; /* repeat indicator */
T_MFW_CM_BC_PARA bc1; /* bearer parameter 1 */
T_MFW_CM_BC_PARA bc2; /* bearer parameter 2 */
} T_MFW_CM_CW_INFO; /* type definition for E_CM_CW (indicator a new incomming call) event */
/*glowing,2004-06-10, import from TCS2112 */
/* Marcus: CCBS: 14/11/2002: Start */
/* Type definitions for E_CM_CCBS events */
typedef enum
{
CM_CCBS_NONE, /* Used to indicate no CCBS operation in progress */
CM_CCBS_DELETE_ALL, /* Response to cm_ccbs_delete_all */
CM_CCBS_DELETE, /* Response to cm_ccbs_delete */
CM_CCBS_LIST, /* Response to cm_ccbs_list */
CM_CCBS_ACCEPT_REGISTRATION, /* Response to cm_ccbs_accept_registration */
CM_CCBS_REJECT_REGISTRATION, /* Response to cm_ccbs_reject_registration */
CM_CCBS_ACCEPT_RECALL, /* Response to cm_ccbs_accept_recall */
CM_CCBS_REJECT_RECALL, /* Response to cm_ccbs_reject_recall */
CM_CCBS_ASYNC /* An asynchronous event not related to an operation */
} T_MFW_CM_CCBS_OP; /* Type definition for the operation associated E_CM_CCBS event */
typedef enum
{
CM_CCBS_INFO, /* rAT_PercentCCBS information */
CM_CCBS_OK, /* OK completion of a CCBS operation */
CM_CCBS_ERROR /* ERROR completion of a CCBS operation */
} T_MFW_CM_CCBS_TYPE; /* Type definition for the type of E_CM_CCBS event */
typedef struct
{
T_MFW_CM_CCBS_OP operation; /* CCBS operation in progress */
T_MFW_CM_CCBS_TYPE type; /* type of E_CM_CCBS event */
T_ACI_CCBS_IND indct; /* Type of CM_CCBS_INFO indication */
T_ACI_CCBS_STAT status; /* Status of CM_CCBS_INFO indication */
SHORT idx; /* Index to specific CCBS (1..5), else 0 */
UBYTE number[MFW_NUM_LEN]; /* call number */
UBYTE ton; /* type of number */
T_MFW_CM_CALL_TYPE call_type; /* type of this call */
UBYTE subaddr[MFW_SUBADR_LEN]; /* subaddress */
T_ACI_ALRT_PTRN alrtPtn; /* Alerting pattern */
} T_MFW_CM_CCBS_INFO; /* type definition for E_CM_CCBS event */
/* Marcus: CCBS: 14/11/2002: End */
/*glowing,2004-06-10, end of import */
typedef struct
{
SHORT call_number; /* number of call */
UBYTE command; /* requested command */
UBYTE result; /* result of operation */
} T_MFW_CM_COMMAND; /* type definition for E_CM_COMMAND (ss command) event */
// PATCH TB Add 10 to acm_puct & acm_puct avoid buffer override
typedef struct
{
UBYTE requested_type; /* requested type */
LONG actual_call_timer; /* time of actual call */
// LONG total_call_timer; /* time of all calls */
LONG ccm; /* current call meter */
UBYTE ccm_puct[MAX_LEN+10]; /* current call meter using PUCT */
LONG acm; /* accumulated call meter */
UBYTE acm_puct[MAX_LEN+10]; /* accumulated call meter using PUCT */
LONG acm_max; /* accumulated call meter maximum PUCT */
UBYTE cur[MAX_CURRENCY]; /* currency table */
ULONG eppu; /* elementary price per unit */
ULONG exp; /* decimal logarithm */
ULONG sexp; /* sign of decimal logarithm */
UBYTE ppu[MAX_LEN]; /* price per unit */
} T_MFW_CM_AOC_INFO; /* type definition for E_CM_AOC event. */
typedef struct
{
UBYTE requested_type;
T_MFW_AOC_CNF_RES result;
} T_MFW_CM_AOC_CNF; /* type definition for E_CM_AOC_CONF event */
typedef struct
{
UBYTE redial_mode; /* redial mode */
SHORT call_id; /* call identify */
UBYTE number[MFW_NUM_LEN]; /* called number */
UBYTE ton; /* type of number */
UBYTE type;
#ifdef NO_ASCIIZ
T_MFW_PHB_TEXT name; /* alpha identfier */
#else
UBYTE name[MFW_TAG_LEN]; /* alpha identfier */
#endif
UBYTE subaddr[MFW_SUBADR_LEN]; /* subaddress */
UBYTE left_attempts; /* redialing left attempts */
} T_MFW_CM_REDIAL; /* type definition for E_CM_REDIAL event. */
/* Call status information */
typedef struct
{
SHORT call_number;
UBYTE stat; /* T_MFW_CM_CALL_STAT */
UBYTE number[MFW_NUM_LEN]; /* called number */
UBYTE ton; /* type of number */
T_MFW_CM_CALL_TYPE type; /* type of call */
#ifdef NO_ASCIIZ
T_MFW_PHB_TEXT name; /* alpha identfier */
#else
UBYTE name[MFW_TAG_LEN]; /* alpha identfier */
#endif
T_MFW_MTPY_MEMBER mtpy;
} T_MFW_CM_STATUS;
/* Notify message */
typedef struct
{
SHORT call_number;
T_MFW_CM_NOTIFY_CODES notification;
} T_MFW_CM_NOTIFY;
/* call progress information */
typedef struct
{
SHORT call_number;
T_MFW_CPI_TYPE type;
T_MFW_CPI_IBT inband;
T_MFW_CPI_TCH tch;
} T_MFW_CM_CPI;
/* glowing,2004-06-10, import from TCS2112 */
/* SPR#1352 - SH - TTY information */
/* This structure passes TTY status to the MMI */
typedef struct
{
UBYTE neg; /* Status of TTY request - possible values below*/
}
T_MFW_CM_CTYI;
/* Possible values from CTYI callback - indicates TTY status*/
enum
{
CTYI_NONE,
CTYI_REQUEST,
CTYI_REJECT,
CTYI_GRANT
};
/* end SH */
/*glowing,2004-06-10, end of import */
/*
* CM Parameter
*/
typedef union
{
T_MFW_CM_DISCONNECT disconnect;
T_MFW_CM_DISCONNECT_ALL disconnect_all; //glowing,2004-06-10, import from TCS2112
T_MFW_CM_CW_INFO cw_info;
T_MFW_CM_COMMAND command;
T_MFW_CM_AOC_INFO aoc_info;
T_MFW_CM_REDIAL rdl;
T_MFW_CM_NOTIFY notify;
T_MFW_CM_CPI cm_cpi;
SHORT call_id;
T_MFW_CM_AOC_CNF aoc_cnf;
UBYTE dtmf_tone;
// PATCH - add new parameter
T_MFW_CM_MO_INFO mo_data;
/* glowing, 2004-06-10, import from TCS2112 */
T_MFW_CM_CCBS_INFO ccbs; // Marcus: CCBS: 14/11/2002
// END PATCH
/*MC, SPR 1392, added call deflection status param*/
BOOL call_deflect_status;
/* SPR#1352 - SH - Add parameter for TTY */
T_MFW_CM_CTYI ctyi;
/* end SH*/
/* glowing,2004-06-10, end of import */
} T_MFW_CM_PARA;
EXTERN void cm_init (void);
EXTERN T_MFW_HND cm_create (T_MFW_HND hWin,
T_MFW_EVENT event,
T_MFW_CB cbfunc);
EXTERN T_MFW_RES cm_delete (T_MFW_HND h);
EXTERN T_MFW cm_check_emergency (UBYTE *number);
EXTERN T_MFW cm_mo_call (UBYTE *number,
T_MFW_CM_CALL_TYPE type);
EXTERN void cm_mt_reject (void);
EXTERN void cm_mt_accept (void);
EXTERN void cm_end_all (void); //glowing,2004-06-10,import from TCS2112
EXTERN T_MFW cm_disconnect (SHORT call_number);
EXTERN T_MFW cm_command (SHORT call_number,
UBYTE command,
UBYTE crss_string);
EXTERN T_MFW cm_get_aoc_value (UBYTE request_type,
T_MFW_CM_AOC_INFO *aoc_info);
EXTERN T_MFW cm_set_aoc_value (UBYTE request_type,
T_MFW_CM_AOC_INFO *aoc_info,
UBYTE *pwd);
EXTERN void cm_set_bc_para (T_MFW_CM_BC_PARA * bc, UBYTE ti);
EXTERN void cm_set_redial (UBYTE redial_mode);
EXTERN void cm_redial (void);
EXTERN void cm_autoredial_start (void);
EXTERN void cm_redial_abort (void);
EXTERN UBYTE cm_redial_get_count (void);
EXTERN int cm_status (SHORT call_number,
T_MFW_CM_STATUS *status,
UBYTE num);
EXTERN void cm_exit (void);
EXTERN T_CM_CLI cm_mo_prefix (T_CM_CLI prefix);
EXTERN T_MFW cm_get_redial_mode (void);
EXTERN T_MFW cm_command_abort (UBYTE command);
/* glowing,2004-06-10, import from TCS2112 */
/*MC, SPR 1392*/
T_MFW cm_deflect_incoming_call(char* number);
void cm_ok_CTFR(void);
void cm_error_CTFR(void);
/* Marcus: CCBS: 13/11/2002: Start */
EXTERN T_MFW cm_ccbs_delete_all(void);
EXTERN T_MFW cm_ccbs_delete(SHORT idx);
EXTERN T_MFW cm_ccbs_list(void);
EXTERN T_MFW cm_ccbs_accept_registration(void);
EXTERN T_MFW cm_ccbs_reject_registration(void);
EXTERN T_MFW cm_ccbs_accept_recall(UBYTE *number, T_MFW_CM_CALL_TYPE type);
EXTERN T_MFW cm_ccbs_reject_recall(void);
EXTERN void cm_ccbs_ok(void);
EXTERN void cm_ccbs_error(void);
/* Marcus: CCBS: 13/11/2002: End */
/* SPR#1985 - SH - TTY */
void cm_tty_enable(UBYTE enable);
void cm_tty_query(void);
/* glowing,2004-06-10, end of import */
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -