summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/opie-console/dialer.cpp24
-rw-r--r--noncore/apps/opie-console/io_modem.cpp10
-rw-r--r--noncore/apps/opie-console/io_serial.cpp7
3 files changed, 29 insertions, 12 deletions
diff --git a/noncore/apps/opie-console/dialer.cpp b/noncore/apps/opie-console/dialer.cpp
index ce2b688..8524422 100644
--- a/noncore/apps/opie-console/dialer.cpp
+++ b/noncore/apps/opie-console/dialer.cpp
@@ -89,6 +89,7 @@ void Dialer::setHangupOnly()
89{ 89{
90 state = state_cancel; 90 state = state_cancel;
91 usercancel = 1; 91 usercancel = 1;
92 send("+++ATH\r");
92} 93}
93 94
94void Dialer::slotCancel() 95void Dialer::slotCancel()
@@ -98,7 +99,9 @@ void Dialer::slotCancel()
98 usercancel = 1; 99 usercancel = 1;
99 reset(); 100 reset();
100 } 101 }
101 else accept(); 102 else {
103 accept();
104 }
102} 105}
103 106
104void Dialer::reset() 107void Dialer::reset()
@@ -140,9 +143,9 @@ void Dialer::trydial(const QString& number)
140 if(cleanshutdown) 143 if(cleanshutdown)
141 { 144 {
142 qWarning("HangupString " + m_profile.readEntry("HangupString")); 145 qWarning("HangupString " + m_profile.readEntry("HangupString"));
143 send(m_profile.readEntry("HangupString")); 146 //send(m_profile.readEntry("HangupString"));
144 //send("+++ATH"); 147 send("+++ATH\r");
145 send(""); 148 //send("");
146 } 149 }
147 150
148 if(state != state_cancel) 151 if(state != state_cancel)
@@ -187,7 +190,7 @@ void Dialer::trydial(const QString& number)
187 send(QString("ATDT %1\r").arg(number)); 190 send(QString("ATDT %1\r").arg(number));
188 // send(QString("%1 %2").arg(m_profile.readEntry("DialPrefix1")).arg(number)); 191 // send(QString("%1 %2").arg(m_profile.readEntry("DialPrefix1")).arg(number));
189 QString response5 = receive(); 192 QString response5 = receive();
190 if(!response5.contains("\n" + m_profile.readEntry("DefaultConnect"))) 193 if(!response5.contains("CONNECT") )
191 { 194 {
192 if(response5.contains("BUSY")) 195 if(response5.contains("BUSY"))
193 switchState(state_dialing); 196 switchState(state_dialing);
@@ -201,9 +204,11 @@ void Dialer::trydial(const QString& number)
201 } 204 }
202 } 205 }
203 206
207
204 if(state != state_cancel) 208 if(state != state_cancel)
205 { 209 {
206 switchState(state_online); 210 state = state_online;
211 slotCancel();
207 } 212 }
208} 213}
209 214
@@ -246,14 +251,17 @@ QString Dialer::receive()
246 for(int i = 0; i < ret; i++) 251 for(int i = 0; i < ret; i++)
247 buffer[i] = buffer[i] & 0x7F; 252 buffer[i] = buffer[i] & 0x7F;
248 buffer[ret] = 0; 253 buffer[ret] = 0;
249 //qWarning("Got: '%s'", buffer); 254 qWarning("Got: %s", buffer);
250 buf.append(QString(buffer)); 255 buf.append(QString(buffer));
251 if(buf.contains("OK") || buf.contains("ERROR") || buf.contains("CONNECT") || (buf.contains("BUSY"))) 256 if(buf.contains("OK") || buf.contains("ERROR") || buf.contains("CONNECT") || (buf.contains("BUSY")))
252 { 257 {
253 //qWarning("Receiving: '%s'", buf.latin1()); 258 //qWarning("Receiving: '%s'", buf.latin1());
254 cleanshutdown = 1; 259 cleanshutdown = 1;
255 return buf; 260 return buf;
256 } 261 }else if (buf.contains("NO CARRIER") || buf.contains("NO DIALTONE") ) {
262 cleanshutdown = 1;
263 return QString::null;
264 }
257 } 265 }
258 else if(ret < 0) 266 else if(ret < 0)
259 { 267 {
diff --git a/noncore/apps/opie-console/io_modem.cpp b/noncore/apps/opie-console/io_modem.cpp
index b7901b9..896c24f 100644
--- a/noncore/apps/opie-console/io_modem.cpp
+++ b/noncore/apps/opie-console/io_modem.cpp
@@ -16,11 +16,13 @@ IOModem::~IOModem() {
16 16
17void IOModem::close() { 17void IOModem::close() {
18 // Hangup, discarding result 18 // Hangup, discarding result
19 int fd = rawIO(); 19 //int fd = rawIO();
20 Dialer d(m_profile, fd); 20 internDetach();
21 Dialer d(m_profile, m_fd);
21 d.setHangupOnly(); 22 d.setHangupOnly();
22 d.exec(); 23 //d.exec();
23 closeRawIO(fd); 24 internAttach();
25 //closeRawIO(fd);
24 26
25 IOSerial::close(); 27 IOSerial::close();
26} 28}
diff --git a/noncore/apps/opie-console/io_serial.cpp b/noncore/apps/opie-console/io_serial.cpp
index 0540d9e..03e92dd 100644
--- a/noncore/apps/opie-console/io_serial.cpp
+++ b/noncore/apps/opie-console/io_serial.cpp
@@ -3,6 +3,8 @@
3#include <termios.h> 3#include <termios.h>
4#include <errno.h> 4#include <errno.h>
5#include <unistd.h> 5#include <unistd.h>
6#include <stdio.h>
7
6#include "io_serial.h" 8#include "io_serial.h"
7 9
8IOSerial::IOSerial(const Profile &config) : IOLayer(config) { 10IOSerial::IOSerial(const Profile &config) : IOLayer(config) {
@@ -164,6 +166,11 @@ void IOSerial::dataArrived() {
164 close(); 166 close();
165 if (len < 0) 167 if (len < 0)
166 return; 168 return;
169 qWarning("got from layer");
170 for (int i = 0; i < len; i++ ) {
171 printf("%c", array[i] );
172 }
173 printf("\n");
167 array.resize( len ); 174 array.resize( len );
168 emit received(array); 175 emit received(array);
169} 176}