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!
Thank you all in advance!!!