📄 usock.h.svn-base
字号:
#ifndef _GSMD_USOCK_H#define _GSMD_USOCK_H#include <gsmd/event.h>#include <gsmd/ts0707.h>#include <gsmd/ts0705.h>#define GSMD_UNIX_SOCKET "\0gsmd"//#define GSMD_UNIX_SOCKET_TYPE SOCK_SEQPACKET#define GSMD_UNIX_SOCKET_TYPE SOCK_STREAM#define GSMD_PROTO_VERSION 1#define GSMD_MSGSIZE_MAX 4096enum gsmd_msg_type { GSMD_MSG_NONE = 0, GSMD_MSG_EVENT = 1, GSMD_MSG_PASSTHROUGH = 2, GSMD_MSG_VOICECALL = 3, GSMD_MSG_DATACALL = 4, GSMD_MSG_PHONEBOOK = 5, GSMD_MSG_NETWORK = 6, GSMD_MSG_PHONE = 7, GSMD_MSG_PIN = 8, GSMD_MSG_SMS = 9, GSMD_MSG_CB = 10, GSMD_MSG_MODEM = 11, __NUM_GSMD_MSGS};enum gsmd_passthrough_type { GSMD_PASSTHROUGH_NONE = 0, GSMD_PASSTHROUGH_REQ = 1, GSMD_PASSTHROUGH_RESP = 2,};enum gsmd_msg_voicecall_type { GSMD_VOICECALL_DIAL = 1, GSMD_VOICECALL_HANGUP = 2, GSMD_VOICECALL_ANSWER = 3, GSMD_VOICECALL_DTMF = 4, GSMD_VOICECALL_VOL_SET = 5, GSMD_VOICECALL_VOL_GET = 6, GSMD_VOICECALL_GET_STAT = 7, GSMD_VOICECALL_CTRL = 8, GSMD_VOICECALL_FWD_DIS = 9, GSMD_VOICECALL_FWD_EN = 10, GSMD_VOICECALL_FWD_STAT = 11, GSMD_VOICECALL_FWD_REG = 12, GSMD_VOICECALL_FWD_ERAS = 13,};/* call direction from 3GPP TS 07.07, Clause 7.17 */enum gsmd_call_dire { GSMD_CALL_DIRE_MO = 0, GSMD_CALL_DIRE_MT = 1,};/* call state from 3GPP TS 07.07, Clause 7.17 */enum gsmd_call_stat { GSMD_CALL_STAT_ACTIVE = 0, GSMD_CALL_STAT_HELD = 1, GSMD_CALL_STAT_DIALING = 2, GSMD_CALL_STAT_ALERTING = 3, GSMD_CALL_STAT_INCOMING = 4, GSMD_CALL_STAT_WAITING = 5,};/* call mode from 3GPP TS 07.07, Clause 7.17 */enum gsmd_call_mode { GSMD_CALL_MODE_VOICE = 0, GSMD_CALL_MODE_DATA = 1, GSMD_CALL_MODE_FAX = 2, GSMD_CALL_MODE_VOICE_DATA = 3, GSMD_CALL_MODE_VOICE_DATA_ALT = 4, GSMD_CALL_MODE_VOICE_FAX_ALT = 5, GSMD_CALL_MODE_DATA_VOICE = 6, GSMD_CALL_MODE_DATA_VOICE_ALT = 7, GSMD_CALL_MODE_FAX_VOICE_ALT = 8, GSMD_CALL_MODE_UNKNOWN = 9,};/* multiparty(conference) from 3GPP TS 07.07, Clause 7.17 */enum gsmd_call_mpty { GSMD_CALL_MPTY_NO = 0, GSMD_CALL_MPTY_YES = 1,};/* * call related supplementary services from 3GPP TS 02.30 4.5.5.1 * R - Release * A - Accept * H - Hold * M - Multiparty */enum gsmd_call_ctrl_proc { GSMD_CALL_CTRL_R_HLDS = 0, // 0 GSMD_CALL_CTRL_UDUB = 1, // 0 GSMD_CALL_CTRL_R_ACTS_A_HLD_WAIT = 2, // 1 GSMD_CALL_CTRL_R_ACT_X = 3, // 1x GSMD_CALL_CTRL_H_ACTS_A_HLD_WAIT = 4, // 2 GSMD_CALL_CTRL_H_ACTS_EXCEPT_X = 5, // 2x GSMD_CALL_CTRL_M_HELD = 6, // 3};/* call forward reason from 3GPP TS 07.07 subclause 07.10 */enum gsmd_call_fwd_reason { GSMD_CALL_FWD_REASON_UNCOND = 0, GSMD_CALL_FWD_REASON_BUSY = 1, GSMD_CALL_FWD_REASON_NO_REPLY = 2, GSMD_CALL_FWD_REASON_NOT_REACHABLE = 3, GSMD_CALL_FWD_REASON_ALL_FORWARD = 4, GSMD_CALL_FWD_REASON_ALL_COND_FORWARD = 5, };/* call forward status from 3GPP TS 07.07 subclause 07.10 */enum gsmd_call_fwd_status { GSMD_CALL_FWD_STATUS_NOT_ACTIVE = 0, GSMD_CALL_FWD_STATUS_ACTIVE = 1,};/* Handset / MT related commands */enum gsmd_msg_phone_type { GSMD_PHONE_VOLUME = 1, GSMD_PHONE_VIBRATOR = 2,};enum gsmd_msg_pin_type { GSMD_PIN_INPUT = 1, GSMD_PIN_GET_STATUS = 2,};enum gsmd_msg_phone { GSMD_PHONE_POWERUP = 1, GSMD_PHONE_POWERDOWN = 2, GSMD_PHONE_GET_IMSI = 3, GSMD_PHONE_GET_MANUF = 4, GSMD_PHONE_GET_MODEL = 5, GSMD_PHONE_GET_REVISION = 6, GSMD_PHONE_GET_SERIAL = 7, GSMD_PHONE_GET_BATTERY = 8, GSMD_PHONE_VIB_ENABLE = 9, GSMD_PHONE_VIB_DISABLE = 10, GSMD_PHONE_POWER_STATUS = 11,};enum gsmd_msg_modem { GSMD_MODEM_POWERUP = 1, GSMD_MODEM_POWERDOWN = 2,};enum gsmd_msg_cb { GSMD_CB_SUBSCRIBE = 1, GSMD_CB_UNSUBSCRIBE = 2,};enum gsmd_msg_network { GSMD_NETWORK_REGISTER = 1, GSMD_NETWORK_SIGQ_GET = 2, GSMD_NETWORK_VMAIL_GET = 3, GSMD_NETWORK_VMAIL_SET = 4, GSMD_NETWORK_OPER_GET = 5, GSMD_NETWORK_OPER_N_GET = 6, GSMD_NETWORK_OPER_LIST = 7, GSMD_NETWORK_CIND_GET = 8, GSMD_NETWORK_DEREGISTER = 9, GSMD_NETWORK_GET_NUMBER = 10, GSMD_NETWORK_PREF_LIST = 11, GSMD_NETWORK_PREF_DEL = 12, GSMD_NETWORK_PREF_ADD = 13, GSMD_NETWORK_PREF_SPACE = 14, GSMD_NETWORK_QUERY_REG = 15,};enum gsmd_msg_sms { GSMD_SMS_LIST = 1, GSMD_SMS_READ = 2, GSMD_SMS_SEND = 3, GSMD_SMS_WRITE = 4, GSMD_SMS_DELETE = 5, GSMD_SMS_GET_MSG_STORAGE = 6, GSMD_SMS_SET_MSG_STORAGE = 7, GSMD_SMS_GET_SERVICE_CENTRE = 8, GSMD_SMS_SET_SERVICE_CENTRE = 9,};/* SMS stat from 3GPP TS 07.05, Clause 3.1 */enum gsmd_msg_sms_type { GSMD_SMS_REC_UNREAD = 0, GSMD_SMS_REC_READ = 1, GSMD_SMS_STO_UNSENT = 2, GSMD_SMS_STO_SENT = 3, GSMD_SMS_ALL = 4,};/* SMS format from 3GPP TS 07.05, Clause 3.2.3 */enum gsmd_msg_sms_fmt { GSMD_SMS_FMT_PDU = 0, GSMD_SMS_FMT_TEXT = 1,};/* Data Coding Scheme, refer to GSM 03.38 Clause 4 */#define B5_COMPRESSED (1<<5)#define B4_CLASSMEANING (1<<4)enum { MESSAGE_CLASS_CLASS0 = 0x00, MESSAGE_CLASS_CLASS1 = 0x01, MESSAGE_CLASS_CLASS2 = 0x02, MESSAGE_CLASS_CLASS3 = 0x03,};enum gsmd_sms_alphabet { ALPHABET_DEFAULT = (0x00<<2), ALPHABET_8BIT = (0x01<<2), ALPHABET_UCS2 = (0x02<<2), ALPHABET_RESERVED = (0x03<<2),};/* bit 1 & bit0 */enum gsmd_sms_msg_class { MSG_CLASS_CLASS0 = 0, MSG_CLASS_CLASS1 = 1, MSG_CLASS_CLASS2 = 2, MSG_CLASS_CLASS3 = 3, MSG_CLASS_NONE = 4,};/* bit 3 & bit 2*/enum gsmd_sms_alphabet_type { SMS_ALPHABET_7_BIT_DEFAULT = 0, SMS_ALPHABET_8_BIT = 1, SMS_ALPHABET_UCS2 = 2, SMS_ALPHABET_RESESRVED = 3,};enum gsmd_sms_msg_compressed { NOT_COMPRESSED = 0, COMPRESSED = 1,};/* message waiting indication */enum gsmd_sms_msg_waiting_group { MESSAGE_WAITING_NONE = 0, MESSAGE_WAITING_DISCARD = 1, MESSAGE_WAITING_STORE = 2, MESSAGE_WAITING_NONE_1111 = 3,};enum gsmd_sms_msg_waiting_type { MESSAGE_WAITING_VOICEMAIL = 0, MESSAGE_WAITING_FAX = 1, MESSAGE_WAITING_EMAIL = 2, MESSAGE_WAITING_OTHER = 3,};enum gsmd_sms_msg_waiting_active { NOT_ACTIVE = 0, ACTIVE = 1,};struct gsmd_sms_datacodingscheme { enum gsmd_sms_msg_class msg_class; enum gsmd_sms_alphabet_type alphabet; enum gsmd_sms_msg_compressed is_compressed; enum gsmd_sms_msg_waiting_group mwi_group; enum gsmd_sms_msg_waiting_active mwi_active; enum gsmd_sms_msg_waiting_type mwi_kind; u_int8_t raw_dcs_data;} __attribute__ ((packed));/* Refer to GSM 03.40 subclause 9.2.3.1 */enum gsmd_sms_tp_mti { GSMD_SMS_TP_MTI_DELIVER = 0, GSMD_SMS_TP_MTI_DELIVER_REPORT = 0, GSMD_SMS_TP_MTI_STATUS_REPORT = 2, GSMD_SMS_TP_MTI_COMMAND = 2, GSMD_SMS_TP_MTI_SUBMIT = 1, GSMD_SMS_TP_MTI_SUBMIT_REPORT = 1, GSMD_SMS_TP_MTI_RESERVED = 3,};/* Refer to GSM 03.40 subclause 9.2.3.2, *//* for SMS-DELIVER, SMS-STATUS-REPORT */enum gsmd_sms_tp_mms { GSMD_SMS_TP_MMS_MORE = (0<<2), GSMD_SMS_TP_MMS_NO_MORE = (1<<2),};/* Refer to GSM 03.40 subclause 9.2.3.3, *//* for SMS-SUBMIT */enum gsmd_sms_tp_vpf { GSMD_SMS_TP_VPF_NOT_PRESENT = (0<<3), GSMD_SMS_TP_VPF_RESERVED = (1<<3), GSMD_SMS_TP_VPF_RELATIVE = (2<<3), GSMD_SMS_TP_VPF_ABSOLUTE = (3<<3),};/* Refer to GSM 03.40 subclause 9.2.3.4, *//* for SMS-DELIVER */enum gsmd_sms_tp_sri { GSMD_SMS_TP_SRI_NOT_RETURN = (0<<5), GSMD_SMS_TP_SRI_STATUS_RETURN = (1<<5),};/* Refer to GSM 03.40 subclause 9.2.3.5, *//* for SMS-SUBMIT, SMS-COMMAND */enum gsmd_sms_tp_srr { GSMD_SMS_TP_SRR_NOT_REQUEST = (0<<5), GSMD_SMS_TP_SRR_STATUS_REQUEST = (1<<5),};/* Refer to GSM 03.40 subclause 9.2.3.17, *//* for SMS-SUBMIT, SMS-DELIVER */enum gsmd_sms_tp_rp { GSMD_SMS_TP_RP_NOT_SET = (0<<7), GSMD_SMS_TP_RP_SET = (1<<7),};/* Refer to GSM 03.40 subclause 9.2.3.23 *//* for SMS-SUBMIT, SMS-DELIVER */enum gsmd_sms_tp_udhi { GSMD_SMS_TP_UDHI_NO_HEADER = (0<<6), GSMD_SMS_TP_UDHI_WITH_HEADER = (1<<6),};/* SMS delflg from 3GPP TS 07.05, Clause 3.5.4 */enum gsmd_msg_sms_delflg { GSMD_SMS_DELFLG_INDEX = 0, GSMD_SMS_DELFLG_READ = 1, GSMD_SMS_DELFLG_READ_SENT = 2, GSMD_SMS_DELFLG_LEAVING_UNREAD = 3, GSMD_SMS_DELFLG_ALL = 4,};enum gsmd_msg_phonebook { GSMD_PHONEBOOK_FIND = 1, GSMD_PHONEBOOK_READ = 2, GSMD_PHONEBOOK_READRG = 3, GSMD_PHONEBOOK_WRITE = 4, GSMD_PHONEBOOK_DELETE = 5, GSMD_PHONEBOOK_GET_SUPPORT = 6, GSMD_PHONEBOOK_LIST_STORAGE = 7, GSMD_PHONEBOOK_SET_STORAGE = 8,};/* Type-of-Address, Numbering-Plan-Identification field, GSM 03.40, 9.1.2.5 */enum gsmd_toa_npi { GSMD_TOA_NPI_UNKNOWN = 0x0, GSMD_TOA_NPI_ISDN = 0x1, GSMD_TOA_NPI_DATA = 0x3, GSMD_TOA_NPI_TELEX = 0x4, GSMD_TOA_NPI_NATIONAL = 0x8, GSMD_TOA_NPI_PRIVATE = 0x9, GSMD_TOA_NPI_ERMES = 0xa, GSMD_TOA_NPI_RESERVED = 0xf,};/* Type-of-Address, Type-of-Number field, GSM 03.40, Subclause 9.1.2.5 */enum gsmd_toa_ton { GSMD_TOA_TON_UNKNOWN = (0<<4), GSMD_TOA_TON_INTERNATIONAL = (1<<4), GSMD_TOA_TON_NATIONAL = (2<<4), GSMD_TOA_TON_NETWORK = (3<<4), GSMD_TOA_TON_SUBSCRIBER = (4<<4), GSMD_TOA_TON_ALPHANUMERIC = (5<<4), GSMD_TOA_TON_ABBREVIATED = (6<<4), __GSMD_TOA_TON_MASK = (7<<4),};/* Type-of-Address, bit 7 always 1 */enum gsmd_toa_reserved { GSMD_TOA_RESERVED = (1<<7),};/* Length from 3GPP TS 04.08, Clause 10.5.4.7 *//* battery connection status from 3GPP TS 07.07 subclause 8.4 */enum gsmd_bat_conn_status { GSMD_BAT_NORMAL = 0, GSMD_BAT_NOT_POWERED = 1, GSMD_BAT_NO_BAT = 2, GSMD_BAT_POWER_FAULT = 3,};#define GSMD_ADDR_MAXLEN 32struct gsmd_addr { u_int8_t type; char number[GSMD_ADDR_MAXLEN+1];
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -