Repository navigation
Technical Plugin InteractiveVideo
Adds interactive-video editing and player/page integration.
Audience: developers, advanced administrators and AI-assisted diagnosis. Plugin catalog.
- Review date: 2026-10-29. Method: static source analysis; runtime/provider behavior was not exercised.
- Code ownership: independently versioned plugin repository.
- Reported version:
2.0. - Source revision:
eb6a3147e8e65fae1b0b6ca9683a9fe3c927e02b. - Entry class file: InteractiveVideo.php.
Confirm the installed plugin version independently of the Streamer version. Configuration defaults below are not a dump of this installation's saved settings.
No literal dependency declaration was extracted. This does not prove the plugin is standalone.
| Override | Implementation |
|---|---|
updateScript() |
InteractiveVideo.php:34 |
getPluginMenu() |
InteractiveVideo.php:69 |
getHeadCode() |
InteractiveVideo.php:74 |
getFooterCode() |
InteractiveVideo.php:86 |
getVideosManagerListButton() |
InteractiveVideo.php:140 |
These are direct assignments inside getEmptyDataObject(), not evaluated effective defaults. Stored plugins.object_data, globals, structured values and conditional branches may alter runtime behavior. Private/default credential values are omitted.
| Field | Literal default or expression type | Literal source label/help | Evidence |
|---|---|---|---|
showBookmark |
true |
— | source |
This inventory distinguishes implementation files from an API specification. Includes, templates, callbacks and CLI workers are not interchangeable HTTP endpoints. Request-field names below are direct source references, not a complete schema or permission declaration.
| File | Source role | Direct request fields observed |
|---|---|---|
| InteractiveVideo.php | plugin entry class | — |
| Objects/Interactive_video_answers.php | class/helper implementation | — |
| Objects/Interactive_video_questions.php | class/helper implementation | — |
| Objects/Interactive_video_users_answers.php | class/helper implementation | — |
| View/Interactive_video_answers/add.json.php | JSON entry point; inspect caller and guard |
answer, description, id, interactive_video_questions_id, is_correct, videos_id
|
| View/Interactive_video_answers/delete.json.php | JSON entry point; inspect caller and guard | id |
| View/Interactive_video_answers/index.php | PHP page/include/worker; inspect caller | — |
| View/Interactive_video_answers/index_body.php | PHP page/include/worker; inspect caller | — |
| View/Interactive_video_answers/list.json.php | JSON entry point; inspect caller and guard |
draw, interactive_video_questions_id
|
| View/Interactive_video_questions/add.json.php | JSON entry point; inspect caller and guard |
description, id, question, show_in_seconds, status, videos_id
|
| View/Interactive_video_questions/delete.json.php | JSON entry point; inspect caller and guard | id |
| View/Interactive_video_questions/index.php | PHP page/include/worker; inspect caller | — |
| View/Interactive_video_questions/index_body.php | PHP page/include/worker; inspect caller | — |
| View/Interactive_video_questions/list.json.php | JSON entry point; inspect caller and guard |
draw, videos_id
|
| View/Interactive_video_users_answers/add.json.php | JSON entry point; inspect caller and guard |
id, interactive_video_answers_id, timezone, users_id
|
| View/Interactive_video_users_answers/delete.json.php | JSON entry point; inspect caller and guard | id |
| View/Interactive_video_users_answers/index.php | PHP page/include/worker; inspect caller | — |
| View/Interactive_video_users_answers/index_body.php | PHP page/include/worker; inspect caller | — |
| View/Interactive_video_users_answers/list.json.php | JSON entry point; inspect caller and guard | draw |
| View/editor.php | PHP page/include/worker; inspect caller | — |
| View/index.php | PHP page/include/worker; inspect caller | — |
| View/index_answers.php | PHP page/include/worker; inspect caller | — |
| View/index_question.php | PHP page/include/worker; inspect caller | — |
| footer.php | PHP page/include/worker; inspect caller | interactiveAnsweredQuestion |
| install/install.sql | schema/migration SQL | — |
| script.timeupdate.js | browser/worker JavaScript; verify loader | — |
Tables named in available CREATE TABLE statements: interactive_video_answers, interactive_video_questions, interactive_video_users_answers.
Apply installation/update behavior through the owning plugin; this reference is not a script for running historical migrations manually.
Visibility and implementation semantics must be checked in source. Nonempty string defaults are represented as . This is a symbol reference, not a stable public API promise.
| Function or method | Source |
|---|---|
getDescription() |
12 |
getName() |
19 |
getUUID() |
24 |
getPluginVersion() |
29 |
updateScript() |
34 |
getEmptyDataObject() |
46 |
getPluginMenu() |
69 |
getHeadCode() |
74 |
getFooterCode() |
86 |
getVideosManagerListButton() |
140 |
These symbols are grouped by source file; inspect the class declaration and visibility before calling them.
Declared classes: Interactive_video_answers.
| Named symbol | Source |
|---|---|
getSearchFieldsNames() |
9 |
getTableName() |
13 |
getAllInteractive_video_questions() |
17 |
getAllVideos() |
41 |
getAll($interactive_video_questions_id=0) |
66 |
setId($id) |
95 |
setInteractive_video_questions_id($interactive_video_questions_id) |
99 |
setAnswer($answer) |
103 |
setIs_correct($is_correct) |
108 |
setDescription($description) |
112 |
setVideos_id($videos_id) |
116 |
getId() |
121 |
getInteractive_video_questions_id() |
125 |
getAnswer() |
129 |
getIs_correct() |
133 |
getDescription() |
137 |
getVideos_id() |
141 |
canManageAnswer() |
145 |
save() |
156 |
delete() |
166 |
Declared classes: Interactive_video_questions.
| Named symbol | Source |
|---|---|
getSearchFieldsNames() |
9 |
getTableName() |
13 |
getAllVideos() |
17 |
setId($id) |
43 |
setQuestion($question) |
47 |
setDescription($description) |
52 |
setShow_in_seconds($show_in_seconds) |
56 |
setStatus($status) |
60 |
setVideos_id($videos_id) |
64 |
getId() |
69 |
getQuestion() |
73 |
getDescription() |
77 |
getShow_in_seconds() |
81 |
getStatus() |
85 |
getVideos_id() |
89 |
getAll($videos_id=0, $activeOnly=false) |
93 |
canManageVideo() |
111 |
save() |
122 |
delete() |
130 |
Declared classes: Interactive_video_users_answers.
| Named symbol | Source |
|---|---|
getSearchFieldsNames() |
9 |
getTableName() |
13 |
getAllUsers() |
17 |
getAllInteractive_video_answers() |
41 |
setId($id) |
67 |
setTimezone($timezone) |
71 |
setUsers_id($users_id) |
75 |
setInteractive_video_answers_id($interactive_video_answers_id) |
79 |
getId() |
84 |
getTimezone() |
88 |
getUsers_id() |
92 |
getInteractive_video_answers_id() |
96 |
- Check the installed/enabled version and the dependencies/settings above.
- Identify the actual failing page, request, callback or worker and correlate its timestamp with the AVideo log.
- Follow the linked method and caller. Check business-state changes and output artifacts as well as HTTP status.
- Reproduce the relevant workflow in a test environment. External provider, Encoder, live-server, storage, payment and authenticated flows require their real integrations.
Shared diagnostic workflow. This page is not a security audit or a claim of end-to-end validation.
Start
Install and update
- Install on Ubuntu 24.04 or 26.04
- Installation Setup Page
- Scheduler cron job (required)
- Set up email
- Use HTTPS
- Own Encoder
- Docker
- Update AVideo
- Backup
- Secure file permissions
- Server command-line tools
- Hidden configuration options
Videos
- Upload a video
- Local Encoder (on your computer)
- Bulk upload by FTP
- Import a channel
- Publish on YouTube and social media
- Privacy options
- Only for logged-in users
- Resolutions by user group
- Storage options
- Move and protect video files
- Video does not play
Users
Live
- Make a live stream
- Stream with OBS
- Own live server
- One live server, many sites
- Live server install errors
- Live does not play
Plugins
Problems
Other
- Translate your site
- Write a plugin (developers)
- Technical reference (developers and advanced administrators)
Old and retired guides