service discovery

service discovery
​​​Use Assigned Numbers in the Service Discovery Protocol (SDP) for searching for services, a browse group list, documentation URL, and an icon URL.

Service Discovery Protocol (SDP)
Universally Unique Identifier (UUID) short forms
The Bluetooth® Service Discovery Protocol (SDP) specification defines a way to represent a range of UUIDs (which are nominally 128 bits) in a shorter form. A reserved range of 232 values can be represented using 32 bits (denoted uuid32). Of these, a sub-range of 216 values can be represented using only 16 bits (denoted uuid16).

All values in the 232 range that are not assigned in this document are reserved pending future revisions of this document. In other words, no value in this range may be used except as specified in this or future revisions of this document. UUID values outside of this range can be allocated as described in [ISO-11578] for any purpose the allocator desires.

Base Universally Unique Identifier (UUID)
The Base UUID is used for calculating 128-bit UUIDs from "short UUIDs" (uuid16 and uuid32) as described in the SDP Specification. See Service Discovery Protocol (SDP) in the Bluetooth Core Specification.

NOTE: Currently all assigned short UUIDs are uuid16 types.

UUID Name    UUID
BASE_UUID    00000000-0000-1000-8000-00805F9B34FB
Protocol Identifiers
The UUIDs in the following table shall be used only in the ProfileDescriptorList attribute.

Protocol Name    UUID    Protocol Specification
SDP    0x0001    Bluetooth Core Specification
UDP    0x0002    [NO USE BY PROFILES]
RFCOMM    0x0003    RFCOMM with TS 07.10
TCP    0x0004    [NO USE BY PROFILES]
TCS-BIN    0x0005    Telephony Control Specification / TCS Binary [DEPRECATED]
TCS-AT    0x0006    [NO USE BY PROFILES]
ATT    0x0007    Attribute Protocol
OBEX    0x0008    IrDA Interoperability
IP    0x0009    [NO USE BY PROFILES]
FTP    0x000A    [NO USE BY PROFILES]
HTTP    0x000C    [NO USE BY PROFILES]
WSP    0x000E    [NO USE BY PROFILES]
BNEP    0x000F    Bluetooth Network Encapsulation Protocol (BNEP)
UPNP    0x0010    Extended Service Discovery Profile (ESDP) [DEPRECATED]
HIDP    0x0011    Human Interface Device Profile (HID)
HardcopyControlChannel    0x0012    Hardcopy Cable Replacement Profile (HCRP)
HardcopyDataChannel    0x0014    See Hardcopy Cable Replacement Profile (HCRP)
HardcopyNotification    0x0016    Hardcopy Cable Replacement Profile (HCRP)
AVCTP    0x0017    Audio/Video Control Transport Protocol (AVCTP)
AVDTP    0x0019    Audio/Video Distribution Transport Protocol (AVDTP)
CMTP    0x001B    Common ISDN Access Profile (CIP) [DEPRECATED]
MCAPControlChannel    0x001E    Multi-Channel Adaptation Protocol (MCAP)
MCAPDataChannel    0x001F    Multi-Channel Adaptation Protocol (MCAP)
L2CAP    0x0100    Bluetooth Core Specification
     (Max value 0xFFFF)     
Table 1: Protocol Identifiers and Names, Service Classes and Profile Identifiers

UUIDs in the following table, which have an allowed usage of Service Class may be used in the ServiceClassIDList universal attribute, but shall not be used in the BluetoothProfileDescriptorList attribute unless the Profile usage is also allowed per the table below. If a Service Class UUID is exposed in the SDP database of a product, then the product containing the SDP record shall comply with the specification that defines the service corresponding to the UUID.

UUIDs in the following table which have an allowed usage of Profile may be used in the BluetoothProfileDescriptorList universal attribute, but shall not be used in the ServiceClassIDList universal attribute unless the Service Class usage is also allowed per the table below.

