Click here to Skip to main content
Click here to Skip to main content

A simple ASP.NET chat

By , 18 Feb 2007
 

Introduction

This article describes how to create a chat application. In this application, a total of six pages are used.

Main Page

This page has three frames. The first frame will show the user information and the typed messages (left side). The right side frame will show how many users are online now and their names. The bottom side of the frame will show a textbox with a logout button.

There are three types of objects to store the user information and data:

  • Session
  • Cookies
  • Application

The Session object is used for storing a particular user's information in the server side. The Cookies object is used for storing a particular user's information in a particular client side. And, the Application object can be used across the network.

In this application, I have used the Session object for the login method.

session("UserName")=txtUserName.text

This will create a Session object in the server side. We can check the user's credentials by using this object.(Authentication).

After checking the user's credentials, the application object is created like this:

Application("Chat")=Application("Chat") & name & "$"

If the user types something in the textbox, the form gets refreshed and the Application("chat") value is changed with the new value, and the list of Application("chat") arrays are shown in the main display page.

Th user's input will displayed by using the auto-refresh method in the meta HTTP object.

<meta http-equiv="refresh" content="4">

This will make the page refresh.

List of Users

Application("Users") is used to count the number of users online. The count is taken by splitting the special characters in application("users").

Screenshot - chat.png

Logout

This logout page is used to clear the session of the user and remove the user name from application("users"). So, the user can close his session from the chat. For private chat, application(user & session("user")) is used to differentiate the other users from the current user.

The left side of the main page shows all the users; when we click on a user, the private page will show a new page with the requested user.

if Con.State = ConnectionState.Open Then Con.Close()
Con.Open()
name = rdname(0)
Con.State = ConnectionState.Open Then Con.Close()Dim cmd_name As New SqlCommand(
   "Select Emp_Name From UserAccounts_Master Where UserId = '" & Session("UserId") & "'",
   Con)Dim rdname As SqlDataReader = cmd_name.ExecuteReaderWhile rdname.ReadEnd While 
rdname.Close()
If name <> "" Then If Application("invite") = name Then 
Response.Write("<script language="'javascript'">{ window.alert(
    '" & Application("invite") & "," & Application("whom") & " invited you to chat') } 
</script>")
Application("invite") = " "
'Dim focusString As String = ("<script language="'javascript'">{ window.alert(
   '" & Application("invite") & "," & Application("whom") & " invited you to chat') }
</script>") 'Page.RegisterStartupScript("FocusScript",
    focusString) 'Session.Timeout = 20000 End If End If 
rdname.Close()
Con.Close()

Try this. Thanks!

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

About the Author

sathesh pandian
Technical Lead
India India
have been working in web technologies for the last 8 years.

Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
Hint: For improved responsiveness ensure Javascript is enabled and choose 'Normal' from the Layout dropdown and hit 'Update'.
You must Sign In to use this message board.
Search this forum  
    Spacing  Noise  Layout  Per page   
Questionproblem in buildmemberbreemo6-Feb-13 2:56 
GeneralMy vote of 3memberrkumar67022-Feb-11 18:54 
GeneralC#memberdriftking18-Feb-09 22:15 
GeneralRe: C#membersathesh_pandian18-Feb-09 23:16 
GeneralRe: C#memberMember 768237517-Feb-11 5:23 
GeneralRe: C#membersathesh_pandian24-Feb-11 18:16 
Generalhelp mememberchandrashekharsani13-Nov-08 23:25 
GeneralRe: help memembersathesh_pandian15-Nov-08 4:16 
Generalunable to run private chat codememberchandrashekharsani16-Oct-08 23:37 
Generalnot able to download samplemembernamrshri29-Sep-08 2:10 
Generalplz helpmemberharivinod13-Feb-08 14:26 
GeneralRe: plz helpmembersravanibhanu19-Mar-08 21:33 
GeneralRe: plz helpmembersathesh_pandian21-Apr-08 22:21 
GeneralPrivate Chat HELP!!!!!memberarindam.roy26-Oct-07 23:56 
Questionhow to notify other user when one is typing message.membersai4129-Aug-07 21:37 
Questionhow to notify other user when one is typing message.membersai4129-Aug-07 21:35 
AnswerRe: how to notify other user when one is typing message.membersathesh_pandian14-Aug-07 1:46 
Generali want clear the single user page only on multi user page chat applicationmemberkarthikeyan_caleb11-Jul-07 17:11 
GeneralRe: i want clear the single user page only on multi user page chat applicationmembersathesh_pandian12-Jul-07 20:11 
Questionhow to clear the current login user pagememberkarthikeyan_caleb24-Jun-07 22:50 
AnswerRe: how to clear the current login user pagemembersathesh_pandian27-Jun-07 18:39 
Generalprivate chat applicationmemberkarthikeyan_caleb21-Jun-07 20:37 
GeneralRe: private chat applicationmembersathesh_pandian22-Jun-07 0:15 
GeneralRe: private chat applicationmemberkarthikeyan_caleb22-Jun-07 1:34 
GeneralRe: private chat applicationmemberadarshr_ushus20-Jun-08 0:47 
GeneralRe: private chat application [modified]memberG.Suman Babu23-Jun-07 1:18 
GeneralRe: private chat applicationmemberkarthikeyan_caleb24-Jun-07 22:52 
Questionhow can i create roomsmembermanikandanpro21-Jun-07 1:21 
Generalprivate chat not working ? pls help mememberkarthikeyan_caleb18-Jun-07 17:03 
GeneralRe: private chat not working ? pls help memembermanikandanpro21-Jun-07 1:18 
GeneralRe: private chat not working ? pls help memembermanikandanpro21-Jun-07 1:26 
GeneralASP.Net Chatmembersandy197114-Mar-07 23:04 
GeneralRe: ASP.Net Chatmembersathesh_pandian22-Jun-07 0:22 
QuestionHimemberMember #252898527-Feb-07 1:00 
AnswerRe: Himembersathesh_pandian2-Mar-07 2:45 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Permalink | Advertise | Privacy | Mobile
Web02 | 2.6.130619.1 | Last Updated 19 Feb 2007
Article Copyright 2007 by sathesh pandian
Everything else Copyright © CodeProject, 1999-2013
Terms of Use
Layout: fixed | fluid