iptv/README.md

81 lines
3.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# Список самообновляемых плейлистов для IPTV
> **[Перейти на актуальную сраницу](https://iptv.axenov.dev/)**
Здесь собраны ссылки на IPTV-плейлисты, которые находятся в открытом доступе.
Они бесплатны для использования. Список проверяется и обновляется мной вручную.
Поддержкой этих плейлистов занимаются сервисы и ресурсы, указанные как источник.
Вопросы работоспособности плейлистов адресуйте тем, кто несёт за них ответственность.
Чтобы подключить плейлист, нужно в настройках IPTV-плеера указать ссылку в следующем формате:
```
iptv.axenov.dev?ID
```
где `ID` - один из идентификаторов, указанных в `playlists.ini` в квадратных скобках.
## Как добавить плейлист в этот список?
1) Склонировать себе репозиторий, создать ветку
2) Внести изменения в файл [`playlists.ini`](playlists.ini) как описано ниже
3) Сделать коммит, отправить изменения в свой репозиторий и создать merge-request
Либо провернуть всё то же самое через браузер.
## API
Можно получать состояние плейлистов из этого сборника при помощи метода:
```
GET https://iptv.axenov.dev/getinfo=<ID>
```
где `ID` - один из идентификаторов, указанных в `playlists.ini` в квадратных скобках.
Ответом может быть JSON следующего содержания:
```json
{
"is_online": true,
"count": 123,
"channels": [ ... ]
}
```
где:
* `is_online` - `bool`, доступность плейлиста
* `count` - `uint|char[1]`, количество каналов >=0 либо `'-'` при `is_online === false`
* `channels` - `string[]`, массив строк с названиями каналов, может быть пустым.
Также ответ может быть пустым (вообще пустым, даже не `null`).
Такое я встречал с одним конкретном плейлисте с поехавшей кодировкой.
Лень разбираться, пофиг.
## Формат `playlists.ini`
```ini
; В квадратных скобках - ID плейлиста в рамках этого
; конфига (обязателен). Для удобства ввода с пульта,
; для ID рекомендуется число или короткая строка без
; пробелов и др. спецсимволов.
[p1]
; Название плейлиста (необязательно)
name='webarmen.com 18+'
; Краткое описание из источника или от себя (необязательно)
desc=''
; Прямая ссылка на m3u/m3u8 плейлист (обязательно)
pls='https://webarmen.com/my/iptv/auto.xxx.m3u'
; Ссылка на источник, откуда взят плейлист (необязательно)
src='https://webarmen.com/my/iptv/xxx.php'
[p2]
; ID другого плейлиста в этом списке, на который
; произойдёт редирект (нужно для мягкой смены ID).
; Необязателен, но если указан, то приоритетнее, чем pls.
redirect=p1
```