From ced2c32aa180d5ea59f207fbc8dd8e178f45b854 Mon Sep 17 00:00:00 2001 From: AnthonyAxenov Date: Tue, 8 Feb 2022 09:13:35 +0800 Subject: [PATCH] =?UTF-8?q?=D0=A3=D0=BB=D1=83=D1=87=D1=88=D0=B5=D0=BD=20?= =?UTF-8?q?=D0=BF=D0=B0=D1=80=D1=81=D0=B8=D0=BD=D0=B3=20=D0=BF=D0=BB=D0=B5?= =?UTF-8?q?=D0=B9=D0=BB=D0=B8=D1=81=D1=82=D0=BE=D0=B2,=20=D1=82=D0=B5?= =?UTF-8?q?=D0=BA=D1=81=D1=82=D0=BE=D0=B2=D0=BA=D0=B8,=20=D0=BC=D0=B5?= =?UTF-8?q?=D0=BB=D0=BA=D0=BE=D1=84=D0=B8=D0=BA=D1=81=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- index.php | 51 +++++++++++++++++++++++++++++++++++---------------- 1 file changed, 35 insertions(+), 16 deletions(-) diff --git a/index.php b/index.php index 1f48018..ad65218 100644 --- a/index.php +++ b/index.php @@ -24,13 +24,15 @@ if (!empty($_GET['getinfo'])) { curl_close($ch); unset($ch); $matches = []; - preg_match_all("/^#EXTINF:-?\d[\s]?,[\s]?(.*$)/m", $content, $matches); + preg_match_all("/^#EXTINF:-?[\d](?:(\s?url-tvg=\".*\")?(\stvg-logo=\".*\")?(\stvg-name=\".*\")?(\sgroup-title=\".*\")?)\s?,\s?(.*)/m", + $content, $matches); unset($content); - $channels = $matches[1]; + $channels = $matches[5]; unset($matches); $is_online = is_array($headers) && !empty($headers) && strpos($headers[0], ' 200') !== false; unset($headers); array_walk($channels, function (&$str) { $str = trim($str); }); + header("Content-Type: text/plain; charset=utf-8"); die(json_encode([ 'is_online' => $is_online, 'count' => $is_online ? count($channels) : '-', @@ -72,7 +74,7 @@ if (array_intersect(array_keys($_GET), array_keys($ini))) {
-
+

На этой странице собраны ссылки на IPTV-плейлисты, которые находятся в открытом доступе. Они бесплатны для использования. Список плейлистов отбирается мной вручную и проверяется здесь автоматически. @@ -80,22 +82,39 @@ if (array_intersect(array_keys($_GET), array_keys($ini))) { Вопросы работоспособности плейлистов адресуйте тем, кто несёт за них ответственность.

Чтобы подключить плейлист, нужно в настройках IPTV-плеера указать ссылку из последней колонки.

+

+ Я не гарантирую корректность информации, которую ты увидишь здесь. + Рекомендую проверять желаемые плейлисты вручную, ибо нет никаких гарантий: +

+
    +
  • + что это вообще плейлисты, а не чьи-то архивы с мокрыми кисками; +
  • +
  • + что плейлисты по разным ссылкам не дублируют друг друга и отличаются каналами хотя бы на четверть; +
  • +
  • + что плейлист работоспособен (каналы работают, корректно названы, имеют аудио, etc.); +
  • +
  • + что подгрузится корректное количество каналов и их список (хотя на это я ещё могу влиять и + стараюсь как-то улучшить). +
  • +
-
-

Пояснение статусов проверки плейлистов

- +
+

Статусы проверки плейлистов

+
  • ? Загрузка данных.
  • - online Плейлист активен. В этом случае, возможно, - даже подгрузится список и количество каналов, но корректность этих данных не гарантируется. А если нет, - то следует проверить плейлист вручную. + online Плейлист активен. Фактически + означает, что удалённый файл успешно скачивается.
  • - unknown Состояние неизвестно. - Скорее всего, плейлист активен, но получить данные о нём не удалось. Следует проверить вручную. + unknown Состояние неизвестно. Скорее всего, плейлист активен, но получить данные о нём не удалось.
  • timeout Не удалось вовремя проверить плейлист. @@ -106,10 +125,10 @@ if (array_intersect(array_keys($_GET), array_keys($ini))) {
  • error Ошибка при проверке плейлиста.
  • - +
-
+

Список плейлистов

@@ -117,7 +136,7 @@ if (array_intersect(array_keys($_GET), array_keys($ini))) { - + @@ -158,10 +177,10 @@ if (array_intersect(array_keys($_GET), array_keys($ini))) {
ID Информация о плейлисте КаналовСсылкаСсылка
-