{"id":1852,"date":"2026-05-30T04:52:19","date_gmt":"2026-05-30T04:52:19","guid":{"rendered":"https:\/\/documentation.iqonic.design\/streamit-laravel\/?p=1852"},"modified":"2026-05-30T08:03:00","modified_gmt":"2026-05-30T08:03:00","slug":"short-drama","status":"publish","type":"post","link":"https:\/\/documentation.iqonic.design\/streamit-laravel\/short-drama\/","title":{"rendered":"Short Drama Addon Overview &amp; User Workflows"},"content":{"rendered":"<div class=\"nolwrap\">\n<h2 class=\"wp-block-heading\"><strong>1. Overview<\/strong><\/h2>\n\n\n\n<p><strong>Short Drama<\/strong> provides a curated home feed of short episodic dramas inside <strong>Streamit Laravel<\/strong>, making it easy for viewers to discover, resume, and play episodes with minimal friction.<\/p>\n\n\n\n<p>This feature enables:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Fast discovery<\/strong> of short dramas through <strong>banners<\/strong>, <strong>personalized picks<\/strong>, and <strong>sectional lists<\/strong>.<\/li>\n\n\n\n<li><strong>Seamless resume playback<\/strong> with <strong>continue-watching<\/strong> and <strong>initial seek support<\/strong>.<\/li>\n\n\n\n<li><strong>Controlled access<\/strong> to content via a <strong>DRM-styled access layer<\/strong> and <strong>playback gating<\/strong> for protected content.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>2. How It Works<\/strong><\/h2>\n\n\n\n<p><strong>Short Drama<\/strong> organizes episodic content into an adaptive home feed and opens episodes in a focused playback view. The system prioritizes <strong>user experience<\/strong> while enforcing <strong>access controls<\/strong> and handling <strong>offline states<\/strong> gracefully.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Home Feed Composition<\/strong><\/h3>\n\n\n\n<p>The home feed is composed from several sources:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Banners:<\/strong> Highlighted promotions or featured dramas. Selecting a banner opens the drama episode or resolves the correct drama when the banner metadata is incomplete.<\/li>\n\n\n\n<li><strong>Continue Watching:<\/strong> Personalized list of episodes the user started earlier, with resume position preserved.<\/li>\n\n\n\n<li><strong>Sections:<\/strong> Curated lists by category or editorial selection, each showing a horizontal list of dramas.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Access Control (DRM-Styled)<\/strong><\/h3>\n\n\n\n<p><strong>Short Drama<\/strong> enforces a <strong>DRM-styled access layer<\/strong> before playback:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th><strong>Item<\/strong><\/th><th><strong>Description<\/strong><\/th><\/tr><\/thead><tbody><tr><td><strong>Access gating<\/strong><\/td><td>Protected episodes require authentication and valid entitlement to play.<\/td><\/tr><tr><td><strong>Playback resolver<\/strong><\/td><td>When a user requests playback, the app verifies access and resolves stream.<\/td><\/tr><tr><td><strong>Fallback matching<\/strong><\/td><td>If a banner lacks a drama identifier, the app attempts title matching as a fallback.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Player Capabilities<\/strong><\/h3>\n\n\n\n<p>The <strong>Short Drama player<\/strong> exposes several playback capabilities that are managed by the player layer (these are predefined and not presented as on\/off toggles in the app settings):<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Audio track selection:<\/strong> The player can switch between available audio tracks when provided by the stream.<\/li>\n\n\n\n<li><strong>Subtitle selection:<\/strong> The player can enable and switch subtitle tracks when available.<\/li>\n\n\n\n<li><strong>Quality switching:<\/strong> Multiple quality levels are provided by the stream and the player can switch between them for smooth playback.<\/li>\n\n\n\n<li><strong>Auto-swipe:<\/strong> After an episode ends the player may automatically advance to the next episode for continuous viewing.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th><strong>Item<\/strong><\/th><th><strong>Description<\/strong><\/th><\/tr><\/thead><tbody><tr><td><strong>Audio \/ Subtitles<\/strong><\/td><td>Player supports switching audio tracks and subtitle tracks when provided.<\/td><\/tr><tr><td><strong>Quality switching<\/strong><\/td><td>Player handles multiple qualities supplied by the stream; switching happens in-player.<\/td><\/tr><tr><td><strong>Auto-swipe<\/strong><\/td><td>Player can advance to the next episode automatically to maintain viewing flow.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>3. User Roles &amp; Access<\/strong><\/h2>\n\n\n\n<p>List of roles that interact with <strong>Short Drama<\/strong> and their exact capabilities.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>3.1 Guest (Not Logged In)<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Can browse the <strong>Short Drama home feed<\/strong> and view banners and section lists.<\/li>\n\n\n\n<li>Can preview <strong>metadata<\/strong> and <strong>thumbnails<\/strong> for dramas.<\/li>\n\n\n\n<li>Cannot start <strong>protected playback<\/strong>; attempting to play prompts for <strong>authentication<\/strong>.<\/li>\n<\/ul>\n\n\n\n<p>[Screenshot: Guest view of Short Drama home feed showing banners and section lists]<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>3.2 Registered User<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Can browse and play <strong>permitted episodes<\/strong>.<\/li>\n\n\n\n<li>Can resume playback from the <strong>last watched position (continue-watching)<\/strong>.<\/li>\n\n\n\n<li>Can have playback <strong>entitlements enforced<\/strong> by <strong>DRM-styled access control<\/strong>.<\/li>\n\n\n\n<li>Can remove items from <strong>Continue Watching<\/strong>.<\/li>\n<\/ul>\n\n\n\n<p>[Screenshot: Registered User view of Short Drama home feed with Continue Watching section]<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>4. Step-by-Step Workflows<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Browsing the Short Drama Home Feed<\/strong><\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Open the app and navigate to the <strong>Short Drama<\/strong> section from the main menu.<\/li>\n<\/ol>\n\n\n\n<p>[Screenshot: Short Drama home entry point displaying banner and primary sections]<\/p>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li>Scroll through <strong>banners<\/strong>, <strong>Continue Watching<\/strong>, and <strong>section lists<\/strong>.<\/li>\n\n\n\n<li>Tap any drama card to view available episodes or to begin playback (<strong>authentication may be required<\/strong>).<\/li>\n<\/ol>\n\n\n\n<p>[Screenshot: Short Drama card list showing drama cards and play affordance]<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Tip:<\/strong> Use the <strong>Continue Watching<\/strong> list to quickly resume partially viewed episodes.<\/p>\n<\/blockquote>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Playing the First Episode from a Card or Banner<\/strong><\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Tap a drama card or banner on the home feed.<\/li>\n\n\n\n<li>If the item is protected, the app prompts for <strong>sign-in<\/strong> or <strong>entitlement verification<\/strong>.<\/li>\n<\/ol>\n\n\n\n<p>[Screenshot: Playback entitlement prompt for protected episode]<\/p>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li>After access is verified, playback starts. The player resumes from <strong>saved position<\/strong> when applicable.<\/li>\n\n\n\n<li>At the end of an episode, the app can automatically <strong>swipe to the next episode<\/strong> and start playback if the feature is enabled.<\/li>\n<\/ol>\n\n\n\n<p>[Screenshot: Playback screen showing episode controls and current time]<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Tip:<\/strong> <strong>Auto-swipe<\/strong> keeps viewers in a continuous viewing flow for episodic content.<\/p>\n<\/blockquote>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Resuming from Continue Watching<\/strong><\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Locate the <strong>Continue Watching<\/strong> section on the Short Drama home feed.<\/li>\n\n\n\n<li>Tap the <strong>resume action<\/strong> on any listed episode to open playback at the <strong>saved seek position<\/strong>.<\/li>\n<\/ol>\n\n\n\n<p>[Screenshot: Continue Watching list with resume action highlighted]<\/p>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li>After playback, the app updates the <strong>saved progress<\/strong> so the user can return later.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Handling Offline or No-Connection State<\/strong><\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>If the app detects <strong>no internet connection<\/strong>, Short Drama displays an <strong>offline state<\/strong> or banner when appropriate.<\/li>\n<\/ol>\n\n\n\n<p>[Screenshot: Offline state dialog with retry button visible]<\/p>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li>The <strong>retry button<\/strong> checks connectivity and retries the failed action when online.<\/li>\n<\/ol>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Tip:<\/strong> If an episode is partially downloaded or preloaded, the player may still be able to play without full connectivity depending on configuration.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>5. Settings &amp; Configuration<\/strong><\/h2>\n\n\n\n<p><strong>Short Drama settings<\/strong> are predefined and managed by the <strong>player<\/strong> or <strong>server-side configuration<\/strong>. They are not presented as <strong>user-toggleable on\/off switches<\/strong> in the app UI.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th><strong>Setting<\/strong><\/th><th><strong>Default<\/strong><\/th><th><strong>Description<\/strong><\/th><\/tr><\/thead><tbody><tr><td><strong>Autoplay \/ Auto-swipe<\/strong><\/td><td>Predefined<\/td><td>Player may automatically advance to the next episode; behavior is controlled by player configuration.<\/td><\/tr><tr><td><strong>Preload \/ Prefetch<\/strong><\/td><td>Predefined<\/td><td>Player preloads upcoming content and thumbnails according to configured rules.<\/td><\/tr><tr><td><strong>Video quality<\/strong><\/td><td>Managed by player<\/td><td>Multiple quality levels are supplied by the stream and selected\/handled by the player.<\/td><\/tr><tr><td><strong>Continue-watching sync<\/strong><\/td><td>Predefined<\/td><td>Resume positions are synced to the server when available for authenticated users.<\/td><\/tr><tr><td><strong>DRM Access Enforcement<\/strong><\/td><td>Predefined<\/td><td>Entitlement checks and access gating are enforced prior to playback for protected content.<\/td><\/tr><tr><td><strong>Playback features<\/strong><\/td><td>Predefined<\/td><td>Audio, subtitle, and quality switching are supported in-player when provided by the stream.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>6. Important Notes<\/strong><\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Note:<\/strong> If no alternate quality, audio track, or subtitle track is available for an episode, playback uses the stream&#8217;s <strong>default properties<\/strong> and continues without interruption.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Conclusion<\/strong><\/h2>\n\n\n\n<p><strong>Short Drama<\/strong> delivers a focused <strong>discovery<\/strong> and <strong>playback experience<\/strong> for short episodic content within <strong>Streamit Laravel<\/strong>. It balances <strong>fast discovery<\/strong> with <strong>secure playback controls<\/strong> and helpful <strong>resume behavior<\/strong>.<\/p>\n\n\n\n<p><strong>Short Drama ensures:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Quick content discovery<\/strong> through banners, personalized picks, and sectional lists.<\/li>\n\n\n\n<li><strong>Reliable resume playback<\/strong> and progress sync for signed-in users.<\/li>\n\n\n\n<li><strong>Access control<\/strong> for protected content via a <strong>DRM-styled enforcement layer<\/strong>.<\/li>\n<\/ul>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>1. Overview Short Drama provides a curated home feed of short episodic dramas inside Streamit Laravel, making it easy for viewers to discover, resume, and play episodes with minimal friction. This feature enables: 2. How It Works Short Drama organizes episodic content into an adaptive home feed and opens episodes in a focused playback view. [&hellip;]<\/p>\n","protected":false},"author":11,"featured_media":0,"parent":1880,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1852","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"featured_image_src":null,"author_info":{"display_name":"laraveladminiq","author_link":"https:\/\/documentation.iqonic.design\/streamit-laravel\/author\/laraveladminiq\/"},"children":[],"_links":{"self":[{"href":"https:\/\/documentation.iqonic.design\/streamit-laravel\/wp-json\/wp\/v2\/posts\/1852","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/documentation.iqonic.design\/streamit-laravel\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/documentation.iqonic.design\/streamit-laravel\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/documentation.iqonic.design\/streamit-laravel\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/documentation.iqonic.design\/streamit-laravel\/wp-json\/wp\/v2\/comments?post=1852"}],"version-history":[{"count":4,"href":"https:\/\/documentation.iqonic.design\/streamit-laravel\/wp-json\/wp\/v2\/posts\/1852\/revisions"}],"predecessor-version":[{"id":1857,"href":"https:\/\/documentation.iqonic.design\/streamit-laravel\/wp-json\/wp\/v2\/posts\/1852\/revisions\/1857"}],"up":[{"embeddable":true,"href":"https:\/\/documentation.iqonic.design\/streamit-laravel\/wp-json\/wp\/v2\/posts\/1880"}],"wp:attachment":[{"href":"https:\/\/documentation.iqonic.design\/streamit-laravel\/wp-json\/wp\/v2\/media?parent=1852"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/documentation.iqonic.design\/streamit-laravel\/wp-json\/wp\/v2\/categories?post=1852"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/documentation.iqonic.design\/streamit-laravel\/wp-json\/wp\/v2\/tags?post=1852"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}