/*	MAP const define head file			*/
/*	written by Liu Zhiguo 2002-01-09	*/
/*	Version 1.0							*/
/*	--------------------------------	*/
#ifndef _MAP_CONST
#define _MAP_CONST

#define MAX_TCAPSEND_LEN		(TCAP_PARAM_LEN-20)
#define MAX_TCAPSEND_LEN_1		(TCAP_PARAM_LEN_1-20)
#define HLR_SSN					6
#define VLR_SSN					7
#define MSC_SSN					8
#define EIR_SSN					9
#define AUC_SSN					10
#define SMSC_SSN				11
#define GMLC_SSN				0x91
#define SCF_SSN					0x93
#define SIWF_SSN				0x94
#define SGSN_SSN				0x95
#define GGSN_SSN				0x96
#define SCF_SSN_USSD			0x99
#define OPPS_SSN				33
/*	timer values definition, according GSM 09.02 14.1.2	*/
#define SmallTimer				5
#define MediumTimer				20
#define MLongTimer				60
#define LongTimer				108000

/*	Address string coding, according GSM 09.02 14.7.8	*/
/*	extension indicator	*/
#define ADD_NOEXT				0x80	// no extension
/*	nature of address indicator	*/
#define ADD_NAT_INTER			0x10	// international number
#define ADD_NAT_NATSIG			0x20	// national significant number
#define ADD_NAT_NETSPE			0x30	// network specific number
#define ADD_NAT_SUB				0x40	// subscriber number
#define ADD_NAT_ABBR			0x60	// abbreviated number
/*	numbering plan indicator	*/
#define ADD_PLAN_ISDN			0x01	// ISDN/Teliphony numbering plan (CCITT E.164)
#define ADD_PLAN_DATA			0x03	// data numbering plan (CCITT X.121)
#define ADD_PLAN_TELEX			0x04	// telex numbering plan (CCITT F.69)
#define ADD_PLAN_LANDM			0x06	// land mobile numbering plan (CCITT E.212)
#define ADD_PLAN_NATIONAL		0x08	// national numbering plan
#define ADD_PLAN_PRIV			0x09	//private numbering plan

/*	define the all kinds of parameter length	*/
#define SSDATA_NUM				16
#define SIGNALINFO_LEN			200
#define ADDRESS_LEN				20
#define ASCI_LEN				8	// ASCI call reference length
#define ISDN_LEN				9
#define ISDNSUB_LEN				21	// ISDN subaddressing
#define IMSI_LEN				8
#define TMSI_LEN				4
#define IMEI_LEN				8
#define LMSI_LEN				4
#define HLRID_NUM				50
#define NAEA_LEN				3
#define GCID_LEN				7	// global cell id
#define LAI_LEN					5
#define SMEA_LEN				12	// SM-RP-SMEA length
#define BSG_LEN					13	// basic service group length
#define CCBS_LEN				5	// CCBS requests number
#define USSD_LEN				160	// USSD string length
#define SS_LEN					30
#define PASSWD_LEN				4	// password length
#define USSD_LEN				160	// USSD string length
#define EVENT_LEN				2
//#define FWD_NUM				5	// forwarding number
#define CALLREF_NUM				8	// call reference number
#define TDPDATA_NUM				10	// camel TDP data number
#define MAX_DSTNUM				10	// camel destination number length
#define DSTNUM_LEN				3	// camel destination number-lengths length
#define ISDN_DIGIT				15	// ISDN address digits
#define BSCRIT_LEN				5	// camel basic service criteria length
#define LOCATION_NUM			10	// location number
#define KI_LEN					16
#define RAND_LEN				16
#define SRES_LEN				4
#define KC_LEN					8
#define AUTHLIST_LEN			5	// authenticate list length
#define GSN_LEN					17
#define PDP_LEN					17	// PDP address length
#define APN_LEN					63	// APN length
#define PDPCONTEXT_LEN			50	// PDP context length
#define EXTBSG_LEN				32	// extent basic service group
#define BSLIST_LEN				50	// bearer service list length
#define TSLIST_LEN				20	// tele service list length
#define CUGLOCK_LEN				4	// CUG interlock length
#define CUG_LEN					10
#define ZONECODE_LEN			10
#define BSL_LEN					70	// basic service list
#define CAMELTDP_LEN			10
#define VBS_LEN					50
#define VGCS_LEN				50
#define CAMELSS_LEN				10	// camel SS event length

