1. Advertising
    y u no do it?

    Advertising (learn more)

    Advertise virtually anything here, with CPM banner ads, CPM email ads and CPC contextual links. You can target relevant areas of the site and show ads based on geographical location of the user if you wish.

    Starts at just $1 per CPM or $0.10 per CPC.

How to make a instant messenger client for mobile and pc?

Discussion in 'Programming' started by mrmbdctg, Jul 24, 2010.

  1. #1
    Hello,

    I want to make a instant messenger client software and also a instant messenger service. My client will work both from computer and from mobile (Java based ).

    Please help me finding some books to study this topics... and guide me how to start developing if you already did that..

    Do you have any suggestion of opensource script or paid script for this services..?
    SEMrush
    But book and web resource suggestion is preferable ... I googled but not get enough about this topics..

    Thanks in advance for your kind help
     
    mrmbdctg, Jul 24, 2010 IP
    SEMrush
  2. Rainulf

    Rainulf Active Member

    Messages:
    373
    Likes Received:
    12
    Best Answers:
    0
    Trophy Points:
    85
    #2
    Making an instant messenger client is not a simple task. How experienced are you in programming?

    There's a lot of freelance programmers out there, maybe you can go hire one and ask for advice.
     
    Rainulf, Jul 24, 2010 IP
  3. mrmbdctg

    mrmbdctg Well-Known Member

    Messages:
    19
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    116
    #3
    My level of programming is up to making anything (Programmer try to make new thing by nourishing and studying new technology).. So I will be glad and thankful if you can suggest something which I can use.. Anyone don't want any open source tools if he/she can't customized that for their requirements...
    and I am also a freelancer but I never worked IM development...

    Please suggest some books or something you read or implemented already or please be quiet to reply about something which you have no ideas...

    I will buy something only after if I cant make one ...

    Thank you for your help
     
    mrmbdctg, Jul 24, 2010 IP
  4. Deacalion

    Deacalion Peon

    Messages:
    438
    Likes Received:
    11
    Best Answers:
    0
    Trophy Points:
    0
    #4
    I strongly disagree, my first real program was an instant messaging program - it was very basic.

    First of all, you should focus more on understanding TCP/IP, protocols and stacks rather than the Instant Messaging program itself. Learn how the stacks are independent from each other, yet how the entire stack is needed for reliable communication. You should understand things like the three way handshake, arp lookup, ip addressing and such like the back of your hand. This is all necessary if you want to get into network programming.

    My advice? learn the basics of C (will take less than a week if you already know Java) and read Beejs Socket programming tutorial - this simple little guide enabled me to make amazing programs. I can now control everything in my house from my mobile phone and PSP thanks to this :).
     
    Deacalion, Jul 24, 2010 IP
    superfrankie likes this.
  5. mrmbdctg

    mrmbdctg Well-Known Member

    Messages:
    19
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    116
    #5

    Thank you so much.. It helped me a lot.. Starting as you said.. Thank you once again... By the way I know C also :D
    So Beejs Socket will be my next target..

    Can you please do me a favor .. Make a step by step suggestion what I have to learn one after another...

    Thank you once again infinity time :)
     
    mrmbdctg, Jul 25, 2010 IP
  6. Deacalion

    Deacalion Peon

    Messages:
    438
    Likes Received:
    11
    Best Answers:
    0
    Trophy Points:
    0
    #6
    If you already know C, you should pick this up pretty fast :).
    I assume you also know your bits and bytes? binary and hex? checksums? signed and unsigned? you'll find these little fundmentals scattered all over the place when you're programming sockets or trying to get a deeper understanding of networks. Make no mistake though, I find this to be the most rewarding type of programming you can do! Once you understand TCP/IP, you understand almost everything that communicates... phones, computers, satellites etc. and in what other type of programming are you going to be able to make your mobile phone control your front door and household lights? :p (something I've done by the way - see my site)

    Learn the protocols that make up the TCP/IP stack (TCP and IP are just the two major ones in the stack):
    • TCP
    • IP
    • UDP
    • ICMP
    • ... and all the others. Don't go into real detail, otherwise you'll never get past reading. Just learn enough so you know what they do and are responsible for. ie: IP is responsible for routing and addressing data/packets.

    You could also study the OSI model, but I found this quite confusing when I was learning - since it's a standard thats not 100% implemented on anything. I couldn't get my head around it.

    See how packets travel up and down the stack and how certain devices rely on certain layers (e.g. routers don't bother with anything above the IP layer). When I was learning, I imagined each layer was a major technology, so the physical layer would represent the iron age. The internet layer would represent the industrial revolution. This sounds proper geeky, but... without iron, there would be no industrial revolution - see my reasoning here? ;) and so on.

    Once you understand most of the theory and a few other things like addressing, subnetting etc. Just get cracking on actually making something. Anything will do - something that retrieves a web page or a simple whois program will do.

    If you're doing this on windows - lookup WinSock, this is the API you will be using.
     
    Deacalion, Jul 25, 2010 IP
  7. Deacalion

    Deacalion Peon

    Messages:
    438
    Likes Received:
    11
    Best Answers:
    0
    Trophy Points:
    0
    #7
    I'm babbling a little bit I think - just read all you can and lookup some WinSock tutorials. :)
    Oh and one more thing, make sure you understand the difference between protocol and implementation. It's the difference between blueprints and a skyscraper.
     
    Deacalion, Jul 25, 2010 IP
  8. mrmbdctg

    mrmbdctg Well-Known Member

    Messages:
    19
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    116
    #8
    No no you are just helping me and future public who want to learn about this.. you just awesome. I was sick and busy also about academic issues.. I will follow your guide ..
    Thanks in a loads :D
     
    mrmbdctg, Aug 3, 2010 IP
  9. mrmbdctg

    mrmbdctg Well-Known Member

    Messages:
    19
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    116
    #9
    if you find something more which you forgot to mention please not here also.. I will catch up this thread all the time after completing one by one ... Take care..
     
    mrmbdctg, Aug 3, 2010 IP
  10. jackdaniels187

    jackdaniels187 Peon

    Messages:
    102
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #10
    Check out spark, google "spark instant messenger" they have an open source instant messenger which would be a good reference. Linux or Windows... Mobile client, server as well.
     
    jackdaniels187, Aug 3, 2010 IP
  11. mrmbdctg

    mrmbdctg Well-Known Member

    Messages:
    19
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    116
    #11

    Thank you for the information. :)
     
    mrmbdctg, May 10, 2012 IP