views:

789

answers:

2

My requirement is to write an application to send a file from a remote machine to another machine using internal modem. Both system are connected thru VPN or a internet.

Basically we have two systems both having internal dial up modems. The two systems are connected through either VPN or Internet.

One system should send a file (XML) to another.

I was given the freedom to do it in either C++ or C#. Or is there any other language we can do this easily?

How can I go about this task? Do we need an client/server type application or do we need an app only at the receiving end?

Is there any built in technology available for this type of file transfers using modems?

Since I don't have the programming point of view, my question may not be clear! I tried to put max information on my requirements, but if I am not clear, please ask me.

+3  A: 

If you are connected via a VPN, then there are many existing programs available to transfer files between each other. The most well known is FTP. There are many freely available FTP or SFTP packages.

The fact that you are using a modem does not matter. Only that they are in the same network or visible on the internet.

Jason Coyne
ok , can i adopt the same FTP / SFTP technology in the case of Systems Visible on Internet. i had some clients in remote places of Africa and some them are not connected thru VPN.
Vijay
Yes. FTP is the standard File Transfer Protocol for the internet.
Jason Coyne
IT SEEMS SFTP will serve my purpose, but can we send files without the intervention of user at the Receiving end? whether the receiver should acknowledge the File transfer? in my case ,i like to send the files without any ack/ initiation by the receiver!
Vijay
A: 

It's been a while, so my memory is fuzzy:

There are modem libraries out there. Find one and use it. No need to reinvent the low level software. I seem to remember using a product from Dialogic (At least I think that was the company). It worked well. I did a quick search and there are 50 companies with that name, but I did see some that mention C, C++ and C# librariers. If you do a little research you'll find what you need.

You will need to learn how to initiate communications between the modems. Almost all modems use the Hayes Modem AT Command Set.

Modems are slow: So pick a compression algorithm before sending data. zlib is an industry favorite.

Your modem library of choice should provide several mechanisms for doing the pure data transfer that you are asking about. Choose the one that fits your data best.

Dunk