#define CALLBAR_LEN				8
#define EMLPP_LEN				20
#define CKSN_LEN				16

#define MAX_FWDNUM				5	// MAX forwarding number
#define HLRID_LEN				2
/*	++++++++++++++++++	*/
/*	teliservice codes	*/
/*	++++++++++++++++++	*/
#define TS_All				0x00	// all teleservice

#define TS_AllSTS			0x10	// all speech transmission services
#define TS_PHONY			0x11	// telephony
#define TS_EMERCALL			0x12	// emergency calls

#define TS_AllSMS			0x20	// all short message services
#define TS_SMMTPP			0x21	// short message MT-PP
#define TS_SMMOPP			0x22	// short message MO-PP

#define TS_AllFTS			0x60	// all facsimile transmission services
#define TS_FG3AAS			0x61	// facsimile group3 and alter speech
#define TS_AFG3				0x62	// automatic facsimile group3
#define TS_FG4				0x63	// facsimile group4

#define TS_AllData			0x70	// all data teleservices
#define TS_AllEXSMS			0x80	// all teleservices expect SMS

#define TS_AllVGCS			0x90	// all voice group call services
#define TS_VGC				0x91	// voice group call
#define TS_VBSC				0x92	// voice broadcase call

#define TS_AllPLMN			0xd0	// all PLMN specific TS
#define TS_PLMN1			0xd1
#define TS_PLMN2			0xd2
#define TS_PLMN3			0xd3
#define TS_PLMN4			0xd4
#define TS_PLMN5			0xd5
#define TS_PLMN6			0xd6
#define TS_PLMN7			0xd7
#define TS_PLMN8			0xd8
#define TS_PLMN9			0xd9
#define TS_PLMNa			0xda
#define TS_PLMNb			0xdb
#define TS_PLMNc			0xdc
#define TS_PLMNd			0xdd
#define TS_PLMNe			0xde
#define TS_PLMNf			0xdf

/*	++++++++++++++++++++	*/
/*	Bearer service codes	*/
/*	++++++++++++++++++++	*/
#define BS_All				0x00	// all bearer service

#define BS_AllDataCDA		0x10	// all data CDA services
#define BS_CDA300			0x11	// data CDA-300 bps
#define BS_CDA1200			0x12	// data CDA-1200 bps
#define BS_CDA7500			0x13	// data CDA-1200-7500 bps
#define BS_CDA2400			0x14	// data CDA-2400 bps
#define BS_CDA4800			0x15	// data CDA-4800 bps
#define BS_CDA9600			0x16	// data CDA-9600 bps
#define BS_CDAGNRL			0x17	// general data CDA

#define BS_AllDataCDS		0x18	// all data CDS services
#define BS_CDS1200			0x1a	// data CDS-1200 bps
#define BS_CDS2400			0x1c	// data CDS-2400 bps
#define BS_CDS4800			0x1d	// data CDS-4800 bps
#define BS_CDS9600			0x1e	// data CDS-9600 bps
#define BS_CDSGNRL			0x1f	// general data CDS

#define BS_AllPACA			0x20	// all pad access CA services
#define BS_PACA300			0x21	// pad access CA-300 bps
#define BS_PACA1200			0x22	// pad access CA-1200 bps
#define BS_PACA7500			0x23	// pad access CA-1200-7500 bps
#define BS_PACA2400			0x24	// pad access CA-2400 bps
#define BS_PACA4800			0x25	// pad access CA-4800 bps
#define BS_PACA9600			0x26	// pad access CA-9600 bps
#define BS_PACAGNRL			0x27	// general pad access CA

#define BS_AllDPDS			0x28	// all data PDS services
#define BS_DPDS2400			0x2c	// data PDS-2400 bps
#define BS_DPDS4800			0x2d	// data PDS-4800 bps
#define BS_DPDS9600			0x2e	// data PDS-9600 bps
#define BS_DPDSGNRL			0x2f	// general data PDS

#define BS_AllASDCDA		0x30	// all alternate speech data CDA
#define BS_AllASDCDS		0x38	// all alternate speech data CDS
#define BS_AllASFBDCDA		0x40	// all speech followed by Data CDA
#define BS_AllASFBDCDS		0x48	// all speech followed by Data CDS

#define BS_AllDCA			0x50	// all data circuit asynchronous
#define BS_AllAS			0x60	// all asynchronous services
#define BS_AllDCS			0x58	// all data circuit synchronous
#define BS_AllSS			0x68	// all synchronous services

#define BS_AllPLMN			0xd0	// all PLMN specific BS
#define BS_PLMN1			0xd1
#define BS_PLMN2			0xd2
#define BS_PLMN3			0xd3
#define BS_PLMN4			0xd4
#define BS_PLMN5			0xd5
#define BS_PLMN6			0xd6
#define BS_PLMN7			0xd7
#define BS_PLMN8			0xd8
#define BS_PLMN9			0xd9
#define BS_PLMNa			0xda
#define BS_PLMNb			0xdb
#define BS_PLMNc			0xdc
#define BS_PLMNd			0xdd
#define BS_PLMNe			0xde
#define BS_PLMNf			0xdf

/*	++++++++++++++++++++++++++++	*/
/*	supplementary service codes		*/
/*	++++++++++++++++++++++++++++	*/
#define SS_All				0x00	// (reserved)
#define SS_AllIdent			0x10	// all line identification SS (reserved)
#define SS_CLIP				0x11	// calling line identification presentation
#define SS_CLIR				0x12	// calling line identification restriction
#define SS_COLP				0x13	// connected line identification presentation
#define SS_COLR				0x14	// coonected line identification restriction
#define SS_MCI				0x15	// malicious call identification (reserved)

#define SS_AllNI			0x18	// all name identification SS
#define SS_CNAP				0x19	// calling name presentation

#define SS_AllFwd			0x20	// all forwarding SS
#define SS_CFU				0x21	// call forwarding unconditional
#define SS_AllCFwd			0x28	// all conditional forwarding SS
#define SS_CFB				0x29	// call forwarding on mobile suscriber busy
#define SS_CFNRY			0x2a	// call forwarding on no reply
#define SS_CFNRC			0x2b	// call forwarding on mobile subscriber not reachable
#define SS_CD				0x24	// call deflection

#define SS_AllCOff			0x30	// all call offering SS	(reserved)
#define SS_ECT				0x31	// explicit call transfer
#define SS_MAH				0x32	// mobile access hunting (reserved)

#define SS_AllCC			0x40	// all call completion SS (reserved)
#define SS_CW				0x41	// call waiting
#define SS_HOLD				0x42	// call hold
#define SS_CCBSA			0x43	// completion of call to busy subscribers,originating side
#define SS_CCBSB			0x44	// completion of call to busy subscribers,destination side

#define SS_AllMP			0x50	// all multiparty SS (reserved)
#define SS_MULTIPTY			0x51	// multiparty

#define SS_AllCOI			0x60	// all community of interest SS (reserved)
#define SS_CUG				0x61	// closed user group

#define SS_AllCHG			0x70	// all charging SS (reserved)
#define SS_AOCI				0x71	// advice of charge information
#define SS_AOCC				0x72	// advice of charge charging

#define SS_AllAIT			0x80	// all additional information transfer SS (reserved)
#define SS_UUS				0x81	// user to user signalling (reserved)

#define SS_AllBar			0x90	// all barring SS
#define SS_BOC				0x91	// barring of outgoing calls
#define SS_BAOC				0x92	// barring of all outgoing calls
#define SS_BOIC				0x93	// barring of outgoing international calls
#define SS_BOICEXHC			0x94	// barring of outgoing international calls except to the home PLMN
#define	SS_BIC				0x99	// barring of incoming calls
#define SS_BAIC				0x9a	// barring of all incoming calls
#define SS_BICROAM			0x9b	// barring of incoming calls when roaming outside home PLMN country

