# message.h ## **Overview** **Related Modules:** [Samgr](Samgr.md) **Description:** Provides message communication APIs that help you to implement asynchronous functions of [IUnknown](IUnknown.md). This API is used to implement asynchronous functions of [IUnknown](IUnknown.md). **Since:** 1.0 **Version:** 1.0 ## **Summary** ## Data Structures

Data Structure Name

Description

Identity

Identifies a service and feature.

Request

Defines a request.

Response

Defines a response.

## Typedefs

Typedef Name

Description

Handler) (const Request *request, const Response *response)

typedef void(* 

Handles asynchronous responses.

## Functions

Function Name

Description

SAMGR_SendRequest (const Identity *identity, const Request *request, Handler handler)

int32 

Sends a request to a service or feature of a specified identity.

SAMGR_SendSharedRequest (const Identity *identity, const Request *request, uint32 *token, Handler handler)

uint32 * 

Sends a request to multiple services or features to save memory.

SAMGR_SendSharedDirectRequest (const Identity *id, const Request *req, const Response *resp, uint32 **ref, Handler handler)

int32 

Sends a request and response of a caller to the feature thread. The handler is directly called to process the request and response without using the message processing functions. (Customized function for the broadcast service)

SAMGR_SendResponse (const Request *request, const Response *response)

int32 

Sends a response after processing a request.

SAMGR_SendResponseByIdentity (const Identity *id, const Request *request, const Response *response)

int32 

Sends a response to a specified service or feature after processing the original request. (Customized function for bootstrap)