Repository navigation
Technical Plugin LiveLinks
Lists and displays externally hosted live streams.
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: AVideo Streamer repository.
- Reported version:
4.4. - Source revision:
7d48f2dfc0289236718a3f9fba7c5ffecff4a37f. - Entry class file: LiveLinks.php.
Confirm the installed plugin version independently of the Streamer version. Configuration defaults below are not a dump of this installation's saved settings.
| Plugin | Required by declaration | Source reason |
|---|---|---|
| Live | Required | Requires Live classes to reference live transmissions (direct require_once) |
| VideoTags | Optional | Optional video tags shown on live links |
Literal runtime plugin references: Live, TheaterButton. These calls do not mean every referenced plugin is mandatory.
| Override | Implementation |
|---|---|
getTags() |
LiveLinks.php:17 |
getHTMLMenuRight() |
LiveLinks.php:71 |
getLiveApplicationArray() |
LiveLinks.php:159 |
getHeadCode() |
LiveLinks.php:210 |
getUploadMenuButton() |
LiveLinks.php:290 |
getFooterCode() |
LiveLinks.php:424 |
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 |
|---|---|---|---|
onlyAdminCanAddLinks |
true |
— | source |
buttonTitle |
"Add a Live Link" |
— | source |
disableGifThumbs |
false |
— | source |
disableLiveThumbs |
false |
— | source |
doNotShowLiveLinksLabel |
false |
— | source |
disableProxy |
false |
— | source |
hideTopButton |
true |
Hide Top Button: This will hide the button on the top menu bar | source |
hideIsRebroadcastOption |
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 |
|---|---|---|
| LiveLinks.php | plugin entry class |
catName, channelName, hash, limitOnceToOne, modified, rowCount, tags_id
|
| Objects/LiveLinksTable.php | class/helper implementation | — |
| getImage.php | PHP page/include/worker; inspect caller |
format, id, live_servers_id
|
| getUploadMenuButton.php | PHP page/include/worker; inspect caller | — |
| index.php | PHP page/include/worker; inspect caller | — |
| install/install.sql | schema/migration SQL | — |
| install/updateV2.0.sql | schema/migration SQL | — |
| install/updateV3.0.sql | schema/migration SQL | — |
| install/updateV4.0.sql | schema/migration SQL | — |
| install/updateV4.1.sql | schema/migration SQL | — |
| install/updateV4.2.sql | schema/migration SQL | — |
| install/updateV4.3.sql | schema/migration SQL | — |
| install/updateV4.4.sql | schema/migration SQL | — |
| play.php | PHP page/include/worker; inspect caller | url |
| proxy.php | PHP page/include/worker; inspect caller | livelink |
| view/Live.php | PHP page/include/worker; inspect caller |
embed, link
|
| view/addLiveLink.php | PHP page/include/worker; inspect caller |
categories_id, description, end_date, image, isRebroadcast, link, linkId, start_date, status, title, type, userGroups, users_id
|
| view/delete_liveLink.json.php | JSON entry point; inspect caller and guard | id |
| view/footer.php | PHP page/include/worker; inspect caller | — |
| view/liveLinks.json.php | JSON entry point; inspect caller and guard | — |
| view/liveVideo.php | PHP page/include/worker; inspect caller |
embed, isEmbedded
|
| view/menuRight.php | PHP page/include/worker; inspect caller | — |
| view/panel.php | PHP page/include/worker; inspect caller | — |
Tables named in available CREATE TABLE statements: LiveLinks, livelinks_has_users_groups.
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 |
|---|---|
getPluginDependencies() |
10 |
getTags() |
17 |
getDescription() |
25 |
getName() |
33 |
getEmptyDataObject() |
37 |
getUUID() |
52 |
getPluginVersion() |
56 |
canAddLinks() |
60 |
getHTMLMenuRight() |
71 |
getAllActive($future = false, $activeOnly = true, $notStarted = false, $users_id=0, $categories_id=0) |
84 |
getImageDafaultOrDynamic($liveLink_id) |
133 |
getImage($id) |
145 |
getImageGif($id) |
150 |
getLiveApplicationArray() |
159 |
getHeadCode() |
210 |
getLinkToLiveFromId($id, $embed = false) |
230 |
getLink($id, $embed = false) |
234 |
getSourceLink($id) |
245 |
getPosterToLiveFromId($id, $format = '<string>') |
266 |
isLiveThumbsDisabled() |
271 |
getPosterThumbsImage($users_id, $live_servers_id) |
279 |
getUploadMenuButton() |
290 |
getAllVideos($status = "", $showOnlyLoggedUserVideos = false, $activeUsersOnly = true) |
300 |
notifySocketToRemoveLiveLinks($liveLinks_id) |
414 |
getFooterCode() |
424 |
userCanWatch($users_id, $livelinks_id) |
432 |
getDinamicVideoLink($videoLink, $title, $owner_users_id) |
458 |
decodeDinamicVideoLink() |
470 |
getMediaSession($id) |
488 |
getImagesPaths($livelinks_id) |
516 |
isLiveLinkDateValid($livelinks_id) |
536 |
These symbols are grouped by source file; inspect the class declaration and visibility before calling them.
Declared classes: LiveLinksTable.
| Named symbol | Source |
|---|---|
getSearchFieldsNames() |
11 |
getTableName() |
15 |
save() |
19 |
getId() |
43 |
getTitle() |
47 |
getDescription() |
51 |
getLink() |
55 |
getStart_date() |
59 |
getEnd_date() |
63 |
getType() |
67 |
getStatus() |
71 |
getUsers_id() |
75 |
setTitle($title) |
79 |
setDescription($description) |
84 |
setLink($link) |
88 |
setStart_date($start_date) |
92 |
setEnd_date($end_date) |
97 |
setType($type) |
102 |
setStatus($status) |
106 |
setUsers_id($users_id) |
110 |
getCategories_id() |
114 |
setCategories_id($categories_id) |
118 |
getIsRebroadcast() |
122 |
setIsRebroadcast($isRebroadcast): void |
126 |
getAll($users_id = 0) |
130 |
userGroupsMatch($livelinks_id, $users_id=0) |
163 |
delete() |
172 |
deleteAllUserGorups() |
197 |
addUserGorups($usergroups_ids) |
211 |
getUserGorups($livelinks_id) |
235 |
getUserGorupsIds($livelinks_id) |
255 |
getTimezone() |
264 |
setTimezone($timezone) |
268 |
getStart_php_time() |
272 |
setStart_php_time($start_php_time) |
276 |
getEnd_php_time() |
280 |
setEnd_php_time($end_php_time) |
284 |
updatePhpTimestampById($id) |
288 |
| Named symbol | Source |
|---|---|
proxyDNSPinnedFetch($url, $pinnedIP, $maxRedirects = 5) |
53 |
- 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