Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

how to read icq chatfiles (*.CHT)

1,002 views
Skip to first unread message

Khodos1

unread,
Nov 9, 2000, 3:00:00 AM11/9/00
to

How can I read icq chatfiles (*.CHT) ?
I wanna put them all together in a txt file.
When I open them with notepad it's a big mess.
I tried to import them into the icq message archive but that didn't work...

Can someone help me out ?

Thanks

Paco Capella

unread,
Nov 9, 2000, 3:00:00 AM11/9/00
to
Hi Khodos1!
 
Just take a look at what I replied back to Mr. John Gessner.  Perhaps it will help you to figure out some things you need to know about before you embark into something more convoluted than you may realize at present time.  Please! by no means get discourage from what I just said, on the contrary, I will love to see some really hard working individual tackling this long forgotten issue.  So, please learn as much as possible about the CHT File format and write some code.
 
Sincerely,
Paco Capella
 
"Paco Capella" <Paco_C...@hotmail.com> wrote in message news:8ueahn$115$1...@news.icq.com...
Hi John,
 
CHT files are just a stream of characters as they were displayed when you were in a chat session.  It thus includes "invisible" characters such as Backspace and Carriage Return.  In conclusion:  what you see in the CHT files is the sequence of characters that arrived to your chat session from what you typed and what others typed.  Note that there will be some stream of characters that were not type by any participant but merely generated by the Chat application module to identify the originator of the stream of characters that follows.
 
Sincerely,
Paco Capella
"John Gessner" <Joh...@Foxinternet.net> wrote in message news:3A0AA7AF...@Foxinternet.net...
Remy Lebeau wrote:
>
> "John Gessner" <Joh...@Foxinternet.net> wrote in message
> news:3A09677A...@Foxinternet.net...
> > I find *.cht files in c:\programfiles\icq\chat but there is no
> > indication they are there in the icq program.
>
> Look in the Message Archive > Chats section for any entries.
>
> > When I look at them with notepad they are obviously in some data format
> > and almost unreadable. Yet there is no way to open them with icq.
>
> Again, Go into the Message Archive > Chats section.  If they have entries
> listed, you can play them back using the built-in chat viewer.  If there are
> no entries for those files, then you can't view them PERIOD as there's no
> way to import .cht files into the archive again
>
> > I thought i always cleaned up messages and chats by deleting them but
> > apparently this is not so?
>
> Not really.  When you delete items, they go into the Deleted Items section
> of the Message Archive.  Even if you empty that out, the entries are
> physically still stored in the database files, they're just marked as
> deleted so you don't normally see them.  You'll have to do a reindex of your
> entire database using the DBConvertor tool in order to physically delete
> them for good.
>
> Gambit
>
> -

When I click message archive I get a promo for it and a prompt to
download "Message Archive." When I click on this nothing happens. I did
this early on then forgot about it. To get histories I've relied on
histories of each of my contacts.

Also... it seems rather absurd that icq would be set up to only read
files if they are in the history or archive section. It is a obscure
program to start with but that seems pretty wild even for icq.

John Gessner
-
"Khodos1" <Kho...@hotmail.com> wrote in message news:973788289.901466@marvin...
-

Remy Lebeau

unread,
Nov 9, 2000, 3:00:00 AM11/9/00
to
As you wish... consider it added to my ongoing list of ICQ projects I'm
already working on (ICQ Database Viewer/Backwards-Convertor, ICQ Webcam, ICQ
Message Catcher, ICQ Protocol component)


Gambit

"Paco Capella" <Paco_C...@hotmail.com> wrote in message

news:8uevkr$90j$1...@news.icq.com...

> I will love to see some really hard working individual tackling this
> long forgotten issue. So, please learn as much as possible about
> the CHT File format and write some code.

-

Paco Capella

unread,
Nov 10, 2000, 3:00:00 AM11/10/00
to
Hi Remy!
 
Thank you so much for taking this tough job.  It will certainly be very much appreciated by many, me included.  :)
 
Hey!  I don't have hard feelings toward you, I do recognized the ten of thousands people you had helped with good sound advice.  Just restrain your pen when it comes to things you are not absolutely sure about.  That's all.
 
Sincerely,
Paco Capella
 
