discovery_service.h
Overview
Related Modules:
Description:
Declares unified device service publishing interfaces.
This file provides capabilities related to device service publishing, including publishing services, unpublishing services, and setting device parameters. After multiple nearby devices are discovered and networked, these interfaces can be used to perform service publishing-related operations.
Since:
1.0
Version:
1.0
Summary
Data Structures
| Data Structure Name | Description |
|---|---|
| PublishInfo | Defines service provisioning information sent to a discovering device. |
| CapabilityMap | Defines the mapping between supported capabilities and bitmaps. |
| DeviceMap | Defines the mappings between the device type enumerations and device type names. |
| IPublishCallback | Defines the callbacks for successful and failed service publishing. |
| CommonDeviceInfo | Defines the type and content of a device to set. |
Typedefs
| Typedef Name | Description |
|---|---|
| PublishInfo | typedef struct PublishInfo Defines service provisioning information sent to a discovering device. |
| DeviceType | typedef enum DeviceTypeEnum Enumerates device types. |
| IPublishCallback | typedef struct IPublishCallback Defines the callbacks for successful and failed service publishing. |
| CommonDeviceInfo | typedef struct CommonDeviceInfo Defines the type and content of a device to set. |
Enumerations
| Enumeration Name | Description |
|---|---|
| ExchanageMedium { AUTO = 0, BLE = 1, COAP = 2, USB = 3 } | Enumerates media, such as Bluetooth, Wi-Fi, and USB, used for publishing services. |
| ExchangeFre { LOW = 0, MID = 1, HIGH = 2, SUPER_HIGH = 3 } | Enumerates frequencies for publishing services. This enumeration is involved only in Bluetooth and is not supported currently. |
| DiscoverMode { DISCOVER_MODE_PASSIVE = 0x55, DISCOVER_MODE_ACTIVE = 0xAA } | Enumerates the modes in which services are published. The publishing service supports the passive mode. Lite devices support the passive mode only. |
| PublishFailReason { PUBLISH_FAIL_REASON_NOT_SUPPORT_MEDIUM = 1, PUBLISH_FAIL_REASON_PARAMETER_INVALID = 2, PUBLISH_FAIL_REASON_UNKNOWN = 0xFF } | Enumerates failure reasons for publishing services. |
| DataBitMap { HICALL_CAPABILITY_BITMAP = 0, PROFILE_CAPABILITY_BITMAP = 1, HOMEVISIONPIC_CAPABILITY_BITMAP = 2, CASTPLUS_CAPABILITY_BITMAP, AA_CAPABILITY_BITMAP, DVKIT_CAPABILITY_BITMAP, DDMP_CAPABILITY_BITMAP } | Enumerates supported capabilities published by a device. |
| DeviceTypeEnum { UNKOWN = 0x00, PHONE = 0x0E, PAD = 0x11, TV = 0x9C, PC = 0x0C, AUDIO = 0x0A, CAR = 0x83, L0 = 0xF1, L1 = 0xF2 } | Enumerates device types. |
| CommonDeviceKey { COMM_DEVICE_KEY_DEVID = 0, COMM_DEVICE_KEY_DEVTYPE = 1, COMM_DEVICE_KEY_DEVNAME = 2, COMM_DEVICE_KEY_MAX } | Enumerates device information, such as its ID, type, and name. |
Functions
| Function Name | Description |
|---|---|
| PublishService (const char moduleName, const struct PublishInfo info, const struct IPublishCallback cb) | int Publishes a service to the discovering device in the LAN. |
| UnPublishService (const char moduleName, int publishId) | int Unpublishes a service based on the publicId and moduleName. |
| SetCommonDeviceInfo (const struct CommonDeviceInfo *devInfo, unsigned int num) | int Sets common device information, such as its ID, type, and name. |
