1. Post #1
    Gold Member
    VoiDeD's Avatar
    August 2005
    860 Posts
    Hello, just wanted to post an announcement here about a Steam chat logging tool I've created.

    You'll find another thread about this in Valve Games and Mods, but I wanted to spread the word a little more to people who might not have seen it. If a moderator would like to close a thread I request it to be the one in Valve Games and Mods one, thanks!

    Beta 4 update!
    B4 is ready, sorry for the exceptionally long delay.

    New features:



    LinkIDs - You can now link SteamID/Community IDs to a name of your choice, and use the {LinkID} formatting option to display that name. If the LinkID doesn't exist, it falls back to using {Name}.

    The logger now waits for steam, instead of spitting out an error so you can add it to your startup entries.

    There will hopefully be no more issues with outdated steamclient.dll's, the latest version now automatically locates your steam folder and uses the one located there. So you don't have to worry about anything!

    Grab it here: http://dl.dropbox.com/u/99606/steam%...tlog_b4fix.rar (LinkID fix version)

    Beta 3 update!
    VoiDeD posted:
    Hi all, a new version of the chat logger is now available: beta 3.

    New Features:[list][*]Redesigned settings dialog with functional previews.[*]New settings options for invalid character replacement and date/time formatting.[*]New icon. (A little lacking on the anti-aliasing side, but it should be an improvement.)[/list]
    Here's a shot of the new dialog:


    Grab it here: http://dl.dropbox.com/u/99606/steam%...tlog_b4fix.rar (LinkID fix version)

    Notes for updating: You should be able to drop it right into your existing folder without a problem. It will automatically update your settings.xml file for you.
    Here's the gist of the post:

    I'd like to introduce a utility I wrote up yesterday. A steam chat logger.

    The vast majority of modern chat clients or client plugins currently support logging conversations to file somewhere for reference at a later time.

    But yet, Steam lacks this feature for unknown reasons.

    So I thought fit to develop a program to solve this design gap.

    But enough text, pictures speak louder than words anyway.

    What this utility does in a nutshell

    Takes your average steam conversation...


    and stores it!

    How it works


    The application runs mostly in the background, with a taskbar icon for interaction.

    However, the logging process itself is in your control:


    You can customize the log format to your own likings.

    [release]
    Download
    Grab the latest logger (beta 7) here:
    https://bitbucket.org/VoiDeD/open-steamworks/downloads

    Requirements:[list][*]Microsoft C++ 2008 Runtime: 32-bit, 64-bit[*].NET Framework 3.5: Download[/list][/release]

    The internal process through which logging is achieved is relatively simple. Steam's internals use a system of communication pipes that can be opened by any process (such as a game, or your friends list). Steam communicates all event data (such as chat messages, news updates, friend state changes, etc) through these pipes. By creating a steam pipe, this utility is able to receive friend messages just like Steam itself does.

    Limitations
    This doesn't currently work for group chats. The reasoning behind it is due to the nature of the interfaces that Steam itself uses. It uses a collection of internal interfaces for group chats, but these interfaces are subject to change during any future steam update, and it could break the functionality of the logger.

    To-do's
    Different logging formats such as XML. (This one is really based on how many people will have demand for this)


    If you're a developer and you're interested in how this all works, check out this thread: http://www.facepunch.com/showthread.php?t=824685, and be sure to check out logger source code available here: https://bitbucket.org/VoiDeD/open-st...ts/Chat%20Log/

    This is beta software, so please report any bugs or issues that occur! I also welcome any suggestions and criticisms, anything that can improve the logger is welcome.
    Reply With Quote Edit / Delete Reply United States Show Events Useful x 115Winner x 8Dumb x 6Friendly x 3Bad Spelling x 1Informative x 1Optimistic x 1Disagree x 1Funny x 1 (list)

  2. Post #2
    Odellus[v2]'s Avatar
    October 2009
    441 Posts
    Ace program. I'll definitely use this.
    Reply With Quote Edit / Delete Reply United States Show Events Agree Agree x 19Disagree Disagree x 3Optimistic Optimistic x 1 (list)

  3. Post #3
    Obama Yo Momma's Avatar
    January 2009
    757 Posts
    This is quite useful. Thank you.
    Reply With Quote Edit / Delete Reply United States Show Events Useful Useful x 2Friendly Friendly x 1Disagree Disagree x 1Agree Agree x 1 (list)

  4. Post #4
    'Fashion Designer'
    Beacon's Avatar
    August 2005
    13,770 Posts
    Wow, this is pretty cool.
    Reply With Quote Edit / Delete Reply United Kingdom Show Events Agree Agree x 2 (list)

  5. Post #5
    Gold Member
    EliteGuy's Avatar
    November 2006
    6,990 Posts
    didn't you already make a thread for this?
    Reply With Quote Edit / Delete Reply United States Show Events Bad Reading x 12Dumb x 5Agree x 3Funny x 1Informative x 1 (list)

  6. Post #6
    Gold Member
    codenamecueball's Avatar
    May 2009
    8,833 Posts
    Its good, but i like steam for it's no history stored ideal.
    Its useful :smug:
    Reply With Quote Edit / Delete Reply United Kingdom Show Events Dumb Dumb x 14Agree Agree x 2Optimistic Optimistic x 1Bad Spelling Bad Spelling x 1 (list)

  7. Post #7
    Odellus[v2]'s Avatar
    October 2009
    441 Posts
    Make it so that each chat session is saved to its own file with the name of the person you're chatting with and the date and I'll love you forever.

    Edited:

    Rated useful.
    Reply With Quote Edit / Delete Reply United States Show Events Agree Agree x 10Dumb Dumb x 2Bad Reading Bad Reading x 1 (list)

  8. Post #8
    Umi-hebi's Avatar
    September 2009
    3,036 Posts
    I'm installing this so it starts on startup
    Reply With Quote Edit / Delete Reply United States Show Events Agree Agree x 3Funny Funny x 1 (list)

  9. Post #9
    Gold Member
    ghosevil's Avatar
    September 2005
    2,809 Posts
    Wait, how does it look up their steamid? Are community profile #'s linked to them?

  10. Post #10
    Gold Member
    raccoon12's Avatar
    November 2008
    3,175 Posts
    Wait, how does it look up their steamid? Are community profile #'s linked to them?
    steam has an interface for that

  11. Post #11
    Gold Member
    VoiDeD's Avatar
    August 2005
    860 Posts
    Wait, how does it look up their steamid? Are community profile #'s linked to them?
    Community IDs are 64bit representations of SteamIDs, except for some stripped data that SteamID's don't contain such as account instance. You can read up more on them here: http://developer.valvesoftware.com/wiki/SteamID

    As for how it receives the ID: the underlying messaging system in steam receives a callback through the pipe that contains the SteamID of the sender, and a chat id value that you can look up to get the chat message.

    Make it so that each chat session is saved to its own file with the name of the person you're chatting with and the date and I'll love you forever.
    You can change the log directory so it stores to a location such as "C:\logging directory\{Date}\", and it will place all logs in dated directories. Sessions are a little involved because to steam there is no indication of a session start and stop, just continuous messages.
    Reply With Quote Edit / Delete Reply United States Show Events Informative Informative x 7Winner Winner x 2 (list)

  12. Post #12
    Moderator
    cosmic duck's Avatar
    September 2007
    2,573 Posts
    Hey wow great job, i've been wanting this feature for ages! Good job.
    I wish valve would get off their asses and make the steam chat feature halfway decent.
    Reply With Quote Edit / Delete Reply United Kingdom Show Events Agree Agree x 21Bad Spelling Bad Spelling x 1 (list)

  13. Post #13
    Odellus[v2]'s Avatar
    October 2009
    441 Posts
    Community IDs are 64bit representations of SteamIDs, except for some stripped data that SteamID's don't contain such as account instance. You can read up more on them here: http://developer.valvesoftware.com/wiki/SteamID

    As for how it receives the ID: the underlying messaging system in steam receives a callback through the pipe that contains the SteamID of the sender, and a chat id value that you can look up to get the chat message.



    You can change the log directory so it stores to a location such as "C:\logging directory\{Date}\", and it will place all logs in dated directories. Sessions are a little involved because to steam there is no indication of a session start and stop, just continuous messages.
    Yes I know the first part; so that means you can't have the program automatically save new chat sessions to different files?

  14. Post #14
    Erp
    Erp's Avatar
    October 2009
    4,585 Posts
    I love you!

  15. Post #15
    Erp
    Erp's Avatar
    October 2009
    4,585 Posts
    annoying ass tray icon, get rid of it
    Reply With Quote Edit / Delete Reply United States Show Events Agree Agree x 7Disagree Disagree x 2Dumb Dumb x 1 (list)

  16. Post #16
    Gold Member
    VoiDeD's Avatar
    August 2005
    860 Posts
    Yes I know the first part; so that means you can't have the program automatically save new chat sessions to different files?
    Unfortunately not yet.


    annoying ass tray icon, get rid of it
    Entirely? Or replace it with some other icon? If you want me to entirely get rid of it what would be the replacement method to access the settings window or close the logger?

  17. Post #17
    muna pilu ah ah
    -Jake-'s Avatar
    August 2008
    975 Posts
    Awesome
    Reply With Quote Edit / Delete Reply Finland Show Events Friendly Friendly x 1Agree Agree x 1 (list)

  18. Post #18
    Erp
    Erp's Avatar
    October 2009
    4,585 Posts
    Unfortunately not yet.
    Entirely? Or replace it with some other icon? If you want me to entirely get rid of it what would be the replacement method to access the settings window or close the logger?
    A hotkey. When you start the program FOR THE FIRST TIME you bring up a GUI asking to set a hotkey for the menu, then it hides in the background...until you press the hotkey, when you do it opens up a gui or something and says "exit" or "settings", then wham. Also steam doesn't like your program. It won't let it close/restart if it's running.
    Reply With Quote Edit / Delete Reply United States Show Events Disagree Disagree x 8Agree Agree x 1 (list)

  19. Post #19
    I like the news
    Dennab
    July 2009
    3,373 Posts
    useful
    Reply With Quote Edit / Delete Reply Canada Show Events Agree Agree x 2 (list)

  20. Post #20
    Erp
    Erp's Avatar
    October 2009
    4,585 Posts
    PS: You cant use : or / in filenames. Therefore all those you have in file names are _'s which make it look bad.
    Reply With Quote Edit / Delete Reply United States Show Events Disagree Disagree x 2 (list)

  21. Post #21
    Gold Member
    VoiDeD's Avatar
    August 2005
    860 Posts
    A hotkey. When you start the program FOR THE FIRST TIME you bring up a GUI asking to set a hotkey for the menu, then it hides in the background...until you press the hotkey, when you do it opens up a gui or something and says "exit" or "settings", then wham. Also steam doesn't like your program. It won't let it close/restart if it's running.
    I'll look into doing something like this, and I'll try to fix the issues with it not closing. There should be a callback notification for when steam wants to close, so I'll see if I can figure it out.

    Edit: Seems there is no such callback, you'll have to close the logger before you close steam.

    PS: You cant use : or / in filenames. Therefore all those you have in file names are _'s which make it look bad.
    I'm well aware. The logger is specifically designed to replace invalid characters with '_'. If you have a better suggestion, I'm all ears.

  22. Post #22
    Gold Member
    Dennab
    July 2009
    4,483 Posts
    " / \ : * | < > are all invalid characters for filenames on all Windows OS. Simply avoid these. His filter is quite handy, though maybe make it put a space or a period (Most people hate using underscore in filenames).
    Reply With Quote Edit / Delete Reply France Show Events Dumb Dumb x 4Agree Agree x 1 (list)

  23. Post #23
    Darkster's Avatar
    July 2009
    182 Posts
    Thanks for this.

  24. Post #24
    Erp
    Erp's Avatar
    October 2009
    4,585 Posts
    I'll look into doing something like this, and I'll try to fix the issues with it not closing. There should be a callback notification for when steam wants to close, so I'll see if I can figure it out.

    Edit: Seems there is no such callback, you'll have to close the logger before you close steam.



    I'm well aware. The logger is specifically designed to replace invalid characters with '_'. If you have a better suggestion, I'm all ears.
    Add me on steam, I love you.
    Reply With Quote Edit / Delete Reply United States Show Events Agree Agree x 2 (list)

  25. Post #25
    Haxar's Avatar
    November 2009
    2 Posts
    Add me on steam too, plz.

    Add me on steam, I love you.

  26. Post #26
    Erp
    Erp's Avatar
    October 2009
    4,585 Posts
    God damnit steam. I tried adding him and I was like "nahh I don't want him added...*removed*" then 5 minutes later I feel the remorse and try to add him again and steam says: "[unknown] is ignoring you." Wat.

    Heres his profile if you want to add him:
    http://steamcommunity.com/id/VoiDeD
    Reply With Quote Edit / Delete Reply United States Show Events Funny Funny x 7Dumb Dumb x 1 (list)

  27. Post #27
    Gold Member
    VoiDeD's Avatar
    August 2005
    860 Posts
    I haven't accepted or ignored anyone. In fact, I haven't received any invite from you Erp.

    Give me a link to your community page and I'll try adding you.

  28. Post #28
    Gold Member
    Van Gogh's Avatar
    December 2006
    786 Posts
    Its good, but i like steam for it's no history stored ideal.
    Its useful :smug:
    for cybering with your BF?
    Reply With Quote Edit / Delete Reply United States Show Events Dumb Dumb x 2 (list)

  29. Post #29
    Erp
    Erp's Avatar
    October 2009
    4,585 Posts
    I haven't accepted or ignored anyone. In fact, I haven't received any invite from you Erp.

    Give me a link to your community page and I'll try adding you.
    I know you haven't apparantly it's a bug with steam.

  30. Post #30
    MAspiderface's Avatar
    July 2009
    9,929 Posts
    Last Online: 13 Minutes Ago
    .....
    :byodood:

  31. Post #31
    Gold Member
    djzwicblaze's Avatar
    February 2008
    1,482 Posts
    are people really to lazy to use copy/paste?
    Reply With Quote Edit / Delete Reply United States Show Events Dumb Dumb x 6Disagree Disagree x 1 (list)

  32. Post #32
    Erp
    Erp's Avatar
    October 2009
    4,585 Posts
    are people really to lazy to use copy/paste?
    this does it automatically
    Reply With Quote Edit / Delete Reply United States Show Events Agree Agree x 2 (list)

  33. Post #33
    Gold Member
    djzwicblaze's Avatar
    February 2008
    1,482 Posts
    i guess it's cool, say if you're in the middle of an important conversation and accidently close it / crash / etc.
    other than that you could just copypasta.
    Reply With Quote Edit / Delete Reply United States Show Events Dumb Dumb x 6 (list)

  34. Post #34
    Erp
    Erp's Avatar
    October 2009
    4,585 Posts
    i always forget about the program...can i modify the steam.exe to launch this program after it finishes launching?
    Reply With Quote Edit / Delete Reply United States Show Events Dumb Dumb x 1 (list)

  35. Post #35

    November 2009
    3 Posts
    First, please allow me to say thank you for making this program. This is totally awesome.

    Second, don't listen to Erp, there's no real reason not to have they tray icon. For a program of this kind, that's the best way to do it. I'm not saying don't implement Erp's request, but it shouldn't be the default setting, and you should have the option to turn either the icon or the hotkey off (or neither.)

    Finally, is there a way to make the log files named after the user's account name? The reason being that the people on my friends list tend to change their usernames relatively frequently, so if I use that then I'm quickly going to end up with five or six times as many logs as I have friends. And I can't recognise people by their steam ID numbers; I've only been using the program since yesterday and my log folder is already an unrecognisable mess. Is there any way to make it automatically create logs based on the user's account name, rather than the id number or current user name? Failing that, would it be possible to implement some sort of, say....auto-association? Like if the user could manually add a name associated with a particular ID number, so that whenever the logger gets a new message from/to that ID number it would go "Oh wait, I'm supposed to add that to (user defined string).txt"

    This sort of feature would kinda suck and be terribly inconveneint in the face of an automatic naming scheme via account names, but it would CERTAINLY be better than nothing. Perhaps some sort of option where you can make it pop up the first time you send/recieve a message from/to a number and request an associated log name would alleviate some of the pain of having to manually go in and set one for every new friend you make (not to mention allowing people like me who would surely forget to do so a chance to relax =D)

    This post got a lot longer than I originally intended, so I'm going to shut up now. Thanks for the great program!
    Reply With Quote Edit / Delete Reply United States Show Events Friendly Friendly x 3 (list)

  36. Post #36
    Gold Member
    VoiDeD's Avatar
    August 2005
    860 Posts
    Hi all, a new version of the chat logger is now available: beta 3.

    New Features:[list][*]Redesigned settings dialog with functional previews.[*]New settings options for invalid character replacement and date/time formatting.[*]New icon. (A little lacking on the anti-aliasing side, but it should be an improvement.)[/list]
    Here's a shot of the new dialog:


    Grab it here: http://dl.dropbox.com/u/99606/steam%...chatlog_b3.rar (Outdated)
    Newest Ver: http://dl.dropbox.com/u/99606/steam%...chatlog_b4.rar

    Notes for updating: You should be able to drop it right into your existing folder without a problem. It will automatically update your settings.xml file for you.

    Second, don't listen to Erp, there's no real reason not to have they tray icon. For a program of this kind, that's the best way to do it. I'm not saying don't implement Erp's request, but it shouldn't be the default setting, and you should have the option to turn either the icon or the hotkey off (or neither.)
    Don't worry, the tray icon will always be the default option. The hotkey option isn't high on the priority list for me because it would require some significant redesigning, and I'm not entirely sure there is enough demand for it.

    Finally, is there a way to make the log files named after the user's account name? The reason being that the people on my friends list tend to change their usernames relatively frequently, so if I use that then I'm quickly going to end up with five or six times as many logs as I have friends. And I can't recognise people by their steam ID numbers; I've only been using the program since yesterday and my log folder is already an unrecognisable mess. Is there any way to make it automatically create logs based on the user's account name, rather than the id number or current user name? Failing that, would it be possible to implement some sort of, say....auto-association? Like if the user could manually add a name associated with a particular ID number, so that whenever the logger gets a new message from/to that ID number it would go "Oh wait, I'm supposed to add that to (user defined string).txt"
    Unfortunately getting an account name from a SteamID impossible. However, this auto-association feature you mentioned sounds like a great idea. I could implement a variable such as {LinkID} which can look through a user-editable list of steamid<->name associations. I'll add this as a beta4 to-do item.

    This sort of feature would kinda suck and be terribly inconveneint in the face of an automatic naming scheme via account names, but it would CERTAINLY be better than nothing. Perhaps some sort of option where you can make it pop up the first time you send/recieve a message from/to a number and request an associated log name would alleviate some of the pain of having to manually go in and set one for every new friend you make (not to mention allowing people like me who would surely forget to do so a chance to relax =D)
    An editable list could be an option as well. You simply open up the settings dialog and enter steamid->name association entries. If an entry doesn't exist, there could be a replacement option to have it show {Name} instead of the {LinkID} value. But the first time pop-up is also a viable option. Let me know what you think is best.

    This post got a lot longer than I originally intended, so I'm going to shut up now. Thanks for the great program!
    No worries, I highly value your input. You've given me more ideas and insight into what users really want.

    i always forget about the program...can i modify the steam.exe to launch this program after it finishes launching?
    Best bet is to add it as a Startup folder entry. I'll implement some internal changes into beta 4 so that the logger waits if a situation occurs where the logger is unable to start because steam hasn't started/logged in yet.
    Reply With Quote Edit / Delete Reply United States Show Events Useful Useful x 2Winner Winner x 1 (list)

  37. Post #37
    Gold Member
    KKram16's Avatar
    October 2006
    500 Posts
    I just downloaded it. I'll edit to tell you my opinion of how it works. Sounds cool so far.

    EDIT:
    Well, I don't know if it takes awhile to save the log or what, but I had a short chat with a friend and it didn't save it. I'll try again. ( I did set my save location)

  38. Post #38
    Teh_Cheese's Avatar
    June 2008
    3,707 Posts
    Wow... this is amazingly cool.
    Now I will have proof that someone said something when they deny what they said it >:)
    Reply With Quote Edit / Delete Reply United States Show Events Agree Agree x 2 (list)

  39. Post #39
    Gold Member
    Mister B's Avatar
    August 2008
    3,295 Posts
    Wow... this is amazingly cool.
    Now I will have proof that someone said something when they deny what they said it >:)
    I've never done that, you liar.
    Reply With Quote Edit / Delete Reply United States Show Events Funny Funny x 2 (list)

  40. Post #40
    Gold Member
    The man of "Wat"'s Avatar
    January 2009
    1,183 Posts
    It makes just typing "/me" look so hard.
    Reply With Quote Edit / Delete Reply United States Show Events Dumb Dumb x 2 (list)