#define SS_AllPLMNS			0xf0	// all PLMN specific SS
#define SS_PLMN1			0xf1
#define SS_PLMN2			0xf2
#define SS_PLMN3			0xf3
#define SS_PLMN4			0xf4
#define SS_PLMN5			0xf5
#define SS_PLMN6			0xf6
#define SS_PLMN7			0xf7
#define SS_PLMN8			0xf8
#define SS_PLMN9			0xf9
#define SS_PLMNa			0xfa
#define SS_PLMNb			0xfb
#define SS_PLMNc			0xfc
#define SS_PLMNd			0xfd
#define SS_PLMNe			0xfe
#define SS_PLMNf			0xff

#define SS_AllCP			0xa0	// all call priority SS (reserved)
#define SS_EMLPP			0xa1	// enhanced multilevel precedence pre-emption(EMLPP) service

/*	++++++++++++++++++++++++	*/
/*	alerting pattern codes		*/
/*	++++++++++++++++++++++++	*/
#define ALT_Lev0			0x00	// alerting level 0
#define ALT_Lev1			0x01	// alerting level 1
#define ALT_Lev2			0x02	// alerting level 2
#define ALT_CATE1			0x04	// alerting category 1
#define ALT_CATE2			0x05	// alerting category 2
#define ALT_CATE3			0x06	// alerting category 3
#define ALT_CATE4			0x07	// alerting category 4
#define ALT_CATE5			0x08	// alertign category 5

/*	++++++++++++++++++++++++	*/
/*	EMLPP priority codes		*/
/*	++++++++++++++++++++++++	*/
#define EMLPP_LA			0x06	// EMLPP priority level A
#define EMLPP_LB			0x05	// EMLPP priority level B
#define EMLPP_L0			0x00	// EMLPP priority level 0
#define EMLPP_L1			0x01	// EMLPP priority level 1
#define EMLPP_L2			0x02	// EMLPP priority level 2
#define EMLPP_L3			0x03	// EMLPP priority level 3
#define EMLPP_L4			0x04	// EMLPP priority level 4


/* IS41 */
#define ESN_LEN			0X04
#define MIN_LEN			0x05
#define BIT0_TRUE		0x01
#define BIT1_TRUE		0x02
#define BIT2_TRUE		0x04
#define BIT3_TRUE		0x08
#define BIT4_TRUE		0x10
#define BIT5_TRUE		0x20
#define BIT6_TRUE		0x40
#define BIT7_TRUE		0x80
#define BIT8_TRUE		0x100
#define BIT9_TRUE		0x200
#define BIT10_TRUE		0x400
#define BIT11_TRUE		0x800
#define BIT12_TRUE		0x1000
#define BIT13_TRUE		0x2000
#define BIT14_TRUE		0x4000
#define BIT15_TRUE		0x8000
#define BIT16_TRUE		0x10000
#define BIT17_TRUE		0x20000
#define BIT18_TRUE		0x40000
#define BIT19_TRUE		0x80000
#define BIT20_TRUE		0x100000
#define BIT21_TRUE		0x200000
#define BIT22_TRUE		0x400000
#define BIT23_TRUE		0x800000
#define BIT24_TRUE		0x1000000
#define BIT25_TRUE		0x2000000
#define BIT26_TRUE		0x4000000
#define BIT27_TRUE		0x8000000
#define BIT28_TRUE		0x10000000
#define BIT29_TRUE		0x20000000

