Using the Backend Property
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.
Used only for lookups, the Backend property is supplied to the Office Communications Server WMI provider as a means of specifying the location of class instances.
Pool-Level Classes Contain the Backend Property
The read-only Backend property is present in each of the pool-level classes. The following table lists all pool-level classes and shows the server roles in which the classes are used.
WMI Class |
Enterprise Edition |
Standard Edition |
Proxy Server |
Access Edge Server |
---|---|---|---|---|
Backend store |
SQL Server |
MSDE |
WMI repository |
WMI repository |
MSFT_SIPProxySetting |
x |
x |
x |
x |
MSFT_SIPProxySecuritySetting |
x |
x |
x |
x |
MSFT_SIPLogSetting |
x |
x |
x |
|
MSFT_SIPRemoteAddressData |
x |
x |
x |
|
MSFT_SIPRoutingTableData |
x |
x |
x |
|
MSFT_SIPEsEmSetting |
x |
x |
||
MSFT_SIPUserReplicatorSetting |
x |
x |
Using the Backend Property
When you perform WMI operations—such as creating, updating, or deleting an instance of a property—you must specify the Backend property. The Backend property cannot be null. Acceptable values are as follows:
Server Role |
Acceptable Values |
---|---|
Enterprise Edition |
SQL_Instance_Name |
Standard Edition |
(local)\rtc |
Access Edge Server or Proxy Server |
Empty string |
When the Office Communications Server WMI provider retrieves or updates an instance of a class, it looks at the Backend property and queries the corresponding data store. Because SQL Server is accessible remotely, Enterprise Pool-level settings can be retrieved from any computer that has the Office Communications Server administrator tools installed and access to that SQL server.
To connect to the appropriate data store for a Standard Edition Server, Access Edge Server, or Proxy Server, you must first connect to the WMI service on the computer where the server is installed. Then you can query and update the settings.
When any of the pool-level classes are enumerated, the WMI provider returns all instances from the local computer (if Standard Edition Server, Access Edge Server, or Proxy Server is installed on that computer), as well as the instances for all Enterprise pools.
The Office Communications Server WMI provider queries MSFT_SIPPoolSetting and retrieves the BackEndDBPath property for instances that are of PoolType "FEPool". The WMI EnumerateInstances operation translates to an Active Directory query (to get the list of pools) followed by a connection to the back-end server for each Enterprise pool. For this reason, using EnumerateInstances is an expensive operation. Whenever possible, use ExecQuery based on the Backend property instead because this operation will translate to only one connection to a SQL server, the local MSDE, or WMI repository.
Code Examples
The following VBScript examples illustrate using the Backend property in various operations according to server role.
Enterprise Edition
For all operations (retrieve, put, or delete), connect to the local WMI service. To retrieve the instances for an Enterprise Pool, run a query based on the Backend property. The value of the Backend property should be the same as the value of BackEndDBPath of the corresponding MSFT_SIPPoolSetting instance.
Query = "SELECT * FROM MSFT_SIPProxySetting WHERE Backend = 'SQL_Instance_Name'"
For put operations, specify the back-end attribute like any other attribute.
Set DefaultRoutingInstance = GetObject("WinMgmts:MSFT_SIPRoutingTableData")
Set NewRoutingInstance = DefaultRoutingInstance.SpawnInstance_
Populate the properties for new instance.
NewRoutingInstance.DropRouterHeaders = False;
…
…
NewRoutingInstance.Backend = "SQL_Instance_Name";
No escaping required here.
NewRoutingInstance.Put_ 0
Standard Edition
For all operations (retrieve, put, or delete), connect to the WMI service on the server whose configuration needs to be retrieved or updated. To retrieve the instances on a Standard Edition Server, run a query based on the Backend property with its value set to '(local)\rtc'.
Query = "SELECT * FROM MSFT_SIPProxySetting WHERE Backend = ' (local)\\rtc'"
Note
Because the backslash character ("\") is the escape character, it must be enclosed with another backslash.
For put operations, specify the Backend property like any other attribute.
Set DefaultRoutingInstance = GetObject("WinMgmts:MSFT_SIPRoutingTableData")
Set NewRoutingInstance = DefaultRoutingInstance.SpawnInstance_
Populate the properties for new instance.
NewRoutingInstance.DropRouterHeaders = False;
…
…
NewRoutingInstance.Backend = "(local)\rtc";
No escaping required here.
NewRoutingInstance.Put_ 0
Proxy Server and Access Edge Server
For all operations (retrieve, put, delete), connect to the WMI service on the server whose configuration needs to be retrieved or updated. To retrieve the instances on a Proxy Server or Access Edge Server, run a query with the property set to an empty string.
Query = "SELECT * FROM MSFT_SIPProxySetting WHERE Backend = ''"
For put operations specify the Backend property like any other attribute.
Set DefaultRoutingInstance = GetObject("WinMgmts:MSFT_SIPRoutingTableData")
Set NewRoutingInstance = DefaultRoutingInstance.SpawnInstance_
Populate the properties for new instance.
NewRoutingInstance.DropRouterHeaders = False;
…
…
NewRoutingInstance.Backend = "";
NewRoutingInstance.Put_ 0