Thanks Tamas Marki,
I think "http://www.beej. <http://www.beej.us/guide/bgnet/>
us/guide/bgnet/" by andrwe clarke is good one for me.
I have divided this project into some phases as follows:
1- First I will write a core library for sending /receiving text messages,
files, broadcasting messages, broadcast file sending
2- Then I will try to write some 2nd level wrapper around it to handle
multi-threading.
3- Try to implement a GUI interface which will use this library.
4 - Add voice chat facility.
Currently I am working start with the phase1.
I need some help regarding that I try to understand the behavior of many
Messenger applications like Skype, MSN Messenger, Yahoo Messenger and Google
Talk and I found that Google Talk and Skype logged in on very low bandwidth
compare to Yahoo and MSN. Can you tell me what strategy these are following
to get this sort of efficiency?
Regards,
Ajmal
_____
From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of
Tamas Marki
Sent: Wednesday, February 06, 2008 5:02 PM
To: [email protected]
Subject: Re: [c-prog] Want to learn socket programming
On 2/6/08, muhammad.ajmal <muhammad.ajmal@
<mailto:muhammad.ajmal%40ascertia.com> ascertia.com> wrote:
> I am an intermediate level of C and C++ programmer and want to harness my
> coding skills in C and C++.
> To achieve the above goal I want to start working on a complete
application
> like "Skype". In know that I have to learn Socket programming to achieve
the
> functionality like skype.
> Suggestions are welcome and I would request all the guru of c/c++ to
advise
> me how I can take a good start to learn socket programming . I want to
> complete this work for windows OS, and I am using Visual Studio 2005.
Doing it from the ground up, with sockets is a very, very tough job. I
think that if you start doing it that way you'll quickly get
overwhelmed by the sheer amount of work you have to do (just imagine,
you'll need to capture and encode the sound on the fly and send it to
the other peer, while decoding and playing what the other end sends
etc).
A big part of programming is learning to use third party libraries
that make your life easier. So, for instance if you want to develop a
VOIP application why don't you find a decent library for SIP like
http://www.pjsip. <http://www.pjsip.org/> org/ and going from there? This
library is also very
portable so you could learn how to write cross-platform apps.
It's pointless to reinvent the wheel over and over again...
Just my two cents.
--
Tamas Marki
[Non-text portions of this message have been removed]