Imagine we have a remote server with an external IP address and a mobile phone with GPRS enabled. Connecting from phone to server is a quite easy task to do: use RSocket over TCP/IP and the job's done. And we have a "pull" connection model.
Sometimes server has some data, that it has to give to the phone. And here we come to some problems:
1. Keeping GPRS connection to the server alive all the time is too battery consuming. And can get expensive too (pinging connection usually will be needed).
2. Phone does not have an external IP to initiate a connection to the phone.
Of course, one wants to create a beautiful implementation! So, let's think over the 2nd problem. We have SIP (Session Initiation Protocol) and PAP (Push Access Protocol), but they are not that widely used by operators (my operator doesn't even know, what PAP is!!! ). But, one thing they advices is the GSM DATA protocl.
So, here we come to my question! They said, they will give the server with an external IP a phone number (that, I guess, is supported by most world operators). This server will be able to call the mobile - and after the recieved call, phone will initiate a connection to this remote server, that called! Everything is beautiful! BUT I HAVEN'T FOUND ANY SPECIFICATION, on how to call from server, and... HOW DOES THIS GSM DATA works??? Please, give me some links, or share your experience!
Look trough this forum and you'll notice that datacalls do not really work with S60.
Some phones do not work withMO, some do not work with MT datacalls.
Anyway datacalls are expensive. That is why the oprerator want's you to use them. Or because they canr offer ou anything else.
I think the best bet for time being is to have phone to keep up the GPRS/TCP connection.
I do not think you need to sent anything to keep the gprs active. You can just reconnect if you lose the connection. I am not sure tough.
I do not think you should try to use anything that makes dependencies to operator facilities, unless you do not need to support other operators. It is really pain to support users with "your operator needs to enable XXYY, when the operator helpdesk to not know what is, and you do not have a clue if operator yyHHSS in other side of the world supports XXYY".
You might also look at the replies article
"GPRS in automotive use".
Thanks jkekoni for the help!! I am getting to the same point, too. And the strangest thing with the operators is that they always reply over some new technology: "this is not a standard yet, that is why we do not support it". This is deffinite - they are counting their own money, and these new techs are needed only by a very few people, so there's no real market need to support these techs.