<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Aura – video</title>
    <link>/tags/video/</link>
    <description>Recent content in video on Aura</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language>
    
	  <atom:link href="/tags/video/index.xml" rel="self" type="application/rss+xml" />
    
    
      
        
      
    
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/ai-use-cases/tv-conversational-none-llm/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/ai-use-cases/tv-conversational-none-llm/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-llm-conversational-none-uc&#34;&gt;TV LLM Conversational None UC&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Global Use Case developed by Aura Platform Team that informs users of the platform&amp;rsquo;s available actions, ensuring correct invocation for proper system understanding.&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The video &lt;strong&gt;LLM Conversational None&lt;/strong&gt; use case is a global experience designed and developed by Aura Global Team that provides Telefónica customers guidance on gaining knowledge of available platform actions and how to perform them correctly.&lt;/p&gt;
&lt;p&gt;Find additional information in the following documents:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Discover the &lt;a href=&#34;#specifications&#34;&gt;Conversational None specifications&lt;/a&gt; and the particularities of the &lt;a href=&#34;#use-case-development&#34;&gt;use case development&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Learn how to &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-conversational-none-llm/tv-conversational-none-dialog/&#34;&gt;configure the &lt;em&gt;&lt;strong&gt;conversational-none-dialog&lt;/strong&gt;&lt;/em&gt; for Conversational None use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Access the &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-none-llm/tv-none-llm-plugin/&#34;&gt;TV Retrieve plugin for LLM None UC&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Discover the &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-conversational-none-llm/resources/&#34;&gt;resources used by the Conversational None use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Find the &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-conversational-none-llm/ai-config-obs/&#34;&gt;AI configuration for each OB&lt;/a&gt; for the TV LLM Conversational None UC.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specifications&#34;&gt;Specifications&lt;/h2&gt;
&lt;h3 id=&#34;request-response-model&#34;&gt;Request-response model&lt;/h3&gt;
&lt;p&gt;The TV LLM Conversational None UC is adapted to both request-response V1 and to its normalized model V3.&lt;/p&gt;
&lt;h3 id=&#34;available-channels&#34;&gt;Available channels&lt;/h3&gt;
&lt;p&gt;The TV LLM Conversational None UC can be enabled in any channel in both v1 and v3 and TV-related payloads.&lt;/p&gt;
&lt;h2 id=&#34;use-case-development&#34;&gt;Use case development&lt;/h2&gt;
&lt;p&gt;The TV LLM Conversational None UC includes the following components:&lt;/p&gt;
&lt;h3 id=&#34;understanding-features&#34;&gt;Understanding features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Intent:&lt;/strong&gt; &lt;code&gt;intent.conversational.none&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;use-case-logic&#34;&gt;Use case logic&lt;/h3&gt;
&lt;p&gt;Once Aura recognizes the user&amp;rsquo;s utterance, the UC is resolved via:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Aura Bot dialog&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;TV LLM Conversational None UC is built over &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-conversational-none-llm/tv-conversational-none-dialog/&#34;&gt;&lt;em&gt;&lt;strong&gt;conversational-none-dialog&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;.&lt;br&gt;
See the &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-conversational-none-llm/tv-conversational-none-dialog/&#34;&gt;Dialog configuration&lt;/a&gt; for the required settings and bypass configuration.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/ai-use-cases/tv-conversational-search-llm/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/ai-use-cases/tv-conversational-search-llm/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-llm-conversational-search-uc&#34;&gt;TV LLM Conversational Search UC&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Global use case developed by Aura Platform Team that allows users searching for recommendations by holding a conversation with Aura&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The video &lt;strong&gt;LLM Conversational Search&lt;/strong&gt; use case is a global experience designed and developed by Aura Global Team that allows Telefónica customers to hold a conversation with Aura for having TV content recommendations using a voice interface.&lt;/p&gt;
&lt;p&gt;Find additional information in the following documents:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Discover the &lt;a href=&#34;#specifications&#34;&gt;Conversational search specifications&lt;/a&gt; and the particularities of the &lt;a href=&#34;#use-case-development&#34;&gt;use case development&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Learn how to &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-conversational-search-llm/tv-conversational-search-dialog/&#34;&gt;configure the &lt;em&gt;&lt;strong&gt;conversational-search-dialog&lt;/strong&gt;&lt;/em&gt; for Conversational Search use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Access the &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-search-llm/tv-search-llm-plugin/&#34;&gt;TV Retrieve plugin for LLM Search UC&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Discover the &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-conversational-search-llm/resources/&#34;&gt;resources used by the Conversational search use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Find the &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-conversational-search-llm/ai-config-obs/&#34;&gt;AI configuration for each OB&lt;/a&gt; for the TV LLM Conversational Search UC.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specifications&#34;&gt;Specifications&lt;/h2&gt;
&lt;h3 id=&#34;kernel-api&#34;&gt;Kernel API&lt;/h3&gt;
&lt;p&gt;To resolve the user’s request, Aura uses the normalized &lt;a href=&#34;https://developers.baikalplatform.com/apis/video-contents/&#34;&gt;Video Contents Kernel API&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;request-response-model&#34;&gt;Request-response model&lt;/h3&gt;
&lt;p&gt;The Conversational search use case is adapted to both request-response normalized model v3 and v1.&lt;/p&gt;
&lt;h3 id=&#34;available-channels&#34;&gt;Available channels&lt;/h3&gt;
&lt;p&gt;The Conversational search use case can be enabled in any channel in both v1 and v3 and TV-related payloads.&lt;/p&gt;
&lt;h2 id=&#34;use-case-development&#34;&gt;Use case development&lt;/h2&gt;
&lt;p&gt;The Conversational search use case includes the following components:&lt;/p&gt;
&lt;h3 id=&#34;understanding-features&#34;&gt;Understanding features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Intent:&lt;/strong&gt; &lt;code&gt;intent.conversational.search&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;use-case-logic&#34;&gt;Use case logic&lt;/h3&gt;
&lt;p&gt;Once Aura recognizes the user’s utterance, the UC is resolved via:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Aura Bot dialog&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The Conversational search use case is built over &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-conversational-search-llm/tv-conversational-search-dialog/&#34;&gt;&lt;em&gt;&lt;strong&gt;conversational-search-dialog&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;.&lt;br&gt;
See the &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-conversational-search-llm/tv-conversational-search-dialog/&#34;&gt;Dialog configuration&lt;/a&gt; for the required settings and bypass configuration.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/ai-use-cases/tv-recommend-llm/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/ai-use-cases/tv-recommend-llm/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-llm-recommend-uc&#34;&gt;TV LLM Recommend UC&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Global use case developed by Aura Platform Team that allows users to get personalized TV/video recommendations in Aura&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The video &lt;strong&gt;LLM Recommend&lt;/strong&gt; use case is a global experience designed and developed by Aura Global Team that allows Telefónica customers to ask Aura for content recommendations (live channels and catalog items) using a voice interface.&lt;/p&gt;
&lt;p&gt;Find additional information in the following documents:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Discover the &lt;a href=&#34;#specifications&#34;&gt;TV LLM Recommend specifications&lt;/a&gt; and the particularities of the &lt;a href=&#34;#use-case-development&#34;&gt;use case development&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Learn how to &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-recommend-llm/tv-recommend-dialog/&#34;&gt;configure the generic-dialog for TV LLM Recommend use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Access the &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-recommend-llm/tv-recommend-plugin/&#34;&gt;TV LLM Recommend plugin&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Discover the &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-recommend-llm/resources/&#34;&gt;resources used by the TV LLM Recommend use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Find the &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-recommend-llm/ai-config-obs/&#34;&gt;AI configuration for each OB&lt;/a&gt; for the TV Recommend use case.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specifications&#34;&gt;Specifications&lt;/h2&gt;
&lt;h3 id=&#34;kernel-api&#34;&gt;Kernel API&lt;/h3&gt;
&lt;p&gt;To resolve the user&amp;rsquo;s request, Aura uses the normalized &lt;a href=&#34;https://developers.baikalplatform.com/apis/video-contents/&#34;&gt;Video Contents Kernel API&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;request-response-model&#34;&gt;Request-response model&lt;/h3&gt;
&lt;p&gt;The TV LLM Recommend UC is available only when using the normalized &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;request-response model v3&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;available-channels&#34;&gt;Available channels&lt;/h3&gt;
&lt;p&gt;The TV LLM Recommend UC can be enabled in any channel implementing the &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;normalized v3 request-response model&lt;/a&gt; and TV-related payloads.&lt;/p&gt;
&lt;h3 id=&#34;tv-llm-recommend-features&#34;&gt;TV LLM Recommend features&lt;/h3&gt;
&lt;p&gt;The normalized TV LLM Recommend UC includes &lt;strong&gt;personalized recommendations&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Suggest a &lt;strong&gt;single live channel&lt;/strong&gt; (with a zap action).&lt;/li&gt;
&lt;li&gt;Suggest a &lt;strong&gt;single catalog item&lt;/strong&gt; (e.g., VOD).&lt;/li&gt;
&lt;li&gt;Suggest a &lt;strong&gt;list of items&lt;/strong&gt; when multiple results are available.&lt;/li&gt;
&lt;li&gt;Return &lt;strong&gt;no content&lt;/strong&gt; when the API returns no results.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;current-limitations&#34;&gt;Current limitations&lt;/h3&gt;
&lt;p&gt;Currently, the TV LLM Recommend UC &lt;strong&gt;does not include&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Fallback/contingency search (as in TV search).&lt;/li&gt;
&lt;li&gt;Filters customized (as persons, genres, participants, &amp;hellip;).&lt;/li&gt;
&lt;li&gt;Third-party catalogs outside Aura/Kernel scope.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;use-case-development&#34;&gt;Use case development&lt;/h2&gt;
&lt;p&gt;The TV LLM Recommend UC includes these components:&lt;/p&gt;
&lt;h3 id=&#34;understanding-features&#34;&gt;Understanding features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Intent:&lt;/strong&gt; &lt;code&gt;intent.tv.recommend&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;use-case-logic&#34;&gt;Use case logic&lt;/h3&gt;
&lt;p&gt;Once Aura recognizes the user&amp;rsquo;s utterance, the UC is resolved via:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Aura Bot dialog&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;TV LLM Recommend UC is built over &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3/&#34;&gt;&lt;em&gt;&lt;strong&gt;generic-dialog-v3&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;.&lt;br&gt;
See the &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-recommend-llm/tv-recommend-dialog/&#34;&gt;Dialog configuration&lt;/a&gt; for the required settings.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;response&#34;&gt;Response&lt;/h2&gt;
&lt;p&gt;The response follows the standard &lt;a href=&#34;../../docs/components/complex-logic-framework/clf-global-plugins/#input-validation-video-plugin&#34;&gt;video plugin response schema&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Where:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;intent&lt;/code&gt;: input intent.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;entities&lt;/code&gt;: input entities as received.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;result_intent&lt;/code&gt;: usually &lt;code&gt;MEDIA.SEARCH&lt;/code&gt;; &lt;code&gt;CHANNEL.PLAY&lt;/code&gt; is used when returning a single live channel.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;resources&lt;/code&gt;: List of response resources that includes three main parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: Type of the response resource.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;name&lt;/code&gt;: Name of the response resource. Example: &lt;code&gt;tv:video.recommend.multiple-results&lt;/code&gt;, &lt;code&gt;tv:video.recommend.by-default.simple-result&lt;/code&gt;, &lt;code&gt;tv:video.recommend.display.single-result&lt;/code&gt;, &lt;code&gt;tv:video.recommend.no-results&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;params&lt;/code&gt;: This field returns any required parameter in the resource. Example: &lt;code&gt;channelId&lt;/code&gt; or &lt;code&gt;deviceId&lt;/code&gt; for &lt;code&gt;tv:video.recommend.display.single-result&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;payload&lt;/code&gt;: Information provided by the &lt;strong&gt;Kernel API&lt;/strong&gt;, when we make the content get info request.
If we receive a response, this field includes the following parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: The value of this field depends on the type of data included in the field &lt;code&gt;data&lt;/code&gt; (info returned by the API):
&lt;ul&gt;
&lt;li&gt;If it is a value: &lt;code&gt;details&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;If it is a list: &lt;code&gt;content_list&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;data&lt;/code&gt;: It returns the information provided by the &lt;strong&gt;Kernel&lt;/strong&gt; API.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;status&lt;/code&gt;: Final status request. This field includes the following parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;code&lt;/code&gt;: Status code.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;message&lt;/code&gt;: Status message, which describes the status code.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;params&lt;/code&gt;: Parameter that sends details of status. This field does not appear if it is empty.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;actions&lt;/code&gt;: Actions to follow with the result of request. This plugin could include the following actions:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;REMOTEON.ZAPTO&lt;/code&gt;: Used to tune a live channel on STB.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;conditions&lt;/code&gt;: conditions for actions to be applied.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/ai-use-cases/tv-search-llm/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/ai-use-cases/tv-search-llm/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-llm-search-uc&#34;&gt;TV LLM Search UC&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Global use case developed by Aura Platform Team that allows users to search specific TV content in Aura&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The video &lt;strong&gt;LLM Search&lt;/strong&gt; use case is a global experience designed and developed by Aura Global Team that allows Telefónica customers to ask Aura for TV content (live content and catalog items) using a voice interface.&lt;/p&gt;
&lt;p&gt;Find additional information in the following documents:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Discover the &lt;a href=&#34;#specifications&#34;&gt;TV LLM Search specifications&lt;/a&gt; and the particularities of the &lt;a href=&#34;#use-case-development&#34;&gt;use case development&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Learn how to &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-search-llm/tv-search-llm-dialog/&#34;&gt;configure the generic-dialog for TV LLM Search use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Access the &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-search-llm/tv-search-llm-plugin/&#34;&gt;TV Retrieve plugin for LLM Search UC&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Discover the &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-search-llm/resources/&#34;&gt;resources used by the TV LLM Search use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Find the &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-search-llm/ai-config-obs/&#34;&gt;AI configuration for each OB&lt;/a&gt; for the TV LLM Search use case.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specifications&#34;&gt;Specifications&lt;/h2&gt;
&lt;h3 id=&#34;kernel-api&#34;&gt;Kernel API&lt;/h3&gt;
&lt;p&gt;To resolve the user&amp;rsquo;s request, Aura uses the normalized &lt;a href=&#34;https://developers.baikalplatform.com/apis/video-contents/&#34;&gt;Video Contents Kernel API&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;request-response-model&#34;&gt;Request-response model&lt;/h3&gt;
&lt;p&gt;The TV LLM Search UC is adapted to the normalized &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;request-response model v3&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;available-channels&#34;&gt;Available channels&lt;/h3&gt;
&lt;p&gt;The TV LLM Search UC can be enabled in any channel implementing the &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;normalized v3 request-response model&lt;/a&gt; and TV-related payloads.&lt;/p&gt;
&lt;h3 id=&#34;tv-llm-search-features&#34;&gt;TV LLM Search features&lt;/h3&gt;
&lt;p&gt;The normalized TV LLM Search UC includes &lt;strong&gt;basic retrieval features&lt;/strong&gt; for entertainment content:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Search by &lt;strong&gt;channel&lt;/strong&gt; (including live channels and third-party streaming platforms).&lt;/li&gt;
&lt;li&gt;Search by &lt;strong&gt;person&lt;/strong&gt; (e.g., presenters/actors).&lt;/li&gt;
&lt;li&gt;Search by &lt;strong&gt;free-form query&lt;/strong&gt; strings. (e.g., TV content titles, genres, subgenres, &amp;hellip;).&lt;/li&gt;
&lt;li&gt;Support for &lt;strong&gt;multiple values per entity&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;When a &lt;strong&gt;single live content&lt;/strong&gt; is unambiguously found, the plugin can trigger a &lt;strong&gt;channel tune action&lt;/strong&gt; (REMOTEON.ZAPTO) to start playback on the STB.&lt;/p&gt;
&lt;h3 id=&#34;current-limitations&#34;&gt;Current limitations&lt;/h3&gt;
&lt;p&gt;Currently, the TV LLM Search UC &lt;strong&gt;does not include&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Contingency/fallback search mode (no secondary search if zero results).&lt;/li&gt;
&lt;li&gt;Temporal filters (time intervals).&lt;/li&gt;
&lt;li&gt;Third-party catalogs outside Aura/Kernel scope.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;use-case-development&#34;&gt;Use case development&lt;/h2&gt;
&lt;p&gt;The TV LLM Search UC includes the following components:&lt;/p&gt;
&lt;h3 id=&#34;understanding-features&#34;&gt;Understanding features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Intent:&lt;/strong&gt; &lt;code&gt;intent.tv.retrieve&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Entities consumed by the plugin:&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Entity&lt;/th&gt;
&lt;th&gt;Example (utterance)&lt;/th&gt;
&lt;th&gt;Notes&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_channel&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;“Pon #0” / “Abrir Movistar LaLiga”&lt;/td&gt;
&lt;td&gt;Multiple channels allowed via &lt;code&gt;canon&lt;/code&gt; with `&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_person&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;“Lo de Broncano”&lt;/td&gt;
&lt;td&gt;Multiple persons allowed via &lt;code&gt;canon&lt;/code&gt; with `&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_query&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;“noticias Oviedo”&lt;/td&gt;
&lt;td&gt;Multiple tokens allowed via &lt;code&gt;canon&lt;/code&gt; with `&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&amp;#x26a0;&amp;#xfe0f; NLP should provide the &lt;strong&gt;canon&lt;/strong&gt; field concatenated with &lt;code&gt;||&lt;/code&gt; (double pipe) when multiple values are recognized (see &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-search-llm/ai-config-obs/&#34;&gt;NLP configuration&lt;/a&gt;)
&amp;#x26a0;&amp;#xfe0f; Other entities (e.g., time, devices, etc.) are &lt;strong&gt;not&lt;/strong&gt; used by this plugin and should be omitted for this UC.&lt;/p&gt;
&lt;h3 id=&#34;use-case-logic&#34;&gt;Use case logic&lt;/h3&gt;
&lt;p&gt;Once Aura recognizes the user&amp;rsquo;s utterance, the UC is resolved via:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Aura Bot dialog&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;TV LLM Search UC is built over &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3/&#34;&gt;&lt;em&gt;&lt;strong&gt;generic-dialog-v3&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;.&lt;br&gt;
See the &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-search-llm/tv-search-llm-dialog/&#34;&gt;Dialog configuration&lt;/a&gt; for the required settings.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;response&#34;&gt;Response&lt;/h2&gt;
&lt;p&gt;The response follows the standard &lt;a href=&#34;../../docs/components/complex-logic-framework/clf-global-plugins/#input-validation-video-plugin&#34;&gt;video plugin response schema&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Where:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;intent&lt;/code&gt;: input intent.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;entities&lt;/code&gt;: input entities as received.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;result_intent&lt;/code&gt;: usually &lt;code&gt;MEDIA.SEARCH&lt;/code&gt;; &lt;code&gt;CHANNEL.PLAY&lt;/code&gt; is used when returning a single live channel.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;resources&lt;/code&gt;: List of response resources that includes three main parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: Type of the response resource.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;name&lt;/code&gt;: Name of the response resource. Example: &lt;code&gt;tv:video.retrieve.multiple-results&lt;/code&gt;, &lt;code&gt;tv:video.retrieve.by-default.simple-result&lt;/code&gt;, &lt;code&gt;tv:video.retrieve.display.single-result&lt;/code&gt;, &lt;code&gt;tv:video.retrieve.no-results&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;params&lt;/code&gt;: This field returns any required parameter in the resource. Example: &lt;code&gt;queryDisplayed&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;payload&lt;/code&gt;: Information provided by the &lt;strong&gt;Kernel API&lt;/strong&gt;, when we make the content get info request.
If we receive a response, this field includes the following parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: The value of this field depends on the type of data included in the field &lt;code&gt;data&lt;/code&gt; (info returned by the API):
&lt;ul&gt;
&lt;li&gt;If it is a value: &lt;code&gt;details&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;If it is a list: &lt;code&gt;content_list&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;data&lt;/code&gt;: It returns the information provided by the &lt;strong&gt;Kernel&lt;/strong&gt; API.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;status&lt;/code&gt;: Final status request. This field includes the following parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;code&lt;/code&gt;: Status code.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;message&lt;/code&gt;: Status message, which describes the status code.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;params&lt;/code&gt;: Parameter that sends details of status. This field does not appear if it is empty.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;actions&lt;/code&gt;: Actions to follow with the result of request. This plugin could include the following actions:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;REMOTEON.ZAPTO&lt;/code&gt;: Used to tune a live channel on STB.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;conditions&lt;/code&gt;: conditions for actions to be applied.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/ai-use-cases/tv-triage-llm/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/ai-use-cases/tv-triage-llm/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-llm-triage-uc&#34;&gt;TV LLM Triage UC&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Global use case developed by Aura Platform Team that routes unanswered or unclassified requests to different LLMs&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The video &lt;strong&gt;LLM Triage&lt;/strong&gt; use case is a global experience designed and developed by Aura Global Team that routes unanswered or unclassified requests to different LLMs to improve the chances of returning relevant results to the user.&lt;/p&gt;
&lt;p&gt;Find additional information in the following documents:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Find the &lt;a href=&#34;../../docs/components/global-use-cases/ai-use-cases/tv-triage-llm/ai-config-obs/&#34;&gt;AI configuration for each OB&lt;/a&gt; for the TV LLM Triage use case.&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-search/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-search/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-search-use-case&#34;&gt;TV search use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Global use case developed by Aura Platform Team that allows users to search specific TV content in Aura&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The TV search use case is a global experience designed and developed by Aura Global Team that allows Telefónica customers to ask Aura for TV content using a vocal interface.&lt;/p&gt;
&lt;p&gt;Find additional information in following the documents:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Discover the &lt;a href=&#34;#specifications&#34;&gt;TV search specifications&lt;/a&gt; and the particularities of the &lt;a href=&#34;#use-case-development&#34;&gt;use case development&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Learn how to &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/tv-search-dialog/&#34;&gt;configure the generic-dialog for TV search use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Access to the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/tv-search-plugin/&#34;&gt;TV search plugin&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Discover which are the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/resources/&#34;&gt;resources used by the TV search use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Find out the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/nlp-config-obs/&#34;&gt;NLP configuration for each OB&lt;/a&gt; for the TV search use case.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specifications&#34;&gt;Specifications&lt;/h2&gt;
&lt;h3 id=&#34;kernel-api&#34;&gt;Kernel API&lt;/h3&gt;
&lt;p&gt;In order to resolve the user&amp;rsquo;s search request, Aura uses &lt;a href=&#34;https://developers.baikalplatform.com/apis/video-contents/&#34;&gt;Video Contents normalized Kernel API&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;request-response-model&#34;&gt;Request-response model&lt;/h3&gt;
&lt;p&gt;TV search use case is adapted to the new &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;request-response normalized model v3&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;available-channels&#34;&gt;Available channels&lt;/h3&gt;
&lt;p&gt;Once TV search v3 use case is fully normalized, it will be available for any channel that implements &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;normalized v3 request-response model&lt;/a&gt; including TV related data.&lt;/p&gt;
&lt;h3 id=&#34;search-features&#34;&gt;Search features&lt;/h3&gt;
&lt;p&gt;Currently, the normalized TV search use case includes &lt;strong&gt;basic search features&lt;/strong&gt; and &lt;strong&gt;smart answers&lt;/strong&gt; for entertainment content:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Search by title&lt;/li&gt;
&lt;li&gt;Search by genre (movie, series, documentaries, programs, short films and games)&lt;/li&gt;
&lt;li&gt;Search by subgenre (action, scare, love, etc)&lt;/li&gt;
&lt;li&gt;Search by actor or director&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In addition to these search features, the use case includes a contingency or fallback search mode used in case the Video Contents API does not provide any answer to Aura request. The contingency or fallback search mode could be deactivated by &lt;a href=&#34;../../docs/components/complex-logic-framework/clf-configuration/#disabling-contingency-or-fallback-modes-for-tv-search-use-case&#34;&gt;configuration&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&amp;#x1f195; As a novelty in the current release, the use case is able to provide the users with &lt;strong&gt;smart answers features&lt;/strong&gt;, meaning that the entities included in the user&amp;rsquo;s requests can be included in the answer.&lt;/p&gt;
&lt;p&gt;Therefore, the answer could be of this type:
&amp;ldquo;That&amp;rsquo;s what I&amp;rsquo;ve found about [$title, $participant, $genre, $subgenre]&lt;/p&gt;
&lt;p&gt;For example:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The user asks for a specific title: &amp;ldquo;Play a film starring Brad Pitt&amp;rdquo;&lt;/li&gt;
&lt;li&gt;In previous versions, Aura sends the content provided by the API as &amp;ldquo;That&amp;rsquo;s what I&amp;rsquo;ve found for you&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Now, the entity can be included in the answer, giving the user a most personalized answer: &amp;ldquo;That&amp;rsquo;s what I&amp;rsquo;ve found about Brad Pitt&amp;rdquo;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;current-limitations&#34;&gt;Current limitations&lt;/h3&gt;
&lt;p&gt;Currently, the TV search use case &lt;strong&gt;does not include&lt;/strong&gt; these features:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Request for a specific season o episode of a TV Series.&lt;/li&gt;
&lt;li&gt;Search content from third-parties (content must belong to Aura&amp;rsquo;s catalog).&lt;/li&gt;
&lt;li&gt;Search including temporary entities or time intervals.&lt;/li&gt;
&lt;li&gt;Search sport content based on entities.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;use-case-development&#34;&gt;Use case development&lt;/h2&gt;
&lt;p&gt;The TV search use case development includes these components:&lt;/p&gt;
&lt;h3 id=&#34;understanding-features&#34;&gt;Understanding features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;TV search use case intent: &lt;code&gt;intent.tv.search&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;TV search use case entities:&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Entity&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_film_title&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Busca La princesa prometida&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_documental_title&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Busca ABBA Forever&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_tvshow_title&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Busca Late Motiv&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_tvseries_title&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Busca Hierro&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_subgenre&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Busca una comedia&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_genre&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Busca una película&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_actor&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Busca algo de Brad Pitt&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_director&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Busca algo de Almodóvar&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&amp;#x26a0;&amp;#xfe0f; Other entities in the user&amp;rsquo;s request are not taken into account in the searching process.&lt;/p&gt;
&lt;p&gt;In order to understand users’ requests (utterances), Aura is trained with:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/experiences-builder/development-use-cases/nlp-uc-development/&#34;&gt;NLP expression&lt;/a&gt; to recognize the user&amp;rsquo;s utterance and detect her intention.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/experiences-builder/development-use-cases/nlp-uc-development/intro-catalogs/&#34;&gt;TV catalog&lt;/a&gt; in order to understand TV content (titles, actors, director) in the user&amp;rsquo;s utterance and detect them as Aura entities.&lt;/li&gt;
&lt;li&gt;Other content like genre or subgenre.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;use-case-logic&#34;&gt;Use case logic&lt;/h3&gt;
&lt;p&gt;Once Aura has recognized the user&amp;rsquo;s utterance based on NLP components, the use case should be resolved based on:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Aura Bot dialog&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;TV search is built over the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3/&#34;&gt;&lt;em&gt;&lt;strong&gt;generic-dialog-v3&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Check the section &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/tv-search-dialog/&#34;&gt;Configuration of the generic-dialog for TV search use case&lt;/a&gt; in order to know the required configuration for the TV search experience.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;CLF Plugin&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;../../docs/components/complex-logic-framework&#34;&gt;Complex Logic Framework&lt;/a&gt; is used for the recognition of the user&amp;rsquo;s request.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Check here the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/tv-search-plugin/&#34;&gt;TV search plugin&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/ai-use-cases/tv-conversational-search-llm/tv-conversational-search-dialog/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/ai-use-cases/tv-conversational-search-llm/tv-conversational-search-dialog/</guid>
      <description>
        
        
        

&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Description of Aura bot &lt;em&gt;&lt;strong&gt;conversational-search-dialog&lt;/strong&gt;&lt;/em&gt;, that is specifically designed to resolve the advanced TV recommendation using LLMs in &lt;em&gt;&lt;strong&gt;ATRIA&lt;/strong&gt;&lt;/em&gt; and complex logic resolution.&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The &lt;em&gt;&lt;strong&gt;conversational-search-dialog&lt;/strong&gt;&lt;/em&gt; is specifically designed to resolve the advanced recommendation, using LLMs in &lt;em&gt;&lt;strong&gt;ATRIA&lt;/strong&gt;&lt;/em&gt;. Specifically the LLM configured for TV Conversational Search UC.&lt;/p&gt;
&lt;p&gt;You can check its source code in Github:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/Telefonica/packages/generic-ai/src/dialogs/conversational-search-dialog.ts&#34;&gt;conversational-search-dialog.ts&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/Telefonica/packages/generic-ai/src/dialogs/v3/conversational-search-v3-dialog.ts&#34;&gt;conversational-search-v3-dialog.ts&lt;/a&gt;.
Currently, this dialog is available for Aura channelData V1 and V3 versions.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For this use case, the required specific configuration is set below:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;channelDataVersion&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt; &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// Only in Aura channelData V3 version
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;conversational-search-dialog-v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;allowAnonymous&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;true&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.conversational.search&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                                &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;core:flc.answer.error&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;needTvResolution&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;true&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;bypass&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;duration&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;60&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;payloadName&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;openai&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;initialData&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;recognizersEnabled&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;true&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;recognizersBreakIntents&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent.tv.display&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent.navigation.section_show&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;specific-values&#34;&gt;Specific values&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Key&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Value&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;bypass.duration&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;60 (minutes)&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;This value overwrites the default &lt;em&gt;&lt;strong&gt;aura-bot&lt;/strong&gt;&lt;/em&gt; value for bypass lasting 10 minutes.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;bypass.payloadName&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;openai&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Name of the interface that will be used as bypass payload for this dialog.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;bypass.initialData&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;empty&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;It should contain any data needed by the dialog to be initialized.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;bypass.recognizersEnabled&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;true&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;This value overwrites the default &lt;em&gt;&lt;strong&gt;aura-bot&lt;/strong&gt;&lt;/em&gt; way of working with recognizers when it is in bypass mode. If it is set to &lt;code&gt;true&lt;/code&gt;, recognizers are executed, and their result is stored in the bypass payload to be used, if needed, afterwards.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;bypass.recognizersBreakIntents&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Array of intents&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Used to handle when the user requested any other use case during the execution of the TV Conversational Search UC.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;configuration-by-channel&#34;&gt;Configuration by channel&lt;/h2&gt;
&lt;p&gt;For this dialog it is necessary to add the configuration of applicationId and presetId per channel and intent in the &lt;a href=&#34;../../docs/components/channels/current-channel-model/#atria-model&#34;&gt;channel model&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;For this use case, the required specific configuration per channel is set below:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;   
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;atria&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;dialogs&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent.conversational.search&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;applicationId&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;816bdab6-3ea3-4a77-bdea-12945d6d7053&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;presetId&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;acdef02f-f810-4474-8143-6b2a04a042f8&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;environment-variables&#34;&gt;Environment variables&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Property&lt;/th&gt;
&lt;th&gt;Type&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;th&gt;Mandatory&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;AURA_AUTHORIZATION_HEADER&lt;/td&gt;
&lt;td&gt;string&lt;/td&gt;
&lt;td&gt;Authorization header to be sent to &lt;code&gt;AURA_GATEWAY_API_ENDPOINT&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AURA_COMPLEX_LOGIC_ENDPOINT&lt;/td&gt;
&lt;td&gt;string&lt;/td&gt;
&lt;td&gt;URL of &lt;strong&gt;Complex Logic&lt;/strong&gt; endpoint to interact with resolution API.&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AURA_GATEWAY_API_ENDPOINT&lt;/td&gt;
&lt;td&gt;string&lt;/td&gt;
&lt;td&gt;URL of &lt;strong&gt;Aura Gateway API&lt;/strong&gt; endpoint&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AURA_GATEWAY_API_ISSUER_URL&lt;/td&gt;
&lt;td&gt;string&lt;/td&gt;
&lt;td&gt;Issuer URL for token info&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AURA_CHANNELDATA_DEFAULT_VERSION&lt;/td&gt;
&lt;td&gt;string&lt;/td&gt;
&lt;td&gt;Default version of channelData. By default &lt;code&gt;1.0.0&lt;/code&gt;.&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AURA_CHANNELDATA_LA_DEFAULT_VERSION&lt;/td&gt;
&lt;td&gt;string&lt;/td&gt;
&lt;td&gt;Default version of channelData for Latin America. By default &lt;code&gt;2.0.0&lt;/code&gt;.&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CONVERSATIONAL_SEARCH_MAX_TAGS&lt;/td&gt;
&lt;td&gt;number&lt;/td&gt;
&lt;td&gt;Default number of max tags to manage in the dialog. By default &lt;code&gt;4&lt;/code&gt;.&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CONVERSATIONAL_SEARCH_TAGS_SCORE_THRESHOLD&lt;/td&gt;
&lt;td&gt;number&lt;/td&gt;
&lt;td&gt;Default number with minimum score threshold required for a tag to be considered relevant in a TV Conversational Search. Value of this variable oscillates between 0 and 1. By default &lt;code&gt;0&lt;/code&gt;.&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;how-it-works&#34;&gt;How it works&lt;/h2&gt;
&lt;h3 id=&#34;steps&#34;&gt;Steps&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The dialog starts by init bypass mode.&lt;/li&gt;
&lt;li&gt;Then, it checks if the iteration comes from the Triage recognizer, by setting the user&amp;rsquo;s text to the fixed phase of resource: &lt;code&gt;tv-conversational-search:command.recommend&lt;/code&gt;  and then calling the AI ​​service.&lt;/li&gt;
&lt;li&gt;If the iteration originated because there were no results, it will return the text obtained from the resource: &lt;code&gt;tv-conversational-search:command.no-results&lt;/code&gt; to the user.&lt;/li&gt;
&lt;li&gt;Then, it calls the AI service to get a generative response based on the intent and the current session ID. The session ID is updated in the context for future requests.&lt;/li&gt;
&lt;li&gt;Next, with the response obtained from the LLM, the user will be composed of the following:
&lt;ul&gt;
&lt;li&gt;If the generative response returns command info, It will be checked if the command is &lt;code&gt;EXIT&lt;/code&gt; so the bypass will be closed and the resource: &lt;code&gt;tv-conversational-search:command.exit&lt;/code&gt; will be returned to the user.&lt;/li&gt;
&lt;li&gt;If the generative response returns tags info, it calls the complex logic service to get a resolution based on the intent and tags from the generative response. If the tags are not valid or not meet a threshold or there are no results, the resource will be returned: &lt;code&gt;tv-conversational-search:command.no-results&lt;/code&gt;. Instead, ff content exists, it will be returned in the channel data, but the text of the result shown to the user will always be the one obtained from generative response.&lt;/li&gt;
&lt;li&gt;If the generative response returns text info, this text is included in response of user, unless there are no results, as we indicated in the previous paragraph, a specific resource will be returned.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Finally, it sends the activity to the user and ends the dialog.&lt;/li&gt;
&lt;li&gt;The bypass will only be closed if these two conditions are met:
&lt;ul&gt;
&lt;li&gt;The &amp;lsquo;EXIT&amp;rsquo; command is detected.&lt;/li&gt;
&lt;li&gt;A new user intent configured that match those configured in the dialog in field: &lt;code&gt;recognizersBreakIntents&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;sequence-diagram&#34;&gt;Sequence diagram&lt;/h3&gt;
&lt;pre class=&#34;mermaid&#34;&gt;sequenceDiagram
    autonumber
    participant User
    participant Dialog
    participant AI Services
    participant Complex Logic

    Dialog-&amp;gt;&amp;gt;Dialog: Open dialog 
    Dialog-&amp;gt;&amp;gt;Dialog: Init bypass mode and check interaction origin
    alt interaction origin is no-results
        Dialog-&amp;gt;&amp;gt;User: Send activity to user with command no-results text
        Dialog-&amp;gt;&amp;gt;Dialog: End dialog
    else interaction origin is triage
        Dialog-&amp;gt;&amp;gt;Dialog: set text to send LLM with command recommend.
    end
    Dialog-&amp;gt;&amp;gt;Dialog: continue bypass
    alt user intent recognized match with break intent configured
        Dialog-&amp;gt;&amp;gt;Dialog: Close bypass
        Dialog-&amp;gt;&amp;gt;User: Send activity to user with command exit text
    else user intent is not break intent configured
        Dialog-&amp;gt;&amp;gt;Dialog: continue bypass
        Dialog-&amp;gt;&amp;gt;AI Services: Call AI service with intent and session ID
        AI Services-&amp;gt;&amp;gt;Dialog: Return generative response and session ID
        alt generative response contains a &amp;#39;EXIT&amp;#39; command
            Dialog-&amp;gt;&amp;gt;Dialog: Close bypass
            Dialog-&amp;gt;&amp;gt;User: Send activity to user with command exit text
            Dialog-&amp;gt;&amp;gt;Dialog: End dialog
        else generative response contains tags
            alt tags are valid
                Dialog-&amp;gt;&amp;gt;Complex Logic: Call complex logic service with intent and tags
                Complex Logic-&amp;gt;&amp;gt;Dialog: Return resolution
                alt No content found in resolution
                    Dialog-&amp;gt;&amp;gt;User: Send activity to user with command no-results text
                else Content found
                    Dialog-&amp;gt;&amp;gt;User: Send activity to user with text of generative response and resolution
                end
            else tags are invalid
                Dialog-&amp;gt;&amp;gt;User: Send activity to user with command no-results text
            end
        else generative response contains text
                Dialog-&amp;gt;&amp;gt;User: Send activity to user with text of generative response
        end
    end
    Dialog-&amp;gt;&amp;gt;Dialog: End dialog&lt;/pre&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: TV LLM Conversational None: Dialog Configuration</title>
      <link>/docs/components/global-use-cases/ai-use-cases/tv-conversational-none-llm/tv-conversational-none-llm-dialog/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/ai-use-cases/tv-conversational-none-llm/tv-conversational-none-llm-dialog/</guid>
      <description>
        
        
        &lt;h1 id=&#34;configuration-of-the-generic-ai-dialog-for-tv-llm-conversational-none-uc&#34;&gt;Configuration of the generic-ai-dialog for TV LLM Conversational None UC&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;How the &lt;em&gt;&lt;strong&gt;generic-ai-dialog&lt;/strong&gt;&lt;/em&gt; must be configured for this use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;specific-configuration&#34;&gt;Specific configuration&lt;/h2&gt;
&lt;p&gt;The TV LLM Conversational None UC is triggered by the &lt;a href=&#34;../../docs/components/global-use-cases/generic-ai-dialogs/generic-ai-dialog-v1.md&#34;&gt;&lt;em&gt;&lt;strong&gt;generic-ai-dialog-v1&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt; for &lt;code&gt;channelData&lt;/code&gt; v1 or  &lt;a href=&#34;../../docs/components/global-use-cases/generic-ai-dialogs/generic-ai-dialog-v3.md&#34;&gt;&lt;em&gt;&lt;strong&gt;generic-ai-dialog-v3&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt; for &lt;code&gt;channelData&lt;/code&gt; v3.
For this use case, the required specific configuration is set below:&lt;/p&gt;
&lt;p&gt;Example v1:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-ai&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;dialogs&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-ai-dialog-v1&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;onlyIn&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;set-top-box&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.conversational.none&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                                &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv.error.fpaOrCognitive&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Example v3:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;channelDataVersion&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-ai-dialog-v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;onlyIn&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;set-top-box&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;global-video-platform&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.conversational.none&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                            &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;core:flc.answer.error&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/ai-use-cases/tv-recommend-llm/tv-recommend-dialog/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/ai-use-cases/tv-recommend-llm/tv-recommend-dialog/</guid>
      <description>
        
        
        &lt;h1 id=&#34;configuration-of-the-generic-dialog-for-tv-recommend-use-case&#34;&gt;Configuration of the generic-dialog for TV Recommend use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;How the &lt;em&gt;&lt;strong&gt;generic-dialog&lt;/strong&gt;&lt;/em&gt; must be configured for this use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;specific-configuration&#34;&gt;Specific configuration&lt;/h2&gt;
&lt;p&gt;The TV Recommend use case is triggered by the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3&#34;&gt;&lt;em&gt;&lt;strong&gt;generic-dialog-v3&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;.&lt;br&gt;
For this use case, the required configuration is:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-dialog-v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;channelDataVersion&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.tv.recommend&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;          &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;core:flc.answer.error&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;          &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;needTvResolution&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;true&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;payloadType&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/ai-use-cases/tv-search-llm/tv-search-llm-dialog/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/ai-use-cases/tv-search-llm/tv-search-llm-dialog/</guid>
      <description>
        
        
        &lt;h1 id=&#34;configuration-of-the-generic-ai-dialog-for-tv-llm-search-uc&#34;&gt;Configuration of the generic-ai-dialog for TV LLM Search UC&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;How the &lt;em&gt;&lt;strong&gt;generic-ai-dialog&lt;/strong&gt;&lt;/em&gt; must be configured for this use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;specific-configuration&#34;&gt;Specific configuration&lt;/h2&gt;
&lt;p&gt;The TV LLM Search UC is triggered by the &lt;a href=&#34;../../docs/components/global-use-cases/generic-ai-dialogs/generic-ai-dialog-v1.md&#34;&gt;&lt;em&gt;&lt;strong&gt;generic-ai-dialog-v1&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt; for &lt;code&gt;channelData&lt;/code&gt; v1 or  &lt;a href=&#34;../../docs/components/global-use-cases/generic-ai-dialogs/generic-ai-dialog-v3.md&#34;&gt;&lt;em&gt;&lt;strong&gt;generic-ai-dialog-v3&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt; for &lt;code&gt;channelData&lt;/code&gt; v3.
For this use case, the required specific configuration is set below:&lt;/p&gt;
&lt;p&gt;Example v1:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-ai-dialog-v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;onlyIn&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;movistar-plus&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.tv.retrieve&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                            &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv:tv.error.fpaOrCognitive&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;payloadType&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Example v3:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-ai-dialog-v1&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;onlyIn&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;movistar-plus&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.tv.retrieve&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                            &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv:tv.error.fpaOrCognitive&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;payloadType&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/navigation-section-show/navigation-section-show-dialog/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/navigation-section-show/navigation-section-show-dialog/</guid>
      <description>
        
        
        &lt;h1 id=&#34;configuration-of-the-generic-dialog-for-section-show-use-case&#34;&gt;Configuration of the generic-dialog for Section Show use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;How the generic-dialog must be configured for this use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;specific-configuration&#34;&gt;Specific configuration&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;Section Show&lt;/strong&gt; use case is triggered by the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3&#34;&gt;&lt;em&gt;&lt;strong&gt;generic-dialog-v3&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;For this use case, the required specific configuration is set below:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-dialog-v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;channelDataVersion&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#a40000&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.navigation.section_show&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                            &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv:tv.error.fpaOrCognitive&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;actions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;NAVIGATION_SECTION_SHOW&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;MAKE_SOUND&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;sound&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;positive&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;needPlayingContent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;false&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;payloadType&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#a40000&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;onlyIn&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;set-top-box&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-app-open/tv-app-open-dialog/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-app-open/tv-app-open-dialog/</guid>
      <description>
        
        
        &lt;h1 id=&#34;configuration-of-the-generic-dialog-for-the-audiovisual-app-opening-use-case&#34;&gt;Configuration of the generic-dialog for the &lt;strong&gt;Audiovisual App Opening&lt;/strong&gt; use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;How the generic-dialog must be configured for this use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;specific-configuration&#34;&gt;Specific configuration&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;Audiovisual App Opening&lt;/strong&gt; use case is triggered by the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3&#34;&gt;&lt;em&gt;&lt;strong&gt;generic-dialog-v3&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;For this use case, the required specific configuration is set below:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-dialog-v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;channelDataVersion&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.tv.app_open&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv:video.section.not_available&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;actions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;GOTOAPP&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;MAKE_SOUND&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;sound&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;positive&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;needPlayingContent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;false&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;payloadType&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;onlyIn&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;set-top-box&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-content-get-info/tv-content-get-info-dialog/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-content-get-info/tv-content-get-info-dialog/</guid>
      <description>
        
        
        &lt;h1 id=&#34;configuration-of-the-generic-dialog-for-tv-content-get-info-use-case&#34;&gt;Configuration of the generic dialog for TV content get info use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;How the generic dialog must be configured for this use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;specific-configuration&#34;&gt;Specific configuration&lt;/h2&gt;
&lt;p&gt;The TV content get info use case is triggered by the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3&#34;&gt;generic dialog v3&lt;/a&gt;.
For this use case, the required specific configuration is set below:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-dialog-v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;channelDataVersion&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.tv.content_get_info&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;core:flc.answer.error&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;needTvResolution&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;true&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;onlyIn&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;movistar-plus&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;set-top-box&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;specific-values&#34;&gt;Specific values&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Key&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Value&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;triggerConditions[?].settings.needTvResolution&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;true&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Get resolution from resolution API&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-display/tv-display-dialog/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-display/tv-display-dialog/</guid>
      <description>
        
        
        &lt;h1 id=&#34;configuration-of-the-generic-dialog-for-tv-display-use-case&#34;&gt;Configuration of the generic-dialog for TV display use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;How the generic-dialog must be configured for this use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;specific-configuration&#34;&gt;Specific configuration&lt;/h2&gt;
&lt;p&gt;The TV display use case is triggered by the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3&#34;&gt;&lt;em&gt;&lt;strong&gt;generic-dialog-v3&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;.
For this use case, the required specific configuration is set below:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-dialog-v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;channelDataVersion&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.tv.display&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;core:flc.answer.error&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;needTvResolution&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;true&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;onlyIn&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;movistar-plus&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;set-top-box&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;specific-values&#34;&gt;Specific values&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Key&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Value&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;triggerConditions[?].settings.needTvResolution&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;true&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Get resolution from resolution API&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-language-change/tv-language-change-dialog/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-language-change/tv-language-change-dialog/</guid>
      <description>
        
        
        &lt;h1 id=&#34;configuration-of-the-generic-dialog-for-change-language-use-case&#34;&gt;Configuration of the generic-dialog for Change language use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;How the generic-dialog must be configured for this use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;specific-configuration&#34;&gt;Specific configuration&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;Change language&lt;/strong&gt; use case is triggered by the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3&#34;&gt;&lt;em&gt;&lt;strong&gt;generic-dialog-v3&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;For this use case, the required specific configuration is set below:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-dialog-v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;channelDataVersion&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.tv.language_change&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv:tv.error.fpaOrCognitive&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;actions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;REMOTEON_AUDIO_SUBTITLES&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;MAKE_SOUND&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;payloadType&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;onlyIn&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;set-top-box&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-move-backwards/tv-move-backwards-dialog/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-move-backwards/tv-move-backwards-dialog/</guid>
      <description>
        
        
        &lt;h1 id=&#34;configuration-of-the-generic-dialog-for-tv-move-backwards-use-case&#34;&gt;Configuration of the generic dialog for TV move backwards use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;How the generic dialog must be configured for this use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;specific-configuration&#34;&gt;Specific configuration&lt;/h2&gt;
&lt;p&gt;The TV move backwards use case is triggered by the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3&#34;&gt;generic dialog v3&lt;/a&gt;.
For this use case, the required specific configuration is set below:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Configuration for Brazil OB in STB channel. In this configuration, no default value is defined, as the STB device will resolve it when receiving an empty value in the parameter &lt;code&gt;levels&lt;/code&gt;. A new entity is now recognized: &lt;code&gt;ent.time_length_hour&lt;/code&gt;. Additional recognition was required by the &lt;em&gt;&lt;strong&gt;aura-bot&lt;/strong&gt;&lt;/em&gt; in order to obtain the total number of seconds to be returned in the parameter &lt;code&gt;levels&lt;/code&gt;. To obtain that convertion into seconds, a new function has been created in utiles called: &lt;code&gt;getSecondsLevelsWithTimerRecognizer&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-dialog-v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;channelDataVersion&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;suggestions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;false&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.tv.move_backwards&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;success&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv:tv.moveBackwards&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;core:flc.answer.error&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;actions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;SEND_KEY&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;MAKE_SOUND&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;payloadType&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;functions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;params&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;currentIntent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;persistentData&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;genericUtils&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;configuration&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;algorithm&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;return new Promise(async (resolve, reject) =&amp;gt; { try { const params = { levels: await genericUtils.getSecondsLevelsWithTimerRecognizer(currentIntent, configuration) }; persistentData.dialogData.actionParams[&amp;#39;SEND_KEY&amp;#39;] = params; resolve(); } catch (error) { reject(error); } });&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;onlyIn&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;set-top-box&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-move-forwards/tv-move-forwards-dialog/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-move-forwards/tv-move-forwards-dialog/</guid>
      <description>
        
        
        &lt;h1 id=&#34;configuration-of-the-generic-dialog-for-tv-move-forwards-use-case&#34;&gt;Configuration of the generic dialog for TV move forwards use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;How the generic dialog must be configured for this use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;specific-configuration&#34;&gt;Specific configuration&lt;/h2&gt;
&lt;p&gt;The TV move forwards use case is triggered by the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3&#34;&gt;generic dialog v3&lt;/a&gt;.
For this use case, the required specific configuration is set below:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Configuration for Spain OB in MP, MH and STB channels. In this configuration, there is still a default value of 60 seconds if no time entity is identified. Only the minutes and seconds entities are handled.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-dialog-v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;channelDataVersion&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;suggestions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;false&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.tv.move_forwards&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;success&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv:tv.moveForwards&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;core:flc.answer.error&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;actions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;SEND_KEY&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;params&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;keyCode&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;MOVE_FORWARD&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;levels&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;60&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;MAKE_SOUND&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;payloadType&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;functions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;params&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;currentIntent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;persistentData&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;algorithm&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;currentIntent.entities.map((ent) =&amp;gt; { if (!isNaN(ent.entity)) { persistentData.dialogData.actionParams.SEND_KEY = { levels: ent.type === &amp;#39;ent.time_length_sec&amp;#39; ? Number(ent.entity) : Number(ent.entity) * 60}}})&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;onlyIn&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;movistar-plus&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;set-top-box&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Configuration for Brazil OB in STB channel. In this configuration, no default value is defined, as the STB device will resolve it when receiving an empty value in the parameter &lt;code&gt;levels&lt;/code&gt;. A new entity is now recognized: &lt;code&gt;ent.time_length_hour&lt;/code&gt;. Additional recognition was required by the &lt;em&gt;&lt;strong&gt;aura-bot&lt;/strong&gt;&lt;/em&gt; in order to obtain the total number of seconds to be returned in the parameter &lt;code&gt;levels&lt;/code&gt;. To obtain that convertion into seconds, a new function has been created in utiles called: &lt;code&gt;getSecondsLevelsWithTimerRecognizer&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-dialog-v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;channelDataVersion&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;suggestions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;false&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.tv.move_forwards&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;success&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv:tv.moveForwards&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;core:flc.answer.error&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;actions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;SEND_KEY&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;MAKE_SOUND&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;payloadType&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;functions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;params&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;currentIntent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;persistentData&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;genericUtils&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;configuration&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;algorithm&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;return new Promise(async (resolve, reject) =&amp;gt; { try { const params = { levels: await genericUtils.getSecondsLevelsWithTimerRecognizer(currentIntent, configuration) }; persistentData.dialogData.actionParams[&amp;#39;SEND_KEY&amp;#39;] = params; resolve(); } catch (error) { reject(error); } });&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;onlyIn&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;set-top-box&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-none/tv-none-dialog/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-none/tv-none-dialog/</guid>
      <description>
        
        
        &lt;h1 id=&#34;configuration-of-the-generic-dialog-for-tv-none-use-case&#34;&gt;Configuration of the generic dialog for TV none use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;How the &lt;em&gt;&lt;strong&gt;generic dialog&lt;/strong&gt;&lt;/em&gt; must be configured for this use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;specific-configuration&#34;&gt;Specific configuration&lt;/h2&gt;
&lt;p&gt;The TV none use case is triggered by the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3&#34;&gt;generic dialog v3&lt;/a&gt;.
For this use case, the required specific configuration is set below:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-dialog-v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;channelDataVersion&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.tv.none&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;core:flc.answer.error&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;needTvResolution&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;true&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;onlyIn&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;set-top-box&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;specific-values&#34;&gt;Specific values&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Key&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Value&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;triggerConditions[?].settings.needTvResolution&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;true&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Get resolution from resolution API&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-search/tv-search-dialog/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-search/tv-search-dialog/</guid>
      <description>
        
        
        &lt;h1 id=&#34;configuration-of-the-generic-dialog-for-tv-search-use-case&#34;&gt;Configuration of the generic-dialog for TV search use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;How the &lt;em&gt;&lt;strong&gt;generic-dialog&lt;/strong&gt;&lt;/em&gt; must be configured for this use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;specific-configuration&#34;&gt;Specific configuration&lt;/h2&gt;
&lt;p&gt;The TV search use case is triggered by the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3&#34;&gt;&lt;em&gt;&lt;strong&gt;generic-dialog-v3&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;.
For this use case, the required specific configuration is set below:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-dialog-v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;channelDataVersion&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.tv.search&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;core:flc.answer.error&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;needTvResolution&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;true&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;payloadType&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;onlyIn&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;movistar-plus&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;set-top-box&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;specific-values&#34;&gt;Specific values&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Key&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Value&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;triggerConditions[?].settings.needTvResolution&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;true&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Get resolution from resolution api&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-subtitles-remove/tv-subtitles-remove-dialog/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-subtitles-remove/tv-subtitles-remove-dialog/</guid>
      <description>
        
        
        &lt;h1 id=&#34;configuration-of-the-generic-dialog-for-subtitles-remove-use-case&#34;&gt;Configuration of the generic-dialog for Subtitles remove use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;How the generic-dialog must be configured for this use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;specific-configuration&#34;&gt;Specific configuration&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;Subtitles remove&lt;/strong&gt; use case is triggered by the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3&#34;&gt;&lt;em&gt;&lt;strong&gt;generic-dialog-v3&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;For this use case, the required specific configuration is set below:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-dialog-v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;channelDataVersion&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.tv.subtitles_remove&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv:tv.error.fpaOrCognitive&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;actions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;REMOTEON_AUDIO_SUBTITLES&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;params&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;subtitles&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;None&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;MAKE_SOUND&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;payloadType&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;onlyIn&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;set-top-box&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-vod-epg-information/tv-vod-epg-information-dialog/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-vod-epg-information/tv-vod-epg-information-dialog/</guid>
      <description>
        
        
        &lt;h1 id=&#34;configuration-of-the-generic-dialog-for-tv-vod-epg-information-use-case&#34;&gt;Configuration of the generic dialog for TV VOD EPG information use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;How the generic dialog must be configured for this use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;specific-configuration&#34;&gt;Specific configuration&lt;/h2&gt;
&lt;p&gt;The TV VOD EPG information use case is triggered by the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3&#34;&gt;generic dialog v3&lt;/a&gt;.
For this use case, the required specific configuration is set below:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;generic-dialog-v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;channelDataVersion&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;v3&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;triggerConditions&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;intent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;intent.tv.vod_epg_information&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;settings&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;locales&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;error&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;core:flc.answer.error&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;payloadType&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;tv&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;functions&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;params&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;currentIntent&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;persistentData&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;algorithm&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;const entityType = currentIntent?.entities?.[0]?.type; switch (entityType) { case &amp;#39;ent.device_tv&amp;#39;: case &amp;#39;ent.device_mobile&amp;#39;: case &amp;#39;ent.device_phone&amp;#39;: persistentData.dialogData.dialogSetting.forcedIntentResult = { name: &amp;#39;MEDIA.SHEET_TV&amp;#39;, entities: [ { type: entityType, entity: currentIntent.entities?.[0]?.entity } ] }; break; default: persistentData.dialogData.dialogSetting.forcedIntentResult = { name: &amp;#39;MEDIA.SHEET_SECOND_SCREEN&amp;#39;, entities: [] }; break; }&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;&amp;#34;onlyIn&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;set-top-box&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;specific-values&#34;&gt;Specific values&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Key&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Value&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;triggerConditions[?].settings.functions.params&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;String[]&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Params for algorithm&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;triggerConditions[?].settings.functions.algorithm&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;String&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Logic to get intentResult by entities&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-display/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-display/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-display-use-case&#34;&gt;TV display use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Global use case developed by Aura Platform Team that allows users to display specific TV channels in Aura&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The TV display use case is a global experience designed and developed by Aura Global Team that allows Telefónica customers to ask Aura for a TV channel or other entities using a vocal interface.&lt;/p&gt;
&lt;p&gt;Find additional information in following the documents:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Discover the &lt;a href=&#34;#specifications&#34;&gt;TV display specifications&lt;/a&gt; and the particularities of the &lt;a href=&#34;#use-case-development&#34;&gt;use case development&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Learn how to &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-display/tv-display-dialog/&#34;&gt;configure the generic-dialog for TV display use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Access to the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-display/tv-display-plugin/&#34;&gt;TV display plugin&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Discover which are the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-display/resources/&#34;&gt;resources used by the TV display use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Find out the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-display/nlp-config-obs/&#34;&gt;NLP configuration for each OB&lt;/a&gt; for the TV display use case.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specifications&#34;&gt;Specifications&lt;/h2&gt;
&lt;h3 id=&#34;kernel-api&#34;&gt;Kernel API&lt;/h3&gt;
&lt;p&gt;In order to resolve the user&amp;rsquo;s display request, Aura uses &lt;a href=&#34;https://developers.baikalplatform.com/apis/video-contents/&#34;&gt;Video Contents normalized Kernel API&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;request-response-model&#34;&gt;Request-response model&lt;/h3&gt;
&lt;p&gt;TV display use case is adapted to the new &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;request-response normalized model v3&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;available-channels&#34;&gt;Available channels&lt;/h3&gt;
&lt;p&gt;Once TV display v3 use case is fully normalized, it will be available for any channel that implements &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;normalized v3 request-response model&lt;/a&gt; including TV related data.&lt;/p&gt;
&lt;h3 id=&#34;display-features&#34;&gt;Display features&lt;/h3&gt;
&lt;p&gt;Currently, the normalized TV display use case includes the following display features:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Display by channel (both for Brazil and Spain OBs)&lt;/li&gt;
&lt;li&gt;Display by content: title, genre, subgenre, actor or director (for Spain OB)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Therefore, the answer could be of this type:
&amp;ldquo;This is what they are broadcasting now on that channel&amp;rdquo;&lt;/p&gt;
&lt;h2 id=&#34;use-case-development&#34;&gt;Use case development&lt;/h2&gt;
&lt;p&gt;The TV display use case development includes these components:&lt;/p&gt;
&lt;h3 id=&#34;understanding-features&#34;&gt;Understanding features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;TV display use case intent: &lt;code&gt;intent.tv.display&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;TV display use case entities:
Entities vary across the OBs where this experience is available: Check &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-display/nlp-config-obs/&#34;&gt;NLP configuration by OB&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In order to understand users’ requests (utterances), Aura is trained with:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/experiences-builder/development-use-cases/nlp-uc-development/&#34;&gt;NLP expression&lt;/a&gt; to recognize the user&amp;rsquo;s utterance and detect her intention.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/experiences-builder/development-use-cases/nlp-uc-development/intro-catalogs/&#34;&gt;TV catalog&lt;/a&gt; in order to understand TV content (channels, titles, genres, subgenres, actors, directors) in the user&amp;rsquo;s utterance and detect them as Aura entities.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;use-case-logic&#34;&gt;Use case logic&lt;/h3&gt;
&lt;p&gt;Once Aura has recognized the user&amp;rsquo;s utterance based on NLP components, the use case should be resolved based on:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Aura Bot dialog&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;TV display is built over the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3/&#34;&gt;&lt;em&gt;&lt;strong&gt;generic-dialog-v3&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Check the section &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-display/tv-display-dialog/&#34;&gt;Configuration of the generic-dialog for TV display use case&lt;/a&gt; in order to know the required configuration for the TV display experience.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;CLF Plugin&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;../../docs/components/complex-logic-framework&#34;&gt;Complex Logic Framework&lt;/a&gt; is used for the recognition of the user&amp;rsquo;s request.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Check here the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-display/tv-display-plugin/&#34;&gt;TV display plugin&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-content-get-info/tv-content-get-info-plugin/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-content-get-info/tv-content-get-info-plugin/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-content-get-info-plugin&#34;&gt;TV content get info plugin&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Complex Logic Framework plugin for the TV content get info use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The TV content get info plugin resolves the request from a user getting information about channel.&lt;/p&gt;
&lt;p&gt;It includes some key steps described in the following sections.&lt;/p&gt;
&lt;h2 id=&#34;validate-input-request&#34;&gt;Validate input request&lt;/h2&gt;
&lt;p&gt;This step validates that the input request fulfills all the requirements from the &lt;a href=&#34;../../docs/components/complex-logic-framework/clf-global-plugins/input-validation-swagger/&#34;&gt;input schema&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If the input data has an error, the resource returned is:&lt;br&gt;
&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;&lt;code&gt;tv:video.model-validation.request.error&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;get-content-info-about-a-channel&#34;&gt;Get content info about a channel&lt;/h2&gt;
&lt;p&gt;The content get info about a channel is based in the received entities.&lt;/p&gt;
&lt;p&gt;The content get info stage follows the steps set below:&lt;/p&gt;
&lt;h3 id=&#34;build-the-search_query-param&#34;&gt;Build the &lt;code&gt;search_query&lt;/code&gt; param&lt;/h3&gt;
&lt;p&gt;The content get info builds a &lt;code&gt;search_query&lt;/code&gt; param using label values of first entity &lt;code&gt;ent.audiovisual_channel&lt;/code&gt; to prioritize channels searching. If the label value is &lt;code&gt;null&lt;/code&gt; for an entity, then the &lt;code&gt;canon&lt;/code&gt; value is used.&lt;/p&gt;
&lt;p&gt;Entity used to search is: &lt;code&gt;ent.audiovisual_channel&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;The entity will be used as follows:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;If there are &lt;strong&gt;channel entities&lt;/strong&gt; and other entities, then the &lt;code&gt;search_query&lt;/code&gt; parameter is built only using the first channel entity.
&lt;ul&gt;
&lt;li&gt;For instance: &lt;code&gt;channel_name: &amp;quot;La 1&amp;quot;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;If there are not entities allowed, then a query param to content get info is not built.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;With this prioritization, the system builds a &lt;code&gt;search_query&lt;/code&gt; param that will be used to call the video query API for searching purposes.&lt;/p&gt;
&lt;h3 id=&#34;video-query-api&#34;&gt;Video query API&lt;/h3&gt;
&lt;p&gt;After preparing the &lt;code&gt;search_query&lt;/code&gt; parameter, we will make a query to &lt;a href=&#34;https://developers.baikalplatform.com/apis/video-contents/&#34;&gt;Video Contents normalized Kernel API&lt;/a&gt; by searching through all the possible fields with the remaining words.&lt;/p&gt;
&lt;p&gt;To make this API call, several parameters are needed, which are described below:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;user_id&lt;/code&gt;: Input &lt;code&gt;data[aura_user][user_id]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;administrative_number&lt;/code&gt;: Input &lt;code&gt;data[app_context][user][account_number]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;access_token&lt;/code&gt;: Input &lt;code&gt;data[aura_user][access_token]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;scopes&lt;/code&gt;: Input &lt;code&gt;data[aura_user][scopes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;purposes&lt;/code&gt;: Input &lt;code&gt;data[aura_user][purposes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;device_type&lt;/code&gt;: Input &lt;code&gt;data[app_context][device][type]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;catalog_types&lt;/code&gt;: &lt;code&gt;LIVE&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;search_query&lt;/code&gt;: String with a custom search query based in the received entities.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;show_series&lt;/code&gt;: &lt;code&gt;series&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;commercialization_types&lt;/code&gt;: List made by &lt;code&gt;SVOD&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;max_quality&lt;/code&gt;: Input &lt;code&gt;data[app_context][device][max_quality]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;order&lt;/code&gt;: &lt;code&gt;personal&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;commercial_offer&lt;/code&gt;: Input &lt;code&gt;data[app_context][user][profile]&lt;/code&gt; if exists. Otherwise, do not use this param.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;live_at&lt;/code&gt;: UTC current time at which the request is made.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;profile&lt;/code&gt;: Input &lt;code&gt;data[app_context][user][video_profile_name]&lt;/code&gt; if exists. Otherwise, do not use this param.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;current_region&lt;/code&gt;: Input &lt;code&gt;data[app_context][location][currentRegion]&lt;/code&gt; if exists. Otherwise, do not use this param.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The fields &lt;code&gt;current_region&lt;/code&gt; and &lt;code&gt;profile&lt;/code&gt; may not be implemented in certain cases and this could give the error &lt;code&gt;501 Not Implemented&lt;/code&gt; in the video API according to the documentation.
To prevent this problem, we should send these fields only when input data has this value.&lt;/p&gt;
&lt;h3 id=&#34;content-get-info-response&#34;&gt;Content get info response&lt;/h3&gt;
&lt;p&gt;When a user requests for getting content information about a channel, the following possible scenarios can occur for the response:&lt;/p&gt;
&lt;p&gt;a. No content with channel info is received. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-content-get-info/resources/#specific-resources-for-the-use-case-tvcontent-get-info&#34;&gt;&lt;code&gt;tv:video.content-get-info.by-channel.no-results&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;b. Receive content with channel info. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-content-get-info/resources/#specific-resources-for-the-use-case-tvcontent-get-info&#34;&gt;&lt;code&gt;tv:video.content-get-info.by-channel.single-result&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;c. More than one type of content is received. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-content-get-info/resources/#specific-resources-for-the-use-case-tvcontent-get-info&#34;&gt;&lt;code&gt;tv:video.content-get-info.by-channel.multiple-results&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;d. The request does not contain any &lt;code&gt;ent.audiovisual_channel&lt;/code&gt; entity. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-content-get-info/resources/#specific-resources-for-the-use-case-tvcontent-get-info&#34;&gt;&lt;code&gt;tv:video.content-get-info.by-channel.no-results&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;e. Receive an API error. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;&lt;code&gt;tv:video.api.answer.error&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;response&#34;&gt;Response&lt;/h2&gt;
&lt;p&gt;The response follows this &lt;a href=&#34;../../docs/components/complex-logic-framework/api-definition/&#34;&gt;response schema&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Where:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;intent&lt;/code&gt;: input intent.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;entities&lt;/code&gt;: input entities.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;result_intent&lt;/code&gt;: This field is always &lt;code&gt;MEDIA.SEARCH&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;resources&lt;/code&gt;: List of response resources that includes three main parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: Type of the response resource.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;name&lt;/code&gt;: Name of the response resource. Example: &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-content-get-info/resources/#specific-resources-for-the-use-case-tvcontent-get-info&#34;&gt;&lt;code&gt;tv:video.content-get-info.by-channel.single-result&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;params&lt;/code&gt;: This field returns any required parameter in the resource.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;payload&lt;/code&gt;: Information provided by the &lt;strong&gt;Kernel API&lt;/strong&gt;, when we make the content get info request.
If we receive a response, this field includes the following parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: The value of this field depends on the type of data included in the field &lt;code&gt;data&lt;/code&gt; (info returned by the API):
&lt;ul&gt;
&lt;li&gt;If it is a value: &lt;code&gt;details&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;If it is a list: &lt;code&gt;content_list&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;data&lt;/code&gt;: It returns the information provided by the &lt;strong&gt;Kernel&lt;/strong&gt; API.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;status&lt;/code&gt;: Final status request. This field includes the following parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;code&lt;/code&gt;: Status code.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;message&lt;/code&gt;: Status message, which describes the status code.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;params&lt;/code&gt;: Parameter that sends details of status. This field does not appear if it is empty.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;actions&lt;/code&gt;: Actions to follow with the result of request. This plugin could include the following actions:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;MAKE_SOUND&lt;/code&gt;: The target for this action is &lt;code&gt;channel&lt;/code&gt; and its unique parameter is &lt;code&gt;sound&lt;/code&gt; (with &lt;code&gt;negative&lt;/code&gt; value assigned). This action is returned when we have the resource &lt;code&gt;tv:video.content-get-info.by-channel.no-results&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;conditions&lt;/code&gt;: Condition for the actions to be applied.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-content-get-info/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-content-get-info/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-content-get-info-use-case&#34;&gt;TV content get info use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Global use case developed by Aura Platform Team that allows users to get content info specific TV channels in Aura&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The TV content get info use case is a global experience designed and developed by Aura Global Team that allows Telefónica customers to ask Aura for a TV channel information using a vocal interface.&lt;/p&gt;
&lt;p&gt;Find additional information in following the documents:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Discover the &lt;a href=&#34;#specifications&#34;&gt;TV content get info specifications&lt;/a&gt; and the particularities of the &lt;a href=&#34;#use-case-development&#34;&gt;use case development&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Learn how to &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-content-get-info/tv-content-get-info-dialog/&#34;&gt;configure the generic dialog for TV content get info use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Access to the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-content-get-info/tv-content-get-info-plugin/&#34;&gt;TV content get info plugin&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Discover which are the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-content-get-info/resources/&#34;&gt;resources used by the TV content get info use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Find out the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-content-get-info/nlp-config-obs/&#34;&gt;NLP configuration for each OB&lt;/a&gt; for the TV content get info use case.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specifications&#34;&gt;Specifications&lt;/h2&gt;
&lt;h3 id=&#34;kernel-api&#34;&gt;Kernel API&lt;/h3&gt;
&lt;p&gt;In order to resolve the user&amp;rsquo;s  request, Aura uses &lt;a href=&#34;https://developers.baikalplatform.com/apis/video-contents/&#34;&gt;Video Contents normalized Kernel API&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;request-response-model&#34;&gt;Request-response model&lt;/h3&gt;
&lt;p&gt;TV content get info use case is adapted to the new &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;request-response normalized model v3&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;available-channels&#34;&gt;Available channels&lt;/h3&gt;
&lt;p&gt;Once TV content get info v3 use case is fully normalized, it will be available for any channel that implements &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;normalized v3 request-response model&lt;/a&gt; including TV related data.&lt;/p&gt;
&lt;p&gt;Currently, STB channels in ES are already available.&lt;/p&gt;
&lt;h3 id=&#34;display-features&#34;&gt;Display features&lt;/h3&gt;
&lt;p&gt;Currently, the normalized TV content get info use case includes &lt;strong&gt;basic get content information features&lt;/strong&gt; for channels:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Content get info by channel&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Therefore, the answer could be of this type:
&amp;ldquo;This is what they are broadcasting now on that channel&amp;rdquo;&lt;/p&gt;
&lt;h2 id=&#34;use-case-development&#34;&gt;Use case development&lt;/h2&gt;
&lt;p&gt;The TV content get info use case development includes these components:&lt;/p&gt;
&lt;h3 id=&#34;understanding-features&#34;&gt;Understanding features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;TV content get info use case intent: &lt;code&gt;intent.tv.content_get_info&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;TV content get info use case entities:&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Entity&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_channel&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;What&amp;rsquo;s on in channel 1?&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&amp;#x26a0;&amp;#xfe0f; Other entities in the user&amp;rsquo;s request are not taken into account in the get content info process.&lt;/p&gt;
&lt;p&gt;In order to understand users’ requests (utterances), Aura is trained with:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/experiences-builder/development-use-cases/nlp-uc-development/&#34;&gt;NLP expression&lt;/a&gt; to recognize the user&amp;rsquo;s utterance and detect her intention.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/experiences-builder/development-use-cases/nlp-uc-development/intro-catalogs/&#34;&gt;TV catalog&lt;/a&gt; in order to understand TV content (channels) in the user&amp;rsquo;s utterance and detect them as Aura entities.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;use-case-logic&#34;&gt;Use case logic&lt;/h3&gt;
&lt;p&gt;Once Aura has recognized the user&amp;rsquo;s utterance based on NLP components, the use case should be resolved based on:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Aura Bot dialog&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;TV content get info is built over the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3/&#34;&gt;generic dialog v3&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Check the section &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-content-get-info/tv-content-get-info-dialog/&#34;&gt;Configuration of the generic dialog for TV content get info use case&lt;/a&gt; in order to know the required configuration for the TV content get info experience.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;CLF Plugin&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;../../docs/components/complex-logic-framework&#34;&gt;Complex Logic Framework&lt;/a&gt; is used for the recognition of the user&amp;rsquo;s request.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Check here the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-content-get-info/tv-content-get-info-plugin/&#34;&gt;TV content get info plugin&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/ai-use-cases/tv-conversational-search-llm/tv-conversational-search-plugin/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/ai-use-cases/tv-conversational-search-llm/tv-conversational-search-plugin/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-conversational-search-plugin&#34;&gt;TV Conversational Search plugin&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Complex Logic Framework plugin for the TV Conversational Search use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;TV Conversational Search plugin&lt;/strong&gt; resolves requests from a user to obtain personalized recommendations for audiovisual content from Telefónica catalogs.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Intent&lt;/strong&gt;: &lt;code&gt;intent.conversational.search&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Main result intents&lt;/strong&gt;: &lt;code&gt;MEDIA.SEARCH&lt;/code&gt; (default), &lt;code&gt;CHANNEL.PLAY&lt;/code&gt; (when zapping to a live channel).&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;validate-input-request&#34;&gt;Validate input request&lt;/h2&gt;
&lt;p&gt;This step validates that the input request fulfills all the requirements from the &lt;a href=&#34;../../docs/components/complex-logic-framework/clf-global-plugins/input-validation-swagger/&#34;&gt;input schema&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If the input data is invalid, the resource returned is:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;&lt;code&gt;tv:video.model-validation.request.error&lt;/code&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;entities-used-for-search&#34;&gt;Entities used for search&lt;/h2&gt;
&lt;p&gt;The plugin works with the following &lt;strong&gt;entity types&lt;/strong&gt;:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Entity type&lt;/th&gt;
&lt;th&gt;Usage in search&lt;/th&gt;
&lt;th&gt;Notes&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_query&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Free text query, multiple values accepted with &lt;code&gt;||&lt;/code&gt;.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;Multiple entities &amp;amp; values:&lt;/strong&gt;&lt;br&gt;
You can repeat the same entity type multiple times &lt;strong&gt;and/or&lt;/strong&gt; provide several values in a single entity using the &lt;code&gt;\|\|&lt;/code&gt; separator.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;building-the-search-query&#34;&gt;Building the search query&lt;/h2&gt;
&lt;p&gt;The plugin constructs two query strings:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;code&gt;search_query&lt;/code&gt;&lt;/strong&gt; → technical query sent to Kernel API:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Group query and channel entities in parentheses.&lt;/li&gt;
&lt;li&gt;Joins different entity types with &lt;code&gt;AND&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Query: split on ||, trim each value, and join with OR inside the parentheses (no quotes).&lt;/li&gt;
&lt;li&gt;Example:
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;(mystery OR series)
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;code&gt;search_query_response&lt;/code&gt;&lt;/strong&gt; → a simplified, user-readable query string included in the payload and telemetry.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If no entities are present, the plugin returns a &lt;strong&gt;no results&lt;/strong&gt; response.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;api-video-query-handler-4p&#34;&gt;API video query (Handler 4P)&lt;/h2&gt;
&lt;p&gt;Plugin calls &lt;code&gt;Handler4P.tv_4p_handler.get_user_content_search(...)&lt;/code&gt; with the following parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;user_id&lt;/code&gt;: &lt;code&gt;data[aura_user][user_id]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;administrative_number&lt;/code&gt;: &lt;code&gt;data[app_context][user][account_number]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;access_token&lt;/code&gt;: &lt;code&gt;data[aura_user][access_token]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;scopes&lt;/code&gt;: &lt;code&gt;data[aura_user][scopes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;purposes&lt;/code&gt;: &lt;code&gt;data[aura_user][purposes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;device_type&lt;/code&gt;: &lt;code&gt;data[app_context][device][type]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;catalog_types&lt;/code&gt;:
&lt;ul&gt;
&lt;li&gt;Default: &lt;code&gt;VOD&lt;/code&gt;, &lt;code&gt;LIVE&lt;/code&gt;, &lt;code&gt;L7D&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Allowed: &lt;code&gt;VOD&lt;/code&gt;, &lt;code&gt;LIVE&lt;/code&gt;, &lt;code&gt;L7D&lt;/code&gt;, &lt;code&gt;LCH&lt;/code&gt;, &lt;code&gt;LSR&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Filtered according to &lt;code&gt;allowed_catalog_types&lt;/code&gt; of the device&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;search_query&lt;/code&gt;: built as explained above&lt;/li&gt;
&lt;li&gt;&lt;code&gt;show_series&lt;/code&gt;: &lt;code&gt;series&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;profile&lt;/code&gt;: &lt;code&gt;data[app_context][user][video_profile_name]&lt;/code&gt; (optional; only if present to avoid API 501 errors)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;commercialization_types&lt;/code&gt;: &lt;code&gt;[SVOD]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;max_quality&lt;/code&gt;: &lt;code&gt;data[app_context][device][max_quality]&lt;/code&gt; (optional)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;current_region&lt;/code&gt;: &lt;code&gt;data[app_context][location][currentRegion]&lt;/code&gt; (optional)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;order&lt;/code&gt;: &lt;code&gt;personal&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;response-logic&#34;&gt;Response logic&lt;/h2&gt;
&lt;p&gt;Depending on the number and type of results, the plugin builds different responses:&lt;/p&gt;
&lt;h3 id=&#34;1-no-results&#34;&gt;1. No results&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Plays &lt;strong&gt;negative sound&lt;/strong&gt; unless the channel is disabled in the &lt;code&gt;sound_disabled_channels&lt;/code&gt; configuration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;result_intent&lt;/code&gt;: &lt;code&gt;MEDIA.SEARCH&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Resource: &lt;code&gt;tv:video.conversational.search.no-results&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Status: &lt;code&gt;SUCCESS.NO_CONTENT&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;2-one-result&#34;&gt;2. One result&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Live channel&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;Payload: &lt;code&gt;{ type: details, data: &amp;lt;channel info&amp;gt; }&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Action: &lt;code&gt;REMOTEON.ZAPTO&lt;/code&gt; (with params &lt;code&gt;channelId&lt;/code&gt; and &lt;code&gt;deviceId&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Plays &lt;strong&gt;positive sound&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;result_intent&lt;/code&gt;: &lt;code&gt;CHANNEL.PLAY&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Resource: &lt;code&gt;tv:video.conversational.search.single-result&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Non-live content (VOD, L7D, etc.)&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;Payload: details of the single item&lt;/li&gt;
&lt;li&gt;Plays &lt;strong&gt;positive sound&lt;/strong&gt; unless the channel is disabled in the &lt;code&gt;sound_disabled_channels&lt;/code&gt; configuration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;result_intent&lt;/code&gt;: &lt;code&gt;MEDIA.SEARCH&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Resource: &lt;code&gt;tv:video.conversational.search.by-default.simple-result&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;3-multiple-results&#34;&gt;3. Multiple results&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Payload: list of items&lt;/li&gt;
&lt;li&gt;Plays &lt;strong&gt;positive sound&lt;/strong&gt; unless the channel is disabled in the &lt;code&gt;sound_disabled_channels&lt;/code&gt; configuration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;result_intent&lt;/code&gt;: &lt;code&gt;MEDIA.SEARCH&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Resource: &lt;code&gt;tv:video.conversational.search.multiple-results&lt;/code&gt; (with param &lt;code&gt;query_displayed&lt;/code&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;resources-returned&#34;&gt;Resources returned&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;TV Recommend plugin&lt;/strong&gt; may return the following resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;tv:video.model-validation.request.error&lt;/code&gt; → input validation error&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tv:video.api.answer.error&lt;/code&gt; → API Video error&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tv:video.conversational.search.no-results&lt;/code&gt; → no content found&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tv:video.conversational.search.by-default.simple-result&lt;/code&gt; → one non-live result&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tv:video.conversational.search.multiple-results&lt;/code&gt; → multiple results&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tv:video.conversational.search.display.single-result&lt;/code&gt; → one live channel (tune channel)&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;payload-and-actions&#34;&gt;Payload and actions&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Payload&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: &lt;code&gt;details&lt;/code&gt; (single item) or &lt;code&gt;content_list&lt;/code&gt; (multiple items)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;data&lt;/code&gt;: item(s) from Kernel API&lt;/li&gt;
&lt;li&gt;For multiple results: includes &lt;code&gt;search_query&lt;/code&gt; (human-readable string)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Actions&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sound feedback (positive/negative)&lt;/li&gt;
&lt;li&gt;For a single live channel: &lt;code&gt;{&amp;quot;name&amp;quot;: &amp;quot;REMOTEON.ZAPTO&amp;quot;, &amp;quot;params&amp;quot;: {&amp;quot;channelId&amp;quot;: &amp;quot;$channelId&amp;quot;, &amp;quot;deviceId&amp;quot;: &amp;quot;$deviceId&amp;quot;}, &amp;quot;target&amp;quot;: &amp;quot;stb&amp;quot;}&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;status-codes&#34;&gt;Status codes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;status&lt;/code&gt;: Final status request. This field includes the following parameters:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;code&lt;/code&gt;: Status code with value: &lt;code&gt;SUCCESS&lt;/code&gt;, &lt;code&gt;SUCCESS.NO_CONTENT&lt;/code&gt; or &lt;code&gt;ERROR.INTERNAL&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;message&lt;/code&gt;: Status message, which describes the status code.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;params&lt;/code&gt;: Parameter that sends details of status. This field does not appear if it is empty.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;example-behavior&#34;&gt;Example behavior&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;em&gt;“Recommend me something”&lt;/em&gt;
&lt;ul&gt;
&lt;li&gt;for a single live channel result → &lt;code&gt;CHANNEL.PLAY&lt;/code&gt; tune channel with live channel.&lt;/li&gt;
&lt;li&gt;for a multiple results → &lt;code&gt;MEDIA.SEARCH&lt;/code&gt; with &lt;code&gt;tv:video.conversational.search.multiple-results&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;for any results → &lt;code&gt;tv:video.conversational.search.no-results&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-display/tv-display-plugin/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-display/tv-display-plugin/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-display-plugin&#34;&gt;TV display plugin&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Complex Logic Framework plugin for the TV display use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The TV display plugin resolves the request from a user displaying a channel or content.&lt;/p&gt;
&lt;p&gt;It includes some key steps described in the following sections.&lt;/p&gt;
&lt;h2 id=&#34;validate-input-request&#34;&gt;Validate input request&lt;/h2&gt;
&lt;p&gt;This step validates that the input request fulfills all the requirements from the &lt;a href=&#34;../../docs/components/complex-logic-framework/clf-global-plugins/input-validation-swagger/&#34;&gt;input schema&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If the input data has an error, the resource returned is:&lt;br&gt;
&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;&lt;code&gt;tv:video.model-validation.request.error&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;display-channel-or-content&#34;&gt;Display channel or content&lt;/h2&gt;
&lt;p&gt;The display channel or content is based in the received entities.&lt;/p&gt;
&lt;p&gt;The display stage follows the steps set below:&lt;/p&gt;
&lt;h3 id=&#34;build-the-search_query-param&#34;&gt;Build the &lt;code&gt;search_query&lt;/code&gt; param&lt;/h3&gt;
&lt;p&gt;The display plugin builds a &lt;code&gt;search_query&lt;/code&gt; param using label values of entities to prioritize the searched channel content or video content. If the &lt;code&gt;label&lt;/code&gt; value is &lt;code&gt;null&lt;/code&gt; for an entity, then the &lt;code&gt;canon&lt;/code&gt; value is used.&lt;/p&gt;
&lt;p&gt;Entities used to search are grouped by:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Channel entities&lt;/strong&gt;: &lt;code&gt;ent.audiovisual_channel&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Title entities&lt;/strong&gt;: &lt;code&gt;ent.audiovisual_documental_title&lt;/code&gt;, &lt;code&gt;ent.audiovisual_film_title&lt;/code&gt;, &lt;code&gt;ent.audiovisual_tvseries_title&lt;/code&gt; and &lt;code&gt;ent.audiovisual_tvshow_title&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Participant entities&lt;/strong&gt;: &lt;code&gt;ent.audiovisual_actor&lt;/code&gt; and &lt;code&gt;ent.audiovisual_director&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Genre entities&lt;/strong&gt;: &lt;code&gt;ent.audiovisual_genre&lt;/code&gt; and &lt;code&gt;ent.audiovisual_subgenre&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The priority to search using these entities is described as follows:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;If there are &lt;strong&gt;channel entities&lt;/strong&gt; and other entities, then the &lt;code&gt;search_query&lt;/code&gt; parameter is built only using the first channel entity.
&lt;ul&gt;
&lt;li&gt;For instance: &lt;code&gt;channel_name: &amp;quot;La 1&amp;quot;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;If there are &lt;strong&gt;title entities&lt;/strong&gt; and other entities, then the &lt;code&gt;search_query&lt;/code&gt; parameter is built only using title entities.
&lt;ul&gt;
&lt;li&gt;For instance: &lt;code&gt;title: (&amp;quot;Matrix&amp;quot; OR &amp;quot;La princesa prometida&amp;quot;)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;If there are &lt;strong&gt;participant entities&lt;/strong&gt; and other entities, then the &lt;code&gt;search_query&lt;/code&gt; parameter is built only using participant entities.
&lt;ul&gt;
&lt;li&gt;All entities (&lt;code&gt;ent.audiovisual_actor&lt;/code&gt; and &lt;code&gt;ent.audiovisual_director&lt;/code&gt;) are used for fields &lt;code&gt;actor&lt;/code&gt; and &lt;code&gt;director&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;For instance: &lt;code&gt;actor: (&amp;quot;Tom Cruise&amp;quot; OR &amp;quot;Martin Scorsese&amp;quot;) OR director: (&amp;quot;Tom Cruise&amp;quot; OR &amp;quot;Martin Scorsese&amp;quot;)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;If there are &lt;strong&gt;genre entities&lt;/strong&gt; and other entities, then the &lt;code&gt;search_query&lt;/code&gt; parameter is built only using genre entities.
&lt;ul&gt;
&lt;li&gt;The &lt;code&gt;ent.audiovisual_genre&lt;/code&gt; is used with the field &lt;code&gt;content_category&lt;/code&gt; and the &lt;code&gt;ent.audiovisual_subgenre&lt;/code&gt; with field &lt;code&gt;genre&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;For instance: &lt;code&gt;content_category: (&amp;quot;MOV&amp;quot; OR &amp;quot;SER&amp;quot; OR &amp;quot;DOC&amp;quot;) AND genre: (&amp;quot;Terror&amp;quot; OR &amp;quot;Acción&amp;quot;)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;If there are not any entities allowed, then a query param to search is not built.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;With this prioritization, the system builds a &lt;code&gt;search_query&lt;/code&gt; param that will be used to call the API video query for searching purposes.&lt;/p&gt;
&lt;h3 id=&#34;video-query-api&#34;&gt;Video query API&lt;/h3&gt;
&lt;p&gt;After preparing the &lt;code&gt;search_query&lt;/code&gt; parameter, we will make a query to &lt;a href=&#34;https://developers.baikalplatform.com/apis/video-contents/&#34;&gt;Video Contents normalized Kernel API&lt;/a&gt; by searching through all the possible fields with the remaining words.&lt;/p&gt;
&lt;p&gt;To make this API call, several parameters are needed, which are described below:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;user_id&lt;/code&gt;: Input &lt;code&gt;data[aura_user][user_id]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;administrative_number&lt;/code&gt;: Input &lt;code&gt;data[app_context][user][account_number]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;access_token&lt;/code&gt;: Input &lt;code&gt;data[aura_user][access_token]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;scopes&lt;/code&gt;: Input &lt;code&gt;data[aura_user][scopes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;purposes&lt;/code&gt;: Input &lt;code&gt;data[aura_user][purposes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;device_type&lt;/code&gt;: Input &lt;code&gt;data[app_context][device][type]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;catalog_types&lt;/code&gt;: use &lt;code&gt;LIVE&lt;/code&gt; value if there are &lt;strong&gt;channel entities&lt;/strong&gt;, else use &lt;code&gt;VOD,LIVE,L7D&lt;/code&gt; value  for &lt;strong&gt;title entities&lt;/strong&gt;, &lt;strong&gt;participant entities&lt;/strong&gt; or &lt;strong&gt;genre entities&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;search_query&lt;/code&gt;: String with a custom search query based in the received entities.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;show_series&lt;/code&gt;: &lt;code&gt;series&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;commercialization_types&lt;/code&gt;: List made by &lt;code&gt;SVOD&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;max_quality&lt;/code&gt;: Input &lt;code&gt;data[app_context][device][max_quality]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;order&lt;/code&gt;: &lt;code&gt;personal&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;commercial_offer&lt;/code&gt;: Input &lt;code&gt;data[app_context][user][profile]&lt;/code&gt; if exists. Otherwise, do not use this param.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;live_at&lt;/code&gt;: if there are &lt;strong&gt;channel entities&lt;/strong&gt; use UTC current time at which the request is made. Otherwise, do not use this param.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;profile&lt;/code&gt;: Input &lt;code&gt;data[app_context][user][video_profile_name]&lt;/code&gt; if exists. Otherwise, do not use this param.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;current_region&lt;/code&gt;: Input &lt;code&gt;data[app_context][location][currentRegion]&lt;/code&gt; if exists. Otherwise, do not use this param.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The fields &lt;code&gt;current_region&lt;/code&gt; and &lt;code&gt;profile&lt;/code&gt; may not be implemented in certain cases and this could give the error &lt;code&gt;501 Not Implemented&lt;/code&gt; in the video API according to the documentation.
To prevent this problem, we should send these fields only when input data has this value.&lt;/p&gt;
&lt;h3 id=&#34;display-response&#34;&gt;Display response&lt;/h3&gt;
&lt;p&gt;When a user requests for displaying a channel, the following possible scenarios can occur for the response:&lt;/p&gt;
&lt;p&gt;a. Receive no results at all. Then, it executes the &lt;a href=&#34;#contingency-search&#34;&gt;contingency search&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;b. Receive content with channel info. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-display/resources/#specific-resources-for-the-use-case-tv-display&#34;&gt;&lt;code&gt;tv:video.display.by-channel.single-result&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;c. Receive content with channel info has already been broadcast or recieve a video content. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-display/resources/#specific-resources-for-the-use-case-tv-display&#34;&gt;&lt;code&gt;video.display.by-default.single-result&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;d. Receive content with channel info that has not been broadcast yet or the content does not have enough information to be played. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-display/resources/#specific-resources-for-the-use-case-tv-display&#34;&gt;&lt;code&gt;video.display.by-default.detail-result&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;e. Receive more than one type of content with channel info or video content. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-display/resources/#specific-resources-for-the-use-case-tv-display&#34;&gt;&lt;code&gt;tv:video.display.by-default.multiple-results&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;f. Receive an API error. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;&lt;code&gt;tv:video.api.answer.error&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;contingency-search&#34;&gt;Contingency search&lt;/h2&gt;
&lt;p&gt;The contingency search is a more in-depth search to get, at least, one response. This search uses the entire utterance in every search field.&lt;/p&gt;
&lt;p&gt;Contingency search is based on the following steps:&lt;/p&gt;
&lt;h3 id=&#34;normalization-section&#34;&gt;Normalization section&lt;/h3&gt;
&lt;p&gt;When a request is made by the user, it is possible to find certain words with no real value for Aura, so the system is not able to redirect them to obtain a response. For this reason, a list of forbidden words known as &amp;ldquo;ignore-words&amp;rdquo; will be declared, which will be eliminated.&lt;/p&gt;
&lt;p&gt;The first step is to transform the entire utterance received as input to lowercase, removing all non-alphanumeric characters and separators. Once the utterance has been normalized, the words that belong to the list of &amp;ldquo;ignore-words&amp;rdquo; are eliminated.&lt;/p&gt;
&lt;p&gt;This list is declared in a resource file called &lt;code&gt;normalizer_rules.json&lt;/code&gt;. This file can be found in the following path:
&lt;em&gt;src.aura_clf_video.resources.[language].normalizer_rules.json&lt;/em&gt;
Where [&lt;code&gt;language&lt;/code&gt;] must be replaced by each language, for example: &lt;code&gt;es-es&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;If the language does not have the normalizer rule defined, it will be redirected to a default folder:
&lt;em&gt;src.aura_clf_video.resources.default.normalizer_rules.json&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;If, for example, the language is Spanish, the path to the resource where the normalization rules are defined will be:
&lt;em&gt;src.aura_clf_video.resources.es-es.normalizer_rules.json&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Normalizer rules structure
It is a dictionary where all the items are declared in a list as shown below:&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;{
  &amp;#34;ignore_items&amp;#34;: [
    &amp;#34;ignore item 1&amp;#34;,
    &amp;#34;ignore item 2&amp;#34;
  ]
}
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Validation of resource content&lt;br&gt;
The normalization is done sequentially, a previous rule cannot affect a succeeding one.&lt;/p&gt;
&lt;p&gt;For example:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The utterance is &amp;ldquo;ok aura some&amp;rdquo;.&lt;/li&gt;
&lt;li&gt;We define &amp;ldquo;aura&amp;rdquo; and also &amp;ldquo;ok aura&amp;rdquo; in the &amp;ldquo;ignore-words&amp;rdquo; list.&lt;/li&gt;
&lt;li&gt;If we remove &amp;ldquo;aura&amp;rdquo; firstly from the original utterance, we obtain the following normalized utterance: &amp;ldquo;ok some&amp;rdquo;. In this case, &amp;ldquo;ok aura&amp;rdquo; does not have any effect.&lt;/li&gt;
&lt;li&gt;In short, the correct order should be: first, remove &amp;ldquo;ok aura&amp;rdquo; and, after that, remove &amp;ldquo;aura&amp;rdquo;. In this case, we will obtain the final utterance as &amp;ldquo;some&amp;rdquo;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;ldquo;Ignore-words&amp;rdquo; will be automatically validated in order to prevent this behavior in every Pull Request.&lt;/p&gt;
&lt;p&gt;If after normalization the normalized phrase is empty, the resource returned is:
&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-display/resources/#specific-resources-for-the-use-case-tvdisplay&#34;&gt;&lt;code&gt;tv:video.display.contingency.no-results&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;api-video-query&#34;&gt;API video query&lt;/h3&gt;
&lt;p&gt;After normalizing, we will query the Telefonica Kernel video API by searching through all possible fields with the remaining words.&lt;/p&gt;
&lt;p&gt;To make this API call, a series of parameters are going to be needed, which are described below:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;user_id&lt;/code&gt;: Input &lt;code&gt;data[aura_user][user_id]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;administrative_number&lt;/code&gt;: Input &lt;code&gt;data[app_context][user][account_number]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;access_token&lt;/code&gt;: Input &lt;code&gt;data[aura_user][access_token]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;scopes&lt;/code&gt;: Input &lt;code&gt;data[aura_user][scopes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;purposes&lt;/code&gt;: Input &lt;code&gt;data[aura_user][purposes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;device_type&lt;/code&gt;: Input &lt;code&gt;data[app_context][device][type]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;catalog_types&lt;/code&gt;: List that is made by &lt;code&gt;VOD&lt;/code&gt;, &lt;code&gt;LIVE&lt;/code&gt; and &lt;code&gt;L7D&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;search_query&lt;/code&gt;: Is a joint of the normalized phrase by &lt;code&gt;OR&lt;/code&gt; operator. Use this format to search by any fields. Example: &amp;ldquo;La resistencia Shameless&amp;rdquo; the &lt;code&gt;search_query&lt;/code&gt; is &amp;ldquo;(La OR resistencia OR Shameless)&amp;rdquo;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;show_series&lt;/code&gt;: &lt;code&gt;series&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;profile&lt;/code&gt;: Input &lt;code&gt;data[app_context][user][video_profile_name]&lt;/code&gt;. This field may not be implemented in some cases and this could give the error &lt;code&gt;501 Not Implemented&lt;/code&gt; in the video API according to the documentation.
To prevent this problem, we should send this field only when input data has this value.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;commercialization_types&lt;/code&gt;: List made by &lt;code&gt;SVOD&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;max_quality&lt;/code&gt;: Input &lt;code&gt;data[app_context][device][max_quality]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;order&lt;/code&gt;: &lt;code&gt;personal&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;current_region&lt;/code&gt;: Input &lt;code&gt;data[app_context][location][currentRegion]&lt;/code&gt; if exists. Otherwise, do not use this param.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;contingency-search-response&#34;&gt;Contingency search response&lt;/h3&gt;
&lt;p&gt;When performing a contingency search, there are four possible scenarios for the response received by the search:&lt;/p&gt;
&lt;p&gt;a. Receive an API error.  The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;&lt;code&gt;tv:video.api.answer.error&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;b. Receive no results at all. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-display/resources/#specific-resources-for-the-use-case-tvdisplay&#34;&gt;&lt;code&gt;tv:video.display.contingency.no-results&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;c. Receive a single result. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-display/resources/#specific-resources-for-the-use-case-tvdisplay&#34;&gt;&lt;code&gt;tv:video.display.contingency.single-result&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;d. Receive several results. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-display/resources/#specific-resources-for-the-use-case-tvdisplay&#34;&gt;&lt;code&gt;tv:video.display.contingency.multiple-results&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;response&#34;&gt;Response&lt;/h2&gt;
&lt;p&gt;The response follows this &lt;a href=&#34;../../docs/components/complex-logic-framework/api-definition/&#34;&gt;response schema&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Where:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;intent&lt;/code&gt;: input intent.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;entities&lt;/code&gt;: input entities.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;result_intent&lt;/code&gt;: This field is always &lt;code&gt;MEDIA.SEARCH&lt;/code&gt; except when the resource is:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;video.display.by-channel.single-result&lt;/code&gt;, then the field value is &lt;code&gt;CHANNEL.PLAY&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;video.display.by-default.single-result&lt;/code&gt;, then the field value is &lt;code&gt;CONTENT.PLAY&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;resources&lt;/code&gt;: List of response resources that includes three main parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: Type of the response resource.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;name&lt;/code&gt;: Name of the response resource. Example: &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-display/resources/#specific-resources-for-the-use-case-tv-display&#34;&gt;&lt;code&gt;tv:video.display.by-channel.single-result&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;params&lt;/code&gt;: This field returns any required parameter in the resource.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;payload&lt;/code&gt;: Information provided by the &lt;strong&gt;Kernel API&lt;/strong&gt;, when we make the display request.
If we receive a response, this field includes the following parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: The value of this field depends on the type of data included in the field &lt;code&gt;data&lt;/code&gt; (info returned by the API):
&lt;ul&gt;
&lt;li&gt;If it is a value: &lt;code&gt;details&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;If it is a list: &lt;code&gt;content_list&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;data&lt;/code&gt;: It returns the information provided by the &lt;strong&gt;Kernel&lt;/strong&gt; API.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;status&lt;/code&gt;: Final status request. This field includes the following parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;code&lt;/code&gt;: Status code.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;message&lt;/code&gt;: Status message, which describes the status code.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;params&lt;/code&gt;: Parameter that sends details of status. This field does not appear if it is empty.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;actions&lt;/code&gt;: Actions to follow with the result of request. This plugin could include the following actions:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;REMOTEON.ZAPTO&lt;/code&gt;: The target for this action is &lt;code&gt;stb&lt;/code&gt; and its parameters are:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;channelId&lt;/code&gt;, &lt;code&gt;channelNumber&lt;/code&gt; and &lt;code&gt;deviceId&lt;/code&gt; when we have the resource &lt;code&gt;tv:video.display.by-channel.single-result&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;REMOTEON.PLAYTO&lt;/code&gt;: The target for this action is &lt;code&gt;stb&lt;/code&gt; and its parameters are:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;contentId&lt;/code&gt;, &lt;code&gt;deviceId&lt;/code&gt;, &lt;code&gt;liveProgramId&lt;/code&gt; and &lt;code&gt;catalogType&lt;/code&gt; when we have the resource &lt;code&gt;video.display.by-default.single-result&lt;/code&gt; and content has already been broadcast.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;contentId&lt;/code&gt;, &lt;code&gt;deviceId&lt;/code&gt; and &lt;code&gt;catalogType&lt;/code&gt; when we have the resource &lt;code&gt;video.display.by-default.single-result&lt;/code&gt; and content is a video content.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;MAKE_SOUND&lt;/code&gt;: The target for this action is &lt;code&gt;channel&lt;/code&gt; and its unique parameter is &lt;code&gt;sound&lt;/code&gt; with the value:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;positive&lt;/code&gt; when we have the resource &lt;code&gt;tv:video.display.by-channel.single-result&lt;/code&gt;, &lt;code&gt;video.display.by-default.single-result&lt;/code&gt;, &lt;code&gt;video.display.by-default.detail-result&lt;/code&gt;, &lt;code&gt;tv:video.display.by-default.multiple-results&lt;/code&gt;, &lt;code&gt;tv:video.display.contingency.single-result&lt;/code&gt;, &lt;code&gt;tv:video.display.contingency.multiple-results&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;negative&lt;/code&gt; when we have the resource &lt;code&gt;tv:video.display.contingency.no-results&lt;/code&gt; and &lt;code&gt;tv:video.api.answer.error&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;conditions&lt;/code&gt;: Condition for the actions to be applied.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-move-backwards/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-move-backwards/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-move-backwards-use-case&#34;&gt;TV move backwards use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Global use case developed by Aura Platform Team that allows users to move the content backwards on the TV by using Aura&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The TV move backwards use case is a global experience designed and developed by Aura Global Team that allows Telefónica customers to move the content backwards on the TV using a vocal interface.&lt;/p&gt;
&lt;p&gt;Find additional information in following the documents:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Learn how to &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-move-backwards/tv-move-backwards-dialog/&#34;&gt;configure the generic dialog for TV move backwards use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Discover which are the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-move-backwards/resources/&#34;&gt;resources used by the TV move backwards use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Find out the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-move-backwards/nlp-config-obs/&#34;&gt;NLP configuration for each OB&lt;/a&gt; for the TV move backwards use case.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specifications&#34;&gt;Specifications&lt;/h2&gt;
&lt;h3 id=&#34;request-response-model&#34;&gt;Request-response model&lt;/h3&gt;
&lt;p&gt;TV move backwards use case is adapted to the new &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;request-response normalized model v3&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;available-channels&#34;&gt;Available channels&lt;/h3&gt;
&lt;p&gt;Once TV move backwards v3 use case is fully normalized, it will be available for any channel that implements &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;normalized v3 request-response model&lt;/a&gt; including TV related data.&lt;/p&gt;
&lt;p&gt;Currently, STB channel in ES is available for channelData V1. And channelData V3 is suitable for STB in Brazil with time entity recognition: &lt;code&gt;ent.time_length_hour&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;display-features&#34;&gt;Display features&lt;/h3&gt;
&lt;p&gt;Currently, the normalized TV move backwards use case includes &lt;strong&gt;basic move backwards features&lt;/strong&gt; for some entities:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Move the TV content backwards&lt;/li&gt;
&lt;li&gt;Move backwards by specifying the desired time&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This UC also includes specific verbs without entities. For AP repository the key verbs are: &amp;ldquo;retroceder&amp;rdquo;, &amp;ldquo;retornar&amp;rdquo; and &amp;ldquo;rebobinar&amp;rdquo;. For Brazil, they are &amp;ldquo;recuar&amp;rdquo; and &amp;ldquo;retroceder&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;Therefore, the answer could be of this type:
&amp;ldquo;Okay, I&amp;rsquo;ll rewind the TV content.&amp;rdquo;&lt;/p&gt;
&lt;h2 id=&#34;use-case-development&#34;&gt;Use case development&lt;/h2&gt;
&lt;p&gt;The TV move backwards use case development includes these components:&lt;/p&gt;
&lt;h3 id=&#34;understanding-features&#34;&gt;Understanding features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;TV move backwards use case intent: &lt;code&gt;intent.tv.move_backwards&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;TV move backwards use case entities:&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Entity&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_genre&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Move the movie backwards&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.time_length_hour&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Move the movie backwards 2 hours&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.time_length_min&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Move the movie backwards 2 minutes&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.time_length_sec&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Move the movie backwards 2 seconds&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.time_instant&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Move it backwards now&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&amp;#x26a0;&amp;#xfe0f; Other entities in the user&amp;rsquo;s request are not taken into account in the move backwards process.&lt;/p&gt;
&lt;p&gt;In order to understand users’ requests (utterances), Aura is trained with:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/experiences-builder/development-use-cases/nlp-uc-development/&#34;&gt;NLP expression&lt;/a&gt; to recognize the user&amp;rsquo;s utterance and detect the user&amp;rsquo;s intention.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;use-case-logic&#34;&gt;Use case logic&lt;/h3&gt;
&lt;p&gt;Once Aura has recognized the user&amp;rsquo;s utterance based on NLP components, the use case should be resolved based on:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Aura Bot dialog&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;TV move backwards is built over the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3/&#34;&gt;generic dialog v3&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Check the section &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-move-backwards/tv-move-backwards-dialog/&#34;&gt;Configuration of the generic dialog for TV move backwards use case&lt;/a&gt; in order to know the required configuration for the TV move backwards experience.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-move-forwards/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-move-forwards/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-move-forwards-use-case&#34;&gt;TV move forwards use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Global use case developed by Aura Platform Team that allows users to move the content forwards on the TV by using Aura&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The TV move forwards use case is a global experience designed and developed by Aura Global Team that allows Telefónica customers to move the content forwards on the TV using a vocal interface.&lt;/p&gt;
&lt;p&gt;Find additional information in following the documents:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Learn how to &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-move-forwards/tv-move-forwards-dialog/&#34;&gt;configure the generic dialog for TV move forwards use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Discover which are the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-move-forwards/resources/&#34;&gt;resources used by the TV move forwards use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Find out the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-move-forwards/nlp-config-obs/&#34;&gt;NLP configuration for each OB&lt;/a&gt; for the TV move forwards use case.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specifications&#34;&gt;Specifications&lt;/h2&gt;
&lt;h3 id=&#34;request-response-model&#34;&gt;Request-response model&lt;/h3&gt;
&lt;p&gt;TV move forwards use case is adapted to the new &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;request-response normalized model v3&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;available-channels&#34;&gt;Available channels&lt;/h3&gt;
&lt;p&gt;Once TV move forwards v3 use case is fully normalized, it will be available for any channel that implements &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;normalized v3 request-response model&lt;/a&gt; including TV related data.&lt;/p&gt;
&lt;p&gt;Currently, MH and STB channels in ES are already available for channelData V3 version and MP is available for channelData V1. But for these channels, time entity recognition: &lt;code&gt;ent.time_length_hour&lt;/code&gt; is not yet available. It would be available for STB in Brazil.&lt;/p&gt;
&lt;h3 id=&#34;display-features&#34;&gt;Display features&lt;/h3&gt;
&lt;p&gt;Currently, the normalized TV move forwards use case includes &lt;strong&gt;basic move forwards features&lt;/strong&gt; for some entities:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Move the TV content forwards&lt;/li&gt;
&lt;li&gt;Move forwards by specifying the desired time&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This UC also includes specific verbs without entities. For AP repository the key verbs are: &amp;ldquo;avanzar&amp;rdquo; and &amp;ldquo;adelantar&amp;rdquo;. For Brazil, they are &amp;ldquo;adiantar&amp;rdquo; and &amp;ldquo;avançar&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;Therefore, the answer could be of this type:
&amp;ldquo;Ok, I&amp;rsquo;ll fast forward the content a little&amp;rdquo;&lt;/p&gt;
&lt;h2 id=&#34;use-case-development&#34;&gt;Use case development&lt;/h2&gt;
&lt;p&gt;The TV move forwards use case development includes these components:&lt;/p&gt;
&lt;h3 id=&#34;understanding-features&#34;&gt;Understanding features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;TV move forwards use case intent: &lt;code&gt;intent.tv.move_forwards&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;TV move forwards use case entities:&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Entity&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_genre&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Move the movie forwards&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.time_length_hour&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Move the movie forwards 2 hours&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.time_length_min&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Move the movie forwards 2 minutes&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.time_length_sec&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Move the movie forwards 2 seconds&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.time_instant&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Move it forwards now&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&amp;#x26a0;&amp;#xfe0f; Other entities in the user&amp;rsquo;s request are not taken into account in the move forwards process.&lt;/p&gt;
&lt;p&gt;In order to understand users’ requests (utterances), Aura is trained with:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/experiences-builder/development-use-cases/nlp-uc-development/&#34;&gt;NLP expression&lt;/a&gt; to recognize the user&amp;rsquo;s utterance and detect the user&amp;rsquo;s intention.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;use-case-logic&#34;&gt;Use case logic&lt;/h3&gt;
&lt;p&gt;Once Aura has recognized the user&amp;rsquo;s utterance based on NLP components, the use case should be resolved based on:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Aura Bot dialog&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;TV move forwards is built over the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3/&#34;&gt;generic dialog v3&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Check the section &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-move-forwards/tv-move-forwards-dialog/&#34;&gt;Configuration of the generic dialog for TV move forwards use case&lt;/a&gt; in order to know the required configuration for the TV move forwards experience.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-none/tv-none-plugin/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-none/tv-none-plugin/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-none-plugin&#34;&gt;TV none plugin&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Complex Logic Framework plugin for the TV none use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The TV none plugin resolves the request from a user getting information about channel.&lt;/p&gt;
&lt;p&gt;It includes some key steps described in the following sections.&lt;/p&gt;
&lt;h2 id=&#34;validate-input-request&#34;&gt;Validate input request&lt;/h2&gt;
&lt;p&gt;This step validates that the input request fulfills all the requirements from the &lt;a href=&#34;../../docs/components/complex-logic-framework/clf-global-plugins/input-validation-swagger/&#34;&gt;input schema&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If the input data has an error, the resource returned is:&lt;br&gt;
&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;&lt;code&gt;tv:video.model-validation.request.error&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;contingency-search&#34;&gt;Contingency Search&lt;/h2&gt;
&lt;p&gt;The contingency search is a more in-depth search to get, at least, one response. This search uses the entire utterance in every search field.&lt;/p&gt;
&lt;p&gt;Contingency search is based on the following steps:&lt;/p&gt;
&lt;h3 id=&#34;normalization-section&#34;&gt;Normalization section&lt;/h3&gt;
&lt;p&gt;When a request is made by the user, it is possible to find certain words with no real value for Aura, so the system is not able to redirect them to obtain a response. For this reason, a list of forbidden words known as &amp;ldquo;ignore-words&amp;rdquo; will be declared, which will be eliminated.&lt;/p&gt;
&lt;p&gt;The first step is to transform the entire utterance received as input to lowercase, removing all non-alphanumeric characters and separators. Once the utterance has been normalized, the words that belong to the list of &amp;ldquo;ignore-words&amp;rdquo; are eliminated.&lt;/p&gt;
&lt;p&gt;This list is declared in a resource file called &lt;code&gt;normalizer_rules.json&lt;/code&gt;. This file can be found in the following path:
&lt;em&gt;src.aura_clf_video.resources.[language].normalizer_rules.json&lt;/em&gt;
Where [&lt;code&gt;language&lt;/code&gt;] must be replaced by each language, for example: &lt;code&gt;es-es&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;If the language does not have the normalizer rule defined, it will be redirected to a default folder:
&lt;em&gt;src.aura_clf_video.resources.default.normalizer_rules.json&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;If, for example, the language is Spanish, the path to the resource where the normalization rules are defined will be:
&lt;em&gt;src.aura_clf_video.resources.es-es.normalizer_rules.json&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Normalizer rules structure:&lt;br&gt;
It is a dictionary where all the items are declared in a list as shown below:&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;{
  &amp;#34;ignore_items&amp;#34;: [
    &amp;#34;ignore item 1&amp;#34;,
    &amp;#34;ignore item 2&amp;#34;
  ]
}
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Validation of resource content:&lt;br&gt;
The normalization is done sequentially, a previous rule cannot affect a succeeding one.&lt;/p&gt;
&lt;p&gt;For example:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The utterance is &amp;ldquo;ok aura some&amp;rdquo;.&lt;/li&gt;
&lt;li&gt;We define &amp;ldquo;aura&amp;rdquo; and also &amp;ldquo;ok aura&amp;rdquo; in the &amp;ldquo;ignore-words&amp;rdquo; list.&lt;/li&gt;
&lt;li&gt;If we remove &amp;ldquo;aura&amp;rdquo; firstly from the original utterance, we obtain the following normalized utterance: &amp;ldquo;ok some&amp;rdquo;. In this case, &amp;ldquo;ok aura&amp;rdquo; does not have any effect.&lt;/li&gt;
&lt;li&gt;In short, the correct order should be: first, remove &amp;ldquo;ok aura&amp;rdquo; and, after that, remove &amp;ldquo;aura&amp;rdquo;. In this case, we will obtain the final utterance as &amp;ldquo;some&amp;rdquo;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;ldquo;Ignore-words&amp;rdquo; will be automatically validated in order to prevent this behavior in every Pull Request.&lt;/p&gt;
&lt;p&gt;If after normalization the normalized phrase is empty, the resource returned is:
&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-none/resources/#specific-resources-for-the-use-case-tv-none&#34;&gt;&lt;code&gt;tv:video.search.contingency.no-results&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;api-video-query&#34;&gt;API video query&lt;/h3&gt;
&lt;p&gt;After normalizing, we will query the Telefonica Kernel video API by searching through all possible fields with the remaining words.&lt;/p&gt;
&lt;p&gt;To make this API call, a series of parameters are going to be needed, which are described below:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;user_id&lt;/code&gt;: Input &lt;code&gt;data[aura_user][user_id]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;administrative_number&lt;/code&gt;: Input &lt;code&gt;data[app_context][user][account_number]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;access_token&lt;/code&gt;: Input &lt;code&gt;data[aura_user][access_token]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;scopes&lt;/code&gt;: Input &lt;code&gt;data[aura_user][scopes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;purposes&lt;/code&gt;: Input &lt;code&gt;data[aura_user][purposes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;device_type&lt;/code&gt;: Input &lt;code&gt;data[app_context][device][type]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;catalog_types&lt;/code&gt;: List that is made by &lt;code&gt;VOD&lt;/code&gt;, &lt;code&gt;LIVE&lt;/code&gt; and &lt;code&gt;L7D&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;search_query&lt;/code&gt;: Is a joint of the normalized phrase by &lt;code&gt;OR&lt;/code&gt; operator. Use this format to search by any fields. Example: &amp;ldquo;La resistencia Shameless&amp;rdquo; the &lt;code&gt;search_query&lt;/code&gt; is &amp;ldquo;(La OR resistencia OR Shameless)&amp;rdquo;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;show_series&lt;/code&gt;: &lt;code&gt;series&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;profile&lt;/code&gt;: Input &lt;code&gt;data[app_context][user][video_profile_name]&lt;/code&gt;. This field may not be implemented in some cases and this could give the error &lt;code&gt;501 Not Implemented&lt;/code&gt; in the video API according to the documentation.
To prevent this problem, we should send this field only when input data has this value.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;commercialization_types&lt;/code&gt;: List made by &lt;code&gt;SVOD&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;max_quality&lt;/code&gt;: Input &lt;code&gt;data[app_context][device][max_quality]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;order&lt;/code&gt;: &lt;code&gt;personal&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;current_region&lt;/code&gt;: Input &lt;code&gt;data[app_context][location][currentRegion]&lt;/code&gt; if exists. Otherwise, do not use this param.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;contingency-search-response&#34;&gt;Contingency search response&lt;/h3&gt;
&lt;p&gt;When performing a contingency search, there are four possible scenarios for the response received by the search:&lt;/p&gt;
&lt;p&gt;a. Receive an API error.  The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;&lt;code&gt;tv:video.api.answer.error&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;b. Receive no results at all. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-none/resources/#specific-resources-for-the-use-case-tv-none&#34;&gt;&lt;code&gt;tv:video.search.contingency.no-results&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;c. Receive a single result. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-none/resources/#specific-resources-for-the-use-case-tv-none&#34;&gt;&lt;code&gt;tv:video.search.contingency.single-result&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;d. Receive several results. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-none/resources/#specific-resources-for-the-use-case-tv-none&#34;&gt;&lt;code&gt;tv:video.search.contingency.multiple-results&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;response&#34;&gt;Response&lt;/h2&gt;
&lt;p&gt;The response follows this &lt;a href=&#34;../../docs/components/complex-logic-framework/clf-global-plugins/#input-validation-video-plugin&#34;&gt;response schema&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Where:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;intent&lt;/code&gt;: input intent.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;entities&lt;/code&gt;: input entities.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;result_intent&lt;/code&gt;: This field is always &lt;code&gt;MEDIA.SEARCH&lt;/code&gt; because it is the response associated to this domain.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;resources&lt;/code&gt;: List of response resources that includes three main parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: Type of the response resource.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;name&lt;/code&gt;: Name of the response resource. Example: &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-none/resources/#specific-resources-for-the-use-case-tv-none&#34;&gt;&lt;code&gt;tv:video.search.contingency.single-result&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;params&lt;/code&gt;: This field returns any required parameter in the resource.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;payload&lt;/code&gt;: Information provided by the Kernel API, when we make the search request.
If we receive a response. This field includes the following parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: The value of this field depends on the type of data included in the field &lt;code&gt;data&lt;/code&gt; (info returned by the API):
&lt;ul&gt;
&lt;li&gt;If it is a value: &lt;code&gt;details&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;If it is a list: &lt;code&gt;content_list&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;data&lt;/code&gt;: It returns the information provided by the Kernel API.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;status&lt;/code&gt;: Final status request. this field includes field the following parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;code&lt;/code&gt;: Status code.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;message&lt;/code&gt;: Status message, which describes the status code.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;params&lt;/code&gt;: Parameter that sends details of status. This field does not appear if it is empty.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;actions&lt;/code&gt;: Actions to follow with the result of request.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;conditions&lt;/code&gt;: Condition for the actions to be applied.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/ai-use-cases/tv-recommend-llm/tv-recommend-plugin/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/ai-use-cases/tv-recommend-llm/tv-recommend-plugin/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-recommend-plugin&#34;&gt;TV Recommend plugin&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Complex Logic Framework plugin for the TV Recommend use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;TV Recommend plugin&lt;/strong&gt; resolves requests from a user to obtain personalized recommendations for audiovisual content from Telefónica catalogs.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Intent&lt;/strong&gt;: &lt;code&gt;intent.tv.recommend&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Main result intents&lt;/strong&gt;: &lt;code&gt;MEDIA.SEARCH&lt;/code&gt; (default), &lt;code&gt;CHANNEL.PLAY&lt;/code&gt; (when zapping to a live channel).&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;validate-input-request&#34;&gt;Validate input request&lt;/h2&gt;
&lt;p&gt;This step validates that the input request fulfills all the requirements from the &lt;a href=&#34;../../docs/components/complex-logic-framework/clf-global-plugins/input-validation-swagger/&#34;&gt;input schema&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If the input data is invalid, the resource returned is:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;&lt;code&gt;tv:video.model-validation.request.error&lt;/code&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;entities-used-for-search&#34;&gt;Entities used for search&lt;/h2&gt;
&lt;p&gt;The plugin works with the following &lt;strong&gt;entity types&lt;/strong&gt;:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Entity type&lt;/th&gt;
&lt;th&gt;Usage in search&lt;/th&gt;
&lt;th&gt;Notes&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_channel&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Multiple values accepted, separated by &lt;code&gt;||&lt;/code&gt;.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_person&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;For participants (actors, directors, presenters, etc.), multiple values accepted with &lt;code&gt;||&lt;/code&gt;.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_query&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Free text query, multiple values accepted with &lt;code&gt;||&lt;/code&gt;.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;Multiple entities &amp;amp; values:&lt;/strong&gt;&lt;br&gt;
You can repeat the same entity type multiple times &lt;strong&gt;and/or&lt;/strong&gt; provide several values in a single entity using the &lt;code&gt;\|\|&lt;/code&gt; separator.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;building-the-search-query&#34;&gt;Building the search query&lt;/h2&gt;
&lt;p&gt;The plugin constructs two query strings:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;code&gt;search_query&lt;/code&gt;&lt;/strong&gt; → technical query sent to Kernel API:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Group query and channel entities in parentheses.&lt;/li&gt;
&lt;li&gt;Joins different entity types with &lt;code&gt;AND&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Query: split on ||, trim each value, and join with OR inside the parentheses (no quotes).&lt;/li&gt;
&lt;li&gt;Channel: trim each value, wrap each value in quotes, and join with OR inside the parentheses.&lt;/li&gt;
&lt;li&gt;Person: trim each value, wrap each value in quotes, and join with AND (no group parentheses).&lt;/li&gt;
&lt;li&gt;Example:
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;(&amp;#34;La 1&amp;#34; OR &amp;#34;La 2&amp;#34;) AND &amp;#34;Brad Pitt&amp;#34; AND (mystery OR series)
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;code&gt;search_query_response&lt;/code&gt;&lt;/strong&gt; → a simplified, user-readable query string included in the payload and telemetry.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If no entities are present, the plugin returns a &lt;strong&gt;no results&lt;/strong&gt; response.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;api-video-query-handler-4p&#34;&gt;API video query (Handler 4P)&lt;/h2&gt;
&lt;p&gt;Plugin calls &lt;code&gt;Handler4P.tv_4p_handler.get_user_content_search(...)&lt;/code&gt; with the following parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;user_id&lt;/code&gt;: &lt;code&gt;data[aura_user][user_id]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;administrative_number&lt;/code&gt;: &lt;code&gt;data[app_context][user][account_number]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;access_token&lt;/code&gt;: &lt;code&gt;data[aura_user][access_token]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;scopes&lt;/code&gt;: &lt;code&gt;data[aura_user][scopes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;purposes&lt;/code&gt;: &lt;code&gt;data[aura_user][purposes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;device_type&lt;/code&gt;: &lt;code&gt;data[app_context][device][type]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;catalog_types&lt;/code&gt;:
&lt;ul&gt;
&lt;li&gt;Default: &lt;code&gt;VOD&lt;/code&gt;, &lt;code&gt;LIVE&lt;/code&gt;, &lt;code&gt;L7D&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Allowed: &lt;code&gt;VOD&lt;/code&gt;, &lt;code&gt;LIVE&lt;/code&gt;, &lt;code&gt;L7D&lt;/code&gt;, &lt;code&gt;LCH&lt;/code&gt;, &lt;code&gt;LSR&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Filtered according to &lt;code&gt;allowed_catalog_types&lt;/code&gt; of the device&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;search_query&lt;/code&gt;: built as explained above&lt;/li&gt;
&lt;li&gt;&lt;code&gt;show_series&lt;/code&gt;: &lt;code&gt;series&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;profile&lt;/code&gt;: &lt;code&gt;data[app_context][user][video_profile_name]&lt;/code&gt; (optional; only if present to avoid API 501 errors)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;commercialization_types&lt;/code&gt;: &lt;code&gt;[SVOD]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;max_quality&lt;/code&gt;: &lt;code&gt;data[app_context][device][max_quality]&lt;/code&gt; (optional)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;current_region&lt;/code&gt;: &lt;code&gt;data[app_context][location][currentRegion]&lt;/code&gt; (optional)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;order&lt;/code&gt;: &lt;code&gt;personal&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;response-logic&#34;&gt;Response logic&lt;/h2&gt;
&lt;p&gt;Depending on the number and type of results, the plugin builds different responses:&lt;/p&gt;
&lt;h3 id=&#34;1-no-results&#34;&gt;1. No results&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Plays &lt;strong&gt;negative sound&lt;/strong&gt; unless the channel is disabled in the &lt;code&gt;sound_disabled_channels&lt;/code&gt; configuration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;result_intent&lt;/code&gt;: &lt;code&gt;MEDIA.SEARCH&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Resource: &lt;code&gt;tv:video.recommend.no-results&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Status: &lt;code&gt;SUCCESS.NO_CONTENT&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;2-one-result&#34;&gt;2. One result&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Live channel&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;Payload: &lt;code&gt;{ type: details, data: &amp;lt;channel info&amp;gt; }&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Action: &lt;code&gt;REMOTEON.ZAPTO&lt;/code&gt; (with params &lt;code&gt;channelId&lt;/code&gt; and &lt;code&gt;deviceId&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Plays &lt;strong&gt;positive sound&lt;/strong&gt; unless the channel is disabled in the &lt;code&gt;sound_disabled_channels&lt;/code&gt; configuration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;result_intent&lt;/code&gt;: &lt;code&gt;CHANNEL.PLAY&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Resource: &lt;code&gt;tv:video.recommend.display.single-result&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Non-live content (VOD, L7D, etc.)&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;Payload: details of the single item&lt;/li&gt;
&lt;li&gt;Plays &lt;strong&gt;positive sound&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;result_intent&lt;/code&gt;: &lt;code&gt;MEDIA.SEARCH&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Resource: &lt;code&gt;tv:video.recommend.by-default.simple-result&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;3-multiple-results&#34;&gt;3. Multiple results&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Payload: content list and &lt;code&gt;search_query&lt;/code&gt; (search query response string)&lt;/li&gt;
&lt;li&gt;Plays &lt;strong&gt;positive sound&lt;/strong&gt; unless the channel is disabled in the &lt;code&gt;sound_disabled_channels&lt;/code&gt; configuration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;result_intent&lt;/code&gt;: &lt;code&gt;MEDIA.SEARCH&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Resource: &lt;code&gt;tv:video.recommend.multiple-results&lt;/code&gt; (with param &lt;code&gt;query_displayed&lt;/code&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;resources-returned&#34;&gt;Resources returned&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;TV Recommend plugin&lt;/strong&gt; may return the following resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;tv:video.model-validation.request.error&lt;/code&gt; → input validation error&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tv:video.api.answer.error&lt;/code&gt; → API Video error&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tv:video.recommend.no-results&lt;/code&gt; → no content found&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tv:video.recommend.by-default.simple-result&lt;/code&gt; → one non-live result&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tv:video.recommend.multiple-results&lt;/code&gt; → multiple results&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tv:video.recommend.display.single-result&lt;/code&gt; → one live channel (tune channel)&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;payload-and-actions&#34;&gt;Payload and actions&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Payload&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: &lt;code&gt;details&lt;/code&gt; (single item) or &lt;code&gt;content_list&lt;/code&gt; (multiple items)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;data&lt;/code&gt;: item(s) from Kernel API&lt;/li&gt;
&lt;li&gt;For multiple results: includes &lt;code&gt;search_query&lt;/code&gt; (human-readable string)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Actions&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sound feedback (positive/negative)&lt;/li&gt;
&lt;li&gt;For a single live channel: &lt;code&gt;{&amp;quot;name&amp;quot;: &amp;quot;REMOTEON.ZAPTO&amp;quot;, &amp;quot;params&amp;quot;: {&amp;quot;channelId&amp;quot;: &amp;quot;$channelId&amp;quot;, &amp;quot;deviceId&amp;quot;: &amp;quot;$deviceId&amp;quot;}, &amp;quot;target&amp;quot;: &amp;quot;stb&amp;quot;}&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;status-codes&#34;&gt;Status codes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;status&lt;/code&gt;: Final status request. This field includes the following parameters:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;code&lt;/code&gt;: Status code with value: &lt;code&gt;SUCCESS&lt;/code&gt;, &lt;code&gt;SUCCESS.NO_CONTENT&lt;/code&gt; or &lt;code&gt;ERROR.INTERNAL&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;message&lt;/code&gt;: Status message, which describes the status code.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;params&lt;/code&gt;: Parameter that sends details of status. This field does not appear if it is empty.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;example-behavior&#34;&gt;Example behavior&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;em&gt;“Recommend me something”&lt;/em&gt;
&lt;ul&gt;
&lt;li&gt;for a single live channel result → &lt;code&gt;CHANNEL.PLAY&lt;/code&gt; tune channel with live channel.&lt;/li&gt;
&lt;li&gt;for a multiple results → &lt;code&gt;MEDIA.SEARCH&lt;/code&gt; with &lt;code&gt;tv:video.recommend.multiple-results&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;for any results → &lt;code&gt;tv:video.recommend.no-results&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/ai-use-cases/tv-search-llm/tv-search-llm-plugin/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/ai-use-cases/tv-search-llm/tv-search-llm-plugin/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-retrieve-plugin-for-llm-search-uc&#34;&gt;TV Retrieve plugin for LLM Search UC&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Complex Logic Framework TV Retrieve plugin for the TV LLM Search UC&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;TV Retrieve plugin for LLM Search UC&lt;/strong&gt; resolves requests from a user to search and retrieve audiovisual content from Telefónica catalogs.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Intent&lt;/strong&gt;: &lt;code&gt;intent.tv.retrieve&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Main result intents&lt;/strong&gt;: &lt;code&gt;MEDIA.SEARCH&lt;/code&gt; (default), &lt;code&gt;CHANNEL.PLAY&lt;/code&gt; (when zapping to a live channel).&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;validate-input-request&#34;&gt;Validate input request&lt;/h2&gt;
&lt;p&gt;This step validates that the input request fulfills all the requirements from the &lt;a href=&#34;../../docs/components/complex-logic-framework/clf-global-plugins/input-validation-swagger/&#34;&gt;input schema&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If the input data is invalid, the resource returned is:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;&lt;code&gt;tv:video.model-validation.request.error&lt;/code&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;entities-used-for-search&#34;&gt;Entities used for search&lt;/h2&gt;
&lt;p&gt;The plugin works with the following &lt;strong&gt;entity types&lt;/strong&gt;:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Entity type&lt;/th&gt;
&lt;th&gt;Usage in search&lt;/th&gt;
&lt;th&gt;Notes&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_channel&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Multiple values accepted, separated by &lt;code&gt;||&lt;/code&gt;.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_person&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;For participants (actors, directors, presenters, etc.), multiple values accepted with &lt;code&gt;||&lt;/code&gt;.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.audiovisual_query&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Free text query, multiple values accepted with &lt;code&gt;||&lt;/code&gt;.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;Multiple entities &amp;amp; values:&lt;/strong&gt;&lt;br&gt;
You can repeat the same entity type multiple times &lt;strong&gt;and/or&lt;/strong&gt; provide several values in a single entity using the &lt;code&gt;\|\|&lt;/code&gt; separator.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;building-the-search-query&#34;&gt;Building the search query&lt;/h2&gt;
&lt;p&gt;The plugin constructs two query strings:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;code&gt;search_query&lt;/code&gt;&lt;/strong&gt; → technical query sent to Kernel API:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Group query and channel entities in parentheses.&lt;/li&gt;
&lt;li&gt;Joins different entity types with &lt;code&gt;AND&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Query: split on ||, trim each value, and join with OR inside the parentheses (no quotes).&lt;/li&gt;
&lt;li&gt;Channel: trim each value, wrap each value in quotes, and join with OR inside the parentheses.&lt;/li&gt;
&lt;li&gt;Person: trim each value, wrap each value in quotes, and join with AND (no group parentheses).&lt;/li&gt;
&lt;li&gt;Example:
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;(&amp;#34;La 1&amp;#34; OR &amp;#34;La 2&amp;#34;) AND &amp;#34;Brad Pitt&amp;#34; AND (mystery OR series)
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;code&gt;search_query_response&lt;/code&gt;&lt;/strong&gt; → a simplified, user-readable query string included in the payload and telemetry.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If no entities are present, the plugin returns a &lt;strong&gt;no results&lt;/strong&gt; response.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;api-video-query-handler-4p&#34;&gt;API video query (Handler 4P)&lt;/h2&gt;
&lt;p&gt;Plugin calls &lt;code&gt;Handler4P.tv_4p_handler.get_user_content_search(...)&lt;/code&gt; with the following parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;user_id&lt;/code&gt;: &lt;code&gt;data[aura_user][user_id]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;administrative_number&lt;/code&gt;: &lt;code&gt;data[app_context][user][account_number]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;access_token&lt;/code&gt;: &lt;code&gt;data[aura_user][access_token]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;scopes&lt;/code&gt;: &lt;code&gt;data[aura_user][scopes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;purposes&lt;/code&gt;: &lt;code&gt;data[aura_user][purposes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;device_type&lt;/code&gt;: &lt;code&gt;data[app_context][device][type]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;catalog_types&lt;/code&gt;:
&lt;ul&gt;
&lt;li&gt;Default: &lt;code&gt;VOD&lt;/code&gt;, &lt;code&gt;LIVE&lt;/code&gt;, &lt;code&gt;L7D&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Allowed: &lt;code&gt;VOD&lt;/code&gt;, &lt;code&gt;LIVE&lt;/code&gt;, &lt;code&gt;L7D&lt;/code&gt;, &lt;code&gt;LCH&lt;/code&gt;, &lt;code&gt;LSR&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Filtered according to &lt;code&gt;allowed_catalog_types&lt;/code&gt; of the device&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;search_query&lt;/code&gt;: built as explained above&lt;/li&gt;
&lt;li&gt;&lt;code&gt;show_series&lt;/code&gt;: &lt;code&gt;series&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;profile&lt;/code&gt;: &lt;code&gt;data[app_context][user][video_profile_name]&lt;/code&gt; (optional; only if present to avoid API 501 errors)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;commercialization_types&lt;/code&gt;: &lt;code&gt;[SVOD]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;max_quality&lt;/code&gt;: &lt;code&gt;data[app_context][device][max_quality]&lt;/code&gt; (optional)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;current_region&lt;/code&gt;: &lt;code&gt;data[app_context][location][currentRegion]&lt;/code&gt; (optional)&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;response-logic&#34;&gt;Response logic&lt;/h2&gt;
&lt;p&gt;Depending on the number and type of results, the plugin builds different responses:&lt;/p&gt;
&lt;h3 id=&#34;1-no-results&#34;&gt;1. No results&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Plays &lt;strong&gt;negative sound&lt;/strong&gt; unless the channel is disabled in the &lt;code&gt;sound_disabled_channels&lt;/code&gt; configuration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;result_intent&lt;/code&gt;: &lt;code&gt;MEDIA.SEARCH&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Resource: &lt;code&gt;tv:video.retrieve.no-results&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Status: &lt;code&gt;SUCCESS.NO_CONTENT&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;2-one-result&#34;&gt;2. One result&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Live channel&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;Payload: &lt;code&gt;{ type: details, data: &amp;lt;channel info&amp;gt; }&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Action: &lt;code&gt;REMOTEON.ZAPTO&lt;/code&gt; (with params &lt;code&gt;channelId&lt;/code&gt; and &lt;code&gt;deviceId&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Plays &lt;strong&gt;positive sound&lt;/strong&gt; unless the channel is disabled in the &lt;code&gt;sound_disabled_channels&lt;/code&gt; configuration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;result_intent&lt;/code&gt;: &lt;code&gt;CHANNEL.PLAY&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Resource: &lt;code&gt;tv:video.retrieve.display.single-result&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Non-live content (VOD, L7D, etc.)&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;Payload: details of the single item&lt;/li&gt;
&lt;li&gt;Plays &lt;strong&gt;positive sound&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;result_intent&lt;/code&gt;: &lt;code&gt;MEDIA.SEARCH&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Resource: &lt;code&gt;tv:video.retrieve.by-default.simple-result&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;3-multiple-results&#34;&gt;3. Multiple results&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Payload: content list and &lt;code&gt;search_query&lt;/code&gt; (search query response string)&lt;/li&gt;
&lt;li&gt;Plays &lt;strong&gt;positive sound&lt;/strong&gt; unless the channel is disabled in the &lt;code&gt;sound_disabled_channels&lt;/code&gt; configuration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;result_intent&lt;/code&gt;: &lt;code&gt;MEDIA.SEARCH&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Resource: &lt;code&gt;tv:video.retrieve.multiple-results&lt;/code&gt; (with param &lt;code&gt;query_displayed&lt;/code&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;resources-returned&#34;&gt;Resources returned&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;TV Retrieve plugin for LLM Search UC&lt;/strong&gt; may return the following resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;tv:video.model-validation.request.error&lt;/code&gt; → input validation error&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tv:video.api.answer.error&lt;/code&gt; → API Video error&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tv:video.retrieve.no-results&lt;/code&gt; → no content found&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tv:video.retrieve.by-default.simple-result&lt;/code&gt; → one non-live result&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tv:video.retrieve.multiple-results&lt;/code&gt; → multiple results&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tv:video.retrieve.display.single-result&lt;/code&gt; → one live channel (tune channel)&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;payload-and-actions&#34;&gt;Payload and actions&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Payload&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: &lt;code&gt;details&lt;/code&gt; (single item) or &lt;code&gt;content_list&lt;/code&gt; (multiple items)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;data&lt;/code&gt;: item(s) from Kernel API&lt;/li&gt;
&lt;li&gt;For multiple results: includes &lt;code&gt;search_query&lt;/code&gt; (human-readable string)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Actions&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sound feedback (positive/negative)&lt;/li&gt;
&lt;li&gt;For a single live channel: &lt;code&gt;{&amp;quot;name&amp;quot;: &amp;quot;REMOTEON.ZAPTO&amp;quot;, &amp;quot;params&amp;quot;: {&amp;quot;channelId&amp;quot;: &amp;quot;$channelId&amp;quot;, &amp;quot;deviceId&amp;quot;: &amp;quot;$deviceId&amp;quot;}, &amp;quot;target&amp;quot;: &amp;quot;stb&amp;quot;}&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;status-codes&#34;&gt;Status codes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;status&lt;/code&gt;: Final status request. This field includes the following parameters:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;code&lt;/code&gt;: Status code with value: &lt;code&gt;SUCCESS&lt;/code&gt;, &lt;code&gt;SUCCESS.NO_CONTENT&lt;/code&gt; or &lt;code&gt;ERROR.INTERNAL&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;message&lt;/code&gt;: Status message, which describes the status code.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;params&lt;/code&gt;: Parameter that sends details of status. This field does not appear if it is empty.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;example-behavior&#34;&gt;Example behavior&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;em&gt;“Put La 1”&lt;/em&gt; → detects &lt;code&gt;ent.audiovisual_channel&lt;/code&gt; with value &lt;code&gt;&amp;quot;La 1&amp;quot;&lt;/code&gt; → single live channel result → &lt;code&gt;CHANNEL.PLAY&lt;/code&gt; tune channel with live channel.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;em&gt;“I want something with Brad Pitt”&lt;/em&gt; → detects &lt;code&gt;ent.audiovisual_person&lt;/code&gt; with value &lt;code&gt;&amp;quot;Brad Pitt&amp;quot;&lt;/code&gt; → multiple results → &lt;code&gt;MEDIA.SEARCH&lt;/code&gt; with &lt;code&gt;tv:video.retrieve.multiple-results&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;em&gt;“Mystery series”&lt;/em&gt; → detects &lt;code&gt;audiovisual_query&lt;/code&gt; with value &lt;code&gt;&amp;quot;Mystery series&amp;quot;&lt;/code&gt; → if no results → &lt;code&gt;tv:video.retrieve.no-results&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-search/tv-search-plugin/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-search/tv-search-plugin/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-search-plugin&#34;&gt;TV search plugin&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Complex Logic Framework plugin for the TV search use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The TV search plugin resolves the request from a user searching a video content.&lt;/p&gt;
&lt;p&gt;It includes some key steps described in the following sections.&lt;/p&gt;
&lt;h2 id=&#34;validate-input-request&#34;&gt;Validate input request&lt;/h2&gt;
&lt;p&gt;This step validates that the input request fulfills all the requirements from the &lt;a href=&#34;../../docs/components/complex-logic-framework/clf-global-plugins/input-validation-swagger/&#34;&gt;input schema&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If the input data has an error the resource returned is:
&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;&lt;code&gt;tv:video.model-validation.request.error&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;filter-invalid-entities&#34;&gt;Filter invalid entities&lt;/h2&gt;
&lt;p&gt;The TV search plugin executes the step for entities validation listed below and prepares data before resolving the request:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Check that season/episode entity contains a number. In other case, it removes this entity.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;entertainment-search&#34;&gt;Entertainment Search&lt;/h2&gt;
&lt;p&gt;The search of video content is based in the received entities.&lt;/p&gt;
&lt;p&gt;The search stage follows the following steps:&lt;/p&gt;
&lt;h3 id=&#34;build-the-search_query-param&#34;&gt;Build the &lt;code&gt;search_query&lt;/code&gt; param&lt;/h3&gt;
&lt;p&gt;The search builds a &lt;code&gt;search_query&lt;/code&gt; param using label values of entities to prioritize the searched video content. If the label value is &lt;code&gt;null&lt;/code&gt; for an entity, then the &lt;code&gt;canon&lt;/code&gt; value is used.&lt;/p&gt;
&lt;p&gt;Entities used to search are grouped by:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Title entities&lt;/strong&gt;: &lt;code&gt;ent.audiovisual_documental_title&lt;/code&gt;, &lt;code&gt;ent.audiovisual_film_title&lt;/code&gt;, &lt;code&gt;ent.audiovisual_tvseries_title&lt;/code&gt; and &lt;code&gt;ent.audiovisual_tvshows_title&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Participant entities&lt;/strong&gt;: &lt;code&gt;ent.audiovisual_actor&lt;/code&gt; and &lt;code&gt;ent.audiovisual_director&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Genre entities&lt;/strong&gt;: &lt;code&gt;ent.audiovisual_genre&lt;/code&gt; and &lt;code&gt;ent.audiovisual_subgenre&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The priority to search using these entities is described as follows:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;If there are &lt;strong&gt;title entities&lt;/strong&gt; and other entities, then the &lt;code&gt;search_query&lt;/code&gt; parameter is built only using title entities.
&lt;ul&gt;
&lt;li&gt;For instance: &lt;code&gt;title: (&amp;quot;Matrix&amp;quot; OR &amp;quot;La princesa prometida&amp;quot;)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;If there are &lt;strong&gt;participant entities&lt;/strong&gt; and other entities, then the &lt;code&gt;search_query&lt;/code&gt; parameter is built only using participant entities.
&lt;ul&gt;
&lt;li&gt;All entities (&lt;code&gt;ent.audiovisual_actor&lt;/code&gt; and &lt;code&gt;ent.audiovisual_director&lt;/code&gt;) are used for fields &lt;code&gt;actor&lt;/code&gt; and &lt;code&gt;director&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;For instance: &lt;code&gt;actor: (&amp;quot;Tom Cruise&amp;quot; OR &amp;quot;Martin Scorsese&amp;quot;) OR director: (&amp;quot;Tom Cruise&amp;quot; OR &amp;quot;Martin Scorsese&amp;quot;)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;If there are &lt;strong&gt;genre entities&lt;/strong&gt; and other entities, then the &lt;code&gt;search_query&lt;/code&gt; parameter is built only using genre entities.
&lt;ul&gt;
&lt;li&gt;The &lt;code&gt;ent.audiovisual_genre&lt;/code&gt; is used with the field &lt;code&gt;content_category&lt;/code&gt; and the &lt;code&gt;ent.audiovisual_subgenre&lt;/code&gt; with field &lt;code&gt;genre&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;For instance: &lt;code&gt;content_category: (&amp;quot;MOV&amp;quot; OR &amp;quot;SER&amp;quot; OR &amp;quot;DOC&amp;quot;) AND genre: (&amp;quot;TE&amp;quot; OR &amp;quot;AC&amp;quot;)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;If there are not any entities allowed, then a query param to search is not built.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;With this prioritization, the system builds a &lt;code&gt;search_query&lt;/code&gt; param that will be used to call the API video query for searching purposes.&lt;/p&gt;
&lt;h3 id=&#34;api-video-query&#34;&gt;API video query&lt;/h3&gt;
&lt;p&gt;After preparing the &lt;code&gt;search_query&lt;/code&gt; parameter, we will make a query to the Telefonica Kernel video API by searching through all the possible fields with the remaining words.
To make this API call, several parameters are needed, which are described below:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;user_id&lt;/code&gt;: Input &lt;code&gt;data[aura_user][user_id]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;administrative_number&lt;/code&gt;: Input &lt;code&gt;data[app_context][user][account_number]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;access_token&lt;/code&gt;: Input &lt;code&gt;data[aura_user][access_token]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;scopes&lt;/code&gt;: Input &lt;code&gt;data[aura_user][scopes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;purposes&lt;/code&gt;: Input &lt;code&gt;data[aura_user][purposes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;device_type&lt;/code&gt;: Input &lt;code&gt;data[app_context][device][type]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;catalog_types&lt;/code&gt;: List of allowed catalog types. The value can now be a list of catalog types provided by the device, as long as the values are one of the following predefined identifiers: &lt;code&gt;VOD&lt;/code&gt;, &lt;code&gt;LIVE&lt;/code&gt;, &lt;code&gt;L7D&lt;/code&gt;, &lt;code&gt;LCH&lt;/code&gt;, &lt;code&gt;LSR&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;search_query&lt;/code&gt;: String with a custom search query based in the received entities.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;show_series&lt;/code&gt;: &lt;code&gt;series&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;profile&lt;/code&gt;: Input &lt;code&gt;data[app_context][user][video_profile_name]&lt;/code&gt;.
This field may not be implemented in certain cases and this could give the error &lt;code&gt;501 Not Implemented&lt;/code&gt; in the video API according to the documentation.
To prevent this problem we should send this field only when input data has this value.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;commercialization_types&lt;/code&gt;: List made by &lt;code&gt;SVOD&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;max_quality&lt;/code&gt;: Input &lt;code&gt;data[app_context][device][max_quality]&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;search-response&#34;&gt;Search response&lt;/h3&gt;
&lt;p&gt;When performing a search, the following possible scenarios can occur for the response received by the search:&lt;/p&gt;
&lt;p&gt;a. Receive an API error.  The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;&lt;code&gt;tv:video.api.answer.error&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;b. Receive no results at all. Then, it executes the &lt;a href=&#34;#contingency-search&#34;&gt;contingency search&lt;/a&gt; if it isn&amp;rsquo;t disabled by configuration. If it is disabled by &lt;a href=&#34;../../docs/components/complex-logic-framework/clf-configuration/#disabling-contingency-or-fallback-modes-for-tv-search-use-case&#34;&gt;configuration&lt;/a&gt;, the returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/resources/#specific-resources-for-the-use-case-tvsearch&#34;&gt;&lt;code&gt;tv:video.search.no-results&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;c. Receive a single result by searching for one title entity. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/resources/#specific-resources-for-the-use-case-tvsearch&#34;&gt;&lt;code&gt;tv:video.search.by-title.simple-result&lt;/code&gt;&lt;/a&gt; and params with the value of the title searched for.&lt;/p&gt;
&lt;p&gt;d. Receive several results by searching for one title entity. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/resources/#specific-resources-for-the-use-case-tvsearch&#34;&gt;&lt;code&gt;tv:video.search.by-title.multiple-results&lt;/code&gt;&lt;/a&gt; and params with the value of the title searched for.&lt;/p&gt;
&lt;p&gt;e. Receive a single result by searching for one actor/director entity. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/resources/#specific-resources-for-the-use-case-tvsearch&#34;&gt;&lt;code&gt;tv:video.search.by-participant.simple-result&lt;/code&gt;&lt;/a&gt; and params with the value of the participant searched for.&lt;/p&gt;
&lt;p&gt;f. Receive several results by searching for one actor/director entity. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/resources/#specific-resources-for-the-use-case-tvsearch&#34;&gt;&lt;code&gt;tv:video.search.by-participant.multiple-results&lt;/code&gt;&lt;/a&gt; and params with the value of the participant searched for.&lt;/p&gt;
&lt;p&gt;g. Receive a single result by searching for one genre entity. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/resources/#specific-resources-for-the-use-case-tvsearch&#34;&gt;&lt;code&gt;tv:video.search.by-genre.simple-result&lt;/code&gt;&lt;/a&gt; and params with the value of the genre searched for.&lt;/p&gt;
&lt;p&gt;h. Receive several results by searching for one genre entity. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/resources/#specific-resources-for-the-use-case-tvsearch&#34;&gt;&lt;code&gt;tv:video.search.by-genre.multiple-results&lt;/code&gt;&lt;/a&gt; and params with the value of the genre searched for.&lt;/p&gt;
&lt;p&gt;i. Receive a single result by searching for one genre and one subgenre entity. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/resources/#specific-resources-for-the-use-case-tvsearch&#34;&gt;&lt;code&gt;tv:video.search.by-subgenre.simple-result&lt;/code&gt;&lt;/a&gt; and params with the value of the genre and subgenre searched for.&lt;/p&gt;
&lt;p&gt;j. Receive several results by searching for one genre and one subgenre entity. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/resources/#specific-resources-for-the-use-case-tvsearch&#34;&gt;&lt;code&gt;tv:video.search.by-subgenre.multiple-results&lt;/code&gt;&lt;/a&gt; and params with the value of the genre and subgenre searched for.&lt;/p&gt;
&lt;p&gt;k. Receive a single result in all other cases. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/resources/#specific-resources-for-the-use-case-tvsearch&#34;&gt;&lt;code&gt;tv:video.search.by-default.simple-result&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;l. Receive several results in all other cases. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/resources/#specific-resources-for-the-use-case-tvsearch&#34;&gt;&lt;code&gt;tv:video.search.by-default.multiple-results&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;contingency-search&#34;&gt;Contingency search&lt;/h2&gt;
&lt;p&gt;The contingency search is a more in-depth search to get, at least, one response. This search uses the entire utterance in every search field.&lt;/p&gt;
&lt;p&gt;Contingency search is based on the following steps:&lt;/p&gt;
&lt;h3 id=&#34;normalization-section&#34;&gt;Normalization section&lt;/h3&gt;
&lt;p&gt;When a request is made by the user, it is possible to find certain words with no real value for Aura, so the system is not able to redirect them to obtain a response. For this reason, a list of forbidden words known as &amp;ldquo;ignore-words&amp;rdquo; will be declared, which will be eliminated.&lt;/p&gt;
&lt;p&gt;The first step is to transform the entire utterance received as input to lowercase, removing all non-alphanumeric characters and separators. Once the utterance has been normalized, the words that belong to the list of &amp;ldquo;ignore-words&amp;rdquo; are eliminated.&lt;/p&gt;
&lt;p&gt;This list is declared in a resource file called &lt;code&gt;normalizer_rules.json&lt;/code&gt;. This file can be found in the following path:
&lt;em&gt;src.aura_clf_video.resources.[language].normalizer_rules.json&lt;/em&gt;
Where [&lt;code&gt;language&lt;/code&gt;] must be replaced by each language, for example: &lt;code&gt;es-es&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;If the language does not have the normalizer rule defined, it will be redirected to a default folder:
&lt;em&gt;src.aura_clf_video.resources.default.normalizer_rules.json&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;If, for example, the language is Spanish, the path to the resource where the normalization rules are defined will be:
&lt;em&gt;src.aura_clf_video.resources.es-es.normalizer_rules.json&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Normalizer rules structure
It is a dictionary where all the items are declared in a list as shown below:&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;{
  &amp;#34;ignore_items&amp;#34;: [
    &amp;#34;ignore item 1&amp;#34;,
    &amp;#34;ignore item 2&amp;#34;
  ]
}
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Validation of resource content&lt;br&gt;
The normalization is done sequentially, a previous rule cannot affect a succeeding one.&lt;/p&gt;
&lt;p&gt;For example:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The utterance is &amp;ldquo;ok aura some&amp;rdquo;.&lt;/li&gt;
&lt;li&gt;We define &amp;ldquo;aura&amp;rdquo; and also &amp;ldquo;ok aura&amp;rdquo; in the &amp;ldquo;ignore-words&amp;rdquo; list.&lt;/li&gt;
&lt;li&gt;If we remove &amp;ldquo;aura&amp;rdquo; firstly from the original utterance, we obtain the following normalized utterance: &amp;ldquo;ok some&amp;rdquo;. In this case, &amp;ldquo;ok aura&amp;rdquo; does not have any effect.&lt;/li&gt;
&lt;li&gt;In short, the correct order should be: first, remove &amp;ldquo;ok aura&amp;rdquo; and, after that, remove &amp;ldquo;aura&amp;rdquo;. In this case, we will obtain the final utterance as &amp;ldquo;some&amp;rdquo;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;ldquo;Ignore-words&amp;rdquo; will be automatically validated in order to prevent this behavior in every Pull Request.&lt;/p&gt;
&lt;p&gt;If after normalization the normalized phrase is empty, the resource returned is:
&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/resources/#specific-resources-for-the-use-case-tvsearch&#34;&gt;&lt;code&gt;tv:video.search.contingency.no-results&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;api-video-query-1&#34;&gt;API video query&lt;/h3&gt;
&lt;p&gt;After normalizing, we will query the Telefonica Kernel video API by searching through all possible fields with the remaining words.&lt;/p&gt;
&lt;p&gt;To make this API call, a series of parameters are going to be needed, which are described below:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;user_id&lt;/code&gt;: Input &lt;code&gt;data[aura_user][user_id]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;administrative_number&lt;/code&gt;: Input &lt;code&gt;data[app_context][user][account_number]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;access_token&lt;/code&gt;: Input &lt;code&gt;data[aura_user][access_token]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;scopes&lt;/code&gt;: Input &lt;code&gt;data[aura_user][scopes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;purposes&lt;/code&gt;: Input &lt;code&gt;data[aura_user][purposes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;device_type&lt;/code&gt;: Input &lt;code&gt;data[app_context][device][type]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;catalog_types&lt;/code&gt;: List of allowed catalog types. The value can now be a list of catalog types provided by the device, as long as the values are one of the following predefined identifiers: &lt;code&gt;VOD&lt;/code&gt;, &lt;code&gt;LIVE&lt;/code&gt;, &lt;code&gt;L7D&lt;/code&gt;, &lt;code&gt;LCH&lt;/code&gt;, &lt;code&gt;LSR&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;search_query&lt;/code&gt;: Is a joint of the normalized phrase by &lt;code&gt;OR&lt;/code&gt; operator. Use this format to search by any fields. Example: &amp;ldquo;La resistencia Shameless&amp;rdquo; the &lt;code&gt;search_query&lt;/code&gt; is &amp;ldquo;(La OR resistencia OR Shameless)&amp;rdquo;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;show_series&lt;/code&gt;: &lt;code&gt;series&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;profile&lt;/code&gt;: Input &lt;code&gt;data[app_context][user][video_profile_name]&lt;/code&gt;. This field may not be implemented in some cases and this could give the error &lt;code&gt;501 Not Implemented&lt;/code&gt; in the video API according to the documentation.
To prevent this problem, we should send this field only when input data has this value.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;commercialization_types&lt;/code&gt;: List made by &lt;code&gt;SVOD&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;max_quality&lt;/code&gt;: Input &lt;code&gt;data[app_context][device][max_quality]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;current_region&lt;/code&gt;: Input &lt;code&gt;data[app_context][location][currentRegion]&lt;/code&gt; if exists. Otherwise, do not use this param.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;contingency-search-response&#34;&gt;Contingency search response&lt;/h3&gt;
&lt;p&gt;When performing a contingency search, there are four possible scenarios for the response received by the search:&lt;/p&gt;
&lt;p&gt;a. Receive an API error.  The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;&lt;code&gt;tv:video.api.answer.error&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;b. Receive no results at all. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/resources/#specific-resources-for-the-use-case-tvsearch&#34;&gt;&lt;code&gt;tv:video.search.contingency.no-results&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;c. Receive a single result. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/resources/#specific-resources-for-the-use-case-tvsearch&#34;&gt;&lt;code&gt;tv:video.search.contingency.single-result&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;d. Receive several results. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/resources/#specific-resources-for-the-use-case-tvsearch&#34;&gt;&lt;code&gt;tv:video.search.contingency.multiple-results&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;response&#34;&gt;Response&lt;/h2&gt;
&lt;p&gt;The response follows this &lt;a href=&#34;../../docs/components/complex-logic-framework/clf-global-plugins/#input-validation-video-plugin&#34;&gt;response schema&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Where:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;intent&lt;/code&gt;: input intent.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;entities&lt;/code&gt;: input entities.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;result_intent&lt;/code&gt;: This field is always &lt;code&gt;MEDIA.SEARCH&lt;/code&gt; because it is the response associated to this domain.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;resources&lt;/code&gt;: List of response resources that includes three main parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: Type of the response resource.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;name&lt;/code&gt;: Name of the response resource. Example: &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-search/resources/#specific-resources-for-the-use-case-tvsearch&#34;&gt;&lt;code&gt;tv:video.search.contingency.single-result&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;params&lt;/code&gt;: This field returns any required parameter in the resource.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;payload&lt;/code&gt;: Information provided by the Kernel API, when we make the search request.
If we receive a response. This field includes the following parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: The value of this field depends on the type of data included in the field &lt;code&gt;data&lt;/code&gt; (info returned by the API):
&lt;ul&gt;
&lt;li&gt;If it is a value: &lt;code&gt;details&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;If it is a list: &lt;code&gt;content_list&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;data&lt;/code&gt;: It returns the information provided by the Kernel API.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;status&lt;/code&gt;: Final status request. this field includes field the following parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;code&lt;/code&gt;: Status code.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;message&lt;/code&gt;: Status message, which describes the status code.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;params&lt;/code&gt;: Parameter that sends details of status. This field does not appear if it is empty.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;actions&lt;/code&gt;: Actions to follow with the result of request.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;conditions&lt;/code&gt;: Condition for the actions to be applied.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-vod-epg-information/tv-vod-epg-information-plugin/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-vod-epg-information/tv-vod-epg-information-plugin/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-vod-epg-information-plugin&#34;&gt;TV VOD EPG information plugin&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Complex Logic Framework plugin for the TV VOD EPG information use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The TV VOD EPG information plugin resolves the request from a user getting information about the TV content broadcasted in this specific moment&lt;/p&gt;
&lt;p&gt;It includes some key steps described in the following sections.&lt;/p&gt;
&lt;h2 id=&#34;validate-input-request&#34;&gt;Validate input request&lt;/h2&gt;
&lt;p&gt;This step validates that the input request fulfills all the requirements from the &lt;a href=&#34;../../docs/components/complex-logic-framework/clf-global-plugins/input-validation-swagger/&#34;&gt;input schema&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If the input data has an error, the resource returned is:&lt;br&gt;
&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;&lt;code&gt;tv:video.model-validation.request.error&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;get-vod-epg-information-about-a-playing-content&#34;&gt;Get VOD EPG information about a playing content&lt;/h2&gt;
&lt;p&gt;The VOD EPG information about a playing content is based in the catalog type and content id.&lt;/p&gt;
&lt;p&gt;To retrieve content information stage follows the steps set below:&lt;/p&gt;
&lt;h3 id=&#34;video-query-api&#34;&gt;Video query API&lt;/h3&gt;
&lt;p&gt;We will make a query to &lt;a href=&#34;https://developers.baikalplatform.com/apis/video-contents/&#34;&gt;Video Contents normalized Kernel API&lt;/a&gt; to retrieve content.&lt;/p&gt;
&lt;p&gt;To make this API call, several parameters are needed, which are described below:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;user_id&lt;/code&gt;: Input &lt;code&gt;data[aura_user][user_id]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;access_token&lt;/code&gt;: Input &lt;code&gt;data[aura_user][access_token]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;catalog_type&lt;/code&gt;: Input &lt;code&gt;data[app_context][playing][catalog_type]&lt;/code&gt; where &amp;ldquo;vod&amp;rdquo; is &amp;ldquo;VOD&amp;rdquo;, &amp;ldquo;l7d&amp;rdquo; and &amp;ldquo;record&amp;rdquo; is &amp;ldquo;L7D&amp;rdquo;, and &amp;ldquo;live&amp;rdquo; is &amp;ldquo;LIVE&amp;rdquo;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;administrative_number&lt;/code&gt;: Input &lt;code&gt;data[app_context][user][account_number]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;content_id&lt;/code&gt;: Input &lt;code&gt;data[app_context][playing][content_id]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;scopes&lt;/code&gt;: Input &lt;code&gt;data[aura_user][scopes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;purposes&lt;/code&gt;: Input &lt;code&gt;data[aura_user][purposes]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;device_type&lt;/code&gt;: Input &lt;code&gt;data[app_context][device][type]&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;vod-epg-information-response&#34;&gt;VOD EPG information response&lt;/h3&gt;
&lt;p&gt;When a user requests for getting playing EPG information about a specific content, the following possible scenarios can occur for the response:&lt;/p&gt;
&lt;p&gt;a. Receive a content with the EPG information and the request contain devices entities (&lt;code&gt;ent.device_tv&lt;/code&gt;, &lt;code&gt;ent.device_mobile&lt;/code&gt;, &lt;code&gt;ent.device_phone&lt;/code&gt;). The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-vod-epg-information/resources/#specific-resources-for-the-use-case-tv-vod-epg-information&#34;&gt;&lt;code&gt;tv:tv.moreInfoTvDetail&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;b. Receive a content with the EPG information and the request does not contain any devices entities (&lt;code&gt;ent.device_tv&lt;/code&gt;, &lt;code&gt;ent.device_mobile&lt;/code&gt;, &lt;code&gt;ent.device_phone&lt;/code&gt;). The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-vod-epg-information/resources/#specific-resources-for-the-use-case-tv-vod-epg-information&#34;&gt;&lt;code&gt;tv:carousel.info.contentDetail&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;c. Not received or not found in API any content with the EPG information and the request does not contain any devices entities (&lt;code&gt;ent.device_tv&lt;/code&gt;, &lt;code&gt;ent.device_mobile&lt;/code&gt;, &lt;code&gt;ent.device_phone&lt;/code&gt;). The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-vod-epg-information/resources/#specific-resources-for-the-use-case-tv-vod-epg-information&#34;&gt;&lt;code&gt;tv:tv.moreInfoTvNotAllowed&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;d. Not received or not found in API any content with the EPG information and the request contain devices entities (&lt;code&gt;ent.device_tv&lt;/code&gt;, &lt;code&gt;ent.device_mobile&lt;/code&gt;, &lt;code&gt;ent.device_phone&lt;/code&gt;). The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-vod-epg-information/resources/#specific-resources-for-the-use-case-tv-vod-epg-information&#34;&gt;&lt;code&gt;tv:tv.more_info.notAllowed&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;e. Receive an API error. The returned resource is &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;&lt;code&gt;tv:video.api.answer.error&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;response&#34;&gt;Response&lt;/h2&gt;
&lt;p&gt;The response follows this &lt;a href=&#34;../../docs/components/complex-logic-framework/api-definition/&#34;&gt;response schema&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Where:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;intent&lt;/code&gt;: input intent.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;entities&lt;/code&gt;: input entities.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;result_intent&lt;/code&gt;: This field is always &lt;code&gt;MEDIA.SHEET_TV&lt;/code&gt; except when the resource is &lt;code&gt;tv:carousel.info.contentDetail&lt;/code&gt; or &lt;code&gt;tv:tv.more_info.notAllowed&lt;/code&gt;. In this case this field is &lt;code&gt;MEDIA.SHEET_SECOND_SCREEN&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;resources&lt;/code&gt;: List of response resources that includes three main parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: Type of the response resource.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;name&lt;/code&gt;: Name of the response resource. Example: &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-vod-epg-information/resources/#specific-resources-for-the-use-case-tv-vod-epg-information&#34;&gt;&lt;code&gt;tv:tv.moreInfoTvDetail&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;params&lt;/code&gt;: This field returns any required parameter in the resource.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;payload&lt;/code&gt;: Information provided by the &lt;strong&gt;Kernel API&lt;/strong&gt;, when we make the VOD EPG information request.
For this case, If we receive a response, it is a value and then this field includes the following parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: &lt;code&gt;details&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;data&lt;/code&gt;: It returns the information provided by the &lt;strong&gt;Kernel&lt;/strong&gt; API.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;status&lt;/code&gt;: Final status request. This field includes the following parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;code&lt;/code&gt;: Status code.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;message&lt;/code&gt;: Status message, which describes the status code.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;params&lt;/code&gt;: Parameter that sends details of status. This field does not appear if it is empty.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;actions&lt;/code&gt;: Actions to follow with the result of request.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;conditions&lt;/code&gt;: Condition for the actions to be applied.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-vod-epg-information/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-vod-epg-information/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-vod-epg-information-use-case&#34;&gt;TV VOD EPG information use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Global use case developed by Aura Platform Team that allows users to get VOD EPG information about the playing content.&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The TV VOD EPG information use case is a global experience designed and developed by Aura Global Team that allows Telefónica customers to ask Aura about what they are watching on TV at that specific moment using a vocal interface. The use case answers with the name of the TV content being broadcasted.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A user interacts with Aura through a normalized video channel&lt;/li&gt;
&lt;li&gt;She asks about the content currently playing: &amp;ldquo;What am I watching?&amp;rdquo;, &amp;ldquo;What&amp;rsquo;s on?&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Aura recognizes the request and provides back to the channel the information required to answer the request&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Find additional information in following the documents:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Discover the &lt;a href=&#34;#specifications&#34;&gt;TV VOD EPG information specifications&lt;/a&gt; and the particularities of the &lt;a href=&#34;#use-case-development&#34;&gt;use case development&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Learn how to &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-vod-epg-information/tv-vod-epg-information-dialog/&#34;&gt;configure the generic dialog for TV VOD EPG information use case&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Find out the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-vod-epg-information/nlp-config-obs/&#34;&gt;NLP configuration for each OB&lt;/a&gt; for the TV VOD EPG information use case.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specifications&#34;&gt;Specifications&lt;/h2&gt;
&lt;h3 id=&#34;kernel-api&#34;&gt;Kernel API&lt;/h3&gt;
&lt;p&gt;In order to resolve the user&amp;rsquo;s  request, Aura uses &lt;a href=&#34;https://developers.baikalplatform.com/apis/video-contents/&#34;&gt;Video Contents normalized Kernel API&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;request-response-model&#34;&gt;Request-response model&lt;/h3&gt;
&lt;p&gt;TV VOD EPG information use case is adapted to the new &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;request-response normalized model v3&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;available-channels&#34;&gt;Available channels&lt;/h3&gt;
&lt;p&gt;TV VOD EPG information use case could be available for any channel that implements &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;normalized v3 request-response model&lt;/a&gt; including TV related data.&lt;/p&gt;
&lt;p&gt;Currently, STB channels in BR are already available.&lt;/p&gt;
&lt;h3 id=&#34;display-features&#34;&gt;Display features&lt;/h3&gt;
&lt;p&gt;Currently, the normalized TV VOD EPG information use case includes &lt;strong&gt;basic VOD EPG information features&lt;/strong&gt; for content:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;VOD EPG information by content&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Therefore, the questions could be of this type:
&amp;ldquo;What am I watching?&amp;rdquo;
&amp;ldquo;Which actors are involved?&amp;rdquo;&lt;/p&gt;
&lt;h2 id=&#34;use-case-development&#34;&gt;Use case development&lt;/h2&gt;
&lt;p&gt;The TV VOD EPG information use case development includes these components:&lt;/p&gt;
&lt;h3 id=&#34;understanding-features&#34;&gt;Understanding features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;TV VOD EPG information use case intent: &lt;code&gt;intent.tv-vod_epg_information&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;TV VOD EPG information use case entities:&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Entity&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.device_tv&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;¿Qué estoy viendo en la tele?&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.device_mobile&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;¿Qué estoy viendo en el móvil?&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ent.device_phone&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;¿Qué estoy viendo en el teléfono?&amp;rdquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;In order to understand users’ requests (utterances), Aura is trained with:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/experiences-builder/development-use-cases/nlp-uc-development/&#34;&gt;NLP expression&lt;/a&gt; to recognize the user&amp;rsquo;s utterance and detect the user&amp;rsquo;s intention.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;use-case-logic&#34;&gt;Use case logic&lt;/h3&gt;
&lt;p&gt;Once Aura has recognized the user&amp;rsquo;s utterance based on NLP components, the use case should be resolved based on:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Aura Bot dialog&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;TV VOD EPG information is built over the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3/&#34;&gt;generic dialog v3&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Check the section &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-vod-epg-information/tv-vod-epg-information-dialog/&#34;&gt;Configuration of the generic dialog for TV VOD EPG information use case&lt;/a&gt; in order to know the required configuration for the TV VOD EPG information experience.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-app-open/resources/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-app-open/resources/</guid>
      <description>
        
        
        &lt;h1 id=&#34;audiovisual-app-opening-use-case-resources&#34;&gt;Audiovisual App Opening use case resources&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Resources used by the &lt;strong&gt;Audiovisual App Opening&lt;/strong&gt; use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;Audiovisual App Opening&lt;/strong&gt; use case will use three different types of resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#aura-platform-global-resources&#34;&gt;Aura Platform global resources&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;Common resources for video use cases&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#specific-resources-for-the-use-case&#34;&gt;Specific resources for the use case&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specific-resources-for-the-use-case&#34;&gt;Specific resources for the use case&lt;/h2&gt;
&lt;p&gt;The resources associated to the &lt;strong&gt;Audiovisual App Opening&lt;/strong&gt; plugin are defined below:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Specific resources for intent.tv.app_open use case&lt;/th&gt;
&lt;th&gt;Definition&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;th&gt;Managed by&lt;/th&gt;
&lt;th&gt;Scope&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.section.not_available&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the section is not available&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;tv.app_open plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-language-change/resources/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-language-change/resources/</guid>
      <description>
        
        
        &lt;h1 id=&#34;change-language-use-case-resources&#34;&gt;Change language use case resources&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Resources used by the &lt;strong&gt;Change language&lt;/strong&gt; use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;Change language&lt;/strong&gt; use case will use three different types of resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#aura-platform-global-resources&#34;&gt;Aura Platform global resources&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;Common resources for video use cases&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/navigation-section-show/resources/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/navigation-section-show/resources/</guid>
      <description>
        
        
        &lt;h1 id=&#34;section-show-use-case-resources&#34;&gt;Section Show use case resources&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Resources used by the &lt;strong&gt;Section Show&lt;/strong&gt; use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;Section Show&lt;/strong&gt; use case will use three different types of resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#aura-platform-global-resources&#34;&gt;Aura Platform global resources&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;Common resources for video use cases&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#specific-resources-for-the-use-case&#34;&gt;Specific resources for the use case&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specific-resources-for-the-use-case-tvdisplay&#34;&gt;Specific resources for the use case: tv.display&lt;/h2&gt;
&lt;p&gt;There are no specific resources for TV section show in V3. For v1, the resources associated are defined below:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Specific resources for tv.display use case&lt;/th&gt;
&lt;th&gt;Definition&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;th&gt;Managed by&lt;/th&gt;
&lt;th&gt;Scope&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;navigation:navigation.section_show&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the navigation section show is successfully&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;navigation.section_show plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-subtitles-remove/resources/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-subtitles-remove/resources/</guid>
      <description>
        
        
        &lt;h1 id=&#34;subtitles-remove-use-case-resources&#34;&gt;Subtitles remove use case resources&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Resources used by the &lt;strong&gt;Subtitles remove&lt;/strong&gt; use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;Subtitles remove&lt;/strong&gt; use case will use three different types of resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#aura-platform-global-resources&#34;&gt;Aura Platform global resources&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;Common resources for video use cases&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-content-get-info/resources/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-content-get-info/resources/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-content-get-info-use-case-resources&#34;&gt;TV content get info use case resources&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Resources used by the TV content get info use case&lt;/p&gt;

&lt;/div&gt;

&lt;p&gt;The TV content get info use case will use three different types of resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#aura-platform-global-resources&#34;&gt;Aura Platform global resources&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;Common resources for video use cases&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#specific-resources-for-the-use-case-tvcontent_get_info&#34;&gt;Specific resources for the use case: tv.content_get_info&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specific-resources-for-the-use-case-tvcontent_get_info&#34;&gt;Specific resources for the use case: tv.content_get_info&lt;/h2&gt;
&lt;p&gt;The resources associated to the TV content get info plugin are defined below:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Specific resources for tv.content_get_info use case&lt;/th&gt;
&lt;th&gt;Definition&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;th&gt;Managed by&lt;/th&gt;
&lt;th&gt;Scope&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.content-get-info.by-channel.no-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search does not find any result with channel info&lt;/td&gt;
&lt;td&gt;Lo siento, no encuentro lo que dices&lt;/td&gt;
&lt;td&gt;tv.content_get_info plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.content-get-info.by-channel.single-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds one channel&lt;/td&gt;
&lt;td&gt;Esto es lo que están emitiendo ahora en ese canal&lt;/td&gt;
&lt;td&gt;tv.content_get_info plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.content-get-info.by-channel.multiple-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds more than one channel&lt;/td&gt;
&lt;td&gt;He encontrado estos contenidos que se estan emitiendo&lt;/td&gt;
&lt;td&gt;tv.content_get_info plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/ai-use-cases/tv-conversational-search-llm/resources/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/ai-use-cases/tv-conversational-search-llm/resources/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-llm-conversational-search-uc-resources&#34;&gt;TV LLM Conversational Search UC resources&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Resources used by the TV LLM Conversational Search UC&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The TV LLM Conversational Search UC will use three different types of resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#aura-platform-global-resources&#34;&gt;Aura Platform global resources&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;Common resources for video use cases&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#specific-resources-for-the-use-case-tv-conversational-search&#34;&gt;Specific resources for the use case: tv-conversational-search&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specific-resources-for-the-use-case-tv-llm-conversational-search&#34;&gt;Specific resources for the use case: TV LLM Conversational Search&lt;/h2&gt;
&lt;p&gt;In case the LLM Conversational Search does not return the text to be shown to the user, the resources from TV Conversational Search plugin would be used&lt;/p&gt;
&lt;p&gt;The resources associated to &lt;em&gt;&lt;strong&gt;aura-bot&lt;/strong&gt;&lt;/em&gt; are defined below:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Specific resources for TV LLM Conversational Search use case&lt;/th&gt;
&lt;th&gt;Definition&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;th&gt;Managed by&lt;/th&gt;
&lt;th&gt;Scope&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv-conversational-search:command.exit&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the user sends a message to stop the dialog and launch a different UC&lt;/td&gt;
&lt;td&gt;Entendido. Recuerda que puedes volver a probarlo diciendo &amp;ldquo;Recomendador avanzado&amp;quot;&lt;/td&gt;
&lt;td&gt;conversational-search dialog&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv-conversational-search:command.close.words&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the user sends a message to stop the dialog. By default, it is not configured.&lt;/td&gt;
&lt;td&gt;Salir, cerrar, goodbye, exit, quit&lt;/td&gt;
&lt;td&gt;conversational-search dialog dialog&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv-conversational-search:command.no-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned in case there is no results&lt;/td&gt;
&lt;td&gt;Ahora mismo no encuentro resultados, pero si me dices un género o tu estado de ánimo te sugiero algo.&lt;/td&gt;
&lt;td&gt;conversational-search dialog&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv-conversational-search:command.recommend&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource used to call the LLM with a fixed phrase when the request comes from triage&lt;/td&gt;
&lt;td&gt;Recomendación avanzada&lt;/td&gt;
&lt;td&gt;conversational-search dialog&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;The resources associated to the TV LLM Conversational Search plugin are defined below:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Specific resources for TV LLM Conversational Search use case&lt;/th&gt;
&lt;th&gt;Definition&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;th&gt;Managed by&lt;/th&gt;
&lt;th&gt;Scope&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.conversational.by-default.simple-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when finds one result as recommendation&lt;/td&gt;
&lt;td&gt;Here is a suggestion&lt;/td&gt;
&lt;td&gt;tv.recommend plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.conversational.multiple-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when finds more than one result as recommendation&lt;/td&gt;
&lt;td&gt;Here are some suggestions&lt;/td&gt;
&lt;td&gt;tv.recommend plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.conversational.display.single-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when one live channel is recommended and starts playback&lt;/td&gt;
&lt;td&gt;Tuning to channel&lt;/td&gt;
&lt;td&gt;tv.recommend plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.conversational.no-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when does not find any result as recommendation&lt;/td&gt;
&lt;td&gt;Nothing found&lt;/td&gt;
&lt;td&gt;tv.recommend plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-display/resources/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-display/resources/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-display-use-case-resources&#34;&gt;TV display use case resources&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Resources used by the TV display use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The TV display use case will use three different types of resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#aura-platform-global-resources&#34;&gt;Aura Platform global resources&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;Common resources for video use cases&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#specific-resources-for-the-use-case-tvdisplay&#34;&gt;Specific resources for the use case: tv.display&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specific-resources-for-the-use-case-tvdisplay&#34;&gt;Specific resources for the use case: tv.display&lt;/h2&gt;
&lt;p&gt;The resources associated to the TV display plugin are defined below:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Specific resources for tv.display use case&lt;/th&gt;
&lt;th&gt;Definition&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;th&gt;Managed by&lt;/th&gt;
&lt;th&gt;Scope&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;video.display.by-channel.single-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds one channel and is broadcasting&lt;/td&gt;
&lt;td&gt;Esto es lo que están emitiendo ahora en ese canal&lt;/td&gt;
&lt;td&gt;tv.display plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;video.display.by-default.single-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds one channel content has already been broadcast or finds a video content&lt;/td&gt;
&lt;td&gt;Voy a ello, dame un segundo&lt;/td&gt;
&lt;td&gt;tv.display plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;video.display.by-default.detail-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds one channel content or video content that has not been broadcast yet, or the content does not have enough information to be played&lt;/td&gt;
&lt;td&gt;Mira, he encontrado este contenido&lt;/td&gt;
&lt;td&gt;tv.display plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.display.by-default.multiple-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds more than one channel content or content on demand&lt;/td&gt;
&lt;td&gt;He encontrado estos contenidos relacionados con tu petición&lt;/td&gt;
&lt;td&gt;tv.display plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.display.contingency.single-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the contingency search finds one result&lt;/td&gt;
&lt;td&gt;He encontrado este contenido relacionado&lt;/td&gt;
&lt;td&gt;tv.display plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.display.contingency.multiple-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the contingency search finds more than one result&lt;/td&gt;
&lt;td&gt;He encontrado estos contenidos relacionados&lt;/td&gt;
&lt;td&gt;tv.display plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.display.contingency.no-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the contingency search does not find any result&lt;/td&gt;
&lt;td&gt;Lo siento, no encuentro lo que dices&lt;/td&gt;
&lt;td&gt;tv.display plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/ai-use-cases/tv-recommend-llm/resources/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/ai-use-cases/tv-recommend-llm/resources/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-llm-recommend-uc-resources&#34;&gt;TV LLM Recommend UC resources&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Resources used by the TV LLM Recommend UC&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The TV LLM Recommend UC will use three different types of resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#aura-platform-global-resources&#34;&gt;Aura Platform global resources&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;Common resources for video use cases&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#specific-resources-for-the-use-case-tv-recommend&#34;&gt;Specific resources for the use case: TV LLM Recommend&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specific-resources-for-the-use-case-tv-llm-recommend&#34;&gt;Specific resources for the use case: TV LLM Recommend&lt;/h2&gt;
&lt;p&gt;The resources associated to the TV LLM Recommend plugin are defined below:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Specific resources for TV LLM Search use case&lt;/th&gt;
&lt;th&gt;Definition&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;th&gt;Managed by&lt;/th&gt;
&lt;th&gt;Scope&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.recommend.by-default.simple-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when finds one result as recommendation&lt;/td&gt;
&lt;td&gt;Here is a suggestion&lt;/td&gt;
&lt;td&gt;tv.recommend plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.recommend.multiple-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when finds more than one result as recommendation&lt;/td&gt;
&lt;td&gt;Here are some suggestions&lt;/td&gt;
&lt;td&gt;tv.recommend plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.recommend.display.single-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when one live channel is recommended and starts playback&lt;/td&gt;
&lt;td&gt;Tuning to channel&lt;/td&gt;
&lt;td&gt;tv.recommend plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.recommend.no-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when does not find any result as recommendation&lt;/td&gt;
&lt;td&gt;Nothing found&lt;/td&gt;
&lt;td&gt;tv.recommend plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/ai-use-cases/tv-search-llm/resources/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/ai-use-cases/tv-search-llm/resources/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-llm-search-uc-resources&#34;&gt;TV LLM Search UC resources&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Resources used by the TV LLM Search UC&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The TV LLM Search UC will use three different types of resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#aura-platform-global-resources&#34;&gt;Aura Platform global resources&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;Common resources for video use cases&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#specific-resources-for-the-use-case-tv-llm-search&#34;&gt;Specific resources for the use case: TV LLM Search&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specific-resources-for-the-use-case-tv-llm-search&#34;&gt;Specific resources for the use case: TV LLM Search&lt;/h2&gt;
&lt;p&gt;The resources associated to the TV LLM Search plugin are defined below:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Specific resources for TV LLM Search use case&lt;/th&gt;
&lt;th&gt;Definition&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;th&gt;Managed by&lt;/th&gt;
&lt;th&gt;Scope&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.retrieve.by-default.simple-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds one result&lt;/td&gt;
&lt;td&gt;Here is the content I found&lt;/td&gt;
&lt;td&gt;tv.retrieve plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.retrieve.multiple-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds more than one result&lt;/td&gt;
&lt;td&gt;Here are the contents I found&lt;/td&gt;
&lt;td&gt;tv.retrieve plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.retrieve.display.single-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds a single live channel and starts playback&lt;/td&gt;
&lt;td&gt;Tuning to channel with live channel&lt;/td&gt;
&lt;td&gt;tv.retrieve plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.retrieve.no-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search does not find any result&lt;/td&gt;
&lt;td&gt;I haven’t found anything&lt;/td&gt;
&lt;td&gt;tv.retrieve plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-move-backwards/resources/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-move-backwards/resources/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-move-backwards-use-case-resources&#34;&gt;TV move backwards use case resources&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Resources used by the TV move backwards use case&lt;/p&gt;

&lt;/div&gt;

&lt;p&gt;The TV move backwards use case will use two different types of resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#aura-platform-global-resources&#34;&gt;Aura Platform global resources&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;Common resources for video use cases&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-move-forwards/resources/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-move-forwards/resources/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-move-forwards-use-case-resources&#34;&gt;TV move forwards use case resources&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Resources used by the TV move forwards use case&lt;/p&gt;

&lt;/div&gt;

&lt;p&gt;The TV move forwards use case will use two different types of resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#aura-platform-global-resources&#34;&gt;Aura Platform global resources&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;Common resources for video use cases&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-none/resources/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-none/resources/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-none-use-case-resources&#34;&gt;TV none use case resources&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Resources used by the TV none use case&lt;/p&gt;

&lt;/div&gt;

&lt;p&gt;The TV none use case will use three different types of resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#aura-platform-global-resources&#34;&gt;Aura Platform global resources&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;Common resources for video use cases&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#specific-resources-for-the-use-case-tvnone&#34;&gt;Specific resources for the use case: tv.none&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specific-resources-for-the-use-case-tvnone&#34;&gt;Specific resources for the use case: tv.none&lt;/h2&gt;
&lt;p&gt;The resources associated to the TV none plugin are defined below:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Specific resources for tv.none use case&lt;/th&gt;
&lt;th&gt;Definition&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;th&gt;Managed by&lt;/th&gt;
&lt;th&gt;Scope&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.search.contingency.no-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the contingency search does not find any result&lt;/td&gt;
&lt;td&gt;No he encontrado nada&lt;/td&gt;
&lt;td&gt;tv.none plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.search.contingency.single-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the contingency search finds one result&lt;/td&gt;
&lt;td&gt;Este es el resultado que he encontrado&lt;/td&gt;
&lt;td&gt;tv.none plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.search.contingency.multiple-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the contingency search finds more than one result&lt;/td&gt;
&lt;td&gt;Estos son los resultados que he encontrado&lt;/td&gt;
&lt;td&gt;tv.none plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-none/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-none/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-none-use-case&#34;&gt;TV none use case&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Global use case developed by Aura Platform Team that allows searching content related with the user&amp;rsquo;s utterance when the intent is intent.tv.none&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The TV none use case is a global experience designed and developed by Aura Global Team that allows Telefónica customers to ask Aura using a vocal interface.&lt;/p&gt;
&lt;p&gt;Find additional information in following the documents:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Discover the &lt;a href=&#34;#specifications&#34;&gt;TV none specifications&lt;/a&gt; and the particularities of the &lt;a href=&#34;#use-case-development&#34;&gt;use case development&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Learn how to &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-none/tv-none-dialog/&#34;&gt;configure the generic dialog for TV none use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Access to the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-none/tv-none-plugin/&#34;&gt;TV none plugin&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Discover which are the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-none/resources/&#34;&gt;resources used by the TV none use case&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Find out the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-none/nlp-config-obs/&#34;&gt;NLP configuration for each OB&lt;/a&gt; for the TV none use case.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specifications&#34;&gt;Specifications&lt;/h2&gt;
&lt;h3 id=&#34;kernel-api&#34;&gt;Kernel API&lt;/h3&gt;
&lt;p&gt;In order to resolve the user&amp;rsquo;s request, Aura uses &lt;a href=&#34;https://developers.baikalplatform.com/apis/video-contents/&#34;&gt;Video Contents normalized Kernel API&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;request-response-model&#34;&gt;Request-response model&lt;/h3&gt;
&lt;p&gt;TV none use case is adapted to the new &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;request-response normalized model v3&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;available-channels&#34;&gt;Available channels&lt;/h3&gt;
&lt;p&gt;Once TV none v3 use case is fully normalized, it will be available for any channel that implements &lt;a href=&#34;../../docs/components/request-response-model/channeldata-v3/&#34;&gt;normalized v3 request-response model&lt;/a&gt; including TV related data.&lt;/p&gt;
&lt;p&gt;Currently, STB channels in BR are already available.&lt;/p&gt;
&lt;h3 id=&#34;display-features&#34;&gt;Display features&lt;/h3&gt;
&lt;p&gt;Currently, the normalized TV none use case includes &lt;strong&gt;basic search features&lt;/strong&gt; for content/channels:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;none search content/channels with user normalized utterance&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Therefore, the answer could be any provided by the recognized intent: &lt;code&gt;intent.tv.none&lt;/code&gt;&lt;/p&gt;
&lt;h2 id=&#34;use-case-development&#34;&gt;Use case development&lt;/h2&gt;
&lt;p&gt;The TV none use case development includes these components:&lt;/p&gt;
&lt;h3 id=&#34;understanding-features&#34;&gt;Understanding features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;TV none use case intent: &lt;code&gt;intent.tv.none&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;TV none use case entities: Ignore the entities for search content/channels, use normalized utterance for contigency search.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In order to understand users’ requests (utterances), Aura is trained with:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/experiences-builder/development-use-cases/nlp-uc-development/&#34;&gt;NLP expression&lt;/a&gt; to recognize the user&amp;rsquo;s utterance and detect her intention.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/experiences-builder/development-use-cases/nlp-uc-development/intro-catalogs/&#34;&gt;TV catalog&lt;/a&gt; in order to understand TV content (channels) in the user&amp;rsquo;s utterance and detect them as Aura entities.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;use-case-logic&#34;&gt;Use case logic&lt;/h3&gt;
&lt;p&gt;Once Aura has recognized the user&amp;rsquo;s utterance based on NLP components, the use case should be resolved based on:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Aura Bot dialog&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;TV none is built over the &lt;a href=&#34;../../docs/components/global-use-cases/generic-dialog/generic-dialog-v3/&#34;&gt;generic dialog v3&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Check the section &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-none/tv-none-dialog/&#34;&gt;Configuration of the generic dialog for TV none use case&lt;/a&gt; in order to know the required configuration for the TV none experience.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;CLF Plugin&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;../../docs/components/complex-logic-framework&#34;&gt;Complex Logic Framework&lt;/a&gt; is used for the recognition of the user&amp;rsquo;s request.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Check here the &lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/tv-none/tv-none-plugin/&#34;&gt;TV none plugin&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-search/resources/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-search/resources/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-search-use-case-resources&#34;&gt;TV search use case resources&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Resources used by the TV search use case&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The TV search use case will use three different types of resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#aura-platform-global-resources&#34;&gt;Aura Platform global resources&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;Common resources for video use cases&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#specific-resources-for-the-use-case-tvsearch&#34;&gt;Specific resources for the use case: tv.search&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specific-resources-for-the-use-case-tvsearch&#34;&gt;Specific resources for the use case: tv.search&lt;/h2&gt;
&lt;p&gt;The resources associated to the TV search plugin are defined below:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Specific resources for tv.search use case&lt;/th&gt;
&lt;th&gt;Definition&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;th&gt;Managed by&lt;/th&gt;
&lt;th&gt;Scope&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.search.by-title.simple-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds one result by searching for one title entity&lt;/td&gt;
&lt;td&gt;He encontrado esto sobre $title&lt;/td&gt;
&lt;td&gt;tv.search plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.search.by-title.multiple-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds more than one result by searching for one title entity&lt;/td&gt;
&lt;td&gt;He encontrado estos contenidos sobre $title&lt;/td&gt;
&lt;td&gt;tv.search plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.search.by-participant.simple-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds one result by searching for one actor/director entity&lt;/td&gt;
&lt;td&gt;En este contenido participa $participant&lt;/td&gt;
&lt;td&gt;tv.search plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.search.by-participant.multiple-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds more than one result by searching for one actor/director entity&lt;/td&gt;
&lt;td&gt;En estos contenidos participa $participant&lt;/td&gt;
&lt;td&gt;tv.search plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.search.by-genre.simple-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds one result by searching for one genre entity&lt;/td&gt;
&lt;td&gt;Mira lo que he encontrado sobre $genre&lt;/td&gt;
&lt;td&gt;tv.search plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.search.by-genre.multiple-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds more than one result by searching for one genre entity&lt;/td&gt;
&lt;td&gt;Estos son los contenidos que he encontrado sobre $genre&lt;/td&gt;
&lt;td&gt;tv.search plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.search.by-subgenre.simple-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds one result by searching for one genre and one subgenre entity&lt;/td&gt;
&lt;td&gt;Mira lo que he encontrado sobre $genre de $subgenre&lt;/td&gt;
&lt;td&gt;tv.search plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.search.by-subgenre.multiple-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds more than one result by searching for one genre and one subgenre entity&lt;/td&gt;
&lt;td&gt;Estos son los contenidos que he encontrado sobre $genre de $subgenre&lt;/td&gt;
&lt;td&gt;tv.search plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.search.by-default.simple-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds one result&lt;/td&gt;
&lt;td&gt;Aquí tienes este contenido&lt;/td&gt;
&lt;td&gt;tv.search plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.search.by-default.multiple-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the search finds more than one result&lt;/td&gt;
&lt;td&gt;Aquí tienes estos contenidos&lt;/td&gt;
&lt;td&gt;tv.search plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.search.contingency.no-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the contingency search does not find any result&lt;/td&gt;
&lt;td&gt;No he encontrado nada&lt;/td&gt;
&lt;td&gt;tv.search plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.search.contingency.single-result&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the contingency search finds one result&lt;/td&gt;
&lt;td&gt;Este es el resultado que he encontrado&lt;/td&gt;
&lt;td&gt;tv.search plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.search.contingency.multiple-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when the contingency search finds more than one result&lt;/td&gt;
&lt;td&gt;Estos son los resultados que he encontrado&lt;/td&gt;
&lt;td&gt;tv.search plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:video.search.no-results&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource when the contingency search is disabled and does not find any result&lt;/td&gt;
&lt;td&gt;No he encontrado lo que dices&lt;/td&gt;
&lt;td&gt;tv.search plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/video-use-cases/tv-vod-epg-information/resources/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/video-use-cases/tv-vod-epg-information/resources/</guid>
      <description>
        
        
        &lt;h1 id=&#34;tv-vod-epg-information-use-case-resources&#34;&gt;TV VOD EPG information use case resources&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Resources used by the TV VOD EPG information use case&lt;/p&gt;

&lt;/div&gt;

&lt;p&gt;The TV VOD EPG information use case will use three different types of resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#aura-platform-global-resources&#34;&gt;Aura Platform global resources&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;../../docs/components/global-use-cases/video-use-cases/global-resources/#common-resources-for-video-use-cases&#34;&gt;Common resources for video use cases&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#specific-resources-for-the-use-case-tv-vod_epg_information&#34;&gt;Specific resources for the use case: tv.vod_egp_information&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;specific-resources-for-the-use-case-tvvod_epg_information&#34;&gt;Specific resources for the use case: tv.vod_epg_information&lt;/h2&gt;
&lt;p&gt;The resources associated to the TV VOD EPG information plugin are defined below:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Specific resources for tv.vod_epg_information use case&lt;/th&gt;
&lt;th&gt;Definition&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;th&gt;Managed by&lt;/th&gt;
&lt;th&gt;Scope&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:tv.moreInfoTvDetail&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when content is retrieved with some device entities (&lt;code&gt;ent.device_tv&lt;/code&gt;, &lt;code&gt;ent.device_mobile&lt;/code&gt;, &lt;code&gt;ent.device_phone&lt;/code&gt;)&lt;/td&gt;
&lt;td&gt;Esto es lo que se está reproduciendo en la televisión&lt;/td&gt;
&lt;td&gt;tv.vod_epg_information plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:carousel.info.contentDetail&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Resource returned when content is retrieved without any device entity (&lt;code&gt;ent.device_tv&lt;/code&gt;, &lt;code&gt;ent.device_mobile&lt;/code&gt;, &lt;code&gt;ent.device_phone&lt;/code&gt;)&lt;/td&gt;
&lt;td&gt;Aquí tienes más detalles&lt;/td&gt;
&lt;td&gt;tv.vod_epg_information plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:tv.moreInfoTvNotAllowed&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;No resource returned when content is retrieved with some device entities (&lt;code&gt;ent.device_tv&lt;/code&gt;, &lt;code&gt;ent.device_mobile&lt;/code&gt;, &lt;code&gt;ent.device_phone&lt;/code&gt;)&lt;/td&gt;
&lt;td&gt;Vaya, parece que no puedo darte más información de lo que estás viendo en la televisión&lt;/td&gt;
&lt;td&gt;tv.vod_epg_information plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tv:tv.more_info.notAllowed&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;No resource returned when content is retrieced without any device entity (&lt;code&gt;ent.device_tv&lt;/code&gt;, &lt;code&gt;ent.device_mobile&lt;/code&gt;, &lt;code&gt;ent.device_phone&lt;/code&gt;)&lt;/td&gt;
&lt;td&gt;Vaya, parece que no puedo hacer eso&lt;/td&gt;
&lt;td&gt;tv.vod_epg_information plugin&lt;/td&gt;
&lt;td&gt;Use case-specific&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: </title>
      <link>/docs/components/global-use-cases/ai-use-cases/tv-conversational-none-llm/ai-config-obs/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/components/global-use-cases/ai-use-cases/tv-conversational-none-llm/ai-config-obs/</guid>
      <description>
        
        
        &lt;h1 id=&#34;ai-configuration-by-ob&#34;&gt;AI configuration by OB&lt;/h1&gt;
&lt;p&gt;The following information applies to both &lt;strong&gt;Spain&lt;/strong&gt; and &lt;strong&gt;Brazil&lt;/strong&gt;; there will not be separate blocks for each OB.&lt;/p&gt;
&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;LLMs UCs are configured and located within the &lt;code&gt;aura-config-provision&lt;/code&gt; repository. See the &lt;a href=&#34;https://github.com/Telefonica/aura-config-provision/blob/master/%5Bob%5D/presets/gvp-conversational-none-preset.json&#34;&gt;TV LLM Conversational None Preset&lt;/a&gt; (notice that in the url, the field [ob] needs to be replaced by [es] or [br])
LLM use cases have been designed to provide a fallback mechanism for user requests that are not currently understood, i.e. return a &amp;lsquo;None&amp;rsquo; intent, or when no content is found in the video platform related to it, offering a second chance for classification and response generation.&lt;/p&gt;
&lt;h3 id=&#34;intent&#34;&gt;Intent&lt;/h3&gt;
&lt;p&gt;The Conversational None Use Case has different invocation points:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;From triage: when the LLM fails to map the user&amp;rsquo;s input to any known intent often due to ambiguous, incomplete or broad queries (&amp;ldquo;Uno hacia abajo&amp;rdquo;, &amp;ldquo;Sintoniza el canal&amp;rdquo;, &amp;ldquo;Cambia cómo suena&amp;rdquo;).&lt;/li&gt;
&lt;li&gt;From failures or KOs occurring in other supported use cases.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Once the user&amp;rsquo;s input is classified as &lt;code&gt;intent.conversational.none&lt;/code&gt;, the request is routed to the Conversational None Agent, an LLM-based conversational module designed to handle unclassified or unsupported queries with the goal of guiding the user toward valid flows or supported actions within the platform by suggesting possible next steps or rephrasing options.&lt;/p&gt;
&lt;p&gt;The conversation is considered complete once the LLM returns a response to the user. Subsequent user inputs will be reprocessed through the full recognition pipeline, including both deterministic and LLM-based intent classifiers.&lt;/p&gt;
&lt;h3 id=&#34;llm-output-format&#34;&gt;LLM output format&lt;/h3&gt;
&lt;p&gt;In the output format, the LLM returns a structured JSON response based on predefined Use Cases configured within the field &lt;code&gt;use_cases&lt;/code&gt; in the preset (in &lt;code&gt;args&lt;/code&gt;). These Use Cases follow a structured format that includes three fields separated by a pipe (&lt;code&gt;|&lt;/code&gt;):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;NAME&lt;/strong&gt; (mandatory): The name of the Use Case.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;DESCRIPTION&lt;/strong&gt; (optional): A short explanation or instruction. This field may be empty.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;EXAMPLE&lt;/strong&gt; (mandatory): A representative user utterance for that Use Case.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Sample extract from use case information:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;NAME&lt;/th&gt;
&lt;th&gt;DESCRIPTION&lt;/th&gt;
&lt;th&gt;EXAMPLE&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;abrir una sección&lt;/td&gt;
&lt;td&gt;Para abrir una sección es necesario mencionar el nombre de la sección que deseas consultar. Algunas son: Deportes, Cine o Series.&lt;/td&gt;
&lt;td&gt;Abrir la sección Deportes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Desativar o som&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;Silencie a TV&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Based on this information and according to matching criteria with the user&amp;rsquo;s request, the LLM constructs its output response by returning two fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&amp;ldquo;speak&amp;rdquo;: intended for voice output to be spoken by the system.&lt;/li&gt;
&lt;li&gt;&amp;ldquo;text&amp;rdquo;: displayed on screen as visual feedback within the Video Platform interface.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The content of these fields varies depending on the type of match between user&amp;rsquo;s input and the predefined Use Cases:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Single Use Case Match:
&lt;ul&gt;
&lt;li&gt;If the Use Case has a description:
&lt;ul&gt;
&lt;li&gt;&amp;ldquo;speak&amp;rdquo;: this field references the name of the Use Case related to the request, describes its invocation process and includes a relevant example.&lt;/li&gt;
&lt;li&gt;&amp;ldquo;text&amp;rdquo;: this field mirrors the example used in &amp;ldquo;speak&amp;rdquo;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;If the Use Case has no description:
&lt;ul&gt;
&lt;li&gt;&amp;ldquo;speak&amp;rdquo;: this field mentions the name of the Use Case linked to the request and the corresponding example.&lt;/li&gt;
&lt;li&gt;&amp;ldquo;text&amp;rdquo;: this field mirrors the example used in &amp;ldquo;speak&amp;rdquo;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Multiple Use Cases Match:
&lt;ul&gt;
&lt;li&gt;&amp;ldquo;speak&amp;rdquo;: this field mentions the ambiguity and shows two likely Use Cases with examples.&lt;/li&gt;
&lt;li&gt;&amp;ldquo;text&amp;rdquo;: this field includes the same two examples.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;No match:
&lt;ul&gt;
&lt;li&gt;&amp;ldquo;speak&amp;rdquo;: this field explains the uncertainty and suggests two random valid Use Cases with examples.&lt;/li&gt;
&lt;li&gt;&amp;ldquo;text&amp;rdquo;: this field repeats only the examples pertaining to the Use Cases shown in &amp;ldquo;speak&amp;rdquo;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This conditional behavior ensures that the assistant gives relevant, helpful responses tailored to the context of the user&amp;rsquo;s request.&lt;/p&gt;
&lt;p&gt;Examples in Castilian Spanish:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;strong&gt;Type of match&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Input&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Output&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&amp;ldquo;Single Use Case no description&amp;rdquo;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Pon la peli desde el principio&amp;rdquo;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{{&amp;quot;name&amp;quot;: &amp;quot;llm_conversational_none&amp;quot;, &amp;quot;arguments&amp;quot;: {{ &amp;quot;speak&amp;quot;: &amp;quot;Parece que quieres poner un contenido desde el principio. Por ejemplo, prueba a decir Pon Titanic desde el principio.&amp;quot;, &amp;quot;text&amp;quot;: &amp;quot;Pon Titanic desde el principio&amp;quot;}}}}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&amp;ldquo;Single Use Case with description&amp;rdquo;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Pon cualquier canal&amp;rdquo;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{{&amp;quot;name&amp;quot;: &amp;quot;llm_conversational_none&amp;quot;, &amp;quot;arguments&amp;quot;: {{ &amp;quot;speak&amp;quot;: &amp;quot;Parece que quieres cambiar de canal. Para cambiar de canal es necesario mencionar el nombre del canal que quieres sintonizar o indicar el número de dial asociado a ese canal. Por ejemplo, prueba a decir Pon el canal Antena 3.&amp;quot;, &amp;quot;text&amp;quot;: &amp;quot;Pon el canal Antena 3&amp;quot;}}}}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&amp;ldquo;Multiple Use Cases&amp;rdquo;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Volumen&amp;rdquo;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{{&amp;quot;name&amp;quot;: &amp;quot;llm_conversational_none&amp;quot;, &amp;quot;arguments&amp;quot;: {{ &amp;quot;speak&amp;quot;: &amp;quot;Creo que quieres ejecutar alguna acción relacionada con el volumen. Podría ser bajar el volumen o subir el volumen. Por ejemplo, prueba a decir Baja un poco el volumen o Sube un poco el volumen&amp;quot;, &amp;quot;text&amp;quot;: &amp;quot;Baja un poco el volumen, Sube un poco el volumen&amp;quot;}}}}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&amp;ldquo;No match&amp;rdquo;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Cántame una canción&amp;rdquo;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{{&amp;quot;name&amp;quot;: &amp;quot;llm_conversational_none&amp;quot;, &amp;quot;arguments&amp;quot;: {{ &amp;quot;speak&amp;quot;: &amp;quot;No tengo claro a qué te refieres pero sí que puedo cambiar de canal o abrir una sección. Por ejemplo, prueba a decir Pon el canal Antena 3 o Abrir la sección Deportes&amp;quot;, &amp;quot;text&amp;quot;: &amp;quot;Pon el canal Antena 3, Abrir la sección Deportes&amp;quot;}}}}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Examples in Brazilian Portuguese:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;strong&gt;Type of match&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Input&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Output&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&amp;ldquo;Single Use Case no description&amp;rdquo;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Coloque o filme desde o começo&amp;rdquo;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{{&amp;quot;name&amp;quot;: &amp;quot;llm_conversational_none&amp;quot;, &amp;quot;arguments&amp;quot;: {{ &amp;quot;speak&amp;quot;: &amp;quot;Parece que você quer colocar um conteúdo desde o começo. Por exemplo, tente dizer Começar desde o início.&amp;quot;, &amp;quot;text&amp;quot;: &amp;quot;Começar desde o início&amp;quot;}}}}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&amp;ldquo;Single Use Case with description&amp;rdquo;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Coloque qualquer canal&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{{&amp;quot;name&amp;quot;: &amp;quot;llm_conversational_none&amp;quot;, &amp;quot;arguments&amp;quot;: {{ &amp;quot;speak&amp;quot;: &amp;quot;Parece que você quer mudar de canal. Para mudar de canal é necessário mencionar o nome do canal que deseja sintonizar. Por exemplo, tente dizer Mudar para o SBT.&amp;quot;, &amp;quot;text&amp;quot;: &amp;quot;Mudar para o SBT&amp;quot;}}}}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&amp;ldquo;Multiple Use Cases&amp;rdquo;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Volume&amp;rdquo;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{{&amp;quot;name&amp;quot;: &amp;quot;llm_conversational_none&amp;quot;, &amp;quot;arguments&amp;quot;: {{ &amp;quot;speak&amp;quot;: &amp;quot;Creo que você quer executar alguma ação relacionada ao volume. Pode ser abaixar o volume ou subir o volume. Por exemplo, tente dizer Abaixe o volume ou Suba o volume&amp;quot;, &amp;quot;text&amp;quot;: &amp;quot;Abaixe o volume, Suba o volume&amp;quot;}}}}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&amp;ldquo;No match&amp;rdquo;&lt;/td&gt;
&lt;td&gt;&amp;ldquo;Canta-me uma canção&amp;rdquo;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{{&amp;quot;name&amp;quot;: &amp;quot;llm_conversational_none&amp;quot;, &amp;quot;arguments&amp;quot;: {{ &amp;quot;speak&amp;quot;: &amp;quot;Não tenho certeza do que você está se referindo mas eu posso mudar de canal ou abrir uma seção. Por exemplo, tente dizer Mudar para o SBT ou Abra Filmes&amp;quot;, &amp;quot;text&amp;quot;: &amp;quot;Mudar para o SBT, Abra Filmes&amp;quot;}}}}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
  </channel>
</rss>
