Open SMP Console - > Settings -> All Settings -> Discovery and Inventory -> Inventory Solution -> Manage Custom Data Classes -> New data class -> Office 365 Update Channels
Create a Custom Data Class
Add a Attribute with the following Parameters:
Name: O365_Update_Channel
Data type: String
Maximum size: 100
Key: No
Create a new Task
Open SMP Console - > Manage -> Jobs and Tasks -> right click and select New -> Task -> Run Script
'Pick the appropriate WMI registry hive code and comment the line you don’t use
Const HKEY_LOCAL_MACHINE = &H80000002
Set wshShell = WScript.CreateObject( "WScript.Shell" )
ComputerName = wshShell.ExpandEnvironmentStrings( "%COMPUTERNAME%" )
set nse = WScript.CreateObject ("Altiris.AeXNSEvent")
nse.To = "{1592B913-72F3-4C36-91D2-D4EDA21D2F96}" 'Do not modify this GUID
nse.Priority = 1
dim objDCInstance
set objDCInstance = nse.AddDataClass ("Office 365 Update Channels") 'Your Data Class Here
set objDataClass = nse.AddDataBlock (objDCInstance)
KeyPath = "SOFTWARE\Microsoft\Office\ClickToRun\Configuration" 'Your Registry Key Path Here
ValueName = "CDNBaseUrl" 'Your Registy Entry Here
Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv")
'Use the HKEY constant defined earlier and use the oReg function appropriate to the type of data in the registry entry
error_returned = oReg.GetStringValue(HKEY_LOCAL_MACHINE,KeyPath,ValueName,Value)
if error_returned <> 0 then
KeyPath = "SOFTWARE\Microsoft\Office\ClickToRun\Configuration"
error_returned = oReg.GetStringValue(HKEY_LOCAL_MACHINE,KeyPath,ValueName,Value)
end if
set objDataRow = objDataClass.AddRow
objDataRow.SetField 0, Value
'If your data class has more than one attribute add a line for each
'objDataRow.SetField 1, Value2
nse.Send
'Uncomment the line below for testing purposes
'MsgBox nse.Xml
Create a "New Schedule" to run the Task on all Clients Computers!
Check if the Data exists on a Client Computer
In this example it is the: O365 Semi-Annual Channel
Here is a list of Office 365 Update Channels
- O365 Monthly Channel
CDNBaseUrl value:
http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60
- O365 Monthly Channel (Targeted)
CDNBaseUrl value:
http://officecdn.microsoft.com/pr/64256afe-f5d9-4f86-8936-8840a6a4f5be
- O365 Semi-Annual Channel
CDNBaseUrl value:
http://officecdn.microsoft.com/pr/7ffbc6bf-bc32-4f92-8982-f9dd17fd3114
- O365 Semi-Annual Channel (Targeted)
CDNBaseUrl value:
http://officecdn.microsoft.com/pr/b8f9b850-328d-4355-9145-c59439a0c4cf
Create Filters for the different Channels
Open SMP Console - > Manage ->Filters -> create a new Folder or use an existing on -> right click -> New -> Filter -> Name the new Filter for example: Clients with O365 – Semi-Annual Channel (Targeted) ->switch Filter Definition to Query Mode: Raw SQL
-> under Parameterized Query paste the following SQL Query:
select vc.[guid] from Inv_Office_365_Update_Channels ic
join vComputer vc on vc.[guid] = ic._ResourceGuid
where ic.[O365_Update_Channel] = 'http://officecdn.microsoft.com/pr/b8f9b850-328d-4355-9145-c59439a0c4cf'
Repeat the steps to create a Filter for all Channels
- Semi-Annual Channel (Targeted) (already created)
- Monthly Channel
- Monthly Channel (Targeted)
- Semi-Annual Channel
Monthly Channel
select vc.[guid] from Inv_Office_365_Update_Channels ic
join vComputer vc on vc.[guid] = ic._ResourceGuid
where ic.[O365_Update_Channel] = 'http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60'
Monthly Channel (Targeted)
select vc.[guid] from Inv_Office_365_Update_Channels ic
join vComputer vc on vc.[guid] = ic._ResourceGuid
where ic.[O365_Update_Channel] = 'http://officecdn.microsoft.com/pr/64256afe-f5d9-4f86-8936-8840a6a4f5be'
Semi-Annual Channel
select vc.[guid] from Inv_Office_365_Update_Channels ic
join vComputer vc on vc.[guid] = ic._ResourceGuid
where ic.[O365_Update_Channel] = 'http://officecdn.microsoft.com/pr/7ffbc6bf-bc32-4f92-8982-f9dd17fd3114'
Filters can also be used to change the Channel later if nessessary!
Create a Report for O365 Update Channels
Open SMP Console - >All Reports ->create a new Folder or use an existing one -> right click and select -> New ->Report-> SQL Report -> give the Report a name for example O365 Update Channel Version -> under Parameterized Query paste the following SQL Query
select vc.name, vc.[ip address], vc.[os name], ic.[O365_Update_Channel],
case
when ic.[O365_Update_Channel] = 'http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60' then 'O365 Monthly Channel'
when ic.[O365_Update_Channel] = 'http://officecdn.microsoft.com/pr/64256afe-f5d9-4f86-8936-8840a6a4f5be' then 'O365 Monthly Channel (Targeted)'
when ic.[O365_Update_Channel] = 'http://officecdn.microsoft.com/pr/7ffbc6bf-bc32-4f92-8982-f9dd17fd3114' then 'O365 Semi-Annual Channel'
when ic.[O365_Update_Channel] = 'http://officecdn.microsoft.com/pr/b8f9b850-328d-4355-9145-c59439a0c4cf' then 'O365 Semi-Annual Channel (Targeted)'
else 'no Channel found'
End as 'O365 Channel'
from Inv_Office_365_Update_Channels ic
join vComputer vc on vc.[guid] = ic._ResourceGuid
Network23