//asn.1 tag
#define IS41PAR_BILLID		"1"
#define	IS41PAR_SCID		"2"
#define IS41PAR_TCID		"3"
#define IS41PAR_DIGITS		"4"
#define IS41PAR_CD			"5"
#define IS41PAR_IMSCCID		"6"
#define IS41PAR_ISC			"7"
#define IS41PAR_MIN			"8"//IMPLICIT OCTET STRING
#define IS41PAR_ESN			"9"//IMPLICIT OCTET STRING
#define IS41PAR_RR			"10"
#define IS41PAR_SQ			"11"
#define IS41PAR_SCM			"12"
#define IS41PAR_AUTHDEN		"13"
#define IS41PAR_AUTHPER		"14"
#define IS41PAR_ST			"15"
#define IS41PAR_TS			"16"
#define IS41PAR_QUALCODE	"17"
#define IS41PAR_FEATRESULT	"18"
#define IS41PAR_REDREASON	"19"
#define IS41PAR_ACCDEN		"20"
#define IS41PAR_MSCID		"21"
#define IS41PAR_MYTYP		"22"
#define IS41PAR_ORIGIND		"23"
#define IS41PAR_TERMRES		"24"
#define IS41PAR_CFI			"25"
#define IS41PAR_FP			"26"
#define IS41PAR_UID			"27"
#define IS41PAR_TDMACD		"28"
#define IS41PAR_TDMACM		"29"
#define IS41PAR_HR			"30"
#define IS41PAR_TDMABID		"31"
#define IS41PAR_PCSSN		"32"
#define IS41PAR_LOCID		"33"//IMPLICIT OCTET STRING
#define IS41PAR_SYSACCTYPE	"34"
#define IS41PAR_AUTHR		"35"
#define IS41PAR_AUTHBS		"36"
#define IS41PAR_AUTHU		"37"//IMPLICIT OCTET STRING
#define IS41PAR_COUNT		"38"//IMPLICIT Unsigned Integer (0..63)
#define IS41PAR_CMODES		"39"
#define IS41PAR_RAND		"40"
#define IS41PAR_RANDBS		"41"
#define IS41PAR_RANDSSD		"42"//IMPLICIT OCTET STRING
#define IS41PAR_RANDU		"43"//IMPLICIT OCTET STRING
#define IS41PAR_RPTTYP		"44"//IMPLICIT Unsigned Enumerated
//#define IS41PAR_RPTTYP2		"44-2"//IMPLICIT Unsigned Enumerated
#define IS41PAR_SMEKEY		"45"
#define IS41PAR_SSD			"46"//IMPLICIT OCTET STRING
#define IS41PAR_TERMTYP		"47"
#define IS41PAR_VPMASK		"48"
#define IS41PAR_SYSCAP		"49"
#define IS41PAR_DENACC		"50"
#define IS41PAR_UPDCOUNT	"51"//IMPLICIT Unsigned Enumerated
#define IS41PAR_NOSSD		"52"//IMPLICIT Unsigned Enumerated
#define IS41PAR_EXTMSCID	"53"
#define IS41PAR_EXTMYTYP	"54"
#define IS41PAR_CCDATA		"55"
#define IS41PAR_SYSACCDATA	"56"
#define IS41PAR_CANCD		"57"
#define IS41PAR_BORDACC		"58"
#define IS41PAR_CDMASCM		"59"
#define IS41PAR_CDMASOWD	"60"
#define IS41PAR_CDMATOWD	"61"
#define IS41PAR_CDMACM		"62"
#define IS41PAR_CDMACD		"63"
#define IS41PAR_CDMASQ		"64"
#define IS41PAR_CDMAPS		"65"
#define IS41PAR_CDMAMPR		"66"
#define IS41PAR_CDMAPLCM	"67"
#define IS41PAR_CDMACC		"68"
#define IS41PAR_CDMASW		"69"
#define IS41PAR_MSLOC		"70"
#define IS41PAR_PID			"71"
#define IS41PAR_RSIGQUAL	"72"
#define IS41PAR_DEREG		"73"
#define IS41PAR_NAMPSCD		"74"
#define IS41PAR_ALRTCODE	"75"
#define IS41PAR_ANCC		"76"
#define IS41PAR_AAV			"77"//IMPLICIT OCTET STRING
#define IS41PAR_AUTHCAP		"78"
#define IS41PAR_COUNTEx		"79"
#define IS41PAR_CPNDGTS1	"80"
#define IS41PAR_CPNDGTS2	"81"
#define IS41PAR_CPNSTRG1	"82"
#define IS41PAR_CPNSTRG2	"83"
#define IS41PAR_CPSUB		"84"
#define IS41PAR_CANTP		"85"
#define IS41PAR_CARDGTS		"86"
#define IS41PAR_DESTDGTS	"87"
#define IS41PAR_REDIND		"88"
#define IS41PAR_ISTERM		"89"
#define IS41PAR_AVTYP		"90"
#define IS41PAR_LOCTERM		"91"
#define IS41PAR_MWNCOUNT	"92"
#define IS41PAR_MDN			"93"
#define IS41PAR_MSCIN		"94"
#define IS41PAR_PSTNTERM	"95"
#define IS41PAR_NATIME		"96"
#define IS41PAR_OTFI		"97"
#define IS41PAR_ORIGTRIG	"98"
#define IS41PAR_RANDC		"99"
#define IS41PAR_RNDGTS		"100"
#define IS41PAR_RNSTRING	"101"
#define IS41PAR_RSUB		"102"
#define IS41PAR_SENDERIN	"103"//IMPLICIT DigitsType
#define IS41PAR_SMSADDR		"104"
#define IS41PAR_SMSBD		"105"
#define IS41PAR_SMSCID		"106"
#define IS41PAR_SMSDA		"107"
#define IS41PAR_SMSMSGCNT	"108"
#define IS41PAR_SMSNOTIND	"109"
#define IS41PAR_SMSODA		"110"
#define IS41PAR_SMSODS		"111"
#define IS41PAR_SMSOOA		"112"
#define IS41PAR_SMSOOS		"113"
#define IS41PAR_SMSOA		"114"
#define IS41PAR_SMSORGRES	"115"
#define IS41PAR_SMSTID		"116"
#define IS41PAR_SMSTERMRES	"117"
#define IS41PAR_SMSMWI		"118"
#define IS41PAR_TAT			"119"
#define IS41PAR_TERMLIST	"120"
#define IS41PAR_TERMTRMT	"121"
#define IS41PAR_TERMTRIG	"122"
#define IS41PAR_TRANSCAP	"123"
#define IS41PAR_UCHALRPT	"124"
//#define IS41PAR_RESERVED	"125"
//#define IS41PAR_RESERVED	"126"
//#define IS41PAR_RESERVED	"127"
#define IS41PAR_ACTCODE		"128"
#define IS41PAR_AR			"129"
#define IS41PAR_ANNLIST		"130"
#define IS41PAR_CDMACCI		"131"
#define IS41PAR_CDMACCL		"132"
#define IS41PAR_CDMATMI		"133"
#define IS41PAR_CDMATML		"134"
#define IS41PAR_CDMATMAHOI	"135"
#define IS41PAR_CDMATMAHOL	"136"
#define IS41PAR_CCI			"137"
#define IS41PAR_COUNTRPT	"138"
#define IS41PAR_DIGITCC		"139"//IMPLICIT Unsigned Enumerated
#define IS41PAR_ACDGTS		"140"
#define IS41PAR_ABDGTS		"141"
#define IS41PAR_BILLDGTS	"142"
#define IS41PAR_GEOAUTH		"143"
#define IS41PAR_LEGINFO		"144"
#define IS41PAR_MWNTYPE		"145"
#define IS41PAR_PACAIND		"146"
#define IS41PAR_PLIND		"147"
#define IS41PAR_RANDVT		"148"
#define IS41PAR_RESDGTS		"149"
#define IS41PAR_ROUTDGTS	"150"
#define IS41PAR_SR			"151"
#define IS41PAR_SMSACCDEN	"152"
#define IS41PAR_SMSCC		"153"
#define IS41PAR_SPINIPIN	"154"
#define IS41PAR_SPINITRIG	"155"
#define IS41PAR_SSDURPT		"156"
#define IS41PAR_TMINFO		"157"
#define IS41PAR_TML			"158"
#define IS41PAR_VMSPIN		"159"
#define IS41PAR_VMBOX		"160"
#define IS41PAR_AUTHDATA	"161"
#define IS41PAR_CDEN		"162"
#define IS41PAR_GRPINFO		"163"
#define IS41PAR_HOS			"164"
#define IS41PAR_NAMPSCM		"165"
#define IS41PAR_CDMASCI		"166"
#define IS41PAR_DENAUTHPER	"167"
#define IS41PAR_PILOT		"168"
#define IS41PAR_PILOTBID	"169"
#define IS41PAR_GLOBALTITLE	"261"
#define IS41PAR_RESUMEPIC	"266"
#define IS41PAR_TRIGADRLIST	"276"
#define IS41PAR_TRIGCAP		"277"
#define IS41PAR_TRIGLIST	"278"
#define IS41PAR_WINCAP		"280"
#define IS41PAR_WINOPRCAP	"281"
#define IS41PAR_WINTRIGLIST	"283"
#define IS41PAR_DMH_SVCID	"286"
//N.S0013-0 "WIN Phase 1"
#define IS41PAR_EXESCR		"258"
#define IS41PAR_PSR			"265"
#define IS41PAR_SCRARG		"267"
#define IS41PAR_SCRNAME		"268"
#define IS41PAR_SCRRESULT	"269"
//#define IS41PAR_SR			"274"
#define IS41PAR_TDO			"275"
#define IS41PAR_TRIGERTYPE	"279"
//N.S0018 "TIA/EIA-41-D Pre-Paid Charging(Revision: 1)"
#define IS41PAR_FEATIND		"306"
#define IS41PAR_RELCAUSE	"308"
#define IS41PAR_TOD			"309"
#define IS41PAR_CALLSTATUS	"310"
//N.S0009 "IMSI"
#define IS41PAR_IMSI		"242"
//N.S0012 "CNAP/CNAR"
#define IS41PAR_CPNAME		"243"
#define IS41PAR_DISPTEXT	"244"
#define IS41PAR_RDNAME		"245"
#define IS41PAR_SRVID		"246"
//X.S0010 "Pre-Paid Charging Enhancements for Circuit-Switched Data and Short Message Services"
#define IS41PAR_SMSBRLEN	"382"
#define IS41PAR_SMSBILLID	"383"
#define IS41PAR_SMSEVENT	"384"
#define IS41PAR_SMSEVENTNOT	"385"
#define IS41PAR_SMSPMCNT	"386"


