Activeworlds
Chat Visualization Tool Kit Documentation
by Alan Lin, SLIS
Table
of Content
1. Introduction
2. Activeworlds
Log Files
2.1 Chat Log
2.2 World Log
2.3 Chat Category
3.
Applications
3.1 GraphChat
3.2 GraphWorldLog
3.3 ChatTime
1.
Chat Visualization Tool Kit
The Chat Visualization Tool Kit is written
in Java programming language. It can generate graphs
and text based on Activeworlds log files. The tool kit contains three applications:
1) Graph Chat
Program
2) Graph World
Log Program
3) ChatTime
Program
2.
Activeworlds Log Files
2.1 Chat Log File
In the Activeworlds environment, users
have the option to save the chat content. If this function is enabled,
all the chatting, including whispers, in the pre-set perimeter around the
users will be recorded. This file contains participants’ names and utterances.
(See figure 1)
Figure 1. Chat Log
File
Download Sample File
2.2 World Log File
World log file on the other hand does
not have either names or utterances. However, this file holds date, time,
IP address, and events. (See figure 2) The world log file is not public
accessible. Only the administrator of the world has the right to obtain
this file.
Figure 2. World Log
File
Download Sample File
2.3 Utterance Category
File
The only file that is not generated in
Activeworlds environment is the utterance category data file. This file
is generate by assigning type, represented by number, to each utterance.
For example type 1 utterance is “greeting”, type 5 is “question” etc. (See
figure 3)
Figure 3. LSA File
Download Sample File
3.
Applications
3.1
GraphChat Program
Purpose
This application allows user to generate
graphic representation on chat log file. This file is the recording of
all the chatting activities in the Activeworlds environment. By re-arranging
this file and presenting in a graphic way will provide a meaningful way
for user to interpret the chatting
activity.
Input
This program takes two kinds of input
files- chat log and chat category file. Chat log file
is required for this program and chat category file is optional. Note that
the chat log file in this case is the
combination of all the chat log files you received. The combinationof these
chat files is done by appending the files to one and other. The program
will resolve any redundancy of the
utterances resulted by the combination.
Output
The application produces one output files
named “ChatLogOUT.txt” and four graphs based
on chat log file. These four graphs are: (Detail explanation and sample
of each graph is in the section follows)
1). Graph
Chat: Visualizing the Length of Chat&Whisper Utterances
2). Graph
Chat: Visualizing the No of Unique&Duplicate Utterances
3). Graph
Chat: Visualizing the Average Utterance Length
4). Graph
Chat: Visualizing the No of Unique Utterances
If chat category
file is provided, the application can create one output file name
“TypeOUT.txt” and
two graphs base on the file. These two graphs are: (Detail
explanation and
sample of each graph is in the section follows)
1). Graph
Chat: Visualizing the No of Utterance Types
2). Graph
Chat: Visualizing the Type of Chat&Whisper Utterances
How To Run
In iuniverse directory,
go to ../ChatVisToolKit/GraphChat. You will find 12
Java source files for this
application.
| chatlog.java |
avgFrame.java |
| chatdata.java |
dupFrame.java |
| chatParser.java |
typeUtterFrame.java |
| chatSort.java |
uniFrame.java |
| FormatWriter.java |
LSAframe.java |
| FeneralSorts.java |
gFrame.java |
To start this application, you have to
compile the source file by doing: $javac *.java
The main class routine, chatlog.class,
takes three parameters. The
first parameter is the type of graph you want to generate.
0 = No Graph
1 = GraphChat: Visualizing the Length of Chat & Whisper Utterances
2 = GraphChat: Visualizing the No of Unique & Duplicate Utterances
3 = GraphChat: Visualizing the Average Utterance Length
4 = GraphChat: Visualizing the No of Unique Utterances
5 = GraphChat: Visualizing the No of Utterance Types
6 = GraphChat: Visualizing the Type of Chat & Whisper Utterances
The second parameter is the chat log file
name. The last parameter is the chat category name. This parameter is optional.
For example, if I have a chat log file named “chat.txt” and I want to see
visualization of average utterance length, this is what I will do:
$ java chatlog.class
3 chat.txt
Examples
Output Files:
| ChatLogOUT.txt
Total number of person joined:
32
Total number of utterance:
505
Name Number of Utterance
----------------------------------------------------
"ChrisSX"
1
"Diane"
6
"Jodedor"
11
"Mctrix"
9
"Spectator"
3 |
TypeOUT.txt
TypeNum
Type Name Type Count
----------------------------------------------------
1 Greeting
35
2 Explanation
208
3 Command
20
4 Whispering
19
5 Question
56
6 Other
155
7 Good Bye
9
|
Graphs:
1. GraphChat: Visualizing
the Length of Chat & Whisper Utterances
This graph
shows the number of utterance of each person. The number of squares
represents
number of utterance. The length and color of each square represents
number of words
in each utterance. There are circular shapes as well. This circular shape
represents whispers. These also share the same attribute in coloring and
length of square shapes.
2. GraphChat: Visualizing
the No of Unique & Duplicate Utterances
This graph shows both duplicate and unique
utterances of each person.
3. GraphChat: Visualizing
the Average Utterance Length
This graph shows the average utterance
per person.
4. GraphChat: Visualizing
the No of Unique Utterances
This graph
shows the unique utterance of each person. It is sorted in ascending order.
5. GraphChat: Visualizing
the No of Utterance Types
This graph
shows the number of utterance of each type.
6. GraphChat: Visualizing
the Type of Chat&Whisper Utterances
This graph
shows the utterance type represented by coloring.
3.2
GraphWorldLog Program
Purpose
This program
is use to produce a graph and to extract useful information from world
log file.
Input
This program required Activeworlds world
log file. This files can only be obtain by system administrator.
Output
This program produces one graph- GraphWorldLog:
Visualizing Chat&Whisper&Web Access
over Time and two output files-worldLogOut.txt and worldLogCord.txt.
The worldLogOut.txt file contains name, time of the message, and the position
of the message. The worldLogCord.txt
file holds name, coordinate position of web access, and time.
How to Run
In iuniverse directory,
go to ../ChatVisToolKit/GraphWorldLog. You will find 8 Java
source code files for this
application.
| worldLogMain.java |
worldLogSort.java |
| worldLogChat.java |
worldLogFrame.java |
| worldLogParser.java |
worldLogData.java |
| worldLogCord.java |
GeneralSorts.java |
This start this
program, you need to compile the source code files by doing: $javac
*.java
The main Java class
of this program, worldLogMain.class, take one parameter.
You have to give
the world log file name to this parameter. For
example, if your world log file name is “worldLog.txt”. Then you will need
to give it to the main routine class
such as below:
$ java worldLogMain.class
worldLog.txt
Examples
Output Files:
| WorldLogOut.txt
Name: "1aGo"
No
Time
------------
Name: "23atestee"
No
Time
------------
24 11:06:32
25 11:07:57
25 11:08:19
25 11:10:20
Name: "22abird"
No
Time
------------
25 11:09:45
25 11:10:32
25 11:11:18
25 11:12:32
25 11:14:01 |
WorldLogCord.txt
Name: "1aGo"
Cord
Time
------------------
Name: "23atestee"
Cord
Time
------------------
9N 2E
11:31:36
6N 6E
11:33:02
8N 1W
11:34:16
8N 1W
11:34:47
8N 0W
11:36:06
8N 0W
11:36:22
17N 6E
11:37:16
5N 7E
11:37:21
1N 0W
11:41:53
1N 1E
11:42:06
10S 10E
11:42:46 |
World Log Graph
This program produces one graph base on
the world log file.
The circles in the
graph represent messaging activities (yellow for message,
blue for whispering,
and red for web access) over time.
Purpose
This program is used
to merge chat log and world log file, since chat log file does not
contain time and position. By combining
these two file, we will be able to tell when and what
chat utterance people in Activeworlds
environment involved.
Input
This program takes three input files.
The first input files is the sorted chat log files.
The second input file is the chat log
file. (This chat log file is all the chat log files combined
with “* file
name” separate each files) The third file is the world log file.
Output
The combination
of these three files gives you three kinds of output files. One is the
time
stamp of messages. The other is the utterance
of each person. And the last one is the
time, name, utterance, and frequency of
utterance appearance in chat log files. The names
of these files are “timeStamp.txt”, “Utterance.txt”,
and “Frequency.txt” respectively.
How to Run
In iuniverse directory, go to ../ChatVisToolKit/ChatTime.
You will find 11 Java source code files for this application.
| ChatTimeMain.java |
chatdata.java |
| chatFile.java |
chatFileSort.java |
| chatLogData.java |
chatParser.java |
| chatSort.java |
worldLogChat.java |
| worldLogData.java |
worldLogParser.java |
| writeFile.java |
|
To start this application, you need to
compile the source codes by doing: $javac *.java
The main class file is named ChatTimeMain.class
and it take three parameter.
The first parameter is the sorted chat
log file name.
The second parameter is the world log
file name.
The last parameter is the chat log file
name. (combination of all the chat log files with "*file
name" separation)
For example, if I have a sorted chat log
file named “Sortchat.txt”, world log file named “worldLog.txt”, and combination
chat log file named “chat.txt”. I will run the program like this:
$ java ChatTimeMain.class Sortchat.txt
worldLog.txt chat.txt
Examples
Output Files:
| timeStamp.txt
Name: "1aGo"
Name: "23atestee"
Tue 04/03/01 11:06:32
Tue 04/03/01 11:07:57
Tue 04/03/01 11:08:19
Tue 04/03/01 11:10:20
Name: "22abird"
Tue 04/03/01 11:09:45
Tue 04/03/01 11:10:32
Name: "21adog"
Tue 04/03/01 11:05:14
Tue 04/03/01 11:05:39
Name: "13auser"
Tue 04/03/01 11:08:03
Tue 04/03/01 11:08:27
Tue 04/03/01 11:10:01 |
Utterance.txt
Name: "10awennie"
HI,team 3?
Where are we going
to meet, team 3?
I am coming.
Hi team 3, I am in
Science House
Name: "11aslis"
Hi, I'm 11. Where
are the other guys?
Hi, team3
Where are we going
to meet? team3
Are you in science
house? 12adid?
I'm coming |
| Frequency.txt Time
Appears in chat log file Name
Utterance -----------------------------------------------------------------------------------11:17:31
11 12 13 14 15 17 19 2 20 21 22 23 24 6 7 8 9 "11aslis" Where is 9 11:17:56
11 12 13 14 15 17 19 2 20 21 22 23 24 6 7 8 9 "11aslis" Hi nice to see
you guys 11:18:54 11 12 13 14 15 17 19 2 20 21 22 23 24 6 7 8 9 "11aslis"
Where are you now? 9 We are wai11:19:33 11 12 13 14 15 17 19 2 20
21 22 23 24 6 7 8 9 "11aslis" We are supposed to find some 11:21:24
11 12 13 14 15 19 2 20 21 22 23 24 3 6 7 8 9 "11aslis" Let's split the
tasks 11:21:58 11 12 13 14 15 16 19 2 20 21 22 23 24 3 6 7 8 9 "11aslis"
I'll take question 6 11:36:54 11 12 15 16 2 20 21 22 6 7 8 9 "11aslis"
I got the answer for 6 11:58:08
15 2 6 8 "11aslis" Whos is going to collect the answers? 11:06:21
17 2 20 24 7 9 "12adid" who or where is no.9? 11:08:11
11 12 14 15 15-2 17 19 2 20 21 22 23 24 6 7 8 9 "12adid" wher is 9-12 (12
is me)? 11:11:46
11 12 13 14 15 15-2 17 19 2 20 21 22 23 24 24-2 6 7 8 9 "12adid" where
is any of team 3? 11:12:45
11 12 13 14 15 15-2 16 17 19 2 20 21 22 23 24 24-2 6 7 8 9 "12adid" yes
11:13:54 11 12 13 14 15 15-2 17 19 2 20 21 22 23 24 24-2 6 7 8 9
"12adid" wher's no 10? 11:15:53 11 12 13 14 15 17 19 2 20 21 22 23
24 6 7 8 9 "12adid" do we go in the sign 11:16:39 11 12 13 14 15
17 19 2 20 21 22 23 24 6 7 8 9 "12adid" how do you "get in" 11:17:51
11 12 13 14 15 17 19 2 20 21 22 23 24 6 7 8 9 "12adid" what now? |
Contact katy@indiana.edu
or whazlewo@indiana.edu for source
code & details.
Last Modified 12-21-2002
|