Problems with call hang up
Hello everyone,
I'm developing an application for a Series 60 devices (I use Nokia 6600 for test) that communicates using the data calls.
When I answer the phone call using the AnswerIncomingCall(...) function I can hang up that call using the HangUp(...) function.
But, when I want to make a call I can't use Dial(...) function (don't work on this phone) so I use AT commands. When I try to terminate that call with HangUp() function, I get the KErrNotReady error code. I think that is because HangUp() function terminates an active call established with the Dial(), Connect() or AnswerIncomingCall() functions.
Then I tried to switch to command mode (+++) and to send ATH command to modem but that didn’t worked also.
Here is the code I tried:
[code]
_LIT8(atcommand, "+++");
comm.Write(iStatus, atcommand);
User::WaitForRequest(iStatus);
_LIT8(hangup8, "ATH\r\n");
comm.Write(iStatus, hangup8);
User::WaitForRequest(iStatus);
[/code]
I even tried to wait for 3 seconds after sending the "+++" command (to be sure that the modem is in command mode).
Am I doing something wrong or is there anything else I should do?
Thanks in advance,
Sasa
Unable to switch to command mode
Because I can't hang-up using the "+++" and "ATH" commands from my source code, I tried next:
I connected one Nokia 7210 phone to PC (over the IrDA) and Nokia 6600 to other PC (over the Bluetooth).
I started HyperTerminal on both devices and started new data call (ATDT…).
I answered the call on the other side (ATA) and have sent some data.
When I sent “+++” and after that “ATH” command from Nokia 7210, the call was regularly closed. I tried the same think on the other side (sending commands from the other PC’s HyperTerminal to Nokia 6600) but the call wasn’t finished.
When I send “+++” (to bring modem to command mode again) and after that “ATH” I get the “ATH” command on the other side (this happens only when I try this with Nokia 6600).
So, my conclusion is that I can’t bring Nokia 6600’s modem to command mode.
Is this a known bug or am I doing something wrong?
I would appreciate any kind of help!
Thanks in advance,
Sasa