The management point interfaces are a set of COM interfaces that are used to pass data to various Microsoft System Center Configuration Manager 2007 management point components, also known as endpoints. These interfaces are of particular interest to independent software vendors who want to provide management solutions for non-Windows clients by using Configuration Manager 2007. For more information, see Introduction to the Configuration Manager Management Point Interface.

Through these interfaces, you can perform such tasks as registering a client with Configuration Manager, pass hardware and software inventory, get policy assignments and upload status messages.

Management Point Endpoints

You communicate with a management point endpoint by using XML messages. With the exception of the relay manager endpoint, there is an XML message schema for each endpoint. The relay manager endpoint manages several message types. The endpoints are as follows:

Endpoint Description
  • Policy Manager

Handles requests for policy assignments.

  • Location Manager

Handles requests for content and Windows Server Update Services (WSUS) locations.

  • Discovery Data Record Manager

Processes data discovery records.

  • Hardware Inventory Manager

Processes hardware inventory.

  • Software Inventory Manager

Processes software inventory.

  • File collection Manager

Processes file collection data.

  • Status Manager

Processes Configuration Manager status messages.

  • Relay Manager

Processes IDMIFs, metering reports, and state messages.

  • Registration Manager

Processes client registration.

For more information about specific Configuration Manager feature messages and the requirements for sending them, see Configuration Manager Management Point Message Schema.

Message Anatomy

A Configuration Manager endpoint message has the following attributes:

Attribute Definition

TargetEndpoint

Programmatic name of the management point endpoint. This name must be set on the message through ISmsMessage::SetTargetEndpoint Method.

Body

The contents of the message body that must be set through one of the following methods: ISmsMessage::SetBodyFromString Method, ISmsMessage::SetBodyFromFile Method, ISmsMessage::SetBodyFromBuffer Method. All management point endpoints accept only null-terminated Unicode strings (XML) as the message body. Therefore it is recommended that you use ISmsMessage::SetBodyFromString Method. If one of the other methods is used to set the body in binary format, the caller must ensure that the content is a null-terminated Unicode string, with no byte order mark.

Attachments

Name and contents of each attachment, if any.

Sending method

Describes which method of ISmsMessaging Interface (Invoke or Post) must be used to send the constructed message to the endpoint.

Management Point Interfaces

The root class for the management point interfaces is ISmsMessaging Interface, which is instantiated by using CoCreateInstance. It supports methods for creating a message, populating a message with the required XML for the endpoint, setting security options on a message, sending a message to a management point, and retrieving any returned data.

Message interfaces

The method ISmsMessaging::CreateMessage Method creates a new message. The message COM object supports the following interfaces that are used to configure message properties and security.

Interface Description

ISmsMessage Interface

Provides functions for setting properties of a message such as the target endpoint, the body of the report and creating a message, targeting a message, adding attachments and other message configuration.

ISmsMessage2 Interface

ISmsMessage2 contains one method, SetClientID, that is used to set the client identifier.

ISmsMessage3

This interface is deprecated and should not be used.

ISmsMessage4 Interface

Used to set various security options for the message.ISmsMessage4 is new to Configuration Manager.

Message Processing

The following steps are used to create a Configuration Manager message, synchronously (or asynchronously) send the message, and finally, retrieve any returned data.

  1. Create the ISmsMessaging Interface class. For an example, see How to Post a Configuration Manager Management Point Message.

  2. Create the message with ISmsMessaging::CreateMessage Method.

  3. Set the message properties by using the ISmsMessage Interface methods. Typically, this will include setting the target endpoint, the XML body and any required attachments. For more information, see Configuration Manager Management Point Message Schema.

  4. Set any required message security options by using ISmsMessage4 Interface methods The options that you need to set depend on a number of factors such as the security mode used by the Configuration Manager site. For more information, see Configuration Manager Management Point Interface Security.

  5. Depending on the message type, send the message either asynchronously by using ISmsMessaging::Post Method, or synchronously by using ISmsMessaging::Invoke Method. You must also decide whether to send the message by using HTTP or DCOM. Typically, if the management point interfaces are installed on the local computer, you should use DCOM. Otherwise, you should use HTTP. For more information about which method to use, see the Configuration Manager Management Point Message Schema.

  6. If the message is sent by using ISmsMessaging::Invoke Method, the method will synchronously send the message and any management point data will be returned.

Troubleshooting

For developers, WinHttpTrace is a useful tool for debugging applications that use the management point interface. It is particularly useful for investigating Secure Sockets Layer (SSL) failures in native mode. For more information, see http://go.microsoft.com/fwlink/?LinkId=110495.

Logs

The management point logs are stored in <management point install drive>\sms_ccm\logs. Of particular interest to client registration is mp_clientregistration.log which contains client registration logging information. During development you should enable verbose and debug logging. For more information, see the Microsoft System Center Configuration Manager 2007 library documentation.

See Also


Send comments about this topic to Microsoft.