Here's the deal. I want to write a program that capture my Yahoo! Messanger (YM) chat in a text file. Basically, a command line chat program. I could have a listener program, which listens my chat partner's responses, and a writer / talker / sender, which sends my text to YM server.
The idea is a mix of dsniff's msgsnarf and Pidgin's finch. Once I can separate the text, I could do so many things (like write a Tcl/Tk wrapper around them building a new GUI, or send them to a web-based program like Meebo, or ... many intersting things).
Now. I need suggestions.
Should I write it from scratch? (Probably using perl or C. Which perl module should I use? I've been neglecting perl for quite a while. I am rusted. I also notice that there is a libpurple library in C. Should I use that one, instead?)
Or modify existing program(s)? Which one? (I just found out there's a program called ari-yahoo on the *BSD port. It's an old program and uses yahoolib. Is using yahoolib a good approach? Or should I go through the jabber route? Then, use this one: jarl - Perl/Tk jabber client.)
Any pointer is welcome.
The idea is a mix of dsniff's msgsnarf and Pidgin's finch. Once I can separate the text, I could do so many things (like write a Tcl/Tk wrapper around them building a new GUI, or send them to a web-based program like Meebo, or ... many intersting things).
Now. I need suggestions.
Should I write it from scratch? (Probably using perl or C. Which perl module should I use? I've been neglecting perl for quite a while. I am rusted. I also notice that there is a libpurple library in C. Should I use that one, instead?)
Or modify existing program(s)? Which one? (I just found out there's a program called ari-yahoo on the *BSD port. It's an old program and uses yahoolib. Is using yahoolib a good approach? Or should I go through the jabber route? Then, use this one: jarl - Perl/Tk jabber client.)
Any pointer is welcome.
Comments
hm... it will hide from your boss.
thanks for your idea.
Done with the thing. Basically I wrote a messanger sniffer. Capture the packets with tcpdump or snort, then process them with perl + Net::TcpDumpLog. An interesting little beast.
In the message, there are fields (id) and values, separated by "C0 80". I still don't know exactly what the fields mean though since they use number. I just made guesses. For example, "14" is the message and so on. Do you still remember what those fields mean? (Is there a table somewhere?)
, i am sure its fixable :)