* [PATCH] Simulate provide local info command
@ 2010-11-18 10:43 Yang Gu
2010-11-22 14:31 ` Denis Kenzior
0 siblings, 1 reply; 2+ messages in thread
From: Yang Gu @ 2010-11-18 10:43 UTC (permalink / raw)
To: ofono
[-- 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
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] Simulate provide local info command
2010-11-18 10:43 [PATCH] Simulate provide local info command Yang Gu
@ 2010-11-22 14:31 ` Denis Kenzior
0 siblings, 0 replies; 2+ messages in thread
From: Denis Kenzior @ 2010-11-22 14:31 UTC (permalink / raw)
To: ofono
[-- Attachment #1: Type: text/plain, Size: 1163 bytes --]
Hi Yang,
On 11/18/2010 04:43 AM, Yang Gu wrote:
> ---
> src/simapplication.cpp | 263 ++++++++++++++++++++++++++++++++++++++++++++++++
> src/simapplication.h | 2 +
> 2 files changed, 265 insertions(+), 0 deletions(-)
>
> +#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
> +
We should really only support Time and Lang, the others are actually
better handled by the modem firmware.
Regards,
-Denis
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2010-11-22 14:31 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-11-18 10:43 [PATCH] Simulate provide local info command Yang Gu
2010-11-22 14:31 ` Denis Kenzior
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.