User Archiving of IM's in OCS 2007

Running OCS 2007 R2 and I am in need of seeing which users within the server have the IM Archiving feature turned on in the options area of the local client. This feature must be saved to the server somewhere as new pc's automatically reload that setting if ticked. These conversations are then logged in the users Outlook in Conversation History.

Objective:

Is there a script / query that I can run to find which users on a subset list of employees have this turned on?

If so can i tell when it was turned on?

Is there a script or place to force this feature on for these users that are not currently on?

If so can I be notified if they turn it off?

Thanks

Rob

April 3rd, 2014 11:59am

As far as I am aware in OCS 2007R2 that setting is on by default.

The setting is stored in the registry of the user in: HKEY_CURRENT_USER\SOFTWARE\Policies\Microsoft\Communicator "ImAutoArchivingPolicy"

I don't believe there's a way to audit when it was turned on, or to easily determine who has it on/off (you might be able to right something like a login script which can check the value and audit it that way)

You can force the settings using Group Policy by setting the CallLogAutoArchivingPolicy attribute.

More on the Group Policy options for OCS2007 R2 http://technet.microsoft.com/en-us/library/dd637140(v=office.13).aspx

To download the GPO adm and for documentation, see here http://www.microsoft.com/en-us/download/details.aspx?id=25294

Free Windows Admin Tool Kit Click here and download it now
April 3rd, 2014 12:54pm

I've put this together for you quickly, it's a quick and dirty vbscript that will check the value in the registry and then write the result to a CSV file. You can test it out and see if it does what you need.

Set wshShell = CreateObject( "WScript.Shell" )

str= readFromRegistry("HKEY_CURRENT_USER\Software\Policies\Microsoft\Communicator\ImAutoArchivingPolicy","error")
if (str="1") then
 'Is enabled. - Handle this however you want, I've outputted to CSV text file.
 WriteAudit wshShell.ExpandEnvironmentStrings("%COMPUTERNAME%"),wshShell.ExpandEnvironmentStrings("%USERNAME%"),"True"
elseif (str="0") then
 'Is disabled.
 WriteAudit wshShell.ExpandEnvironmentStrings("%COMPUTERNAME%"),wshShell.ExpandEnvironmentStrings("%USERNAME%"),"False"
else
 'This means the key is missing altogether
 WriteAudit wshShell.ExpandEnvironmentStrings("%COMPUTERNAME%"),wshShell.ExpandEnvironmentStrings("%USERNAME%"),"Error"
end if


function readFromRegistry (strRegistryKey, strDefault )
    Dim WSHShell, value

    On Error Resume Next
    Set WSHShell = CreateObject("WScript.Shell")
    value = WSHShell.RegRead( strRegistryKey )

    if err.number <> 0 then
        readFromRegistry= strDefault
    else
        readFromRegistry=value
    end if

    set WSHShell = nothing
end function

function WriteAudit (username, computername, result)
'This is the output file, set this to whereever (for example a hidden network share that has read/write for every user.)
strFile = "C:\Temp\MyFile.Txt"
Const ForAppending = 8
 
set objFSO = CreateObject("Scripting.FileSystemObject")
set objFile = objFSO.OpenTextFile(strFile, ForAppending, True)
 
objFile.WriteLine(Now & "," & computername & "," & username & "," & result)
objFile.Close
end function

Here's an example of the output:

4/3/2014 1:14:52 PM,gthomas,SURFACE-5332553,True

April 3rd, 2014 1:22pm

So looking at my system, I have it set to archive and I do not have that reg key.

Thoughts?

Free Windows Admin Tool Kit Click here and download it now
April 3rd, 2014 5:04pm

Maybe try searching your registry hive for the IMAutoArchiving policy key. It may be in HKLM (although it thought it was in HKCU.) More info on reg keys for OCS2007R2 is here http://technet.microsoft.com/en-us/library/bb963959(v=office.12).aspx Is your computer 32 or 64-bit operating system?
April 3rd, 2014 5:18pm

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics