createHarvestJob
inline suspend fun MediaPackageV2Client.createHarvestJob(crossinline block: CreateHarvestJobRequest.Builder.() -> Unit): CreateHarvestJobResponse
Creates a new harvest job to export content from a MediaPackage v2 channel to an S3 bucket.
Samples
import aws.sdk.kotlin.services.mediapackagev2.model.Destination
import aws.sdk.kotlin.services.mediapackagev2.model.HarvestedDashManifest
import aws.sdk.kotlin.services.mediapackagev2.model.HarvestedHlsManifest
import aws.sdk.kotlin.services.mediapackagev2.model.HarvestedLowLatencyHlsManifest
import aws.sdk.kotlin.services.mediapackagev2.model.HarvestedManifests
import aws.sdk.kotlin.services.mediapackagev2.model.HarvesterScheduleConfiguration
import aws.sdk.kotlin.services.mediapackagev2.model.S3DestinationConfig
fun main() {
//sampleStart
// Creating a Harvest Job
val resp = mediaPackageV2Client.createHarvestJob {
channelGroupName = "exampleChannelGroup"
channelName = "exampleChannelName"
originEndpointName = "exampleOriginEndpointName"
description = "Example HarvestJob description"
harvestedManifests = HarvestedManifests {
hlsManifests = listOf<HarvestedHlsManifest>(
HarvestedHlsManifest {
manifestName = "HlsManifest"
}
)
dashManifests = listOf<HarvestedDashManifest>(
HarvestedDashManifest {
manifestName = "DashManifest"
}
)
lowLatencyHlsManifests = listOf<HarvestedLowLatencyHlsManifest>(
HarvestedLowLatencyHlsManifest {
manifestName = "LowLatencyHlsManifest"
}
)
}
scheduleConfiguration = HarvesterScheduleConfiguration {
startTime = "2024-05-28T06:00:00.00Z"
endTime = "2024-05-28T12:00:00.00Z"
}
destination = Destination {
s3Destination = S3DestinationConfig {
bucketName = "harvestJobS3DestinationBucket"
destinationPath = "manifests"
}
}
}
//sampleEnd
}