blob: 66cd4f0008a0cf4fd4cefa9e9893f0a28e2065ce [file] [log] [blame]
Amit Mahajan4cb7b842016-08-12 15:25:10 -07001/*
2 * Copyright (C) 2016 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17package android.hardware.radio@1.0;
18
Sanket Padawe76372492016-10-27 13:20:49 -070019import IRadioResponse;
20import IRadioIndication;
Amit Mahajan4cb7b842016-08-12 15:25:10 -070021
Andreas Huber3e4acb82017-03-28 14:40:58 -070022/**
Sanket Padawe76372492016-10-27 13:20:49 -070023 * This interface is used by telephony & telecom to talk to cellular radio.
Sanket Padawed52335c2016-11-03 16:46:32 -070024 * All the functions have minimum one parameter:
Sanket Padawe76372492016-10-27 13:20:49 -070025 * serial: which corresponds to serial no. of request. Serial numbers must only be memorized for the
26 * duration of a method call. If clients provide colliding serials (including passing the same
27 * serial to different methods), multiple responses (one for each method call) must still be served.
28 */
Amit Mahajan4cb7b842016-08-12 15:25:10 -070029interface IRadio {
Andreas Huber3e4acb82017-03-28 14:40:58 -070030 /**
Sanket Padawe76372492016-10-27 13:20:49 -070031 * Set response functions for radio requests & radio indications.
Amit Mahajan4cb7b842016-08-12 15:25:10 -070032 *
Sanket Padawe76372492016-10-27 13:20:49 -070033 * @param radioResponse Object containing response functions
34 * @param radioIndication Object containing radio indications
Amit Mahajan4cb7b842016-08-12 15:25:10 -070035 */
Sanket Padawed52335c2016-11-03 16:46:32 -070036 setResponseFunctions(IRadioResponse radioResponse,
Sanket Padawe76372492016-10-27 13:20:49 -070037 IRadioIndication radioIndication);
Amit Mahajan4cb7b842016-08-12 15:25:10 -070038
Andreas Huber3e4acb82017-03-28 14:40:58 -070039 /**
Amit Mahajan4cb7b842016-08-12 15:25:10 -070040 * Requests status of the ICC card
41 *
Sanket Padawe76372492016-10-27 13:20:49 -070042 * @param serial Serial number of request.
Amit Mahajan4cb7b842016-08-12 15:25:10 -070043 *
Sanket Padawe76372492016-10-27 13:20:49 -070044 * Response function is IRadioResponse.getIccCardStatusResponse()
45 *
46 */
Sanket Padawed52335c2016-11-03 16:46:32 -070047 oneway getIccCardStatus(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -070048
Andreas Huber3e4acb82017-03-28 14:40:58 -070049 /**
Sanket Padawe76372492016-10-27 13:20:49 -070050 * Supplies ICC PIN. Only called if CardStatus has AppState.PIN state
Amit Mahajan4cb7b842016-08-12 15:25:10 -070051 *
Sanket Padawe76372492016-10-27 13:20:49 -070052 * @param serial Serial number of request.
53 * @param pin PIN value
54 * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
55 *
56 * Response function is IRadioResponse.supplyIccPinForAppResponse()
57 *
Amit Mahajan4cb7b842016-08-12 15:25:10 -070058 */
Sanket Padawed52335c2016-11-03 16:46:32 -070059 oneway supplyIccPinForApp(int32_t serial, string pin, string aid);
Sanket Padawe76372492016-10-27 13:20:49 -070060
Andreas Huber3e4acb82017-03-28 14:40:58 -070061 /**
Sanket Padawe76372492016-10-27 13:20:49 -070062 * Supplies ICC PUK and new PIN.
63 *
Sanket Padawe76372492016-10-27 13:20:49 -070064 * @param serial Serial number of request.
65 * @param puk PUK value
66 * @param pin New PIN value
67 * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
68 *
69 * Response function is IRadioResponse.supplyIccPukForAppResponse()
70 *
71 */
Sanket Padawed52335c2016-11-03 16:46:32 -070072 oneway supplyIccPukForApp(int32_t serial, string puk, string pin, string aid);
Sanket Padawe76372492016-10-27 13:20:49 -070073
Andreas Huber3e4acb82017-03-28 14:40:58 -070074 /**
Sanket Padawe76372492016-10-27 13:20:49 -070075 * Supplies ICC PIN2. Only called following operation where SIM_PIN2 was
76 * returned as a a failure from a previous operation.
77 *
Sanket Padawe76372492016-10-27 13:20:49 -070078 * @param serial Serial number of request.
79 * @param pin2 PIN2 value
80 * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
81 *
82 * Response function is IRadioResponse.supplyIccPin2ForAppResponse()
83 *
84 */
Sanket Padawed52335c2016-11-03 16:46:32 -070085 oneway supplyIccPin2ForApp(int32_t serial, string pin2, string aid);
Sanket Padawe76372492016-10-27 13:20:49 -070086
Andreas Huber3e4acb82017-03-28 14:40:58 -070087 /**
Sanket Padawe76372492016-10-27 13:20:49 -070088 * Supplies ICC PUK2 and new PIN2.
89 *
Sanket Padawe76372492016-10-27 13:20:49 -070090 * @param serial Serial number of request.
91 * @param puk2 PUK2 value
92 * @param pin2 New PIN2 value
93 * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
94 *
95 * Response function is IRadioResponse.supplyIccPuk2ForAppResponse()
96 *
97 */
Sanket Padawed52335c2016-11-03 16:46:32 -070098 oneway supplyIccPuk2ForApp(int32_t serial, string puk2, string pin2,
Sanket Padawe76372492016-10-27 13:20:49 -070099 string aid);
100
Andreas Huber3e4acb82017-03-28 14:40:58 -0700101 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700102 * Supplies old ICC PIN and new PIN.
103 *
Sanket Padawe76372492016-10-27 13:20:49 -0700104 * @param serial Serial number of request.
105 * @param oldPin Old pin value
106 * @param newPin New pin value
107 * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
108 *
109 * Response function is IRadioResponse.changeIccPinForAppResponse()
110 *
111 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700112 oneway changeIccPinForApp(int32_t serial, string oldPin, string newPin,
Sanket Padawe76372492016-10-27 13:20:49 -0700113 string aid);
114
Andreas Huber3e4acb82017-03-28 14:40:58 -0700115 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700116 * Supplies old ICC PIN2 and new PIN2.
117 *
Sanket Padawe76372492016-10-27 13:20:49 -0700118 * @param serial Serial number of request.
119 * @param oldPin2 Old pin2 value
120 * @param newPin2 New pin2 value
121 * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
122 *
123 * Response function is IRadioResponse.changeIccPin2ForAppResponse()
124 *
125 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700126 oneway changeIccPin2ForApp(int32_t serial, string oldPin2, string newPin2,
Sanket Padawe76372492016-10-27 13:20:49 -0700127 string aid);
128
Andreas Huber3e4acb82017-03-28 14:40:58 -0700129 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700130 * Requests that network personalization be deactivated
131 *
Sanket Padawe76372492016-10-27 13:20:49 -0700132 * @param serial Serial number of request.
133 * @param netPin Network depersonlization code
134 *
135 * Response function is IRadioResponse.supplyNetworkDepersonalizationResponse()
136 *
137 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700138 oneway supplyNetworkDepersonalization(int32_t serial, string netPin);
Sanket Padawe76372492016-10-27 13:20:49 -0700139
Andreas Huber3e4acb82017-03-28 14:40:58 -0700140 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700141 * Requests current call list
142 *
Sanket Padawe76372492016-10-27 13:20:49 -0700143 * @param serial Serial number of request.
144 *
145 * Response function is IRadioResponse.getCurrentCallsResponse()
146 *
147 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700148 oneway getCurrentCalls(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700149
Andreas Huber3e4acb82017-03-28 14:40:58 -0700150 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700151 * Initiate voice call.
152 * This method is never used for supplementary service codes
153 *
Sanket Padawe76372492016-10-27 13:20:49 -0700154 * @param serial Serial number of request.
155 * @param dialInfo Dial struct
156 *
157 * Response function is IRadioResponse.dialResponse()
158 *
159 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700160 oneway dial(int32_t serial, Dial dialInfo);
Sanket Padawe76372492016-10-27 13:20:49 -0700161
Andreas Huber3e4acb82017-03-28 14:40:58 -0700162 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700163 * Get the SIM IMSI
164 * Only valid when radio state is "RADIO_STATE_ON"
165 *
Sanket Padawe76372492016-10-27 13:20:49 -0700166 * @param serial Serial number of request.
167 * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
168 *
169 * Response function is IRadioResponse.getImsiForAppResponse()
170 *
171 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700172 oneway getImsiForApp(int32_t serial, string aid);
Sanket Padawe76372492016-10-27 13:20:49 -0700173
Andreas Huber3e4acb82017-03-28 14:40:58 -0700174 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700175 * Hang up a specific line (like AT+CHLD=1x)
176 * After this HANGUP request returns, Radio must show the connection is NOT
177 * active anymore in next requestGetCurrentCalls query.
178 *
Sanket Padawe76372492016-10-27 13:20:49 -0700179 * @param serial Serial number of request.
180 * @param gsmIndex Connection index (value of 'x' in CHLD above)
181 *
182 * Response function is IRadioResponse.hangupResponse()
183 *
184 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700185 oneway hangup(int32_t serial, int32_t gsmIndex);
Sanket Padawe76372492016-10-27 13:20:49 -0700186
Andreas Huber3e4acb82017-03-28 14:40:58 -0700187 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700188 * Hang up waiting or held (like AT+CHLD=0)
189 * After this HANGUP request returns, Radio must show the connection is NOT
190 * active anymore in next getCurrentCalls() query.
191 *
Sanket Padawe76372492016-10-27 13:20:49 -0700192 * @param serial Serial number of request.
193 *
194 * Response function is IRadioResponse.hangupWaitingOrBackgroundResponse()
195 *
196 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700197 oneway hangupWaitingOrBackground(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700198
Andreas Huber3e4acb82017-03-28 14:40:58 -0700199 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700200 * Hang up waiting or held (like AT+CHLD=1)
201 * After this HANGUP request returns, Radio must show the connection is NOT
202 * active anymore in next getCurrentCalls query.
203 *
Sanket Padawe76372492016-10-27 13:20:49 -0700204 * @param serial Serial number of request.
205 *
206 * Response function is IRadioResponse.hangupForegroundResumeBackgroundResponse()
207 *
208 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700209 oneway hangupForegroundResumeBackground(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700210
Andreas Huber3e4acb82017-03-28 14:40:58 -0700211 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700212 * Switch waiting or holding call and active call (like AT+CHLD=2)
213 * State transitions must be as follows:
214 *
215 * Call transitions must happen as shown below.
216 *
217 * BEFORE AFTER
218 * Call 1 Call 2 Call 1 Call 2
219 * ACTIVE HOLDING HOLDING ACTIVE
220 * ACTIVE WAITING HOLDING ACTIVE
221 * HOLDING WAITING HOLDING ACTIVE
222 * ACTIVE IDLE HOLDING IDLE
223 * IDLE IDLE IDLE IDLE
224 *
Sanket Padawe76372492016-10-27 13:20:49 -0700225 * @param serial Serial number of request.
226 *
227 * Response function is IRadioResponse.switchWaitingOrHoldingAndActiveResponse()
228 *
229 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700230 oneway switchWaitingOrHoldingAndActive(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700231
Andreas Huber3e4acb82017-03-28 14:40:58 -0700232 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700233 * Conference holding and active (like AT+CHLD=3)
234 *
Sanket Padawe76372492016-10-27 13:20:49 -0700235 * @param serial Serial number of request.
236 *
237 * Response function is IRadioResponse.conferenceResponse()
238 *
239 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700240 oneway conference(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700241
Andreas Huber3e4acb82017-03-28 14:40:58 -0700242 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700243 * Send UDUB (user determined user busy) to ringing or
244 * waiting call answer)
245 *
Sanket Padawe76372492016-10-27 13:20:49 -0700246 * @param serial Serial number of request.
247 *
248 * Response function is IRadioResponse.rejectCallResponse()
249 *
250 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700251 oneway rejectCall(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700252
Andreas Huber3e4acb82017-03-28 14:40:58 -0700253 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700254 * Requests the failure cause code for the most recently terminated call.
255 *
Sanket Padawe76372492016-10-27 13:20:49 -0700256 * @param serial Serial number of request.
257 *
258 * Response function is IRadioResponse.getLastCallFailCauseResponse()
259 *
260 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700261 oneway getLastCallFailCause(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700262
Andreas Huber3e4acb82017-03-28 14:40:58 -0700263 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700264 * Requests current signal strength and associated information.
265 * Must succeed if radio is on.
266 *
Sanket Padawe76372492016-10-27 13:20:49 -0700267 * @param serial Serial number of request.
268 *
269 * Response function is IRadioResponse.getSignalStrengthResponse()
270 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700271 oneway getSignalStrength(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700272
Andreas Huber3e4acb82017-03-28 14:40:58 -0700273 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700274 * Request current voice registration state
275 *
Sanket Padawe76372492016-10-27 13:20:49 -0700276 * @param serial Serial number of request.
277 *
278 * Response function is IRadioResponse.getVoiceRegistrationStateResponse()
279 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700280 oneway getVoiceRegistrationState(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700281
Andreas Huber3e4acb82017-03-28 14:40:58 -0700282 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700283 * Request current data registration state
284 *
Sanket Padawe76372492016-10-27 13:20:49 -0700285 * @param serial Serial number of request.
286 *
287 * Response function is IRadioResponse.getDataRegistrationStateResponse()
288 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700289 oneway getDataRegistrationState(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700290
Andreas Huber3e4acb82017-03-28 14:40:58 -0700291 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700292 * Request current operator ONS or EONS
293 *
Sanket Padawe76372492016-10-27 13:20:49 -0700294 * @param serial Serial number of request.
295 *
296 * Response function is IRadioResponse.getOperatorResponse()
297 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700298 oneway getOperator(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700299
Andreas Huber3e4acb82017-03-28 14:40:58 -0700300 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700301 * Toggle radio on and off (for "airplane" mode)
302 * If the radio is turned off/on the radio modem subsystem
303 * is expected return to an initialized state. For instance,
304 * any voice and data calls must be terminated and all associated
305 * lists emptied.
306 *
Sanket Padawe76372492016-10-27 13:20:49 -0700307 * @param serial Serial number of request.
308 * @param on To turn on radio -> on = true, to turn off radio -> on = false.
309 *
310 * Response function is IRadioResponse.setRadioPowerResponse()
311 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700312 oneway setRadioPower(int32_t serial, bool on);
Sanket Padawe76372492016-10-27 13:20:49 -0700313
Andreas Huber3e4acb82017-03-28 14:40:58 -0700314 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700315 * Send a DTMF tone
316 *
317 * If the implementation is currently playing a tone requested via
318 * startDtmf(), that tone must be cancelled and the new tone
319 * must be played instead
320 *
Sanket Padawe76372492016-10-27 13:20:49 -0700321 * @param serial Serial number of request.
322 * @param s string with single char having one of 12 values: 0-9, *, #
323 *
324 * Response function is IRadioResponse.sendDtmfResponse()
325 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700326 oneway sendDtmf(int32_t serial, string s);
Sanket Padawe76372492016-10-27 13:20:49 -0700327
Andreas Huber3e4acb82017-03-28 14:40:58 -0700328 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700329 * Send an SMS message
330 *
Sanket Padawe76372492016-10-27 13:20:49 -0700331 * @param serial Serial number of request.
Sanket Padawed52335c2016-11-03 16:46:32 -0700332 * @param message GsmSmsMessage as defined in types.hal
Sanket Padawe76372492016-10-27 13:20:49 -0700333 *
334 * Response function is IRadioResponse.sendSmsResponse()
335 *
336 * Based on the return error, caller decides to resend if sending sms
337 * fails. RadioError:SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
338 * and RadioError:GENERIC_FAILURE means no retry (i.e. error cause is 500)
339 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700340 oneway sendSms(int32_t serial, GsmSmsMessage message);
Sanket Padawe76372492016-10-27 13:20:49 -0700341
Andreas Huber3e4acb82017-03-28 14:40:58 -0700342 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700343 * Send an SMS message. Identical to sendSms,
344 * except that more messages are expected to be sent soon. If possible,
345 * keep SMS relay protocol link open (eg TS 27.005 AT+CMMS command)
346 *
Sanket Padawe76372492016-10-27 13:20:49 -0700347 * @param serial Serial number of request.
Sanket Padawed52335c2016-11-03 16:46:32 -0700348 * @param message GsmSmsMessage as defined in types.hal
Sanket Padawe76372492016-10-27 13:20:49 -0700349 *
350 * Response function is IRadioResponse.sendSMSExpectMoreResponse()
351 *
352 * Based on the return error, caller decides to resend if sending sms
353 * fails. RadioError:SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
354 * and RadioError:GENERIC_FAILURE means no retry (i.e. error cause is 500)
355 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700356 oneway sendSMSExpectMore(int32_t serial, GsmSmsMessage message);
Sanket Padawe76372492016-10-27 13:20:49 -0700357
Andreas Huber3e4acb82017-03-28 14:40:58 -0700358 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700359 * Setup a packet data connection. If DataCallResponse.status
360 * return DataCallFailCause:NONE it is added to the list of data calls and a
361 * unsolDataCallListChanged() is sent. The call remains in the
362 * list until deactivateDataCall() is issued or the
363 * radio is powered off/on. This list is returned by getDataCallList()
364 * and dataCallListChanged().
365 *
Sanket Padawed52335c2016-11-03 16:46:32 -0700366 * The Radio is expected to:
Sanket Padawe76372492016-10-27 13:20:49 -0700367 * - Create one data call context.
368 * - Create and configure a dedicated interface for the context
369 * - The interface must be point to point.
370 * - The interface is configured with one or more addresses and
371 * is capable of sending and receiving packets. The prefix length
372 * of the addresses must be /32 for IPv4 and /128 for IPv6.
373 * - Must NOT change the linux routing table.
374 * - Support up to getDataRegistrationState response[5]
375 * number of simultaneous data call contexts.
376 *
Sanket Padawe76372492016-10-27 13:20:49 -0700377 * @param serial Serial number of request.
Jack Yued7ef812017-01-24 11:56:52 -0800378 * @param radioTechnology Radio technology to use.
379 * @param dataProfileInfo data profile info.
380 * @param modemCognitive Indicating this profile was sent to the modem through setDataProfile
Jack Yu439a6e72017-02-23 12:40:56 -0800381 * earlier.
Jack Yued7ef812017-01-24 11:56:52 -0800382 * @param roamingAllowed Indicating data roaming is allowed or not by the user.
Jack Yu439a6e72017-02-23 12:40:56 -0800383 * @param isRoaming Indicating the device is roaming or not. The 'protocol' parameter in the old
384 * RIL API must be filled accordingly based on the roaming condition.
385 * Note this is for backward compatibility with the old radio modem. The modem
386 * must not use this param for any other reason.
Sanket Padawe76372492016-10-27 13:20:49 -0700387 *
Rambo Wangb6e35462021-02-18 20:55:26 -0800388 * Response function is IRadioResponse.setupDataCallResponse() which may return
389 * RadioError:REQUEST_NOT_SUPPORTED if @1.2::IRadio or higher is supported.
390 *
391 * DEPRECATED in @1.2 or higher, use @1.2::IRadio.setupDataCall_1_2() instead.
Sanket Padawe76372492016-10-27 13:20:49 -0700392 */
Jack Yued7ef812017-01-24 11:56:52 -0800393 oneway setupDataCall(int32_t serial, RadioTechnology radioTechnology,
Jack Yu439a6e72017-02-23 12:40:56 -0800394 DataProfileInfo dataProfileInfo, bool modemCognitive, bool roamingAllowed,
395 bool isRoaming);
Sanket Padawe76372492016-10-27 13:20:49 -0700396
Andreas Huber3e4acb82017-03-28 14:40:58 -0700397 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700398 * Request ICC I/O operation.
399 * This is similar to the TS 27.007 "restricted SIM" operation
400 * where it assumes all of the EF selection must be done by the
401 * callee
402 *
403 * Arguments and responses that are unused for certain
404 * values of "command" must be ignored or set to empty string
405 *
Sanket Padawe76372492016-10-27 13:20:49 -0700406 * @param serial Serial number of request.
407 * @param iccIo IccIo
408 *
409 * Please note that IccIo has a "PIN2" field which may be empty string,
410 * or may specify a PIN2 for operations that require a PIN2 (eg
411 * updating FDN records)
412 *
413 * Response function is IRadioResponse.iccIOForAppResponse()
414 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700415 oneway iccIOForApp(int32_t serial, IccIo iccIo);
Sanket Padawe76372492016-10-27 13:20:49 -0700416
Andreas Huber3e4acb82017-03-28 14:40:58 -0700417 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700418 * Send a USSD message.
419 *
420 * If a USSD session already exists, the message must be sent in the
421 * context of that session. Otherwise, a new session must be created.
422 *
423 * The network reply must be reported via unsolOnUssd
424 *
425 * Only one USSD session must exist at a time, and the session is assumed
426 * to exist until:
427 * a) The android system invokes cancelUssd()
428 * b) The implementation sends a unsolOnUssd() with a type code
429 * of "0" (USSD-Notify/no further action) or "2" (session terminated)
430 *
Sanket Padawe76372492016-10-27 13:20:49 -0700431 * @param serial Serial number of request.
432 * @param ussd string containing the USSD request in UTF-8 format
433 *
434 * Response function is IRadioResponse.sendUssdResponse()
435 *
436 * See also requestCancelUssd, unsolOnUssd
437 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700438 oneway sendUssd(int32_t serial, string ussd);
Sanket Padawe76372492016-10-27 13:20:49 -0700439
Andreas Huber3e4acb82017-03-28 14:40:58 -0700440 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700441 * Cancel the current USSD session if one exists.
442 *
Sanket Padawe76372492016-10-27 13:20:49 -0700443 * @param serial Serial number of request.
444 *
445 * Response function is IRadioResponse.cancelPendingUssdResponse()
446 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700447 oneway cancelPendingUssd(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700448
Andreas Huber3e4acb82017-03-28 14:40:58 -0700449 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700450 * Gets current CLIR status
451 *
Sanket Padawe76372492016-10-27 13:20:49 -0700452 * @param serial Serial number of request.
453 *
454 * Response function is IRadioResponse.getClirResponse()
455 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700456 oneway getClir(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700457
Andreas Huber3e4acb82017-03-28 14:40:58 -0700458 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700459 * Set current CLIR status
460 *
Sanket Padawe76372492016-10-27 13:20:49 -0700461 * @param serial Serial number of request.
462 * @param status "n" parameter from TS 27.007 7.7
463 *
464 * Response function is IRadioResponse.setClirResponse()
465 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700466 oneway setClir(int32_t serial, int32_t status);
Sanket Padawe76372492016-10-27 13:20:49 -0700467
Andreas Huber3e4acb82017-03-28 14:40:58 -0700468 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700469 * Request call forward status.
470 *
Sanket Padawe76372492016-10-27 13:20:49 -0700471 * @param serial Serial number of request.
472 * @param callInfo CallForwardInfo
473 *
474 * Response function is IRadioResponse.getCallForwardStatusResponse()
475 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700476 oneway getCallForwardStatus(int32_t serial,
Sanket Padawe76372492016-10-27 13:20:49 -0700477 CallForwardInfo callInfo);
478
Andreas Huber3e4acb82017-03-28 14:40:58 -0700479 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700480 * Configure call forward rule
481 *
Sanket Padawe76372492016-10-27 13:20:49 -0700482 * @param serial Serial number of request.
483 * @param callInfo CallForwardInfo
484 *
485 * Response function is IRadioResponse.setCallForwardResponse()
486 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700487 oneway setCallForward(int32_t serial, CallForwardInfo callInfo);
Sanket Padawe76372492016-10-27 13:20:49 -0700488
Andreas Huber3e4acb82017-03-28 14:40:58 -0700489 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700490 * Query current call waiting state
491 *
Sanket Padawe76372492016-10-27 13:20:49 -0700492 * @param serial Serial number of request.
493 * @param serviceClass Service class is the TS 27.007 service class to query
494 *
495 * Response function is IRadioResponse.getCallWaitingResponse()
496 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700497 oneway getCallWaiting(int32_t serial, int32_t serviceClass);
Sanket Padawe76372492016-10-27 13:20:49 -0700498
Andreas Huber3e4acb82017-03-28 14:40:58 -0700499 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700500 * Configure current call waiting state
501 *
Sanket Padawe76372492016-10-27 13:20:49 -0700502 * @param serial Serial number of request.
503 * @param enable is false for "disabled" and true for "enabled"
504 * @param serviceClass is the TS 27.007 service class bit vector of services to modify
505 *
506 * Response function is IRadioResponse.setCallWaitingResponse()
507 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700508 oneway setCallWaiting(int32_t serial, bool enable,
Sanket Padawe76372492016-10-27 13:20:49 -0700509 int32_t serviceClass);
510
Andreas Huber3e4acb82017-03-28 14:40:58 -0700511 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700512 * Acknowledge successful or failed receipt of SMS previously indicated
513 * via unsolResponseNewSms
514 *
Sanket Padawe76372492016-10-27 13:20:49 -0700515 * @param serial Serial number of request.
516 * @param success is true on successful receipt
517 * (basically, AT+CNMA=1 from TS 27.005 is 0 on failed receipt
518 * (basically, AT+CNMA=2 from TS 27.005)
519 * @param cause: if success is false, this contains the failure cause as defined
520 * in TS 23.040, 9.2.3.22.
521 *
522 * Response function is IRadioResponse.acknowledgeLastIncomingGsmSmsResponse()
523 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700524 oneway acknowledgeLastIncomingGsmSms(int32_t serial, bool success,
Sanket Padawe76372492016-10-27 13:20:49 -0700525 SmsAcknowledgeFailCause cause);
526
Andreas Huber3e4acb82017-03-28 14:40:58 -0700527 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700528 * Answer incoming call
529 * Must not be called for WAITING calls.
530 * switchWaitingOrHoldingAndActive() must be used in this case
531 * instead
532 *
Sanket Padawe76372492016-10-27 13:20:49 -0700533 * @param serial Serial number of request.
534 *
535 * Response function is IRadioResponse.acceptCallResponse()
536 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700537 oneway acceptCall(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700538
Andreas Huber3e4acb82017-03-28 14:40:58 -0700539 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700540 * Deactivate packet data connection and remove from the
541 * data call list if RadioError:NONE is returned. Any other return
542 * values must also try to remove the call from the list. An
543 * unsolDataCallListChanged must be
544 * issued because of an deactivateDataCall.
545 *
Sanket Padawe76372492016-10-27 13:20:49 -0700546 * @param serial Serial number of request.
547 * @param cid Indicates CID
548 * @param reasonRadioShutDown Indicates Disconnect Reason
549 * false => No specific reason specified
550 * true => Radio shutdown requested
551 *
Rambo Wangb6e35462021-02-18 20:55:26 -0800552 * Response function is IRadioResponse.deactivateDataCallResponse() which may return
553 * RadioError:REQUEST_NOT_SUPPORTED if @1.2::IRadio or higher is supported.
554 *
555 * DEPRECATED in @1.2 or higher, use @1.2::IRadio.deactivateDataCall_1_2() instead.
Sanket Padawe76372492016-10-27 13:20:49 -0700556 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700557 oneway deactivateDataCall(int32_t serial, int32_t cid,
Sanket Padawe76372492016-10-27 13:20:49 -0700558 bool reasonRadioShutDown);
559
Andreas Huber3e4acb82017-03-28 14:40:58 -0700560 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700561 * Query the status of a facility lock state
562 *
Sanket Padawe76372492016-10-27 13:20:49 -0700563 * @param serial Serial number of request.
564 * @param facility is the facility string code from TS 27.007 7.4
565 * (eg "AO" for BAOC, "SC" for SIM lock)
566 * @param password is the password, or "" if not required
567 * @param serviceClass is the TS 27.007 service class bit vector of services to query
568 * @param appId is AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
569 * This is only applicable in the case of Fixed Dialing Numbers (FDN) requests.
570 *
571 * Response function is IRadioResponse.getFacilityLockForAppResponse()
572 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700573 oneway getFacilityLockForApp(int32_t serial, string facility,
Sanket Padawe76372492016-10-27 13:20:49 -0700574 string password, int32_t serviceClass, string appId);
575
Andreas Huber3e4acb82017-03-28 14:40:58 -0700576 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700577 * Enable/disable one facility lock
578 *
Sanket Padawe76372492016-10-27 13:20:49 -0700579 * @param serial Serial number of request.
580 * @param facility is the facility string code from TS 27.007 7.4 (eg "AO" for BAOC)
581 * @param lockState false for "unlock" and true for "lock"
582 * @param password is the password
583 * @param serviceClass is string representation of decimal TS 27.007
584 * service class bit vector. Eg, the string
585 * "1" means "set this facility for voice services"
586 * @param appId is AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
587 * This is only applicable in the case of Fixed Dialing Numbers (FDN) requests.
588 *
589 * Response function is IRadioResponse.setFacilityLockForAppResponse()
590 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700591 oneway setFacilityLockForApp(int32_t serial, string facility, bool lockState,
Sanket Padawe76372492016-10-27 13:20:49 -0700592 string password, int32_t serviceClass, string appId);
593
Andreas Huber3e4acb82017-03-28 14:40:58 -0700594 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700595 * Change call barring facility password
596 *
Sanket Padawe76372492016-10-27 13:20:49 -0700597 * @param serial Serial number of request.
598 * @param facility facility string code from TS 27.007 7.4 (eg "AO" for BAOC)
599 * @param oldPassword old password
600 * @param newPassword new password
601 *
602 * Response function is IRadioResponse.setBarringPasswordResponse()
603 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700604 oneway setBarringPassword(int32_t serial, string facility,
Sanket Padawe76372492016-10-27 13:20:49 -0700605 string oldPassword, string newPassword);
606
Andreas Huber3e4acb82017-03-28 14:40:58 -0700607 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700608 * Query current network selection mode
609 *
Sanket Padawe76372492016-10-27 13:20:49 -0700610 * @param serial Serial number of request.
611 *
612 * Response function is IRadioResponse.getNetworkSelectionModeResponse()
613 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700614 oneway getNetworkSelectionMode(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700615
Andreas Huber3e4acb82017-03-28 14:40:58 -0700616 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700617 * Specify that the network must be selected automatically.
618 * This request must not respond until the new operator is selected and registered.
619 *
Sanket Padawe76372492016-10-27 13:20:49 -0700620 * @param serial Serial number of request.
621 *
622 * Response function is IRadioResponse.setNetworkSelectionModeAutomaticResponse()
623 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700624 oneway setNetworkSelectionModeAutomatic(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700625
Andreas Huber3e4acb82017-03-28 14:40:58 -0700626 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700627 * Manually select a specified network.
628 * This request must not respond until the new operator is selected and registered.
629 *
Sanket Padawe76372492016-10-27 13:20:49 -0700630 * @param serial Serial number of request.
631 * @param operatorNumeric string specifying MCCMNC of network to select (eg "310170")
632 *
633 * Response function is IRadioResponse.setNetworkSelectionModeManualResponse()
634 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700635 oneway setNetworkSelectionModeManual(int32_t serial, string operatorNumeric);
Sanket Padawe76372492016-10-27 13:20:49 -0700636
Andreas Huber3e4acb82017-03-28 14:40:58 -0700637 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700638 * Scans for available networks
Sanket Padawe76372492016-10-27 13:20:49 -0700639 *
Sanket Padawe76372492016-10-27 13:20:49 -0700640 * @param serial Serial number of request.
641 *
642 * Response function is IRadioResponse.getAvailableNetworksResponse()
643 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700644 oneway getAvailableNetworks(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700645
Andreas Huber3e4acb82017-03-28 14:40:58 -0700646 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700647 * Start playing a DTMF tone. Continue playing DTMF tone until
648 * stopDtmf is received.
649 * If a startDtmf() is received while a tone is currently playing,
650 * it must cancel the previous tone and play the new one.
651 *
Sanket Padawe76372492016-10-27 13:20:49 -0700652 * @param serial Serial number of request.
653 * @param s string having a single character with one of 12 values: 0-9,*,#
654 *
655 * Response function is IRadioResponse.startDtmfResponse()
656 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700657 oneway startDtmf(int32_t serial, string s);
Sanket Padawe76372492016-10-27 13:20:49 -0700658
Andreas Huber3e4acb82017-03-28 14:40:58 -0700659 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700660 * Stop playing a currently playing DTMF tone.
661 *
Sanket Padawe76372492016-10-27 13:20:49 -0700662 * @param serial Serial number of request.
663 *
664 * Response function is IRadioResponse.stopDtmfResponse()
665 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700666 oneway stopDtmf(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700667
Andreas Huber3e4acb82017-03-28 14:40:58 -0700668 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700669 * Return string value indicating baseband version, eg response from AT+CGMR
670 *
Sanket Padawe76372492016-10-27 13:20:49 -0700671 * @param serial Serial number of request.
672 *
673 * Response function is IRadioResponse.getBasebandVersionResponse()
674 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700675 oneway getBasebandVersion(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700676
Andreas Huber3e4acb82017-03-28 14:40:58 -0700677 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700678 * Separate a party from a multiparty call placing the multiparty call
679 * (less the specified party) on hold and leaving the specified party
680 * as the only other member of the current (active) call
681 *
682 * Like AT+CHLD=2x
683 *
684 * See TS 22.084 1.3.8.2 (iii)
685 * TS 22.030 6.5.5 "Entering "2X followed by send"
686 * TS 27.007 "AT+CHLD=2x"
687 *
Sanket Padawe76372492016-10-27 13:20:49 -0700688 * @param serial Serial number of request.
689 * @param gsmIndex contains Connection index (value of 'x' in CHLD above)
690 *
691 * Response function is IRadioResponse.separateConnectionResponse()
692 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700693 oneway separateConnection(int32_t serial, int32_t gsmIndex);
Sanket Padawe76372492016-10-27 13:20:49 -0700694
Andreas Huber3e4acb82017-03-28 14:40:58 -0700695 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700696 * Turn on or off uplink (microphone) mute.
697 * Must only be sent while voice call is active.
698 * Must always be reset to "disable mute" when a new voice call is initiated
699 *
Sanket Padawe76372492016-10-27 13:20:49 -0700700 * @param serial Serial number of request.
701 * @param enable true for "enable mute" and false for "disable mute"
702 *
703 * Response function is IRadioResponse.setMuteResponse()
704 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700705 oneway setMute(int32_t serial, bool enable);
Sanket Padawe76372492016-10-27 13:20:49 -0700706
Andreas Huber3e4acb82017-03-28 14:40:58 -0700707 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700708 * Queries the current state of the uplink mute setting
709 *
Sanket Padawe76372492016-10-27 13:20:49 -0700710 * @param serial Serial number of request.
711 *
712 * Response function is IRadioResponse.getMuteResponse()
713 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700714 oneway getMute(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700715
Andreas Huber3e4acb82017-03-28 14:40:58 -0700716 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700717 * Queries the status of the CLIP supplementary service
718 * (for MMI code "*#30#")
719 *
Sanket Padawe76372492016-10-27 13:20:49 -0700720 * @param serial Serial number of request.
721 *
722 * Response function is IRadioResponse.getClipResponse()
723 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700724 oneway getClip(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700725
Andreas Huber3e4acb82017-03-28 14:40:58 -0700726 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700727 * Returns the data call list. An entry is added when a
728 * setupDataCall() is issued and removed on a
729 * deactivateDataCall(). The list is emptied when
730 * setRadioPower() off/on is issued.
731 *
Sanket Padawe76372492016-10-27 13:20:49 -0700732 * @param serial Serial number of request.
733 *
734 * Response function is IRadioResponse.getDataCallListResponse()
735 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700736 oneway getDataCallList(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700737
Andreas Huber3e4acb82017-03-28 14:40:58 -0700738 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700739 * Enables/disables supplementary service related notifications from the network.
740 * Notifications are reported via unsolSuppSvcNotification().
741 *
Sanket Padawe76372492016-10-27 13:20:49 -0700742 * @param serial Serial number of request.
743 * @param enable true = notifications enabled, false = notifications disabled.
744 *
745 * Response function is IRadioResponse.setSuppServiceNotificationsResponse()
746 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700747 oneway setSuppServiceNotifications(int32_t serial, bool enable);
Sanket Padawe76372492016-10-27 13:20:49 -0700748
Andreas Huber3e4acb82017-03-28 14:40:58 -0700749 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700750 * Stores a SMS message to SIM memory.
751 *
Sanket Padawe76372492016-10-27 13:20:49 -0700752 * @param serial Serial number of request.
753 * @param smsWriteArgs SmsWriteArgs defined in types.hal
754 *
755 * Response function is IRadioResponse.writeSmsToSimResponse()
756 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700757 oneway writeSmsToSim(int32_t serial, SmsWriteArgs smsWriteArgs);
Sanket Padawe76372492016-10-27 13:20:49 -0700758
Andreas Huber3e4acb82017-03-28 14:40:58 -0700759 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700760 * Deletes a SMS message from SIM memory.
761 *
Sanket Padawe76372492016-10-27 13:20:49 -0700762 * @param serial Serial number of request.
763 * @param index Record index of the message to delete.
764 *
765 * Response function is IRadioResponse.deleteSmsOnSimResponse()
766 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700767 oneway deleteSmsOnSim(int32_t serial, int32_t index);
Sanket Padawe76372492016-10-27 13:20:49 -0700768
Andreas Huber3e4acb82017-03-28 14:40:58 -0700769 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700770 * Assign a specified band for RF configuration.
771 *
Sanket Padawe76372492016-10-27 13:20:49 -0700772 * @param serial Serial number of request.
773 * @param mode RadioBandMode defined in types.hal
774 *
775 * Response function is IRadioResponse.setBandModeResponse()
776 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700777 oneway setBandMode(int32_t serial, RadioBandMode mode);
Sanket Padawe76372492016-10-27 13:20:49 -0700778
Andreas Huber3e4acb82017-03-28 14:40:58 -0700779 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700780 * Get the list of band modes supported by RF.
781 *
Sanket Padawe76372492016-10-27 13:20:49 -0700782 * @param serial Serial number of request.
783 *
784 * Response function is IRadioResponse.getAvailableBandModesResponse()
785 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700786 oneway getAvailableBandModes(int32_t serial);
Sanket Padawe76372492016-10-27 13:20:49 -0700787
Andreas Huber3e4acb82017-03-28 14:40:58 -0700788 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700789 * Requests to send a SAT/USAT envelope command to SIM.
790 * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111
791 *
Sanket Padawe76372492016-10-27 13:20:49 -0700792 * @param serial Serial number of request.
793 * @param command SAT/USAT command in hexadecimal format string starting with command tag
794 *
795 * Response function is IRadioResponse.sendEnvelopeResponse()
796 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700797 oneway sendEnvelope(int32_t serial, string command);
Sanket Padawe76372492016-10-27 13:20:49 -0700798
Andreas Huber3e4acb82017-03-28 14:40:58 -0700799 /**
Sanket Padawe76372492016-10-27 13:20:49 -0700800 * Requests to send a terminal response to SIM for a received proactive command
801 *
Sanket Padawe76372492016-10-27 13:20:49 -0700802 * @param serial Serial number of request.
803 * @param commandResponse SAT/USAT response in hexadecimal format string starting with
804 * first byte of response data
805 *
806 * Response function is IRadioResponse.sendTerminalResponseResponseToSim()
807 */
Sanket Padawed52335c2016-11-03 16:46:32 -0700808 oneway sendTerminalResponseToSim(int32_t serial, string commandResponse);
809
Andreas Huber3e4acb82017-03-28 14:40:58 -0700810 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700811 * When STK application gets stkCallSetup(), the call actually has
812 * been initialized by mobile device already. (We could see the call has been in the 'call
813 * list') So, STK application needs to accept/reject the call according to user
814 * operations.
815 *
816 * @param serial Serial number of request.
817 * @param accept true = accept the call setup, false = reject the call setup
818 *
Jack Yued7ef812017-01-24 11:56:52 -0800819 * Response callback is IRadioResponse.handleStkCallSetupRequestFromSimResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700820 */
821 oneway handleStkCallSetupRequestFromSim(int32_t serial,
822 bool accept);
823
Andreas Huber3e4acb82017-03-28 14:40:58 -0700824 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700825 * Connects the two calls and disconnects the subscriber from both calls.
826 *
827 * @param serial Serial number of request.
828 *
Jack Yued7ef812017-01-24 11:56:52 -0800829 * Response callback is IRadioResponse.explicitCallTransferResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700830 */
831 oneway explicitCallTransfer(int32_t serial);
832
Andreas Huber3e4acb82017-03-28 14:40:58 -0700833 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700834 * Requests to set the preferred network type for searching and registering
835 * (CS/PS domain, RAT, and operation mode)
836 *
837 * @param serial Serial number of request.
838 * @param nwType PreferredNetworkType defined in types.hal
839 *
Jack Yued7ef812017-01-24 11:56:52 -0800840 * Response callback is IRadioResponse.setPreferredNetworkTypeResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700841 */
842 oneway setPreferredNetworkType(int32_t serial,
843 PreferredNetworkType nwType);
844
Andreas Huber3e4acb82017-03-28 14:40:58 -0700845 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700846 * Query the preferred network type (CS/PS domain, RAT, and operation mode)
847 * for searching and registering
848 *
849 * @param serial Serial number of request.
850 *
Jack Yued7ef812017-01-24 11:56:52 -0800851 * Response callback is IRadioResponse.getPreferredNetworkTypeResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700852 */
853 oneway getPreferredNetworkType(int32_t serial);
854
Andreas Huber3e4acb82017-03-28 14:40:58 -0700855 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700856 * Request neighboring cell id in GSM network
857 *
858 * @param serial Serial number of request.
859 *
Jack Yued7ef812017-01-24 11:56:52 -0800860 * Response callback is IRadioResponse.getNeighboringCidsResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700861 */
862 oneway getNeighboringCids(int32_t serial);
863
Andreas Huber3e4acb82017-03-28 14:40:58 -0700864 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700865 * Enables/disables network state change notifications due to changes in
866 * LAC and/or CID (for GSM) or BID/SID/NID/latitude/longitude (for CDMA).
867 * Basically +CREG=2 vs. +CREG=1 (TS 27.007).
868 * Note: The Radio implementation must default to "updates enabled"
869 * when the screen is on and "updates disabled" when the screen is off.
870 *
871 * @param serial Serial number of request.
872 * @param enable true = updates enabled (+CREG=2), false = updates disabled (+CREG=1)
873 *
Jack Yued7ef812017-01-24 11:56:52 -0800874 * Response callback is IRadioResponse.setLocationUpdatesResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700875 */
876 oneway setLocationUpdates(int32_t serial, bool enable);
877
Andreas Huber3e4acb82017-03-28 14:40:58 -0700878 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700879 * Request to set the location where the CDMA subscription shall
880 * be retrieved
881 *
882 * @param serial Serial number of request.
883 * @param cdmaSub CdmaSubscriptionSource
884 *
Jack Yued7ef812017-01-24 11:56:52 -0800885 * Response callback is IRadioResponse.setCdmaSubscriptionSourceResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700886 */
887 oneway setCdmaSubscriptionSource(int32_t serial,
888 CdmaSubscriptionSource cdmaSub);
889
Andreas Huber3e4acb82017-03-28 14:40:58 -0700890 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700891 * Request to set the roaming preferences in CDMA
892 *
893 * @param serial Serial number of request.
894 * @param type CdmaRoamingType defined in types.hal
895 *
Jack Yued7ef812017-01-24 11:56:52 -0800896 * Response callback is IRadioResponse.setCdmaRoamingPreferenceResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700897 */
898 oneway setCdmaRoamingPreference(int32_t serial,
899 CdmaRoamingType type);
900
Andreas Huber3e4acb82017-03-28 14:40:58 -0700901 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700902 * Request the actual setting of the roaming preferences in CDMA in the modem
903 *
904 * @param serial Serial number of request.
905 *
Jack Yued7ef812017-01-24 11:56:52 -0800906 * Response callback is IRadioResponse.getCdmaRoamingPreferenceResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700907 */
908 oneway getCdmaRoamingPreference(int32_t serial);
909
Andreas Huber3e4acb82017-03-28 14:40:58 -0700910 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700911 * Request to set the TTY mode
912 *
913 * @param serial Serial number of request.
914 * @param mode TtyMode
915 *
Jack Yued7ef812017-01-24 11:56:52 -0800916 * Response callback is IRadioResponse.setTTYModeResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700917 */
918 oneway setTTYMode(int32_t serial, TtyMode mode);
919
Andreas Huber3e4acb82017-03-28 14:40:58 -0700920 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700921 * Request the setting of TTY mode
922 *
923 * @param serial Serial number of request.
924 *
Jack Yued7ef812017-01-24 11:56:52 -0800925 * Response callback is IRadioResponse.getTTYModeResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700926 */
927 oneway getTTYMode(int32_t serial);
928
Andreas Huber3e4acb82017-03-28 14:40:58 -0700929 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700930 * Request to set the preferred voice privacy mode used in voice scrambling.
931 *
932 * @param serial Serial number of request.
933 * @param enable false for Standard Privacy Mode (Public Long Code Mask)
934 * true for Enhanced Privacy Mode (Private Long Code Mask)
935 *
Jack Yued7ef812017-01-24 11:56:52 -0800936 * Response callback is IRadioResponse.setPreferredVoicePrivacyResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700937 */
938 oneway setPreferredVoicePrivacy(int32_t serial, bool enable);
939
Andreas Huber3e4acb82017-03-28 14:40:58 -0700940 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700941 * Request the setting of preferred voice privacy mode.
942 *
943 * @param serial Serial number of request.
944 *
Jack Yued7ef812017-01-24 11:56:52 -0800945 * Response callback is IRadioResponse.getPreferredVoicePrivacyResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700946 */
947 oneway getPreferredVoicePrivacy(int32_t serial);
948
Andreas Huber3e4acb82017-03-28 14:40:58 -0700949 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700950 * Send FLASH command
951 *
952 * @param serial Serial number of request.
953 * @param featureCode String associated with Flash command
954 *
Jack Yued7ef812017-01-24 11:56:52 -0800955 * Response callback is IRadioResponse.sendCDMAFeatureCodeResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700956 */
957 oneway sendCDMAFeatureCode(int32_t serial, string featureCode);
958
Andreas Huber3e4acb82017-03-28 14:40:58 -0700959 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700960 * Send DTMF string
961 *
962 * @param serial Serial number of request.
963 * @param dtmf DTMF string
964 * @param on DTMF ON length in milliseconds, or 0 to use default
965 * @param off is the DTMF OFF length in milliseconds, or 0 to use default
966 *
Jack Yued7ef812017-01-24 11:56:52 -0800967 * Response callback is IRadioResponse.sendBurstDtmfResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700968 */
969 oneway sendBurstDtmf(int32_t serial, string dtmf, int32_t on, int32_t off);
970
Andreas Huber3e4acb82017-03-28 14:40:58 -0700971 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700972 * Send a CDMA SMS message
973 *
974 * @param serial Serial number of request.
975 * @param sms Cdma Sms to be sent described by CdmaSmsMessage in types.hal
976 *
Jack Yued7ef812017-01-24 11:56:52 -0800977 * Response callback is IRadioResponse.sendCdmaSmsResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700978 */
979 oneway sendCdmaSms(int32_t serial, CdmaSmsMessage sms);
980
Andreas Huber3e4acb82017-03-28 14:40:58 -0700981 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700982 * Acknowledge the success or failure in the receipt of SMS
983 * previously indicated via responseCdmaNewSms()
984 *
985 * @param serial Serial number of request.
986 * @param smsAck Cdma Sms ack to be sent described by CdmaSmsAck in types.hal
987 *
Jack Yued7ef812017-01-24 11:56:52 -0800988 * Response callback is IRadioResponse.acknowledgeLastIncomingCdmaSmsResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700989 */
990 oneway acknowledgeLastIncomingCdmaSms(int32_t serial, CdmaSmsAck smsAck);
991
Andreas Huber3e4acb82017-03-28 14:40:58 -0700992 /**
Sanket Padawed52335c2016-11-03 16:46:32 -0700993 * Request the setting of GSM/WCDMA Cell Broadcast SMS config.
994 *
995 * @param serial Serial number of request.
996 *
Jack Yued7ef812017-01-24 11:56:52 -0800997 * Response callback is IRadioResponse.getGsmBroadcastConfigResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -0700998 */
999 oneway getGsmBroadcastConfig(int32_t serial);
1000
Andreas Huber3e4acb82017-03-28 14:40:58 -07001001 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001002 * Set GSM/WCDMA Cell Broadcast SMS config
1003 *
1004 * @param serial Serial number of request.
1005 * @param configInfo Setting of GSM/WCDMA Cell broadcast config
1006 *
Jack Yued7ef812017-01-24 11:56:52 -08001007 * Response callback is IRadioResponse.setGsmBroadcastConfigResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001008 */
Sanket Padawe865834e2016-12-28 16:04:10 -08001009 oneway setGsmBroadcastConfig(int32_t serial, vec<GsmBroadcastSmsConfigInfo> configInfo);
Sanket Padawed52335c2016-11-03 16:46:32 -07001010
Andreas Huber3e4acb82017-03-28 14:40:58 -07001011 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001012 * Enable or disable the reception of GSM/WCDMA Cell Broadcast SMS
1013 *
1014 * @param serial Serial number of request.
1015 * @param activate indicates to activate or turn off the reception of GSM/WCDMA
1016 * Cell Broadcast SMS. true = activate, false = turn off
1017 *
Jack Yued7ef812017-01-24 11:56:52 -08001018 * Response callback is IRadioResponse.setGsmBroadcastActivationResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001019 */
1020 oneway setGsmBroadcastActivation(int32_t serial, bool activate);
1021
Andreas Huber3e4acb82017-03-28 14:40:58 -07001022 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001023 * Request the setting of CDMA Broadcast SMS config
1024 *
1025 * @param serial Serial number of request.
1026 *
Jack Yued7ef812017-01-24 11:56:52 -08001027 * Response callback is IRadioResponse.getCdmaBroadcastConfigResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001028 */
1029 oneway getCdmaBroadcastConfig(int32_t serial);
1030
Andreas Huber3e4acb82017-03-28 14:40:58 -07001031 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001032 * Set CDMA Broadcast SMS config
1033 *
1034 * @param serial Serial number of request.
1035 * @param configInfo CDMA Broadcast SMS config to be set.
1036 *
Jack Yued7ef812017-01-24 11:56:52 -08001037 * Response callback is IRadioResponse.setCdmaBroadcastConfigResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001038 */
Sanket Padawe865834e2016-12-28 16:04:10 -08001039 oneway setCdmaBroadcastConfig(int32_t serial, vec<CdmaBroadcastSmsConfigInfo> configInfo);
Sanket Padawed52335c2016-11-03 16:46:32 -07001040
Andreas Huber3e4acb82017-03-28 14:40:58 -07001041 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001042 * Enable or disable the reception of CDMA Cell Broadcast SMS
1043 *
1044 * @param serial Serial number of request.
1045 * @param activate indicates to activate or turn off the reception of CDMA
1046 * Cell Broadcast SMS. true = activate, false = turn off
1047 *
Jack Yued7ef812017-01-24 11:56:52 -08001048 * Response callback is IRadioResponse.setCdmaBroadcastActivationResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001049 */
1050 oneway setCdmaBroadcastActivation(int32_t serial, bool activate);
1051
Andreas Huber3e4acb82017-03-28 14:40:58 -07001052 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001053 * Request the device MDN / H_SID / H_NID.
1054 * The request is only allowed when CDMA subscription is available. When CDMA
1055 * subscription is changed, application layer must re-issue the request to
1056 * update the subscription information.
1057 *
1058 * @param serial Serial number of request.
1059 *
Jack Yued7ef812017-01-24 11:56:52 -08001060 * Response callback is IRadioResponse.getCDMASubscriptionResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001061 */
1062 oneway getCDMASubscription(int32_t serial);
1063
Andreas Huber3e4acb82017-03-28 14:40:58 -07001064 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001065 * Stores a CDMA SMS message to RUIM memory.
1066 *
1067 * @param serial Serial number of request.
1068 * @param cdmaSms CDMA message as defined by CdmaSmsWriteArgs in types.hal
1069 *
Jack Yued7ef812017-01-24 11:56:52 -08001070 * Response callback is IRadioResponse.writeSmsToRuimResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001071 */
1072 oneway writeSmsToRuim(int32_t serial, CdmaSmsWriteArgs cdmaSms);
1073
Andreas Huber3e4acb82017-03-28 14:40:58 -07001074 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001075 * Deletes a CDMA SMS message from RUIM memory.
1076 *
1077 * @param serial Serial number of request.
1078 * @param index record index of the message to delete
1079 *
Jack Yued7ef812017-01-24 11:56:52 -08001080 * Response callback is IRadioResponse.deleteSmsOnRuimResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001081 */
1082 oneway deleteSmsOnRuim(int32_t serial, int32_t index);
1083
Andreas Huber3e4acb82017-03-28 14:40:58 -07001084 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001085 * Request the device ESN / MEID / IMEI / IMEISV.
1086 * The request is always allowed and contains GSM and CDMA device identity.
1087 * When CDMA subscription is changed the ESN/MEID changes. The application
1088 * layer must re-issue the request to update the device identity in this case.
1089 *
1090 * @param serial Serial number of request.
1091 *
Jack Yued7ef812017-01-24 11:56:52 -08001092 * Response callback is IRadioResponse.getDeviceIdentityResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001093 */
1094 oneway getDeviceIdentity(int32_t serial);
1095
Andreas Huber3e4acb82017-03-28 14:40:58 -07001096 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001097 * Request the radio's system selection module to exit emergency
1098 * callback mode. Radio must not respond with SUCCESS until the modem has
1099 * completely exited from Emergency Callback Mode.
1100 *
1101 * @param serial Serial number of request.
1102 *
Jack Yued7ef812017-01-24 11:56:52 -08001103 * Response callback is IRadioResponse.exitEmergencyCallbackModeResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001104 */
1105 oneway exitEmergencyCallbackMode(int32_t serial);
1106
Andreas Huber3e4acb82017-03-28 14:40:58 -07001107 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001108 * Get the default Short Message Service Center address on the device.
1109 *
1110 * @param serial Serial number of request.
1111 *
Jack Yued7ef812017-01-24 11:56:52 -08001112 * Response callback is IRadioResponse.getSmscAddressResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001113 */
1114 oneway getSmscAddress(int32_t serial);
1115
Andreas Huber3e4acb82017-03-28 14:40:58 -07001116 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001117 * Set the default Short Message Service Center address on the device.
1118 *
1119 * @param serial Serial number of request.
1120 * @param smsc Short Message Service Center address to set
1121 *
Jack Yued7ef812017-01-24 11:56:52 -08001122 * Response callback is IRadioResponse.setSmscAddressResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001123 */
1124 oneway setSmscAddress(int32_t serial, string smsc);
1125
Andreas Huber3e4acb82017-03-28 14:40:58 -07001126 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001127 * Indicates whether there is storage available for new SMS messages.
1128 *
1129 * @param serial Serial number of request.
1130 * @param available true if memory is available for storing new messages,
1131 * false if memory capacity is exceeded
1132 *
Jack Yued7ef812017-01-24 11:56:52 -08001133 * Response callback is IRadioResponse.reportSmsMemoryStatusResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001134 */
1135 oneway reportSmsMemoryStatus(int32_t serial, bool available);
1136
Andreas Huber3e4acb82017-03-28 14:40:58 -07001137 /**
Jack Yu439a6e72017-02-23 12:40:56 -08001138 * Indicates that the StkService is running and is
Sanket Padawed52335c2016-11-03 16:46:32 -07001139 * ready to receive unsolicited stkXXXXX commands.
1140 *
1141 * @param serial Serial number of request.
1142 *
Jack Yued7ef812017-01-24 11:56:52 -08001143 * Response callback is IRadioResponse.reportStkServiceIsRunningResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001144 */
1145 oneway reportStkServiceIsRunning(int32_t serial);
1146
Andreas Huber3e4acb82017-03-28 14:40:58 -07001147 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001148 * Request to query the location where the CDMA subscription shall be retrieved.
1149 *
1150 * @param serial Serial number of request.
1151 *
Jack Yued7ef812017-01-24 11:56:52 -08001152 * Response callback is IRadioResponse.getCdmaSubscriptionSourceResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001153 */
1154 oneway getCdmaSubscriptionSource(int32_t serial);
1155
Andreas Huber3e4acb82017-03-28 14:40:58 -07001156 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001157 * Request the ISIM application on the UICC to perform AKA
1158 * challenge/response algorithm for IMS authentication
1159 *
1160 * @param serial Serial number of request.
1161 * @param challenge challenge string in Base64 format
1162 *
Jack Yued7ef812017-01-24 11:56:52 -08001163 * Response callback is IRadioResponse.requestIsimAuthenticationResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001164 */
1165 oneway requestIsimAuthentication(int32_t serial, string challenge);
1166
Andreas Huber3e4acb82017-03-28 14:40:58 -07001167 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001168 * Acknowledge successful or failed receipt of SMS previously indicated
1169 * via unsol responseNewSms(), including acknowledgement TPDU to send
1170 * as the RP-User-Data element of the RP-ACK or RP-ERROR PDU.
1171 *
1172 * @param serial Serial number of request.
1173 * @param success true on successful receipt (send RP-ACK)
1174 * false on failed receipt (send RP-ERROR)
1175 * @param ackPdu acknowledgement TPDU in hexadecimal format
1176 *
Jack Yued7ef812017-01-24 11:56:52 -08001177 * Response callback is IRadioResponse.acknowledgeIncomingGsmSmsWithPduResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001178 */
1179 oneway acknowledgeIncomingGsmSmsWithPdu(int32_t serial, bool success, string ackPdu);
1180
Andreas Huber3e4acb82017-03-28 14:40:58 -07001181 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001182 * Requests to send a SAT/USAT envelope command to SIM.
1183 * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111.
1184 *
1185 * This request has one difference from sendEnvelope():
1186 * the SW1 and SW2 status bytes from the UICC response are returned along with
1187 * the response data, using the same structure as iccIOForApp().
1188 *
1189 * The implementation must perform normal processing of a '91XX'
1190 * response in SW1/SW2 to retrieve the pending proactive command and send it
1191 * as an unsolicited response, as sendEnvelope() does.
1192 *
1193 * @param serial Serial number of request.
1194 * @param contents SAT/USAT command in hexadecimal format starting with command tag
1195 *
Jack Yued7ef812017-01-24 11:56:52 -08001196 * Response callback is IRadioResponse.sendEnvelopeWithStatusResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001197 */
1198 oneway sendEnvelopeWithStatus(int32_t serial, string contents);
1199
Andreas Huber3e4acb82017-03-28 14:40:58 -07001200 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001201 * Query the radio technology type (3GPP/3GPP2) used for voice. Query is valid only
1202 * when radio state is not RADIO_STATE_UNAVAILABLE
1203 *
1204 * @param serial Serial number of request.
1205 *
Jack Yued7ef812017-01-24 11:56:52 -08001206 * Response callback is IRadioResponse.getVoiceRadioTechnologyResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001207 */
1208 oneway getVoiceRadioTechnology(int32_t serial);
1209
Andreas Huber3e4acb82017-03-28 14:40:58 -07001210 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001211 * Request all of the current cell information known to the radio. The radio
1212 * must return list of all current cells, including the neighboring cells. If for a particular
1213 * cell information isn't known then the appropriate unknown value will be returned.
1214 * This does not cause or change the rate of unsolicited cellInfoList().
1215 *
1216 * @param serial Serial number of request.
1217 *
Jack Yued7ef812017-01-24 11:56:52 -08001218 * Response callback is IRadioResponse.getCellInfoListResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001219 */
1220 oneway getCellInfoList(int32_t serial);
1221
Andreas Huber3e4acb82017-03-28 14:40:58 -07001222 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001223 * Sets the minimum time between when unsolicited cellInfoList() must be invoked.
1224 * A value of 0, means invoke cellInfoList() when any of the reported
1225 * information changes. Setting the value to INT_MAX(0x7fffffff) means never issue
1226 * a unsolicited cellInfoList().
1227 *
1228 * @param serial Serial number of request.
1229 * @param rate minimum time in milliseconds to indicate time between unsolicited cellInfoList()
1230 *
Jack Yued7ef812017-01-24 11:56:52 -08001231 * Response callback is IRadioResponse.setCellInfoListRateResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001232 */
1233 oneway setCellInfoListRate(int32_t serial, int32_t rate);
1234
Andreas Huber3e4acb82017-03-28 14:40:58 -07001235 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001236 * Set an apn to initial attach network
1237 *
1238 * @param serial Serial number of request.
Jack Yued7ef812017-01-24 11:56:52 -08001239 * @param dataProfileInfo data profile containing APN settings
Jack Yu439a6e72017-02-23 12:40:56 -08001240 * @param modemCognitive indicating the data profile was sent to the modem through
1241 * setDataProfile earlier.
1242 * @param isRoaming Indicating the device is roaming or not. The 'protocol' parameter in the old
1243 * RIL_InitialAttachApn must be filled accordingly based on the roaming
1244 * condition. Note this is for backward compatibility with the old radio modem.
1245 * The modem must not use this param for any other reason.
Sanket Padawed52335c2016-11-03 16:46:32 -07001246 *
Jack Yued7ef812017-01-24 11:56:52 -08001247 * Response callback is IRadioResponse.setInitialAttachApnResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001248 */
Jack Yued7ef812017-01-24 11:56:52 -08001249 oneway setInitialAttachApn(int32_t serial, DataProfileInfo dataProfileInfo,
Jack Yu439a6e72017-02-23 12:40:56 -08001250 bool modemCognitive, bool isRoaming);
Sanket Padawed52335c2016-11-03 16:46:32 -07001251
Andreas Huber3e4acb82017-03-28 14:40:58 -07001252 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001253 * Request current IMS registration state
1254 *
1255 * @param serial Serial number of request.
1256 *
Jack Yued7ef812017-01-24 11:56:52 -08001257 * Response callback is IRadioResponse.getImsRegistrationStateResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001258 */
1259 oneway getImsRegistrationState(int32_t serial);
1260
Andreas Huber3e4acb82017-03-28 14:40:58 -07001261 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001262 * Send a SMS message over IMS.
1263 * Based on the return error, caller decides to resend if sending sms
1264 * fails. SMS_SEND_FAIL_RETRY means retry, and other errors means no retry.
1265 * In case of retry, data is encoded based on Voice Technology available.
1266 *
1267 * @param serial Serial number of request.
1268 * @param message ImsSmsMessage as defined in types.hal to be sent
1269 *
Jack Yued7ef812017-01-24 11:56:52 -08001270 * Response callback is IRadioResponse.sendImsSmsResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001271 */
1272 oneway sendImsSms(int32_t serial, ImsSmsMessage message);
1273
Andreas Huber3e4acb82017-03-28 14:40:58 -07001274 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001275 * Request APDU exchange on the basic channel. This command reflects TS 27.007
1276 * "generic SIM access" operation (+CSIM). The modem must ensure proper function
1277 * of GSM/CDMA, and filter commands appropriately. It must filter
1278 * channel management and SELECT by DF name commands.
1279 * "sessionid" field must be ignored.
1280 *
1281 * @param serial Serial number of request.
1282 * @param message SimApdu as defined in types.hal to be sent
1283 *
Jack Yued7ef812017-01-24 11:56:52 -08001284 * Response callback is IRadioResponse.iccTransmitApduBasicChannelResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001285 */
1286 oneway iccTransmitApduBasicChannel(int32_t serial, SimApdu message);
1287
Andreas Huber3e4acb82017-03-28 14:40:58 -07001288 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001289 * Open a new logical channel and select the given application. This command
1290 * reflects TS 27.007 "open logical channel" operation (+CCHO).
1291 *
1292 * @param serial Serial number of request.
1293 * @param aid AID value, See ETSI 102.221 and 101.220.
Wileen Chiubeb64d62017-03-03 11:57:48 -08001294 * @param p2 P2 value, described in ISO 7816-4. Ignore if equal to P2Constant:NO_P2
Sanket Padawed52335c2016-11-03 16:46:32 -07001295 *
Jack Yued7ef812017-01-24 11:56:52 -08001296 * Response callback is IRadioResponse.iccOpenLogicalChannelResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001297 */
Wileen Chiubeb64d62017-03-03 11:57:48 -08001298 oneway iccOpenLogicalChannel(int32_t serial, string aid, int32_t p2);
Sanket Padawed52335c2016-11-03 16:46:32 -07001299
Andreas Huber3e4acb82017-03-28 14:40:58 -07001300 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001301 * Close a previously opened logical channel. This command reflects TS 27.007
1302 * "close logical channel" operation (+CCHC).
1303 *
1304 * @param serial Serial number of request.
1305 * @param channelId session id of the logical channel (+CCHC).
1306 *
Jack Yued7ef812017-01-24 11:56:52 -08001307 * Response callback is IRadioResponse.iccCloseLogicalChannelResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001308 */
1309 oneway iccCloseLogicalChannel(int32_t serial, int32_t channelId);
1310
Andreas Huber3e4acb82017-03-28 14:40:58 -07001311 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001312 * Exchange APDUs with a UICC over a previously opened logical channel. This
1313 * command reflects TS 27.007 "generic logical channel access" operation
1314 * (+CGLA). The modem must filter channel management and SELECT by DF name
1315 * commands.
1316 *
1317 * @param serial Serial number of request.
1318 * @param message SimApdu as defined in types.hal to be sent
1319 *
Jack Yued7ef812017-01-24 11:56:52 -08001320 * Response callback is IRadioResponse.iccTransmitApduLogicalChannelResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001321 */
1322 oneway iccTransmitApduLogicalChannel(int32_t serial, SimApdu message);
1323
Andreas Huber3e4acb82017-03-28 14:40:58 -07001324 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001325 * Read one of the radio NV items.
1326 * This is used for device configuration by some CDMA operators.
1327 *
1328 * @param serial Serial number of request.
1329 * @param itemId NvItem is radio NV item as defined in types.hal
1330 *
Jack Yued7ef812017-01-24 11:56:52 -08001331 * Response callback is IRadioResponse.nvReadItemResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001332 */
1333 oneway nvReadItem(int32_t serial, NvItem itemId);
1334
Andreas Huber3e4acb82017-03-28 14:40:58 -07001335 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001336 * Write one of the radio NV items.
1337 * This is used for device configuration by some CDMA operators.
1338 *
1339 * @param serial Serial number of request.
1340 * @param item NvWriteItem as defined in types.hal
1341 *
Jack Yued7ef812017-01-24 11:56:52 -08001342 * Response callback is IRadioResponse.nvWriteItemResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001343 */
1344 oneway nvWriteItem(int32_t serial, NvWriteItem item);
1345
Andreas Huber3e4acb82017-03-28 14:40:58 -07001346 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001347 * Update the CDMA Preferred Roaming List (PRL) in the radio NV storage.
1348 * This is used for device configuration by some CDMA operators.
1349 *
1350 * @param serial Serial number of request.
1351 * @param prl PRL as a byte array
1352 *
Jack Yued7ef812017-01-24 11:56:52 -08001353 * Response callback is IRadioResponse.nvWriteCdmaPrlResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001354 */
1355 oneway nvWriteCdmaPrl(int32_t serial, vec<uint8_t> prl);
1356
Andreas Huber3e4acb82017-03-28 14:40:58 -07001357 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001358 * Reset the radio NV configuration to the factory state.
1359 * This is used for device configuration by some CDMA operators.
1360 *
1361 * @param serial Serial number of request.
1362 * @param resetType ResetNvType as defined in types.hal
1363 *
Jack Yued7ef812017-01-24 11:56:52 -08001364 * Response callback is IRadioResponse.nvResetConfigResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001365 */
1366 oneway nvResetConfig(int32_t serial, ResetNvType resetType);
1367
Andreas Huber3e4acb82017-03-28 14:40:58 -07001368 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001369 * Selection/de-selection of a subscription from a SIM card
1370 *
1371 * @param serial Serial number of request.
1372 * @param uiccSub SelectUiccSub as defined in types.hal
1373 *
Jack Yued7ef812017-01-24 11:56:52 -08001374 * Response callback is IRadioResponse.setUiccSubscriptionResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001375 */
1376 oneway setUiccSubscription(int32_t serial, SelectUiccSub uiccSub);
1377
Andreas Huber3e4acb82017-03-28 14:40:58 -07001378 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001379 * Tells the modem whether data calls are allowed or not
1380 *
1381 * @param serial Serial number of request.
1382 * @param allow true to allow data calls, false to disallow data calls
1383 *
Jack Yued7ef812017-01-24 11:56:52 -08001384 * Response callback is IRadioResponse.setDataAllowedResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001385 */
1386 oneway setDataAllowed(int32_t serial, bool allow);
1387
Andreas Huber3e4acb82017-03-28 14:40:58 -07001388 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001389 * Request all of the current hardware (modem and sim) associated with Radio.
1390 *
1391 * @param serial Serial number of request.
1392 *
Jack Yued7ef812017-01-24 11:56:52 -08001393 * Response callback is IRadioResponse.getHardwareConfigResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001394 */
1395 oneway getHardwareConfig(int32_t serial);
1396
Andreas Huber3e4acb82017-03-28 14:40:58 -07001397 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001398 * Returns the response of SIM Authentication through Radio challenge request.
1399 *
1400 * @param serial Serial number of request.
1401 * @param authContext P2 value of authentication command, see P2 parameter in
1402 * 3GPP TS 31.102 7.1.2
1403 * @param authData the challenge string in Base64 format, see 3GPP TS 31.102 7.1.2
1404 * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value
1405 *
Jack Yued7ef812017-01-24 11:56:52 -08001406 * Response callback is IRadioResponse.requestIccSimAuthenticationResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001407 */
1408 oneway requestIccSimAuthentication(int32_t serial, int32_t authContext, string authData,
1409 string aid);
1410
Andreas Huber3e4acb82017-03-28 14:40:58 -07001411 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001412 * Set data profile in modem.
1413 * Modem must erase existed profiles from framework, and apply new profiles
1414 *
1415 * @param serial Serial number of request.
1416 * @param profiles Array of DataProfiles to set.
Jack Yu439a6e72017-02-23 12:40:56 -08001417 * @param isRoaming Indicating the device is roaming or not. The 'protocol' parameter in the old
1418 * RIL API RIL_DataProfileInfo must be filled accordingly based on the
1419 * roaming condition. Note this is for backward compatibility with the old
1420 * radio modem. The modem must not use this param for any other reason.
Sanket Padawed52335c2016-11-03 16:46:32 -07001421 *
Jack Yued7ef812017-01-24 11:56:52 -08001422 * Response callback is IRadioResponse.setDataProfileResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001423 */
Jack Yu439a6e72017-02-23 12:40:56 -08001424 oneway setDataProfile(int32_t serial, vec<DataProfileInfo> profiles, bool isRoaming);
Sanket Padawed52335c2016-11-03 16:46:32 -07001425
Andreas Huber3e4acb82017-03-28 14:40:58 -07001426 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001427 * Device is shutting down. All further commands are ignored
1428 * and RADIO_NOT_AVAILABLE must be returned.
1429 *
1430 * @param serial Serial number of request.
1431 *
Jack Yued7ef812017-01-24 11:56:52 -08001432 * Response callback is IRadioResponse.requestShutdownResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001433 */
1434 oneway requestShutdown(int32_t serial);
1435
Andreas Huber3e4acb82017-03-28 14:40:58 -07001436 /**
Jack Yu439a6e72017-02-23 12:40:56 -08001437 * Used to get phone radio capability.
Sanket Padawed52335c2016-11-03 16:46:32 -07001438 *
1439 * @param serial Serial number of request.
1440 *
Jack Yued7ef812017-01-24 11:56:52 -08001441 * Response callback is IRadioResponse.getRadioCapabilityResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001442 */
1443 oneway getRadioCapability(int32_t serial);
1444
Andreas Huber3e4acb82017-03-28 14:40:58 -07001445 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001446 * Used to set the phones radio capability. Be VERY careful
1447 * using this request as it may cause some vendor modems to reset. Because
1448 * of the possible modem reset any radio commands after this one may not be
1449 * processed.
1450 *
1451 * @param serial Serial number of request.
1452 * @param rc RadioCapability structure to be set
1453 *
Jack Yued7ef812017-01-24 11:56:52 -08001454 * Response callback is IRadioResponse.setRadioCapabilityResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001455 */
1456 oneway setRadioCapability(int32_t serial, RadioCapability rc);
1457
Andreas Huber3e4acb82017-03-28 14:40:58 -07001458 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001459 * Start Link Capacity Estimate (LCE) service if supported by the radio.
1460 *
1461 * @param serial Serial number of request.
1462 * @param reportInterval desired reporting interval (ms).
1463 * @param pullMode LCE service mode. true: PULL; false: PUSH.
1464 *
Rambo Wangb6e35462021-02-18 20:55:26 -08001465 * Response callback is IRadioResponse.startLceServiceResponse() which may return
1466 * RadioError:REQUEST_NOT_SUPPORTED if @1.2::IRadio or higher is supported.
1467 *
1468 * DEPRECATED in @1.2 or higher which use the always-on LCE that relies on indications.
Sanket Padawed52335c2016-11-03 16:46:32 -07001469 */
1470 oneway startLceService(int32_t serial, int32_t reportInterval, bool pullMode);
1471
Andreas Huber3e4acb82017-03-28 14:40:58 -07001472 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001473 * Stop Link Capacity Estimate (LCE) service, the STOP operation must be
1474 * idempotent for the radio modem.
1475 *
1476 * @param serial Serial number of request.
1477 *
Rambo Wangb6e35462021-02-18 20:55:26 -08001478 * Response callback is IRadioResponse.stopLceServiceResponse() which may return
1479 * RadioError:REQUEST_NOT_SUPPORTED if @1.2::IRadio or higher is supported.
1480 *
1481 * DEPRECATED in @1.2 or higher which use the always-on LCE that relies on indications.
Sanket Padawed52335c2016-11-03 16:46:32 -07001482 */
1483 oneway stopLceService(int32_t serial);
1484
Andreas Huber3e4acb82017-03-28 14:40:58 -07001485 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001486 * Pull LCE service for capacity information.
1487 *
1488 * @param serial Serial number of request.
1489 *
Rambo Wangb6e35462021-02-18 20:55:26 -08001490 * Response callback is IRadioResponse.pullLceDataResponse() which may return
1491 * RadioError:REQUEST_NOT_SUPPORTED if @1.2::IRadio or higher is supported.
1492 *
1493 * DEPRECATED in @1.2 or higher which use the always-on LCE that relies on indications.
Sanket Padawed52335c2016-11-03 16:46:32 -07001494 */
1495 oneway pullLceData(int32_t serial);
1496
Andreas Huber3e4acb82017-03-28 14:40:58 -07001497 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001498 * Get modem activity information for power consumption estimation.
1499 * Request clear-on-read statistics information that is used for
1500 * estimating the per-millisecond power consumption of the cellular
1501 * modem.
1502 *
1503 * @param serial Serial number of request.
1504 *
Jack Yued7ef812017-01-24 11:56:52 -08001505 * Response callback is IRadioResponse.getModemActivityInfoResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001506 */
1507 oneway getModemActivityInfo(int32_t serial);
1508
Andreas Huber3e4acb82017-03-28 14:40:58 -07001509 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001510 * Set carrier restrictions. Expected modem behavior:
1511 * If never receives this command
1512 * - Must allow all carriers
1513 * Receives this command with allAllowed true
1514 * - Must allow all carriers. If a previously allowed SIM is present, modem must not reload
1515 * the SIM. If a previously disallowed SIM is present, reload the SIM and notify Android.
1516 * Receives this command with a list of carriers & allAllowed = false
1517 * - Only allow specified carriers, persist across power cycles and FDR. If a present SIM
1518 * is in the allowed list, modem must not reload the SIM. If a present SIM is *not* in
1519 * the allowed list, modem must detach from the registered network and only keep emergency
1520 * service, and notify Android SIM refresh reset with new SIM state being
1521 * CardState:RESTRICTED. Emergency service must be enabled.
1522 *
1523 * @param serial Serial number of request.
1524 * @param allAllowed true only when all carriers are allowed. Ignore "carriers" struct.
1525 * If false, consider "carriers" struct
1526 * @param carriers CarrierRestrictions consisting allowed and excluded carriers as defined
1527 * in types.hal
1528 *
Jack Yued7ef812017-01-24 11:56:52 -08001529 * Response callback is IRadioResponse.setAllowedCarriersResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001530 */
1531 oneway setAllowedCarriers(int32_t serial, bool allAllowed, CarrierRestrictions carriers);
1532
Andreas Huber3e4acb82017-03-28 14:40:58 -07001533 /**
Sanket Padawed52335c2016-11-03 16:46:32 -07001534 * Get carrier restrictions.
1535 *
1536 * @param serial Serial number of request.
1537 *
Jack Yued7ef812017-01-24 11:56:52 -08001538 * Response callback is IRadioResponse.getAllowedCarriersResponse()
Sanket Padawed52335c2016-11-03 16:46:32 -07001539 */
1540 oneway getAllowedCarriers(int32_t serial);
Sanket Padawef6e345a2016-11-17 15:28:31 -08001541
Andreas Huber3e4acb82017-03-28 14:40:58 -07001542 /**
Jack Yued7ef812017-01-24 11:56:52 -08001543 * Send the updated device state.
1544 * This is providing the device state information for the modem to perform power saving
1545 * strategies.
1546 *
1547 * @param serial Serial number of request.
1548 * @param deviceStateType The updated device state type.
1549 * @param state The updated state. See the definition of state at DeviceStateType.
1550 *
1551 * Response callback is IRadioResponse.sendDeviceStateResponse()
1552 */
1553 oneway sendDeviceState(int32_t serial, DeviceStateType deviceStateType, bool state);
1554
Andreas Huber3e4acb82017-03-28 14:40:58 -07001555 /**
Jack Yued7ef812017-01-24 11:56:52 -08001556 * Set the indication filter.
1557 * This is used to prevent unnecessary application processor wake up for power saving purposes
1558 * by suppressing the indications in certain scenarios.
1559 *
1560 * @param serial Serial number of request.
1561 * @param indicationFilter 32-bit bitmap of IndicationFilter. Bits set to 1 indicate the
1562 * indications are enabled. See IndicationFilter for the definition of each bit.
1563 *
Rambo Wangb6e35462021-02-18 20:55:26 -08001564 * Response callback is IRadioResponse.setIndicationFilterResponse() which may return
1565 * RadioError:REQUEST_NOT_SUPPORTED if @1.2::IRadio or higher is supported.
1566 *
1567 * DEPRECATED in @1.2 or higher, use @1.2::IRadio.setIndicationFilter_1_2() instead.
Jack Yued7ef812017-01-24 11:56:52 -08001568 */
1569 oneway setIndicationFilter(int32_t serial, bitfield<IndicationFilter> indicationFilter);
1570
Andreas Huber3e4acb82017-03-28 14:40:58 -07001571 /**
Jack Yua2118692017-02-15 15:31:34 -08001572 * Set SIM card power state.
1573 * Request is equivalent to inserting or removing the card.
1574 *
1575 * The radio modem must generate IRadioIndication.simStatusChanged() as if the SIM had been
1576 * inserted or removed.
1577 *
1578 * @param serial Serial number of request
1579 * @param powerUp True if powering up the sim card
1580 *
Rambo Wangb6e35462021-02-18 20:55:26 -08001581 * Response callback is IRadioResponse.setSimCardPowerResponse() which may return
1582 * RadioError:REQUEST_NOT_SUPPORTED if @1.1::IRadio or higher is supported.
1583 *
1584 * DEPRECATED in @1.1 or higher, use @1.1::IRadio.setSimCardPower_1_1() instead.
Jack Yua2118692017-02-15 15:31:34 -08001585 */
1586 oneway setSimCardPower(int32_t serial, bool powerUp);
1587
Andreas Huber3e4acb82017-03-28 14:40:58 -07001588 /**
Sanket Padawef6e345a2016-11-17 15:28:31 -08001589 * When response type received from a radio indication or radio response is
1590 * RadioIndicationType:UNSOLICITED_ACK_EXP or RadioResponseType:SOLICITED_ACK_EXP respectively,
Jack Yued7ef812017-01-24 11:56:52 -08001591 * acknowledge the receipt of those messages by sending responseAcknowledgement().
Sanket Padawef6e345a2016-11-17 15:28:31 -08001592 *
1593 */
1594 oneway responseAcknowledgement();
Sanket Padawe865834e2016-12-28 16:04:10 -08001595};