Terminology
- Search Producer / Producer – The Federated Search Interactive Module allows you to create multiple instances, each representing a saved search, to be accessed by a corresponding Search Consumer on the customer’s portal. Each instance of a saved search is called a “Search Producer”, or “Producer”. To simplify, a “Producer” represents a video gallery to be rendered on the intranet/extranet portal. In practice, a Producer acts as a simplified API into the saved search, allowing to pass various URL parameters which will affect the returned results in real time, such as a search term, sorting order, number of assets to return etc. This allows implementing additional UI supporting the video gallery, such as a search field, a sort-by drop-down etc. URL requests to a Producer require authentication. In response, they return a JSON object, containing entries meeting each Producer’s search criteria, and their corresponding metadata.
- Search Consumer / Consumer – The widget/portlet on the intranet/extranet portal side which consumes the content returned by a Producer. See a few visual examples presented here, generalizing actual customer use cases.
- JSON – "JSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. It is based on a subset of the JavaScript Programming Language. JSON is probably the easiest way for web/mobile client-side code to parse and render data”. See a good intro to JSON here.
- App Token – a context-specific API token for accessing a Kaltura account via API. By “context-specific” we mean that, unlike the “admin secret” and “user secret” available to Kaltura super-admins (via the KMC), serving as “keys to the kingdom”, App Tokens 1. Are limited regarding the API services they can access, 2. Are limited regarding the content they can access, 3. Can be revoked. This makes App Tokens a great fit for Federated Search projects, allowing the Kaltura main customer, often the video portal admin or KMC admin, to stay in control of her “kingdom” without ever sharing their admin secrets. She can use App Tokens to grant business-unit developers limited API access for their own projects (to build a consumer), and to always have the option to revoke such access if/when needed. The module allows the admin to generate App Tokens with a single click, no coding required, and simply provide the App Token information (ID and value) to the developer. More technical (portal admins can skip this part) background on App Tokens is available in the Kaltura Developers Portal, here.
- KS – Kaltura Session – A time-limited API session created using the App Token. Provides authentication for loading content from a Producer.
Federated Search is designed with developers in mind - Authenticating using an App Token is the only Kaltura API ramp up required by the developer when building a Consumer. The rest of the work is accomplished using standard HTML/JavaScript/JQuery/CSS. To make ramp up even easier, Kaltura provides an interactive code recipe tutorial on how to authenticate using App Tokens, in all major coding languages, that can be accessed here.