From 7025f6cebd35f41e9b299d6c259a33a3584882a7 Mon Sep 17 00:00:00 2001 From: Aleksandr Statciuk Date: Fri, 3 Feb 2023 04:49:41 +0300 Subject: [PATCH 1/5] Update auto-update.yml --- .github/workflows/auto-update.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/auto-update.yml b/.github/workflows/auto-update.yml index b99ef6c51..11c0f14a5 100644 --- a/.github/workflows/auto-update.yml +++ b/.github/workflows/auto-update.yml @@ -39,7 +39,12 @@ jobs: # cluster_id: [1] steps: - uses: actions/checkout@v3 - - uses: FedericoCarboni/setup-ffmpeg@v2 + - name: Install ffmpeg + run: | + sudo apt-get update -y + sudo apt-get install -y ffmpeg + ffmpeg -version + ffprobe -version - uses: actions/setup-node@v3 if: ${{ !env.ACT }} with: From 0cd89c3f432c0bfff0d6b943314b461fe626273b Mon Sep 17 00:00:00 2001 From: Aleksandr Statciuk Date: Fri, 3 Feb 2023 06:19:15 +0300 Subject: [PATCH 2/5] Upgrade iptv-checker package --- package-lock.json | 40 +++++++++++----------------------------- package.json | 2 +- yarn.lock | 22 +++++++--------------- 3 files changed, 19 insertions(+), 45 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4c9e8aaa1..92aebd488 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,7 +12,7 @@ "commander": "^8.3.0", "dayjs": "^1.10.7", "fs-extra": "^10.0.0", - "iptv-checker": "^0.24.5", + "iptv-checker": "^0.26.0", "iptv-playlist-parser": "^0.12.1", "jest": "^27.5.1", "jest-expect-message": "^1.0.2", @@ -2012,9 +2012,9 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "node_modules/iptv-checker": { - "version": "0.24.5", - "resolved": "https://registry.npmjs.org/iptv-checker/-/iptv-checker-0.24.5.tgz", - "integrity": "sha512-ue3a3TKDTpHLfdBtO2W3IGPZYWNX5cLYBYuftelnbPDWiTfCZiJ4ECV7D9jB8KW+3J6aleMFmE/Qz+1jz88V6w==", + "version": "0.26.0", + "resolved": "https://registry.npmjs.org/iptv-checker/-/iptv-checker-0.26.0.tgz", + "integrity": "sha512-8q9RWEpW7rICEj2PEz+6KnfBP5GimsCEsVaXG637ylyLx7vD5miX5MZGJDFslC+RIrQBZiBnNIQPmbhfYEHehg==", "dependencies": { "axios": "^0.21.1", "axios-curlirize": "^1.3.7", @@ -2023,7 +2023,7 @@ "commander": "^2.20.0", "dateformat": "^3.0.3", "get-stdin": "^7.0.0", - "iptv-playlist-parser": "^0.11.0", + "iptv-playlist-parser": "^0.12.0", "jest": "^27.0.6", "lodash.chunk": "^4.2.0", "progress": "^2.0.3", @@ -2041,15 +2041,6 @@ "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, - "node_modules/iptv-checker/node_modules/iptv-playlist-parser": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/iptv-playlist-parser/-/iptv-playlist-parser-0.11.0.tgz", - "integrity": "sha512-kUqayPVW8WVhDCodEOBzUlPpBTtCR3k7uvIHfmK/xB8TJCOnbMpvaxzHl0W3ImRS9qDVkBtzcIyfutdLXUr2KQ==", - "dependencies": { - "is-valid-path": "^0.1.1", - "valid-url": "^1.0.9" - } - }, "node_modules/iptv-playlist-parser": { "version": "0.12.1", "resolved": "https://registry.npmjs.org/iptv-playlist-parser/-/iptv-playlist-parser-0.12.1.tgz", @@ -4060,7 +4051,7 @@ "node_modules/valid-url": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/valid-url/-/valid-url-1.0.9.tgz", - "integrity": "sha1-HBRHm0DxOXp1eC8RXkCGRHQzogA=" + "integrity": "sha512-QQDsV8OnSf5Uc30CKSwG9lnhMPe6exHtTXLRYX8uMwKENy640pU+2BgBL0LRbDh/eYRahNCS7aewCx0wf3NYVA==" }, "node_modules/validator": { "version": "13.7.0", @@ -5757,9 +5748,9 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "iptv-checker": { - "version": "0.24.5", - "resolved": "https://registry.npmjs.org/iptv-checker/-/iptv-checker-0.24.5.tgz", - "integrity": "sha512-ue3a3TKDTpHLfdBtO2W3IGPZYWNX5cLYBYuftelnbPDWiTfCZiJ4ECV7D9jB8KW+3J6aleMFmE/Qz+1jz88V6w==", + "version": "0.26.0", + "resolved": "https://registry.npmjs.org/iptv-checker/-/iptv-checker-0.26.0.tgz", + "integrity": "sha512-8q9RWEpW7rICEj2PEz+6KnfBP5GimsCEsVaXG637ylyLx7vD5miX5MZGJDFslC+RIrQBZiBnNIQPmbhfYEHehg==", "requires": { "axios": "^0.21.1", "axios-curlirize": "^1.3.7", @@ -5768,7 +5759,7 @@ "commander": "^2.20.0", "dateformat": "^3.0.3", "get-stdin": "^7.0.0", - "iptv-playlist-parser": "^0.11.0", + "iptv-playlist-parser": "^0.12.0", "jest": "^27.0.6", "lodash.chunk": "^4.2.0", "progress": "^2.0.3", @@ -5779,15 +5770,6 @@ "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" - }, - "iptv-playlist-parser": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/iptv-playlist-parser/-/iptv-playlist-parser-0.11.0.tgz", - "integrity": "sha512-kUqayPVW8WVhDCodEOBzUlPpBTtCR3k7uvIHfmK/xB8TJCOnbMpvaxzHl0W3ImRS9qDVkBtzcIyfutdLXUr2KQ==", - "requires": { - "is-valid-path": "^0.1.1", - "valid-url": "^1.0.9" - } } } }, @@ -7287,7 +7269,7 @@ "valid-url": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/valid-url/-/valid-url-1.0.9.tgz", - "integrity": "sha1-HBRHm0DxOXp1eC8RXkCGRHQzogA=" + "integrity": "sha512-QQDsV8OnSf5Uc30CKSwG9lnhMPe6exHtTXLRYX8uMwKENy640pU+2BgBL0LRbDh/eYRahNCS7aewCx0wf3NYVA==" }, "validator": { "version": "13.7.0", diff --git a/package.json b/package.json index 05e661f9d..7c40c7793 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,7 @@ "commander": "^8.3.0", "dayjs": "^1.10.7", "fs-extra": "^10.0.0", - "iptv-checker": "^0.24.5", + "iptv-checker": "^0.26.0", "iptv-playlist-parser": "^0.12.1", "jest": "^27.5.1", "jest-expect-message": "^1.0.2", diff --git a/yarn.lock b/yarn.lock index 556432b6a..ccb1f7cfb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1388,10 +1388,10 @@ "resolved" "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" "version" "2.0.4" -"iptv-checker@^0.24.5": - "integrity" "sha512-ue3a3TKDTpHLfdBtO2W3IGPZYWNX5cLYBYuftelnbPDWiTfCZiJ4ECV7D9jB8KW+3J6aleMFmE/Qz+1jz88V6w==" - "resolved" "https://registry.npmjs.org/iptv-checker/-/iptv-checker-0.24.5.tgz" - "version" "0.24.5" +"iptv-checker@^0.26.0": + "integrity" "sha512-8q9RWEpW7rICEj2PEz+6KnfBP5GimsCEsVaXG637ylyLx7vD5miX5MZGJDFslC+RIrQBZiBnNIQPmbhfYEHehg==" + "resolved" "https://registry.npmjs.org/iptv-checker/-/iptv-checker-0.26.0.tgz" + "version" "0.26.0" dependencies: "axios" "^0.21.1" "axios-curlirize" "^1.3.7" @@ -1400,21 +1400,13 @@ "commander" "^2.20.0" "dateformat" "^3.0.3" "get-stdin" "^7.0.0" - "iptv-playlist-parser" "^0.11.0" + "iptv-playlist-parser" "^0.12.0" "jest" "^27.0.6" "lodash.chunk" "^4.2.0" "progress" "^2.0.3" "valid-url" "^1.0.9" -"iptv-playlist-parser@^0.11.0": - "integrity" "sha512-kUqayPVW8WVhDCodEOBzUlPpBTtCR3k7uvIHfmK/xB8TJCOnbMpvaxzHl0W3ImRS9qDVkBtzcIyfutdLXUr2KQ==" - "resolved" "https://registry.npmjs.org/iptv-playlist-parser/-/iptv-playlist-parser-0.11.0.tgz" - "version" "0.11.0" - dependencies: - "is-valid-path" "^0.1.1" - "valid-url" "^1.0.9" - -"iptv-playlist-parser@^0.12.1": +"iptv-playlist-parser@^0.12.0", "iptv-playlist-parser@^0.12.1": "integrity" "sha512-N0sJFsV8+FBZiR/kl7F5YfFQsUxFXrABP9+xyHPFEQjHJmXSBbvyHLlaW0GjROTd+iXVHA9glEeEwlzJimt5NA==" "resolved" "https://registry.npmjs.org/iptv-playlist-parser/-/iptv-playlist-parser-0.12.1.tgz" "version" "0.12.1" @@ -2743,7 +2735,7 @@ "source-map" "^0.7.3" "valid-url@^1.0.9": - "integrity" "sha1-HBRHm0DxOXp1eC8RXkCGRHQzogA=" + "integrity" "sha512-QQDsV8OnSf5Uc30CKSwG9lnhMPe6exHtTXLRYX8uMwKENy640pU+2BgBL0LRbDh/eYRahNCS7aewCx0wf3NYVA==" "resolved" "https://registry.npmjs.org/valid-url/-/valid-url-1.0.9.tgz" "version" "1.0.9" From c784cb81cd608b61982f25b03554e24546f38451 Mon Sep 17 00:00:00 2001 From: Aleksandr Statciuk Date: Fri, 3 Feb 2023 06:19:24 +0300 Subject: [PATCH 3/5] Update update.js --- scripts/commands/database/update.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/commands/database/update.js b/scripts/commands/database/update.js index 804c6b098..5455e2efb 100644 --- a/scripts/commands/database/update.js +++ b/scripts/commands/database/update.js @@ -145,8 +145,9 @@ function parseStatus(error) { if (!error) return 'online' switch (error.code) { + case 'FFMPEG_UNDEFINED': + return null case 'HTTP_REQUEST_TIMEOUT': - case 'FFMPEG_PROCESS_TIMEOUT': return 'timeout' case 'HTTP_FORBIDDEN': case 'HTTP_UNAUTHORIZED': From afae713136403e17b2a95cc04cc2de9c142cc0de Mon Sep 17 00:00:00 2001 From: Aleksandr Statciuk Date: Fri, 3 Feb 2023 06:19:29 +0300 Subject: [PATCH 4/5] Update auto-update.yml --- .github/workflows/auto-update.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/auto-update.yml b/.github/workflows/auto-update.yml index 11c0f14a5..0815af77d 100644 --- a/.github/workflows/auto-update.yml +++ b/.github/workflows/auto-update.yml @@ -41,6 +41,8 @@ jobs: - uses: actions/checkout@v3 - name: Install ffmpeg run: | + sudo rm -rf /var/lib/apt/lists/* + sudo apt-get clean sudo apt-get update -y sudo apt-get install -y ffmpeg ffmpeg -version From 744f17bd8fb952ebbbe163c857381d62336f6115 Mon Sep 17 00:00:00 2001 From: Aleksandr Statciuk Date: Fri, 3 Feb 2023 06:28:04 +0300 Subject: [PATCH 5/5] Update update.js --- scripts/commands/database/update.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/scripts/commands/database/update.js b/scripts/commands/database/update.js index 5455e2efb..bf49eba1b 100644 --- a/scripts/commands/database/update.js +++ b/scripts/commands/database/update.js @@ -26,7 +26,9 @@ async function updateStreams(items = [], results = {}, origins = {}) { const result = results[item._id] if (result) { const status = parseStatus(result.error) - stream.set('status', { status }) + if (status) { + stream.set('status', { status }) + } if (result.streams.length) { const { width, height, bitrate, frame_rate } = parseMediaInfo(result.streams)