//is41 operations
#define IS41OPR_HandoffMeasurementRequest		0x01
#define IS41OPR_FacilitiesDirective				0x02
#define IS41OPR_MobileOnChannel					0x03
#define IS41OPR_HandoffBack						0x04
#define IS41OPR_FacilitiesRelease				0x05
#define IS41OPR_QualificationRequest			0x06
#define IS41OPR_QualificationDirective			0x07
#define IS41OPR_Blocking						0x08
#define IS41OPR_Unblocking						0x09
#define IS41OPR_ResetCircuit					0x0a
#define IS41OPR_TrunkTest						0x0b
#define IS41OPR_TrunkTestDisconnect				0x0c
#define IS41OPR_RegistrationNotification		0x0d
#define IS41OPR_RegistrationCancellation		0x0e
#define IS41OPR_LocationRequest					0x0f
#define IS41OPR_RoutingRequest					0x10
#define IS41OPR_FeatureRequest					0x11
#define IS41OPR_ServiceProfileRequest			0x12
#define IS41OPR_ServiceProfileDirective			0x13
#define IS41OPR_UnreliableRoamerDataDirective	0x14
#define IS41OPR_CallDataREquest					0x15
#define IS41OPR_MSInactive						0x16
#define IS41OPR_TransferToNumberRequest			0x17
#define IS41OPR_RedirectionRequest				0x18
#define IS41OPR_HandoffToThird					0x19
#define IS41OPR_FlashRequest					0x1a
#define IS41OPR_AuthenticationDirective			0x1b
#define IS41OPR_AuthenticationRequest			0x1c
#define IS41OPR_BaseStationChallenge			0x1d
#define IS41OPR_AuthenticationFailureReport		0x1e
#define IS41OPR_CountRequest					0x1f
#define IS41OPR_InterSystemPage					0x20
#define IS41OPR_UnsolicitedResponse				0x21
#define IS41OPR_BulkDeregistration				0x22
#define IS41OPR_HandoffMeasurementRequest2		0x23
#define IS41OPR_FacilitiesDirective2			0x24
#define IS41OPR_HandoffBack2					0x25
#define IS41OPR_HandoffToThird2					0x26
#define IS41OPR_AuthenticationDirectiveForward	0x27
#define IS41OPR_AuthenticationStatusReport		0x28
#define IS41OPR_InformationBackward				0x29
#define IS41OPR_InformationDirective			0x2a
#define IS41OPR_InformationForward				0x2b
#define IS41OPR_InterSystemAnswer				0x2c
#define IS41OPR_InterSystemPage2				0x2d
#define IS41OPR_InterSystemSetup				0x2e
#define IS41OPR_OriginationRequest				0x2f
#define IS41OPR_RandomVariableRequest			0x30
#define IS41OPR_RedirectionDirective			0x31
#define IS41OPR_RemoteUserInteractionDirective	0x32
#define IS41OPR_SMSDeliveryBackward				0x33
#define IS41OPR_SMSDeliveryForward				0x34
#define IS41OPR_SMSDeliveryPointToPoint			0x35
#define IS41OPR_SMSNotification					0x36
#define IS41OPR_SMSRequest						0x37
//N.S0013-0 "WIN Phase 1"
#define IS41OPR_AnalyzedInformation				64
#define IS41OPR_ConnectionFailureReport			65
#define IS41OPR_ConnectResource					66
#define IS41OPR_DisconnectResource				67
#define IS41OPR_FacilitySelectedAndAvailable	68
#define IS41OPR_InstructionRequest				69
#define IS41OPR_Modify							70
#define IS41OPR_ResetTimer						71
#define IS41OPR_Search							72
#define IS41OPR_SeizeResource					73
#define IS41OPR_SRFDirective					74
#define IS41OPR_TBusy							75
#define IS41OPR_TNoAnswer						76
//N.S0018 "TIA/EIA-41-D Pre-Paid Charging(Revision: 1)"
#define IS41OPR_BulkDisconnection				80
#define IS41OPR_CallControlDirective			81
#define IS41OPR_OAnswer							82
#define IS41OPR_ODisconnect						83
#define IS41OPR_CallRecoveryReport				84
#define IS41OPR_TAnswer							85
#define IS41OPR_TDisconnect						86
#define IS41OPR_UnreliableCallData				87
//X.S0010-A "Pre-Paid Charging Enhancements for Circuit-Switched Data and Short Message Services"
#define IS41OPR_ShortMessageAnalyzed			105