For historical reasons, some UUIDs in Table 2 are used to identify profiles in a BluetoothProfileDescriptorList universal attribute as well as service classes in a ServiceClassIDList universal attribute. However, for new profiles, Service Class UUIDs shall not be used in a BluetoothProfileDescriptorList universal attribute and Profile UUIDs shall not be used in a ServiceClassIDList universal attribute.

Service Class Name    UUID    Specification    Allowed Usage
ServiceDiscoveryServerServiceClassID    0x1000    Bluetooth Core Specification    Service Class
BrowseGroupDescriptorServiceClassID    0x1001    Bluetooth Core Specification    Service Class
SerialPort    0x1101    Serial Port Profile (SPP)
NOTE: The example SDP record in SPP v1.0 does not include a BluetoothProfileDescriptorList attribute, but some implementations may also use this UUID for the Profile Identifier.    Service Class/ Profile
LANAccessUsingPPP    0x1102    LAN Access Profile
[DEPRECATED]
NOTE: Used as both Service Class Identifier and Profile Identifier.    Service Class/ Profile
DialupNetworking    0x1103    Dial-up Networking Profile (DUN)
NOTE: Used as both Service Class Identifier and Profile Identifier.    Service Class/ Profile
IrMCSync    0x1104    Synchronization Profile (SYNC)
NOTE: Used as both Service Class Identifier and Profile Identifier.    Service Class/ Profile
OBEXObjectPush    0x1105    Object Push Profile (OPP)
NOTE: Used as both Service Class Identifier and Profile.    Service Class/ Profile
OBEXFileTransfer    0x1106    File Transfer Profile (FTP)
NOTE: Used as both Service Class Identifier and Profile Identifier.    Service Class/ Profile
IrMCSyncCommand    0x1107    Synchronization Profile (SYNC)     
Headset    0x1108    Headset Profile (HSP)
NOTE: Used as both Service Class Identifier and Profile Identifier.    Service Class/ Profile
CordlessTelephony    0x1109    Cordless Telephony Profile (CTP)
NOTE: Used as both Service Class Identifier and Profile Identifier.
[DEPRECATED]    Service Class/ Profile
AudioSource    0x110A    Advanced Audio Distribution Profile (A2DP)    Service Class
AudioSink    0x110B    Advanced Audio Distribution Profile (A2DP)    Service Class
A/V_RemoteControlTarget    0x110C    Audio/Video Remote Control Profile (AVRCP)    Service Class
AdvancedAudioDistribution    0x110D    Advanced Audio Distribution Profile (A2DP)    Profile
A/V_RemoteControl    0x110E    Audio/Video Remote Control Profile (AVRCP)
NOTE: Used as both Service Class Identifier and Profile Identifier.    Service Class/ Profile
A/V_RemoteControlController    0x110F    Audio/Video Remote Control Profile (AVRCP)
NOTE: The AVRCP specification v1.3 and later require that 0x110E also be included in the ServiceClassIDList before 0x110F for backwards compatibility.    Service Class
Intercom    0x1110    Intercom Profile (ICP)
NOTE: Used as both Service Class Identifier and Profile Identifier.
[DEPRECATED]    Service Class
Fax    0x1111    Fax Profile (FAX)
NOTE: Used as both Service Class Identifier and Profile Identifier.
[DEPRECATED]    Service Class
Headset - Audio Gateway (AG)    0x1112    Headset Profile (HSP)    Service Class
WAP    0x1113    Interoperability Requirements for Bluetooth technology as a WAP, Bluetooth SIG [DEPRECATED]    Service Class
WAP_CLIENT    0x1114    Interoperability Requirements for Bluetooth technology as a WAP, Bluetooth SIG [DEPRECATED]    Service Class
PANU    0x1115    Personal Area Networking Profile (PAN)
NOTE: Used as both Service Class Identifier and Profile Identifier for PANU role.    Service Class / Profile
NAP    0x1116    Personal Area Networking Profile (PAN)
NOTE: Used as both Service Class Identifier and Profile Identifier for NAP role.    Service Class / Profile
GN    0x1117    Personal Area Networking Profile (PAN)
NOTE: Used as both Service Class Identifier and Profile Identifier for GN role.    Service Class / Profile
DirectPrinting    0x1118    Basic Printing Profile (BPP)    Service Class
ReferencePrinting    0x1119    See Basic Printing Profile (BPP)    Service Class
Basic Imaging Profile    0x111A    Basic Imaging Profile (BIP)    Profile
ImagingResponder    0x111B    Basic Imaging Profile (BIP)    Service Class
ImagingAutomaticArchive    0x111C    Basic Imaging Profile (BIP)    Service Class
ImagingReferencedObjects    0x111D    Basic Imaging Profile (BIP)    Service Class
Handsfree    0x111E    Hands-Free Profile (HFP)
NOTE: Used as both Service Class Identifier and Profile Identifier.    Service Class / Profile
HandsfreeAudioGateway    0x111F    Hands-free Profile (HFP)    Service Class
DirectPrintingReferenceObjectsService    0x1120    Basic Printing Profile (BPP)    Service Class
ReflectedUI    0x1121    Basic Printing Profile (BPP)    Service Class
BasicPrinting    0x1122    Basic Printing Profile (BPP)    Profile
PrintingStatus    0x1123    Basic Printing Profile (BPP)    Service Class
HumanInterfaceDeviceService    0x1124    Human Interface Device (HID)
NOTE: Used as both Service Class Identifier and Profile Identifier.    Service Class / Profile
HardcopyCableReplacement    0x1125    Hardcopy Cable Replacement Profile (HCRP)    Profile
HCR_Print    0x1126    Hardcopy Cable Replacement Profile (HCRP)    Service Class
HCR_Scan    0x1127    Hardcopy Cable Replacement Profile (HCRP)    Service Class
Common_ISDN_Access    0x1128    Common ISDN Access Profile (CIP)
NOTE: Used as both Service Class Identifier and Profile Identifier.
[DEPRECATED]    Service Class / Profile
SIM_Access    0x112D    SIM Access Profile (SAP)
NOTE: Used as both Service Class Identifier and Profile Identifier.    Service Class / Profile
Phonebook Access - PCE    0x112E    Phonebook Access Profile (PBAP)    Service Class
Phonebook Access - PSE    0x112F    Phonebook Access Profile (PBAP)    Service Class
Phonebook Access    0x1130    Phonebook Access Profile (PBAP)    Profile
Headset - HS    0x1131    Headset Profile (HSP)
NOTE: See erratum #3507.
0x1108 and 0x1203 should also be included in the ServiceClassIDList before 0x1131 for backwards compatibility.    Service Class
Message Access Server    0x1132    Message Access Profile (MAP)    Service Class
Message Notification Server    0x1133    Message Access Profile (MAP)    Service Class
Message Access Profile    0x1134    Message Access Profile (MAP)    Profile
GNSS    0x1135    Global Navigation Satellite System Profile (GNSS)    Profile
GNSS_Server    0x1136    Global Navigation Satellite System Profile (GNSS)    Service Class
​3D Display    0x1137​    ​3D Synchronization Profile (3DSP)    Service Class​
​3D Glasses    ​0x1138    ​3D Synchronization Profile (3DSP)    ​Service Class
​3D Synchronization    0x1139​    ​3D Synchronization Profile (3DSP)    ​Profile
​MPS Profile UUID    ​0x113A    ​Multi-Profile Specification (MPS)    ​Profile
​MPS SC UUID    ​0x113B    ​Multi-Profile Specification (MPS)    ​Service Class
​CTN Access Service​    ​0x113C​    ​Calendar, Task, and Notes (CTN) Profile    ​Service Class
​CTN Notification Service​    ​0x113D    ​​Calendar Tasks and Notes (CTN) Profile    ​Service Class
​CTN Profile    ​0x113E    ​​Calendar Tasks and Notes (CTN) Profile    ​Profile
PnPInformation    0x1200    Device Identification (DID)
NOTE: Used as both Service Class Identifier and Profile Identifier.    Service Class / Profile
GenericNetworking    0x1201    N/A    Service Class
GenericFileTransfer    0x1202    N/A    Service Class
GenericAudio    0x1203    N/A    Service Class
GenericTelephony    0x1204    N/A    Service Class
UPNP_Service    0x1205    Enhanced Service Discovery Profile (ESDP) [DEPRECATED]    Service Class
UPNP_IP_Service    0x1206    Enhanced Service Discovery Profile (ESDP) [DEPRECATED]    Service Class
ESDP_UPNP_IP_PAN    0x1300    Enhanced Service Discovery Profile (ESDP) [DEPRECATED]    Service Class
ESDP_UPNP_IP_LAP    0x1301    Enhanced Service Discovery Profile (ESDP)[DEPRECATED]    Service Class
ESDP_UPNP_L2CAP    0x1302    Enhanced Service Discovery Profile (ESDP)[DEPRECATED]    Service Class
VideoSource    0x1303    Video Distribution Profile (VDP)    Service Class
VideoSink    0x1304    Video Distribution Profile (VDP)    Service Class
VideoDistribution    0x1305    Video Distribution Profile (VDP)    Profile
HDP    0x1400    Health Device Profile    Profile
HDP Source    0x1401    Health Device Profile (HDP)    Service Class
HDP Sink    0x1402    Health Device Profile (HDP)    Service Class
     (Max value 0xFFFF)          
