Уточнения по командам и аргументам iptvc
This commit is contained in:
11
mkdocs.yml
11
mkdocs.yml
@@ -116,13 +116,14 @@ nav:
|
|||||||
- common/players.md
|
- common/players.md
|
||||||
- 'IPTV Checker (iptvc)':
|
- 'IPTV Checker (iptvc)':
|
||||||
- iptvc/index.md
|
- iptvc/index.md
|
||||||
|
- iptvc/install.md
|
||||||
- iptvc/quickstart.md
|
- iptvc/quickstart.md
|
||||||
- iptvc/env.md
|
- iptvc/env.md
|
||||||
- 'Работа в терминале':
|
- 'Доступные команды':
|
||||||
- iptvc/cli/index.md
|
- iptvc/commands/index.md
|
||||||
- iptvc/cli/help.md
|
- iptvc/commands/help.md
|
||||||
- iptvc/cli/check.md
|
- iptvc/commands/check.md
|
||||||
- iptvc/cli/version.md
|
- iptvc/commands/version.md
|
||||||
- 'Для разработчиков':
|
- 'Для разработчиков':
|
||||||
- dev/index.md
|
- dev/index.md
|
||||||
- dev/local-dev.md
|
- dev/local-dev.md
|
||||||
|
|||||||
@@ -1,9 +0,0 @@
|
|||||||
---
|
|
||||||
tags: ["iptvc"]
|
|
||||||
---
|
|
||||||
|
|
||||||
# Команда `check`
|
|
||||||
|
|
||||||
!!! info "TODO"
|
|
||||||
Скоро здесь появится полезная информация.
|
|
||||||
Следи за обновлениями в канале [@iptv_aggregator](https://t.me/iptv_aggregator) или в [репозитории](https://git.axenov.dev/IPTV/docs).
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
---
|
|
||||||
icon: octicons/terminal-24
|
|
||||||
hide:
|
|
||||||
- toc
|
|
||||||
---
|
|
||||||
|
|
||||||
# :octicons-terminal-24: Работа в терминале
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
---
|
|
||||||
tags: ["iptvc"]
|
|
||||||
---
|
|
||||||
|
|
||||||
# Команда `version`
|
|
||||||
|
|
||||||
!!! info "TODO"
|
|
||||||
Скоро здесь появится полезная информация.
|
|
||||||
Следи за обновлениями в канале [@iptv_aggregator](https://t.me/iptv_aggregator) или в [репозитории](https://git.axenov.dev/IPTV/docs).
|
|
||||||
151
src/iptvc/commands/check.md
Normal file
151
src/iptvc/commands/check.md
Normal file
@@ -0,0 +1,151 @@
|
|||||||
|
---
|
||||||
|
tags: ["iptvc"]
|
||||||
|
---
|
||||||
|
|
||||||
|
# Команда `check`
|
||||||
|
|
||||||
|
Команда поддерживает множество аргументов для разных целей.
|
||||||
|
|
||||||
|
Они могут дополнять друг друга.
|
||||||
|
|
||||||
|
Порядок аргументов не имеет значения.
|
||||||
|
|
||||||
|
<a id="ini"></a>
|
||||||
|
## `-i`, `--ini`
|
||||||
|
|
||||||
|
Указывает путь к локальному [ini-файлу](../../formats/playlists.md) с описанием плейлистов.
|
||||||
|
|
||||||
|
Можно указать только однажды.
|
||||||
|
|
||||||
|
Значение по умолчанию: `./playlists.ini`
|
||||||
|
|
||||||
|
Если файл не найден, проверка плейлистов будет доступна только по ссылкам ([`--url`](#url)) или из локальных файлов ([`--file`](#file)).
|
||||||
|
|
||||||
|
Пример:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
iptvc check -i ~/my.ini
|
||||||
|
```
|
||||||
|
|
||||||
|
<a id="tags"></a>
|
||||||
|
## `-t`, `--tags`
|
||||||
|
|
||||||
|
Указывает путь к локальному [json-файлу](../../formats/channels.md) с описанием тегов каналов.
|
||||||
|
|
||||||
|
Можно указать только однажды.
|
||||||
|
|
||||||
|
Значение по умолчанию: `./channels.json`
|
||||||
|
|
||||||
|
Если файл не найден, то будет выведено предупреждение о том, что каналы не будут помечены тегами.
|
||||||
|
|
||||||
|
Пример:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
iptvc check -t ~/tags.json
|
||||||
|
```
|
||||||
|
|
||||||
|
<a id="file"></a>
|
||||||
|
## `-f`, `--file`
|
||||||
|
|
||||||
|
Указывает путь к локальному файлу плейлиста `*.m3u`/`*.m3u8`.
|
||||||
|
|
||||||
|
Можно указать несколько разных.
|
||||||
|
|
||||||
|
Пример:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
iptvc check -f playlist.m3u
|
||||||
|
iptvc check -f playlist1.m3u --file playlist2.m3u8
|
||||||
|
iptvc check --file /path/to/playlist.m3u
|
||||||
|
```
|
||||||
|
|
||||||
|
<a id="url"></a>
|
||||||
|
## `-u`, `--url`
|
||||||
|
|
||||||
|
Указывает URL удалённого плейлиста (поддерживаются протоколы http/https).
|
||||||
|
|
||||||
|
Можно указать несколько разных.
|
||||||
|
|
||||||
|
Пример:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
iptvc check -u http://example.com/playlist.m3u
|
||||||
|
iptvc check -u https://site.com/playlist.m3u8 --url http://other.com/list.m3u
|
||||||
|
```
|
||||||
|
|
||||||
|
<a id="code"></a>
|
||||||
|
## `-c`, `--code`
|
||||||
|
|
||||||
|
Указывает код плейлиста из файла [playlists.ini](../../formats/playlists.md).
|
||||||
|
|
||||||
|
Можно указать несколько разных.
|
||||||
|
|
||||||
|
!!! warning "Работает только вместе с [`--ini`](#ini)."
|
||||||
|
|
||||||
|
Если не указан ни разу, то будут проверены все плейлисты, которые указаны в ini-файле.
|
||||||
|
|
||||||
|
Если используется кеширование, то проверенные плейлисты (результаты проверки которых ещё находятся в кеше) проверяться не будут.
|
||||||
|
|
||||||
|
Пример:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
iptvc check -c RU_BASIC --code MOVIE_PREMIUM
|
||||||
|
```
|
||||||
|
|
||||||
|
<a id="random"></a>
|
||||||
|
## `-r`, `--random`
|
||||||
|
|
||||||
|
Указывает максимальное количество случайных плейлистов из ini-файла для проверки.
|
||||||
|
|
||||||
|
Можно указать только однажды.
|
||||||
|
|
||||||
|
!!! warning "Работает только вместе с [`--ini`](#ini)."
|
||||||
|
|
||||||
|
Если не указан ни разу, то будут проверены все плейлисты, которые указаны в ini-файле.
|
||||||
|
|
||||||
|
Если используется кеширование, то проверенные плейлисты (результаты проверки которых ещё находятся в кеше) проверяться не будут.
|
||||||
|
|
||||||
|
Пример:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
iptvc check -i ~/my.ini -r 10
|
||||||
|
```
|
||||||
|
|
||||||
|
<a id="json"></a>
|
||||||
|
## `-j`, `--json`
|
||||||
|
|
||||||
|
Если указано, то подробные результаты проверки будут выводиться в формате JSON.
|
||||||
|
|
||||||
|
Пример:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
iptvc check -f playlist.m3u --json
|
||||||
|
```
|
||||||
|
|
||||||
|
<a id="quiet"></a>
|
||||||
|
## `-q`, `--quiet`
|
||||||
|
|
||||||
|
Подавляет вывод всех логов.
|
||||||
|
|
||||||
|
!!! info "Не влияет на [`--json`](#json), но перекрывает [`--verbose`](#verbose)."
|
||||||
|
|
||||||
|
Пример:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
iptvc check -i ~/my.ini -r 10 -q --json
|
||||||
|
```
|
||||||
|
|
||||||
|
<a id="verbose"></a>
|
||||||
|
## `-v`, `--verbose`
|
||||||
|
|
||||||
|
Включает подробное логирование.
|
||||||
|
|
||||||
|
Пример:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
iptvc check --random 10 --verbose
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
6
src/iptvc/commands/index.md
Normal file
6
src/iptvc/commands/index.md
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
---
|
||||||
|
icon: octicons/terminal-24
|
||||||
|
hide: [toc]
|
||||||
|
---
|
||||||
|
|
||||||
|
# :octicons-terminal-24: Доступные команды
|
||||||
17
src/iptvc/commands/version.md
Normal file
17
src/iptvc/commands/version.md
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
---
|
||||||
|
tags: ["iptvc"]
|
||||||
|
---
|
||||||
|
|
||||||
|
# Команда `version`
|
||||||
|
|
||||||
|
Выводит версию программы:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
iptvc version
|
||||||
|
```
|
||||||
|
|
||||||
|
Пример результата:
|
||||||
|
|
||||||
|
```
|
||||||
|
iptvc v1.0.6
|
||||||
|
```
|
||||||
87
src/iptvc/install.md
Normal file
87
src/iptvc/install.md
Normal file
@@ -0,0 +1,87 @@
|
|||||||
|
---
|
||||||
|
icon: material/download
|
||||||
|
tags: ["iptvc"]
|
||||||
|
---
|
||||||
|
|
||||||
|
# Установка и запуск
|
||||||
|
|
||||||
|
## Запуск готовой программы
|
||||||
|
|
||||||
|
Достаточно скачать и распаковать архив с подходящим исполняемым файлом [со страницы последнего релиза](https://git.axenov.dev/IPTV/iptvc/releases/latest) в любую удобную директорию:
|
||||||
|
|
||||||
|
| ОС | Скачать для `amd64` | Скачать для `arm64` |
|
||||||
|
| ------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
|
||||||
|
| Linux | [linux_amd64.zip](https://git.axenov.dev/IPTV/iptvc/releases/download/latest/linux_amd64.zip) | [linux_arm64.zip](https://git.axenov.dev/IPTV/iptvc/releases/download/latest/linux_arm64.zip) |
|
||||||
|
| MacOS | [darwin_amd64.zip](https://git.axenov.dev/IPTV/iptvc/releases/download/latest/darwin_amd64.zip) | [darwin_arm64.zip](https://git.axenov.dev/IPTV/iptvc/releases/download/latest/darwin_arm64.zip) |
|
||||||
|
| Windows | [windows_amd64.zip](https://git.axenov.dev/IPTV/iptvc/releases/download/latest/windows_amd64.zip) | [windows_arm64.zip](https://git.axenov.dev/IPTV/iptvc/releases/download/latest/windows_arm64.zip) |
|
||||||
|
|
||||||
|
## Запуск релизного образа
|
||||||
|
|
||||||
|
Релизные docker-образы строятся для платформы `linux` и архитектуры `amd64`.
|
||||||
|
|
||||||
|
Найти их можно здесь: <https://git.axenov.dev/IPTV/-/packages/container/iptvc>
|
||||||
|
|
||||||
|
Тег `latest` всегда соответствует последней версии, он подразумевается по умолчанию:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
docker run --pull always git.axenov.dev/iptv/iptvc КОМАНДА [АРГУМЕНТЫ]
|
||||||
|
```
|
||||||
|
|
||||||
|
Для использования другой версии следует явно указать её:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
docker run --pull always git.axenov.dev/iptv/iptvc:v1.0.6 КОМАНДА [АРГУМЕНТЫ]
|
||||||
|
```
|
||||||
|
|
||||||
|
## Построение собственного образа
|
||||||
|
|
||||||
|
```shell
|
||||||
|
./build-docker-image.sh [<версия>]
|
||||||
|
```
|
||||||
|
|
||||||
|
где `<версия>` — необязательный тег версии в формате `vX.Y.Z`.
|
||||||
|
Если не указан, то будет взят последний.
|
||||||
|
|
||||||
|
Целевая платформа и архитектура меняется с помощью переменных `GOOS` и `GOARCH`:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
GOOS=darwin GOARCH=arm64 ./build-docker-image.sh [<версия>]
|
||||||
|
```
|
||||||
|
|
||||||
|
Запуск:
|
||||||
|
|
||||||
|
```
|
||||||
|
docker run --pull always iptvc:[latest|<версия>] КОМАНДА [АРГУМЕНТЫ]
|
||||||
|
```
|
||||||
|
|
||||||
|
## Использование образа в Docker compose
|
||||||
|
|
||||||
|
```yml
|
||||||
|
services:
|
||||||
|
#...
|
||||||
|
checker:
|
||||||
|
container_name: iptv-checker
|
||||||
|
image: git.axenov.dev/iptv/iptvc:latest
|
||||||
|
command: [check]
|
||||||
|
#...
|
||||||
|
```
|
||||||
|
|
||||||
|
## Компиляция из исходного кода
|
||||||
|
|
||||||
|
Для компиляции потребуется golang v1.23.6 и выше.
|
||||||
|
На версиях ниже не проверялось.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://git.axenov.dev/IPTV/iptvc.git
|
||||||
|
cd iptvc
|
||||||
|
make linux
|
||||||
|
# или make help для получения помощи по компиляции
|
||||||
|
```
|
||||||
|
|
||||||
|
Поддерживается передача переменной `GOARCH`:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
make darwin GOARCH=arm64
|
||||||
|
```
|
||||||
|
|
||||||
|
Скомпилированные файлы находятся в директории `bin/`.
|
||||||
Reference in New Issue
Block a user