-rw-r--r-- | noncore/apps/opie-console/dialer.cpp | 24 | ||||
-rw-r--r-- | noncore/apps/opie-console/io_modem.cpp | 10 | ||||
-rw-r--r-- | noncore/apps/opie-console/io_serial.cpp | 7 |
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 | ||
94 | void Dialer::slotCancel() | 95 | void 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 | ||
104 | void Dialer::reset() | 107 | void 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 | ||
17 | void IOModem::close() { | 17 | void 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 | ||
8 | IOSerial::IOSerial(const Profile &config) : IOLayer(config) { | 10 | IOSerial::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 | } |