From aa5b9c3ef34001978ad97668eadc33c9ba6f6c2f Mon Sep 17 00:00:00 2001 From: Michael Dale Date: Fri, 29 Aug 2014 18:05:04 -0400 Subject: [PATCH] updated layout of uiVars to outline format * Uses more whitespace, and much easier to follow for hash links to respective uiVars * wp fixes --- docs/api_listeners.php | 630 +++---- docs/api_methods.php | 382 +++- docs/api_uivars.php | 1586 +++++++++-------- docs/content_api.php | 347 +--- .../KalturaSupport.manifest.php | 10 +- .../KalturaSupport/tests/AutoPlay.qunit.html | 10 +- 6 files changed, 1503 insertions(+), 1462 deletions(-) diff --git a/docs/api_listeners.php b/docs/api_listeners.php index 821bf60715..4658645ef9 100644 --- a/docs/api_listeners.php +++ b/docs/api_listeners.php @@ -1,322 +1,322 @@ array( - 'props' => 'Root of the application', - 'desc' => 'The first command that registers the main proxys and main view mediator.', - 'availability' => 'kdp' - ), - 'initiatApp' => array( - 'props' => 'None', - 'desc' => 'Start the init macro commands.', - 'availability' => 'kdp' - ), - 'skinLoaded' => array( - 'props' => 'None', - 'desc' => 'Dispatched when the skin is loaded.', - 'availability' => 'kdp' - ), - 'skinLoadFailed' => array( - 'props' => 'None', - 'desc' => 'Dispatched when the skin load failed.', - 'availability' => 'kdp' - ), - 'sourceReady' => array( - 'props' => 'None', - 'desc' => 'When the source is ready use to set the media element to the media player.', - 'availability' => 'kdp' - ), - 'kdpReady' => array( - 'props' => 'None', - 'desc' => 'Notify that the application is ready to be used and events can be listened to and that the loaded entry is ready to be played.' - ), - 'kdpEmpty' => array( - 'props' => 'None', - 'desc' => 'Notify that the application is ready to be used and events can be listened to, but no media was loaded' - ), - 'layoutReady' => array( - 'props' => 'None', - 'desc' => 'Dispatched when the init macro command is done and the layout is ready' - ), - 'playerReady' => array( - 'props' => 'None', - 'desc' => 'Dispatches when the player is ready to play the media' - ), - 'pluginsLoaded' => array( - 'props' => 'Plugins map object. Every key is a plugin ID, value is the status of the plugin (see PluginStatus class)', - 'desc' => 'Notification fired when all plugins finished the loading process.', - 'availability' => 'kdp' - ), - 'singlePluginLoaded' => array( - 'props' => 'The plugin ID', - 'desc' => 'Notification fired when a single plugin is ready', - 'availability' => 'kdp' - ), - 'singlePluginFailedToLoad' => array( - 'props' => 'The plugin ID', - 'desc' => 'Notification fired when a single plugin failed to load', - 'availability' => 'kdp' - ), - 'readyToPlay' => array( - 'props' => 'None', - 'desc' => 'Notification added with version 3.5.0, signifies that an entry / media is ready to be played in the KDP', - 'availability' => 'kdp' - ), - 'readyToLoad' => array( - 'props' => 'None', - 'desc' => 'Dispatched when the skin is loaded.' - ), - 'entryReady' => array( - 'props' => 'The entry object (KalturaBaseEntry)', - 'desc' => 'The Entry is set' - ), - 'entryFailed' => array( - 'props' => 'None', - 'desc' => 'Get Entry failed' - ), - 'entryNotAvailable' => array( - 'props' => 'entryId: The new entry ID', - 'desc' => "Notification fired when the BaseEntry object has been retrieved but KDP can't play the entry. Possible reasons: status not ready / moderation status/ access control", - 'availability' => 'kdp' - ), - 'mediaReady' => array( - 'props' => 'None', - 'desc' => 'The loadable media has completed loading' - ), - 'mediaError' => array( - 'props' => 'errorEvent: the media error event (MediaErrorEvent)', - 'desc' => 'The player notify on media error' - ), - 'mediaLoaded' => array( - 'props' => 'None', - 'desc' => 'From version 3.5.0, this notification replaces the MEDIA_READY notification as the catalyst for the MediaReadyCommand. This notification is indicative that the MediaElement constructed under the MediaProxy function prepareMediaElement is loaded into the OSMF MediaPlayer.' - ) - ); + 'startUp' => array( + 'props' => 'Root of the application', + 'desc' => 'The first command that registers the main proxys and main view mediator.', + 'availability' => 'kdp' + ), + 'initiatApp' => array( + 'props' => 'None', + 'desc' => 'Start the init macro commands.', + 'availability' => 'kdp' + ), + 'skinLoaded' => array( + 'props' => 'None', + 'desc' => 'Dispatched when the skin is loaded.', + 'availability' => 'kdp' + ), + 'skinLoadFailed' => array( + 'props' => 'None', + 'desc' => 'Dispatched when the skin load failed.', + 'availability' => 'kdp' + ), + 'sourceReady' => array( + 'props' => 'None', + 'desc' => 'When the source is ready use to set the media element to the media player.', + 'availability' => 'kdp' + ), + 'kdpReady' => array( + 'props' => 'None', + 'desc' => 'Notify that the application is ready to be used and events can be listened to and that the loaded entry is ready to be played.' + ), + 'kdpEmpty' => array( + 'props' => 'None', + 'desc' => 'Notify that the application is ready to be used and events can be listened to, but no media was loaded' + ), + 'layoutReady' => array( + 'props' => 'None', + 'desc' => 'Dispatched when the init macro command is done and the layout is ready' + ), + 'playerReady' => array( + 'props' => 'None', + 'desc' => 'Dispatches when the player is ready to play the media' + ), + 'pluginsLoaded' => array( + 'props' => 'Plugins map object. Every key is a plugin ID, value is the status of the plugin (see PluginStatus class)', + 'desc' => 'Notification fired when all plugins finished the loading process.', + 'availability' => 'kdp' + ), + 'singlePluginLoaded' => array( + 'props' => 'The plugin ID', + 'desc' => 'Notification fired when a single plugin is ready', + 'availability' => 'kdp' + ), + 'singlePluginFailedToLoad' => array( + 'props' => 'The plugin ID', + 'desc' => 'Notification fired when a single plugin failed to load', + 'availability' => 'kdp' + ), + 'readyToPlay' => array( + 'props' => 'None', + 'desc' => 'Notification added with version 3.5.0, signifies that an entry / media is ready to be played in the KDP', + 'availability' => 'kdp' + ), + 'readyToLoad' => array( + 'props' => 'None', + 'desc' => 'Dispatched when the skin is loaded.' + ), + 'entryReady' => array( + 'props' => 'The entry object (KalturaBaseEntry)', + 'desc' => 'The Entry is set' + ), + 'entryFailed' => array( + 'props' => 'None', + 'desc' => 'Get Entry failed' + ), + 'entryNotAvailable' => array( + 'props' => 'entryId: The new entry ID', + 'desc' => "Notification fired when the BaseEntry object has been retrieved but KDP can't play the entry. Possible reasons: status not ready / moderation status/ access control", + 'availability' => 'kdp' + ), + 'mediaReady' => array( + 'props' => 'None', + 'desc' => 'The loadable media has completed loading' + ), + 'mediaError' => array( + 'props' => 'errorEvent: the media error event (MediaErrorEvent)', + 'desc' => 'The player notify on media error' + ), + 'mediaLoaded' => array( + 'props' => 'None', + 'desc' => 'From version 3.5.0, this notification replaces the MEDIA_READY notification as the catalyst for the MediaReadyCommand. This notification is indicative that the MediaElement constructed under the MediaProxy function prepareMediaElement is loaded into the OSMF MediaPlayer.' + ) + ); $listeners2 = array( - 'firstQuartile' => array( - 'props' => 'None', - 'desc' => 'The player reached 25% of the entry playback' - ), - 'secondQuartile' => array( - 'props' => 'None', - 'desc' => 'The player reached 50% of the entry playback' - ), - 'thirdQuartile' => array( - 'props' => 'None', - 'desc' => 'The player reached 75% of the entry playback' - ), - 'durationChange' => array( - 'props' => 'ewValue: new duration value', - 'desc' => 'Notify a change in the playing entry duration' - ), - 'rootResize' => array( - 'props' => 'width: new width, height: new height', - 'desc' => 'The player parent was resized', - 'availability' => 'kdp' - ), - 'mediaViewableChange' => array( - 'props' => 'None', - 'desc' => 'Used mainly to know when OSMF Media Player is viewable', - 'availability' => 'kdp' - ), - 'playerStateChange' => array( - 'props' => 'The new state (MediaPlayerState)', - 'desc' => "Dispatched when media player's state has changed (OSMF MediaPlayerState: uninitialized / loading / ready / playing / paused / buffering / playbackError" - ), - 'playerPaused' => array( - 'props' => 'None', - 'desc' => 'The player is now in pause state' - ), - 'playerPlayed' => array( - 'props' => 'None', - 'desc' => 'The player is now in play state' - ), - 'playerSeekStart' => array( - 'props' => 'None', - 'desc' => 'Notify about a seek activity that started' - ), - 'playerSeekEnd' => array( - 'props' => 'None', - 'desc' => 'Notify that the seek activity has finished' - ), - 'playerPlayEnd' => array( - 'props' => 'None', - 'desc' => 'The played media has reached the end of playback' - ), - 'playerUpdatePlayhead' => array( - 'props' => 'Player current time', - 'desc' => 'An update event that notifies about the progress in time when playback is running' - ), - 'openFullScreen' => array( - 'props' => 'None', - 'desc' => 'Player entered full screen mode' - ), - 'closeFullScreen' => array( - 'props' => 'None', - 'desc' => 'Player exited from full screen mode' - ), - 'hasCloseFullScreen' => array( - 'props' => 'None', - 'desc' => 'The fullscreen has just closed' - ), - 'hasOpenedFullScreen' => array( - 'props' => 'None', - 'desc' => 'The fullscreen was just activated' - ), - 'volumeChanged' => array( - 'props' => 'New volume value', - 'desc' => 'Notification about a change in the player volume' - ), - 'volumeChangedEnd' => array( - 'props' => 'New volume value', - 'desc' => 'Notification fired when volumeChanged process ended (volume slider thumb release / volume button click). Saves value to cookie if possible', - 'availability' => 'kdp' - ), - 'mute' => array( - 'props' => 'None', - 'desc' => 'Notification fired when the player is muted' - ), - 'unmute' => array( - 'props' => 'None', - 'desc' => 'Notification fired when the player is unmuted' - ), - 'bytesDownloadedChange' => array( - 'props' => 'newValue: bytes loaded', - 'desc' => 'Notify the current and the previous value of bytesDownloaded' - ), - 'bytesTotalChange' => array( - 'props' => 'newValue: total bytes', - 'desc' => "Dispatched by the player when the value of the property 'bytesTotal' has changed" - ), - 'bufferProgress' => array( - 'props' => 'newTime: new buffer time', - 'desc' => 'The player dispatches this event when the buffer time has changed' - ), - 'bufferChange' => array( - 'props' => 'true / false', - 'desc' => 'Dispatches when the player starts or stops buffering' - ), - 'scrubberDragStart' => array( - 'props' => 'None', - 'desc' => 'The scrubber had started being dragged', - 'availability' => 'kdp' - ), - 'scrubberDragEnd' => array( - 'props' => 'None', - 'desc' => 'The scrubber had stopped being dragged', - 'availability' => 'kdp' - ), - 'intelliSeek' => array( - 'props' => 'intelliseekTo: new position to seek to', - 'desc' => 'Notification fired when the player has started intelligent seeking', - 'availability' => 'kdp' - ), - 'freePreviewEnd' => array( - 'props' => 'id of the viewed entry', - 'desc' => 'A notification that is called on the hosting page with content that should be purchased after a short preview' - ), - 'changeMediaProcessStarted' => array( - 'props' => 'entryId: The new entry ID', - 'desc' => 'Notification fired when the first mini-command of the ChangeMedia macro command has started', - 'availability' => 'kdp' - ), - 'metadataReceived' => array( - 'props' => 'None', - 'desc' => 'Notification fired when entry custom data was received' - ), - 'cuePointsReceived' => array( - 'props' => 'Cue Points Map. Object mapping between start-times and arrays of the cue points found on that start-time', - 'desc' => "Notification fired when the player has successfully loaded an entry's cue-point configuration" - ), - 'switchingChangeStarted' => array( - 'props' => 'newIndex: The index of the bitrate the player started switching to. If auto, send -1, newBitrate: The bitrate the player started switching to. If auto, send null', - 'desc' => 'Notification dispatched when the player has started switching to a different dynamic bitrate' - ), - 'switchingChangeComplete' => array( - 'props' => 'currentIndex: The index of the bitrate that the player finished switching to, currentBitrate: The bitrate the player finished switching to', - 'desc' => 'Notification dispatched when the player has finished switching to a different dynamic bitrate' - ), - 'playbackComplete' => array( - 'props' => 'None', - 'desc' => 'Signifies the end of a media in the player (can be either ad or content)' - ) - ); + 'firstQuartile' => array( + 'props' => 'None', + 'desc' => 'The player reached 25% of the entry playback' + ), + 'secondQuartile' => array( + 'props' => 'None', + 'desc' => 'The player reached 50% of the entry playback' + ), + 'thirdQuartile' => array( + 'props' => 'None', + 'desc' => 'The player reached 75% of the entry playback' + ), + 'durationChange' => array( + 'props' => 'ewValue: new duration value', + 'desc' => 'Notify a change in the playing entry duration' + ), + 'rootResize' => array( + 'props' => 'width: new width, height: new height', + 'desc' => 'The player parent was resized', + 'availability' => 'kdp' + ), + 'mediaViewableChange' => array( + 'props' => 'None', + 'desc' => 'Used mainly to know when OSMF Media Player is viewable', + 'availability' => 'kdp' + ), + 'playerStateChange' => array( + 'props' => 'The new state (MediaPlayerState)', + 'desc' => "Dispatched when media player's state has changed (OSMF MediaPlayerState: uninitialized / loading / ready / playing / paused / buffering / playbackError" + ), + 'playerPaused' => array( + 'props' => 'None', + 'desc' => 'The player is now in pause state' + ), + 'playerPlayed' => array( + 'props' => 'None', + 'desc' => 'The player is now in play state' + ), + 'playerSeekStart' => array( + 'props' => 'None', + 'desc' => 'Notify about a seek activity that started' + ), + 'playerSeekEnd' => array( + 'props' => 'None', + 'desc' => 'Notify that the seek activity has finished' + ), + 'playerPlayEnd' => array( + 'props' => 'None', + 'desc' => 'The played media has reached the end of playback' + ), + 'playerUpdatePlayhead' => array( + 'props' => 'Player current time', + 'desc' => 'An update event that notifies about the progress in time when playback is running' + ), + 'openFullScreen' => array( + 'props' => 'None', + 'desc' => 'Player entered full screen mode' + ), + 'closeFullScreen' => array( + 'props' => 'None', + 'desc' => 'Player exited from full screen mode' + ), + 'hasCloseFullScreen' => array( + 'props' => 'None', + 'desc' => 'The fullscreen has just closed' + ), + 'hasOpenedFullScreen' => array( + 'props' => 'None', + 'desc' => 'The fullscreen was just activated' + ), + 'volumeChanged' => array( + 'props' => 'New volume value', + 'desc' => 'Notification about a change in the player volume' + ), + 'volumeChangedEnd' => array( + 'props' => 'New volume value', + 'desc' => 'Notification fired when volumeChanged process ended (volume slider thumb release / volume button click). Saves value to cookie if possible', + 'availability' => 'kdp' + ), + 'mute' => array( + 'props' => 'None', + 'desc' => 'Notification fired when the player is muted' + ), + 'unmute' => array( + 'props' => 'None', + 'desc' => 'Notification fired when the player is unmuted' + ), + 'bytesDownloadedChange' => array( + 'props' => 'newValue: bytes loaded', + 'desc' => 'Notify the current and the previous value of bytesDownloaded' + ), + 'bytesTotalChange' => array( + 'props' => 'newValue: total bytes', + 'desc' => "Dispatched by the player when the value of the property 'bytesTotal' has changed" + ), + 'bufferProgress' => array( + 'props' => 'newTime: new buffer time', + 'desc' => 'The player dispatches this event when the buffer time has changed' + ), + 'bufferChange' => array( + 'props' => 'true / false', + 'desc' => 'Dispatches when the player starts or stops buffering' + ), + 'scrubberDragStart' => array( + 'props' => 'None', + 'desc' => 'The scrubber had started being dragged', + 'availability' => 'kdp' + ), + 'scrubberDragEnd' => array( + 'props' => 'None', + 'desc' => 'The scrubber had stopped being dragged', + 'availability' => 'kdp' + ), + 'intelliSeek' => array( + 'props' => 'intelliseekTo: new position to seek to', + 'desc' => 'Notification fired when the player has started intelligent seeking', + 'availability' => 'kdp' + ), + 'freePreviewEnd' => array( + 'props' => 'id of the viewed entry', + 'desc' => 'A notification that is called on the hosting page with content that should be purchased after a short preview' + ), + 'changeMediaProcessStarted' => array( + 'props' => 'entryId: The new entry ID', + 'desc' => 'Notification fired when the first mini-command of the ChangeMedia macro command has started', + 'availability' => 'kdp' + ), + 'metadataReceived' => array( + 'props' => 'None', + 'desc' => 'Notification fired when entry custom data was received' + ), + 'cuePointsReceived' => array( + 'props' => 'Cue Points Map. Object mapping between start-times and arrays of the cue points found on that start-time', + 'desc' => "Notification fired when the player has successfully loaded an entry's cue-point configuration" + ), + 'switchingChangeStarted' => array( + 'props' => 'newIndex: The index of the bitrate the player started switching to. If auto, send -1, newBitrate: The bitrate the player started switching to. If auto, send null', + 'desc' => 'Notification dispatched when the player has started switching to a different dynamic bitrate' + ), + 'switchingChangeComplete' => array( + 'props' => 'currentIndex: The index of the bitrate that the player finished switching to, currentBitrate: The bitrate the player finished switching to', + 'desc' => 'Notification dispatched when the player has finished switching to a different dynamic bitrate' + ), + 'playbackComplete' => array( + 'props' => 'None', + 'desc' => 'Signifies the end of a media in the player (can be either ad or content)' + ) + ); $listeners3 = array( - 'adOpportunity' => array( - 'props' => 'context: context of the ad opportunity: pre, post, mid, cuePoint: the cue point object', - 'desc' => "Notification fired when the player's time progress reaches an ad cue point" - ), - 'sequenceItemPlayStart' => array( - 'props' => 'sequenceContext: pre / post / mid / main (see SequenceContextType class), currentIndex: index of current item', - 'desc' => 'Signifies the start of an entry that is part of a sequence', - 'availability' => 'kdp' - ), - 'sequenceItemPlayEnd' => array( - 'props' => 'sequenceContext: pre / post / mid / main (see SequenceContextType class), currentIndex: index of current item', - 'desc' => 'Signifies the end of an entry that is part of a sequence as opposed to the end of a regular entry', - 'availability' => 'kdp' - ), - 'preSequenceStart' => array( - 'props' => 'None', - 'desc' => 'Signifies the start of the pre-sequence' - ), - 'preSequenceComplete' => array( - 'props' => 'None', - 'desc' => 'Signifies the end of the pre-sequence' - ), - 'postSequenceStart' => array( - 'props' => 'None', - 'desc' => 'Signifies the start of the post-sequence' - ), - 'postSequenceComplete' => array( - 'props' => 'None', - 'desc' => 'Signifies the end of the post-sequence' - ), - 'midSequenceStart' => array( - 'props' => 'None', - 'desc' => 'Notification fired when the midroll sequence starts' - ), - 'midSequenceComplete' => array( - 'props' => 'None', - 'desc' => 'Notification fired when the midroll sequence ends' - ), - 'bumperStarted' => array( - 'props' => 'timeSlot: preroll / postroll', - 'desc' => 'Defines the value of the type property of a bumper start notification', - 'availability' => 'kdp' - ), - 'bumperClicked' => array( - 'props' => 'None', - 'desc' => 'Defines the value of the type property of a bumper click notification', - 'availability' => 'kdp' - ), - 'adStart' => array( - 'props' => 'timeSlot: pre / post / mid / main (see SequenceContextType class)', - 'desc' => 'Defines the value of the type property of an ad start notification' - ), - 'adClick' => array( - 'props' => 'timeSlot: pre / post / mid / main (see SequenceContextType class)', - 'desc' => 'Defines the value of the type property of an ad click notification' - ), - 'adEnd' => array( - 'props' => 'timeSlot: pre / post / mid / main (see SequenceContextType class)', - 'desc' => 'Defines the value of the type property of an ad end notification' - ), - 'firstQuartileOfAd' => array( - 'props' => 'timeSlot: pre / post / mid / main (see SequenceContextType class)', - 'desc' => 'Defines the value of the type property of 25% of ad notification', - 'availability' => 'kdp' - ), - 'midOfAd' => array( - 'props' => 'timeSlot: pre / post / mid / main (see SequenceContextType class)', - 'desc' => 'Defines the value of the type property of 50% of ad notification', - 'availability' => 'kdp' - ), - 'ThirdQuartileOfAd' => array( - 'props' => 'timeSlot: pre / post / mid / main (see SequenceContextType class)', - 'desc' => 'Defines the value of the type property of 75% of ad notification', - 'availability' => 'kdp' - ) - ); + 'adOpportunity' => array( + 'props' => 'context: context of the ad opportunity: pre, post, mid, cuePoint: the cue point object', + 'desc' => "Notification fired when the player's time progress reaches an ad cue point" + ), + 'sequenceItemPlayStart' => array( + 'props' => 'sequenceContext: pre / post / mid / main (see SequenceContextType class), currentIndex: index of current item', + 'desc' => 'Signifies the start of an entry that is part of a sequence', + 'availability' => 'kdp' + ), + 'sequenceItemPlayEnd' => array( + 'props' => 'sequenceContext: pre / post / mid / main (see SequenceContextType class), currentIndex: index of current item', + 'desc' => 'Signifies the end of an entry that is part of a sequence as opposed to the end of a regular entry', + 'availability' => 'kdp' + ), + 'preSequenceStart' => array( + 'props' => 'None', + 'desc' => 'Signifies the start of the pre-sequence' + ), + 'preSequenceComplete' => array( + 'props' => 'None', + 'desc' => 'Signifies the end of the pre-sequence' + ), + 'postSequenceStart' => array( + 'props' => 'None', + 'desc' => 'Signifies the start of the post-sequence' + ), + 'postSequenceComplete' => array( + 'props' => 'None', + 'desc' => 'Signifies the end of the post-sequence' + ), + 'midSequenceStart' => array( + 'props' => 'None', + 'desc' => 'Notification fired when the midroll sequence starts' + ), + 'midSequenceComplete' => array( + 'props' => 'None', + 'desc' => 'Notification fired when the midroll sequence ends' + ), + 'bumperStarted' => array( + 'props' => 'timeSlot: preroll / postroll', + 'desc' => 'Defines the value of the type property of a bumper start notification', + 'availability' => 'kdp' + ), + 'bumperClicked' => array( + 'props' => 'None', + 'desc' => 'Defines the value of the type property of a bumper click notification', + 'availability' => 'kdp' + ), + 'adStart' => array( + 'props' => 'timeSlot: pre / post / mid / main (see SequenceContextType class)', + 'desc' => 'Defines the value of the type property of an ad start notification' + ), + 'adClick' => array( + 'props' => 'timeSlot: pre / post / mid / main (see SequenceContextType class)', + 'desc' => 'Defines the value of the type property of an ad click notification' + ), + 'adEnd' => array( + 'props' => 'timeSlot: pre / post / mid / main (see SequenceContextType class)', + 'desc' => 'Defines the value of the type property of an ad end notification' + ), + 'firstQuartileOfAd' => array( + 'props' => 'timeSlot: pre / post / mid / main (see SequenceContextType class)', + 'desc' => 'Defines the value of the type property of 25% of ad notification', + 'availability' => 'kdp' + ), + 'midOfAd' => array( + 'props' => 'timeSlot: pre / post / mid / main (see SequenceContextType class)', + 'desc' => 'Defines the value of the type property of 50% of ad notification', + 'availability' => 'kdp' + ), + 'ThirdQuartileOfAd' => array( + 'props' => 'timeSlot: pre / post / mid / main (see SequenceContextType class)', + 'desc' => 'Defines the value of the type property of 75% of ad notification', + 'availability' => 'kdp' + ) + ); ?> \ No newline at end of file diff --git a/docs/api_methods.php b/docs/api_methods.php index 68a6f86ca4..9bd4f76f2c 100644 --- a/docs/api_methods.php +++ b/docs/api_methods.php @@ -1,73 +1,315 @@ array( - 'params' => 'None', - 'desc' => 'Command the player to pause.' - ), - 'doPlay' => array( - 'params' => 'None', - 'desc' => 'Command the player to play.' - ), - 'doStop' => array( - 'params' => 'None', - 'desc' => 'Command the player to stop. Pause and move the playhead to 0.' - ), - 'doSeek' => array( - 'params' => 'Position to seek to', - 'desc' => 'Command the player to seek.' - ), - 'doSwitch' => array( - 'params' => 'New stream bitrate', - 'desc' => 'Command the player to manually switch between streams within the resource.' - ), - 'cleanMedia' => array( - 'params' => 'None', - 'desc' => 'Cleans the media from the player.' - ), - 'doReplay' => array( - 'params' => 'None', - 'desc' => 'Notification fired when the player started replaying the video' - ), - 'alert' => array( - 'params' => 'message: alert message, title: alert title', - 'desc' => 'Pop up an alert' - ), - 'showUiElement' => array( - 'params' => 'id: ID of the element, show: true / false', - 'desc' => 'Show/hide an element from the layout', - 'availability' => 'kdp' - ), - 'changeMedia' => array( - 'params' => 'entryId: new entry ID / referenceId: new reference ID, flavorId: new flavor ID, if exists', - 'desc' => 'Start the init of change media macro commands' - ), - 'changeVolume' => array( - 'params' => 'New volume value', - 'desc' => 'An action to change the volume' - ), - 'removeAlerts' => array( - 'params' => 'None', - 'desc' => 'Fired when all alerts popped by the player need to be removed', - 'availability' => 'kdp' - ), - 'enableGui' => array( - 'params' => 'guiEnabled: true / false, enableType: full / controls', - 'desc' => 'Enable/disable GUI', - 'availability' => 'kdp' - ), - 'cancelAlerts' => array( - 'params' => 'None', - 'desc' => 'Hide Alerts at the Alerts Mediator', - 'availability' => 'kdp' - ), - 'changePreferredBitrate' => array( - 'params' => 'The new preferred bitrate', - 'desc' => 'Change the preferedFlavorBR on mediaProxy.vo object' - ), - 'liveEntry' => array( - 'params' => 'The URL resource of the played entry', - 'desc' => 'Call the LiveStream command which tests whether the stream is currently on air', - 'availability' => 'kdp' - ) - ); + 'doPause' => array( + 'params' => 'None', + 'desc' => 'Command the player to pause.' + ), + 'doPlay' => array( + 'params' => 'None', + 'desc' => 'Command the player to play.' + ), + 'doStop' => array( + 'params' => 'None', + 'desc' => 'Command the player to stop. Pause and move the playhead to 0.' + ), + 'doSeek' => array( + 'params' => 'Position to seek to', + 'desc' => 'Command the player to seek.' + ), + 'doSwitch' => array( + 'params' => 'New stream bitrate', + 'desc' => 'Command the player to manually switch between streams within the resource.' + ), + 'cleanMedia' => array( + 'params' => 'None', + 'desc' => 'Cleans the media from the player.' + ), + 'doReplay' => array( + 'params' => 'None', + 'desc' => 'Notification fired when the player started replaying the video' + ), + 'alert' => array( + 'params' => 'message: alert message, title: alert title', + 'desc' => 'Pop up an alert' + ), + 'showUiElement' => array( + 'params' => 'id: ID of the element, show: true / false', + 'desc' => 'Show/hide an element from the layout', + 'availability' => 'kdp' + ), + 'changeMedia' => array( + 'params' => 'entryId: new entry ID / referenceId: new reference ID, flavorId: new flavor ID, if exists', + 'desc' => 'Start the init of change media macro commands' + ), + 'changeVolume' => array( + 'params' => 'New volume value', + 'desc' => 'An action to change the volume' + ), + 'removeAlerts' => array( + 'params' => 'None', + 'desc' => 'Fired when all alerts popped by the player need to be removed', + 'availability' => 'kdp' + ), + 'enableGui' => array( + 'params' => 'guiEnabled: true / false, enableType: full / controls', + 'desc' => 'Enable/disable GUI', + 'availability' => 'kdp' + ), + 'cancelAlerts' => array( + 'params' => 'None', + 'desc' => 'Hide Alerts at the Alerts Mediator', + 'availability' => 'kdp' + ), + 'changePreferredBitrate' => array( + 'params' => 'The new preferred bitrate', + 'desc' => 'Change the preferedFlavorBR on mediaProxy.vo object' + ), + 'liveEntry' => array( + 'params' => 'The URL resource of the played entry', + 'desc' => 'Call the LiveStream command which tests whether the stream is currently on air', + 'availability' => 'kdp' + ) + ); + + /* should ideally auto generate or be in a separate file */ + $methodDocs = array( + 'kWidget.embed' => array( + 'desc'=>'Used to embed the Kaltura player against an element target in the DOM', + 'params' => array( + 'targetId' => array( + 'type' => 'String', // assumed + 'optional' => true, + 'desc' => 'The DOM player target id attribute string. ( if not included, you must include targetId in "settings" object )', + ), + 'settings'=> array( + 'type' => 'kWidget.settingsObject', + 'desc' => 'Object of settings to be used in embedding.' + ) + ), + 'returns' => array( + 'type' => 'boolean|null', + 'desc' => 'Returns boolean false if id not found' + ), + 'examples' => array( + array( + // either doc name or path can be defined ( for feature listed files vs non-feature listed ) + 'type' => 'link', + 'name' => 'kWidget.embed', + 'docPath' => 'kwidget' + ), + array( + 'type' => 'link', + 'name' => 'kWidget.embed playlist', + 'docFullPath' => 'modules/KalturaSupport/tests/kWidget.embed.playlist.qunit.html ' + ) + ) + ), + 'kWidget.thumbEmbed' => array( + 'desc'=>'Used to embed a thumbnail player. When the user clicks on the thumbnail kWidget.embed will be called with the provided settings.', + 'params' => array( + 'targetId' => array( + 'type' => 'String', // assumed + 'optional' => true, + 'desc' => 'The DOM player target id attribute string. ( if not included, you must include targetId in "settings" object', + ), + 'settings'=> array( + 'type' => 'kWidget.settingsObject', + 'desc' => 'Object of settings to be used in embedding.' + ) + ), + 'examples' => array( + array( + // either doc name or path can be defined ( for feature listed files vs non-feature listed ) + 'type' => 'link', + 'name' => 'kWidget.thumbEmbed', + 'docPath' => 'thumb' + ) + ) + ), + 'kWidget.getKalturaThumbUrl' => array( + 'desc'=>'Get video thumbnail URL.', + 'params' => array( + 'settings'=> array( + 'type' => 'kWidget.settingsObject', + 'desc' => 'Object of settings to be used in embedding.' + ) + ) + ), + 'kWidget.addReadyCallback' => array( + 'desc'=>'Adds a ready callback to be called after the KDP or HTML5 player is ready.', + 'params' => array( + 'readyCallback' => array( + 'type' => 'String', + 'desc' => 'Function to call after a player or widget is ready on the page.', + ) + ), + 'examples' => array( + array( + 'type' => 'link', + 'name' => 'kWidget.addReadyCallback', + 'docFullPath' => 'modules/KalturaSupport/tests/ChangeMediaEntry.qunit.html ' + ) + ) + ), + 'kWidget.destroy' => array( + 'desc'=>'Removes the player from the DOM.', + 'params' => array( + 'target' => array( + 'type' => 'String', + 'desc' => 'The target element or element ID to destroy.', + ) + ), + 'examples' => array( + array( + 'type' => 'link', + 'name' => 'kWidget.embed', + 'docPath' => 'kwidget' + ) + ) + ), + 'kWidget.api' => array( + 'desc' => 'The kWidget API object, used to create new instances of Kaltura API request.', + 'params' => array( + 'apiObject'=> array( + 'type' => 'kWidget.apiOptions', + 'desc' => 'Object of API settings to be used in API requests.' + ) + ), + 'methods'=> array( + 'doRequest' => array( + 'type' => 'function', + 'desc' => "( RequestObject, callback ) Run the API request, issue callback with API response data." + ) + ), + 'returns' => array( + 'type' => 'kWidget.api', + 'desc' => 'Returns an instance of the kWidget API object.' + ), + 'examples' => array( + array( + 'name' => 'kWidget.api', + 'docFullPath' => 'kWidget/tests/kWidget.api.html' + ), + array( + 'name' => 'kWidget.getSources', + 'docFullPath' => 'modules/KalturaSupport/tests/kWidget.getSources.html' + ) + ) + ), + 'sendNotification' => array( + 'desc'=>'Call a KDP notification (perform actions using this API, for example: play, pause, changeMedia, etc.)', + 'params' => array( + 'notificationName' => array( + 'type' => 'String', + 'desc' => 'The name of notification to call.', + ), + 'notificationData'=> array( + 'type' => 'Object', + 'optional' => true, + 'desc' => 'The custom data to pass with the notification.' + ) + ) + ), + 'addJsListener' => array( + 'desc'=>'Register a javascript handler function for a KDP notification', + 'params' => array( + 'listenerString' => array( + 'type' => 'String', + 'desc' => 'The name of the notification to listen to.', + ), + 'jsFunctionName'=> array( + 'type' => 'String', + 'desc' => 'The name of the JavaScript handler function.' + ) + ) + ), + 'evaluate' => array( + 'desc'=>"Retrieves the value of a KDP model property or component's property, using the standard OOP dot notation inside curly braces", + 'params' => array( + 'object.property.properties' => array( + 'type' => 'String', + 'desc' => 'The reference to the component object with data that you want to extract. Enclose the reference in curly braces within single or double quotation marks.', + ) + ) + ), + 'setKDPAttribute' => array( + 'desc'=>"Change a value of a player configuration property or component's property using the standard OOP dot notation.", + 'params' => array( + 'object' => array( + 'type' => 'String', + 'desc' => 'A string that represents the object you want to modify. Use standard dot notation to specify sub-objects, for example, configProxy.flashvars' + ),'property' => array( + 'type' => 'String', + 'desc' => 'The player property that you want to modify.' + ),'value' => array( + 'type' => 'String', + 'desc' => 'The new value that you want to set for the player property.' + ) + ) + ), + 'jsCallbackReady' => array( + 'desc'=>"A JavaScript function on the hosting web page that is called by KDP when the setup of externalInterface APIs is completed.", + 'params' => array( + 'objectId' => array( + 'type' => 'String', + 'desc' => 'Represents the identifier of the player that is embedded.' + ) + ) + ) + ); + $objectDefinitions = array( + 'kWidget.apiOptions' => array( + 'wid'=> array( + 'desc' => "The partner id to be used in the API request." + ), + 'ks' => array( + 'desc' => "The Kaltura secret to be used in the request, if not supplied an anonymous KS will be generated and used." + ), + 'serviceUrl' => array( + 'desc' => 'Can be overwritten to target a different Kaltura server.', + 'default' => 'http://cdnapi.kaltura.com' + ), + 'serviceBase' => array( + 'desc' => "Can be overwritten to alternate Kaltura service path.", + 'default' => '/api_v3/index.php?service=' + ), + 'statsServiceUrl' => array( + 'desc' => "Default supplied via Kaltura library include, can be overwritten to alternate URL for core analytics events.", + 'default' => 'http://stats.kaltura.com' + ), + 'disableCache' => array( + 'desc' => "Sends no-cache param to API, for a fresh result. Can hurt performance and CDN cachability should be used sparingly.", + 'default' => 'false' + ) + ), + 'kWidget.settingsObject' => array( + 'targetId' => array( + 'desc' => 'The DOM player target id attribute string if not defined as top level param.' + ), + 'wid' => array( + 'desc' => 'Widget id, usually the partner id prefixed by underscore.' + ), + 'uiconf_id' => array( + 'type' => 'Number', + 'optional' => true, + 'desc' => 'The player uiconf_id' + ), + 'entry_id' => array( + 'desc' => 'The content entry id. Can be left empty for a JavaScript based entry id.' + ), + 'flashvars' => array( + 'type' => 'Object', + 'desc' => 'Runtime configuration object, can override arbitrary uiVars and plugin config.' + ), + 'params' => array( + 'type' => 'Object', + 'desc' => 'Runtime configuration object, can override arbitrary uiVars and plugin config.' + ), + 'cache_st' => array( + 'optional'=> true, + 'desc' => 'String to burst player cache' + ) + ) + ); + ?> \ No newline at end of file diff --git a/docs/api_uivars.php b/docs/api_uivars.php index 4c8dd8e479..aed879e23a 100644 --- a/docs/api_uivars.php +++ b/docs/api_uivars.php @@ -1,800 +1,806 @@ array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - 'Kaltura.ServiceBase' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - 'Kaltura.StatsServiceUrl' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - 'Kaltura.NoApiCache' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - 'Kaltura.ForceIframeEmbed' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - 'Kaltura.KWidgetPsPath' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - 'Kaltura.AllowIframeRemoteService' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - '' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - '' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - 'Kaltura.ForceFlashOnDesktop' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - 'Kaltura.EnableEmbedUiConfJs' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - 'Kaltura.ForceFlashOnIE10' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - 'Kaltura.IframeRewrite' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - 'Kaltura.LicenseServerURL' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - 'Kaltura.BlackVideoSources' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - 'Kaltura.UseManifestUrls' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - 'Kaltura.CdnUrl' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - 'Kaltura.Protocol' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - 'Kaltura.UseFlavorIdsUrls' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ), - 'Kaltura.LeadHLSOnAndroid' => array( - 'type' => 'String', - 'desc' => '', - 'default' => '', - 'example' => '' - ),*/ - 'Kaltura.UseAppleAdaptive' => array( +$uiVars = array( + 'services' => array( + 'desc' => "Kaltura service variables define define respective Kaltura API configuration.", + 'vars' => array( + 'Kaltura.ServiceUrl' => array( 'type' => 'String', - 'desc' => 'If apple HLS streams should be used when available', + 'desc' => 'The API service URL, used to for all API calls. Can be overwritten for on-prem or api proxy setups.', + 'default' => 'http://cdnapi.kaltura.com', + 'example' => '' + ), + 'Kaltura.ServiceBase' => array( + 'type' => 'String', + 'desc' => 'URL Path on the server to the API services.', + 'default' => '/api_v3/index.php?service=', + 'example' => '' + ), + 'Kaltura.StatsServiceUrl' => array( + 'type' => 'String', + 'desc' => 'The URL used for all Kaltura analytics events.', + 'default' => 'http://stats.kaltura.com', + 'example' => '' + ), + 'Kaltura.NoApiCache' => array( + 'type' => 'String', + 'desc' => 'Set to true to disable the player API cache.', + 'default' => 'false', + 'example' => '' + ), + 'Kaltura.ForceIframeEmbed' => array( + 'type' => 'String', + 'desc' => 'Set to true to force iframe output with player API. Useful for simulating iframe syndication environment.', + 'default' => 'false', + 'example' => '' + ), + 'Kaltura.KWidgetPsPath' => array( + 'type' => 'String', + 'desc' => 'Used to append path to additional library of professional service scripts and plugins, that are outside the mwEmbed repository. ', + 'default' => '../kwidget-ps/', + 'example' => '' + ), + 'Kaltura.AllowIframeRemoteService' => array( + 'type' => 'String', + 'desc' => 'By default external API service URLs are not allowed, set this to true to allow them', + 'default' => 'false', + 'example' => '' + ), + 'Kaltura.ForceFlashOnDesktop' => array( + 'type' => 'String', + 'desc' => 'If the player should be forced to use flash on desktop.', + 'default' => 'false', + 'example' => '' + ), + 'Kaltura.EnableEmbedUiConfJs' => array( + 'type' => 'String', + 'desc' => 'If the player should request uiConf javascript prior to embed', + 'default' => 'false', + 'example' => '' + ), + 'Kaltura.ForceFlashOnIE10' => array( + 'type' => 'String', + 'desc' => 'Will force flash exclusively on IE10', + 'default' => 'false', + 'example' => '' + ), + 'Kaltura.IframeRewrite' => array( + 'type' => 'String', + 'desc' => 'Enables the HTML5 player. A legacy flag to convert objects to iframes', + 'default' => 'true', + 'example' => '' + ), + 'Kaltura.LicenseServerURL' => array( + 'type' => 'String', + 'desc' => 'The playReady license server URL.', + 'default' => 'null', + 'example' => '' + ), + 'Kaltura.BlackVideoSources' => array( + 'type' => 'String', + 'desc' => "A array of assets used for black video streams. + Used to capture user gestures against a valid asset where the actual asset is not yet available", + 'default' => '', + 'example' => '' + ), + 'Kaltura.UseManifestUrls' => array( + 'type' => 'String', + 'desc' => 'Used to designate usage of playMainfest URL type instead of legacy flvclipper Kaltura media URLs', + 'default' => 'true', + 'example' => '' + ), + 'Kaltura.CdnUrl' => array( + 'type' => 'String', + 'desc' => 'The CDN URL used to construct Kaltura media asset URLs', + 'default' => 'http://cdnakmi.kaltura.com', + 'example' => '' + ), + 'Kaltura.Protocol' => array( + 'type' => 'String', + 'desc' => 'The current protocol of player instance, http or https. Protocol relative urls can\'t be used where different CDN prefixes for secure and standard http', + 'default' => 'http', + 'example' => '' + ), + 'Kaltura.UseFlavorIdsUrls' => array( + 'type' => 'String', + 'desc' => 'If the adaptive streams should be dynamically constructed passing along respective flavor list per device capabilities.', + 'default' => 'true', + 'example' => '' + ), + 'Kaltura.LeadHLSOnAndroid' => array( + 'type' => 'String', + 'desc' => 'If Apple HLS streams should be used when available on Android devices, + by default progressive streams are used on Android because of Android HLS compatibility issues.', + 'default' => 'false', + 'example' => '../modules/KalturaSupport/tests/UseHLS_WhereAvailable.qunit.html' + ), + 'Kaltura.UseAppleAdaptive' => array( + 'type' => 'String', + 'desc' => 'If apple HLS streams should be used when available', + 'default' => 'true', + 'example' => '../modules/KalturaSupport/tests/UseHLS_WhereAvailable.qunit.html' + ), + 'httpProtocol' => array( + 'type' => 'String', + 'desc' => 'The HTTP protocol to load the KDP application from', + 'default' => 'Trimmed protocol of the URL the KDP was loaded from', + 'availability' => 'kdp', + 'example' => '' + ), + 'host' => array( + 'type' => 'String', + 'desc' => 'The URL of the Kaltura server to work with', + 'default' => '', + 'example' => '' + ), + 'cdnHost' => array( + 'type' => 'String', + 'desc' => 'The base URL of the CDN to load media and assets from', + 'default' => 'The host parameter value', + 'example' => '' + ), + 'clientTag' => array( + 'type' => 'String', + 'desc' => 'A custom text that is concatenated to KDP version. The tag is used by the Kaltura server widget caching mechanism and for tracking and analytics', + 'default' => 'KDP:KDP_VERSION', + 'example' => '' + ), + 'srvUrl' => array( + 'type' => 'String', + 'desc' => 'Reserved for future use, determine the API services part of the base Kaltura API calls', + 'default' => '', + 'availability' => 'kdp', + 'example' => '' + ), + 'partnerId' => array( + 'type' => 'String', + 'desc' => 'The id of the current Kaltura partner', + 'default' => '', + 'example' => '' + ), + 'ks' => array( + 'type' => 'String', + 'desc' => 'Kaltura Session', + 'default' => 'By default, the KDP generates a KS by calling the widget.get API', + 'example' => '' + ), + 'referrer' => array( + 'type' => 'String', + 'desc' => 'The URL of the hosting web page for tracking and analytics', + 'default' => '', + 'example' => '' + ), + 'disableReferrerOverride' => array( + 'type' => 'Boolean', + 'desc' => 'Flag indicating whether to take the referrer from the page (if true) or from the referrer Flashvar (if false)', + 'default' => 'false', + 'availability' => 'kdp', + 'example' => '' + ), + 'storageId' => array( + 'type' => 'String', + 'desc' => "This Flashvar contains the storageId from which the entry loads (assuming there is such storage. If there isn't, there is no reason to pass this Flashvar)", + 'default' => '', + 'example' => '' + ), + 'jsTraces' => array( + 'type' => 'Boolean', + 'desc' => "Flag indicating whether to print traces to a box in the page. Useful when there's no Flash debugger version", + 'default' => 'false', + 'availability' => 'kdp', + 'example' => '' + ), + 'centerPreloader' => array( + 'type' => 'Boolean', + 'desc' => 'Flag indicating whether to center the preloader SWF. Should be true in case the preloader registration point is not at its center.', + 'default' => 'false', + 'availability' => 'kdp', + 'example' => '' + ), + 'usePreloaderBufferAnimation' => array( + 'type' => 'Boolean', + 'desc' => 'Flag indication whether we should use the preloader SWF animation as the buffering animation. if "false", buffering animation is taken from "kspin" class in KDP skin.', + 'default' => 'false', + 'availability' => 'kdp', + 'example' => '' + ) + ) + ), + 'mediaEntry' => array( + 'desc' => "Kaltura mediaEntry variables enable controls of flavor and protocol selection.", + 'vars' => array( + 'entryId' => array( + 'type' => 'String', + 'desc' => 'Valid Kaltura media entry id or a media URL (to use URL set sourceType=URL)', + 'default' => '', + 'example' => '' + ), + 'referenceId' => array( + 'type' => 'String', + 'desc' => "Reference Id is an alternate unique identifier for media assets. Can be used instead of the entry id. + The player will use the first found matching referenceId found.", + 'default' => '', + 'example' => '../modules/KalturaSupport/tests/ReferenceId.html' + ), + 'flavorId' => array( + 'type' => 'String', + 'desc' => 'The flavor asset id of the media entry being played (applicable only when sourceType=entryId)', + 'default' => '', + 'example' => '' + ), + 'sourceType' => array( + 'type' => 'String', + 'desc' => 'The type of media source to load, either a URL or id of valid Kaltura media entry', + 'default' => 'entryId', + 'example' => '' + ), + 'streamerType' => array( + 'type' => 'String', + 'desc' => 'The media source streaming protocol to use (http / rtmp / live / hdnetwork)', + 'default' => 'http', + 'example' => '' + ), + 'streamerUrl' => array( + 'type' => 'String', + 'desc' => "A full RTMP URL to the streaming application that will be used as the streaming provider, e.g. 'rtmp://rtmpakmi.kaltura.com/ondemand' (Used by the FMSURL OSMF class)", + 'default' => '', + 'availability' => 'kdp', + 'example' => '' + ), + 'streamFormat' => array( + 'type' => 'String', + 'desc' => 'Defines the video type of the RTMP stream to be played. To play mp4 streams over RTMP, pass streamFormat=mp4', + 'default' => 'undefined', + 'availability' => 'kdp', + 'example' => '' + ), + 'rtmpFlavors' => array( + 'type' => 'String', + 'desc' => 'Determine whether to use a multi-bitrate content flavors for dynamic streaming (set to 1)', + 'default' => 'undefined', + 'availability' => 'kdp', + 'example' => '' + ), + 'useRtmptFallback' => array( + 'type' => 'Boolean', + 'desc' => 'Flag indicating whether KDP should try to connect to rtmpt/rtmpte when mediaProtocol is rtmp/rtmpe.', 'default' => 'true', + 'availability' => 'kdp', + 'example' => '' + ), + 'disableBitrateCookie' => array( + 'type' => 'Boolean', + 'desc' => 'Flag indicating whether the KDP should take the bitrate from the Flash cookie', + 'default' => 'false', + 'example' => '' + ), + 'requiredMetadataFields' => array( + 'type' => 'Boolean', + 'desc' => "This Flashvar is a flag indicating whether the player should request entry metadata", + 'default' => 'false', + 'example' => '' + ), + 'metadataProfileId' => array( + 'type' => 'String', + 'desc' => 'This Flashvar contains a specific custom metadata profile id to deliver. If it is not passed, the KDP delivers the latest custom metadata profile', + 'default' => '', 'example' => '' - ), - 'httpProtocol' => array( - 'type' => 'String', - 'desc' => 'The HTTP protocol to load the KDP application from', - 'default' => 'Trimmed protocol of the URL the KDP was loaded from', - 'availability' => 'kdp', - 'example' => '' - ), - 'host' => array( - 'type' => 'String', - 'desc' => 'The URL of the Kaltura server to work with', - 'default' => '', - 'example' => '' - ), - 'cdnHost' => array( - 'type' => 'String', - 'desc' => 'The base URL of the CDN to load media and assets from', - 'default' => 'The host parameter value', - 'example' => '' - ), - 'clientTag' => array( - 'type' => 'String', - 'desc' => 'A custom text that is concatenated to KDP version. The tag is used by the Kaltura server widget caching mechanism and for tracking and analytics', - 'default' => 'KDP:KDP_VERSION', - 'example' => '' - ), - 'srvUrl' => array( - 'type' => 'String', - 'desc' => 'Reserved for future use, determine the API services part of the base Kaltura API calls', - 'default' => '', - 'availability' => 'kdp', - 'example' => '' - ), - 'partnerId' => array( - 'type' => 'String', - 'desc' => 'The id of the current Kaltura partner', - 'default' => '', - 'example' => '' - ), - 'ks' => array( - 'type' => 'String', - 'desc' => 'Kaltura Session', - 'default' => 'By default, the KDP generates a KS by calling the widget.get API', - 'example' => '' - ), - 'referrer' => array( - 'type' => 'String', - 'desc' => 'The URL of the hosting web page for tracking and analytics', - 'default' => '', - 'example' => '' - ), - 'disableReferrerOverride' => array( - 'type' => 'Boolean', - 'desc' => 'Flag indicating whether to take the referrer from the page (if true) or from the referrer Flashvar (if false)', - 'default' => 'false', - 'availability' => 'kdp', - 'example' => '' - ), - 'storageId' => array( - 'type' => 'String', - 'desc' => "This Flashvar contains the storageId from which the entry loads (assuming there is such storage. If there isn't, there is no reason to pass this Flashvar)", - 'default' => '', - 'example' => '' - ), - 'jsTraces' => array( - 'type' => 'Boolean', - 'desc' => "Flag indicating whether to print traces to a box in the page. Useful when there's no Flash debugger version", - 'default' => 'false', - 'availability' => 'kdp', - 'example' => '' - ), - 'centerPreloader' => array( - 'type' => 'Boolean', - 'desc' => 'Flag indicating whether to center the preloader SWF. Should be true in case the preloader registration point is not at its center.', - 'default' => 'false', - 'availability' => 'kdp', - 'example' => '' - ), - 'usePreloaderBufferAnimation' => array( - 'type' => 'Boolean', - 'desc' => 'Flag indication whether we should use the preloader SWF animation as the buffering animation. if "false", buffering animation is taken from "kspin" class in KDP skin.', - 'default' => 'false', - 'availability' => 'kdp', - 'example' => '' + ), + 'getCuePointsData' => array( + 'type' => 'Boolean', + 'desc' => 'This Flashvar is a flag indicating whether the player should deliver cue-point data related to the current playing entry', + 'default' => 'true', + 'example' => '' + ), + 'loadThumbnailWithKs' => array( + 'type' => 'Boolean', + 'desc' => 'Flag indicating whether the KDP should append the KS to the thumbnail request. Default value "false" to take advantage of caching.', + 'default' => 'false', + 'example' => '' + ), + 'noThumbnail' => array( + 'type' => 'Boolean', + 'desc' => 'Flag indicating whether the KDP should forgo loading the thumbnail', + 'default' => 'false', + 'availability' => 'kdp', + 'example' => '' + ) ) - ); - - $uiVarsMediaEntry = array( - 'entryId' => array( - 'type' => 'String', - 'desc' => 'Valid Kaltura media entry id or a media URL (to use URL set sourceType=URL)', - 'default' => '', - 'example' => '' - ), - 'flavorId' => array( - 'type' => 'String', - 'desc' => 'The flavor asset id of the media entry being played (applicable only when sourceType=entryId)', - 'default' => '', - 'example' => '' - ), - 'sourceType' => array( - 'type' => 'String', - 'desc' => 'The type of media source to load, either a URL or id of valid Kaltura media entry', - 'default' => 'entryId', - 'example' => '' - ), - 'streamerType' => array( - 'type' => 'String', - 'desc' => 'The media source streaming protocol to use (http / rtmp / live / hdnetwork)', - 'default' => 'http', - 'example' => '' - ), - 'streamerUrl' => array( - 'type' => 'String', - 'desc' => "A full RTMP URL to the streaming application that will be used as the streaming provider, e.g. 'rtmp://rtmpakmi.kaltura.com/ondemand' (Used by the FMSURL OSMF class)", - 'default' => '', - 'availability' => 'kdp', - 'example' => '' - ), - 'streamFormat' => array( - 'type' => 'String', - 'desc' => 'Defines the video type of the RTMP stream to be played. To play mp4 streams over RTMP, pass streamFormat=mp4', - 'default' => 'undefined', - 'availability' => 'kdp', - 'example' => '' - ), - 'rtmpFlavors' => array( - 'type' => 'String', - 'desc' => 'Determine whether to use a multi-bitrate content flavors for dynamic streaming (set to 1)', - 'default' => 'undefined', - 'availability' => 'kdp', - 'example' => '' - ), - 'useRtmptFallback' => array( - 'type' => 'Boolean', - 'desc' => 'Flag indicating whether KDP should try to connect to rtmpt/rtmpte when mediaProtocol is rtmp/rtmpe.', - 'default' => 'true', - 'availability' => 'kdp', - 'example' => '' - ), - 'disableBitrateCookie' => array( - 'type' => 'Boolean', - 'desc' => 'Flag indicating whether the KDP should take the bitrate from the Flash cookie', - 'default' => 'false', - 'example' => '' - ), - 'referenceId' => array( - 'type' => 'String', - 'desc' => "Reference Id of an entry to be played (instead of entryId). The player gets a list of entries with matching referenceId and plays the first in the list.", - 'default' => '', - 'example' => '' - ), - 'requiredMetadataFields' => array( - 'type' => 'Boolean', - 'desc' => "This Flashvar is a flag indicating whether the player should request entry metadata", - 'default' => 'false', - 'example' => '' - ), - 'metadataProfileId' => array( - 'type' => 'String', - 'desc' => 'This Flashvar contains a specific custom metadata profile id to deliver. If it is not passed, the KDP delivers the latest custom metadata profile', - 'default' => '', - 'example' => '' - ), - 'getCuePointsData' => array( - 'type' => 'Boolean', - 'desc' => 'This Flashvar is a flag indicating whether the player should deliver cue-point data related to the current playing entry', - 'default' => 'true', - 'example' => '' - ), - 'loadThumbnailWithKs' => array( - 'type' => 'Boolean', - 'desc' => 'Flag indicating whether the KDP should append the KS to the thumbnail request. Default value "false" to take advantage of caching.', - 'default' => 'false', - 'example' => '' - ), - 'noThumbnail' => array( - 'type' => 'Boolean', - 'desc' => 'Flag indicating whether the KDP should forgo loading the thumbnail', - 'default' => 'false', - 'availability' => 'kdp', - 'example' => '' + ), + 'layout' => array( + 'desc' => "Controls basic layout properties and provides access to player config ids.", + 'vars' => array( + 'widgetId' => array( + 'type' => 'String', + 'desc' => 'The widget id as provided by Preview & Embed in KMC (if unsure use _partnerId e.g. _309)', + 'default' => '', + 'example' => '' + ), + 'uiConfId' => array( + 'type' => 'String', + 'desc' => 'The player uiConf id as provided by KMC (or by calling uiConf.add api)', + 'default' => '', + 'example' => '' + ), + 'kml' => array( + 'type' => 'String', + 'desc' => 'The source from which to load the KDP uiConf (KML=Kaltura Meta ui Language). If undefined, the kml will be loaded from the Kaltura server via uiConf.get api. Options are: local / inject', + 'default' => 'undefined', + 'availability' => 'kdp', + 'example' => '' + ), + 'kmlPath' => array( + 'type' => 'String', + 'desc' => 'An accessible path to valid kml file (use with kml=local)', + 'default' => 'config.xml', + 'availability' => 'kdp', + 'example' => '' + ), + 'embeddedWidgetData' => array( + 'type' => 'String', + 'desc' => "Valid uiConf XML result, that is used by the 'KDP wrapper'; A Flash application that wraps the KDP for caching purposes", + 'default' => 'null', + 'availability' => 'kdp', + 'example' => '' + ), + 'disableAlerts' => array( + 'type' => 'Boolean', + 'desc' => 'Disable the alert boxes', + 'default' => 'false', + 'example' => '' + ), + 'fileSystemMode' => array( + 'type' => 'Boolean', + 'desc' => 'Use to load the uiConf XML and skin assets from predefined path when debugging or loading KDP from local file system', + 'default' => 'false', + 'availability' => 'kdp', + 'example' => '' + ), + 'debugMode' => array( + 'type' => 'Boolean', + 'desc' => 'Reserved for future use or use by plugins; Usually used to allow Flash trace commands', + 'default' => 'false', + 'example' => '' + ), + 'disableOnScreenClick' => array( + 'type' => 'Boolean', + 'desc' => 'This Flashvar configures whether the on-screen click in KDP pauses/resumes playback', + 'default' => 'false', + 'example' => '' + ), + 'KalturaSupport_ForceUserAgent' => array( + 'type' => 'String', + 'desc' => 'Enable forcing a specific user agent by setting the user agent string. Player rules are validated against this user agent string', + 'default' => '', + 'example' => '' + ), + 'disableForceMobileHTML5' => array( + 'type' => 'Boolean', + 'desc' => 'Disables forced usage of the HTML5 player set by the forceMobileHTML5 Flash var', + 'default' => '', + 'example' => '../modules/KalturaSupport/tests/UserAgentPlayerRules.html' + ), + 'forceMobileHTML5' => array( + 'type' => 'Boolean ', + 'desc' => 'When set to true, forces the usage of the HTML5 player', + 'default' => '', + 'example' => '' + ), + 'alertForCookies' => array( + 'type' => 'Boolean', + 'desc' => 'When set to true, pops a user confirmation alert when the player needs to save a cookie in the local machine', + 'default' => 'false', + 'example' => '../modules/KalturaSupport/tests/AlertForCookies.qunit.html' + ), + 'relativeCortadoAppletPath' => array( + 'type' => 'String', + 'desc' => 'The default location for Java Cortado Applet', + 'default' => '', + 'example' => '' + ), + 'disableTrackElement' => array( + 'type' => 'Boolean', + 'desc' => 'Under iOS - if there are captions within the HLS stream, users should set disableTrackElement to true to prevent caption duplications', + 'default' => 'false', + 'example' => '../modules/KalturaSupport/tests/ClosedCaptions.html' + ), + 'KalturaSupport.LeadWithHTML5' => array( + 'type' => 'Boolean', + 'desc' => 'When set to true, first tries to load the HTML5 player and if loading fails, loads the Flash player', + 'default' => 'false', + 'example' => '' + ), + 'KalturaSupport.PlayerConfig' => array( + 'type' => 'Object', + 'desc' => 'The Kaltura player configuration object', + 'default' => '', + 'example' => '' + ) ) - ); - - $uiVarsLayout = array( - 'widgetId' => array( - 'type' => 'String', - 'desc' => 'The widget id as provided by Preview & Embed in KMC (if unsure use _partnerId e.g. _309)', - 'default' => '', - 'example' => '' - ), - 'uiConfId' => array( - 'type' => 'String', - 'desc' => 'The player uiConf id as provided by KMC (or by calling uiConf.add api)', - 'default' => '', - 'example' => '' - ), - 'kml' => array( - 'type' => 'String', - 'desc' => 'The source from which to load the KDP uiConf (KML=Kaltura Meta ui Language). If undefined, the kml will be loaded from the Kaltura server via uiConf.get api. Options are: local / inject', - 'default' => 'undefined', - 'availability' => 'kdp', - 'example' => '' - ), - 'kmlPath' => array( - 'type' => 'String', - 'desc' => 'An accessible path to valid kml file (use with kml=local)', - 'default' => 'config.xml', - 'availability' => 'kdp', - 'example' => '' - ), - 'embeddedWidgetData' => array( - 'type' => 'String', - 'desc' => "Valid uiConf XML result, that is used by the 'KDP wrapper'; A Flash application that wraps the KDP for caching purposes", - 'default' => 'null', - 'availability' => 'kdp', - 'example' => '' - ), - 'disableAlerts' => array( - 'type' => 'Boolean', - 'desc' => 'Disable the alert boxes', - 'default' => 'false', - 'example' => '' - ), - 'fileSystemMode' => array( - 'type' => 'Boolean', - 'desc' => 'Use to load the uiConf XML and skin assets from predefined path when debugging or loading KDP from local file system', - 'default' => 'false', - 'availability' => 'kdp', - 'example' => '' - ), - 'debugMode' => array( - 'type' => 'Boolean', - 'desc' => 'Reserved for future use or use by plugins; Usually used to allow Flash trace commands', - 'default' => 'false', - 'example' => '' - ), - 'disableOnScreenClick' => array( - 'type' => 'Boolean', - 'desc' => 'This Flashvar configures whether the on-screen click in KDP pauses/resumes playback', - 'default' => 'false', - 'example' => '' - ), - 'KalturaSupport_ForceUserAgent' => array( - 'type' => 'String', - 'desc' => 'Enable forcing a specific user agent by setting the user agent string. Player rules are validated against this user agent string', - 'default' => '', - 'example' => '' - ), - 'disableForceMobileHTML5' => array( - 'type' => 'Boolean', - 'desc' => 'Disables forced usage of the HTML5 player set by the forceMobileHTML5 Flash var', - 'default' => '', - 'example' => '../modules/KalturaSupport/tests/UserAgentPlayerRules.html' - ), - 'forceMobileHTML5' => array( - 'type' => 'Boolean ', - 'desc' => 'When set to true, forces the usage of the HTML5 player', - 'default' => '', - 'example' => '' - ), - 'alertForCookies' => array( - 'type' => 'Boolean', - 'desc' => 'When set to true, pops a user confirmation alert when the player needs to save a cookie in the local machine', - 'default' => 'false', - 'example' => '../modules/KalturaSupport/tests/AlertForCookies.qunit.html' - ), - 'relativeCortadoAppletPath' => array( - 'type' => 'String', - 'desc' => 'The default location for Java Cortado Applet', - 'default' => '', - 'example' => '' - ), - 'disableTrackElement' => array( - 'type' => 'Boolean', - 'desc' => 'Under iOS - if there are captions within the HLS stream, users should set disableTrackElement to true to prevent caption duplications', - 'default' => 'false', - 'example' => '../modules/KalturaSupport/tests/ClosedCaptions.html' - ), - 'KalturaSupport.LeadWithHTML5' => array( - 'type' => 'Boolean', - 'desc' => 'When set to true, first tries to load the HTML5 player and if loading fails, loads the Flash player', - 'default' => 'false', - 'example' => '' - ), - 'KalturaSupport.PlayerConfig' => array( - 'type' => 'Object', - 'desc' => 'The Kaltura player configuration object', - 'default' => '', - 'example' => '' + ), + 'playback' => array( + 'desc' => "UiVars for contoling basic playback.", + 'vars' => array( + 'autoPlay' => array( + 'type' => 'Boolean', + 'desc' => "Auto play single media (doesn't apply to playlists)", + 'default' => 'false', + 'example' => '../modules/KalturaSupport/tests/AutoPlay.qunit.html' + ), + 'autoRewind' => array( + 'type' => 'Boolean', + 'desc' => 'Determine whether the first or the last frame of the media will show when playback ends', + 'default' => 'false', + 'example' => '' + ), + 'autoMute' => array( + 'type' => 'Boolean', + 'desc' => 'Determine whether to start playback with volume muted (usually used by video ads or homepage auto play videos)', + 'default' => 'false', + 'example' => '../modules/KalturaSupport/tests/PlaylistAutoMute.html' + ), + 'loop' => array( + 'type' => 'Boolean', + 'desc' => 'Indicates whether the media should be played again after playback has completed', + 'default' => 'false', + 'example' => '../modules/KalturaSupport/tests/Loop.qunit.html' + ), + 'stretchVideo' => array( + 'type' => 'Boolean', + 'desc' => 'When true, stretchs the video to fill its container even if video aspect ratio breaks', + 'default' => 'false', + 'example' => '' + ), + 'adsOnReplay' => array( + 'type' => 'Boolean', + 'desc' => 'Indicates whether to play ads after video replay', + 'default' => 'false', + 'example' => '../modules/DoubleClick/tests/DoubleClickManagedPlayerAdApi.qunit.html' + ) ) - ); - - $uiVarsPlayback = array( - 'autoPlay' => array( - 'type' => 'Boolean', - 'desc' => "Auto play single media (doesn't apply to playlists)", - 'default' => 'false', - 'example' => '../modules/KalturaSupport/tests/AutoPlay.qunit.html' - ), - 'autoRewind' => array( - 'type' => 'Boolean', - 'desc' => 'Determine whether the first or the last frame of the media will show when playback ends', - 'default' => 'false', - 'example' => '' - ), - 'autoMute' => array( - 'type' => 'Boolean', - 'desc' => 'Determine whether to start playback with volume muted (usually used by video ads or homepage auto play videos)', - 'default' => 'false', - 'example' => '../modules/KalturaSupport/tests/PlaylistAutoMute.html' - ), - 'loop' => array( - 'type' => 'Boolean', - 'desc' => 'Indicates whether the media should be played again after playback has completed', - 'default' => 'false', - 'example' => '../modules/KalturaSupport/tests/Loop.qunit.html' - ), - 'stretchVideo' => array( - 'type' => 'Boolean', - 'desc' => 'When true, stretchs the video to fill its container even if video aspect ratio breaks', - 'default' => 'false', - 'example' => '../modules/KalturaSupport/tests/Loop.qunit.html' - ), - 'adsOnReplay' => array( - 'type' => 'Boolean', - 'desc' => 'Indicates whether to play ads after video replay', - 'default' => 'false', - 'example' => '../modules/DoubleClick/tests/DoubleClickManagedPlayerAdApi.qunit.html' + ), + 'playerProperties' => array( + 'desc' => "Properties that control basic embed and player types.", + 'vars' => array( + /*'EmbedPlayer.IsIframeServer' => array( + 'type' => '', + 'desc' => "", + 'default' => '', + 'example' => '' + ),*/ + 'EmbedPlayer.EnableIframeApi' => array( + 'type' => 'Boolean', + 'desc' => "If the iFrame should send and receive JavaScript events across domains via postMessage", + 'default' => 'true', + 'example' => '' + ), + /*'EmbedPlayer.IframeParentUrl' => array( + 'type' => '', + 'desc' => "", + 'default' => '', + 'example' => '' + ), + 'EmbedPlayer.ForceNativeComponent' => array( + 'type' => '', + 'desc' => "", + 'default' => '', + 'example' => '' + ),*/ + 'EmbedPlayer.DisableVideoTagSupport' => array( + 'type' => 'Boolean', + 'desc' => "If video tag support should be disabled all-together", + 'default' => 'false', + 'example' => '' + ), + 'EmbedPlayer.DisableHTML5FlashFallback' => array( + 'type' => 'Boolean', + 'desc' => "If detected, browser Flash support should be ignored and Flash support should be set to false. This eliminates support for Flash based playback.", + 'default' => 'false', + 'example' => '' + ), + 'EmbedPlayer.UseFlashOnAndroid' => array( + 'type' => 'Boolean', + 'desc' => "If on Android, should use HTML5 ( even if Flash is installed on the machine )", + 'default' => 'false', + 'example' => '' + ), + 'EmbedPlayer.RewriteSelector' => array( + 'type' => 'String', + 'desc' => "What tags will be re-written to video player by default. Set to empty string or null to avoid automatic video tag rewrites to embedPlayer", + 'default' => 'video,audio,playlist', + 'example' => '' + ), + /*'EmbedPlayer.Attributes' => array( + 'type' => '', + 'desc' => "", + 'default' => '', + 'example' => '' + ),*/ + 'EmbedPlayer.DefaultSkin' => array( + 'type' => 'String', + 'desc' => "Default player skin name", + 'default' => 'mvpcf', + 'example' => '' + ), + 'EmbedPlayer.MonitorRate' => array( + 'type' => 'Integer', + 'desc' => "Number of milliseconds between interface updates", + 'default' => '250', + 'example' => '' + ), + 'EmbedPlayer.DefaultSize' => array( + 'type' => 'String', + 'desc' => "Default video size ( if no size provided )", + 'default' => '400x300', + 'example' => '' + ), + 'EmbedPlayer.ReplaceSources' => array( + 'type' => 'Boolean', + 'desc' => "Can be used to set player sources via configuration", + 'default' => 'false', + 'example' => '' + ), + /*'EmbedPlayer.IgnoreStreamerType' => array( + 'type' => '', + 'desc' => "", + 'default' => '', + 'example' => '' + ), + 'EmbedPlayer.ShowPlayerAlerts' => array( + 'type' => 'Boolean', + 'desc' => "If player errors / alerts should be displayed", + 'default' => 'true', + 'example' => '' + ),*/ + 'EmbedPlayer.NotPlayableDownloadLink' => array( + 'type' => 'Boolean', + 'desc' => "When there is no in-browser playback mechanism, provides a download link for the play button", + 'default' => 'true', + 'example' => '' + ), + 'EmbedPlayer.BlackPixel' => array( + 'type' => 'String', + 'desc' => "A Base64 black pixel image for source switching", + 'default' => '', + 'example' => '' + ), + /*'EmbedPlayer.iPhoneShowHTMLPlayScreen' => array( + 'type' => '', + 'desc' => "", + 'default' => '', + 'example' => '' + ),*/ + 'EmbedPlayer.NativeControls' => array( + 'type' => 'Boolean', + 'desc' => "Determines if mwEmbed should use the Native player controls. This will prevent video tag rewriting and skinning. Useful for devices such as iPad / iPod that don't fully support DOM overlays or don't expose full-screen functionality to JavaScript", + 'default' => 'false', + 'example' => '' + ), + 'EmbedPlayer.EnableIpadHTMLControls' => array( + 'type' => 'Boolean', + 'desc' => "Determines if iPad should use HTML controls. With HTML controls you can't access native fullscreen. With HTML controls you can support HTML themed controls, overlays, ads etc.", + 'default' => 'true', + 'example' => '' + ), + 'EmbedPlayer.OverlayControls' => array( + 'type' => 'Boolean', + 'desc' => 'Determines if the player controls should be overlaid on top of the video ( if supported by playback method)', + 'default' => 'true', + 'example' => '' + ), + 'EmbedPlayer.ShareEmbedMode' => array( + 'type' => 'String', + 'desc' => "The default share embed mode ( can be 'iframe' or 'xssVideo' )", + 'default' => 'iframe', + 'example' => '' + ), + 'EmbedPlayer.EnableURLTimeEncoding' => array( + 'type' => 'String', + 'desc' => "Determines if embedPlayer should support server side temporal URLs for seeking. Options are Flash|always|none", + 'default' => 'flash', + 'example' => '' + ), + 'EmbedPlayer.DefaultImageDuration' => array( + 'type' => 'Integer', + 'desc' => "Default duration for playing images", + 'default' => '2', + 'example' => '' + ), + /*'EmbedPlayer.WebKitPlaysInline' => array( + 'type' => '', + 'desc' => "", + 'default' => '', + 'example' => '' + ), + 'EmbedPlayer.WebKitAllowAirplay' => array( + 'type' => '', + 'desc' => "", + 'default' => '', + 'example' => '' + ), + 'EmbedPlayer.DisableJava' => array( + 'type' => 'Boolean', + 'desc' => "If the java cortado player should be disabled", + 'default' => 'true', + 'example' => '' + ), + 'EmbedPlayer.DisableVideoTagSupport' => array( + 'type' => '', + 'desc' => "", + 'default' => '', + 'example' => '' + ),*/ + 'EmbedPlayer.EnableFullscreen' => array( + 'type' => 'Boolean', + 'desc' => "If fullscreen is globally enabled", + 'default' => 'true', + 'example' => '' + ), + 'EmbedPlayer.NewWindowFullscreen' => array( + 'type' => 'Boolean', + 'desc' => "Determines if fullscreen should pop-open a new window ( instead of trying to expand the video player to browser fullscreen )", + 'default' => 'false', + 'example' => '' + ), + 'EmbedPlayer.EnableIpadNativeFullscreen' => array( + 'type' => 'Boolean', + 'desc' => "Whether to use the native device fullscreen call", + 'default' => 'false', + 'example' => '' + ), + 'EmbedPlayer.FullScreenZIndex' => array( + 'type' => 'Integer', + 'desc' => "The z-index given to the player interface during full screen ( high z-index )", + 'default' => '999998', + 'example' => '' + ), + 'EmbedPlayer.CodecPreference' => array( + 'type' => 'String', + 'desc' => "The preferred media codec preference ('h264', 'webm', 'ogg')", + 'default' => 'n/a', + 'example' => '' + ), + 'EmbedPlayer.ShowPosterOnStop' => array( + 'type' => 'Boolean', + 'desc' => "When set to true, shows the movie thumbnail upon movie ends", + 'default' => 'true', + 'example' => '' + ), + 'EmbedPlayer.HidePosterOnStart' => array( + 'type' => 'Boolean', + 'desc' => "When set to true, movie thumbnail doesn't show upon movie load (before playback starts)", + 'default' => 'false', + 'example' => '' + ), + /*'EmbedPlayer.SourceAttributes' => array( + 'type' => '', + 'desc' => "", + 'default' => '', + 'example' => '' + ),*/ + 'EmbedPlayer.ControlsHeight' => array( + 'type' => 'Integer', + 'desc' => "Default player controls size", + 'default' => '31', + 'example' => '' + ), + 'EmbedPlayer.HoverOutTimeout' => array( + 'type' => 'Integer', + 'desc' => "Default Timeout (in milliseconds) for Player controls hover out", + 'default' => '1000', + 'example' => '' + ), + 'EmbedPlayer.EnableRightClick' => array( + 'type' => 'Boolean', + 'desc' => "If users can right click on the player", + 'default' => 'true', + 'example' => '' + ), + 'EmbedPlayer.ShowNativeWarning' => array( + 'type' => 'Boolean', + 'desc' => "Set the browser player warning flag displays warning for non optimal playback", + 'default' => 'false', + 'example' => '' + ), + 'EmbedPlayer.WaitForMeta' => array( + 'type' => 'Boolean', + 'desc' => "If the player should wait for metadata like video size and duration before trying to draw the player interface.", + 'default' => 'true', + 'example' => '' + ), + 'EmbedPlayer.ForceKPlayer' => array( + 'type' => 'Boolean', + 'desc' => "Force loading the legacy KDP Flash video player.", + 'default' => 'false', + 'example' => '' + ), + 'EmbedPlayer.ForceSPlayer' => array( + 'type' => 'Boolean', + 'desc' => "Force loading the Silverlight video player.", + 'default' => 'false', + 'example' => '' + ), + /*'EmbedPlayer.DataAttributes' => array( + 'type' => '', + 'desc' => "", + 'default' => '', + 'example' => '' + ), + 'EmbedPlayer.IframeParentUrl' => array( + 'type' => '', + 'desc' => "", + 'default' => '', + 'example' => '' + ),*/ + 'EmbedPlayer.iPhoneShowHTMLPlayScreen' => array( + 'type' => 'Boolean', + 'desc' => "By default, an HTML play screen is displayed with image, thumb and play button. If you are not using ad plugins you may want to set this to false and display the native play button", + 'default' => 'true', + 'example' => '' + ), + 'EmbedPlayer.twoPhaseManifestHlsAndroid' => array( + 'type' => 'Boolean', + 'desc' => "If the player should load the final location of m3u8 file and not a URL that redirects to the m3u8 file on Android set this flag to true", + 'default' => 'false', + 'example' => '' + ) ) - ); - - $uiVarsPlayerProperties = array( - /*'EmbedPlayer.IsIframeServer' => array( - 'type' => '', - 'desc' => "", - 'default' => '', - 'example' => '' - ),*/ - 'EmbedPlayer.EnableIframeApi' => array( - 'type' => 'Boolean', - 'desc' => "If the iFrame should send and receive JavaScript events across domains via postMessage", - 'default' => 'true', - 'example' => '' - ), - /*'EmbedPlayer.IframeParentUrl' => array( - 'type' => '', - 'desc' => "", - 'default' => '', - 'example' => '' - ), - 'EmbedPlayer.ForceNativeComponent' => array( - 'type' => '', - 'desc' => "", - 'default' => '', - 'example' => '' - ),*/ - 'EmbedPlayer.DisableVideoTagSupport' => array( - 'type' => 'Boolean', - 'desc' => "If video tag support should be disabled all-together", - 'default' => 'false', - 'example' => '' - ), - 'EmbedPlayer.DisableHTML5FlashFallback' => array( - 'type' => 'Boolean', - 'desc' => "If detected, browser Flash support should be ignored and Flash support should be set to false. This eliminates support for Flash based playback.", - 'default' => 'false', - 'example' => '' - ), - 'EmbedPlayer.UseFlashOnAndroid' => array( - 'type' => 'Boolean', - 'desc' => "If on Android, should use HTML5 ( even if Flash is installed on the machine )", - 'default' => 'false', - 'example' => '' - ), - 'EmbedPlayer.RewriteSelector' => array( - 'type' => 'String', - 'desc' => "What tags will be re-written to video player by default. Set to empty string or null to avoid automatic video tag rewrites to embedPlayer", - 'default' => 'video,audio,playlist', - 'example' => '' - ), - /*'EmbedPlayer.Attributes' => array( - 'type' => '', - 'desc' => "", - 'default' => '', - 'example' => '' - ),*/ - 'EmbedPlayer.DefaultSkin' => array( - 'type' => 'String', - 'desc' => "Default player skin name", - 'default' => 'mvpcf', - 'example' => '' - ), - 'EmbedPlayer.MonitorRate' => array( - 'type' => 'Integer', - 'desc' => "Number of milliseconds between interface updates", - 'default' => '250', - 'example' => '' - ), - 'EmbedPlayer.DefaultSize' => array( - 'type' => 'String', - 'desc' => "Default video size ( if no size provided )", - 'default' => '400x300', - 'example' => '' - ), - 'EmbedPlayer.ReplaceSources' => array( - 'type' => 'Boolean', - 'desc' => "Can be used to set player sources via configuration", - 'default' => 'false', - 'example' => '' - ), - /*'EmbedPlayer.IgnoreStreamerType' => array( - 'type' => '', - 'desc' => "", - 'default' => '', - 'example' => '' - ), - 'EmbedPlayer.ShowPlayerAlerts' => array( - 'type' => 'Boolean', - 'desc' => "If player errors / alerts should be displayed", - 'default' => 'true', - 'example' => '' - ),*/ - 'EmbedPlayer.NotPlayableDownloadLink' => array( - 'type' => 'Boolean', - 'desc' => "When there is no in-browser playback mechanism, provides a download link for the play button", - 'default' => 'true', - 'example' => '' - ), - 'EmbedPlayer.BlackPixel' => array( - 'type' => 'String', - 'desc' => "A Base64 black pixel image for source switching", - 'default' => '', - 'example' => '' - ), - /*'EmbedPlayer.iPhoneShowHTMLPlayScreen' => array( - 'type' => '', - 'desc' => "", - 'default' => '', - 'example' => '' - ),*/ - 'EmbedPlayer.NativeControls' => array( - 'type' => 'Boolean', - 'desc' => "Determines if mwEmbed should use the Native player controls. This will prevent video tag rewriting and skinning. Useful for devices such as iPad / iPod that don't fully support DOM overlays or don't expose full-screen functionality to JavaScript", - 'default' => 'false', - 'example' => '' - ), - 'EmbedPlayer.EnableIpadHTMLControls' => array( - 'type' => 'Boolean', - 'desc' => "Determines if iPad should use HTML controls. With HTML controls you can't access native fullscreen. With HTML controls you can support HTML themed controls, overlays, ads etc.", - 'default' => 'true', - 'example' => '' - ), - 'EmbedPlayer.OverlayControls' => array( - 'type' => 'Boolean', - 'desc' => 'Determines if the player controls should be overlaid on top of the video ( if supported by playback method)', - 'default' => 'true', - 'example' => '' - ), - 'EmbedPlayer.ShareEmbedMode' => array( - 'type' => 'String', - 'desc' => "The default share embed mode ( can be 'iframe' or 'xssVideo' )", - 'default' => 'iframe', - 'example' => '' - ), - 'EmbedPlayer.EnableURLTimeEncoding' => array( - 'type' => 'String', - 'desc' => "Determines if embedPlayer should support server side temporal URLs for seeking. Options are Flash|always|none", - 'default' => 'flash', - 'example' => '' - ), - 'EmbedPlayer.DefaultImageDuration' => array( - 'type' => 'Integer', - 'desc' => "Default duration for playing images", - 'default' => '2', - 'example' => '' - ), - /*'EmbedPlayer.WebKitPlaysInline' => array( - 'type' => '', - 'desc' => "", - 'default' => '', - 'example' => '' - ), - 'EmbedPlayer.WebKitAllowAirplay' => array( - 'type' => '', - 'desc' => "", - 'default' => '', - 'example' => '' - ), - 'EmbedPlayer.DisableJava' => array( - 'type' => 'Boolean', - 'desc' => "If the java cortado player should be disabled", - 'default' => 'true', - 'example' => '' - ), - 'EmbedPlayer.DisableVideoTagSupport' => array( - 'type' => '', - 'desc' => "", - 'default' => '', - 'example' => '' - ),*/ - 'EmbedPlayer.EnableFullscreen' => array( - 'type' => 'Boolean', - 'desc' => "If fullscreen is globally enabled", - 'default' => 'true', - 'example' => '' - ), - 'EmbedPlayer.NewWindowFullscreen' => array( - 'type' => 'Boolean', - 'desc' => "Determines if fullscreen should pop-open a new window ( instead of trying to expand the video player to browser fullscreen )", - 'default' => 'false', - 'example' => '' - ), - 'EmbedPlayer.EnableIpadNativeFullscreen' => array( - 'type' => 'Boolean', - 'desc' => "Whether to use the native device fullscreen call", - 'default' => 'false', - 'example' => '' - ), - 'EmbedPlayer.FullScreenZIndex' => array( - 'type' => 'Integer', - 'desc' => "The z-index given to the player interface during full screen ( high z-index )", - 'default' => '999998', - 'example' => '' - ), - 'EmbedPlayer.CodecPreference' => array( - 'type' => 'String', - 'desc' => "The preferred media codec preference ('h264', 'webm', 'ogg')", - 'default' => 'n/a', - 'example' => '' - ), - 'EmbedPlayer.ShowPosterOnStop' => array( - 'type' => 'Boolean', - 'desc' => "When set to true, shows the movie thumbnail upon movie ends", - 'default' => 'true', - 'example' => '' - ), - 'EmbedPlayer.HidePosterOnStart' => array( - 'type' => 'Boolean', - 'desc' => "When set to true, movie thumbnail doesn't show upon movie load (before playback starts)", - 'default' => 'false', - 'example' => '' - ), - /*'EmbedPlayer.SourceAttributes' => array( - 'type' => '', - 'desc' => "", - 'default' => '', - 'example' => '' - ),*/ - 'EmbedPlayer.ControlsHeight' => array( - 'type' => 'Integer', - 'desc' => "Default player controls size", - 'default' => '31', - 'example' => '' - ), - 'EmbedPlayer.HoverOutTimeout' => array( - 'type' => 'Integer', - 'desc' => "Default Timeout (in milliseconds) for Player controls hover out", - 'default' => '1000', - 'example' => '' - ), - 'EmbedPlayer.EnableRightClick' => array( - 'type' => 'Boolean', - 'desc' => "If users can right click on the player", - 'default' => 'true', - 'example' => '' - ), - 'EmbedPlayer.ShowNativeWarning' => array( - 'type' => 'Boolean', - 'desc' => "Set the browser player warning flag displays warning for non optimal playback", - 'default' => 'false', - 'example' => '' - ), - 'EmbedPlayer.WaitForMeta' => array( - 'type' => 'Boolean', - 'desc' => "If the player should wait for metadata like video size and duration before trying to draw the player interface.", - 'default' => 'true', - 'example' => '' - ), - 'EmbedPlayer.ForceKPlayer' => array( - 'type' => 'Boolean', - 'desc' => "Force loading the legacy KDP Flash video player.", - 'default' => 'false', - 'example' => '' - ), - 'EmbedPlayer.ForceSPlayer' => array( - 'type' => 'Boolean', - 'desc' => "Force loading the Silverlight video player.", - 'default' => 'false', - 'example' => '' - ), - /*'EmbedPlayer.DataAttributes' => array( - 'type' => '', - 'desc' => "", - 'default' => '', - 'example' => '' - ), - 'EmbedPlayer.IframeParentUrl' => array( - 'type' => '', - 'desc' => "", - 'default' => '', - 'example' => '' - ),*/ - 'EmbedPlayer.iPhoneShowHTMLPlayScreen' => array( - 'type' => 'Boolean', - 'desc' => "By default, an HTML play screen is displayed with image, thumb and play button. If you are not using ad plugins you may want to set this to false and display the native play button", - 'default' => 'true', - 'example' => '' - ), - 'EmbedPlayer.twoPhaseManifestHlsAndroid' => array( - 'type' => 'Boolean', - 'desc' => "If the player should load the final location of m3u8 file and not a URL that redirects to the m3u8 file on Android set this flag to true", - 'default' => 'false', - 'example' => '' + ), + 'mediaProxy'=> array( + 'desc' => "The MediaProxy object is responsible for referencing and loading of the current playing media.", + 'vars' => array( + 'mediaProxy.selectedFlavorId' => array( + 'type' => 'String', + 'desc' => 'The transcoding flavor currently playing. A valid id of a transcoding flavor associated with Kaltura entry currently being played', + 'default' => '', + 'availability' => 'kdp', + 'example' => '' + ), + 'mediaProxy.preferedFlavorBR' => array( + 'type' => 'Integer', + 'desc' => 'A prefered bitrate for selecting the flavor to be played. In case of an RTMP adaptive mbr, a -1 value will force an auto switching as opposed to manual one. Will be affective only if the "disableBitrateCookie=true" Flashvar is sent.', + 'default' => '1000', + 'example' => '' + ), + 'mediaProxy.imageDefaultDuration' => array( + 'type' => 'Integer', + 'desc' => 'In case an Image media is played in a playlist, this value sets the default time period that the image will hold until the next image is presented. Any positive number representing seconds is acceptable', + 'default' => '3', + 'example' => '' + ), + 'mediaProxy.supportImageDuration' => array( + 'type' => 'Boolean', + 'desc' => 'This is used to turn an image to a timed image. It is useful in case of playlist where an image should only show for a specific time before the next item will show. If the image should show without time (static), set this to false', + 'default' => 'true in case of playlists, false in case of single image', + 'availability' => 'kdp', + 'example' => '' + ), + 'mediaProxy.initialBufferTime' => array( + 'type' => 'Integer', + 'desc' => "Set the initial buffer time in dual buffering method. When a number of seconds indicated by this parameter will be buffered, the stream playback will start and the buffer size will increase to expandedBufferTime. Any positive number representing the number of seconds the buffer should hold before playback", + 'default' => '2', + 'availability' => 'kdp', + 'example' => '' + ), + 'mediaProxy.expandedBufferTime' => array( + 'type' => 'Integer', + 'desc' => 'Set the desired buffer time in dual buffering method. After the stream buffer has accumulated the number of seconds indicated by initialBufferTime, the buffer size increases to the number of seconds indicated by this parameter to maximize the buffer download size during playback. Any positive number representing the desired seconds to buffer', + 'default' => '10', + 'availability' => 'kdp', + 'example' => '' + ), + 'mediaProxy.mediaPlayFrom' => array( + 'type' => 'Integer', + 'desc' => 'Indicates the time from which to play the media. If passed and unequal to 0, the player seeks to this time before beginning to play', + 'default' => '-1', + 'example' => '' + ), + 'mediaProxy.mediaPlayTo' => array( + 'type' => 'Integer', + 'desc' => 'Indicates the time to which to play the media. If passed and unequal to 0, the player pauses upon arrival at this time', + 'default' => '-1', + 'example' => '' + ) ) - ); + ) +); - $uiVarsMediaProxy = array( - 'mediaProxy.selectedFlavorId' => array( - 'type' => 'String', - 'desc' => 'The transcoding flavor currently playing. A valid id of a transcoding flavor associated with Kaltura entry currently being played', - 'default' => '', - 'availability' => 'kdp', - 'example' => '' - ), - 'mediaProxy.preferedFlavorBR' => array( - 'type' => 'Integer', - 'desc' => 'A prefered bitrate for selecting the flavor to be played. In case of an RTMP adaptive mbr, a -1 value will force an auto switching as opposed to manual one. Will be affective only if the "disableBitrateCookie=true" Flashvar is sent.', - 'default' => '1000', - 'example' => '' - ), - 'mediaProxy.imageDefaultDuration' => array( - 'type' => 'Integer', - 'desc' => 'In case an Image media is played in a playlist, this value sets the default time period that the image will hold until the next image is presented. Any positive number representing seconds is acceptable', - 'default' => '3', - 'example' => '' - ), - 'mediaProxy.supportImageDuration' => array( - 'type' => 'Boolean', - 'desc' => 'This is used to turn an image to a timed image. It is useful in case of playlist where an image should only show for a specific time before the next item will show. If the image should show without time (static), set this to false', - 'default' => 'true in case of playlists, false in case of single image', - 'availability' => 'kdp', - 'example' => '' - ), - 'mediaProxy.initialBufferTime' => array( - 'type' => 'Integer', - 'desc' => "Set the initial buffer time in dual buffering method. When a number of seconds indicated by this parameter will be buffered, the stream playback will start and the buffer size will increase to expandedBufferTime. Any positive number representing the number of seconds the buffer should hold before playback", - 'default' => '2', - 'availability' => 'kdp', - 'example' => '' - ), - 'mediaProxy.expandedBufferTime' => array( - 'type' => 'Integer', - 'desc' => 'Set the desired buffer time in dual buffering method. After the stream buffer has accumulated the number of seconds indicated by initialBufferTime, the buffer size increases to the number of seconds indicated by this parameter to maximize the buffer download size during playback. Any positive number representing the desired seconds to buffer', - 'default' => '10', - 'availability' => 'kdp', - 'example' => '' - ), - 'mediaProxy.mediaPlayFrom' => array( - 'type' => 'Integer', - 'desc' => 'Indicates the time from which to play the media. If passed and unequal to 0, the player seeks to this time before beginning to play', - 'default' => '-1', - 'example' => '' - ), - 'mediaProxy.mediaPlayTo' => array( - 'type' => 'Integer', - 'desc' => 'Indicates the time to which to play the media. If passed and unequal to 0, the player pauses upon arrival at this time', - 'default' => '-1', - 'example' => '' - ) - ); -?> \ No newline at end of file diff --git a/docs/content_api.php b/docs/content_api.php index 2dd48c1538..f8e1a215c5 100644 --- a/docs/content_api.php +++ b/docs/content_api.php @@ -2,252 +2,8 @@ require_once( realpath( dirname( __FILE__ ) ) . '/doc-base.php' ); require_once( realpath( dirname( __FILE__ ) ) . '/api_uivars.php' ); require_once( realpath( dirname( __FILE__ ) ) . '/api_methods.php' ); -require_once( realpath( dirname( __FILE__ ) ) . '/api_listeners.php' -); require_once( realpath( dirname( __FILE__ ) ) . -'/api_evaluates.php' ); - - /* should ideally auto generate or be in a separate file */ - $methodDocs = array( - 'kWidget.embed' => array( - 'desc'=>'Used to embed the Kaltura player against an element target in the DOM', - 'params' => array( - 'targetId' => array( - 'type' => 'String', // assumed - 'optional' => true, - 'desc' => 'The DOM player target id attribute string. ( if not included, you must include targetId in "settings" object )', - ), - 'settings'=> array( - 'type' => 'kWidget.settingsObject', - 'desc' => 'Object of settings to be used in embedding.' - ) - ), - 'returns' => array( - 'type' => 'boolean|null', - 'desc' => 'Returns boolean false if id not found' - ), - 'examples' => array( - array( - // either doc name or path can be defined ( for feature listed files vs non-feature listed ) - 'type' => 'link', - 'name' => 'kWidget.embed', - 'docPath' => 'kwidget' - ), - array( - 'type' => 'link', - 'name' => 'kWidget.embed playlist', - 'docFullPath' => 'modules/KalturaSupport/tests/kWidget.embed.playlist.qunit.html ' - ) - ) - ), - 'kWidget.thumbEmbed' => array( - 'desc'=>'Used to embed a thumbnail player. When the user clicks on the thumbnail kWidget.embed will be called with the provided settings.', - 'params' => array( - 'targetId' => array( - 'type' => 'String', // assumed - 'optional' => true, - 'desc' => 'The DOM player target id attribute string. ( if not included, you must include targetId in "settings" object', - ), - 'settings'=> array( - 'type' => 'kWidget.settingsObject', - 'desc' => 'Object of settings to be used in embedding.' - ) - ), - 'examples' => array( - array( - // either doc name or path can be defined ( for feature listed files vs non-feature listed ) - 'type' => 'link', - 'name' => 'kWidget.thumbEmbed', - 'docPath' => 'thumb' - ) - ) - ), - 'kWidget.getKalturaThumbUrl' => array( - 'desc'=>'Get video thumbnail URL.', - 'params' => array( - 'settings'=> array( - 'type' => 'kWidget.settingsObject', - 'desc' => 'Object of settings to be used in embedding.' - ) - ) - ), - 'kWidget.addReadyCallback' => array( - 'desc'=>'Adds a ready callback to be called after the KDP or HTML5 player is ready.', - 'params' => array( - 'readyCallback' => array( - 'type' => 'String', - 'desc' => 'Function to call after a player or widget is ready on the page.', - ) - ), - 'examples' => array( - array( - 'type' => 'link', - 'name' => 'kWidget.addReadyCallback', - 'docFullPath' => 'modules/KalturaSupport/tests/ChangeMediaEntry.qunit.html ' - ) - ) - ), - 'kWidget.destroy' => array( - 'desc'=>'Removes the player from the DOM.', - 'params' => array( - 'target' => array( - 'type' => 'String', - 'desc' => 'The target element or element ID to destroy.', - ) - ), - 'examples' => array( - array( - 'type' => 'link', - 'name' => 'kWidget.embed', - 'docPath' => 'kwidget' - ) - ) - ), - 'kWidget.api' => array( - 'desc' => 'The kWidget API object, used to create new instances of Kaltura API request.', - 'params' => array( - 'apiObject'=> array( - 'type' => 'kWidget.apiOptions', - 'desc' => 'Object of API settings to be used in API requests.' - ) - ), - 'methods'=> array( - 'doRequest' => array( - 'type' => 'function', - 'desc' => "( RequestObject, callback ) Run the API request, issue callback with API response data." - ) - ), - 'returns' => array( - 'type' => 'kWidget.api', - 'desc' => 'Returns an instance of the kWidget API object.' - ), - 'examples' => array( - array( - 'name' => 'kWidget.api', - 'docFullPath' => 'kWidget/tests/kWidget.api.html' - ), - array( - 'name' => 'kWidget.getSources', - 'docFullPath' => 'modules/KalturaSupport/tests/kWidget.getSources.html' - ) - ) - ), - 'sendNotification' => array( - 'desc'=>'Call a KDP notification (perform actions using this API, for example: play, pause, changeMedia, etc.)', - 'params' => array( - 'notificationName' => array( - 'type' => 'String', - 'desc' => 'The name of notification to call.', - ), - 'notificationData'=> array( - 'type' => 'Object', - 'optional' => true, - 'desc' => 'The custom data to pass with the notification.' - ) - ) - ), - 'addJsListener' => array( - 'desc'=>'Register a javascript handler function for a KDP notification', - 'params' => array( - 'listenerString' => array( - 'type' => 'String', - 'desc' => 'The name of the notification to listen to.', - ), - 'jsFunctionName'=> array( - 'type' => 'String', - 'desc' => 'The name of the JavaScript handler function.' - ) - ) - ), - 'evaluate' => array( - 'desc'=>"Retrieves the value of a KDP model property or component's property, using the standard OOP dot notation inside curly braces", - 'params' => array( - 'object.property.properties' => array( - 'type' => 'String', - 'desc' => 'The reference to the component object with data that you want to extract. Enclose the reference in curly braces within single or double quotation marks.', - ) - ) - ), - 'setKDPAttribute' => array( - 'desc'=>"Change a value of a player configuration property or component's property using the standard OOP dot notation.", - 'params' => array( - 'object' => array( - 'type' => 'String', - 'desc' => 'A string that represents the object you want to modify. Use standard dot notation to specify sub-objects, for example, configProxy.flashvars' - ),'property' => array( - 'type' => 'String', - 'desc' => 'The player property that you want to modify.' - ),'value' => array( - 'type' => 'String', - 'desc' => 'The new value that you want to set for the player property.' - ) - ) - ), - 'jsCallbackReady' => array( - 'desc'=>"A JavaScript function on the hosting web page that is called by KDP when the setup of externalInterface APIs is completed.", - 'params' => array( - 'objectId' => array( - 'type' => 'String', - 'desc' => 'Represents the identifier of the player that is embedded.' - ) - ) - ) - ); - $objectDefinitions = array( - 'kWidget.apiOptions' => array( - 'wid'=> array( - 'desc' => "The partner id to be used in the API request." - ), - 'ks' => array( - 'desc' => "The Kaltura secret to be used in the request, if not supplied an anonymous KS will be generated and used." - ), - 'serviceUrl' => array( - 'desc' => 'Can be overwritten to target a different Kaltura server.', - 'default' => 'http://cdnapi.kaltura.com' - ), - 'serviceBase' => array( - 'desc' => "Can be overwritten to alternate Kaltura service path.", - 'default' => '/api_v3/index.php?service=' - ), - 'statsServiceUrl' => array( - 'desc' => "Default supplied via Kaltura library include, can be overwritten to alternate URL for core analytics events.", - 'default' => 'http://stats.kaltura.com' - ), - 'disableCache' => array( - 'desc' => "Sends no-cache param to API, for a fresh result. Can hurt performance and CDN cachability should be used sparingly.", - 'default' => 'false' - ) - ), - 'kWidget.settingsObject' => array( - 'targetId' => array( - 'desc' => 'The DOM player target id attribute string if not defined as top level param.' - ), - 'wid' => array( - 'desc' => 'Widget id, usually the partner id prefixed by underscore.' - ), - 'uiconf_id' => array( - 'type' => 'Number', - 'optional' => true, - 'desc' => 'The player uiconf_id' - ), - 'entry_id' => array( - 'desc' => 'The content entry id. Can be left empty for a JavaScript based entry id.' - ), - 'flashvars' => array( - 'type' => 'Object', - 'desc' => 'Runtime configuration object, can override arbitrary uiVars and plugin config.' - ), - 'params' => array( - 'type' => 'Object', - 'desc' => 'Runtime configuration object, can override arbitrary uiVars and plugin config.' - ), - 'cache_st' => array( - 'optional'=> true, - 'desc' => 'String to burst player cache' - ) - ) - ); - - +require_once( realpath( dirname( __FILE__ ) ) . '/api_listeners.php'); +require_once( realpath( dirname( __FILE__ ) ) . '/api_evaluates.php' ); function getDocTypeStr( $param ){ global $objectDefinitions; @@ -352,6 +108,26 @@ function getDocs( $fnName){ $o.=''; return $o; } + function getOutlineContent( $objectSet ){ + $o=''; + return $o; + } function getTableContent($headers, $param){ $paramArrayObject = new ArrayObject($param); @@ -365,7 +141,7 @@ function getTableContent($headers, $param){ if( is_array($param) ){ foreach( $paramArrayObject as $key => $value ){ $restrictedAvailability = false; - $o.= ""; + $o.= ''; $o.= "".$key; foreach( $value as $val => $value1){ if ($val == 'availability' && $value1 == 'kdp'){ @@ -384,7 +160,7 @@ function getTableContent($headers, $param){ if ($value != ''){ $o.= 'Example'; }else{ - $o.= 'n/a'; + $o.= '-'; } } @@ -403,6 +179,18 @@ function getTableContent($headers, $param){ ?>