---
title: CPMessageListItem
framework: carplay
role: symbol
role_heading: Class
path: carplay/cpmessagelistitem
---

# CPMessageListItem

A list template row that represents a conversation or contact.

## Declaration

```swift
class CPMessageListItem
```

## Overview

Overview Use CPMessageListItem to display information about a conversation or a contact in a list template. Unlike CPListItem, you don’t provide a selection handler. Instead, when the user selects the row, CarPlay invokes Siri using the parameters you provide and begins a message compose, read, or reply flow. The behavior of the list item when the user selects it depends on how you initialize or configure it. If the item has a phone number or email address, Siri launches the message compose flow. If the list item has an unread indicator, Siri launches the message read flow. Otherwise, Siri launches the message reply flow. CPMessageListItem can display various auxiliary items in its leading and trailing regions. You describe these using a configuration object for each region. See leadingConfiguration and trailingConfiguration for more information. CarPlay doesn’t support custom list item types. Instead, use the userInfo property to attach a value to the list item that provides additional context, such as specifying  a model object that corresponds to the item. note: CPMessageListItem is available only in apps that have the communication entitlement.

## Topics

### Creating a Message List Item

- [init(conversationIdentifier:text:leadingConfiguration:trailingConfiguration:detailText:trailingText:)](carplay/cpmessagelistitem/init(conversationidentifier:text:leadingconfiguration:trailingconfiguration:detailtext:trailingtext:).md)
- [init(fullName:phoneOrEmailAddress:leadingConfiguration:trailingConfiguration:detailText:trailingText:)](carplay/cpmessagelistitem/init(fullname:phoneoremailaddress:leadingconfiguration:trailingconfiguration:detailtext:trailingtext:).md)

### Managing the Message Context

- [conversationIdentifier](carplay/cpmessagelistitem/conversationidentifier.md)
- [phoneOrEmailAddress](carplay/cpmessagelistitem/phoneoremailaddress.md)

### Managing Content

- [text](carplay/cpmessagelistitem/text.md)
- [detailText](carplay/cpmessagelistitem/detailtext.md)
- [trailingText](carplay/cpmessagelistitem/trailingtext.md)

### Managing Leading and Trailing Configurations

- [leadingConfiguration](carplay/cpmessagelistitem/leadingconfiguration.md)
- [CPMessageListItemLeadingConfiguration](carplay/cpmessagelistitemleadingconfiguration.md)
- [trailingConfiguration](carplay/cpmessagelistitem/trailingconfiguration.md)
- [CPMessageListItemTrailingConfiguration](carplay/cpmessagelistitemtrailingconfiguration.md)

### Managing Supplementary Information

- [userInfo](carplay/cpmessagelistitem/userinfo.md)

### Enabling Items

- [isEnabled](carplay/cpmessagelistitem/isenabled.md)

### Instance Properties

- [leadingDetailTextImage](carplay/cpmessagelistitem/leadingdetailtextimage.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CPListTemplateItem](carplay/cplisttemplateitem.md)
- [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

### Creating a Section

- [init(items:header:headerSubtitle:headerImage:headerButton:sectionIndexTitle:)](carplay/cplistsection/init(items:header:headersubtitle:headerimage:headerbutton:sectionindextitle:).md)
- [CPListTemplateItem](carplay/cplisttemplateitem.md)
- [CPSelectableListItem](carplay/cpselectablelistitem.md)
- [CPListItem](carplay/cplistitem.md)
- [CPListImageRowItem](carplay/cplistimagerowitem.md)
