This content is no longer actively maintained. It is provided as is, for anyone who may still be using these technologies, with no warranties or claims of accuracy with regard to the most recent product version or service release.
The following code samples illustrate connecting to the Windows Management Instrumentation (WMI) service and creating, updating, and deleting user instances. It is important to note that if the user is homed on another Office Communications Server in the domain, WMI must contact that particular server. Therefore, Office Communications Server must be running and available on the user's home server.
To execute this code successfully, you must be a member of the Office Communications Server Domain User Admin group.
Creating an Office Communications Server User Instance
This function connects to a remote computer and creates a new Office Communications Server User instance on it.
Public Function CreateInstance(InstanceId, Enabled, PrimaryURI, UserDn, HomeServerDN)
Set DefaultSIPUserInstance = GetObject("WinMgmts:MSFT_SIPESUserSetting")
'Do error checking here.
Set NewSIPUserInstance = DefaultSIPUserInstance.SpawnInstance_
NewSIPUserInstance.InstanceID = InstanceID
NewSIPUserInstance.UserDN = UserDN
NewSIPUserInstance.HomeServerDN = HomeServerDN
NewSIPUserInstance.PrimaryURI = PrimaryURI
NewSIPUserInstance.Enabled = Enabled
Err.Clear()
NewSIPUserInstance.Put_ 0
'Do error checking here.
CreateInstance = true
End Function
Updating an Office Communications Server User Instance
This function connects to the WMI service and updates an Office Communications Server User instance with the specified values.
Public Function UpdateInstance(InstanceId, Enabled, PrimaryURI, UserDN, HomeServerDN)
' Connect to the WMI server.
Set wmiServer = CreateObject("WbemScripting.SWbemLocator").ConnectServer()
Query = "SELECT * FROM MSFT_SIPESUserSetting where InstanceID = '" & InstanceID & "'"
Set LCUserEnum = wmiServer.ExecQuery(Query)
For each LCUser in LCUserEnum
'//update values here
LCUser.InstanceID = InstanceID
LCUser.UserDN = UserDN
LCUser.HomeServerDN = HomeServerDN
LCUser.PrimaryURI = PrimaryURI
LCUser.Enabled = Enabled
LCUser.Put_ 0'0 for create or update
'Do error checking here.
Next
UpdateInstance = True
End Function
Deleting an Office Communications Server User Instance
This function connects to the WMI service and deletes the specified Office Communications Server User instance based on the supplied primary URI of the user.
Public Function DeleteInstance(UserURI)
' Connect to WMI server
Set wmiServer = CreateObject("WbemScripting.SWbemLocator").ConnectServer()
'Do error checking here
Query = "SELECT * FROM MSFT_SIPESUserSetting where PrimaryURI = '" & UserURI & "'"
Set LCUserEnum = wmiServer.ExecQuery(Query)
For each LCUser in LCUserEnum
Err.Clear
LCUser.Delete_
'Do error checking here
Next
DeleteInstance = true
End Function