Re: [PATCH] Add CDIP support

2011-01-13 Thread Denis Kenzior
Hi Lucas,

On 01/12/2011 05:07 AM, Lucas De Marchi wrote:
 With CDIP phonesim can tell the Called Line Identification within the
 RING comand according to 27.007 section 7.9.
 ---
  src/callmanager.cpp   |   21 +++--
  src/callmanager.h |8 +---
  src/control.cpp   |8 ++--
  src/control.h |2 +-
  src/default.xml   |   19 +++
  src/hardwaremanipulator.h |2 +-
  src/phonesim.cpp  |4 ++--
  7 files changed, 49 insertions(+), 15 deletions(-)
 

Patch has been applied, thanks.

Regards,
-Denis
___
ofono mailing list
ofono@ofono.org
http://lists.ofono.org/listinfo/ofono


[PATCH] Add CDIP support

2011-01-12 Thread Lucas De Marchi
With CDIP phonesim can tell the Called Line Identification within the
RING comand according to 27.007 section 7.9.
---
 src/callmanager.cpp   |   21 +++--
 src/callmanager.h |8 +---
 src/control.cpp   |8 ++--
 src/control.h |2 +-
 src/default.xml   |   19 +++
 src/hardwaremanipulator.h |2 +-
 src/phonesim.cpp  |4 ++--
 7 files changed, 49 insertions(+), 15 deletions(-)

diff --git a/src/callmanager.cpp b/src/callmanager.cpp
index d746333..be17b83 100644
--- a/src/callmanager.cpp
+++ b/src/callmanager.cpp
@@ -326,6 +326,11 @@ void CallManager::emitRing(const CallInfo info)
 else
 str += \\n\\n+CLIP:  + QAtUtils::encodeNumber( info.number ) + 
0;
 
+if (info.calledNumber.isNull())
+;
+else
+str += \\n\\n+CDIP:  + QAtUtils::encodeNumber( info.calledNumber 
) + ,,,;
+
 if (info.name.isNull())
 ;
else if (info.name.isEmpty())
@@ -338,7 +343,8 @@ void CallManager::emitRing(const CallInfo info)
 }
 
 void CallManager::startIncomingCall( const QString number,
-   const QString name, bool dialBack )
+ const QString calledNumber,
+ const QString name, bool dialBack )
 {
 // Bail out if there is already an incoming call.
 if ( idForIncoming() = 0 ) {
@@ -356,6 +362,7 @@ void CallManager::startIncomingCall( const QString number,
 info.state = CallState_Incoming;
 }
 info.number = number;
+info.calledNumber = calledNumber;
 info.incoming = true;
 info.dialBack = dialBack;
 info.name = name;
@@ -371,9 +378,11 @@ void CallManager::startIncomingCall( const QString number,
 ringTimer-start(2000);
 }
 
-void CallManager::startIncomingCall( const QString number , const QString 
name )
+void CallManager::startIncomingCall( const QString number,
+ const QString calledNumber,
+ const QString name )
 {
-startIncomingCall( number, name, false );
+startIncomingCall( number, calledNumber, name, false );
 }
 
 void CallManager::hangupAll()
@@ -702,18 +711,18 @@ void CallManager::dialingToAlerting()
 
 void CallManager::dialBack()
 {
-startIncomingCall( 1234567, Alice, true );
+startIncomingCall( 1234567, 7654321, Alice, true );
 }
 
 void CallManager::dialBackWithHangup5()
 {
-startIncomingCall( 1234567, Bob, true );
+startIncomingCall( 1234567, 7654321, Bob, true );
 hangupTimer-start( 5000 );
 }
 
 void CallManager::dialBackWithHangup4()
 {
-startIncomingCall( 1234567, Mallory, true );
+startIncomingCall( 1234567, 7654321, Mallory, true );
 hangupTimer-start( 4000 );
 }
 
diff --git a/src/callmanager.h b/src/callmanager.h
index f29bdce..90cb9bd 100644
--- a/src/callmanager.h
+++ b/src/callmanager.h
@@ -39,6 +39,7 @@ struct CallInfo
 int id;
 CallState   state;
 QString number;
+QString calledNumber;
 boolincoming;
 booldialBack;
 QString name;
@@ -94,9 +95,10 @@ public:
 
 public slots:
 // Start an incoming call simulation.
-void startIncomingCall( const QString number, const QString name,
-   bool dialBack );
-void startIncomingCall( const QString number, const QString name );
+void startIncomingCall( const QString number, const QString calledNumber,
+const QString name, bool dialBack );
+void startIncomingCall( const QString number, const QString calledNumber,
+const QString name );
 
 signals:
 // Send a response to a command.
diff --git a/src/control.cpp b/src/control.cpp
index 68c5584..b70de30 100644
--- a/src/control.cpp
+++ b/src/control.cpp
@@ -119,7 +119,7 @@ Control::Control(const QString ruleFile, SimRules *sr, 
QObject *parent)
  SIGNAL(command(QString))
  SIGNAL(variableChanged(QString,QString))
  SIGNAL(switchTo(QString))
- SIGNAL(startIncomingCall(QString, QString));
+ SIGNAL(startIncomingCall(QString, QString, QString));
 
 foreach (QByteArray sig, proxySignals)
 connect(widget, sig, this, sig);
@@ -282,15 +282,19 @@ void ControlWidget::sendSMSDatagram()
 void ControlWidget::sendCall()
 {
 QString number;
+QString calledNumber;
 QString name;
 
 if (ui-cbCaller-isChecked())
 number = ui-leCaller-text();
 
+if (ui-cbCalledLine-isChecked())
+calledNumber = ui-leCalledLine-text();
+
 if (ui-cbCallerName-isChecked())
 name = ui-leCallerName-text();
 
-emit startIncomingCall( number, name );
+emit startIncomingCall( number, calledNumber, name );
 }
 
 void ControlWidget::handleFromData( const QString cmd )
diff --git a/src/control.h b/src/control.h
index 767baa3..2c14863