📄 aci_cmh.h
字号:
/*
+-----------------------------------------------------------------------------
| Project : GSM-F&D (8411)
| Modul : ACI_CMH
+-----------------------------------------------------------------------------
| Copyright 2002 Texas Instruments Berlin, AG
| All rights reserved.
|
| This file is confidential and a trade secret of Texas
| Instruments Berlin, AG
| The receipt of or possession of this file does not convey
| any rights to reproduce or disclose its contents or to
| manufacture, use, or sell anything it may describe, in
| whole, or in part, without the specific written consent of
| Texas Instruments Berlin, AG.
+-----------------------------------------------------------------------------
| Purpose : Command handler interface definitions
+-----------------------------------------------------------------------------
*/
#ifndef ACI_CMH_H
#define ACI_CMH_H
/* Robert.Chen add, 2004-03-02, to avoid not defined in BMI source */
#include "message.h"
#include "prim.h"
/* add end */
/*==== DATA TYPES FROM OLD SMS SAP (TEMPORARY) ====================*/
/*
* service center address
*/
typedef struct
{
UBYTE ntype; /*< 0: 1> numbering type */
UBYTE nplan; /*< 1: 1> numbering plan */
UBYTE no_bcd; /*< 2: 1> number of BCD digits */
UBYTE bcd[MAX_SMS_ADDR_DIG]; /*< 3: 20> address */
} T_sc_addr;
typedef struct
{
UBYTE year[2]; /*< 0: 2> year */
UBYTE month[2]; /*< 2: 2> month */
UBYTE day[2]; /*< 4: 2> day */
UBYTE hour[2]; /*< 6: 2> hour */
UBYTE minute[2]; /*< 8: 2> minute */
UBYTE second[2]; /*< 10: 2> second */
UBYTE timezone; /*< 12: 1> timezone */
} T_vp_abs;
typedef enum
{
SR_TYP_Name = 0,
SR_TYP_Number,
SR_TYP_Index,
SR_TYP_Physical
}
T_ACI_SR_TYP;
#ifdef FF_EM_MODE
#include "aci_em.h"
#endif /* FF_EM_MODE */
/*==== MACROS =====================================================*/
#define ACI_ERR_DESC_CLASS( errDesc ) ((errDesc&0xFFFF0000)>>16)
#define ACI_ERR_DESC_NR( errDesc ) (errDesc&0xFFFF)
#define ACI_ERR_DESC_BLD( errCls, errNr ) ((errCls<<16)+errNr)
/*==== DEFINES ====================================================*/
#define ACI_NumParmNotPresent (-1)
#define MAX_OPER 12
#define MAX_FACILITY 17
#define MAX_B_SUBSCR_NUM_LEN 39 /* MAX_PARTY_NUM + '\0' */
#define MAX_CC_ORIG_NUM_LEN 81 /* Call Control MO number lenght + '\0' */
#ifdef PHONEBOOK_EXTENSION
#define MAX_PHB_NUM_LEN 41 /* Phonebook number length + '\0' */
#else
#define MAX_PHB_NUM_LEN 21 /* Phonebook number length + '\0' */
#endif /* else, #ifdef PHONEBOOK_EXTENSION */
#define MAX_SUBADDR_LEN 21
#define MAX_ALPHA_LEN 21
#define MAX_ALPHA_OPER_LEN 26
#define MAX_NUM_OPER_LEN 7
#define MAX_VP_ABS_DIGITS 2
#define MAX_SM_LEN 176
#define MAX_CBM_LEN 94
#define MAX_SM_CMD_LEN 158
#define MAX_CBM_TYPES (MAX_IDENTS)
#define MAX_PB_ENTR 5 /* Should be the same as file: phb.h, MAX_PHB_ENTRY */
#define MAX_PB_INDEX 255
#define MAX_CALL_NR 7
#define MAX_SM_ENTR 1
#define MAX_FAC_PWD_LEN 5
#define MAX_USSD_LEN 183 /* max len in message is 160 can be 7bit compressed so 182*/
#define MAX_DIAL_LEN 183 /* should be the same as for ussd len */
#define MAX_IMSI_LEN 15 /* 3.03/2.3 */
#define MAX_SAT_PRF_LEN (MAX_STK_PRF) /* from SAP definition SIM.DOC */
#define MAX_SAT_CMD_LEN 255
#define MAX_CUR_LEN 4
#define MAX_MSISDN 2
#define CLAN_CODE_LEN 2
#define CBCH_HEAD_LEN 6
#define CMGW_IDX_FREE_ENTRY 0
#define MAX_SMS_NUM_LEN (MAX_SMS_ADDR_DIG+1)
#define MAX_LAN 24 /* Maximal language supported */
#ifdef FF_HOMEZONE
#define CBHZ_MAX_TIMEOUT 120
#define CBHZ_MIN_TIMEOUT 30
#define CBHZ_DEF_TIMEOUT 60
#endif /* FF_HOMEZONE */
#ifndef NO_ASCIIZ
#define NO_ASCIIZ
#endif
/* A T T E N T I O N : this constants have to be verified */
#define MAX_CBM_ENTR 1
/* A T T E N T I O N : this constants have to be verified */
/* SMS: TP-Validity-Period-Format (TP-VPF) according to GSM 03.40 */
#define TP_VPF_NOT_PRESENT 0x00
#define TP_VPF_ENHANCED 0x08
#define TP_VPF_RELATIVE 0x10
#define TP_VPF_ABSOLUTE 0x18
#define TP_VPF_MASK 0x18
/* SMS: TP-Validity-Period-Enhanced extension bit */
#define TP_VPF_ENH_EXT_BIT_MASK 0x80
/* SMS: TP-Validity-Period-Enhanced single shot bit */
#define TP_VPF_ENH_SINGLE_SHOT_MASK 0x40
/* SMS: TP-Validity-Period-Enhanced-Format */
#define TP_VPF_ENH_NOT_PRESENT 0x00
#define TP_VPF_ENH_REL 0x01
#define TP_VPF_ENH_SEC 0x02
#define TP_VPF_ENH_HRS 0x03
#define TP_VPF_ENH_FORMAT_MASK 0x07
/* SMS: TP-Message-Type-Indicator (TP-MTI) according to GSM 03.40 */
#define TP_MTI_SMS_DELIVER 0x00
#define TP_MTI_SMS_DELIVER_REP 0x00
#define TP_MTI_SMS_SUBMIT 0x01
#define TP_MTI_SMS_SUBMIT_REP 0x01
#define TP_MTI_SMS_COMMAND 0x02
#define TP_MTI_SMS_STATUS_REP 0x02
#define TP_MTI_SMS_RESERVED 0x03
#define TP_MTI_MASK 0x03
/* SMS: TP-Status-Report-Request (TP-SRR) according to GSM 03.40 */
#define TP_SRR_NOT_REQUEST 0x00
#define TP_SRR_REQUEST 0x20
#define TP_SRR_MASK 0x20
/* SMS: TP-User-Data-Header-Indicator (TP-UDHI) according to GSM 03.40 */
#define TP_UDHI_WITHOUT_HEADER 0x00
#define TP_UDHI_WITH_HEADER 0x40
#define TP_UDHI_MASK 0x40
/* SMS: TP-Reply-Path (TP-RP) according to GSM 03.40 */
#define TP_RP_NOT_REQUEST 0x00
#define TP_RP_REQUEST 0x80
#define TP_RP_MASK 0x80
/* SMS/CBM: control parameter access in PCM */
#define ACI_PCM_ACCESS_SMSP 0x01
#define ACI_PCM_ACCESS_CBMP 0x02
/* EONS definitions */
#define OPL_MAX_RECORDS 50
#define OPL_MAX_RECORD_SIZE 8
/* CSQ, signal quality definitions*/
#define ACI_RSSI_FAULT 99
#define ACI_BER_FAULT 99
/*==== TYPES ======================================================*/
typedef enum /* AT command identifier */
{
AT_CMD_NONE = 0, /* no ACI command identifier */
AT_CMD_CACM = 1,
AT_CMD_CAMM = 2,
AT_CMD_CAOC = 3,
AT_CMD_CBC = 4,
AT_CMD_CBST = 5,
AT_CMD_CCFC = 6,
AT_CMD_CCUG = 7,
AT_CMD_CCWA = 8,
AT_CMD_CCWE = 9,
AT_CMD_CEER = 10,
AT_CMD_CFUN = 11,
AT_CMD_CGACT = 12,
AT_CMD_CGANS = 13,
AT_CMD_CGATT = 14,
AT_CMD_CGAUTO = 15,
AT_CMD_CGCLASS = 16,
AT_CMD_CGDATA = 17,
AT_CMD_CGDCONT = 18,
AT_CMD_CGEREP = 19,
AT_CMD_CGMI = 20,
AT_CMD_CGMM = 21,
AT_CMD_CGMR = 22,
AT_CMD_CGPADDR = 23,
AT_CMD_CGQMIN = 24,
AT_CMD_CGQREQ = 25,
AT_CMD_CGREG = 26,
AT_CMD_CGSMS = 27,
AT_CMD_CGSN = 28,
AT_CMD_CHLD = 29,
AT_CMD_CHUP = 30,
AT_CMD_CIMI = 31,
AT_CMD_CLAC = 32,
AT_CMD_CLAE = 33,
AT_CMD_CLAN = 34,
AT_CMD_CLCC = 35,
AT_CMD_CLCK = 36,
AT_CMD_CLIP = 37,
AT_CMD_CLIR = 38,
AT_CMD_CLVL = 39,
AT_CMD_CMEE = 40,
AT_CMD_CMGC = 41,
AT_CMD_CMGD = 42,
AT_CMD_CMGF = 43,
AT_CMD_CMGL = 44,
AT_CMD_CMGR = 45,
AT_CMD_CMGS = 46,
AT_CMD_CMGW = 47,
AT_CMD_CMOD = 48,
AT_CMD_CMSS = 49,
AT_CMD_CMUT = 50,
AT_CMD_CMUX = 51,
AT_CMD_CNMA = 52,
AT_CMD_CNMI = 53,
AT_CMD_CNUM = 54,
AT_CMD_COLP = 55,
AT_CMD_COPN = 56,
AT_CMD_COPS = 57,
AT_CMD_CPAS = 58,
AT_CMD_CPBF = 59,
AT_CMD_CPBR = 60,
AT_CMD_CPBS = 61,
AT_CMD_CPBW = 62,
AT_CMD_CPIN = 63,
AT_CMD_CPMS = 64,
AT_CMD_CPOL = 65,
AT_CMD_CPUC = 66,
AT_CMD_CPWD = 67,
AT_CMD_CR = 68,
AT_CMD_CRC = 69,
AT_CMD_CREG = 70,
AT_CMD_CRES = 71,
AT_CMD_CRLP = 72,
AT_CMD_CRSL = 73,
AT_CMD_CRSM = 74,
AT_CMD_CSAS = 75,
AT_CMD_CSCA = 76,
AT_CMD_CSCB = 77,
AT_CMD_CSCS = 78,
AT_CMD_CSDH = 79,
AT_CMD_CSMP = 80,
AT_CMD_CSMS = 81,
AT_CMD_CSNS = 82,
AT_CMD_CSQ = 83,
AT_CMD_CSSN = 84,
AT_CMD_CSTA = 85,
AT_CMD_CSVM = 86,
AT_CMD_CTFR = 87,
AT_CMD_CUSD = 88,
AT_CMD_DR = 89,
AT_CMD_DS = 90,
AT_CMD_FAA = 91,
AT_CMD_FAP = 92,
AT_CMD_FBO = 93,
AT_CMD_FBS = 94,
AT_CMD_FBU = 95,
AT_CMD_FCC = 96,
AT_CMD_FCLASS = 97,
AT_CMD_FCQ = 98,
AT_CMD_FCR = 99,
AT_CMD_FCS = 100,
AT_CMD_FCT = 101,
AT_CMD_FDR = 102,
AT_CMD_FDT = 103,
AT_CMD_FEA = 104,
AT_CMD_FFC = 105,
AT_CMD_FHS = 106,
AT_CMD_FIE = 107,
AT_CMD_FIP = 108,
AT_CMD_FIS = 109,
AT_CMD_FIT = 110,
AT_CMD_FKS = 111,
AT_CMD_FLI = 112,
AT_CMD_FLO = 113,
AT_CMD_FLP = 114,
AT_CMD_FMI = 115,
AT_CMD_FMM = 116,
AT_CMD_FMR = 117,
AT_CMD_FMS = 118,
AT_CMD_FND = 119,
AT_CMD_FNR = 120,
AT_CMD_FNS = 121,
AT_CMD_FPA = 122,
AT_CMD_FPI = 123,
AT_CMD_FPP = 124,
AT_CMD_FPS = 125,
AT_CMD_FPW = 126,
AT_CMD_FRQ = 127,
AT_CMD_FRY = 128,
AT_CMD_FSA = 129,
AT_CMD_FSP = 130,
AT_CMD_GCAP = 131,
AT_CMD_GCI = 132,
AT_CMD_GMI = 133,
AT_CMD_GMM = 134,
AT_CMD_GMR = 135,
AT_CMD_GSN = 136,
AT_CMD_ICF = 137,
AT_CMD_IFC = 138,
AT_CMD_ILRR = 139,
AT_CMD_IPR = 140,
AT_CMD_TM = 141,
AT_CMD_VST = 142,
AT_CMD_WS46 = 143,
AT_CMD_ALS = 144,
AT_CMD_CLSA = 145,
AT_CMD_CLOM = 146,
AT_CMD_CLPS = 147,
AT_CMD_CLSR = 148,
AT_CMD_BAND = 149,
AT_CMD_P_CACM = 150,
AT_CMD_P_CAOC = 151,
AT_CMD_CCBS = 152,
AT_CMD_CGAATT = 153,
AT_CMD_P_CGMM = 154,
AT_CMD_P_CGREG = 155,
AT_CMD_CNAP = 156,
AT_CMD_CPI = 157,
AT_CMD_CTTY = 158,
AT_CMD_COLR = 159,
AT_CMD_CPRIM = 160,
AT_CMD_CTV = 161,
AT_CMD_CUNS = 162,
AT_CMD_NRG = 163,
AT_CMD_PPP = 164,
AT_CMD_SATC = 165,
AT_CMD_SATE = 166,
AT_CMD_SATR = 167,
AT_CMD_SATT = 168,
AT_CMD_MTST = 169,
AT_CMD_SNCNT = 170,
AT_CMD_VER = 171,
AT_CMD_P_CGCLASS = 172,
AT_CMD_CGPCO = 173,
AT_CMD_CGPPP = 174,
AT_CMD_EM = 175,
AT_CMD_EMET = 176,
AT_CMD_EMETS = 177,
AT_CMD_WAP = 178,
AT_CMD_CBHZ = 179,
AT_CMD_CPHS = 180, /* %CPHS command id */
AT_CMD_CPNUMS = 181, /* %CPNUMS command id */
AT_CMD_CPALS = 182, /* %CPALS command id */
AT_CMD_CPVWI = 183, /* %CPVWI voice message waiting command id */
AT_CMD_CPOPN = 184, /* %CPOPN operator name string command id */
AT_CMD_CPCFU = 185, /* %CPCFU command id */
AT_CMD_CPINF = 186, /* %CPHS information and customer service profile command id */
AT_CMD_CPMB = 187, /* %CPHS mailbox numbers */
AT_CMD_CPRI = 188,
AT_CMD_DATA = 189,
AT_CMD_DINF = 190,
AT_CMD_VTS = 191,
AT_CMD_PVRF = 192,
AT_CMD_ABRT = 193,
AT_CMD_EXT = 194,
AT_CMD_D = 195, /* D command id */
AT_CMD_O = 196, /* O command id */
AT_CMD_A = 197, /* A command id */
AT_CMD_H = 198, /* H command id */
AT_CMD_Z = 199, /* Z command id */
AT_CMD_P_CSQ = 200, /* %CSQ command id */
AT_CMD_MAX /* maximum command id */
} T_ACI_AT_CMD;
typedef enum /* KSD command identifier */
{
/* KSD_CMD_NONE = 200, no KSD command identifier */
KSD_CMD_NONE = AT_CMD_MAX, /* no KSD command identifier */
KSD_CMD_CB, /* call barring command id */
KSD_CMD_CF, /* call forwarding command id */
KSD_CMD_CL, /* calling line command id */
KSD_CMD_CW, /* call waiting command id */
KSD_CMD_PWD, /* password command id */
KSD_CMD_UBLK, /* unblock PIN command id */
KSD_CMD_USSD, /* unstructured SS command id */
KSD_CMD_IMEI, /* get IMEI command id */
KSD_CMD_CCBS, /* CCBS command id */
KSD_CMD_MAX /* maximum command id */
}
T_ACI_KSD_CMD;
#define CMD_SRC_ATI 1
typedef enum /* AT command source identifier */
{
CMD_SRC_NONE = -1, /* no ACI command source identifier */
CMD_SRC_LCL, /* local command source id */
CMD_SRC_ATI_1, /* remote command source id */
CMD_SRC_ATI_2, /* remote command source id */
CMD_SRC_ATI_3, /* remote command source id */
CMD_SRC_ATI_4, /* remote command source id */
#ifdef SIM_TOOLKIT
CMD_SRC_ATI_5, /* added in case of SAT run at cmd
THIS DOES NOT MEAN THIS IS THE SAT SOURCE THOUGH !!! */
#endif /* SIM_TOOLKIT */
#if defined FF_EOTD
CMD_SRC_ATI_6, /* added in case of Location Service (test purposes) */
#endif /* FF_EOTD */
CMD_SRC_MAX /* maximum command source id */
} T_ACI_CMD_SRC;
typedef enum /* ACI functional return codes */
{
AT_FAIL = -1, /* execution of command failed */
AT_CMPL, /* execution of command completed */
AT_EXCT, /* execution of command is in progress */
AT_BUSY /* execution of command is rejected due
to a busy command handler */
} T_ACI_RETURN;
/* value used internally by ACI */
#define AT_CONT (AT_BUSY+1)
typedef enum /* ACI error class */
{
ACI_ERR_CLASS_NotPresent = -1,
ACI_ERR_CLASS_Cme, /* +CME Error codes */
ACI_ERR_CLASS_Cms, /* +CMS Error codes */
ACI_ERR_CLASS_Ceer, /* +CEER Error code */
ACI_ERR_CLASS_Ext /* extended error codes */
} T_ACI_ERR_CLASS;
typedef ULONG T_ACI_ERR_DESC; /* supplemental error description */
typedef enum /* used data coding schemes */
{
CS_NotPresent = -1,
CS_GsmDef = 0, /* 7 BIT */
CS_GsmInt, /* 7 BIT (8. Bit gesetzt) */
CS_Hex, /* 8 BIT transparent */
CS_Ucs2, /* 16 BIT Unicode */
CS_Sim, /* SIM card format */
CS_Ascii
}
T_ACI_CS;
typedef struct /* CRES type defination for restores message service settings */
{
UBYTE min;
UBYTE max;
} T_ACI_CRES;
typedef struct /* data buffer for phonebook alpha */
{
UBYTE data[MAX_PHB_NUM_LEN]; //GW - from MAX_ALPHA_LEN - used to search for a number
UBYTE len;
T_ACI_CS cs;
}
T_ACI_PB_TEXT;
typedef struct /* data buffer for Short Messages */
{
UBYTE data[MAX_SM_LEN];
UBYTE len;
}
T_ACI_SM_DATA;
typedef struct /* data buffer for Concatenated Short Messages */
{
UBYTE *data;
USHORT len;
}
T_SM_DATA_EXT;
typedef enum /* for conc. SMS init functions */
{
EMPTY = -1,
CMSS_CONC,
CMGS_CONC,
CMGC_CONC,
CMGR_CONC,
CMGW_CONC,
CMGD_CONC
} T_EXT_CMS_CMD_ID;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -