⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ccdef.h

📁 phs 源代码 小灵通协议源代码 phs source code
💻 H
字号:
#ifndef __CC_DEFINE_H_
#define __CC_DEFINE_H_


#define		CALL_NO_L			0x01
#define		MAX_CRV				127
#define		CC_TBL_MAX			2
#define		CC_L2_TBL_MAX			16
#define		CC_L4_TBL_MAX			16
#define		CC_FMT_SZ			4

//event source
#define		CALL_L2				0
#define		CALL_MNG			1

/* CC state */
#define		CC_STS_CNT			20
#define		ST_NULL				0
#define		ST_CALINT			1
#define		ST_OVRSND			2
#define		ST_OUTCAL			3
#define		ST_CALDLV			4
#define		ST_CALPRS			6
#define		ST_CALRCV			7
#define		ST_CONREQ			8
#define		ST_INCCAL			9
#define		ST_ACTV  			10
#define		ST_DSCREQ			11
#define		ST_DSCIND			12
#define		ST_RELREQ			19

#define		STATE_SAME			0xff


/* cc message type*/
/* used in call establishment phase*/
#define		L2CC_ALERT			0x01		/* call alert message */
#define		L2CC_CALLPROC			0x02            /* call proceeding message */
#define     	L2CC_PROG			0x03            /* call progress message */
#define		L2CC_SETUP			0x05            /* call setup message */
#define		L2CC_CONN			0x07            /* call connect message */
#define		L2CC_SETUPACK			0x0D            /* call setup acknowledge message */
#define     	L2CC_CONNACK			0x0F            /* call connect acknowledge message */
/* used in communication phase */
#define		L2_USER				0x20		/* call user information message*/
/* used call clearing phase */
#define		L2CC_DISC			0x45            /* call disconnect message */
#define		L2CC_REL			0x4D            /* call release message */
#define		L2CC_RELCOMP			0x5A            /* call release complete message*/
/* other message */
#define		L2CC_FAC			0x62   		/* call faclity message */
#define		L2_OPTMIN			0x64            /* call minimum option message */
#define		L2_OPTMAX			0x6C            /* call maxinum option message*/
#define		L2CC_NOTIFY			0x6E            /* call notify message */
#define		L2CC_STATENQ			0x75            /* call status enquiry message */
#define		L2CC_INFO			0x7B            /* call information message */
#define     	L2CC_STAT			0x7D            /* call status message */


//send message to L2
#define		CCL2_ALERT				L2CC_ALERT     //message from L2 send to CC
#define		CCL2_PROCEED				L2CC_CALLPROC
#define		CCL2_PROGRESS				L2CC_PROG
#define		CCL2_SETUP				L2CC_SETUP
#define		CCL2_CONNECT				L2CC_CONN
#define		CCL2_SETUP_ACK				L2CC_SETUPACK
#define		CCL2_CONNECT_ACK			L2CC_CONNACK

#define		CCL2_DISCONNECT				L2CC_DISC
#define		CCL2_RELEASE				L2CC_REL
#define		CCL2_RELEASE_COMPLETE			L2CC_RELCOMP

#define		CCL2_FACILITY				L2CC_FAC
#define		CCL2_STATE_ENQUIRY		L2CC_STATENQ
#define		CCL2_INFO				L2CC_INFO
#define		CCL2_STATE				L2CC_STAT

//single information element
#define		SINGLE_TBL_MAX			4
#define		LOCK_SHIFT  			0x90
#define		MORE_DATA			0xA0
#define		SNED_COMPLETE 			0xA1
#define		REPEAT_IND  			0xD0