Table 2: Service Class Profile Identifiers

Browse Group Identifiers
The UUIDs in the following table may be used only in BrowseGroupList attribute.

UUID Name    UUID    Specification
PublicBrowseRoot    0x1002    Bluetooth Core Specification
     (Max value 0xFFFF)     
Table 3: Browse Group Identifiers and Names

Attribute Identifiers
Advanced Audio Distribution Profile (A2DP)

Applicable to Service Class UUIDs:

AudioSource: 0x110A
AudioSink: 0x110B
Attribute Name    Attribute ID
SupportedFeatures    0x0311
Audio/Video Remote Control Profile (AVRCP)
Applicable to Service Class UUIDs:

A/V_RemoteControlTarget: 0x110C
A/V_RemoteControl: 0x110E
A/V_RemoteControlController: 0x110F
Attribute Name    Attribute ID
SupportedFeatures    0x0311
Basic Imaging Profile (BIP)
Applicable to Service Class UUIDs:

ImagingResponder: 0x111B
ImagingAutomaticArchive: 0x111C
ImagingReferencedObjects: 0x111D
Attribute Name    Attribute ID
GoepL2capPsm (BIP v1.1 and later)    0x0200
SupportedCapabilities    0x0310
SupportedFeatures    0x0311
SupportedFunctions    0x0312
TotalImagingDataCapacity    0x0313
Basic Printing Profile (BPP)
Applicable to Service Class UUIDs:

Direct Printing: 0x1118
ReferencePrinting: 0x1119
DirectPrintingReferenceObjectsService: 0x1120
ReflectedUI: 0x1121
PrintingStatus: 0x1123
Attribute Name    Attribute ID
Document Formats Supported    0x0350
Character Repertoires Supported    0x0352
XHTML-Print Image Formats Supported    0x0354
Color Supported    0x0356
1284ID    0x0358
Printer Name    0x035A
Printer Location    0x035C
Duplex Supported    0x035E
Media Types Supported    0x0360
MaxMediaWidth    0x0362
MaxMediaLength    0x0364
Enhanced Layout Supported    0x0366
RUI Formats Supported    0x0368
Reference Printing RUI Supported    0x0370
Direct Printing RUI Supported    0x0372
Reference Printing Top URL    0x0374
Direct Printing Top URL    0x0376
Printer Admin RUI Top URL    0x0378
Device Name    0x037A
Bluetooth Core Specification: Universal Attributes
The following attribute IDs have the same meaning for all services. These attribute IDs shall be in the 0x0000 to 0x01FF range.

Attribute Name    Attribute ID
ServiceRecordHandle    0x0000
ServiceClassIDList    0x0001
ServiceRecordState    0x0002
ServiceID    0x0003
ProtocolDescriptorList    0x0004
BrowseGroupList    0x0005
LanguageBaseAttributeIDList    0x0006
ServiceInfoTimeToLive    0x0007
ServiceAvailability    0x0008
BluetoothProfileDescriptorList    0x0009
DocumentationURL    0x000A
ClientExecutableURL    0x000B
IconURL    0x000C
AdditionalProtocolDescriptorLists    0x000D
Reserved    0x000E – 0x01FF
Bluetooth Core Specification: Service Discovery Service
Applicable to Service Class UUIDs:

ServiceDiscoveryServerServiceClassID: 0x1000
Attribute Name    Attribute ID
VersionNumberList    0x0200
ServiceDatabaseState    0x0201
Bluetooth Core Specification: Browse Group Descriptor Service
Applicable to Service Class UUIDs:

BrowseGroupDescriptorServiceClassID: 0x1001
Attribute Name    Attribute ID
GroupID    0x0200
Cordless Telephony Profile [DEPRECATED]
Applicable to Service Class UUIDs:

CordlessTelephony: 0x1001
Attribute Name    Attribute ID
External Network    0x0301
Device Identification Profile
Applicable to Service Class UUIDs:

PnPInformation: 0x1200
Attribute Name    Attribute ID
SpecificationID    0x0200
VendorID    0x0201
ProductID    0x0202
Version    0x0203
PrimaryRecord    0x0204
VendorIDSource    0x0205
Fax Profile [DEPRECATED]
Applicable to Service Class UUIDs:

Fax: 0x1111
Attribute Name    Attribute ID
Fax Class 1 Support    0x0302
Fax Class 2.0 Support    0x0303
Fax Class 2 Support(vendor-specific class)    0x0304
Audio Feedback Support    0x0305
File Transfer Profile
Applicable to Service Class UUIDs:

OBEXFileTransfer: 0x1106
Attribute Name    Attribute ID
GoepL2capPsm(FTP v1.2 and later)    0x0200
Generic Object Exchange Profile
Attribute Name    Attribute ID
GoepL2capPsm(GOEP v2.0 and later)    Must be defined separately for each GOEP-based service.
Global Navigation Satellite System Profile (GNSS)
Applicable to Service Class UUIDs:

GNSS Service: 0x1136
Attribute Name    Attribute ID
SupportedFeatures    0x0200
Hands-Free Profile
Applicable to Service Class UUIDs:

Handsfree: 0x111E
HandsfreeAudioGateway: 0x111F
Attribute Name    Attribute ID
Network    0x0301
SupportedFeatures    0x0311
Hardcopy Replacement Profile
Applicable to Service Class UUIDs:

HCR_Print: 0x1126
HCR_Scan: 0x1127
Attribute Name    Attribute ID
1284ID    0x0300
Device Name    0x0302
Friendly Name    0x0304
Device Location    0x0306
Headset Profile
Applicable to Service Class UUIDs:

Headset: 0x1108
Headset - Audio Gateway (AG): 0x1112
Headset: 0x1131
Attribute Name    Attribute ID
Remote Audio Volume Control    0x0302​
Health Device Profile
Applicable to Service Class UUIDs:

HDP Source: 0x1401
HDP Sink: 0x1402
Attribute Name    Attribute ID
SupportFeaturesList    0x0200
DataExchangeSpecification    0x0301
MCAP Supported Procedures    0x0302
Human Interface Device Profile
Applicable to Service Class UUIDs:

HumanInterfaceDeviceService: 0x1124
Attribute Name    Attribute ID
HIDDeviceReleaseNumber (Deprecated)    0x0200
HIDParserVersion    0x0201
HIDDeviceSubclass    0x0202
HIDCountryCode    0x0203
HIDVirtualCable    0x0204
HIDReconnectInitiate    0x0205
HIDDescriptorList    0x0206
HIDLANGIDBaseList    0x0207
HIDSDPDisable (Deprecated)    0x0208
HIDBatteryPower    0x0209
HIDRemoteWake    0x020A
HIDProfileVersion    0x020B
HIDSupervisionTimeout    0x020C
HIDNormallyConnectable    0x020D
HIDBootDevice    0x020E
​HIDSSRHostMaxLatency    ​0x020F
​HIDSSRHostMinTimeout    ​0x0210
Reserved for HID Attributes    0x0211-0x03FF
Available for HID Language Strings    0x0400-0xFFFF
Interoperability Requirements for Bluetooth technology as a WAP Bearer [DEPRECATED]
Applicable to Service Class UUIDs:

WAP: 0x1113
WAP_CLIENT: 0x1114
Attribute Name    Attribute ID
NetworkAddress    0x0306
WAPGateway    0x0307
HomePageURL    0x0308
WAPStackType    0x0309
Message Access Profile
Applicable to Service Class UUIDs:

Message Access Server: 0x1132
Message Notification Server: 0x1133
Attribute Name    Attribute ID
​GoepL2capPsm (MAP v1.2 and later)    ​0x0200
MASInstanceID    0x0315
SupportedMessageTypes    0x0316
​MapSupportedFeatures (MAP v1.2 and later)    ​0x0317
Object Push Profile
Applicable to Service Class UUIDs:

OBEXObjectPush: 0x1105
Attribute Name    Attribute ID
GoepL2capPsm (OPP v1.2 and later)    0x0200
Service Version    0x0300
Supported Formats List    0x0303
Personal Area Networking Profile
Applicable to Service Class UUIDs:

PANU: 0x1115
NAP: 0x1116
GN: 0x1117
Attribute Name    Attribute ID
IpSubnet (Not used in PAN v1.0)    0x0200
SecurityDescription    0x030A
NetAccessType    0x030B
MaxNetAccessrate    0x030C
IPv4Subnet    0x030D
IPv6Subnet    0x030E
Phone Book Access Profile
Applicable to Service Class UUIDs:

Phonebook Access - PCE: 0x112E
Phonebook Access - PSE: 0x112F
Attribute Name    Attribute ID
​GoepL2capPsm (PBAP v1.2 and later)    ​0x0200
SupportedRepositories    0x0314
​PbapSupportedFeatures (PBAP v1.2 and later)    ​0x0317
Synchronization Profile
Applicable to Service Class UUIDs:

IrMCSync: 0x1104
Attribute Name    Attribute ID
Supported Data Stores List    0x0301
Attribute ID Offsets for Strings
The following table contains Attribute ID Offsets that are added to the value contained in the LanguageBaseAttributeIDList attribute.

Attribute ID Offset Name    Attribute ID Offset    Reference
ServiceName    0x0000    Bluetooth Core Specification
ServiceDescription    0x0001    Bluetooth Core Specification
ProviderName    0x0002    Bluetooth Core Specification
     (Max value 0xFFFF)     
Table 5: Attribute Identifiers

The base offset as given by the LanguageBaseAttributeIDList attribute must be added to each ID value in this table. For the primary language, this shall be equal to 0x0100 as described in the SDP specification.

Protocol Parameters
Protocol    Parameter Name    Parameter Index
L2CAP    PSM    1
RFCOMM    Channel    1
TCP    Port    1
UDP    Port    1
BNEP    Version    1
BNEP    Supported Network Packet Type List    2
Table 6: Protocol Parameter

Multi-Profile
Applicable​​​ to Service Class UUIDs:

MPS SC UUID: 0x113B
Attribute Name    Attribute ID
MPSD Scenarios    0x0200
MPMD Scenarios    0x0201
Supported Profiles & Protocols    0x0202
Table 7: Multi-Profile

Calendar Tasks and Notes
Applicable​​​ to Service Class UUIDs:

CTN Service Class: 0x113C
CTN Notification Service: 0x113D
Attribute Name    Attribute ID
CASInstanceID    0x0315
CTNSupportedFeatures    0x0317
Table 8: Calendar Tasks and Notes (CTN) Profile​
--------------------- 
作者:小紫色的花 
来源:CSDN 
原文:https://blog.csdn.net/qq_43680229/article/details/84106398 
版权声明:本文为博主原创文章,转载请附上博文链接!

猜你喜欢

转载自blog.csdn.net/jhope/article/details/87180208