// debug
#define IS41DB_DEBUG						0x01
#define IS41DB_ENCODE						0x02
#define IS41DB_DECODE						0x04
#define IS41DB_FLOW						0x08
#define IS41DB_ERR						0x10


#define	IS41ERR_UNRECOGNIZED_MIN				0x81
#define	IS41ERR_UNRECOGNIZED_ESN				0x82
#define	IS41ERR_MIN_HLR_MISMATCH				0x83
#define	IS41ERR_OPERATION_SEQUENCE_PROBLEM		0x84
#define	IS41ERR_RESOURCE_SHORTAGE				0x85
#define	IS41ERR_OPERATION_NOT_SUPPORTED			0x86
#define	IS41ERR_TRUNK_UNAVAILABLE				0x87
#define	IS41ERR_PARAMETER_ERROR					0x88
#define	IS41ERR_SYSTEM_FAILURE					0x89
#define	IS41ERR_UNRECOGNIZED_PARAMETER_VALUE	0x8a
#define	IS41ERR_FEATURE_INACTIVE				0x8b
#define	IS41ERR_MISSING_PARAMETER				0x8c

// asn.1
#define SET_NATIONAL							"18"
#define ASN_OCTET_STRING						"4"
#define ASN_INTEGER								"2"
#define ASN_NULL								"5"
#define ASN_ENUMERATED							"10"
#define ASN_SEQUENCE							"16"
#define ASN_SET									"17"

#define ISDN_LEN								9

#define MAX_TCAPSEND_LEN			(TCAP_PARAM_LEN-20)
#define MAX_TCAPSEND_LEN_1			(TCAP_PARAM_LEN_1-20)
#define MAX_IS41_VARPAR_LEN			32
#define MAX_IS41_VARPAR_LEN_1		31
#define MAX_IS41_TRIG_LIST_NUM		4
#define MAX_IS41_TRIG_LIST_NUM_1	3

#endif
