20 #ifndef M2M_M2MB_NET_API_H
21 #define M2M_M2MB_NET_API_H
28 typedef HANDLE M2MB_NET_HANDLE;
33 M2MB_NET_GENERIC_FAILURE
39 M2MB_NET_RAT_UNKNOWN = -1,
41 M2MB_NET_RAT_GSM_Compact,
43 M2MB_NET_RAT_GSM_wEGPRS,
44 M2MB_NET_RAT_UTRAN_wHSDPA,
45 M2MB_NET_RAT_UTRAN_wHSUPA,
46 M2MB_NET_RAT_UTRAN_wHSDPAandHSUPA,
48 M2MB_NET_RAT_EC_GSM_IoT,
49 M2MB_NET_RAT_EUTRAN_NB_S1
54 M2MB_NET_STAT_NOT_REGISTERED,
55 M2MB_NET_STAT_REGISTERED_HOME,
56 M2MB_NET_STAT_SEARCHING,
57 M2MB_NET_STAT_REGISTRATION_DENIED,
58 M2MB_NET_STAT_UNKNOWN,
59 M2MB_NET_STAT_REGISTERED_ROAMING
64 M2MB_NET_AVAILABILITY_UNKNOWN,
65 M2MB_NET_AVAILABILITY_AVAILABLE,
66 M2MB_NET_AVAILABILITY_CURRENT,
67 M2MB_NET_AVAILABILITY_FORBIDDEN
68 } M2MB_NET_AVAILABILITY_E;
73 M2MB_NET_GET_SIGNAL_INFO_RESP,
74 M2MB_NET_GET_BER_RESP,
75 M2MB_NET_GET_CURRENT_OPERATOR_INFO_RESP,
76 M2MB_NET_GET_CURRENT_CELL_LIST_RESP,
77 M2MB_NET_GET_AVAILABLE_NW_LIST_RESP,
78 M2MB_NET_GET_REG_STATUS_INFO_RESP,
79 M2MB_NET_REG_STATUS_IND,
80 M2MB_NET_GET_EDRX_INFO_RESP,
81 M2MB_NET_SET_EDRX_INFO_RESP,
82 M2MB_NET_ENABLE_IND_RESP,
83 M2MB_NET_GET_MODE_PREFERENCE_RESP,
84 M2MB_NET_SET_MODE_PREFERENCE_RESP,
85 M2MB_NET_MODE_PREFERENCE_IND
91 M2MB_NET_SET_ENABLE_IND_ASYNC,
92 M2MB_NET_GET_ENABLE_IND_ASYNC
97 M2MB_NET_RESP_SET_NONE,
98 M2MB_NET_RESP_SET_FULL,
99 M2MB_NET_RESP_SET_SUBSET1,
100 M2MB_NET_RESP_SET_SUBSET2,
101 M2MB_NET_RESP_SET_SUBSET3,
102 M2MB_NET_RESP_SET_SUBSET4,
103 M2MB_NET_RESP_SET_SUBSET5
104 } M2MB_NET_RESP_SET_E;
108 M2MB_NET_LTE_HANDOVER_SERVING,
109 M2MB_NET_LTE_HANDOVER_INTRA_FREQ,
110 M2MB_NET_LTE_HANDOVER_INTER_FREQ,
111 } M2MB_NET_LTE_HANDOVER_E;
115 M2MB_NET_SRV_DOMAIN_NO_SRV,
116 M2MB_NET_SRV_DOMAIN_CS_ONLY,
117 M2MB_NET_SRV_DOMAIN_PS_ONLY,
118 M2MB_NET_SRV_DOMAIN_CS_PS,
119 M2MB_NET_SRV_DOMAIN_CAMPED
120 } M2MB_NET_SRV_DOMAIN_E;
124 M2MB_NET_CELL_TYPE_SERVING,
125 M2MB_NET_CELL_TYPE_NEIGHBOR
126 } M2MB_NET_CELL_TYPE_E;
130 M2MB_NET_ACC_TECH_TYPE_NO_SRV,
131 M2MB_NET_ACC_TECH_TYPE_CDMA_1X,
132 M2MB_NET_ACC_TECH_TYPE_CDMA_1XEVDO,
133 M2MB_NET_ACC_TECH_TYPE_AMPS,
134 M2MB_NET_ACC_TECH_TYPE_GSM,
135 M2MB_NET_ACC_TECH_TYPE_UMTS,
136 M2MB_NET_ACC_TECH_TYPE_WLAN,
137 M2MB_NET_ACC_TECH_TYPE_GPS,
138 M2MB_NET_ACC_TECH_TYPE_LTE,
139 M2MB_NET_ACC_TECH_TYPE_TDSCDMA,
140 M2MB_NET_ACC_TECH_TYPE_LTE_M1,
141 M2MB_NET_ACC_TECH_TYPE_LTE_NB1,
142 M2MB_NET_ACC_TECH_TYPE_MAX
143 } M2MB_NET_ACC_TECH_TYPE_E;
149 } M2MB_NET_ERR_CAUSE_E;
153 M2MB_NET_ENABLE_IND_ASYNC_DISABLED,
154 M2MB_NET_ENABLE_IND_ASYNC_ENABLED
155 } M2MB_NET_ENABLE_IND_ASYNC_E;
159 M2MB_NET_SELECTED_WIRELESS_GERAN = 12,
160 M2MB_NET_SELECTED_WIRELESS_UTRAN = 22,
161 M2MB_NET_SELECTED_WIRELESS_GERAN_UTRAN_EUTRAN = 25,
162 M2MB_NET_SELECTED_WIRELESS_EUTRAN = 28,
163 M2MB_NET_SELECTED_WIRELESS_GERAN_UTRAN = 29,
164 M2MB_NET_SELECTED_WIRELESS_GERAN_EUTRAN = 30,
165 M2MB_NET_SELECTED_WIRELESS_UTRAN_EUTRAN = 31,
166 } M2MB_NET_SELECTED_WIRELESS_NETWORK_E;
170 M2MB_NET_LTE_CIOT_PREFERENCE_CAT_M1 = 0,
171 M2MB_NET_LTE_CIOT_PREFERENCE_NB_IOT = 1,
172 M2MB_NET_LTE_CIOT_PREFERENCE_CAT_M1_NB_IOT = 2,
173 M2MB_NET_LTE_CIOT_PREFERENCE_NB_IOT_CAT_M1 = 3
174 } M2MB_NET_LTE_CIOT_PREFERENCE_E;
178 M2MB_NET_ERR_CAUSE_E err;
183 M2MB_NET_ERR_CAUSE_E err;
184 M2MB_RESULT_E response;
189 M2MB_NET_ERR_CAUSE_E err;
190 M2MB_NET_STAT_E stat;
192 M2MB_NET_SRV_DOMAIN_E srvDomain;
199 M2MB_NET_ERR_CAUSE_E err;
200 M2MB_NET_ACC_TECH_TYPE_E acc_tech;
219 M2MB_NET_ERR_CAUSE_E err;
228 M2MB_NET_ERR_CAUSE_E err;
237 INT32 nSignalStrength;
248 UINT32 timing_advance;
305 M2MB_NET_LTE_HANDOVER_E lteType;
320 M2MB_NET_LTE_HANDOVER_E lteType;
337 M2MB_NET_CELL_TYPE_E cellType;
338 M2MB_NET_RAT_E cellRat;
339 M2MB_NET_RESP_SET_E respSet;
343 BOOLEAN lte_ue_in_idle;
348 M2MB_NET_ERR_CAUSE_E err;
349 UINT16 neighbors_size;
355 M2MB_NET_ERR_CAUSE_E err;
365 M2MB_NET_AVAILABILITY_E networkAv;
372 M2MB_NET_ERR_CAUSE_E err;
373 UINT16 availableNetworks_size;
379 M2MB_NET_SELECTED_WIRELESS_NETWORK_E selectedWirelessNetwork;
380 M2MB_NET_LTE_CIOT_PREFERENCE_E lte_ciot_preference;
387 M2MB_NET_ERR_CAUSE_E err;
391 typedef void ( *m2mb_net_ind_callback )( M2MB_NET_HANDLE h, M2MB_NET_IND_E net_event, UINT16 resp_size,
void *resp_struct,
void *userdata );
436 M2MB_RESULT_E
m2mb_net_init( M2MB_NET_HANDLE *h, m2mb_net_ind_callback callback,
void *userdata );
524 M2MB_RESULT_E
m2mb_net_conf( M2MB_NET_HANDLE h, UINT8 argc, ... );
1210 M2MB_RESULT_E
m2mb_net_set_edrx_info( M2MB_NET_HANDLE h, M2MB_NET_ACC_TECH_TYPE_E acc_tech, UINT8 edrx, UINT8 enabled );