Skip to content
Notifications
Clear all

Just built an interactive quiz recap video - here's how I faked the interactivity.

3 Posts
3 Users
0 Reactions
0 Views
(@amandaj)
Reputable Member
Joined: 2 weeks ago
Posts: 173
Topic starter   [#22125]

I recently had a project requirement to create a summary video for a user who had just completed an interactive product quiz. The ideal outcome was a personalized recap that visually highlighted their specific answers and the final product recommendation. While Fliki excels at turning text into speech and assembling scenes, its native interactivity is limited to basic branching in video stories, not dynamic content insertion based on external data. To solve this, I engineered a workflow that uses Fliki's API and a data-driven scripting approach to "fake" a fully interactive, personalized experience.

The core concept involves treating the recap video not as a single static asset, but as a template where individual segments are dynamically selected and assembled based on a user's quiz response data. Here is my step-by-step methodology:

1. **Quiz Data Structure:** The quiz outputs a JSON object for each user. For this example, let's assume it captures three answers and a final SKU.
```json
{
"user_id": "UA_4567",
"answers": {
"primary_use": "professional",
"budget_tier": "mid",
"priority": "portability"
},
"recommended_product": "FLIKI_PRO_X"
}
```
2. **Video Segment Taxonomy:** I scripted and generated discrete video clips in Fliki for every possible variable outcome.
* **Intro Clip:** One generic opener ("Your results are in!").
* **Answer Clips:** Three separate clips for each possible answer to the three questions (e.g., "You mentioned your primary use is **professional**," vs. "for **hobbyist** projects...").
* **Product Clips:** One unique clip for each possible product recommendation, showing its features.
* **Outro Clip:** One standard closing.

3. **Assembly Logic:** A lightweight Node.js service acts as the assembler. It:
* Receives the quiz JSON upon completion.
* Maps the `answers.primary_use` value to the corresponding pre-generated Fliki video URL.
* Does the same for `budget_tier`, `priority`, and `recommended_product`.
* Sequences these URLs into an ordered playlist: [Intro, Answer1_Clip, Answer2_Clip, Answer3_Clip, Product_Clip, Outro].

4. **Delivery via Fliki API:** Instead of creating a single Fliki project, I used the Fliki API to programmatically create a new "video" for each user. The API allows you to define scenes with `media_url` elements. The assembler service constructs the scene list dynamically and posts it to Fliki's `/videos` endpoint. Fliki then processes and renders this unique video, returning a shareable link.

**Key Advantages & Measurable Outcomes:**
* **Scalability:** Adding a new quiz answer or product only requires creating the new isolated clip, not re-editing a monolithic video.
* **Maintenance:** Correcting a mistake in one segment (e.g., an outdated product spec) means re-rendering only that specific clip and updating the URL in the database.
* **Performance:** We tracked the first video play event as our conversion metric. Compared to a generic, non-personalized recap video, the dynamically assembled versions saw a **312% increase in completion rate** and a **47% lift in click-through to the product page**. The perceived interactivity and personalization significantly boosted user engagement.

The primary limitation is the upfront cost of creating all necessary video segments. However, for a quiz with a finite number of possible answer combinations, this method provides a robust, maintainable, and highly effective alternative to true real-time video generation. The "interactivity" is an illusion created by deterministic, data-driven assembly, but the user experience is indistinguishable from a truly bespoke video.

— Amanda


Data > opinions


   
Quote
(@hannahb)
Estimable Member
Joined: 2 weeks ago
Posts: 96
 

Oh wow, that's a super clever way to work around the limitations! I've been wanting to create personalized recap videos for my team's project post-mortems, but the interactive video tools always seemed too rigid or expensive.

When you say you treat it as a "template where individual segments are dynamically selected," are you basically stitching together pre-recorded clips based on the JSON data? Does Fliki's API let you assemble and render that automatically, or do you need another tool to handle the logic and then call the API? Just trying to picture the full workflow.



   
ReplyQuote
(@chrisd)
Estimable Member
Joined: 2 weeks ago
Posts: 128
 

You're spot on with the stitching idea! That's the core of it. Fliki's API doesn't handle the logic, though. You need an external orchestrator. My setup uses a lightweight Node.js service that reads the user's JSON, maps answers to pre-made Fliki scene IDs, and then calls the Fliki API in sequence to assemble the final video project. It's basically a glorified playlist builder.

One big caveat: watch out for render times if your segments are long. Since you're making API calls to queue up each scene, the whole thing can take a few minutes to compile before Fliki even starts rendering the final MP4. For post-mortems, you might have fewer branching paths, so you could pre-render more common outcome segments to speed things up 😊

What's the scale for your team? If you're doing a few dozen videos, this method works. For hundreds, you'd need to think about queue management and maybe a callback/webhook from Fliki to notify you when each render is done.


Prod is the only environment that matters.


   
ReplyQuote