Track chapters and segments on iOS
- Topics:
- Media Analytics
CREATED FOR:
- User
- Admin
- Developer
The following instructions provide guidance for implementation using 2.x SDKs.
-
Identify when the chapter start event occurs and create the
ChapterObject
instance by using the chapter information.ChapterObject
chapter tracking reference:NOTE
These variables are only required if you are planning to track chapters.Variable Name Description Required name
Chapter name Yes position
Chapter position Yes length
Chapter length Yes startTime
Chapter start time Yes Chapter object:
id chapterObject = [ADBMediaHeartbeat createChapterObjectWithName:[CHAPTER_NAME] position:[POSITION] length:[LENGTH] startTime:[START_TIME]];
-
If you include custom metadata for the chapter, create the context data variables for the metadata:
NSMutableDictionary *chapterDictionary = [[NSMutableDictionary alloc] init]; [chapterDictionary setObject:@"Sample segment type" forKey:@"segmentType"]; [chapterDictionary setObject:@"Sample segment name" forKey:@"segmentName"]; [chapterDictionary setObject:@"Sample segment info" forKey:@"segmentInfo"];
-
To begin tracking the chapter playback, call the
ChapterStart
event in theMediaHeartbeat
instance:- (void)onChapterStart:(NSNotification *)notification { [_mediaHeartbeat trackEvent:ADBMediaHeartbeatEventChapterStart mediaObject:chapterObject data:chapterDictionary]; }
-
When playback reaches the chapter end boundary, as defined by your custom code, call the
ChapterComplete
event in theMediaHeartbeat
instance:- (void)onChapterComplete:(NSNotification *)notification { [_mediaHeartbeat trackEvent:ADBMediaHeartbeatEventChapterComplete mediaObject:nil data:nil]; }
-
If chapter playback did not complete because the user chose to skip the chapter (for example, if the user seeks out of the chapter boundary), call the
ChapterSkip
event in the MediaHeartbeat instance:- (void)onChapterSkip:(NSNotification *)notification { [_mediaHeartbeat trackEvent:ADBMediaHeartbeatEventChapterSkip mediaObject:nil data:nil]; }
-
If there are any additional chapters, repeat steps 1 through 5.