Metadata-Version: 2.4
Name: asmr-tg-backup-ext-niconico-origin
Version: 0.2.0
Summary: Niconico live-search source provider for asmr-tg-backup.
Author: dreaife
License-Expression: Apache-2.0
Project-URL: Repository, https://github.com/dreaifekks/asmr-tg-backup-ext-niconico-origin.git
Project-URL: Issues, https://github.com/dreaifekks/asmr-tg-backup-ext-niconico-origin/issues
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: asmr-tg-backup<0.7,>=0.6
Requires-Dist: websockets<17,>=13
Dynamic: license-file

# asmr-tg-backup Niconico origin extension

An optional source-provider extension for
[`asmr-tg-backup`](https://github.com/dreaifekks/asmr-tg-backup). It searches
Niconico's public live page for a keyword and emits currently live programs to
the core scheduler. The core remains responsible for probing, downloading,
deduplication, retry state, and Telegram delivery.

## Install and enable

```bash
asmr-tg-backup extensions enable niconico-origin
```

The trusted core command installs the extension into the current pipx/virtual
environment, enables it, validates the composed runtime, and safely restarts a
matching managed service. The extension has no required private configuration;
the command prints an optional Niconico ASMR live-search source suggestion but
does not silently add a source that could start recording.

For a container or another build-time-managed environment, install
`asmr-tg-backup-ext-niconico-origin==0.2.0` in the image first. The following
manual configuration remains available for advanced deployments.

Add the extension ID to the core config:

```toml
[extensions]
enabled = ["dreaife.niconico-origin"]

[extensions."dreaife.niconico-origin"]
required = true
```

Then add an origin to `sources.toml`:

```toml
[[origins]]
id = "niconico-asmr-live"
provider = "niconico"
kind = "live_search"
name = "Niconico ASMR"
external_id = "ASMR"
enabled = true
bootstrap = "all"
max_results = 20
```

Run `asmr-tg-backup extensions doctor` and
`asmr-tg-backup sources apply` before restarting the service.

The extension uses Niconico's public search result page. Individual programs
may still require login, age confirmation, a paid entitlement, or cookies.
Configure those yt-dlp arguments in the core's per-provider `niconico`
download profile; do not put cookies or credentials in this repository.

## Compatibility

- Extension API level: 1
- Core: `asmr-tg-backup >=0.6,<0.7`
- Python: 3.11 or newer

The package installs yt-dlp's WebSocket support required by the Niconico live
extractor.

Licensed under Apache-2.0.
