Click here to Skip to main content
15,881,709 members
Articles / Web Development / ASP.NET

A simple ASP.NET chat

Rate me:
Please Sign up or sign in to vote.
3.90/5 (21 votes)
18 Feb 2007CPOL2 min read 453.5K   5K   27   35
A simple chat application using ASP.NET.

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.

VB
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:

VB
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.

XML
<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.

VB
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)


Written By
Technical Lead
India India
have been working in web technologies for the last 8 years.

Comments and Discussions

 
Questionproblem in build Pin
breemo6-Feb-13 2:56
breemo6-Feb-13 2:56 
GeneralMy vote of 3 Pin
RsaBrother's22-Feb-11 18:54
RsaBrother's22-Feb-11 18:54 
GeneralC# Pin
Lan Allanigue18-Feb-09 22:15
Lan Allanigue18-Feb-09 22:15 
GeneralRe: C# Pin
sathesh pandian18-Feb-09 23:16
sathesh pandian18-Feb-09 23:16 
GeneralRe: C# Pin
Member 768237517-Feb-11 5:23
Member 768237517-Feb-11 5:23 
GeneralRe: C# Pin
sathesh pandian24-Feb-11 18:16
sathesh pandian24-Feb-11 18:16 
Generalhelp me Pin
chandrashekharsani13-Nov-08 23:25
chandrashekharsani13-Nov-08 23:25 
GeneralRe: help me Pin
sathesh pandian15-Nov-08 4:16
sathesh pandian15-Nov-08 4:16 
Generalunable to run private chat code Pin
chandrashekharsani16-Oct-08 23:37
chandrashekharsani16-Oct-08 23:37 
Generalnot able to download sample Pin
namrshri29-Sep-08 2:10
namrshri29-Sep-08 2:10 
Hi i am not able to download sample.
plz mail me at namrshri08@gmail.com .Its very urgent.

Thanks
Namrata
Generalplz help Pin
harivinod13-Feb-08 14:26
harivinod13-Feb-08 14:26 
GeneralRe: plz help Pin
sravanibhanu19-Mar-08 21:33
sravanibhanu19-Mar-08 21:33 
GeneralRe: plz help Pin
sathesh pandian21-Apr-08 22:21
sathesh pandian21-Apr-08 22:21 
GeneralPrivate Chat HELP!!!!! Pin
arindam.roy26-Oct-07 23:56
arindam.roy26-Oct-07 23:56 
Questionhow to notify other user when one is typing message. Pin
sai4129-Aug-07 21:37
professionalsai4129-Aug-07 21:37 
Questionhow to notify other user when one is typing message. Pin
sai4129-Aug-07 21:35
professionalsai4129-Aug-07 21:35 
AnswerRe: how to notify other user when one is typing message. Pin
sathesh pandian14-Aug-07 1:46
sathesh pandian14-Aug-07 1:46 
Generali want clear the single user page only on multi user page chat application Pin
karthikeyan_caleb11-Jul-07 17:11
karthikeyan_caleb11-Jul-07 17:11 
GeneralRe: i want clear the single user page only on multi user page chat application Pin
sathesh pandian12-Jul-07 20:11
sathesh pandian12-Jul-07 20:11 
Questionhow to clear the current login user page Pin
karthikeyan_caleb24-Jun-07 22:50
karthikeyan_caleb24-Jun-07 22:50 
AnswerRe: how to clear the current login user page Pin
sathesh pandian27-Jun-07 18:39
sathesh pandian27-Jun-07 18:39 
Generalprivate chat application Pin
karthikeyan_caleb21-Jun-07 20:37
karthikeyan_caleb21-Jun-07 20:37 
GeneralRe: private chat application Pin
sathesh pandian22-Jun-07 0:15
sathesh pandian22-Jun-07 0:15 
GeneralRe: private chat application Pin
karthikeyan_caleb22-Jun-07 1:34
karthikeyan_caleb22-Jun-07 1:34 
GeneralRe: private chat application Pin
adarshr_ushus20-Jun-08 0:47
adarshr_ushus20-Jun-08 0:47 

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

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.