diff options
author | Denis Kenzior <denkenz@gmail.com> | 2011-08-11 01:20:53 -0500 |
---|---|---|
committer | Denis Kenzior <denkenz@gmail.com> | 2011-08-11 01:20:53 -0500 |
commit | 1522c407fb5161decd109ac2942bbcc1a4ed5f76 (patch) | |
tree | 72bceda6edad4d7a2cb204ac7aa53f7051dab679 | |
parent | 2902eb07ea37e80119c6a5e6521bc312893a1f41 (diff) | |
download | phonesim-1522c407fb5161decd109ac2942bbcc1a4ed5f76.tar.gz |
simapp: Handle 3GPP +CUSATE command
-rw-r--r-- | src/phonesim.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/phonesim.cpp b/src/phonesim.cpp index 4790e72..e7e42c4 100644 --- a/src/phonesim.cpp +++ b/src/phonesim.cpp @@ -973,6 +973,20 @@ bool SimRules::simCommand( const QString& cmd ) return true; } + // 3GPP Envelope command + if ( cmd.startsWith("AT+CUSATE=") ) { + int start = cmd.indexOf( QChar('=') ) + 1; + QByteArray envelope = QAtUtils::fromHex( cmd.mid(start) ); + QSimEnvelope env = QSimEnvelope::fromPdu( envelope ); + + if (!toolkitApp || !toolkitApp->envelope( env ) ) + respond( "ERROR" ); + + respond( "OK" ); + + return true; + } + // If not AT+CSIM, then this is not a SIM toolkit command. if ( !cmd.startsWith( "AT+CSIM=" ) ) return false; |