Skip to content

Technical Plugin Blackblaze_B2

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

Technical: Blackblaze_B2 plugin

Transfers media to Backblaze B2 and generates public or authorized object URLs.

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: 4.7.
  • Source revision: 3662f252ae8c6972b635baf4e48720a60d07730f.
  • Entry class file: Blackblaze_B2.php.

Confirm the installed plugin version independently of the Streamer version. Configuration defaults below are not a dump of this installation's saved settings.

Behavior and operational checks

Public and private URL paths differ. Verify the selected object key and authorization path together. HLS delivery needs playlists, segments and keys, not just one master object.

Dependencies

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

Hook integration

Override Implementation
getTags() Blackblaze_B2.php:10
xsendfilePreVideoPlay() Blackblaze_B2.php:94
getPluginMenu() Blackblaze_B2.php:459

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
bucket_name "avideo" — source
keyId Private setting; value omitted keyId (d59868ca34a3): ApplicationKey is not supported yet, please use MasterKey only source
applicationKey Private setting; value omitted applicationKey (002d0102f4a5103d6953aef5a32743934ad017b400): ApplicationKey is not supported yet, please use MasterKey only source
CDN_Link "" — source
Endpoint "s3.us-west-000.backblazeb2.com" — source
useDirectLink true — source
presignedRequestSecondsTimeout 43200 — source
usePublicBucket false — 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
AVideoB2Client.php class/helper implementation —
Blackblaze_B2.php plugin entry class file
clearCache.php PHP page/include/worker; inspect caller —
downloadAll.php PHP page/include/worker; inspect caller —
test.php PHP page/include/worker; inspect caller —
uploadAll.php PHP page/include/worker; inspect caller —

Data and migrations

No CREATE TABLE names were extracted from available plugin SQL. The plugin can still use core tables, PHP-created schema or another component's data. 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
getTags() 10
getDescription() 17
getPluginVersion() 24
getName() 29
getUUID() 34
getEmptyDataObject() 39
getClient($try = 0) 61
xsendfilePreVideoPlay() 94
getAddress($filename) 117
getURL($filename, $ignoreFileExists = false) 132
getURLPrivate($filename, $ignoreFileExists = false) 143
getURLAndToken($filename) 164
getURLPublic($filename) 225
getEndpoint() 238
removeFiles($filename) 249
removeHLSFiles($filename) 277
removeFilePath($fileName) 303
move_uploaded_file($tmp_name, $filename) 330
move_uploaded_directory($dir) 341
copy_to_B2($tmp_name, $filename, $try = 0) 361
download_from_B2_to_local($filename) 425
upload_from_local_to_B2($filename) 448
getPluginMenu() 459
isATest() 466
getFilesize($filename) 476
B2Usage() 500

Supporting PHP declarations

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

AVideoB2Client.php

Declared classes: AVideoB2Client.

Named symbol Source
get_download_authorization(array $options) 11
getDownloadUrl() 74
getBucketTypeFromId($id) 79
setAccountId($accountId) 90
getFilesize($bucket_name, $filename) 101
listAllFiles($bucket_name) 118
deleteFilesWithPattern($bucket_name, $pattern) 127
getTotalDiskSpaceUsage($bucket_name) 153

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