I am developing a chat application in asp.net using SignalR.

Client requirements are:

  1. Admin can create different chat rooms e.g. (News Room, Sports Room, Android Room etc)

  2. Registered users can then join different chat rooms (one at a time) to chat with other online users on selected chat room.

  3. Each user's chat history should be stored.

These are major requirements of my client. I have developed the following database schema at the moment for managing users and chat history of users.

Table 1: User

Fields: user_id, username, firstname, lastname, email, phone

Table 2: chathistory

Fields: ch_id, user_id(FK), sendby, sendto, message, time, date

But now I am confused in creating database schema for multiple chat rooms. How should I create or manage database schema for chat rooms. Please help me out to get it done as per my client's requirements.



  • 1
    The first thing I would do is Google "open source chat applications" and take a look at how others have done it - there is also "forum software" or even "message boards". One I can recommend is fudforum.org/forum if it's forum stuff that you want - to me they appear to overlap considerably. The one I have recommended runs orafaq.com/forums - their forum design is way better than Oracle's own board/forum/chat one! One other final thing - many of these (that I have used anyway) specifically forbid crossposting (i.e. multi-forum). There are good reasons for this - think about that also. – Vérace May 30 '14 at 9:05

protected by Community Jan 21 at 8:06

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Browse other questions tagged or ask your own question.