From: Yang Gu <yang.gu@intel.com>
To: ofono@ofono.org
Subject: [PATCH] Simulate provide local info command
Date: Thu, 18 Nov 2010 18:43:19 +0800 [thread overview]
Message-ID: <1290076999-27809-1-git-send-email-yang.gu@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 10293 bytes --]
---
src/simapplication.cpp | 263 ++++++++++++++++++++++++++++++++++++++++++++++++
src/simapplication.h | 2 +
2 files changed, 265 insertions(+), 0 deletions(-)
diff --git a/src/simapplication.cpp b/src/simapplication.cpp
index 7dc580f..901c5b9 100644
--- a/src/simapplication.cpp
+++ b/src/simapplication.cpp
@@ -284,6 +284,7 @@ const QString DemoSimApplication::getName()
#define MainMenu_SendSS 11
#define MainMenu_Language 12
#define MainMenu_SendUSSD 13
+#define MainMenu_LocalInfo 14
#define SportsMenu_Chess 1
#define SportsMenu_Painting 2
@@ -342,6 +343,24 @@ const QString DemoSimApplication::getName()
#define SendUSSD_Error 4
#define SendUSSD_Main 5
+#define LocalInfoMenu_Loc 1
+#define LocalInfoMenu_IMEI 2
+#define LocalInfoMenu_NMR 3
+#define LocalInfoMenu_Time 4
+#define LocalInfoMenu_Lang 5
+#define LocalInfoMenu_TimingAdvance 6
+#define LocalInfoMenu_Tech 7
+#define LocalInfoMenu_ESN 8
+#define LocalInfoMenu_IMEISV 9
+#define LocalInfoMenu_SearchMode 10
+#define LocalInfoMenu_Battery 11
+#define LocalInfoMenu_MEID 12
+#define LocalInfoMenu_WSID 13
+#define LocalInfoMenu_Broadcast 14
+#define LocalInfoMenu_Techs 15
+#define LocalInfoMenu_Locs 16
+#define LocalInfoMenu_NMRs 17
+
void DemoSimApplication::mainMenu()
{
QSimCommand cmd;
@@ -402,6 +421,10 @@ void DemoSimApplication::mainMenu()
item.setLabel( "Send USSD" );
items += item;
+ item.setIdentifier( MainMenu_LocalInfo );
+ item.setLabel( "Provide Local Information" );
+ items += item;
+
cmd.setMenuItems( items );
command( cmd, 0, 0 );
@@ -514,6 +537,12 @@ void DemoSimApplication::mainMenuSelection( int id )
}
break;
+ case MainMenu_LocalInfo:
+ {
+ sendLocalInfoMenu();
+ }
+ break;
+
default:
{
// Don't know what this item is, so just re-display the main menu.
@@ -1832,3 +1861,237 @@ void DemoSimApplication::USSDMenu( const QSimTerminalResponse& resp )
endSession();
}
}
+
+void DemoSimApplication::sendLocalInfoMenu()
+{
+ QSimCommand cmd;
+ QSimMenuItem item;
+ QList<QSimMenuItem> items;
+
+ cmd.setType( QSimCommand::SelectItem );
+ cmd.setTitle( "Provide Local Information" );
+
+ item.setIdentifier( LocalInfoMenu_Loc );
+ item.setLabel( "Location Information" );
+ items += item;
+
+ item.setIdentifier( LocalInfoMenu_IMEI );
+ item.setLabel( "IMEI" );
+ items += item;
+
+ item.setIdentifier( LocalInfoMenu_NMR );
+ item.setLabel( "Network Measurement results" );
+ items += item;
+
+ item.setIdentifier( LocalInfoMenu_Time );
+ item.setLabel( "Date, time and time zone" );
+ items += item;
+
+ item.setIdentifier( LocalInfoMenu_Lang );
+ item.setLabel( "Language setting" );
+ items += item;
+
+ item.setIdentifier( LocalInfoMenu_TimingAdvance );
+ item.setLabel( "Timing Advance" );
+ items += item;
+
+ item.setIdentifier( LocalInfoMenu_Tech );
+ item.setLabel( "Access Technology" );
+ items += item;
+
+ item.setIdentifier( LocalInfoMenu_ESN );
+ item.setLabel( "ESN" );
+ items += item;
+
+ item.setIdentifier( LocalInfoMenu_IMEISV );
+ item.setLabel( "IMEISV" );
+ items += item;
+
+ item.setIdentifier( LocalInfoMenu_SearchMode );
+ item.setLabel( "Search Mode" );
+ items += item;
+
+ item.setIdentifier( LocalInfoMenu_Battery );
+ item.setLabel( "Charge State of the Battery" );
+ items += item;
+
+ item.setIdentifier( LocalInfoMenu_MEID );
+ item.setLabel( "MEID" );
+ items += item;
+
+ item.setIdentifier( LocalInfoMenu_WSID );
+ item.setLabel( "WSID" );
+ items += item;
+
+ item.setIdentifier( LocalInfoMenu_Broadcast );
+ item.setLabel( "Broadcast Network information" );
+ items += item;
+
+ item.setIdentifier( LocalInfoMenu_Techs );
+ item.setLabel( "Multiple Access Technologies" );
+ items += item;
+
+ item.setIdentifier( LocalInfoMenu_Locs );
+ item.setLabel( "Location Information for multiple access technologies" );
+ items += item;
+
+ item.setIdentifier( LocalInfoMenu_NMRs );
+ item.setLabel( "Network Measurement results for multiple access technologies" );
+ items += item;
+
+ cmd.setMenuItems( items );
+
+ command( cmd, this, SLOT(localInfoMenu(QSimTerminalResponse)) );
+}
+
+void DemoSimApplication::localInfoMenu( const QSimTerminalResponse& resp )
+{
+ QSimCommand cmd;
+
+ if ( resp.result() == QSimTerminalResponse::Success ) {
+ switch ( resp.menuItem() ) {
+
+ case LocalInfoMenu_Loc:
+ {
+ cmd.setType( QSimCommand::ProvideLocalInformation );
+ cmd.setQualifier( 0x00 );
+ command( cmd, this, SLOT(sendLocalInfoMenu()) );
+ }
+ break;
+
+ case LocalInfoMenu_IMEI:
+ {
+ cmd.setType( QSimCommand::ProvideLocalInformation );
+ cmd.setQualifier( 0x01 );
+ command( cmd, this, SLOT(sendLocalInfoMenu()) );
+ }
+ break;
+
+ case LocalInfoMenu_NMR:
+ {
+ cmd.setType( QSimCommand::ProvideLocalInformation );
+ cmd.setQualifier( 0x02 );
+ command( cmd, this, SLOT(sendLocalInfoMenu()) );
+ }
+ break;
+
+ case LocalInfoMenu_Time:
+ {
+ cmd.setType( QSimCommand::ProvideLocalInformation );
+ cmd.setQualifier( 0x03 );
+ command( cmd, this, SLOT(sendLocalInfoMenu()) );
+ }
+ break;
+
+ case LocalInfoMenu_Lang:
+ {
+ cmd.setType( QSimCommand::ProvideLocalInformation );
+ cmd.setQualifier( 0x04 );
+ command( cmd, this, SLOT(sendLocalInfoMenu()) );
+ }
+ break;
+
+ case LocalInfoMenu_TimingAdvance:
+ {
+ cmd.setType( QSimCommand::ProvideLocalInformation );
+ cmd.setQualifier( 0x05 );
+ command( cmd, this, SLOT(sendLocalInfoMenu()) );
+ }
+ break;
+
+ case LocalInfoMenu_Tech:
+ {
+ cmd.setType( QSimCommand::ProvideLocalInformation );
+ cmd.setQualifier( 0x06 );
+ command( cmd, this, SLOT(sendLocalInfoMenu()) );
+ }
+ break;
+
+ case LocalInfoMenu_ESN:
+ {
+ cmd.setType( QSimCommand::ProvideLocalInformation );
+ cmd.setQualifier( 0x07 );
+ command( cmd, this, SLOT(sendLocalInfoMenu()) );
+ }
+ break;
+
+ case LocalInfoMenu_IMEISV:
+ {
+ cmd.setType( QSimCommand::ProvideLocalInformation );
+ cmd.setQualifier( 0x08 );
+ command( cmd, this, SLOT(sendLocalInfoMenu()) );
+ }
+ break;
+
+ case LocalInfoMenu_SearchMode:
+ {
+ cmd.setType( QSimCommand::ProvideLocalInformation );
+ cmd.setQualifier( 0x09 );
+ command( cmd, this, SLOT(sendLocalInfoMenu()) );
+ }
+ break;
+
+ case LocalInfoMenu_Battery:
+ {
+ cmd.setType( QSimCommand::ProvideLocalInformation );
+ cmd.setQualifier( 0x0A );
+ command( cmd, this, SLOT(sendLocalInfoMenu()) );
+ }
+ break;
+
+ case LocalInfoMenu_MEID:
+ {
+ cmd.setType( QSimCommand::ProvideLocalInformation );
+ cmd.setQualifier( 0x0B );
+ command( cmd, this, SLOT(sendLocalInfoMenu()) );
+ }
+ break;
+
+ case LocalInfoMenu_WSID:
+ {
+ cmd.setType( QSimCommand::ProvideLocalInformation );
+ cmd.setQualifier( 0x0C );
+ command( cmd, this, SLOT(sendLocalInfoMenu()) );
+ }
+ break;
+
+ case LocalInfoMenu_Broadcast:
+ {
+ cmd.setType( QSimCommand::ProvideLocalInformation );
+ cmd.setQualifier( 0x0D );
+ command( cmd, this, SLOT(sendLocalInfoMenu()) );
+ }
+ break;
+
+ case LocalInfoMenu_Techs:
+ {
+ cmd.setType( QSimCommand::ProvideLocalInformation );
+ cmd.setQualifier( 0x0E );
+ command( cmd, this, SLOT(sendLocalInfoMenu()) );
+ }
+ break;
+
+ case LocalInfoMenu_Locs:
+ {
+ cmd.setType( QSimCommand::ProvideLocalInformation );
+ cmd.setQualifier( 0x0F );
+ command( cmd, this, SLOT(sendLocalInfoMenu()) );
+ }
+ break;
+
+ case LocalInfoMenu_NMRs:
+ {
+ cmd.setType( QSimCommand::ProvideLocalInformation );
+ cmd.setQualifier( 0x10 );
+ command( cmd, this, SLOT(sendLocalInfoMenu()) );
+ }
+ break;
+
+ default:
+ endSession();
+ break;
+ }
+ } else {
+ endSession();
+ }
+}
diff --git a/src/simapplication.h b/src/simapplication.h
index 9d147ee..933635c 100644
--- a/src/simapplication.h
+++ b/src/simapplication.h
@@ -113,6 +113,8 @@ protected slots:
void languageMenu( const QSimTerminalResponse& resp );
void sendUSSDMenu();
void USSDMenu( const QSimTerminalResponse& resp );
+ void sendLocalInfoMenu();
+ void localInfoMenu ( const QSimTerminalResponse& resp );
private:
int sticksLeft;
--
1.7.2.3
next reply other threads:[~2010-11-18 10:43 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-18 10:43 Yang Gu [this message]
2010-11-22 14:31 ` [PATCH] Simulate provide local info command Denis Kenzior
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1290076999-27809-1-git-send-email-yang.gu@intel.com \
--to=yang.gu@intel.com \
--cc=ofono@ofono.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox