Skip to content

Technical Plugin InteractiveVideo

Daniel Neto edited this page Oct 29, 2026 · 1 revision

Technical: InteractiveVideo plugin

Adds interactive-video editing and player/page integration.

Audience: developers, advanced administrators and AI-assisted diagnosis. Plugin catalog.

Source baseline

  • 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.

Dependencies

No literal dependency declaration was extracted. This does not prove the plugin is standalone.

Hook integration

Override Implementation
updateScript() InteractiveVideo.php:34
getPluginMenu() InteractiveVideo.php:69
getHeadCode() InteractiveVideo.php:74
getFooterCode() InteractiveVideo.php:86
getVideosManagerListButton() InteractiveVideo.php:140

Configuration assignments

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

Files and request surface

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 —

Data and migrations

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.

Main-file named symbols

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

Supporting PHP declarations

These symbols are grouped by source file; inspect the class declaration and visibility before calling them.

Objects/Interactive_video_answers.php

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

Objects/Interactive_video_questions.php

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

Objects/Interactive_video_users_answers.php

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

Diagnostics and validation

  1. Check the installed/enabled version and the dependencies/settings above.
  2. Identify the actual failing page, request, callback or worker and correlate its timestamp with the AVideo log.
  3. Follow the linked method and caller. Check business-state changes and output artifacts as well as HTTP status.
  4. 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.

Clone this wiki locally