'**********************************************************************************
' Script Name - Huawei FileSys OID Discovery
' Author: zhangzeqiang
'
' Description:
' Discovery of Huawei FileSys and all it's attributes.
'
' (c) Copyright Huawei Inc. 2013-2015. All rights reserved
'**********************************************************************************
Option Explicit
SetLocale("en-us")
Dim oAPI, oDiscoveryData, oInst
Set oAPI = CreateObject("MOM.ScriptAPI")
Dim oArgs
set oArgs = wscript.arguments
If oArgs.Count > 5 Then
Call oAPI.LogScriptEvent("DiscoverFileSysOID.vbs",101,0, _
"script was called with fewer than three arguments and was not executed.")
Wscript.Quit -1
End If
' 构造被发现数据对象,后面会在里面放参数
Set oDiscoveryData = oAPI.CreateDiscoveryData(0, SourceID, ManagedEntityID)
Dim oFSo
Set oFso = CreateObject("Scripting.FileSystemObject")
Set oInst = oDiscoveryData.CreateClassInstance("$MPElement[Name='Huawei.ISM.Management.Pack.huawei.Class.FileSys']$")
Call oInst.AddProperty ("$MPElement[Name='SNL!System.NetworkManagement.Node']/DeviceKey$", deviceKey)
Call oInst.AddProperty ("$MPElement[Name='Huawei.ISM.Management.Pack.huawei.Class.FileSys']/id$", fileSysId)
Call oInst.AddProperty("$MPElement[Name='Huawei.ISM.Management.Pack.huawei.Class.FileSys']/index$", GetIndex(fileSysIndex))
Call oDiscoveryData.AddInstance(oInst)
public Function GetIndex(oid)
Dim p1, str1, str2
' 在字符串中删除子串
str1 = oid
str2 = ".1.3.6.1.4.1.34774.4.1.23.7.6.1.1."
' 先找出字串的起始位置
p1=instr(str1,str2)
' 然后取它前面的和后面的即可
str1=left(str1,p1-1) & mid(str1,p1+len(str2))
GetIndex = str1
End Function
Call oAPI.Return(oDiscoveryData)
Set oDiscoveryData = Nothing
Set oAPI =Nothing
set oArgs = Nothing