---
title: IOBluetoothHandsFreeDevice
framework: IOBluetooth
role: symbol
role_heading: Class
platforms: [macOS 10.7+]
path: iobluetooth/iobluetoothhandsfreedevice
---

# IOBluetoothHandsFreeDevice

An object you use to manage phone calls on a connected Bluetooth hands-free phone or headset.

## Declaration

```swift
class IOBluetoothHandsFreeDevice
```

## Topics

### Creating a Hands-Free Device Manager

- [init(device:delegate:)](iobluetooth/iobluetoothhandsfreedevice/init(device:delegate:).md)

### Accepting Calls

- [acceptCall()](iobluetooth/iobluetoothhandsfreedevice/acceptcall().md)
- [acceptCallOnPhone()](iobluetooth/iobluetoothhandsfreedevice/acceptcallonphone().md)
- [callTransfer()](iobluetooth/iobluetoothhandsfreedevice/calltransfer().md)

### Dialing Calls

- [dialNumber(_:)](iobluetooth/iobluetoothhandsfreedevice/dialnumber(_:).md)
- [memoryDial(_:)](iobluetooth/iobluetoothhandsfreedevice/memorydial(_:).md)
- [redial()](iobluetooth/iobluetoothhandsfreedevice/redial().md)

### Holding Calls

- [holdCall()](iobluetooth/iobluetoothhandsfreedevice/holdcall().md)
- [addHeldCall()](iobluetooth/iobluetoothhandsfreedevice/addheldcall().md)
- [placeAllOthers(onHold:)](iobluetooth/iobluetoothhandsfreedevice/placeallothers(onhold:).md)

### Ending Calls

- [endCall()](iobluetooth/iobluetoothhandsfreedevice/endcall().md)
- [releaseCall(_:)](iobluetooth/iobluetoothhandsfreedevice/releasecall(_:).md)
- [releaseActiveCalls()](iobluetooth/iobluetoothhandsfreedevice/releaseactivecalls().md)
- [releaseHeldCalls()](iobluetooth/iobluetoothhandsfreedevice/releaseheldcalls().md)

### Sending Messages and Commands

- [sendSMS(_:message:)](iobluetooth/iobluetoothhandsfreedevice/sendsms(_:message:).md)
- [sendDTMF(_:)](iobluetooth/iobluetoothhandsfreedevice/senddtmf(_:).md)
- [send(atCommand:)](iobluetooth/iobluetoothhandsfreedevice/send(atcommand:).md)
- [send(atCommand:timeout:selector:target:)](iobluetooth/iobluetoothhandsfreedevice/send(atcommand:timeout:selector:target:).md)

### Requesting Status Information

- [subscriberNumber()](iobluetooth/iobluetoothhandsfreedevice/subscribernumber().md)
- [currentCallList()](iobluetooth/iobluetoothhandsfreedevice/currentcalllist().md)

### Transferring Audio

- [transferAudioToComputer()](iobluetooth/iobluetoothhandsfreedevice/transferaudiotocomputer().md)
- [transferAudioToPhone()](iobluetooth/iobluetoothhandsfreedevice/transferaudiotophone().md)

## Relationships

### Inherits From

- [IOBluetoothHandsFree](iobluetooth/iobluetoothhandsfree.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Classes

- [IOBluetoothDevice](iobluetooth/iobluetoothdevice.md)
- [IOBluetoothDeviceInquiry](iobluetooth/iobluetoothdeviceinquiry.md)
- [IOBluetoothDevicePair](iobluetooth/iobluetoothdevicepair.md)
- [IOBluetoothDeviceRef](iobluetooth/iobluetoothdeviceref.md)
- [IOBluetoothHandsFree](iobluetooth/iobluetoothhandsfree.md)
- [IOBluetoothHandsFreeAudioGateway](iobluetooth/iobluetoothhandsfreeaudiogateway.md)
- [IOBluetoothHostController](iobluetooth/iobluetoothhostcontroller.md)
- [IOBluetoothL2CAPChannel](iobluetooth/iobluetoothl2capchannel.md)
- [IOBluetoothL2CAPChannelRef](iobluetooth/iobluetoothl2capchannelref.md)
- [IOBluetoothOBEXSession](iobluetooth/iobluetoothobexsession.md)
- [IOBluetoothObject](iobluetooth/iobluetoothobject.md)
- [IOBluetoothObjectRef](iobluetooth/iobluetoothobjectref.md)
- [IOBluetoothRFCOMMChannel](iobluetooth/iobluetoothrfcommchannel.md)
- [IOBluetoothRFCOMMChannelRef](iobluetooth/iobluetoothrfcommchannelref.md)
- [IOBluetoothSDPDataElement](iobluetooth/iobluetoothsdpdataelement.md)
