Metadata-Version: 2.4
Name: plone_skynetaccessibility_videosubtitle
Version: 1.1.1
Summary: Publish Captioned Video Content with AI-Powered Subtitles
Home-page: https://www.skynettechnologies.com
Author: Skynet Technologies USA LLC
Author-email: hello@skynettechnologies.com
License: LGPL-3
Keywords: Python Plone Accessibility Video Subtitle Skynet
Classifier: Framework :: Plone
Classifier: Framework :: Plone :: 6.0
Classifier: Framework :: Plone :: 6.1
Classifier: Framework :: Plone :: 6.2
Classifier: Framework :: Plone :: Addon
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)
Description-Content-Type: text/markdown
Requires-Dist: setuptools
Requires-Dist: Plone
Requires-Dist: plone.api
Requires-Dist: plone.app.registry
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
Dynamic: license
Dynamic: requires-dist
Dynamic: summary

# SkynetAccessibility Video Subtitle — Plone

## Publish Captioned Video Content with AI-Powered Subtitles

[SkynetAccessibility Video Subtitle](https://www.skynettechnologies.com/video-accessibility) is an AI-powered video accessibility plugin that automatically generates synchronized subtitles for website videos using advanced speech recognition. This package is the **Plone** integration — an installable add-on that adds the registration flow, analytics dashboard, and front-end widget injection to any Plone site.

Improve the accessibility of website videos by automatically generating synchronized subtitles using AI-powered speech recognition, without manually creating captions. Supports accessibility initiatives aligned with WCAG 2.1, 2.2, ADA, Section 508, and EAA EN 301 549, where applicable.

### Features

- Quick subtitle processing
- Compatible with YouTube, Vimeo, and self-hosted video platforms
- Built-in analytics dashboard (usage, remaining quota, per-language breakdown, video library) at `/@@skynet-video-subtitle-dashboard`
- Automatic front-end widget script injection via a portal footer viewlet — no manual `<script>` tag editing required
- One-time domain registration handled for you, visible in the browser's Network tab
- Simple installation and configuration
- Support for existing and newly published videos
- Supporting over 50+ multi-languages
- Unlimited video subtitle processing throughout the selected plan

### Ideal For

Blog videos, news videos, tutorials, landing page videos, announcements, interviews, webinars, and embedded media on any Plone-powered site.

### Pricing and Plans

| **Total Video Playback Time** | **Price / Month** |
|--------------------------------|--------------------|
| Up to 10 Minutes               | $25.00             |
| Up to 25 Minutes               | $39.00             |
| Up to 100 Minutes              | $99.00             |
| Up to 200 Minutes              | $139.00            |

**Note:** Unlimited number of video subtitle processing is available within the selected plan's total playback time. Manage or upgrade your plan any time from the analytics dashboard.

## Installation

### 1. Install the package

```sh
pip install plone_skynetaccessibility_videosubtitle
```

### 2. Activate the add-on

Start Plone, log in as a Manager, and go to:

```
Site Setup → Add-ons
```

Find **SkynetAccessibility Video Subtitle** in the list and click **Install**.

### 3. Configure the widget

Go to:

```
Site Setup → SkynetAccessibility Video Subtitle Settings
```

and enable the widget.

### 4. View the dashboard

The video library, scanning, remediation, and plans dashboard is available (to Managers) at:

```
<site-url>/@@skynet-video-subtitle-dashboard
```

### CORS Policy Configuration

To avoid CORS policy issues, ensure the following URLs are allowed in your website. These URLs should be added to your CORS configuration or trusted domains list.

| **Domain**                         | **Description**                              | **Usage**                        |
|------------------------------------|----------------------------------------------|----------------------------------|
| `https://*.skynettechnologies.com` | Skynet Technologies (Global Domain)          | API access and resources         |
| `https://*.skynettechnologies.us`  | Skynet Technologies (US Domain)              | API access and resources         |

#### Instructions

1. Update your server's CORS configuration to include these URLs.
2. Ensure wildcard subdomains (*) are supported where necessary.
3. Verify the application functionality by testing requests to these domains.
4. If issues persist, consult the documentation for CORS configuration guidance.

### Screenshots

![SkynetAccessibility_Scanner_Image_1](https://www.skynettechnologies.com/sites/default/files/SkynetAccessibilityVideoSubtitle/SkynetAccessibility_Video_Subtitle_Image_1.jpg)  
![SkynetAccessibility_Scanner_Image_2](https://www.skynettechnologies.com/sites/default/files/SkynetAccessibilityVideoSubtitle/SkynetAccessibility_Video_Subtitle_Image_2.jpg)
![SkynetAccessibility_Scanner_Image_3](https://www.skynettechnologies.com/sites/default/files/SkynetAccessibilityVideoSubtitle/SkynetAccessibility_Video_Subtitle_Image_3.jpg)

### Support Options

**Submit a Support Request**
Please visit our [support page](https://www.skynettechnologies.com/report-accessibility-problem) and fill out the form. Our team will get back to you as soon as possible.

**Send Us an Email**
Alternatively, you can send an email to our support team: [hello@skynettechnologies.com](mailto:hello@skynettechnologies.com)

### Accessibility Partnership Opportunities

#### **[Accessibility Agency Partnership](https://www.skynettechnologies.com/agency-partners)**

Partner with us as an agency to provide comprehensive SANITY ADA, EAA, WCAG accessibility solutions to clients. Get access to exclusive resources, training, and support to implement and manage accessibility features effectively.

#### **[Accessibility Affiliate Partnership](https://www.skynettechnologies.com/affiliate-partner)**

Sign up for our affiliate program and earn commissions by promoting accessibility SANITY plugin. Share our widget with your network and help businesses improve their website accessibility while generating revenue.

For more details, explore **[Accessibility Partnership Opportunities Page](https://www.skynettechnologies.com/partner-program)**.

#### Credits

This addon is developed and maintained by [website accessibility company](https://www.skynettechnologies.com/) - Skynet Technologies USA LLC

#### Current Maintainers

- [Skynet Technologies USA LLC](https://github.com/skynettechnologies)

Changelog
=========

1.1.1 (unreleased)
-------------------

- Verified against Plone 6.2.1 (current release): install/uninstall,
  the dashboard view, Manager-only access control, and the widget
  enable/disable toggle all pass a full integration test run.
- Removed unused ``z3c.form`` and ``requests`` dependencies - leftover
  from the Phase 1/server-side build; nothing in the Phase 2 code
  imports either.
- Removed the unused ``browser/static/icon.png`` (the control panel
  configlet has no ``icon_expr`` and never referenced it) and the
  empty ``tests/`` package and ``testing.py`` test-layer helper (no
  tests shipped with the add-on).
- Fixed stale docstring/comment references to a ``controlpanel.py``
  file that no longer exists (the manual settings form was removed in
  an earlier Phase 2 change; settings are now registry-only).
- Removed a ``MANIFEST.in`` reference to a ``LICENSE.rst`` file that
  isn't included in this package.
- Updated classifiers to Plone 6.0-6.2 / Python 3.10-3.13.

1.1.0 (unreleased)
-------------------

- Phase 2: replaced the dashboard, front-end assets and settings with
  a port of the plone Phase 2 build. The dashboard is now the full
  video library / scan / remediation / plans UI (api.js + app.js +
  video-remediation.css) instead of the earlier analytics-only page,
  and registration ("get-start") now happens client-side, at most
  once per page load, instead of via a server-side
  ``plone.registry``-persisted registration record. Control panel
  settings are now Enable Widget, Site Origin, Platform and Widget
  Script URL (``api_base`` and ``manage_by_platform`` were dropped).
- Added the domain restriction from the plone Phase 2 build:
  ``api.js`` now refuses to treat ``localhost``, ``127.0.0.1``,
  ``0.0.0.0``, ``::1``, and private/loopback IPv4 ranges
  (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) as a valid site.
  On such a host the dashboard shows a "Domain Not Valid" message
  in place of the video list instead of registering the domain or
  calling the video/plan endpoints.

1.0.0 (unreleased)
-------------------

- Initial Plone port of odoo_skynetaccessibility_video_subtitle:
  proper Site Setup control panel settings page (enable/disable,
  widget script URL, API base, platform, manage-by-platform), the
  registration & analytics dashboard at
  ``@@skynet-video-subtitle-dashboard``, and a viewlet that injects
  the front-end widget script on every page when enabled.
