# @ohos.bluetooth.map (Bluetooth MAP Module) The **bluetooth.map** module provides APIs for exchanging messages between devices. > **NOTE** > > The initial APIs of this module are supported since API version 11. Newly added APIs will be marked with a superscript to indicate their earliest API version. ## Modules to Import ```js import map from '@ohos.bluetooth.map'; ``` ## map.createMapMseProfile createMapMseProfile(): MapMseProfile Creates a **MapMseProfile** instance. **System capability**: SystemCapability.Communication.Bluetooth.Core **Return value** | Type | Description | | ----------------------------- | ---------- | | MapMseProfile | **MapMseProfile** instance created.| **Example** ```js import { BusinessError } from '@ohos.base'; try { let mapMseProfile = map.createMapMseProfile(); console.info('MapMse success'); } catch (err) { console.error('errCode: ' + (err as BusinessError).code + ', errMessage: ' + (err as BusinessError).message); } ``` ## mapMseProfile Provides APIs for exchanging messages between devices using the Bluetooth Message Access Profile (MAP). Before using any API of **mapMseProfile**, you need to create an instance of this class by using **createMapMseProfile()**. ### disconnect disconnect(deviceId: string): void Disconnects the MAP service for a device. **System API**: This is a system API. **Required permissions**: ohos.permission.ACCESS_BLUETOOTH **System capability**: SystemCapability.Communication.Bluetooth.Core **Parameters** | Name | Type | Mandatory | Description | | ------ | ------ | ---- | ------- | | deviceId | string | Yes | Address of the remote device.| **Error codes** For details about the error codes, see [Bluetooth Error Codes](../errorcodes/errorcode-bluetoothManager.md). | ID| Error Message| | -------- | ---------------------------- | |2900001 | Service stopped. | |2900003 | Bluetooth switch is off. | |2900004 | Profile is not supported. | |2900099 | Operation failed. | **Example** ```js import { BusinessError } from '@ohos.base'; try { let mapMseProfile = map.createMapMseProfile(); mapMseProfile.disconnect('XX:XX:XX:XX:XX:XX'); } catch (err) { console.error('errCode: ' + (err as BusinessError).code + ', errMessage: ' + (err as BusinessError).message); } ``` ### setMessageAccessAuthorization setMessageAccessAuthorization(deviceId: string, authorization: AccessAuthorization): Promise<void> Sets the message access authorization for a device. **System API**: This is a system API. **Required permissions**: ohos.permission.ACCESS_BLUETOOTH and ohos.permission.MANAGE_BLUETOOTH **System capability**: SystemCapability.Communication.Bluetooth.Core **Parameters** | Name | Type | Mandatory | Description | | -------- | ------ | ---- | ----------------------------------- | | deviceId | string | Yes | Address of the remote device, for example, XX:XX:XX:XX:XX:XX.| | authorization | [AccessAuthorization](js-apis-bluetooth-constant.md#AccessAuthorization) | Yes | Message access authorization to set.| **Return value** | Type | Description | | ------------------------------------------------- | ------------------- | | Promise<void> | Promise used to return the result. If the operation is successful, **err** is **undefined**. Otherwise, **err** is an error object.| **Error codes** For details about the error codes, see [Bluetooth Error Codes](../errorcodes/errorcode-bluetoothManager.md). | ID| Error Message| | -------- | ---------------------------- | |2900001 | Service stopped. | |2900003 | Bluetooth switch is off. | |2900004 | Profile is not supported. | |2900099 | Operation failed. | **Example** ```js import { BusinessError } from '@ohos.base'; try { let mapMseProfile = map.createMapMseProfile(); mapMseProfile.setMessageAccessAuthorization('XX:XX:XX:XX:XX:XX', 0).then(() => { console.info('setMessageAccessAuthorization'); }); } catch (err) { console.error('errCode: ' + (err as BusinessError).code + ', errMessage: ' + (err as BusinessError).message); } ``` ### getMessageAccessAuthorization getMessageAccessAuthorization(deviceId: string): Promise<AccessAuthorization> Obtains the message access authorization of a device. **System API**: This is a system API. **Required permissions**: ohos.permission.ACCESS_BLUETOOTH and ohos.permission.MANAGE_BLUETOOTH **System capability**: SystemCapability.Communication.Bluetooth.Core **Parameters** | Name | Type | Mandatory | Description | | -------- | ------ | ---- | ----------------------------------- | | deviceId | string | Yes | Address of the remote device, for example, XX:XX:XX:XX:XX:XX.| **Return value** | Type | Description | | ------------------------------------------------- | ------------------- | | Promise<[AccessAuthorization](js-apis-bluetooth-constant.md#AccessAuthorization)> | Promise used to return the result. If the operation is successful, **err** is **undefined**. Otherwise, **err** is an error object.| **Error codes** For details about the error codes, see [Bluetooth Error Codes](../errorcodes/errorcode-bluetoothManager.md). | ID| Error Message| | -------- | ---------------------------- | |2900001 | Service stopped. | |2900003 | Bluetooth switch is off. | |2900004 | Profile is not supported. | |2900099 | Operation failed. | **Example** ```js import { BusinessError } from '@ohos.base'; try { let mapMseProfile = map.createMapMseProfile(); mapMseProfile.getMessageAccessAuthorization('XX:XX:XX:XX:XX:XX').then((authorization) => { console.info('authorization ' + authorization); }); } catch (err) { console.error('errCode: ' + (err as BusinessError).code + ', errMessage: ' + (err as BusinessError).message); } ```