"Remy Lebeau" <gamb...@gte.net> wrote in message news:8ufrcu$g2d$1...@news.icq.com...
As you wish... consider it added to my ongoing list of ICQ projects I'm
already working on (ICQ Database Viewer/Backwards-Convertor, ICQ Webcam, ICQ
Message Catcher, ICQ Protocol component)


Gambit

"Paco Capella" <Paco_C...@hotmail.com> wrote in message


> I will love to see some really hard working individual tackling this
> long forgotten issue.  So, please learn as much as possible about
> the CHT File format and write some code.



-

-

Ribbed-One

unread,
Nov 11, 2000, 3:00:00 AM11/11/00
to
Seems that Remy Lebeau wrote:

>ICQ Webcam

Cool! :)

--
The clock on the wall says it's 4:20.

Remy Lebeau

unread,
Nov 11, 2000, 3:00:00 AM11/11/00
to
It will be, when I get it working properly, hehe


Gambit

"Ribbed-One" <the_ribb...@SPAMyahoo.com> wrote in message
news:8FE91181Etheri...@24.64.2.57...
> >ICQ Webcam
>
> Cool! :)

-

John Gessner

unread,
Nov 17, 2000, 3:00:00 AM11/17/00
to
Khodos1 wrote:
>
> How can I read icq chatfiles (*.CHT) ?
> I wanna put them all together in a txt file.
> When I open them with notepad it's a big mess.
> I tried to import them into the icq message archive but that didn't work...
>
> Can someone help me out ?
>
> Thanks

I spent a little time on this. Be best if you got an editor that reads
binary (ascii codes greater than 128 and less than 32.) Notepad doesn't
but Editor in DOS does pretty well.

There is a header that gives the parties chatting, the date, and the
binary codes used for these parties. The binary identifiers are 6 to 10
bytes long (I forget right now). Everything from a person's code to the
next instance of the other person's code is what is typed in by that
person. EXCEPT there is some kind of timing or line number code that
appears periodically.

Of course, in the data stream typed there are back spaces, deletes, etc.
and the special codes that signify special events for icq.

I just wanted to recreate what was said so I just erased everything
except the identifiers (for which I substituted the real names) and
bytes in the character range 32-128. This left a pretty clean stream of
readable characters.

However it is JUST as typed in, meaning words are interrupted. You can
either cut and paste to put the puzzle together or write a simple little
basic program to do it for you (what I did).

Then I ended up with two (number of people in my chat) streams of
talking. Putting it in sequence would be another step. I've noticed even
icq doesn't do that very well as there is no REAL sequence that is
right.

Hope this helps. Perhaps someone will put more time into it and figure
out ALL the codes. Easier if we just knew what icq uses for a database
manager.

Easier still would be to get icq people to make it possible to do what
you proposed: be able to have icq open a *.cht file and run it. I wonder
why they don't? Just an oversight? or is their purpose to the omission?

John Gessner

Paco Capella

unread,
Nov 17, 2000, 3:00:00 AM11/17/00
to
Hi John!
 
That explanation of your was stupendous!!!  :)  Thank you so much!!!  I made some annotations below.
 
Regards,
Paco Capella
 
P.S.:  Don't you feel we have stimulated some sort of collaboration in here?
 
 
¹ RDBMS ~ Relational Database Management System
² ISAM ~ Indexed Sequential Access Method
"John Gessner" <Joh...@Foxinternet.net> wrote in message news:3A155BB4...@Foxinternet.net...
Khodos1 wrote:
>
> How can I read icq chatfiles (*.CHT) ?
> I wanna put them all together in a txt file.
> When I open them with notepad it's a big mess.
> I tried to import them into the icq message archive but that didn't work...
>
> Can someone help me out ?
>
> Thanks

I spent a little time on this. Be best if you got an editor that reads
binary (ascii codes greater than 128 and less than 32.) Notepad doesn't
but Editor in DOS does pretty well.

There is a header that gives the parties chatting, the date, and the
binary codes used for these parties. The binary identifiers are  6 to 10
bytes long (I forget right now). Everything from a person's code to the
next instance of the other person's code is what is typed in by that
person. EXCEPT there is some kind of timing or line number code that
appears periodically.  <= From this account of yours, I am inclined to believe that it most certainly be a "TimeStamp".  This is a necessary thing to record, since there might be a long span of time where chat session participants don't say or do a thing.  ;)

Of course, in the data stream typed there are back spaces, deletes, etc.
and the special codes that signify special events for icq.      <=  ;)


I just wanted to recreate what was said so I just erased everything
except the identifiers (for which I substituted [with] the real names) and

bytes in the character range 32-128. This left a pretty clean stream of
readable characters.

However it is JUST as typed in, meaning words are interrupted. You can
either cut and paste to put the puzzle together or write a simple little
basic program to do it for you (what I did).  <=Hey! would you mind posting your "simple" basic code.  Is it Quick Basic or Visual Basic, or something else?
 
At any rate, what you said is absolutely right:  what you end up is with streams of text as they were typed-in in real-time.  What this mean is that the CHT file should be "played" and not "read" so that you can "see" things as they happened.  In other words, to play it back.    ;)


Then I ended up with two (number of people in my chat) streams of
talking. Putting it in sequence would be another step. I've noticed even
icq doesn't do that very well as there is no REAL sequence that is
right.  <= Trust me, there is a sequence! ... and the key to it is in the combination of the participant identifier plus the TimeStamp.  Please, I am not implying it is a simple combination or an easy function of these two parameters, lets call them PID and TS for Participant Identifier and TimeStamp respectively.


Hope this helps. Perhaps someone will put more time into it and figure
out ALL the codes. Easier if we just knew what icq uses for a database
manager.    <= Yes indeed!  This post of yours helps a lot to understand the format of a CHT file.  Many thanks from my part, I am very grateful for your contribution.  :)  
 
From my own observation, ICQ Inc. does not uses any database manager known to me.  To just mention a few RDBMS¹ file formats, ICQ Inc. does not uses anything remotely compatible with:
 
a.  *.dbf (xBase type of applications like dBase and FoxPro), or with 
 
b.  *.db (Paradox), *.xls (Excel), *.mdb (Access), or with
 
c.  *.txt, *.asc, *.prn, *.csv, (Text and fixed length files), or with 
 
d.  other ISAM² type of files ... as I said ... to my knowledge.
 
What I am convince of so far is that ICQ Inc. uses a unique always changing proprietary format for all of the data files used by their client application.  So it is very though for many of us that spend time in keeping up with ICQ Inc. in decyphering their file formats.


Easier still would be to get icq people to make it possible to do what
you proposed: be able to have icq open a *.cht file and run it. I wonder
why they don't? Just an oversight? or is their purpose to the omission?  <= You are right on the target my friend!  I believe both:  An oversight by many ICQ Inc. developers, and a purposely omission by ICQ Inc. management (I presume) due to $$$ matters. ;)

John Gessner
-

Remy Lebeau

unread,
Nov 17, 2000, 3:00:00 AM11/17/00
to
You are correct in that ICQ, Inc. did invent their own proprietary database
format specific for ICQ. There used to be a site that had documented specs
on the ICQ98 database format that also briefly touched on 99a as well, but
that site is no longer online. I was able to get the specs from the author
though just after the site was terminated. And now I'm waiting on a few
more specs from ICQ, Inc. directly, including the database specs for all
versions of ICQ


Gambit

"Paco Capella" <Paco_C...@hotmail.com> wrote in message

news:8v3tce$r1o$1...@news.icq.com...


> What I am convince of so far is that ICQ Inc. uses a unique always
> changing proprietary format for all of the data files used by their client
> application. So it is very though for many of us that spend time in
keeping
> up with ICQ Inc. in decyphering their file formats.


-

Paco Capella

unread,
Nov 18, 2000, 3:00:00 AM11/18/00
to
Hi Remy!
 
That is so cool !!!
 
Hey!  Would you mind posting or emailing the ICQ file specs for each ICQ version as soon as you get it from ICQ Inc.?  I really wouldn't like to bother ICQ Inc. in getting stuff from them due to their poor "support" record ... plus you have to see it from ICQ Inc. perspective:  "too many annoying customers making stupid questions or asking for very low priority things".
 
So, bottom line ... if you get it ... please post it or at least include me in your mailing list.  ;)
 
Sincerely,
Paco Capella
 
 
 
 
"Remy Lebeau" <gamb...@gte.net> wrote in message news:8v54bu$2u9$2...@news.icq.com...
You are correct in that ICQ, Inc. did invent their own proprietary database
format specific for ICQ.  There used to be a site that had documented specs
on the ICQ98 database format that also briefly touched on 99a as well, but
that site is no longer online.  I was able to get the specs from the author
though just after the site was terminated.  And now I'm waiting on a few
more specs from ICQ, Inc. directly, including the database specs for all
versions of ICQ


Gambit

"Paco Capella" <Paco_C...@hotmail.com> wrote in message
news:8v3tce$r1o$1...@news.icq.com...
> What I am convince of so far is that ICQ Inc. uses a unique always
> changing proprietary format for all of the data files used by their client
> application.  So it is very though for many of us that spend time in
keeping
> up with ICQ Inc. in decyphering their file formats.




-

-

John Gessner

unread,
Nov 18, 2000, 3:00:00 AM11/18/00
to

Yes... me too. If I had the specs i could probably rough out a simple
reader pretty quickly.

John Gessner

John Gessner

unread,
Nov 18, 2000, 3:00:00 AM11/18/00
to

You often can't tell who said what first because both are typing at the
same time. I made up the sequence below which is typical. I substituted
*John* and *Mary* for the binary signatures. the stream would look like
this:

*John*Hi H*Mary*Hi h*John*ow ar*Mary*ow a*John*e*Mary*re you?*John* you?

Both are saying, "Hi how are you" at the same time. Because of time
differentials I have often seen where an answer seems to appear before
the question is asked in these cases. I'm still not sure why this
happens.

JG

Remy Lebeau

unread,
Nov 18, 2000, 3:00:00 AM11/18/00
to

"Paco Capella" <Paco_C...@hotmail.com> wrote in message
news:8v6pn4$iuh$1...@news.icq.com...

> Hey! Would you mind posting or emailing the ICQ file specs for each
> ICQ version as soon as you get it from ICQ Inc.?

That depends on if they require me to sign a NDA (non-disclosure agreement)
or not

> I really wouldn't like to bother ICQ Inc. in getting stuff from them due
to their
> poor "support" record ...

You'd never get it that way anyway, ICQ, Inc. isn't giving them to me
through official channels. The only reason I'm able to get them to begin
with is because of a contact of mine who has a friend working at ICQ, Inc.

> So, bottom line ... if you get it ... please post it or at least include
> me in your mailing list. ;)

We'll see, no guarantees. I did express to them that I wanted the specs for
my own use in making a few utility programs for ICQ that ICQ, Inc. itself
hasn't made yet.


Gambit


-

Remy Lebeau

unread,
Nov 18, 2000, 3:00:00 AM11/18/00
to
As Paco already mentioned, the .cht files are meant to be played back in
real-time, not viewed as plain text, for the very reason you're seeing -
users type at the same time and overlap each other's text.


Gambit

"John Gessner" <Joh...@Foxinternet.net> wrote in message

news:3A17069A...@Foxinternet.net...

-

John Gessner

unread,
Nov 19, 2000, 3:00:00 AM11/19/00
to
Remy Lebeau wrote:
>
> As Paco already mentioned, the .cht files are meant to be played back in
> real-time, not viewed as plain text, for the very reason you're seeing -
> users type at the same time and overlap each other's text.
>
> Gambit
>
> "John Gessner" <Joh...@Foxinternet.net> wrote in message
> news:3A17069A...@Foxinternet.net...
>
> > You often can't tell who said what first because both are typing at the
> > same time. I made up the sequence below which is typical. I substituted
> > *John* and *Mary* for the binary signatures. the stream would look like
> > this:
> >
> > *John*Hi H*Mary*Hi h*John*ow ar*Mary*ow a*John*e*Mary*re you?*John* you?
> >
> > Both are saying, "Hi how are you" at the same time. Because of time
> > differentials I have often seen where an answer seems to appear before
> > the question is asked in these cases. I'm still not sure why this
> > happens.
>
> -

Exactly right. Even when you play a saved file back in ICQ the sequences
often don't make sense.

John Gessner

Paco Capella

unread,
Nov 19, 2000, 3:00:00 AM11/19/00
to
Esteemed John,
 
Just imagine that each participant has their own textbox.  When you see a PID (Participant Identifier) dump text that follows the PID to the PID's corresponding  textbox.  Do that in real time.
 
Bear in mind, that if you converted nicknames to PID right from the beginning, then you might have inaccurate textboxes, because there might be instances (or the possibility) where the PID of a user that left the session might be given to a user that just joined the session.  So, you will have to automatically create, delete, and rearrange textboxes in real time.
 
Also you may not want to delete all of the characters from 0 to 32 or the "emotes" or the sounds, because there might be some additional uses that we haven't discovered yet.
 
So, it is not a big surprise to me that in the your particular example you provided to us, the "Hi's ..." and "Hello's ..." doesn't appear to make any sense to you. 
 
Bottom Line:  We can make the "contribution" be an ever growing exponential function if you provide a sample of your code.  ;)
 
Sincerely,
Paco Capella
"John Gessner" <Joh...@Foxinternet.net> wrote in message news:3A1811DC...@Foxinternet.net...
Remy Lebeau wrote:
>
> As Paco already mentioned, the .cht files are meant to be played back in
> real-time, not viewed as plain text, for the very reason you're seeing -
> users type at the same time and overlap each other's text.
>
> Gambit
>
> "John Gessner" <Joh...@Foxinternet.net> wrote in message
> news:3A17069A...@Foxinternet.net...
>
> > You often can't tell who said what first because both are typing at the
> > same time. I made up the sequence below which is typical. I substituted
> > *John* and *Mary* for the binary signatures. the stream would look like
> > this:
> >
> > *John*Hi H*Mary*Hi h*John*ow ar*Mary*ow a*John*e*Mary*re you?*John* you?
> >
> > Both are saying, "Hi how are you" at the same time. Because of time
> > differentials I have often seen where an answer seems to appear before
> > the question is asked in these cases. I'm still not sure why this
> > happens.
>
> -

Exactly right. Even when you play a saved file back in ICQ the sequences
often don't make sense.

John Gessner
-

John Gessner

unread,
Nov 21, 2000, 3:00:00 AM11/21/00
to
Now I feel completely stupid about this. I chatted with a friend and
saved it. Now I can't figure out how to play it back in the normal way.
I have recently upgraded to 2000a. Help?

John

Jaypie

unread,
Nov 21, 2000, 3:00:00 AM11/21/00
to
You click on My ICQ > Message Archive > Open Message Archive > you then
click on the Chats icon and you select the name of the user and Play...

--
Jaypie
jp.l...@sympatico.net

Adresse anti-spam address.
Remplacer .net par .ca.
Replace .net by .ca


"John Gessner" a écrit dans le message news:

-

John Gessner

unread,
Nov 22, 2000, 3:00:00 AM11/22/00
to
Now I remember the problem. When I click Message Archive I get an add
and prompt to download and install the icq message archive. When I click
on that, nothing happens.

I imagine I must get to icq home page and find the appropriate download.
Having tried to find things on the icq page deters me from making the
effort. It makes me wonder why they didn't just include it in the first
place.

John Gessner

Jaypie

unread,
Nov 22, 2000, 3:00:00 AM11/22/00
to
I suggest you click on that link to add the plugin...

http://cgi.icq.com/cgi-bin/redirect/plugindownload.pl5?clsid=0


"John Gessner" <Joh...@Foxinternet.net> a écrit dans le message news:
3A1BCEA3...@Foxinternet.net...

-

John Gessner

unread,
Nov 23, 2000, 3:00:00 AM11/23/00
to
Jaypie wrote:
>
> I suggest you click on that link to add the plugin...
>

thanks... but i went to the icq home and got 2000b AND the plugin

JG

Jaypie

unread,
Nov 23, 2000, 3:00:00 AM11/23/00
to
The plugin fits on 2000a also...

"John Gessner" <Joh...@Foxinternet.net> a écrit dans le message news:

3A1D2380...@Foxinternet.net...


> Jaypie wrote:
> >
> > I suggest you click on that link to add the plugin...
> >
>
> thanks... but i went to the icq home and got 2000b AND the plugin
>
> JG
>
> > http://cgi.icq.com/cgi-bin/redirect/plugindownload.pl5?clsid=0
> >

> > > Jaypie wrote:
> > > >
> > > > You click on My ICQ > Message Archive > Open Message Archive > you
then
> > > > click on the Chats icon and you select the name of the user and
Play...
> > > >
> > > > --
> > > > Jaypie
> > > > jp.l...@sympatico.net
> > > >
> > > > Adresse anti-spam address.
> > > > Remplacer .net par .ca.
> > > > Replace .net by .ca


-

0 new messages