The Message Integration discovery checks the registry location "HKLM\SOFTWARE\Microsoft\ SNA Server\CurrentVersion\Monitoring\" for the existence of the “Opt-Out” key DisableMessageIntegrationMonitoring. If the key exists, no further action is taken. If the key does not exist, the Host Integration Server 2013 Management Pack queries MSI to verity that the feature MQ_CONNECTORS has been installed. If the feature is installed, the Host Integration Server 2013 Management Pack creates an instance of the MsgInt class.
' =============================================================
' Check for MSI feature installed
intMsgInt = FindFeature(HIS_MI_PATTERN)
if NOT intMsgInt = 0 then
set oInst = oDiscoveryData.CreateClassInstance("$MPElement[Name='Microsoft.HostIntegrationServer.2013.MsgInt']$")
call oInst.AddProperty("$MPElement[Name='Windows!Microsoft.Windows.Computer']/PrincipalName$", TargetComputer)
call oInst.AddProperty("$MPElement[Name='System!System.Entity']/DisplayName$", "Message Integration")
call oDiscoveryData.AddInstance(oInst)
end if
End If
End Sub 'MsgIntDiscovery
Function FindFeature(strFeatureName)
' Query MSI to determine if the specified HIS feature name is installed or advertised.
' Return 1 if true, 0 if false
'
CONST HIS_V7_PRODUCT_CODE = "{0CDBAFE3-08E1-47DF-9E91-C86A540C9C08}"
CONST HIS_2013_PRODUCT_CODE = "{DECD2591-F692-4682-B412-90BF58FE7787}"
CONST INSTALLSTATE_LOCAL = 3
dim installer, feature, features, state
set installer = CreateObject("WindowsInstaller.Installer")
set features = installer.Features(HIS_2013_PRODUCT_CODE)
On Error Resume Next
for each feature in features
if feature = strFeatureName then
state = installer.FeatureState(HIS_2013_PRODUCT_CODE, feature)
if state = INSTALLSTATE_LOCAL then
FindFeature = 1
else
FindFeature = 0
end if
Exit Function
end if
next
FindFeature = 0
Exit Function
End function 'FindFeature </Script></ScriptBody>
<TimeoutSeconds>360</TimeoutSeconds>
</DataSource>
</Discovery>