/* code0 information element */
#define		CODESET0_TBL_MAX		16
#define		BEARER_CAPABILITY		0x04
#define		CAUSE				0x08
#define		CALL_STATE			0x14
#define		FACILITY			0x1C
#define		PROGRESS_IND			0x1E
#define		NOTIFICATION_IND		0x27
#define		DISPLAY				0x28
#define		KEYPAD_FACILITY			0x2C
#define		SINGAL				0x34
#define		CALLING_PARTY_NUMBER		0x6C
#define		CALLING_PARTY_SUBADDRESS 	0x6D
#define		CALLED_PARTY_NUMBER		0x70
#define		CALLED_PARTY_SUBADDRESS		0x71
#define		REDIRECTING_NUMBER		0x74
#define		LOW_LAYER_CAPIBILITY		0x7C
#define		HIGH_LAYER_CAPBILITY		0x7D
#define		USER_USER			0x7E
#define		DDI_SAB				0x7F	//this is a new information element(RCR_STD 28 have not)

/*   code5 information element    */
#define		CODESET5_TBL_MAX			4
#define		CHARGE_ADVICE				0x01
#define		PS_IDENTITY					0x41
#define		MAN_CALL_ORIGINATION_IND	0x42
#define		COMMUNICATION_TYPE			0x43

// codeset id
#define		SHIFT0				0x00
#define		SHIFT5				0x05
#define		SHIFT6				0x06
#define		SHIFT7				0x07

//cc version
#define		V1				0x01
#define		V2				0x02
#define		V3				0x04
#define		V23				(V2 | V3)
#define		V123			(V1 | V2 | V3)


//apply object
#define		PRIVATE			0x01
#define		PUBLIC			0x02
#define		PUB_PRI			(PRIVATE | PUBLIC)

//link direction
#define		UP			0x01
#define		DN			0x02
#define		UD			(UP | DN)

//information element classification
#define		OPTION				0
#define		MANDA				1
#define		RECALL_MANDA		2


//Single information elemetn have 2 types, type 1 information element shows the information element
//identifier at bit 5,6,7. When bit 7.6.5 is "010",they assure type 2 information element.
#define		TYP1			0xF0
#define		TYP2			0xFF

#define		BUN_DEF_LEN		12

//message include information element count
#define		SETUP_ELEMENT_CNT				22
#define		ALERT_ELEMENT_CNT               6
#define		PROGRESS_ELEMENT_CNT			5
#define		PROCEED_ELEMENT_CNT				3
#define		CONNECT_ELEMENT_CNT				8
#define		CONNECT_ACK_ELEMENT_CNT			2
#define		SETUP_ACK_ELEMENT_CNT			4
#define		DISCONNECT_ELEMENT_CNT			9
#define		RELEASE_ELEMENT_CNT				6
#define		RELEASE_COMP_ELEMENT_CNT		6
#define		FACILITY_ELEMENT_CNT			2
#define		STATE_ENQUIRY_ELEMENT_CNT		1
#define		INFORMATION_ELEMENT_CNT			7
#define		NOTIFY_ELEMENT_CNT				2
#define		STATE_ELEMENT_CNT				3
#define		USER_ELEMENT_CNT				1


#define     TC303P			(U2)0xc3
#define     TC305P			(U2)0xc5
#define     TC308P			(U2)0xc8
#define     TC313P			(U2)0xcd


#define		TC303ON			0x01
#define		TC305ON			0x02
#define		TC308ON			0x04
#define		TC313ON			0x08

#define		TCMONION		0x10
#ifndef NULL
#define		NULL			((void *)0)
#endif


#ifdef _ON_SANYO_
extern  unsigned char	Sys_work[];
#define	SYS_WORK	((CC_SYSWRK *)Sys_work)
#else
#define	SYS_WORK	((CC_SYSWRK *)&cc_syswork)
#endif
#define	IN_DLDEVT	((CC_DLDEVT *)SYS_WORK->in_evt)
#define	OUT_DLDEVT	((CC_DLDEVT *)SYS_WORK->out_evt)
#define	IN_PRIEVT	((CC_PRIEVT *)SYS_WORK->in_evt)
#define	OUT_PRIEVT	((CC_PRIEVT *)SYS_WORK->out_evt)
#define	IN_MSGDAT	((CC_MSGDAT *)IN_DLDEVT->msg_adr)
#define	OUT_MSGDAT	((CC_MSGDAT *)OUT_DLDEVT->msg_adr)

#endif /* __CC_DEFINE_H_ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -