Hi, adding to what @AndrewGifft said…
Diffidulty of Server Contacting Mobile Device
The challenge of sending data to a mobile device generally revolves around the fact that mobile devices do not usually get fixed ip addresses, nor do the they reuse the ip address they are assigned to when they establish a data connection to a provider. So, you can easily have the mobile device initiate a data connection to a server (or other device which has a fixed ip address or a URL), but not vice verse.
There are at least to approaches to this problem:
- have the mobile device “check-in” periodically to perform data transfers if needed. This is often a poor solution as checking in wastes resources when no transfers are needed.
- send an SMS to the device to tell it to call in. Sending an SMS to a mobile device is usually possible. It does not require an ip address or active connection. The cost depends on the service provider and ranges from free to expensive.
Sending Data W/O Packets
Well, you cannot do this over the Internet. The Internet is a packet-based data transport system. Once you establish a raw Socket connection you can send bytes as you wish, and the fact that the data is packetized for transfer becomes invisible, but the data is moving in packets if it’s moving over the Internet.
Again, you might consider having your PC (or server) send an SMS to your mobile device telling it to call home. Your mobile device can than establish a Socket connection to your PC and move data byte-by-byte as you wish.
Spacebridge solves this problem of establishing a data connection from a non-mobile device to a mobile one. I don’t know how it does this. Does it use SMS as I described or something else? Maybe someone who knows how Spacbridge works can chime in here…