diff --git a/CHANGELOG.md b/CHANGELOG.md index 76e89c3f8..8b2ff54f0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. ## [Unreleased] +### Added + +- Added `externalId` property to `TheoLiveDistribution` on Android and iOS. + ## [11.3.0] - 26-06-18 ### Added diff --git a/android/src/main/java/com/theoplayer/theolive/THEOliveEventAdapter.kt b/android/src/main/java/com/theoplayer/theolive/THEOliveEventAdapter.kt index bd71888cc..53453465d 100644 --- a/android/src/main/java/com/theoplayer/theolive/THEOliveEventAdapter.kt +++ b/android/src/main/java/com/theoplayer/theolive/THEOliveEventAdapter.kt @@ -19,6 +19,7 @@ private const val EVENT_PROP_ENDPOINT = "endpoint" private const val EVENT_PROP_REASON = "reason" private const val EVENT_PROP_NAME = "name" private const val EVENT_PROP_ID = "id" +private const val EVENT_PROP_EXTERNAL_ID = "externalId" class THEOliveEventAdapter(private val theoLiveApi: TheoLive, private val emitter: Emitter) { @@ -68,6 +69,7 @@ class THEOliveEventAdapter(private val theoLiveApi: TheoLive, private val emitte putString(EVENT_PROP_TYPE, "distributionloaded") putMap(EVENT_PROP_DISTRIBUTION, Arguments.createMap().apply { putString(EVENT_PROP_ID, event.getDistribution().id) + event.getDistribution().externalId?.let { putString(EVENT_PROP_EXTERNAL_ID, it) } putString(EVENT_PROP_NAME, event.getDistribution().name) }) }) diff --git a/ios/theolive/THEOplayerRCTTHEOliveEventAdapter.swift b/ios/theolive/THEOplayerRCTTHEOliveEventAdapter.swift index d2d012616..5cd0e4edb 100644 --- a/ios/theolive/THEOplayerRCTTHEOliveEventAdapter.swift +++ b/ios/theolive/THEOplayerRCTTHEOliveEventAdapter.swift @@ -18,6 +18,7 @@ let PROP_ENDPOINT_CONTENT_PROTECTION: String = "contentProtection" let PROP_REASON_ERROR_CODE: String = "errorCode" let PROP_REASON_ERROR_MESSAGE: String = "errorMessage" let PROP_DISTRIBUTION_ID: String = "id" +let PROP_DISTRIBUTION_EXTERNAL_ID: String = "externalId" let PROP_DISTRIBUTION_NAME: String = "name" let PROP_CONTENTPROTECTION_INTEGRATION: String = "integration" @@ -122,6 +123,9 @@ class THEOplayerRCTTHEOliveEventAdapter { var distributionData: [String:Any] = [:] distributionData[PROP_DISTRIBUTION_ID] = distribution.id + if let externalId = distribution.externalId { + distributionData[PROP_DISTRIBUTION_EXTERNAL_ID] = externalId + } distributionData[PROP_DISTRIBUTION_NAME] = distribution.name return distributionData diff --git a/src/api/theolive/TheoLiveDistribution.ts b/src/api/theolive/TheoLiveDistribution.ts index d1480ebea..e5fbd3d5b 100644 --- a/src/api/theolive/TheoLiveDistribution.ts +++ b/src/api/theolive/TheoLiveDistribution.ts @@ -6,5 +6,6 @@ */ export interface TheoLiveDistribution { id: string; + externalId?: string; name: string; }