Class SSAIComponent

  • All Implemented Interfaces:
    Component

    @ListensFor(events={"didSetSource","didSelectSource"})
    @Emits(events={"adDataReady","error"})
    public class SSAIComponent
    extends AbstractComponent
    Provide a class to support the Brightcove Server Side Ad Insertion (SSAI) functionality.
    • Constructor Detail

      • SSAIComponent

        public SSAIComponent​(@NonNull
                             android.content.Context context,
                             @NonNull
                             BaseVideoView baseVideoView)
        SSAIComponent
        Parameters:
        context - The current applicaton context
        baseVideoView - The BaseVideoView
      • SSAIComponent

        public SSAIComponent​(@NonNull
                             android.content.Context context,
                             @NonNull
                             BaseVideoView baseVideoView,
                             int connectTimeout,
                             int readTimeout)
        SSAIComponent
        Parameters:
        context - The current application context
        baseVideoView - The BaseVideoView
        connectTimeout - The connect timeout override in milliseconds. The default value is 10000 milliseconds.
        readTimeout - The read read timeout in milliseconds. The default value is 10000 milliseconds.
    • Method Detail

      • processVideo

        public void processVideo​(@NonNull
                                 Video video)
        Process a video that has a VMAP url in at least one if its sources.
        Parameters:
        video - the video to play.
        See Also:
        Source, SourceCollection
      • processVideo

        public void processVideo​(@NonNull
                                 java.lang.String adData)
        Process a video given an ad metadata URL and a content URL. Default to using the VMAP technology and XML data bindings.
        Parameters:
        adData - The given VMAP data, either as am ad server URL or as an XML String.
      • processVideo

        public void processVideo​(@NonNull
                                 java.lang.String vmapXMLString,
                                 @Nullable
                                 java.lang.String remoteLicenseUrl)
        Process a video given an ad metadata VMAP XML.
        Parameters:
        vmapXMLString - The given VMAP XML as a String.
        remoteLicenseUrl - The given remoteLicenseUrl for the content.
      • updateAdTargetingValues

        public void updateAdTargetingValues​(@NonNull
                                            java.util.Map<java.lang.String,​java.lang.String> adTargetingValues)
        Updates the key/value pairs used for audience segment targeting. These values will be appended to the VMAP Url. For example, if you provide the following map:
         
         Map<String, String> audienceSegmentTargetingValues = new HashMap<>();
         audienceSegmentTargetingValues.put("section", "sports");
         audienceSegmentTargetingValues.put("multi", "baseball,tennis");
         
         
        The following string will be appended to the provided VMAP Url:

        "§ion=sports&multi=baseball%2Ctennis"

      • addCompanionContainer

        public void addCompanionContainer​(android.view.ViewGroup companionContainer)
        Add an additional companion ad container.
        Parameters:
        companionContainer - The new companion ad container.
      • clearCompanionContainers

        public void clearCompanionContainers()
        Clear all companion ad containers currently being used in the plugin.