---
title: AVSystemRouteSession
framework: avsystemrouting
role: symbol
role_heading: Class
path: avsystemrouting/avsystemroutesession-5i6j6
---

# AVSystemRouteSession

An object that manages a single media playback session on a remote device.

## Declaration

```occ
@interface AVSystemRouteSession : NSObject
```

## Overview

Overview AVSystemRouteSession manages a single media playback session on a remote device. Create a session to initiate playback on a connected device, communicate with a remote application, and control the lifecycle of the remote playback experience. To use a session: Create an AVSystemRouteSession with a URL and launch mode Add the session to an AVSystemRoute using addSession: Start the session with startWithCompletionHandler: Use the returned AVSystemRouteMediaSession to communicate with the remote device Call stop when playback ends to clean up resources Sessions are single-use. After calling stop, the session cannot be restarted or added to another route. Create a new AVSystemRouteSession for each new playback. Reporting Playback Metadata Report playback metadata to MPNowPlayingInfoCenter to ensure the system displays accurate information about the current media across a person’s devices and in system UI.

## Topics

### Instance Methods

- [initWithURL:mode:](avsystemrouting/avsystemroutesession-5i6j6/initwithurl:mode:.md)
- [startWithCompletionHandler:](avsystemrouting/avsystemroutesession-5i6j6/startwithcompletionhandler:.md)
- [stop](avsystemrouting/avsystemroutesession-5i6j6/stop.md)

## Relationships

### Inherits From

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

## See Also

### Routes and sessions

- [AVSystemRoute](avsystemrouting/avsystemroute-9kkj3.md)
- [AVSystemRouteLaunchMode](avsystemrouting/avsystemroutelaunchmode.md)
