I am trying to make available on my website a voice chat for a small group of people that allows some other means to interact such as text messaging, photo sharing, file sharing, simple drawing and silly games. In other words, something similar to older MSN Messenger, but on the web. Any ideas on what to use?

To clarify, I am looking for suggestions on languages and libraries to use. I want to be able to fully customize it as much as possible because I might want to add other (somewhat interesting) functions later. Low-level programming is fine if required, but platform dependency isn't that much preferred.

  • Are you looking for a library or are you wanting a ready-made plugin of some sort?
    – mmyers
    Jun 20, 2011 at 18:57
  • It sounds like you want an online meeting (apart from the silly games bit). Webex.com and gotomeeting.com are the ones that I get invited to use. However they wouldn't be on your site. How important is it that it's on your site? Jun 21, 2011 at 14:25

3 Answers 3


You could use some flash based media server clients. Have a look at red5. it even has webcam support.


I know it is possible to have Google Talk embedded in a personal/professional website, which is the closest thing to what you're describing without having to reinvent the wheel.

Check it out here.


Your question is very broad since there are a lot of moving parts that go into building a good messaging stack:

  • message storage for when users are offline
  • long polling or websocket management for getting messages "pushed"
  • media handling so that users can share files
  • permissions and moderation to kick out abusive chatters
  • security

(source: I helped design the Buddycloud open messaging stack)

Unless your are using an existing stack, this is a large scope. Games and drawing via IM are almost a completely new application that just share the same communication channel.

If you could be more specific about your requriements that would help drill into specific parts of the messaging stack that you are trying to solve.

Not the answer you're looking for? Browse other questions tagged or ask your own question.