|
1 /* |
|
2 * Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). |
|
3 * All rights reserved. |
|
4 * This component and the accompanying materials are made available |
|
5 * under the terms of the License "Eclipse Public License v1.0" |
|
6 * which accompanies this distribution, and is available |
|
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 * |
|
9 * Initial Contributors: |
|
10 * Nokia Corporation - initial contribution. |
|
11 * |
|
12 * Contributors: |
|
13 * |
|
14 * Description: |
|
15 * |
|
16 */ |
|
17 |
|
18 |
|
19 |
|
20 #ifndef SATMESSHANDLER_H |
|
21 #define SATMESSHANDLER_H |
|
22 |
|
23 |
|
24 // INCLUDES |
|
25 #include "cmmphonetreceiver.h" // mmmmessagereceiver interface |
|
26 #include <etelsat.h> // etel sat api |
|
27 #include <product_profile_definitions.h> // product profile definitions |
|
28 |
|
29 |
|
30 // CONSTANTS |
|
31 // UICC file path max length |
|
32 const TUint8 KUiccFilePathLength( 8 ); |
|
33 // UICC file path length when reading service table |
|
34 const TUint8 KUiccFilePathLengthServiceTable( 6 ); |
|
35 |
|
36 // Call Server's maximum address length. Use only with Call Server messages. |
|
37 const TUint8 KCallServerMaxAddressLenght( 123 ); |
|
38 const TInt KAtkPdpCcRespMaxSize( 690 ); |
|
39 |
|
40 // Bitmask for status bit of call control in USIM |
|
41 const TUint8 KCallControlBitMaskUsim( 0x20 ); |
|
42 // Bitmask for status bit of call control in SIM |
|
43 const TUint8 KCallControlBitMaskSim( 0x08 ); |
|
44 // Bitmask for status bit of SMS PP DD in USIM |
|
45 const TUint8 KSmsPpDdBitMaskUsim( 0x08 ); |
|
46 // Bitmask for status bit of SMS PP DD in SIM |
|
47 const TUint8 KSmsPpDdBitMaskSim( 0x02 ); |
|
48 // Bitmask for status bit of MO SMS control in USIM |
|
49 const TUint8 KMoSmsControlBitMaskUsim( 0x40 ); |
|
50 // Bitmask for status bit of MO SMS control in SIM |
|
51 const TUint8 KMoSmsControlBitMaskSim( 0x10 ); |
|
52 // Bitmask for status bit of USSD CC in SIM |
|
53 const TUint8 KMoUssdCallControlBitMaskSim( 0x01 ); |
|
54 // Unique transaction IDs for UICC messages |
|
55 const TUint8 KUiccTrIdCommon( 0xFA ); |
|
56 const TUint8 KUiccTrIdReadSatIcon( 0xFB ); |
|
57 const TUint8 KUiccTrIdReadIconClut( 0xF8 ); |
|
58 const TUint8 KUiccTrIdReadIconInstancePhase1( 0xF7 ); |
|
59 const TUint8 KUiccTrIdReadIconInstancePhase2( 0xF6 ); |
|
60 const TUint8 KUiccTrIdServiceTableByte4( 0xFC ); |
|
61 const TUint8 KUiccTrIdServiceTableByte5( 0xF9 ); |
|
62 const TUint8 KUiccTrIdServiceTableByte7( 0xFD ); |
|
63 const TUint8 KUiccTrIdServiceTableByte6( 0xFF ); |
|
64 |
|
65 // PollInterval, PollingOff |
|
66 const TUint8 KDefaultPollInterval( 0x00 ); |
|
67 const TUint8 KMinPollInterval( 0x05 ); |
|
68 const TUint8 KMaxPollInterval( 0xFF ); |
|
69 |
|
70 const TUint8 KBlackAndWhite( 0x11 ); // Image Coding Scheme |
|
71 |
|
72 |
|
73 |
|
74 // FORWARD DECLARATIONS |
|
75 class CMmPhoNetSender; |
|
76 class CTsySatMessaging; |
|
77 class CBerTlv; |
|
78 |
|
79 // CLASS DECLARATION |
|
80 |
|
81 /** |
|
82 * SAT message handler class. |
|
83 * Handles message sending and receiving to and from phonet. |
|
84 * |
|
85 * @lib simatktsy.lib |
|
86 * @since Series60_ver 2.6 |
|
87 */ |
|
88 class CSatMessHandler : public CBase, public MMmMessageReceiver |
|
89 { |
|
90 public: // Data types |
|
91 |
|
92 //Type of SIM card |
|
93 enum TIccType |
|
94 { |
|
95 EIccTypeSim2GGsm, |
|
96 EIccTypeSim3G, |
|
97 EIccTypeSimUnknown |
|
98 }; |
|
99 |
|
100 //Ss and Ussd status |
|
101 enum TSsStatus |
|
102 { |
|
103 ENotBusy, |
|
104 ESsBusy, |
|
105 EUssdBusy |
|
106 }; |
|
107 |
|
108 // Location information |
|
109 struct TLocationInfo |
|
110 { |
|
111 TInt iRegStatus; // Registration status |
|
112 TBuf8<2> iLac; // Location Area Code |
|
113 TBuf8<4> iCellId; |
|
114 TBuf8<3> iOperatorCode; |
|
115 }; |
|
116 |
|
117 |
|
118 public: // Constructors and destructor |
|
119 |
|
120 /** |
|
121 * Two-phased constructor. |
|
122 * @param aTsySatMessaging pointer to TsySatMessaging class |
|
123 * @param aPnSend Phonetsender for passing messages to phonet |
|
124 */ |
|
125 static CSatMessHandler* NewL( CTsySatMessaging* aTsySatMessaging, |
|
126 CMmPhoNetSender* aPnSend ); |
|
127 |
|
128 /** |
|
129 * Destructor. |
|
130 */ |
|
131 virtual ~CSatMessHandler(); |
|
132 |
|
133 |
|
134 private: // Constructors |
|
135 |
|
136 /** |
|
137 * C++ default constructor. |
|
138 * @param aTsySatMessaging pointer to TsySatMessaging class |
|
139 * @param aPnSend Phonetsender for passing messages to phonet |
|
140 */ |
|
141 CSatMessHandler( CTsySatMessaging* aTsySatMessaging, |
|
142 CMmPhoNetSender* aPnSend ); |
|
143 |
|
144 |
|
145 public: // New methods |
|
146 |
|
147 /** |
|
148 * Display text response method. |
|
149 * @since Series60_ver 2.6 |
|
150 * @param aTransId Unique transaction ID |
|
151 * @param aCommandDetails command details tlv |
|
152 * @param aGeneralResult result of the proactive command display text |
|
153 * @param aAdditionalInfo Additional info response might give |
|
154 * @return phonet sender status |
|
155 */ |
|
156 TInt DisplayTextTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
157 TUint8 aGeneralResult, TUint8 aAdditionalInfo ); |
|
158 |
|
159 /** |
|
160 * Get Inkey response method. |
|
161 * @since NCP 3.1 |
|
162 * @param aTransId Unique transaction ID |
|
163 * @param aCommandDetails command details tlv |
|
164 * @param aRsp Response packet from Etel |
|
165 * @return phonet sender status |
|
166 */ |
|
167 TInt GetInkeyTerminalResp( const TUint8 aTransId, |
|
168 const TDes8& aCommandDetails, const RSat::TGetInkeyRspV2& aRsp ); |
|
169 |
|
170 /** |
|
171 * Get Input response method. |
|
172 * @since Series60_ver 2.6 |
|
173 * @param aTransId Unique transaction ID |
|
174 * @param aCommandDetails Command details tlv |
|
175 * @param aGeneralResult result of the proactive command Get Input |
|
176 * @param aAdditionalInfo Additional info response might give |
|
177 * @param aTextString text string provided by the user |
|
178 * @param aDataCodingScheme data coding scheme for text string |
|
179 * @return phonet sender status |
|
180 */ |
|
181 TInt GetInputTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
182 TUint8 aGeneralResult, TUint8 aAdditionalInfo, |
|
183 TDesC16& aTextString, TUint8 aDataCodingScheme ); |
|
184 |
|
185 /** |
|
186 * Play Tone response method. |
|
187 * @since Series60_ver 2.6 |
|
188 * @param Unique transaction ID |
|
189 * @param aCommandDetails |
|
190 * @param aGeneralResult result of the proactive command |
|
191 * @param aAdditionalInfo Additional info given in some cases |
|
192 * @return phonet sender status |
|
193 */ |
|
194 TInt PlayToneTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
195 TUint8 aGeneralResult, TUint8 aAdditionalInfo ); |
|
196 |
|
197 /** |
|
198 * Setup Menu response method. |
|
199 * @since Series60_ver 2.6 |
|
200 * @param aTransId Unique transaction ID |
|
201 * @param aCommandDetails command details tlv |
|
202 * @param aGeneralResult result of the proactice command Setup Menu |
|
203 * @param aAdditionalInfo Additional info response might give |
|
204 * @return phonet sender status |
|
205 */ |
|
206 TInt SetUpMenuTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
207 TUint8 aGeneralResult, TUint8 aAdditionalInfo ); |
|
208 |
|
209 /** |
|
210 * Select Item response method. |
|
211 * @since Series60_ver 2.6 |
|
212 * @param aTransId Unique transaction ID |
|
213 * @param aCommandDetails command details tlv |
|
214 * @param aGeneralResult result of the proactice command Select Item |
|
215 * @param aAdditionalInfo Additional info response might give |
|
216 * @return phonet sender status |
|
217 */ |
|
218 TInt SelectItemTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
219 TUint8 aGeneralResult, TUint8 aAdditionalInfo ); |
|
220 |
|
221 /** |
|
222 * Send SM response method. |
|
223 * @since Series60_ver 2.6 |
|
224 * @param aPCmdNumber Unique transaction ID |
|
225 * @param aCommandDetails command details tlv |
|
226 * @param aGeneralResult result of the proactice command Send SM |
|
227 * @param aAdditionalInfo Additional info response might give |
|
228 * @return phonet sender status |
|
229 */ |
|
230 TInt SendSmTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
231 TUint8 aGeneralResult, TUint8 aAdditionalInfo ); |
|
232 |
|
233 /** |
|
234 * Send SS response method. |
|
235 * @since Series60_ver 2.6 |
|
236 * @param aTransId Unique transaction ID |
|
237 * @param aCommandDetails Command details TLV |
|
238 * @param aGeneralResult result of the proactive command Send SS |
|
239 * @param aAdditionalInfo Additional info response might give |
|
240 * @return phonet sender status |
|
241 */ |
|
242 TInt SendSsTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
243 TUint8 aGeneralResult, TDesC8& aAdditionalInfo ); |
|
244 |
|
245 /** |
|
246 * Send DTMF response method. |
|
247 * @since Series60_ver 2.6 |
|
248 * @param aTransId Unique transaction ID |
|
249 * @param aPCmdNumber Command number |
|
250 * @param aGeneralResult result of the proactice command Send SS |
|
251 * @param aAdditionalInfo Additional info response might give |
|
252 * @return phonet sender status |
|
253 */ |
|
254 TInt SendDtmfTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
255 TUint8 aGeneralResult, TUint8 aAdditionalInfo ); |
|
256 |
|
257 /** |
|
258 * Send USSD response method. |
|
259 * @since Series60_ver 2.6 |
|
260 * @param aTransId Unique transaction ID |
|
261 * @param aCommandDetails command details of the PCmd |
|
262 * @param aGeneralResult result of the proactive command Send USSD |
|
263 * @param aAdditionalInfo Additional info the response might give |
|
264 * @param aUssdData Ussd text string, without the DCS byte |
|
265 * @param aUssdCbsDataCodingScheme, DCS byte of the USSD data |
|
266 * @return phonet sender status |
|
267 */ |
|
268 TInt SendUssdTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
269 TUint8 aGeneralResult, TUint8 aAdditionalInfo, |
|
270 TDes& aUssdData, TUint8 aUssdCbsDataCodingScheme ); |
|
271 |
|
272 /** |
|
273 * Polling Interval response method |
|
274 * @since Series60_ver 2.8 |
|
275 * @param aPCmdNumber Unique transaction ID |
|
276 * @param aCommandDetails command details tlv |
|
277 * @param aGeneralResult result of the proactive command |
|
278 * @param aAdditionalInfo Additional info response might give |
|
279 * @param aNumOfUnits time interval |
|
280 * @return phonet sender status |
|
281 */ |
|
282 TInt PollIntervalTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
283 TUint8 aGeneralResult, TUint8 aAdditionalInfo, |
|
284 TUint8 aNumOfUnits ); |
|
285 |
|
286 /** |
|
287 * Setup Call response method. |
|
288 * @since Series60_ver 2.6 |
|
289 * @param aTransId Unique transaction ID |
|
290 * @param aCommandDetails Command details TLV |
|
291 * @param aGeneralResult result of the proactive command Setup Call |
|
292 * @param aAdditionalInfo Additional info response might give |
|
293 * @return phonet sender status |
|
294 */ |
|
295 TInt SetUpCallTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
296 TUint8 aGeneralResult, TUint8 aAdditionalInfo ); |
|
297 |
|
298 /** |
|
299 * Refresh response method. |
|
300 * @since Series60_ver 2.6 |
|
301 * @param aPCmdNumber Unique transaction ID |
|
302 * @param aGeneralResult result of the proactice command Refresh |
|
303 * @param aAdditionalInfo Additional info response might give |
|
304 * @return phonet sender status |
|
305 */ |
|
306 TInt RefreshTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
307 TUint8 aGeneralResult, TUint8 aAdditionalInfo ); |
|
308 |
|
309 /** |
|
310 * Menu Selection method. |
|
311 * @since Series60_ver 2.6 |
|
312 * @param aTransId Unique transaction ID |
|
313 * @param aItemIdentifier identifier of the selected menu item |
|
314 * @param aHelp help requested by the user indicator |
|
315 * @return phonet sender status |
|
316 */ |
|
317 void MenuSelectionInd( TUint8 aTransId, TUint8 aItemIdentifier, |
|
318 TUint8 aHelp ); |
|
319 |
|
320 /** |
|
321 * Launch Browser terminal response method |
|
322 * @since Series60_ver 2.6 |
|
323 * @param aTransId transaction id |
|
324 * @param aPCmdNumber command number |
|
325 * @param aGeneralResult |
|
326 * @param aAdditionalInfo |
|
327 * @param aCmdQualifier |
|
328 * @return phonet sender status |
|
329 */ |
|
330 TInt LaunchBrowserTerminalResp( TUint8 aTransId, |
|
331 TDes8& aCommandDetails, TUint8 aGeneralResult, |
|
332 TUint8 aAdditionalInfo ); |
|
333 |
|
334 /** |
|
335 * Test if a command was performed successfully |
|
336 * @since Series60_ver 2.6 |
|
337 * @param aGeneralResult |
|
338 * @return ETrue if command performed successfully, else EFalse |
|
339 */ |
|
340 TBool CommandPerformedSuccessfully( TUint8 aGeneralResult ); |
|
341 |
|
342 /** |
|
343 * SetupIdleModeText Terminal Response |
|
344 * @since Series60_ver 2.6 |
|
345 * @param aTransId Unique transaction ID |
|
346 * @param aCommandDetails command details tlv |
|
347 * @param aGeneralResult result of the proactive command display text |
|
348 * @param aAdditionalInfo Additional info response might give |
|
349 * @return phonet sender status |
|
350 */ |
|
351 TInt SetUpIdleModeTextTerminalResp( TUint8 aTransId, |
|
352 TDes8& aCommandDetails, TUint8 aGeneralResult, |
|
353 TUint8 aAdditionalInfo ); |
|
354 |
|
355 /** |
|
356 * SetUpEventList response method. |
|
357 * @since Series60_ver 2.6 |
|
358 * @param aTransId Unique transaction ID |
|
359 * @param aCommandDetails command details tlv |
|
360 * @param aGeneralResult result of the proactive command display text |
|
361 * @param aAdditionalInfo Additional info response might give |
|
362 * @return phonet sender status |
|
363 */ |
|
364 |
|
365 TInt SetUpEventListTerminalResp( TUint8 aTransId, |
|
366 TDes8& aCommandDetails, TUint8 aGeneralResult, |
|
367 TUint8 aAdditionalInfo ); |
|
368 |
|
369 /** |
|
370 * PollingOff response method. |
|
371 * @since Series60_ver 2.6 |
|
372 * @param aPCmdNumber Unique transaction ID |
|
373 * @param aCommandDetails command details tlv |
|
374 * @param aAdditionalInfo Additional info response might give |
|
375 * @return phonet sender status |
|
376 */ |
|
377 TInt PollingOffTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
378 TUint8 aGeneralResult, TUint8 aAdditionalInfo ); |
|
379 |
|
380 /** |
|
381 * LocalInfo response method. |
|
382 * @since Series60_ver 2.6 |
|
383 * @param aTransId Unique transaction ID |
|
384 * @param aCommandDetails Command details TLV |
|
385 * @param aGeneralResult result of the proactice command |
|
386 * @param aAdditionalInfo Additional info response might give |
|
387 * @return phonet sender status |
|
388 */ |
|
389 TInt LocalInfoTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
390 TUint8 aGeneralResult, TDes& aAdditionalInfo ); |
|
391 |
|
392 /** |
|
393 * Timer management response method. |
|
394 * @since Series60_ver 2.6 |
|
395 * @param aTransId Unique transaction ID |
|
396 * @param aCommandDetails Command details TLV |
|
397 * @param aGeneralResult result of the proactive command |
|
398 * @param aTimerValue[3]: timer value in hours, minutes and seconds |
|
399 * @param aTimerId: timer identifier |
|
400 * @param aAdditionalInfo Additional info response might give |
|
401 * @return phonet sender status |
|
402 */ |
|
403 TInt TimerMgmtTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
404 TUint8 aGeneralResult, TUint8 aTimerValue[3], TUint8 aTimerId, |
|
405 TUint8 aAdditionalInfo ); |
|
406 |
|
407 /** |
|
408 * Timer expiration indication |
|
409 * @since Series60_ver 2.6 |
|
410 * @param TUint8 aTransId: Unique transaction ID |
|
411 * @param TUint8 aTimerId: timer identification |
|
412 * @param TUint8 aTimerValue: timer value |
|
413 * @return TInt: |
|
414 */ |
|
415 TInt TimerExpirationInd ( TUint8 aTransId, TUint8 aTimerId, |
|
416 TUint8 aTimerValue[3] ); |
|
417 |
|
418 /** |
|
419 * More time response |
|
420 * @since Series60_ver 2.6 |
|
421 * @param aTransId Unique transaction ID |
|
422 * @param aCommandDetails Command details TLV |
|
423 * @param aGeneralResult result of the proactive command |
|
424 * @return phonet sender status |
|
425 */ |
|
426 TInt MoreTimeTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
427 TUint8 aGeneralResult ); |
|
428 |
|
429 /** |
|
430 * Open Channel response method |
|
431 * @since Series60_ver 3.0 |
|
432 * @param aTransId Unique transaction ID |
|
433 * @param aCommandDetails Command details TLV |
|
434 * @param aGeneralResult result of the proactive command |
|
435 * @param aAdditionalInfo Additional info response might give |
|
436 * @param aBearerType |
|
437 * @param aBearer |
|
438 * @param aBufferSize |
|
439 * @return phonet sender status |
|
440 */ |
|
441 TInt OpenChannelTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
442 TUint8 aGeneralResult, TDes8& aAdditionalInfo, TUint8 aBearerType, |
|
443 TDesC8& aBearer, TUint16 aBufferSize ); |
|
444 |
|
445 /** |
|
446 * Get Channel Status response method. |
|
447 * @since Series60_ver 3.0 |
|
448 * @param aTransId Unique transaction ID |
|
449 * @param aCommandDetails Command details TLV |
|
450 * @param aGeneralResult result of the proactice command |
|
451 * @param aAdditionalInfo Additional info response might give |
|
452 * @return phonet sender status |
|
453 */ |
|
454 TInt GetChannelStatusTerminalResp( TUint8 aTransId, |
|
455 TDes8& aCommandDetails, TUint8 aGeneralResult, |
|
456 const TDes8& aAdditionalInfo ); |
|
457 |
|
458 /** |
|
459 * Close Channel response method. |
|
460 * @since Series60_ver 3.0 |
|
461 * @param aTransId Unique transaction ID |
|
462 * @param aCommandDetails Command details TLV |
|
463 * @param aGeneralResult result of the proactice command |
|
464 * @param aAdditionalInfo Additional info response might give |
|
465 * @return phonet sender status |
|
466 */ |
|
467 TInt CloseChannelTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
468 TUint8 aGeneralResult, const TDes8& aAdditionalInfo ); |
|
469 |
|
470 /** |
|
471 * Receive Data response method. |
|
472 * @since Series60_ver 3.0 |
|
473 * @param aTransId Unique transaction ID |
|
474 * @param aCommandDetails Command details TLV |
|
475 * @param aGeneralResult result of the proactice command |
|
476 * @param aAdditionalInfo Additional info response might give |
|
477 * @param aChannelDataLength |
|
478 * @return phonet sender status |
|
479 */ |
|
480 TInt ReceiveDataTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
481 TUint8 aGeneralResult, const TDes8& aAdditionalInfo, |
|
482 TUint8 aChannelDataLength ); |
|
483 |
|
484 /** |
|
485 * Send Data response method. |
|
486 * @since Series60_ver 3.0 |
|
487 * @param aTransId Unique transaction ID |
|
488 * @param aCommandDetails Command details TLV |
|
489 * @param aGeneralResult result of the proactice command |
|
490 * @param aAdditionalInfo Additional info response might give |
|
491 * @param aChannelDataLength |
|
492 * @return phonet sender status |
|
493 */ |
|
494 TInt SendDataTerminalResp( TUint8 aTransId, TDes8& aCommandDetails, |
|
495 TUint8 aGeneralResult, const TDes8& aAdditionalInfo, |
|
496 TUint8 aChannelDataLength ); |
|
497 |
|
498 /** |
|
499 * SendTerminalResponse |
|
500 * @since Series60_ver 2.6 |
|
501 * @param aCommandDetails Command details TLV |
|
502 * @param aBerTlvSpecificData data to be sent |
|
503 * @return phonet sender status |
|
504 */ |
|
505 TInt SendTerminalResponse( const TDes8& aCommandDetails, |
|
506 const TDesC8& aBerTlvSpecificData, |
|
507 const TUint8 aTransId = 0 ); |
|
508 |
|
509 /** |
|
510 * Sends an empty terminal response to the SIMSON |
|
511 * @param aTransId transaction id / should be same as in REQ |
|
512 * @return phonet sender status |
|
513 */ |
|
514 TInt SendEmptyTerminalRsp( const TInt aTransId ); |
|
515 |
|
516 /** |
|
517 * send UICC_CAT_REQ |
|
518 * @since Series60_ver 3.0 |
|
519 * @param aTransId Transaction id of envelope |
|
520 * @param aBerTlv TLV data of the envelope command |
|
521 * @param aStore Decides wether the provided envelope |
|
522 * is stored for resending or not. |
|
523 * @return phonet sender status |
|
524 */ |
|
525 TInt UiccCatReqEnvelope( TUint8 aTransId, const TDesC8& aBerTlv, |
|
526 TBool aStore = ETrue ); |
|
527 |
|
528 /** |
|
529 * Send a Sms-Pp report to SMS server, with subblocks |
|
530 * @since Series60_ver 2.6 |
|
531 * @param aTransId Unique transaction Id |
|
532 * @param aData data to be appended to the request |
|
533 * @return None |
|
534 */ |
|
535 void SendSmsReportReq( TUint8 aTransId, TDesC8& aData ); |
|
536 |
|
537 /** |
|
538 * Send a request to SMS server |
|
539 * @since Series60_ver 2.6 |
|
540 * @param aTransId Unique transaction Id |
|
541 * @param aMsgId Message identifier of the request |
|
542 * @param aData data to be appended to the request |
|
543 * @return None |
|
544 */ |
|
545 void SmsResoureConfReq( TUint8 aTransId, TUint8 aMsgId, TDesC8& aData ); |
|
546 |
|
547 /** |
|
548 * Breaks a INFO_SERIAL_NUMBER_READ_RESP ISI-message |
|
549 * @since Series60_ver 3.0 |
|
550 * @param TIsiReceiveC& aIsiMessage response to envelope |
|
551 * @return none |
|
552 */ |
|
553 void InfoSerialNumberReadResp( const TIsiReceiveC& aIsiMessage ); |
|
554 |
|
555 /** |
|
556 * Send NET_NEIGHBOUR_CELLS_REQ message to Phonet. |
|
557 * @since Series60_ver 2.6 |
|
558 * @param aTransId a unique transaction id |
|
559 * @param aCellInfoType NET_NEIGHBOUR_CELL_INFO_TYPE |
|
560 * @return TInt: Phonet sender status |
|
561 */ |
|
562 TInt NetNeighbourCellsReq( TUint8 aTransId, TUint8 aCellInfoType ); |
|
563 |
|
564 /** |
|
565 * Breaks a NET_NEIGHBOUR_CELLS_RESP ISI-message |
|
566 * @since Series60_ver 3.0 |
|
567 * @param aIsiMessage response to envelope |
|
568 * @return none |
|
569 */ |
|
570 void NetNeighbourCellResp( const TIsiReceiveC& aIsiMessage ); |
|
571 |
|
572 /** |
|
573 * Sends a CALL_MODEM_RESOURCE_REQ ISI-message to modem Call server. |
|
574 * @param sTransId Unique transaction id |
|
575 * @param aMsg ISI message data to be sent |
|
576 * @return TInt: Phonet sender status |
|
577 */ |
|
578 TInt CallModemResourceReq( TUint8 aTransId, const TDesC8& aMsg ); |
|
579 |
|
580 /** |
|
581 * Sends a CALL_MODEM_RESOURCE_CONF_REQ ISI-message to modem Call server |
|
582 * @param aResourceId resource to be controlled |
|
583 * @param aResourceIdMask mask for resource to be controlled |
|
584 * @return TInt: Phonet sender status |
|
585 */ |
|
586 TInt CallModemResourceConfReq( TUint16 aResourceId, TUint16 aResourceIdMask ); |
|
587 |
|
588 /** |
|
589 * Sends a SS_RESOURCE_CONF_REQ ISI-message to modem SS server. |
|
590 * @return TInt: Phonet sender status |
|
591 */ |
|
592 TInt SsResourceConfReq(); |
|
593 |
|
594 /** |
|
595 * Sends a SS_RESOURCE_CONTROL_REQ ISI-message to modem SS server. |
|
596 * @param aTransId Unique transaction id |
|
597 * @param aMsg ISI message data to be sent |
|
598 * @return TInt: Phonet sender status |
|
599 */ |
|
600 TInt SsResourceControlReq( |
|
601 TUint8 aTransId, |
|
602 const TDesC8& aMsg |
|
603 ); |
|
604 |
|
605 /** |
|
606 * Sends a GPDS_RESOURCE_CONF_REQ ISI-message to modem SS server. |
|
607 * @return TInt: Phonet sender status |
|
608 */ |
|
609 TInt GpdsResourceConfReq(); |
|
610 |
|
611 /** |
|
612 * Sends a GPDS_RESOURCE_CONTROL_REQ ISI-message to modem SS server. |
|
613 * @param aTransId Unique transaction id |
|
614 * @param aMsg ISI message data to be sent |
|
615 * @return TInt: Phonet sender status |
|
616 */ |
|
617 TInt GpdsResourceControlReq( |
|
618 TUint8 aTransId, |
|
619 const TDesC8& aMsg |
|
620 ); |
|
621 |
|
622 /** |
|
623 * Set Polling Interval, sending a request to sim server |
|
624 * @since Series60_ver 2.6 |
|
625 * @param aTraId Transaction Id |
|
626 * @param aValue in seconds |
|
627 * @return none |
|
628 */ |
|
629 void SetPollingInterval( TUint8 aTraId, TUint8 aValue ); |
|
630 |
|
631 /** |
|
632 * Method to check SIM server response to a refresh request |
|
633 * @since Series60_ver 2.6 |
|
634 * @param aStatus SIM server status |
|
635 * @return none |
|
636 */ |
|
637 void RefreshResult( TUint8 aStatus ); |
|
638 |
|
639 /** |
|
640 * Method to check SIM server response to a set polling request |
|
641 * Called by SimAtkRespL |
|
642 * @since Series60_ver 2.6 |
|
643 * @param aStatus SIM server status |
|
644 * @param aTransId Transaction Id |
|
645 * @param aInterval obtained from the ISI message of the response |
|
646 * @param None |
|
647 */ |
|
648 void SetPollingResult( TUint8 aStatus, TUint8 aTransId, |
|
649 TUint8 aInterval ); |
|
650 |
|
651 /** |
|
652 * Method to check that proactive command is in correct format. |
|
653 * @since NCP 5.0 |
|
654 * @param aIsiMessage |
|
655 * @return KErrNone or KErrCorrupt |
|
656 */ |
|
657 TInt CheckProactiveCommand( const TIsiReceiveC& aIsiMessage ); |
|
658 |
|
659 /** |
|
660 * Send a SMS_CB_ROUTING_REQ ISI-message |
|
661 * @since Series60_ver 2.6 |
|
662 * @param aTransId |
|
663 * @param aRoutingCommand |
|
664 * Return value: phonet sender return value |
|
665 */ |
|
666 TInt SmsCbRoutingReq( TUint8 aTransId, TUint8 aRoutingCommand ); |
|
667 |
|
668 /** |
|
669 * Breaks a SMS_CB_ROUTING_RESP ISI-message |
|
670 * @since NCP 3.1 |
|
671 * @param aIsiMessage Message from SMS server |
|
672 * Return value: none |
|
673 */ |
|
674 void SmsCbRoutingResp( const TIsiReceiveC& aIsiMessage ); |
|
675 |
|
676 /** |
|
677 * Breaks a SMS_RESOURCE_CONF_IND ISI-message |
|
678 * @since NCP 3.1 |
|
679 * @param aIsiMessage Message from SMS server |
|
680 * Return value: none |
|
681 */ |
|
682 void SmsResourceConfInd( const TIsiReceiveC& aIsiMessage ); |
|
683 |
|
684 /** |
|
685 * Creates InfoSerialNumberReadReq ISI message and sends it to Phonet |
|
686 * @since Series60_ver 3.0 |
|
687 * @param aTransId: unique transaction id |
|
688 * @param aTarget: requested data |
|
689 * return value TInt : success/failure value |
|
690 */ |
|
691 TInt InfoSerialNumberReadReq( TUint8 aTransId, TUint8 aTarget ); |
|
692 |
|
693 /** |
|
694 * Creates NET_CELL_INFO_GET_REQ ISI message and sends it to Phonet |
|
695 * @param aTransId: unique transaction id |
|
696 * return value TInt: success/failure value |
|
697 */ |
|
698 TInt NetCellInfoGetReq( TUint8 aTransId ); |
|
699 |
|
700 /** |
|
701 * Breaks a NET_CELL_INFO_GET_RESP ISI-message |
|
702 * @param aIsiMessage Net cell info get resp ISI message |
|
703 * Return value: none |
|
704 */ |
|
705 void NetCellInfoGetResp( const TIsiReceiveC& aIsiMessage ); |
|
706 |
|
707 /** |
|
708 * Sends a GSS_CS_SERVICE_REQ isi-message to phonet |
|
709 * @since Series60_ver 2.6 |
|
710 * @param aTransId Transaction ID |
|
711 * @param TUint8 aOperation: Gss operation |
|
712 * @retrun TInt: Phonet sender status |
|
713 */ |
|
714 TInt GssCsServiceReq( TUint8 aTransId, TUint8 aOperation ); |
|
715 |
|
716 /** |
|
717 * Breaks a GSS_CS_SERVICE_RESP ISI-message |
|
718 * @since Series60_ver 3.0 |
|
719 * @param aIsiMessage ISI message from GSS server |
|
720 * Return value: none |
|
721 */ |
|
722 void GssCsServiceResp( const TIsiReceiveC& aIsiMessage ); |
|
723 |
|
724 /** |
|
725 * Breaks a GSS_CS_SERVICE_FAIL_RESP ISI-message |
|
726 * @since Series60_ver 3.0 |
|
727 * @param aIsiMessage ISI message from GSS server |
|
728 * Return value: none |
|
729 */ |
|
730 void GssCsServiceFailResp( const TIsiReceiveC& aIsiMessage ); |
|
731 |
|
732 /** |
|
733 * Language Notification response |
|
734 * @since Series60_ver 2.6 |
|
735 * @param aTransId Unique transaction ID |
|
736 * @param aCommandDetails Command details TLV |
|
737 * @param aGeneralResult result of the proactive command |
|
738 * @param aLanguage |
|
739 * @return phonet sender status |
|
740 */ |
|
741 TInt LanguageNotificationTerminalResp( TUint8 aTransId, |
|
742 TDes8& aCommandDetails, TUint8 aGeneralResult, |
|
743 TUint8 aAdditionalInfo ); |
|
744 |
|
745 /** |
|
746 * Breaks a NET_TIME_IND isi-message |
|
747 * @since Series60_ver 3.0 |
|
748 * @param aIsiMessage received indication |
|
749 * @return none |
|
750 */ |
|
751 void NetTimeInd( const TIsiReceiveC& aIsiMessage ); |
|
752 |
|
753 |
|
754 /** |
|
755 * Sends a NET_RAT_REQ isi-message to phonet |
|
756 * @since Series60_ver 2.6 |
|
757 * @param aTransId Transaction ID |
|
758 * @retrun TInt: Phonet sender status |
|
759 */ |
|
760 TInt NetRatReq( TUint8 aTransId ); |
|
761 |
|
762 /* |
|
763 * Breaks a NET_RAT_RESP ISI-message |
|
764 * @since Series60_ver 3.0 |
|
765 * @param aIsiMessage Net rat resp ISI message |
|
766 * Return value: none |
|
767 */ |
|
768 void NetRatResp( const TIsiReceiveC& aIsiMessage ); |
|
769 |
|
770 /** |
|
771 * Send a response to SMS server after a SMS resource Indication received from |
|
772 * SMS sever. |
|
773 * This response tells whether the SMS can be sent or not. |
|
774 * @since Series60_ver 2.6 |
|
775 * @param aTransId Transaction id, same as in the request |
|
776 * @param aData Data to be sent |
|
777 * @return none |
|
778 */ |
|
779 TInt SendSmsResourceReq( TUint8 aTransId, TDesC8& aData, |
|
780 TUint8 aReceiverObject ); |
|
781 |
|
782 /** |
|
783 * Breaks a SS_STATUS_IND isi-message |
|
784 * @since Series60_ver 3.0 |
|
785 * @param TIsiReceiveC& aIsiMessage received indication |
|
786 * @return none |
|
787 */ |
|
788 void SsStatusInd( const TIsiReceiveC& aIsiMessage ); |
|
789 |
|
790 /** |
|
791 * Helper method to find out does the given result require an additional |
|
792 * info byte(s) in terminal response |
|
793 * @param aGeneralResult |
|
794 * @return ETrue if result needs an additional info byte(s), else EFalse |
|
795 */ |
|
796 TBool AdditionalInfoNeeded( const TUint8 aGeneralResult ); |
|
797 |
|
798 /** |
|
799 * Breaks a NET_RAT_IND isi-message |
|
800 * @since Series60_ver 3.0 |
|
801 * @param aIsiMessage received indication |
|
802 * @return none |
|
803 */ |
|
804 void NetRatInd( const TIsiReceiveC& aIsiMessage ); |
|
805 |
|
806 /** |
|
807 * Stores Network service status to an internal structure |
|
808 * @param aIsiMessage NetCellInfoInd or NetCellInfoGetResp |
|
809 * @return none |
|
810 */ |
|
811 void StoreNetServiceStatus( const TIsiReceiveC& aIsiMessage ); |
|
812 |
|
813 /** |
|
814 * Getter for location information |
|
815 * @since NCP 5.0 |
|
816 * @return Location Information structure |
|
817 */ |
|
818 const TLocationInfo& LocationInfo(); |
|
819 |
|
820 /** |
|
821 * Sends a INFO_PP_READ_REQ isi-message to phonet |
|
822 * @since NCP 5.0 |
|
823 * @param aReqType Product profile feature being requested |
|
824 * @retrun TInt: Phonet sender status |
|
825 */ |
|
826 TInt InfoPpReadReq( const TUint8 aReqType ); |
|
827 |
|
828 /** |
|
829 * Breaks a INFO_PP_READ_RESP isi-message |
|
830 * @since Series60_ver 5.0 |
|
831 * @param aIsiMessage received indication |
|
832 * @return none |
|
833 */ |
|
834 void InfoPpReadResp( const TIsiReceiveC& aIsiMessage ); |
|
835 |
|
836 /** |
|
837 * Validates lengths of simple tlv objects inside BER TLV |
|
838 * object |
|
839 * @param berTlv BER TLV object |
|
840 * @retrun TInt: Validation status |
|
841 */ |
|
842 TInt CheckTlvObjects( CBerTlv& berTlv ); |
|
843 |
|
844 /** |
|
845 * Activate or DeActivate MO SMS Control on SMS Server according to SIM |
|
846 * Server Response |
|
847 * @param MO SM control status in SIM card |
|
848 * @return none |
|
849 */ |
|
850 void SimMoSmsControlAvail( TUint8 aStatus ); |
|
851 |
|
852 /** |
|
853 * Send UICC_CAT_REQ(UICC_SB_TERMINAL_PROFILE) ISI message |
|
854 * @return none |
|
855 */ |
|
856 void UiccTerminalProfileReq(); |
|
857 |
|
858 /** |
|
859 * Send UICC_APPL_CMD_REQ ISI message for reading data |
|
860 * from service table of UICC |
|
861 * @param aTrId Transaction ID |
|
862 * @param aFileOffset Offset of service table to be read |
|
863 * @return Error code |
|
864 */ |
|
865 TInt UiccReadServiceTableReq( TUint8 aTrId, TUint16 aFileOffset ); |
|
866 |
|
867 /** |
|
868 * Send UICC_APPL_CMD_REQ ISI message for reading data |
|
869 * from EF img |
|
870 * @param aRecordNumber Record number |
|
871 * @param aFileOffset File Offset |
|
872 * @param aDataAmount Data amount |
|
873 * @param aTrId Transaction ID |
|
874 * @return Error code |
|
875 */ |
|
876 TInt UiccReadSatIconReq( |
|
877 TUint8 aRecordNumber, |
|
878 TUint8 aFileOffset, |
|
879 TUint8 aDataAmount, |
|
880 TUint8 aTrId ); |
|
881 |
|
882 /** |
|
883 * Send UICC_APPL_CMD_REQ ISI message for reading image instance |
|
884 * @param aFileId File ID |
|
885 * @return Error code |
|
886 */ |
|
887 TInt UiccReadSatIconInstanceReq( TUint16 aFileId ); |
|
888 |
|
889 /** |
|
890 * Send UICC_CAT_REQ ISI message |
|
891 * @param aCommand Command |
|
892 * @return Error code |
|
893 */ |
|
894 TInt UiccCatReq( TUint8 aCommand ); |
|
895 |
|
896 /** |
|
897 * Send UICC_CAT_REQ ISI message for refresh command |
|
898 * @param aTransId Transaction ID |
|
899 * @param aServiceType Service type |
|
900 * @param aFileList File list |
|
901 * @param aAid Application ID |
|
902 * @return Error code |
|
903 */ |
|
904 TInt UiccCatReqRefresh( |
|
905 const TUint8 aTransId, |
|
906 const TUint8 aServiceType, |
|
907 TDes8& aFileList, |
|
908 const TDesC8& aAid ); |
|
909 |
|
910 /** |
|
911 * Send UICC_CAT_REQ ISI message for terminal response |
|
912 * @param aCommandDetails Command details |
|
913 * @param aBerTlvSpecificData BER-TLV data |
|
914 * @param aTransId Transaction ID |
|
915 * @return Error code |
|
916 */ |
|
917 TInt UiccCatReqTerminalResponse( |
|
918 const TDes8& aCommandDetails, |
|
919 const TDesC8& aBerTlvSpecificData, |
|
920 const TUint8 aTransId = 0 ); |
|
921 |
|
922 /** |
|
923 * Handle UICC_CAT_RESP ISI message for envelope response |
|
924 * @param aIsiMessage Received ISI message |
|
925 * @return Information about handling of the message |
|
926 */ |
|
927 TBool UiccCatRespEnvelope( const TIsiReceiveC& aIsiMessage ); |
|
928 |
|
929 /** |
|
930 * Handle UICC_CAT_RESP ISI message for terminal response |
|
931 * @param aIsiMessage Received ISI message |
|
932 * @return Information about handling of the message |
|
933 */ |
|
934 TBool UiccCatRespTerminalResponse( const TIsiReceiveC& aIsiMessage ); |
|
935 |
|
936 /** |
|
937 * Get application file ID |
|
938 * @return Application file ID |
|
939 */ |
|
940 const TDesC8& GetApplicationFileId(); |
|
941 |
|
942 /** |
|
943 * Set status of iSatReady flag |
|
944 * @param aSatReadyStatus SAT status |
|
945 * @return None |
|
946 */ |
|
947 void SetSatReadyStatus( TBool aSatReadyStatus ); |
|
948 |
|
949 /** |
|
950 * Get status of iSatReady flag |
|
951 * @return SAT status |
|
952 */ |
|
953 TBool GetSatReadyStatus(); |
|
954 |
|
955 /** |
|
956 * Get status of iTerminalProfileSent flag |
|
957 * @return Terminal profile status |
|
958 */ |
|
959 TBool GetTerminalProfileStatus(); |
|
960 |
|
961 /** |
|
962 * Get clut data |
|
963 * @return Clut data |
|
964 */ |
|
965 const TDesC8& GetClut(); |
|
966 |
|
967 public: // Inline functions |
|
968 |
|
969 /** |
|
970 * Returns time zone information received from network. |
|
971 * @since NCP 5.0 |
|
972 * @param none |
|
973 * @return TUint8 Time zone |
|
974 */ |
|
975 inline TUint8 TimeZone() const; |
|
976 |
|
977 /** |
|
978 * Method to check if IMEI is successfully received |
|
979 * @since NCP 5.0 |
|
980 * @return ETrue if IMEI is known, otherwise EFalse |
|
981 * @param None |
|
982 */ |
|
983 inline TBool ImeiAvailable() const; |
|
984 |
|
985 /** |
|
986 * Method to check Location information status |
|
987 * @since NCP 5.0 |
|
988 * @return ETrue or EFalse |
|
989 * @param None |
|
990 */ |
|
991 inline TBool ServiceAvailable() const; |
|
992 |
|
993 /** |
|
994 * Get Polling off status |
|
995 * @since NCP 5.0 |
|
996 * @return Return ETrue if Polling is set off, |
|
997 * and false after a polling interval pcmd |
|
998 */ |
|
999 inline TBool PollingOff() const; |
|
1000 |
|
1001 /** |
|
1002 * Set Polling off status |
|
1003 * @since NCP 5.0 |
|
1004 * @param aPollingOff true after a Polling Off, |
|
1005 * and false after a polling interval pcmd |
|
1006 * @return none |
|
1007 */ |
|
1008 inline void SetPollingOff( const TBool aPollingOff ); |
|
1009 |
|
1010 /** |
|
1011 * Get Ss status |
|
1012 * @since NCP 5.0 |
|
1013 * @return status indicating if Ss or Ussd transaction ongoing |
|
1014 */ |
|
1015 inline TSsStatus SsStatus() const; |
|
1016 |
|
1017 /** |
|
1018 * Get current access technology |
|
1019 * @since NCP 5.1 |
|
1020 * @return current access technology |
|
1021 */ |
|
1022 inline TUint8 CurrentAccessTechnology() const; |
|
1023 |
|
1024 #ifdef INFO_PP_ENHANCED_NETWORK_SELECTION |
|
1025 /** |
|
1026 * Get current status of INFO_PP_ENHANCED_NETWORK_SELECTION PP flag |
|
1027 * @return current status of INFO_PP_ENHANCED_NETWORK_SELECTION PP flag |
|
1028 */ |
|
1029 inline TBool EnsSupported() const; |
|
1030 #endif |
|
1031 |
|
1032 /** |
|
1033 * Get Old Polling interval status |
|
1034 * @return Return ETrue if Old Polling is set on, |
|
1035 * and EFalse otherwise |
|
1036 */ |
|
1037 inline TBool OldPollInterval() const; |
|
1038 |
|
1039 public: // Functions from MMmMessageReceiver-interface |
|
1040 |
|
1041 /** |
|
1042 * Called by phonet receiver when an ISI message has |
|
1043 * been received |
|
1044 * @since Series60_ver 3.0 |
|
1045 * @param aIsiMessage The received ISI message |
|
1046 * @return none |
|
1047 */ |
|
1048 virtual void ReceiveMessageL( const TIsiReceiveC& aIsiMessage ); |
|
1049 |
|
1050 /** |
|
1051 * Handles errors which comes come from PhoNetReceiver RunError |
|
1052 * @param aIsiMessage The received ISI message |
|
1053 * @param aError Error code |
|
1054 * @return none |
|
1055 */ |
|
1056 virtual void HandleError( const TIsiReceiveC& /*aIsiMessage*/, |
|
1057 TInt /*aErrorCode*/ ); |
|
1058 |
|
1059 |
|
1060 private: // Constructors |
|
1061 |
|
1062 /** |
|
1063 * Copy constructor, usage not allowed |
|
1064 * @param Satmesshandler reference |
|
1065 */ |
|
1066 CSatMessHandler( const CSatMessHandler& aRhs ); |
|
1067 |
|
1068 /** |
|
1069 * Assignment operator, usage not allowed |
|
1070 * @param Satmesshandler reference |
|
1071 * @return aRhs SatMessHandler reference |
|
1072 */ |
|
1073 CSatMessHandler& operator = ( const CSatMessHandler& aRhs ); |
|
1074 |
|
1075 /** |
|
1076 * Constructor method for sat message handler. |
|
1077 */ |
|
1078 void ConstructL(); |
|
1079 |
|
1080 |
|
1081 private: // New methods |
|
1082 |
|
1083 /** |
|
1084 * Handles the Net server related messages |
|
1085 * @since Series60_ver 3.0 |
|
1086 * @param aIsiMessage Isi message from net server |
|
1087 * @return none |
|
1088 */ |
|
1089 void NetServerMessageReceived( const TIsiReceiveC& aIsiMessage ); |
|
1090 |
|
1091 /** |
|
1092 * Handles the Phone Info server related messages |
|
1093 * @since Series60_ver 3.0 |
|
1094 * @param aIsiMsg proactive command |
|
1095 * @return none |
|
1096 */ |
|
1097 void PhoneInfoMessageReceived( const TIsiReceiveC& aIsiMessage ); |
|
1098 |
|
1099 /** |
|
1100 * Handles the UICC server related messages |
|
1101 * @param aIsiMessage received ISI message |
|
1102 * @return Information about handling of response |
|
1103 */ |
|
1104 TBool UiccServerMessageReceived( const TIsiReceiveC& aIsiMessage ); |
|
1105 |
|
1106 /** |
|
1107 * Handles the Sms server related messages |
|
1108 * @since NCP 3.1 |
|
1109 * @param aIsiMessage Message from SMS server |
|
1110 * @return none |
|
1111 */ |
|
1112 void SmsServerMessageReceived( const TIsiReceiveC& aIsiMessage ); |
|
1113 |
|
1114 /** |
|
1115 * Handles the Ss server related messages |
|
1116 * @since Series60_ver 3.0 |
|
1117 * @param aIsiMsg proactive command |
|
1118 * @return none |
|
1119 */ |
|
1120 void SsServerMessageReceived( const TIsiReceiveC& aIsiMessage ); |
|
1121 |
|
1122 /** |
|
1123 * Handles the GSM Stack server related messages |
|
1124 * @since Series60_ver 3.0 |
|
1125 * @param aIsiMessage ISI message from GSS server |
|
1126 * @return none |
|
1127 */ |
|
1128 void GsmStackServerMessageReceived( const TIsiReceiveC& aIsiMessage ); |
|
1129 |
|
1130 /** |
|
1131 * Handles proactive procedures, i.e Call Control, Data Download, |
|
1132 * Event Download and MO-SMS Control related messages |
|
1133 * @since NCP 3.1 |
|
1134 * @param aIsiMessage received ISI message |
|
1135 * @return none |
|
1136 */ |
|
1137 void ProactiveProcedureMessageReceivedL( |
|
1138 const TIsiReceiveC& aIsiMessage ); |
|
1139 |
|
1140 /** |
|
1141 * Sends a PN_ATK message with the data given as parameter |
|
1142 * @since NCP 5.1 |
|
1143 * @param aReceiverObject: Receiver object ID |
|
1144 * @param aTransactionId: Message Transaction ID |
|
1145 * @param aMessageId: Message identifier |
|
1146 * @param aData: Message data to be sent |
|
1147 * @return Error/Success value from sending the message |
|
1148 */ |
|
1149 TInt CSatMessHandler::SendPnAtkMessage( const TUint8 aReceiverObject, |
|
1150 const TUint8 aTransactionId, const TInt aMessageId, |
|
1151 const TDesC8& aData ); |
|
1152 |
|
1153 /** |
|
1154 * Breaks UICC_APPL_CMD_RESP ISI message |
|
1155 * @param aReceiverObject: Receiver object ID |
|
1156 * @return None |
|
1157 */ |
|
1158 void UiccApplCmdResp( const TIsiReceiveC& aIsiMessage ); |
|
1159 |
|
1160 /** |
|
1161 * Breaks a UICC_CAT_IND ISI-message |
|
1162 * @param aIsiMessage Received ISI message |
|
1163 * @return None |
|
1164 */ |
|
1165 void UiccCatInd( const TIsiReceiveC& aIsiMessage ); |
|
1166 |
|
1167 private: // Data |
|
1168 |
|
1169 // Pointer to SAT messaging object |
|
1170 CTsySatMessaging* iTsySatMessaging; |
|
1171 |
|
1172 // Pointer to Phonet Sender |
|
1173 CMmPhoNetSender* iPnSend; |
|
1174 |
|
1175 // Storage for terminal resp transaction id. |
|
1176 TInt iTerminalRespTraId; |
|
1177 |
|
1178 // Save the SimReadField transaction id used by GetIcon. |
|
1179 TInt iGetIconSimReadFieldTraId; |
|
1180 |
|
1181 // Save the SimReadField transaction id used by DataDownload. |
|
1182 TInt iDataDownloadSimReadFieldTraId; |
|
1183 |
|
1184 // Variable for storing card id |
|
1185 TUint8 iCardId; |
|
1186 |
|
1187 // For storing IMEI code. |
|
1188 TBuf8<16> iIMEI; |
|
1189 |
|
1190 // For storing NMR |
|
1191 TBuf8<16> iNMR; |
|
1192 |
|
1193 // For storing BCCH channel list |
|
1194 TBuf<32> iBCCHChannelList; |
|
1195 |
|
1196 // For checking if IMEI code has been received |
|
1197 TBool iSerialNumberReadReceived; |
|
1198 |
|
1199 // Stores the state of SMS CB routing request |
|
1200 TBool iSmsCbRoutingComplete; |
|
1201 |
|
1202 // Refresh proactive command is currently active flag. |
|
1203 TBool iRefreshRequestIsOn; |
|
1204 |
|
1205 // Variable for storing Timing Advance |
|
1206 TUint8 iTimingAdvance; |
|
1207 |
|
1208 // Variable for storing Timing advance Status |
|
1209 TUint8 iTaStatus; |
|
1210 |
|
1211 // Time zone information from Network. 0xFF if not received. |
|
1212 TUint8 iTimeZone; |
|
1213 |
|
1214 // SIM Server's object Id |
|
1215 TUint8 iSimServerObjectId; |
|
1216 |
|
1217 // Variable for storing Current Access Technology |
|
1218 TUint8 iCurrentAccTech; |
|
1219 |
|
1220 // Flag is true after a Polling Off, and false after a polling |
|
1221 // interval pcmd |
|
1222 TBool iPollingOff; |
|
1223 |
|
1224 // status indicating if Ss or Ussd transaction ongoing |
|
1225 TSsStatus iSsStatus; |
|
1226 |
|
1227 // Flag is set true if requested Poll Interval |
|
1228 // is longer than KMaxLegacyPollInterval |
|
1229 TBool iLongPollIntervalReq; |
|
1230 |
|
1231 // Location Information |
|
1232 TLocationInfo iLocInfo; |
|
1233 |
|
1234 // UTRAN Measurement results |
|
1235 TPtrC8 iUtranNMR; |
|
1236 |
|
1237 #ifdef INFO_PP_ATK_MO_SM_CONTROL |
|
1238 // Boolean to check if MO SMS control is supported in product profile |
|
1239 TBool iMoSmsSupportedInPp; |
|
1240 #endif // INFO_PP_ATK_MO_SM_CONTROL |
|
1241 |
|
1242 // For storing transaction id in product profile queries. Used only |
|
1243 // with INFO_PP_ATK_MO_SM_CONTROL, but there can be several |
|
1244 // simultaneous PP queries ongoing |
|
1245 TUint8 iInfoPpMoSmsTraId; |
|
1246 |
|
1247 #ifdef INFO_PP_ENHANCED_NETWORK_SELECTION |
|
1248 // Boolean to hold status of INFO_PP_ENHANCED_NETWORK_SELECTION in |
|
1249 // product profile |
|
1250 TBool iEnsSupportedInPp; |
|
1251 |
|
1252 // Boolean to check if TR for SET UP EVENT LIST has been sent |
|
1253 TBool iSetUpEventListTrSent; |
|
1254 #endif // INFO_PP_ENHANCED_NETWORK_SELECTION |
|
1255 |
|
1256 // Previous registration status |
|
1257 TUint8 iPreviousRegistrationStatus; |
|
1258 |
|
1259 // Boolean to check if OLD_POLL_INTERVAL control is supported in product profile |
|
1260 TBool iOldPollIntervalSupportedInPp; |
|
1261 |
|
1262 // To store Subscription no |
|
1263 TUint8 iSmsCbSubscriptionNo; |
|
1264 |
|
1265 // To store SAT server status |
|
1266 TBool iSatReady; |
|
1267 |
|
1268 // To store status of terminal profile |
|
1269 TBool iTerminalProfileSent; |
|
1270 |
|
1271 // To store card type |
|
1272 TUint8 iCardType; |
|
1273 |
|
1274 // To store application ID |
|
1275 TUint8 iApplicationId; |
|
1276 |
|
1277 // Application file ID |
|
1278 TBuf8<2> iApplFileId; |
|
1279 |
|
1280 // To store UICC client ID |
|
1281 TUint8 iUiccClientId; |
|
1282 |
|
1283 // Polling interval |
|
1284 TUint8 iPollingInterval; |
|
1285 |
|
1286 // Image coding scheme |
|
1287 TUint8 iImageCodingScheme; |
|
1288 |
|
1289 // Number of clut in image instance data |
|
1290 TInt iNumberOfClut; |
|
1291 |
|
1292 // Clut data |
|
1293 TPtrC8 iClutData; |
|
1294 |
|
1295 }; |
|
1296 #include "satmesshandler.inl" |
|
1297 |
|
1298 #endif // SATMESSHANDLER_H |
|
1299 |
|
1300 // End of File |