ESPN+ & FOX Sports with Custom Channels via EPlusTV

I updated the code for FoxOne and tested. I recorded about 12 different shows and had no failures. The fix should work and I have issued a PR for it.

1 Like

Thanks, merged into v4.14.2

2 Likes

Just loaded 4.14.2

Got this error???

2025-10-31 17:31:17.131 | Looking for FOX One events...
2025-10-31 17:32:13.501 | Error while loading FoxOne events: AxiosError: timeout of 60000ms exceeded
2025-10-31 17:32:13.501 |     at RedirectableRequest.handleRequestTimeout (/app/node_modules/axios/lib/adapters/http.js:570:16)
2025-10-31 17:32:13.501 |     at RedirectableRequest.emit (node:events:517:28)
2025-10-31 17:32:13.501 |     at RedirectableRequest.emit (node:domain:489:12)
2025-10-31 17:32:13.501 |     at Timeout.<anonymous> (/app/node_modules/follow-redirects/index.js:169:12)
2025-10-31 17:32:13.501 |     at listOnTimeout (node:internal/timers:569:17)
2025-10-31 17:32:13.501 |     at processTimers (node:internal/timers:512:7) {
2025-10-31 17:32:13.501 |   code: 'ECONNABORTED',
2025-10-31 17:32:13.501 |   config: {
2025-10-31 17:32:13.501 |     transitional: {
2025-10-31 17:32:13.501 |       silentJSONParsing: true,
2025-10-31 17:32:13.501 |       forcedJSONParsing: true,
2025-10-31 17:32:13.501 |       clarifyTimeoutError: false
2025-10-31 17:32:13.501 |     },
2025-10-31 17:32:13.501 |     adapter: [ 'xhr', 'http' ],
2025-10-31 17:32:13.501 |     transformRequest: [ [Function: transformRequest] ],
2025-10-31 17:32:13.501 |     transformResponse: [ [Function: transformResponse] ],
2025-10-31 17:32:13.501 |     timeout: 60000,
2025-10-31 17:32:13.501 |     xsrfCookieName: 'XSRF-TOKEN',
2025-10-31 17:32:13.501 |     xsrfHeaderName: 'X-XSRF-TOKEN',
2025-10-31 17:32:13.501 |     maxContentLength: -1,
2025-10-31 17:32:13.501 |     maxBodyLength: -1,
2025-10-31 17:32:13.501 |     env: { FormData: [Function [FormData]], Blob: [class Blob] },
2025-10-31 17:32:13.501 |     validateStatus: [Function: validateStatus],
2025-10-31 17:32:13.501 |     headers: AxiosHeaders {
2025-10-31 17:32:13.501 |       Accept: 'application/json, text/plain, */*',
2025-10-31 17:32:13.501 |       'User-Agent': 'foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)',
2025-10-31 17:32:13.501 |       authorization: 'Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6ImI4ZWI5ODY1LTdjM2YtNDcxNS05OGVlLTdiYTk1M2MyZDVjNCIsInR5cCI6IkpXVCJ9.eyJhdHlwZSI6ImFub255bW91cyIsImF1ZCI6W10sImNsaWVudF9pZCI6ImVmMDhkYWUyLTYyYWUtNDY3My1iOWVmLTRiNTZmYTJkODFjNCIsImRpZCI6ImU1NzAxMTNlZjEwMjRmMzQiLCJkdHlwZSI6ImFuZHJvaWR0diIsImV4cCI6MTc2MjAzNjIxOCwiaWF0IjoxNzYxOTQ5ODE4LCJpc3MiOiJodHRwczovL2lkLmZveC5jb20iLCJqdGkiOiIwYmM2MDI4MS00MmQ2LTQ1ZGMtODk4Yi1mNWQ0YzE5NDQ3OWUiLCJuYmYiOjE3NjE5NDk4MTgsInBpZCI6ImFuZHJvaWR0dmU1NzAxMTNlZjEwMjRmMzQiLCJzY3AiOlsib3BlbmlkIiwib2ZmbGluZSJdLCJzZGMiOiJ1cy1lYXN0LTEiLCJzaWQiOiI0ODk1ZmY5YS0wZjdhLTQ2YWYtOWRjZS1mNTM0YmM5ZWM4ZjkiLCJzdWIiOiJhbmRyb2lkdHZlNTcwMTEzZWYxMDI0ZjM0IiwidWlkIjoiWVc1a2NtOXBaSFIyWlRVM01ERXhNMlZtTVRBeU5HWXpOQT09IiwidXR5cGUiOiJkZXZpY2VJZCIsInZlciI6Mn0.pnj_9Es3gifSNAYDdzm9OOtyTamzBTVD5HBS45BaAbdDVIHcouJk_g___gTLcHjcr-cgx-Tpb_Tqsb2T7PuJ5pgfQUhY_q42J6Kf0A7aLhekf8vEt2ounUDYD8cY5BCk89KByFDSWWiLhZ4JzJZ3InnM9dm5NZQlUPJIN825G4RxWXwuWx2X2zLgl19l2FdN9S7n-_TQRJfqO3Dk5bYnIrdEckYPrPOTZKkbpmExbR3F2o5F6KjUKFkFnM16oUwuC0EYGIsKHbpiwxeq2BMpSDGGXApAARUC3v2P3_tqkv7SyIZkhkMbioT7Y2dpmid6tjPuP-qsTpqM6_po08tQtQ',
2025-10-31 17:32:13.501 |       'x-fox-apikey': 'Y5st1HoLLOJFlHStA3alOLtGJPS7DUxn',
2025-10-31 17:32:13.501 |       'x-platform-location': 'eyJ2Zm94IjpmYWxzZSwib3ZlcnJpZGUiOmZhbHNlLCJsYXRpdHVkZSI6NDAuODUsImxvbmdpdHVkZSI6LTk2LjcyLCJjaXR5IjoiTGluY29sbiIsInJlZ2lvbiI6Ik5lYnJhc2thIiwiY291bnRyeSI6IlVTIiwiemlwX2NvZGUiOiI2ODUyMSIsInRpbWVfem9uZSI6Ii0wNTowMCIsIm1ldHJvX2NvZGUiOiI3MjIiLCJsb2NhbF9zdGF0aW9uX2NhbGxfc2lnbnMiOlsiS0ZYTCJdLCJuYXRpb25hbF9zdGF0aW9uc19jYWxsX3NpZ24iOlsiQlROIiwiQlROMkZUIiwiQlROM0ZUIiwiQlRONEZUIiwiQlROUDAwMSIsIkJUTlAwMDIiLCJCVE5QMDAzIiwiQlROUDAwNCIsIkJUTlAwMDUiLCJCVE5QMDA2IiwiQlROUDAwNyIsIkJUTlAwMDgiLCJCVE5QMDA5IiwiQlROUDAxMCIsIkJUTlAwMTEiLCJCVE5QMDEyIiwiQlROUDAxMyIsIkJUTlAwMTQiLCJCVE5QMDE1IiwiQlROUDAxNiIsIkJUTlAwMTciLCJCVE5QMDE4IiwiQlROUDAxOSIsIkJUTlAwMjAiLCJCVE5QMDIxIiwiQlROUDAyMiIsIkJUTlAwMjMiLCJCVE5QMDI0IiwiQlROUDAyNSIsIkJUTlAwMjYiLCJCVE5QMDI3IiwiQlROUDAyOCIsIkJUTlAwMjkiLCJCVE5QMDMwIiwiQlROUDAzMSIsIkJUTlAwMzIiLCJCVE5QMDMzIiwiQlROUDAzNCIsIkJUTlAwMzUiLCJCVE5QMDM2IiwiQlROUDAzNyIsIkJUTlAwMzgiLCJCVE5QMDM5IiwiQlROUDA0MCIsIkZBSVRIIiwiRkJOIiwiRkNPUyIsIkZNU0MiLCJGTVNDRk8iLCJGTkMiLCJGTlQiLCJGT1hEIiwiRlMxIiwiRlMyIiwiRlM0SzEiLCJGUzRLMiIsIkZTNEszIiwiRlM0SzUiLCJGU0QiLCJGU0QwMDIiLCJGU0QwMDMiLCJGU0QwMTQiLCJGU0QwMTUiLCJGU0QwMTYiLCJGU0QwMTciLCJGU0QwMTgiLCJGU0QwMTkiLCJGU0QwMjAiLCJGU0ZDIiwiRldYIiwiRlhOMSIsIkZYTjIiLCJGWE4zIiwiRlhONCIsIkZYTjUiLCJGWE42IiwiRlhOQSIsIkZYTkIiLCJHUkRSQU0iLCJLQ1BRRlNUIiwiS0RGV0ZTVCIsIktNU1BGU1QiLCJLUklWRlNUIiwiS1NBWkZTVCIsIktUQkNGU1QiLCJLVFRWRlNUIiwiS1RWVUZTVCIsIkxJVkVOT1ciLCJNVjAwMSIsIk1WMDAyIiwiTVYwMDMiLCJNVjAwNCIsIlNPVUwiLCJUTVoiLCJUTVpGTyIsIldBR0FGU1QiLCJXRkxERlNUIiwiV0lUSUZTVCIsIldKQktGU1QiLCJXTllXRlNUIiwiV09GTEZTVCIsIldUVEdGU1QiLCJXVFZURlNUIiwiV1RYRkZTVCJdLCJwdWJsaWNfaXAiOiIxNjcuMjQ4LjUyLjEwNCIsImNvbm5fc3BlZWQiOiJicm9hZGJhbmQiLCJjb25uX3R5cGUiOiJ3aWZpIn0=',
2025-10-31 17:32:13.501 |       'x-fox-zipcode': '68521',
2025-10-31 17:32:13.501 |       'x-home-zipcode': '68521',
2025-10-31 17:32:13.501 |       'x-fox-home-dma': '722',
2025-10-31 17:32:13.501 |       'x-fox-dma': '722',
2025-10-31 17:32:13.501 |       'x-fox-content-entitlement': 'H4sIAAAAAAAA/1TOwQoCMQwE0B9yBffo0YNH/8F202VhNwlNWvv5goIZb/NmSkmz813GrdnGZHY9ui6nb/egVzg5T8l5XgWrXy4pT0UGGDbOkfGNjIX0j9uKJHbkLvm5YyFMSFOpHheXSjDbBfIMWePLg71/8A4AAP///Dq0cBQBAAA=',
2025-10-31 17:32:13.501 |       'x-fox-userauth': 'Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6ImI4ZWI5ODY1LTdjM2YtNDcxNS05OGVlLTdiYTk1M2MyZDVjNCIsInR5cCI6IkpXVCJ9.eyJhdHlwZSI6ImFub255bW91cyIsImF1ZCI6W10sImNsaWVudF9pZCI6ImVmMDhkYWUyLTYyYWUtNDY3My1iOWVmLTRiNTZmYTJkODFjNCIsImRpZCI6ImU1NzAxMTNlZjEwMjRmMzQiLCJkdHlwZSI6ImFuZHJvaWR0diIsImV4cCI6MTc2MjAzNjIxOCwiaWF0IjoxNzYxOTQ5ODE4LCJpc3MiOiJodHRwczovL2lkLmZveC5jb20iLCJqdGkiOiIwYmM2MDI4MS00MmQ2LTQ1ZGMtODk4Yi1mNWQ0YzE5NDQ3OWUiLCJuYmYiOjE3NjE5NDk4MTgsInBpZCI6ImFuZHJvaWR0dmU1NzAxMTNlZjEwMjRmMzQiLCJzY3AiOlsib3BlbmlkIiwib2ZmbGluZSJdLCJzZGMiOiJ1cy1lYXN0LTEiLCJzaWQiOiI0ODk1ZmY5YS0wZjdhLTQ2YWYtOWRjZS1mNTM0YmM5ZWM4ZjkiLCJzdWIiOiJhbmRyb2lkdHZlNTcwMTEzZWYxMDI0ZjM0IiwidWlkIjoiWVc1a2NtOXBaSFIyWlRVM01ERXhNMlZtTVRBeU5HWXpOQT09IiwidXR5cGUiOiJkZXZpY2VJZCIsInZlciI6Mn0.pnj_9Es3gifSNAYDdzm9OOtyTamzBTVD5HBS45BaAbdDVIHcouJk_g___gTLcHjcr-cgx-Tpb_Tqsb2T7PuJ5pgfQUhY_q42J6Kf0A7aLhekf8vEt2ounUDYD8cY5BCk89KByFDSWWiLhZ4JzJZ3InnM9dm5NZQlUPJIN825G4RxWXwuWx2X2zLgl19l2FdN9S7n-_TQRJfqO3Dk5bYnIrdEckYPrPOTZKkbpmExbR3F2o5F6KjUKFkFnM16oUwuC0EYGIsKHbpiwxeq2BMpSDGGXApAARUC3v2P3_tqkv7SyIZkhkMbioT7Y2dpmid6tjPuP-qsTpqM6_po08tQtQ',
2025-10-31 17:32:13.501 |       'Accept-Encoding': 'gzip, compress, deflate, br'
2025-10-31 17:32:13.501 |     },
2025-10-31 17:32:13.501 |     method: 'get',
2025-10-31 17:32:13.501 |     url: 'https://api.fox.com/dtc/product/config/v1/init',
2025-10-31 17:32:13.501 |     data: undefined
2025-10-31 17:32:13.501 |   },
2025-10-31 17:32:13.501 |   request: <ref *1> Writable {
2025-10-31 17:32:13.501 |     _writableState: WritableState {
2025-10-31 17:32:13.501 |       objectMode: false,
2025-10-31 17:32:13.501 |       highWaterMark: 16384,
2025-10-31 17:32:13.501 |       finalCalled: false,
2025-10-31 17:32:13.501 |       needDrain: false,
2025-10-31 17:32:13.501 |       ending: false,
2025-10-31 17:32:13.501 |       ended: false,
2025-10-31 17:32:13.501 |       finished: false,
2025-10-31 17:32:13.501 |       destroyed: false,
2025-10-31 17:32:13.501 |       decodeStrings: true,
2025-10-31 17:32:13.501 |       defaultEncoding: 'utf8',
2025-10-31 17:32:13.501 |       length: 0,
2025-10-31 17:32:13.501 |       writing: false,
2025-10-31 17:32:13.501 |       corked: 0,
2025-10-31 17:32:13.501 |       sync: true,
2025-10-31 17:32:13.501 |       bufferProcessing: false,
2025-10-31 17:32:13.501 |       onwrite: [Function: bound onwrite],
2025-10-31 17:32:13.501 |       writecb: null,
2025-10-31 17:32:13.501 |       writelen: 0,
2025-10-31 17:32:13.501 |       afterWriteTickInfo: null,
2025-10-31 17:32:13.501 |       buffered: [],
2025-10-31 17:32:13.501 |       bufferedIndex: 0,
2025-10-31 17:32:13.501 |       allBuffers: true,
2025-10-31 17:32:13.501 |       allNoop: true,
2025-10-31 17:32:13.501 |       pendingcb: 0,
2025-10-31 17:32:13.501 |       constructed: true,
2025-10-31 17:32:13.501 |       prefinished: false,
2025-10-31 17:32:13.501 |       errorEmitted: false,
2025-10-31 17:32:13.501 |       emitClose: true,
2025-10-31 17:32:13.501 |       autoDestroy: true,
2025-10-31 17:32:13.501 |       errored: null,
2025-10-31 17:32:13.501 |       closed: false,
2025-10-31 17:32:13.501 |       closeEmitted: false,
2025-10-31 17:32:13.501 |       [Symbol(kOnFinished)]: []
2025-10-31 17:32:13.501 |     },
2025-10-31 17:32:13.501 |     _events: [Object: null prototype] {
2025-10-31 17:32:13.501 |       response: [Function: handleResponse],
2025-10-31 17:32:13.501 |       error: [Function: handleRequestError],
2025-10-31 17:32:13.501 |       socket: [Array]
2025-10-31 17:32:13.501 |     },
2025-10-31 17:32:13.501 |     _eventsCount: 3,
2025-10-31 17:32:13.501 |     _maxListeners: undefined,
2025-10-31 17:32:13.501 |     _options: {
2025-10-31 17:32:13.501 |       maxRedirects: 21,
2025-10-31 17:32:13.501 |       maxBodyLength: Infinity,
2025-10-31 17:32:13.501 |       protocol: 'https:',
2025-10-31 17:32:13.501 |       path: '/dtc/product/config/v1/init',
2025-10-31 17:32:13.501 |       method: 'GET',
2025-10-31 17:32:13.501 |       headers: [Object: null prototype],
2025-10-31 17:32:13.501 |       agents: [Object],
2025-10-31 17:32:13.501 |       auth: undefined,
2025-10-31 17:32:13.501 |       beforeRedirect: [Function: dispatchBeforeRedirect],
2025-10-31 17:32:13.501 |       beforeRedirects: [Object],
2025-10-31 17:32:13.501 |       hostname: 'api.fox.com',
2025-10-31 17:32:13.501 |       port: '',
2025-10-31 17:32:13.501 |       agent: undefined,
2025-10-31 17:32:13.501 |       nativeProtocols: [Object],
2025-10-31 17:32:13.501 |       pathname: '/dtc/product/config/v1/init'
2025-10-31 17:32:13.501 |     },
2025-10-31 17:32:13.501 |     _ended: true,
2025-10-31 17:32:13.501 |     _ending: true,
2025-10-31 17:32:13.501 |     _redirectCount: 0,
2025-10-31 17:32:13.501 |     _redirects: [],
2025-10-31 17:32:13.501 |     _requestBodyLength: 0,
2025-10-31 17:32:13.501 |     _requestBodyBuffers: [],
2025-10-31 17:32:13.501 |     _onNativeResponse: [Function (anonymous)],
2025-10-31 17:32:13.501 |     _currentRequest: ClientRequest {
2025-10-31 17:32:13.501 |       _events: [Object: null prototype],
2025-10-31 17:32:13.501 |       _eventsCount: 7,
2025-10-31 17:32:13.501 |       _maxListeners: undefined,
2025-10-31 17:32:13.501 |       outputData: [],
2025-10-31 17:32:13.501 |       outputSize: 0,
2025-10-31 17:32:13.501 |       writable: true,
2025-10-31 17:32:13.501 |       destroyed: false,
2025-10-31 17:32:13.501 |       _last: true,
2025-10-31 17:32:13.501 |       chunkedEncoding: false,
2025-10-31 17:32:13.502 |       shouldKeepAlive: false,
2025-10-31 17:32:13.502 |       maxRequestsOnConnectionReached: false,
2025-10-31 17:32:13.502 |       _defaultKeepAlive: true,
2025-10-31 17:32:13.502 |       useChunkedEncodingByDefault: false,
2025-10-31 17:32:13.502 |       sendDate: false,
2025-10-31 17:32:13.502 |       _removedConnection: false,
2025-10-31 17:32:13.502 |       _removedContLen: false,
2025-10-31 17:32:13.502 |       _removedTE: false,
2025-10-31 17:32:13.502 |       strictContentLength: false,
2025-10-31 17:32:13.502 |       _contentLength: 0,
2025-10-31 17:32:13.502 |       _hasBody: true,
2025-10-31 17:32:13.502 |       _trailer: '',
2025-10-31 17:32:13.502 |       finished: true,
2025-10-31 17:32:13.502 |       _headerSent: true,
2025-10-31 17:32:13.502 |       _closed: false,
2025-10-31 17:32:13.502 |       socket: [TLSSocket],
2025-10-31 17:32:13.502 |       _header: 'GET /dtc/product/config/v1/init HTTP/1.1\r\n' +
2025-10-31 17:32:13.502 |         'Accept: application/json, text/plain, */*\r\n' +
2025-10-31 17:32:13.502 |         'User-Agent: foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)\r\n' +
2025-10-31 17:32:13.502 |         'authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6ImI4ZWI5ODY1LTdjM2YtNDcxNS05OGVlLTdiYTk1M2MyZDVjNCIsInR5cCI6IkpXVCJ9.eyJhdHlwZSI6ImFub255bW91cyIsImF1ZCI6W10sImNsaWVudF9pZCI6ImVmMDhkYWUyLTYyYWUtNDY3My1iOWVmLTRiNTZmYTJkODFjNCIsImRpZCI6ImU1NzAxMTNlZjEwMjRmMzQiLCJkdHlwZSI6ImFuZHJvaWR0diIsImV4cCI6MTc2MjAzNjIxOCwiaWF0IjoxNzYxOTQ5ODE4LCJpc3MiOiJodHRwczovL2lkLmZveC5jb20iLCJqdGkiOiIwYmM2MDI4MS00MmQ2LTQ1ZGMtODk4Yi1mNWQ0YzE5NDQ3OWUiLCJuYmYiOjE3NjE5NDk4MTgsInBpZCI6ImFuZHJvaWR0dmU1NzAxMTNlZjEwMjRmMzQiLCJzY3AiOlsib3BlbmlkIiwib2ZmbGluZSJdLCJzZGMiOiJ1cy1lYXN0LTEiLCJzaWQiOiI0ODk1ZmY5YS0wZjdhLTQ2YWYtOWRjZS1mNTM0YmM5ZWM4ZjkiLCJzdWIiOiJhbmRyb2lkdHZlNTcwMTEzZWYxMDI0ZjM0IiwidWlkIjoiWVc1a2NtOXBaSFIyWlRVM01ERXhNMlZtTVRBeU5HWXpOQT09IiwidXR5cGUiOiJkZXZpY2VJZCIsInZlciI6Mn0.pnj_9Es3gifSNAYDdzm9OOtyTamzBTVD5HBS45BaAbdDVIHcouJk_g___gTLcHjcr-cgx-Tpb_Tqsb2T7PuJ5pgfQUhY_q42J6Kf0A7aLhekf8vEt2ounUDYD8cY5BCk89KByFDSWWiLhZ4JzJZ3InnM9dm5NZQlUPJIN825G4RxWXwuWx2X2zLgl19l2FdN9S7n-_TQRJfqO3Dk5bYnIrdEckYPrPOTZKkbpmExbR3F2o5F6KjUKFkFnM16oUwuC0EYGIsKHbpiwxeq2BMpSDGGXApAARUC3v2P3_tqkv7SyIZkhkMbioT7Y2dpmid6tjPuP-qsTpqM6_po08tQtQ\r\n' +
2025-10-31 17:32:13.502 |         'x-fox-apikey: Y5st1HoLLOJFlHStA3alOLtGJPS7DUxn\r\n' +
2025-10-31 17:32:13.502 |         'x-platform-location: eyJ2Zm94IjpmYWxzZSwib3ZlcnJpZGUiOmZhbHNlLCJsYXRpdHVkZSI6NDAuODUsImxvbmdpdHVkZSI6LTk2LjcyLCJjaXR5IjoiTGluY29sbiIsInJlZ2lvbiI6Ik5lYnJhc2thIiwiY291bnRyeSI6IlVTIiwiemlwX2NvZGUiOiI2ODUyMSIsInRpbWVfem9uZSI6Ii0wNTowMCIsIm1ldHJvX2NvZGUiOiI3MjIiLCJsb2NhbF9zdGF0aW9uX2NhbGxfc2lnbnMiOlsiS0ZYTCJdLCJuYXRpb25hbF9zdGF0aW9uc19jYWxsX3NpZ24iOlsiQlROIiwiQlROMkZUIiwiQlROM0ZUIiwiQlRONEZUIiwiQlROUDAwMSIsIkJUTlAwMDIiLCJCVE5QMDAzIiwiQlROUDAwNCIsIkJUTlAwMDUiLCJCVE5QMDA2IiwiQlROUDAwNyIsIkJUTlAwMDgiLCJCVE5QMDA5IiwiQlROUDAxMCIsIkJUTlAwMTEiLCJCVE5QMDEyIiwiQlROUDAxMyIsIkJUTlAwMTQiLCJCVE5QMDE1IiwiQlROUDAxNiIsIkJUTlAwMTciLCJCVE5QMDE4IiwiQlROUDAxOSIsIkJUTlAwMjAiLCJCVE5QMDIxIiwiQlROUDAyMiIsIkJUTlAwMjMiLCJCVE5QMDI0IiwiQlROUDAyNSIsIkJUTlAwMjYiLCJCVE5QMDI3IiwiQlROUDAyOCIsIkJUTlAwMjkiLCJCVE5QMDMwIiwiQlROUDAzMSIsIkJUTlAwMzIiLCJCVE5QMDMzIiwiQlROUDAzNCIsIkJUTlAwMzUiLCJCVE5QMDM2IiwiQlROUDAzNyIsIkJUTlAwMzgiLCJCVE5QMDM5IiwiQlROUDA0MCIsIkZBSVRIIiwiRkJOIiwiRkNPUyIsIkZNU0MiLCJGTVNDRk8iLCJGTkMiLCJGTlQiLCJGT1hEIiwiRlMxIiwiRlMyIiwiRlM0SzEiLCJGUzRLMiIsIkZTNEszIiwiRlM0SzUiLCJGU0QiLCJGU0QwMDIiLCJGU0QwMDMiLCJGU0QwMTQiLCJGU0QwMTUiLCJGU0QwMTYiLCJGU0QwMTciLCJGU0QwMTgiLCJGU0QwMTkiLCJGU0QwMjAiLCJGU0ZDIiwiRldYIiwiRlhOMSIsIkZYTjIiLCJGWE4zIiwiRlhONCIsIkZYTjUiLCJGWE42IiwiRlhOQSIsIkZYTkIiLCJHUkRSQU0iLCJLQ1BRRlNUIiwiS0RGV0ZTVCIsIktNU1BGU1QiLCJLUklWRlNUIiwiS1NBWkZTVCIsIktUQkNGU1QiLCJLVFRWRlNUIiwiS1RWVUZTVCIsIkxJVkVOT1ciLCJNVjAwMSIsIk1WMDAyIiwiTVYwMDMiLCJNVjAwNCIsIlNPVUwiLCJUTVoiLCJUTVpGTyIsIldBR0FGU1QiLCJXRkxERlNUIiwiV0lUSUZTVCIsIldKQktGU1QiLCJXTllXRlNUIiwiV09GTEZTVCIsIldUVEdGU1QiLCJXVFZURlNUIiwiV1RYRkZTVCJdLCJwdWJsaWNfaXAiOiIxNjcuMjQ4LjUyLjEwNCIsImNvbm5fc3BlZWQiOiJicm9hZGJhbmQiLCJjb25uX3R5cGUiOiJ3aWZpIn0=\r\n' +
2025-10-31 17:32:13.502 |         'x-fox-zipcode: 68521\r\n' +
2025-10-31 17:32:13.502 |         'x-home-zipcode: 68521\r\n' +
2025-10-31 17:32:13.502 |         'x-fox-home-dma: 722\r\n' +
2025-10-31 17:32:13.502 |         'x-fox-dma: 722\r\n' +
2025-10-31 17:32:13.502 |         'x-fox-content-entitlement: H4sIAAAAAAAA/1TOwQoCMQwE0B9yBffo0YNH/8F202VhNwlNWvv5goIZb/NmSkmz813GrdnGZHY9ui6nb/egVzg5T8l5XgWrXy4pT0UGGDbOkfGNjIX0j9uKJHbkLvm5YyFMSFOpHheXSjDbBfIMWePLg71/8A4AAP///Dq0cBQBAAA=\r\n' +
2025-10-31 17:32:13.502 |         'x-fox-userauth: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6ImI4ZWI5ODY1LTdjM2YtNDcxNS05OGVlLTdiYTk1M2MyZDVjNCIsInR5cCI6IkpXVCJ9.eyJhdHlwZSI6ImFub255bW91cyIsImF1ZCI6W10sImNsaWVudF9pZCI6ImVmMDhkYWUyLTYyYWUtNDY3My1iOWVmLTRiNTZmYTJkODFjNCIsImRpZCI6ImU1NzAxMTNlZjEwMjRmMzQiLCJkdHlwZSI6ImFuZHJvaWR0diIsImV4cCI6MTc2MjAzNjIxOCwiaWF0IjoxNzYxOTQ5ODE4LCJpc3MiOiJodHRwczovL2lkLmZveC5jb20iLCJqdGkiOiIwYmM2MDI4MS00MmQ2LTQ1ZGMtODk4Yi1mNWQ0YzE5NDQ3OWUiLCJuYmYiOjE3NjE5NDk4MTgsInBpZCI6ImFuZHJvaWR0dmU1NzAxMTNlZjEwMjRmMzQiLCJzY3AiOlsib3BlbmlkIiwib2ZmbGluZSJdLCJzZGMiOiJ1cy1lYXN0LTEiLCJzaWQiOiI0ODk1ZmY5YS0wZjdhLTQ2YWYtOWRjZS1mNTM0YmM5ZWM4ZjkiLCJzdWIiOiJhbmRyb2lkdHZlNTcwMTEzZWYxMDI0ZjM0IiwidWlkIjoiWVc1a2NtOXBaSFIyWlRVM01ERXhNMlZtTVRBeU5HWXpOQT09IiwidXR5cGUiOiJkZXZpY2VJZCIsInZlciI6Mn0.pnj_9Es3gifSNAYDdzm9OOtyTamzBTVD5HBS45BaAbdDVIHcouJk_g___gTLcHjcr-cgx-Tpb_Tqsb2T7PuJ5pgfQUhY_q42J6Kf0A7aLhekf8vEt2ounUDYD8cY5BCk89KByFDSWWiLhZ4JzJZ3InnM9dm5NZQlUPJIN825G4RxWXwuWx2X2zLgl19l2FdN9S7n-_TQRJfqO3Dk5bYnIrdEckYPrPOTZKkbpmExbR3F2o5F6KjUKFkFnM16oUwuC0EYGIsKHbpiwxeq2BMpSDGGXApAARUC3v2P3_tqkv7SyIZkhkMbioT7Y2dpmid6tjPuP-qsTpqM6_po08tQtQ\r\n' +
2025-10-31 17:32:13.502 |         'Accept-Encoding: gzip, compress, deflate, br\r\n' +
2025-10-31 17:32:13.502 |         'Host: api.fox.com\r\n' +
2025-10-31 17:32:13.502 |         'Connection: close\r\n' +
2025-10-31 17:32:13.502 |         '\r\n',
2025-10-31 17:32:13.502 |       _keepAliveTimeout: 0,
2025-10-31 17:32:13.502 |       _onPendingData: [Function: nop],
2025-10-31 17:32:13.502 |       agent: [Agent],
2025-10-31 17:32:13.502 |       socketPath: undefined,
2025-10-31 17:32:13.502 |       method: 'GET',
2025-10-31 17:32:13.502 |       maxHeaderSize: undefined,
2025-10-31 17:32:13.502 |       insecureHTTPParser: undefined,
2025-10-31 17:32:13.502 |       joinDuplicateHeaders: undefined,
2025-10-31 17:32:13.502 |       path: '/dtc/product/config/v1/init',
2025-10-31 17:32:13.502 |       _ended: false,
2025-10-31 17:32:13.502 |       res: null,
2025-10-31 17:32:13.502 |       aborted: false,
2025-10-31 17:32:13.502 |       timeoutCb: null,
2025-10-31 17:32:13.502 |       upgradeOrConnect: false,
2025-10-31 17:32:13.502 |       parser: [HTTPParser],
2025-10-31 17:32:13.502 |       maxHeadersCount: null,
2025-10-31 17:32:13.502 |       reusedSocket: false,
2025-10-31 17:32:13.502 |       host: 'api.fox.com',
2025-10-31 17:32:13.502 |       protocol: 'https:',
2025-10-31 17:32:13.502 |       _redirectable: [Circular *1],
2025-10-31 17:32:13.502 |       [Symbol(kCapture)]: false,
2025-10-31 17:32:13.502 |       [Symbol(kBytesWritten)]: 0,
2025-10-31 17:32:13.502 |       [Symbol(kNeedDrain)]: false,
2025-10-31 17:32:13.502 |       [Symbol(corked)]: 0,
2025-10-31 17:32:13.502 |       [Symbol(kOutHeaders)]: [Object: null prototype],
2025-10-31 17:32:13.502 |       [Symbol(errored)]: null,
2025-10-31 17:32:13.502 |       [Symbol(kHighWaterMark)]: 16384,
2025-10-31 17:32:13.502 |       [Symbol(kRejectNonStandardBodyWrites)]: false,
2025-10-31 17:32:13.502 |       [Symbol(kUniqueHeaders)]: null
2025-10-31 17:32:13.502 |     },
2025-10-31 17:32:13.502 |     _currentUrl: 'https://api.fox.com/dtc/product/config/v1/init',
2025-10-31 17:32:13.502 |     _timeout: null,
2025-10-31 17:32:13.502 |     [Symbol(kCapture)]: false
2025-10-31 17:32:13.502 |   }
2025-10-31 17:32:13.502 | }
2025-10-31 17:32:18.168 | Error while loading FoxOne events: AxiosError: timeout of 60000ms exceeded
2025-10-31 17:32:18.168 |     at RedirectableRequest.handleRequestTimeout (/app/node_modules/axios/lib/adapters/http.js:570:16)
2025-10-31 17:32:18.168 |     at RedirectableRequest.emit (node:events:517:28)
2025-10-31 17:32:18.168 |     at RedirectableRequest.emit (node:domain:489:12)
2025-10-31 17:32:18.168 |     at Timeout.<anonymous> (/app/node_modules/follow-redirects/index.js:169:12)
2025-10-31 17:32:18.168 |     at listOnTimeout (node:internal/timers:569:17)
2025-10-31 17:32:18.168 |     at processTimers (node:internal/timers:512:7) {
2025-10-31 17:32:18.168 |   code: 'ECONNABORTED',
2025-10-31 17:32:18.168 |   config: {
2025-10-31 17:32:18.168 |     transitional: {
2025-10-31 17:32:18.168 |       silentJSONParsing: true,
2025-10-31 17:32:18.168 |       forcedJSONParsing: true,
2025-10-31 17:32:18.168 |       clarifyTimeoutError: false
2025-10-31 17:32:18.168 |     },
2025-10-31 17:32:18.168 |     adapter: [ 'xhr', 'http' ],
2025-10-31 17:32:18.168 |     transformRequest: [ [Function: transformRequest] ],
2025-10-31 17:32:18.168 |     transformResponse: [ [Function: transformResponse] ],
2025-10-31 17:32:18.168 |     timeout: 60000,
2025-10-31 17:32:18.168 |     xsrfCookieName: 'XSRF-TOKEN',
2025-10-31 17:32:18.168 |     xsrfHeaderName: 'X-XSRF-TOKEN',
2025-10-31 17:32:18.168 |     maxContentLength: -1,
2025-10-31 17:32:18.168 |     maxBodyLength: -1,
2025-10-31 17:32:18.168 |     env: { FormData: [Function [FormData]], Blob: [class Blob] },
2025-10-31 17:32:18.168 |     validateStatus: [Function: validateStatus],
2025-10-31 17:32:18.168 |     headers: AxiosHeaders {
2025-10-31 17:32:18.168 |       Accept: 'application/json, text/plain, */*',
2025-10-31 17:32:18.168 |       'User-Agent': 'foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)',
2025-10-31 17:32:18.168 |       authorization: 'Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6ImI4ZWI5ODY1LTdjM2YtNDcxNS05OGVlLTdiYTk1M2MyZDVjNCIsInR5cCI6IkpXVCJ9.eyJhdHlwZSI6ImFub255bW91cyIsImF1ZCI6W10sImNsaWVudF9pZCI6ImVmMDhkYWUyLTYyYWUtNDY3My1iOWVmLTRiNTZmYTJkODFjNCIsImRpZCI6ImU1NzAxMTNlZjEwMjRmMzQiLCJkdHlwZSI6ImFuZHJvaWR0diIsImV4cCI6MTc2MjAzNjIxOCwiaWF0IjoxNzYxOTQ5ODE4LCJpc3MiOiJodHRwczovL2lkLmZveC5jb20iLCJqdGkiOiIwYmM2MDI4MS00MmQ2LTQ1ZGMtODk4Yi1mNWQ0YzE5NDQ3OWUiLCJuYmYiOjE3NjE5NDk4MTgsInBpZCI6ImFuZHJvaWR0dmU1NzAxMTNlZjEwMjRmMzQiLCJzY3AiOlsib3BlbmlkIiwib2ZmbGluZSJdLCJzZGMiOiJ1cy1lYXN0LTEiLCJzaWQiOiI0ODk1ZmY5YS0wZjdhLTQ2YWYtOWRjZS1mNTM0YmM5ZWM4ZjkiLCJzdWIiOiJhbmRyb2lkdHZlNTcwMTEzZWYxMDI0ZjM0IiwidWlkIjoiWVc1a2NtOXBaSFIyWlRVM01ERXhNMlZtTVRBeU5HWXpOQT09IiwidXR5cGUiOiJkZXZpY2VJZCIsInZlciI6Mn0.pnj_9Es3gifSNAYDdzm9OOtyTamzBTVD5HBS45BaAbdDVIHcouJk_g___gTLcHjcr-cgx-Tpb_Tqsb2T7PuJ5pgfQUhY_q42J6Kf0A7aLhekf8vEt2ounUDYD8cY5BCk89KByFDSWWiLhZ4JzJZ3InnM9dm5NZQlUPJIN825G4RxWXwuWx2X2zLgl19l2FdN9S7n-_TQRJfqO3Dk5bYnIrdEckYPrPOTZKkbpmExbR3F2o5F6KjUKFkFnM16oUwuC0EYGIsKHbpiwxeq2BMpSDGGXApAARUC3v2P3_tqkv7SyIZkhkMbioT7Y2dpmid6tjPuP-qsTpqM6_po08tQtQ',
2025-10-31 17:32:18.168 |       'x-fox-apikey': 'Y5st1HoLLOJFlHStA3alOLtGJPS7DUxn',
2025-10-31 17:32:18.168 |       'x-platform-location': 'eyJ2Zm94IjpmYWxzZSwib3ZlcnJpZGUiOmZhbHNlLCJsYXRpdHVkZSI6NDAuODUsImxvbmdpdHVkZSI6LTk2LjcyLCJjaXR5IjoiTGluY29sbiIsInJlZ2lvbiI6Ik5lYnJhc2thIiwiY291bnRyeSI6IlVTIiwiemlwX2NvZGUiOiI2ODUyMSIsInRpbWVfem9uZSI6Ii0wNTowMCIsIm1ldHJvX2NvZGUiOiI3MjIiLCJsb2NhbF9zdGF0aW9uX2NhbGxfc2lnbnMiOlsiS0ZYTCJdLCJuYXRpb25hbF9zdGF0aW9uc19jYWxsX3NpZ24iOlsiQlROIiwiQlROMkZUIiwiQlROM0ZUIiwiQlRONEZUIiwiQlROUDAwMSIsIkJUTlAwMDIiLCJCVE5QMDAzIiwiQlROUDAwNCIsIkJUTlAwMDUiLCJCVE5QMDA2IiwiQlROUDAwNyIsIkJUTlAwMDgiLCJCVE5QMDA5IiwiQlROUDAxMCIsIkJUTlAwMTEiLCJCVE5QMDEyIiwiQlROUDAxMyIsIkJUTlAwMTQiLCJCVE5QMDE1IiwiQlROUDAxNiIsIkJUTlAwMTciLCJCVE5QMDE4IiwiQlROUDAxOSIsIkJUTlAwMjAiLCJCVE5QMDIxIiwiQlROUDAyMiIsIkJUTlAwMjMiLCJCVE5QMDI0IiwiQlROUDAyNSIsIkJUTlAwMjYiLCJCVE5QMDI3IiwiQlROUDAyOCIsIkJUTlAwMjkiLCJCVE5QMDMwIiwiQlROUDAzMSIsIkJUTlAwMzIiLCJCVE5QMDMzIiwiQlROUDAzNCIsIkJUTlAwMzUiLCJCVE5QMDM2IiwiQlROUDAzNyIsIkJUTlAwMzgiLCJCVE5QMDM5IiwiQlROUDA0MCIsIkZBSVRIIiwiRkJOIiwiRkNPUyIsIkZNU0MiLCJGTVNDRk8iLCJGTkMiLCJGTlQiLCJGT1hEIiwiRlMxIiwiRlMyIiwiRlM0SzEiLCJGUzRLMiIsIkZTNEszIiwiRlM0SzUiLCJGU0QiLCJGU0QwMDIiLCJGU0QwMDMiLCJGU0QwMTQiLCJGU0QwMTUiLCJGU0QwMTYiLCJGU0QwMTciLCJGU0QwMTgiLCJGU0QwMTkiLCJGU0QwMjAiLCJGU0ZDIiwiRldYIiwiRlhOMSIsIkZYTjIiLCJGWE4zIiwiRlhONCIsIkZYTjUiLCJGWE42IiwiRlhOQSIsIkZYTkIiLCJHUkRSQU0iLCJLQ1BRRlNUIiwiS0RGV0ZTVCIsIktNU1BGU1QiLCJLUklWRlNUIiwiS1NBWkZTVCIsIktUQkNGU1QiLCJLVFRWRlNUIiwiS1RWVUZTVCIsIkxJVkVOT1ciLCJNVjAwMSIsIk1WMDAyIiwiTVYwMDMiLCJNVjAwNCIsIlNPVUwiLCJUTVoiLCJUTVpGTyIsIldBR0FGU1QiLCJXRkxERlNUIiwiV0lUSUZTVCIsIldKQktGU1QiLCJXTllXRlNUIiwiV09GTEZTVCIsIldUVEdGU1QiLCJXVFZURlNUIiwiV1RYRkZTVCJdLCJwdWJsaWNfaXAiOiIxNjcuMjQ4LjUyLjEwNCIsImNvbm5fc3BlZWQiOiJicm9hZGJhbmQiLCJjb25uX3R5cGUiOiJ3aWZpIn0=',
2025-10-31 17:32:18.168 |       'x-fox-zipcode': '68521',
2025-10-31 17:32:18.168 |       'x-home-zipcode': '68521',
2025-10-31 17:32:18.168 |       'x-fox-home-dma': '722',
2025-10-31 17:32:18.168 |       'x-fox-dma': '722',
2025-10-31 17:32:18.168 |       'x-fox-content-entitlement': 'H4sIAAAAAAAA/1TOwQoCMQwE0B9yBffo0YNH/8F202VhNwlNWvv5goIZb/NmSkmz813GrdnGZHY9ui6nb/egVzg5T8l5XgWrXy4pT0UGGDbOkfGNjIX0j9uKJHbkLvm5YyFMSFOpHheXSjDbBfIMWePLg71/8A4AAP///Dq0cBQBAAA=',
2025-10-31 17:32:18.168 |       'x-fox-userauth': 'Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6ImI4ZWI5ODY1LTdjM2YtNDcxNS05OGVlLTdiYTk1M2MyZDVjNCIsInR5cCI6IkpXVCJ9.eyJhdHlwZSI6ImFub255bW91cyIsImF1ZCI6W10sImNsaWVudF9pZCI6ImVmMDhkYWUyLTYyYWUtNDY3My1iOWVmLTRiNTZmYTJkODFjNCIsImRpZCI6ImU1NzAxMTNlZjEwMjRmMzQiLCJkdHlwZSI6ImFuZHJvaWR0diIsImV4cCI6MTc2MjAzNjIxOCwiaWF0IjoxNzYxOTQ5ODE4LCJpc3MiOiJodHRwczovL2lkLmZveC5jb20iLCJqdGkiOiIwYmM2MDI4MS00MmQ2LTQ1ZGMtODk4Yi1mNWQ0YzE5NDQ3OWUiLCJuYmYiOjE3NjE5NDk4MTgsInBpZCI6ImFuZHJvaWR0dmU1NzAxMTNlZjEwMjRmMzQiLCJzY3AiOlsib3BlbmlkIiwib2ZmbGluZSJdLCJzZGMiOiJ1cy1lYXN0LTEiLCJzaWQiOiI0ODk1ZmY5YS0wZjdhLTQ2YWYtOWRjZS1mNTM0YmM5ZWM4ZjkiLCJzdWIiOiJhbmRyb2lkdHZlNTcwMTEzZWYxMDI0ZjM0IiwidWlkIjoiWVc1a2NtOXBaSFIyWlRVM01ERXhNMlZtTVRBeU5HWXpOQT09IiwidXR5cGUiOiJkZXZpY2VJZCIsInZlciI6Mn0.pnj_9Es3gifSNAYDdzm9OOtyTamzBTVD5HBS45BaAbdDVIHcouJk_g___gTLcHjcr-cgx-Tpb_Tqsb2T7PuJ5pgfQUhY_q42J6Kf0A7aLhekf8vEt2ounUDYD8cY5BCk89KByFDSWWiLhZ4JzJZ3InnM9dm5NZQlUPJIN825G4RxWXwuWx2X2zLgl19l2FdN9S7n-_TQRJfqO3Dk5bYnIrdEckYPrPOTZKkbpmExbR3F2o5F6KjUKFkFnM16oUwuC0EYGIsKHbpiwxeq2BMpSDGGXApAARUC3v2P3_tqkv7SyIZkhkMbioT7Y2dpmid6tjPuP-qsTpqM6_po08tQtQ',
2025-10-31 17:32:18.168 |       'Accept-Encoding': 'gzip, compress, deflate, br'
2025-10-31 17:32:18.168 |     },
2025-10-31 17:32:18.168 |     method: 'get',
2025-10-31 17:32:18.168 |     url: 'https://api.fox.com/dtc/product/page/v1/landing/653897111489?page=1&size=60',
2025-10-31 17:32:18.168 |     data: undefined
2025-10-31 17:32:18.168 |   },
2025-10-31 17:32:18.168 |   request: <ref *1> Writable {
2025-10-31 17:32:18.168 |     _writableState: WritableState {
2025-10-31 17:32:18.168 |       objectMode: false,
2025-10-31 17:32:18.168 |       highWaterMark: 16384,
2025-10-31 17:32:18.168 |       finalCalled: false,
2025-10-31 17:32:18.168 |       needDrain: false,
2025-10-31 17:32:18.168 |       ending: false,
2025-10-31 17:32:18.168 |       ended: false,
2025-10-31 17:32:18.168 |       finished: false,
2025-10-31 17:32:18.168 |       destroyed: false,
2025-10-31 17:32:18.168 |       decodeStrings: true,
2025-10-31 17:32:18.168 |       defaultEncoding: 'utf8',
2025-10-31 17:32:18.168 |       length: 0,
2025-10-31 17:32:18.168 |       writing: false,
2025-10-31 17:32:18.168 |       corked: 0,
2025-10-31 17:32:18.168 |       sync: true,
2025-10-31 17:32:18.168 |       bufferProcessing: false,
2025-10-31 17:32:18.168 |       onwrite: [Function: bound onwrite],
2025-10-31 17:32:18.168 |       writecb: null,
2025-10-31 17:32:18.168 |       writelen: 0,
2025-10-31 17:32:18.168 |       afterWriteTickInfo: null,
2025-10-31 17:32:18.168 |       buffered: [],
2025-10-31 17:32:18.168 |       bufferedIndex: 0,
2025-10-31 17:32:18.168 |       allBuffers: true,
2025-10-31 17:32:18.168 |       allNoop: true,
2025-10-31 17:32:18.168 |       pendingcb: 0,
2025-10-31 17:32:18.168 |       constructed: true,
2025-10-31 17:32:18.168 |       prefinished: false,
2025-10-31 17:32:18.168 |       errorEmitted: false,
2025-10-31 17:32:18.168 |       emitClose: true,
2025-10-31 17:32:18.168 |       autoDestroy: true,
2025-10-31 17:32:18.168 |       errored: null,
2025-10-31 17:32:18.168 |       closed: false,
2025-10-31 17:32:18.168 |       closeEmitted: false,
2025-10-31 17:32:18.168 |       [Symbol(kOnFinished)]: []
2025-10-31 17:32:18.168 |     },
2025-10-31 17:32:18.168 |     _events: [Object: null prototype] {
2025-10-31 17:32:18.168 |       response: [Function: handleResponse],
2025-10-31 17:32:18.168 |       error: [Function: handleRequestError],
2025-10-31 17:32:18.168 |       socket: [Array]
2025-10-31 17:32:18.168 |     },
2025-10-31 17:32:18.168 |     _eventsCount: 3,
2025-10-31 17:32:18.168 |     _maxListeners: undefined,
2025-10-31 17:32:18.168 |     _options: {
2025-10-31 17:32:18.168 |       maxRedirects: 21,
2025-10-31 17:32:18.168 |       maxBodyLength: Infinity,
2025-10-31 17:32:18.168 |       protocol: 'https:',
2025-10-31 17:32:18.168 |       path: '/dtc/product/page/v1/landing/653897111489?page=1&size=60',
2025-10-31 17:32:18.168 |       method: 'GET',
2025-10-31 17:32:18.168 |       headers: [Object: null prototype],
2025-10-31 17:32:18.168 |       agents: [Object],
2025-10-31 17:32:18.168 |       auth: undefined,
2025-10-31 17:32:18.168 |       beforeRedirect: [Function: dispatchBeforeRedirect],
2025-10-31 17:32:18.168 |       beforeRedirects: [Object],
2025-10-31 17:32:18.168 |       hostname: 'api.fox.com',
2025-10-31 17:32:18.168 |       port: '',
2025-10-31 17:32:18.168 |       agent: undefined,
2025-10-31 17:32:18.168 |       nativeProtocols: [Object],
2025-10-31 17:32:18.168 |       pathname: '/dtc/product/page/v1/landing/653897111489',
2025-10-31 17:32:18.168 |       search: '?page=1&size=60'
2025-10-31 17:32:18.168 |     },
2025-10-31 17:32:18.168 |     _ended: true,
2025-10-31 17:32:18.168 |     _ending: true,
2025-10-31 17:32:18.168 |     _redirectCount: 0,
2025-10-31 17:32:18.168 |     _redirects: [],
2025-10-31 17:32:18.168 |     _requestBodyLength: 0,
2025-10-31 17:32:18.168 |     _requestBodyBuffers: [],
2025-10-31 17:32:18.168 |     _onNativeResponse: [Function (anonymous)],
2025-10-31 17:32:18.168 |     _currentRequest: ClientRequest {
2025-10-31 17:32:18.168 |       _events: [Object: null prototype],
2025-10-31 17:32:18.168 |       _eventsCount: 7,
2025-10-31 17:32:18.168 |       _maxListeners: undefined,
2025-10-31 17:32:18.168 |       outputData: [],
2025-10-31 17:32:18.168 |       outputSize: 0,
2025-10-31 17:32:18.168 |       writable: true,
2025-10-31 17:32:18.168 |       destroyed: false,
2025-10-31 17:32:18.168 |       _last: true,
2025-10-31 17:32:18.168 |       chunkedEncoding: false,
2025-10-31 17:32:18.168 |       shouldKeepAlive: false,
2025-10-31 17:32:18.168 |       maxRequestsOnConnectionReached: false,
2025-10-31 17:32:18.168 |       _defaultKeepAlive: true,
2025-10-31 17:32:18.168 |       useChunkedEncodingByDefault: false,
2025-10-31 17:32:18.168 |       sendDate: false,
2025-10-31 17:32:18.168 |       _removedConnection: false,
2025-10-31 17:32:18.168 |       _removedContLen: false,
2025-10-31 17:32:18.168 |       _removedTE: false,
2025-10-31 17:32:18.168 |       strictContentLength: false,
2025-10-31 17:32:18.168 |       _contentLength: 0,
2025-10-31 17:32:18.168 |       _hasBody: true,
2025-10-31 17:32:18.168 |       _trailer: '',
2025-10-31 17:32:18.168 |       finished: true,
2025-10-31 17:32:18.168 |       _headerSent: true,
2025-10-31 17:32:18.168 |       _closed: false,
2025-10-31 17:32:18.168 |       socket: [TLSSocket],
2025-10-31 17:32:18.168 |       _header: 'GET /dtc/product/page/v1/landing/653897111489?page=1&size=60 HTTP/1.1\r\n' +
2025-10-31 17:32:18.168 |         'Accept: application/json, text/plain, */*\r\n' +
2025-10-31 17:32:18.168 |         'User-Agent: foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)\r\n' +
2025-10-31 17:32:18.168 |         'authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6ImI4ZWI5ODY1LTdjM2YtNDcxNS05OGVlLTdiYTk1M2MyZDVjNCIsInR5cCI6IkpXVCJ9.eyJhdHlwZSI6ImFub255bW91cyIsImF1ZCI6W10sImNsaWVudF9pZCI6ImVmMDhkYWUyLTYyYWUtNDY3My1iOWVmLTRiNTZmYTJkODFjNCIsImRpZCI6ImU1NzAxMTNlZjEwMjRmMzQiLCJkdHlwZSI6ImFuZHJvaWR0diIsImV4cCI6MTc2MjAzNjIxOCwiaWF0IjoxNzYxOTQ5ODE4LCJpc3MiOiJodHRwczovL2lkLmZveC5jb20iLCJqdGkiOiIwYmM2MDI4MS00MmQ2LTQ1ZGMtODk4Yi1mNWQ0YzE5NDQ3OWUiLCJuYmYiOjE3NjE5NDk4MTgsInBpZCI6ImFuZHJvaWR0dmU1NzAxMTNlZjEwMjRmMzQiLCJzY3AiOlsib3BlbmlkIiwib2ZmbGluZSJdLCJzZGMiOiJ1cy1lYXN0LTEiLCJzaWQiOiI0ODk1ZmY5YS0wZjdhLTQ2YWYtOWRjZS1mNTM0YmM5ZWM4ZjkiLCJzdWIiOiJhbmRyb2lkdHZlNTcwMTEzZWYxMDI0ZjM0IiwidWlkIjoiWVc1a2NtOXBaSFIyWlRVM01ERXhNMlZtTVRBeU5HWXpOQT09IiwidXR5cGUiOiJkZXZpY2VJZCIsInZlciI6Mn0.pnj_9Es3gifSNAYDdzm9OOtyTamzBTVD5HBS45BaAbdDVIHcouJk_g___gTLcHjcr-cgx-Tpb_Tqsb2T7PuJ5pgfQUhY_q42J6Kf0A7aLhekf8vEt2ounUDYD8cY5BCk89KByFDSWWiLhZ4JzJZ3InnM9dm5NZQlUPJIN825G4RxWXwuWx2X2zLgl19l2FdN9S7n-_TQRJfqO3Dk5bYnIrdEckYPrPOTZKkbpmExbR3F2o5F6KjUKFkFnM16oUwuC0EYGIsKHbpiwxeq2BMpSDGGXApAARUC3v2P3_tqkv7SyIZkhkMbioT7Y2dpmid6tjPuP-qsTpqM6_po08tQtQ\r\n' +
2025-10-31 17:32:18.168 |         'x-fox-apikey: Y5st1HoLLOJFlHStA3alOLtGJPS7DUxn\r\n' +
2025-10-31 17:32:18.168 |         'x-platform-location: eyJ2Zm94IjpmYWxzZSwib3ZlcnJpZGUiOmZhbHNlLCJsYXRpdHVkZSI6NDAuODUsImxvbmdpdHVkZSI6LTk2LjcyLCJjaXR5IjoiTGluY29sbiIsInJlZ2lvbiI6Ik5lYnJhc2thIiwiY291bnRyeSI6IlVTIiwiemlwX2NvZGUiOiI2ODUyMSIsInRpbWVfem9uZSI6Ii0wNTowMCIsIm1ldHJvX2NvZGUiOiI3MjIiLCJsb2NhbF9zdGF0aW9uX2NhbGxfc2lnbnMiOlsiS0ZYTCJdLCJuYXRpb25hbF9zdGF0aW9uc19jYWxsX3NpZ24iOlsiQlROIiwiQlROMkZUIiwiQlROM0ZUIiwiQlRONEZUIiwiQlROUDAwMSIsIkJUTlAwMDIiLCJCVE5QMDAzIiwiQlROUDAwNCIsIkJUTlAwMDUiLCJCVE5QMDA2IiwiQlROUDAwNyIsIkJUTlAwMDgiLCJCVE5QMDA5IiwiQlROUDAxMCIsIkJUTlAwMTEiLCJCVE5QMDEyIiwiQlROUDAxMyIsIkJUTlAwMTQiLCJCVE5QMDE1IiwiQlROUDAxNiIsIkJUTlAwMTciLCJCVE5QMDE4IiwiQlROUDAxOSIsIkJUTlAwMjAiLCJCVE5QMDIxIiwiQlROUDAyMiIsIkJUTlAwMjMiLCJCVE5QMDI0IiwiQlROUDAyNSIsIkJUTlAwMjYiLCJCVE5QMDI3IiwiQlROUDAyOCIsIkJUTlAwMjkiLCJCVE5QMDMwIiwiQlROUDAzMSIsIkJUTlAwMzIiLCJCVE5QMDMzIiwiQlROUDAzNCIsIkJUTlAwMzUiLCJCVE5QMDM2IiwiQlROUDAzNyIsIkJUTlAwMzgiLCJCVE5QMDM5IiwiQlROUDA0MCIsIkZBSVRIIiwiRkJOIiwiRkNPUyIsIkZNU0MiLCJGTVNDRk8iLCJGTkMiLCJGTlQiLCJGT1hEIiwiRlMxIiwiRlMyIiwiRlM0SzEiLCJGUzRLMiIsIkZTNEszIiwiRlM0SzUiLCJGU0QiLCJGU0QwMDIiLCJGU0QwMDMiLCJGU0QwMTQiLCJGU0QwMTUiLCJGU0QwMTYiLCJGU0QwMTciLCJGU0QwMTgiLCJGU0QwMTkiLCJGU0QwMjAiLCJGU0ZDIiwiRldYIiwiRlhOMSIsIkZYTjIiLCJGWE4zIiwiRlhONCIsIkZYTjUiLCJGWE42IiwiRlhOQSIsIkZYTkIiLCJHUkRSQU0iLCJLQ1BRRlNUIiwiS0RGV0ZTVCIsIktNU1BGU1QiLCJLUklWRlNUIiwiS1NBWkZTVCIsIktUQkNGU1QiLCJLVFRWRlNUIiwiS1RWVUZTVCIsIkxJVkVOT1ciLCJNVjAwMSIsIk1WMDAyIiwiTVYwMDMiLCJNVjAwNCIsIlNPVUwiLCJUTVoiLCJUTVpGTyIsIldBR0FGU1QiLCJXRkxERlNUIiwiV0lUSUZTVCIsIldKQktGU1QiLCJXTllXRlNUIiwiV09GTEZTVCIsIldUVEdGU1QiLCJXVFZURlNUIiwiV1RYRkZTVCJdLCJwdWJsaWNfaXAiOiIxNjcuMjQ4LjUyLjEwNCIsImNvbm5fc3BlZWQiOiJicm9hZGJhbmQiLCJjb25uX3R5cGUiOiJ3aWZpIn0=\r\n' +
2025-10-31 17:32:18.168 |         'x-fox-zipcode: 68521\r\n' +
2025-10-31 17:32:18.168 |         'x-home-zipcode: 68521\r\n' +
2025-10-31 17:32:18.168 |         'x-fox-home-dma: 722\r\n' +
2025-10-31 17:32:18.168 |         'x-fox-dma: 722\r\n' +
2025-10-31 17:32:18.168 |         'x-fox-content-entitlement: H4sIAAAAAAAA/1TOwQoCMQwE0B9yBffo0YNH/8F202VhNwlNWvv5goIZb/NmSkmz813GrdnGZHY9ui6nb/egVzg5T8l5XgWrXy4pT0UGGDbOkfGNjIX0j9uKJHbkLvm5YyFMSFOpHheXSjDbBfIMWePLg71/8A4AAP///Dq0cBQBAAA=\r\n' +
2025-10-31 17:32:18.168 |         'x-fox-userauth: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6ImI4ZWI5ODY1LTdjM2YtNDcxNS05OGVlLTdiYTk1M2MyZDVjNCIsInR5cCI6IkpXVCJ9.eyJhdHlwZSI6ImFub255bW91cyIsImF1ZCI6W10sImNsaWVudF9pZCI6ImVmMDhkYWUyLTYyYWUtNDY3My1iOWVmLTRiNTZmYTJkODFjNCIsImRpZCI6ImU1NzAxMTNlZjEwMjRmMzQiLCJkdHlwZSI6ImFuZHJvaWR0diIsImV4cCI6MTc2MjAzNjIxOCwiaWF0IjoxNzYxOTQ5ODE4LCJpc3MiOiJodHRwczovL2lkLmZveC5jb20iLCJqdGkiOiIwYmM2MDI4MS00MmQ2LTQ1ZGMtODk4Yi1mNWQ0YzE5NDQ3OWUiLCJuYmYiOjE3NjE5NDk4MTgsInBpZCI6ImFuZHJvaWR0dmU1NzAxMTNlZjEwMjRmMzQiLCJzY3AiOlsib3BlbmlkIiwib2ZmbGluZSJdLCJzZGMiOiJ1cy1lYXN0LTEiLCJzaWQiOiI0ODk1ZmY5YS0wZjdhLTQ2YWYtOWRjZS1mNTM0YmM5ZWM4ZjkiLCJzdWIiOiJhbmRyb2lkdHZlNTcwMTEzZWYxMDI0ZjM0IiwidWlkIjoiWVc1a2NtOXBaSFIyWlRVM01ERXhNMlZtTVRBeU5HWXpOQT09IiwidXR5cGUiOiJkZXZpY2VJZCIsInZlciI6Mn0.pnj_9Es3gifSNAYDdzm9OOtyTamzBTVD5HBS45BaAbdDVIHcouJk_g___gTLcHjcr-cgx-Tpb_Tqsb2T7PuJ5pgfQUhY_q42J6Kf0A7aLhekf8vEt2ounUDYD8cY5BCk89KByFDSWWiLhZ4JzJZ3InnM9dm5NZQlUPJIN825G4RxWXwuWx2X2zLgl19l2FdN9S7n-_TQRJfqO3Dk5bYnIrdEckYPrPOTZKkbpmExbR3F2o5F6KjUKFkFnM16oUwuC0EYGIsKHbpiwxeq2BMpSDGGXApAARUC3v2P3_tqkv7SyIZkhkMbioT7Y2dpmid6tjPuP-qsTpqM6_po08tQtQ\r\n' +
2025-10-31 17:32:18.168 |         'Accept-Encoding: gzip, compress, deflate, br\r\n' +
2025-10-31 17:32:18.168 |         'Host: api.fox.com\r\n' +
2025-10-31 17:32:18.168 |         'Connection: close\r\n' +
2025-10-31 17:32:18.168 |         '\r\n',
2025-10-31 17:32:18.168 |       _keepAliveTimeout: 0,
2025-10-31 17:32:18.168 |       _onPendingData: [Function: nop],
2025-10-31 17:32:18.168 |       agent: [Agent],
2025-10-31 17:32:18.168 |       socketPath: undefined,
2025-10-31 17:32:18.168 |       method: 'GET',
2025-10-31 17:32:18.169 |       maxHeaderSize: undefined,
2025-10-31 17:32:18.169 |       insecureHTTPParser: undefined,
2025-10-31 17:32:18.169 |       joinDuplicateHeaders: undefined,
2025-10-31 17:32:18.169 |       path: '/dtc/product/page/v1/landing/653897111489?page=1&size=60',
2025-10-31 17:32:18.169 |       _ended: false,
2025-10-31 17:32:18.169 |       res: null,
2025-10-31 17:32:18.169 |       aborted: false,
2025-10-31 17:32:18.169 |       timeoutCb: null,
2025-10-31 17:32:18.169 |       upgradeOrConnect: false,
2025-10-31 17:32:18.169 |       parser: [HTTPParser],
2025-10-31 17:32:18.169 |       maxHeadersCount: null,
2025-10-31 17:32:18.169 |       reusedSocket: false,
2025-10-31 17:32:18.169 |       host: 'api.fox.com',
2025-10-31 17:32:18.169 |       protocol: 'https:',
2025-10-31 17:32:18.169 |       _redirectable: [Circular *1],
2025-10-31 17:32:18.169 |       [Symbol(kCapture)]: false,
2025-10-31 17:32:18.169 |       [Symbol(kBytesWritten)]: 0,
2025-10-31 17:32:18.169 |       [Symbol(kNeedDrain)]: false,
2025-10-31 17:32:18.169 |       [Symbol(corked)]: 0,
2025-10-31 17:32:18.169 |       [Symbol(kOutHeaders)]: [Object: null prototype],
2025-10-31 17:32:18.169 |       [Symbol(errored)]: null,
2025-10-31 17:32:18.169 |       [Symbol(kHighWaterMark)]: 16384,
2025-10-31 17:32:18.169 |       [Symbol(kRejectNonStandardBodyWrites)]: false,
2025-10-31 17:32:18.169 |       [Symbol(kUniqueHeaders)]: null
2025-10-31 17:32:18.169 |     },
2025-10-31 17:32:18.169 |     _currentUrl: 'https://api.fox.com/dtc/product/page/v1/landing/653897111489?page=1&size=60',
2025-10-31 17:32:18.169 |     _timeout: null,
2025-10-31 17:32:18.169 |     [Symbol(kCapture)]: false
2025-10-31 17:32:18.169 |   }
2025-10-31 17:32:18.169 | }

Working here, but I did the EPlusTV Rebuild EPG after updating to 4.14.2 before using it.
Also have some recordings setup to test it.

It is getting connection timeouts for basic api calls. Try toggling foxone off and on and log back in. That might help. I just checked after updating and it is working fine for me here.

The change that was just implemented has nothing to do with those errors. if you put https://api.fox.com/dtc/product/config/v1/init does it come back at all?

Since you are not logged in via browser the expected response from that should be:
{"status":false,"error":{"err_code":"ERR_PKG_001","err_str":"empty api key header","err_msg":"Unauthorised"}}

So far the first recording was interrupted.

Channels DVR log

2025/10/31 16:53:28.715016 [DVR] Error running job 1761951570-123 The Masked Singer: Could not fetch playlist from 192.168.1.4:8185: GET: http://192.168.1.4:8185/chunklist/219/S7CFVFkY.m3u8: 404 Not Found
EPLusTV container log
2025-10-31T22:59:30.014983598Z Channel #219 has an active event (Masks at Dawn -- Round 1). Going to start the stream.
2025-10-31T23:00:00.008771059Z Channel #210 has an active event (2025 World Series Pregame). Going to start the stream.
2025-10-31T23:11:56.326409922Z Updating FOX One prelim token
2025-10-31T23:11:56.720324648Z Refreshing TV Provider token (FOX One)
2025-10-31T23:41:56.331931264Z Updating FOX One prelim token
2025-10-31T23:41:56.718557719Z Refreshing TV Provider token (FOX One)
2025-10-31T23:53:23.706344471Z AxiosError: getaddrinfo ENOTFOUND fa.edge.foxdtc.digitalvideoplatform.com
2025-10-31T23:53:23.726067580Z     at Function.AxiosError.from (/app/node_modules/axios/lib/core/AxiosError.js:89:14)
2025-10-31T23:53:23.706440382Z Could not parse chunklist properly!
2025-10-31T23:53:23.726445185Z Could not get chunklist for channel #219.
2025-10-31T23:53:23.726340040Z     at RedirectableRequest.handleRequestError (/app/node_modules/axios/lib/adapters/http.js:533:25)
2025-10-31T23:53:23.726658846Z     at RedirectableRequest.emit (node:events:529:35)
2025-10-31T23:53:23.726710839Z     at RedirectableRequest.emit (node:domain:489:12)
2025-10-31T23:53:23.726756118Z     at ClientRequest.eventHandlers.<computed> (/app/node_modules/follow-redirects/index.js:14:24)
2025-10-31T23:53:23.726812160Z     at ClientRequest.emit (node:events:517:28)
2025-10-31T23:53:23.726863567Z     at ClientRequest.emit (node:domain:489:12)
2025-10-31T23:53:23.726905327Z     at TLSSocket.socketErrorListener (node:_http_client:501:9)
2025-10-31T23:53:23.726951535Z     at TLSSocket.emit (node:events:517:28)
2025-10-31T23:53:23.726993560Z     at TLSSocket.emit (node:domain:489:12) {
2025-10-31T23:53:23.727042543Z   hostname: 'fa.edge.foxdtc.digitalvideoplatform.com',
2025-10-31T23:53:23.727087033Z   syscall: 'getaddrinfo',
2025-10-31T23:53:23.727127648Z   code: 'ENOTFOUND',
2025-10-31T23:53:23.727168727Z   errno: -3007,
2025-10-31T23:53:23.727208761Z   config: {
2025-10-31T23:53:23.727247279Z     transitional: {
2025-10-31T23:53:23.727286777Z       silentJSONParsing: true,
2025-10-31T23:53:23.727338932Z       forcedJSONParsing: true,
2025-10-31T23:53:23.727379892Z       clarifyTimeoutError: false
2025-10-31T23:53:23.727422832Z     },
2025-10-31T23:53:23.727459166Z     adapter: [ 'xhr', 'http' ],
2025-10-31T23:53:23.727499670Z     transformRequest: [ [Function: transformRequest] ],
2025-10-31T23:53:23.727542808Z     transformResponse: [ [Function: transformResponse] ],
2025-10-31T23:53:23.727589905Z     timeout: 60000,
2025-10-31T23:53:23.727647493Z     xsrfCookieName: 'XSRF-TOKEN',
2025-10-31T23:53:23.727691286Z     xsrfHeaderName: 'X-XSRF-TOKEN',
2025-10-31T23:53:23.727733971Z     maxContentLength: -1,
2025-10-31T23:53:23.727774620Z     maxBodyLength: -1,
2025-10-31T23:53:23.727821872Z     env: { FormData: [Function [FormData]], Blob: [class Blob] },
2025-10-31T23:53:23.727869657Z     validateStatus: [Function: validateStatus],
2025-10-31T23:53:23.727912868Z     headers: AxiosHeaders {
2025-10-31T23:53:23.727957163Z       Accept: 'application/json, text/plain, */*',
2025-10-31T23:53:23.728002572Z       'Accept-Encoding': 'identity',
2025-10-31T23:53:23.728045584Z       'User-Agent': 'foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)'
2025-10-31T23:53:23.728196358Z     },
2025-10-31T23:53:23.728243680Z     method: 'get',
2025-10-31T23:53:23.728284371Z     url: 'https://fa.edge.foxdtc.digitalvideoplatform.com/1762037970_e72a11bf5d5691fb234c5ccc3810244162899dd9/*~/live-dr/fmsc-ue2/index_7.m3u8',
2025-10-31T23:53:23.728343039Z     data: undefined
2025-10-31T23:53:23.728384441Z   },
2025-10-31T23:53:23.728420963Z   request: <ref *1> Writable {
2025-10-31T23:53:23.728483212Z     _writableState: WritableState {
2025-10-31T23:53:23.728531645Z       objectMode: false,
2025-10-31T23:53:23.728575203Z       highWaterMark: 16384,
2025-10-31T23:53:23.728615977Z       finalCalled: false,
2025-10-31T23:53:23.728674363Z       needDrain: false,
2025-10-31T23:53:23.728714245Z       ending: false,
2025-10-31T23:53:23.728756131Z       ended: false,
2025-10-31T23:53:23.728795388Z       finished: false,
2025-10-31T23:53:23.728841589Z       destroyed: false,
2025-10-31T23:53:23.728882118Z       decodeStrings: true,
2025-10-31T23:53:23.728923259Z       defaultEncoding: 'utf8',
2025-10-31T23:53:23.728963277Z       length: 0,
2025-10-31T23:53:23.729004706Z       writing: false,
2025-10-31T23:53:23.729049032Z       corked: 0,
2025-10-31T23:53:23.729089370Z       sync: true,
2025-10-31T23:53:23.729132229Z       bufferProcessing: false,
2025-10-31T23:53:23.729172688Z       onwrite: [Function: bound onwrite],
2025-10-31T23:53:23.729217659Z       writecb: null,
2025-10-31T23:53:23.729258444Z       writelen: 0,
2025-10-31T23:53:23.729297138Z       afterWriteTickInfo: null,
2025-10-31T23:53:23.729336446Z       buffered: [],
2025-10-31T23:53:23.729375035Z       bufferedIndex: 0,
2025-10-31T23:53:23.729415162Z       allBuffers: true,
2025-10-31T23:53:23.729454832Z       allNoop: true,
2025-10-31T23:53:23.729494583Z       pendingcb: 0,
2025-10-31T23:53:23.729533256Z       constructed: true,
2025-10-31T23:53:23.729573124Z       prefinished: false,
2025-10-31T23:53:23.729614254Z       errorEmitted: false,
2025-10-31T23:53:23.729669633Z       emitClose: true,
2025-10-31T23:53:23.729709347Z       autoDestroy: true,
2025-10-31T23:53:23.729753865Z       errored: null,
2025-10-31T23:53:23.729793641Z       closed: false,
2025-10-31T23:53:23.729834398Z       closeEmitted: false,
2025-10-31T23:53:23.729874652Z       [Symbol(kOnFinished)]: []
2025-10-31T23:53:23.729914919Z     },
2025-10-31T23:53:23.729951329Z     _events: [Object: null prototype] {
2025-10-31T23:53:23.729994471Z       response: [Function: handleResponse],
2025-10-31T23:53:23.730036769Z       error: [Function: handleRequestError],
2025-10-31T23:53:23.730077474Z       socket: [Array]
2025-10-31T23:53:23.730117848Z     },
2025-10-31T23:53:23.730158183Z     _eventsCount: 3,
2025-10-31T23:53:23.730197665Z     _maxListeners: undefined,
2025-10-31T23:53:23.730242685Z     _options: {
2025-10-31T23:53:23.730281155Z       maxRedirects: 21,
2025-10-31T23:53:23.730320395Z       maxBodyLength: Infinity,
2025-10-31T23:53:23.730361774Z       protocol: 'https:',
2025-10-31T23:53:23.730406886Z       path: '/1762037970_e72a11bf5d5691fb234c5ccc3810244162899dd9/*~/live-dr/fmsc-ue2/index_7.m3u8',
2025-10-31T23:53:23.730463165Z       method: 'GET',
2025-10-31T23:53:23.730502450Z       headers: [Object: null prototype],
2025-10-31T23:53:23.730544861Z       agents: [Object],
2025-10-31T23:53:23.730584508Z       auth: undefined,
2025-10-31T23:53:23.730642827Z       beforeRedirect: [Function: dispatchBeforeRedirect],
2025-10-31T23:53:23.730686832Z       beforeRedirects: [Object],
2025-10-31T23:53:23.730725723Z       hostname: 'fa.edge.foxdtc.digitalvideoplatform.com',
2025-10-31T23:53:23.730769858Z       port: '',
2025-10-31T23:53:23.730810713Z       agent: undefined,
2025-10-31T23:53:23.730850050Z       nativeProtocols: [Object],
2025-10-31T23:53:23.730890973Z       pathname: '/1762037970_e72a11bf5d5691fb234c5ccc3810244162899dd9/*~/live-dr/fmsc-ue2/index_7.m3u8'
2025-10-31T23:53:23.730944693Z     },
2025-10-31T23:53:23.730982456Z     _ended: true,
2025-10-31T23:53:23.731022995Z     _ending: true,
2025-10-31T23:53:23.731063034Z     _redirectCount: 0,
2025-10-31T23:53:23.731103336Z     _redirects: [],
2025-10-31T23:53:23.731165231Z     _requestBodyLength: 0,
2025-10-31T23:53:23.731205658Z     _requestBodyBuffers: [],
2025-10-31T23:53:23.731250616Z     _onNativeResponse: [Function (anonymous)],
2025-10-31T23:53:23.731299649Z     _currentRequest: ClientRequest {
2025-10-31T23:53:23.731345970Z       _events: [Object: null prototype],
2025-10-31T23:53:23.731392917Z       _eventsCount: 7,
2025-10-31T23:53:23.731437397Z       _maxListeners: undefined,
2025-10-31T23:53:23.731477565Z       outputData: [],
2025-10-31T23:53:23.731521377Z       outputSize: 0,
2025-10-31T23:53:23.731561246Z       writable: true,
2025-10-31T23:53:23.731610793Z       destroyed: false,
2025-10-31T23:53:23.731671873Z       _last: true,
2025-10-31T23:53:23.731721903Z       chunkedEncoding: false,
2025-10-31T23:53:23.731762437Z       shouldKeepAlive: false,
2025-10-31T23:53:23.731807256Z       maxRequestsOnConnectionReached: false,
2025-10-31T23:53:23.731847386Z       _defaultKeepAlive: true,
2025-10-31T23:53:23.731899529Z       useChunkedEncodingByDefault: false,
2025-10-31T23:53:23.732229496Z       sendDate: false,
2025-10-31T23:53:23.732302994Z       _removedConnection: false,
2025-10-31T23:53:23.732353589Z       _removedContLen: false,
2025-10-31T23:53:23.732393438Z       _removedTE: false,
2025-10-31T23:53:23.732433064Z       strictContentLength: false,
2025-10-31T23:53:23.732476208Z       _contentLength: 0,
2025-10-31T23:53:23.732514912Z       _hasBody: true,
2025-10-31T23:53:23.732555210Z       _trailer: '',
2025-10-31T23:53:23.732593053Z       finished: true,
2025-10-31T23:53:23.732662702Z       _headerSent: true,
2025-10-31T23:53:23.732704487Z       _closed: false,
2025-10-31T23:53:23.732743852Z       socket: [TLSSocket],
2025-10-31T23:53:23.732783299Z       _header: 'GET /1762037970_e72a11bf5d5691fb234c5ccc3810244162899dd9/*~/live-dr/fmsc-ue2/index_7.m3u8 HTTP/1.1\r\n' +
2025-10-31T23:53:23.732838888Z         'Accept: application/json, text/plain, */*\r\n' +
2025-10-31T23:53:23.732893391Z         'Accept-Encoding: identity\r\n' +
2025-10-31T23:53:23.732936817Z         'User-Agent: foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)\r\n' +
2025-10-31T23:53:23.733002076Z         'Host: fa.edge.foxdtc.digitalvideoplatform.com\r\n' +
2025-10-31T23:53:23.733049750Z         'Connection: close\r\n' +
2025-10-31T23:53:23.733090440Z         '\r\n',
2025-10-31T23:53:23.733128281Z       _keepAliveTimeout: 0,
2025-10-31T23:53:23.733166590Z       _onPendingData: [Function: nop],
2025-10-31T23:53:23.733207258Z       agent: [Agent],
2025-10-31T23:53:23.733247891Z       socketPath: undefined,
2025-10-31T23:53:23.733288231Z       method: 'GET',
2025-10-31T23:53:23.733326565Z       maxHeaderSize: undefined,
2025-10-31T23:53:23.733369159Z       insecureHTTPParser: undefined,
2025-10-31T23:53:23.733409663Z       joinDuplicateHeaders: undefined,
2025-10-31T23:53:23.733453168Z       path: '/1762037970_e72a11bf5d5691fb234c5ccc3810244162899dd9/*~/live-dr/fmsc-ue2/index_7.m3u8',
2025-10-31T23:53:23.733496437Z       _ended: false,
2025-10-31T23:53:23.733535324Z       res: null,
2025-10-31T23:53:23.733574775Z       aborted: false,
2025-10-31T23:53:23.733614192Z       timeoutCb: null,
2025-10-31T23:53:23.733673272Z       upgradeOrConnect: false,
2025-10-31T23:53:23.733713013Z       parser: null,
2025-10-31T23:53:23.733751869Z       maxHeadersCount: null,
2025-10-31T23:53:23.733791476Z       reusedSocket: false,
2025-10-31T23:53:23.733832403Z       host: 'fa.edge.foxdtc.digitalvideoplatform.com',
2025-10-31T23:53:23.733873098Z       protocol: 'https:',
2025-10-31T23:53:23.733911344Z       _redirectable: [Circular *1],
2025-10-31T23:53:23.733951673Z       [Symbol(kCapture)]: false,
2025-10-31T23:53:23.733992157Z       [Symbol(kBytesWritten)]: 0,
2025-10-31T23:53:23.734033923Z       [Symbol(kNeedDrain)]: false,
2025-10-31T23:53:23.734074701Z       [Symbol(corked)]: 0,
2025-10-31T23:53:23.734113699Z       [Symbol(kOutHeaders)]: [Object: null prototype],
2025-10-31T23:53:23.734155143Z       [Symbol(errored)]: null,
2025-10-31T23:53:23.734194758Z       [Symbol(kHighWaterMark)]: 16384,
2025-10-31T23:53:23.734234287Z       [Symbol(kRejectNonStandardBodyWrites)]: false,
2025-10-31T23:53:23.734275369Z       [Symbol(kUniqueHeaders)]: null
2025-10-31T23:53:23.734315215Z     },
2025-10-31T23:53:23.734351041Z     _currentUrl: 'https://fa.edge.foxdtc.digitalvideoplatform.com/1762037970_e72a11bf5d5691fb234c5ccc3810244162899dd9/*~/live-dr/fmsc-ue2/index_7.m3u8',
2025-10-31T23:53:23.734399128Z     _timeout: null,
2025-10-31T23:53:23.734440233Z     [Symbol(kCapture)]: false
2025-10-31T23:53:23.734479244Z   },
2025-10-31T23:53:23.734520831Z   cause: Error: getaddrinfo ENOTFOUND fa.edge.foxdtc.digitalvideoplatform.com
2025-10-31T23:53:23.734566088Z       at GetAddrInfoReqWrap.onlookup [as oncomplete] (node:dns:107:26) {
2025-10-31T23:53:23.734626376Z     errno: -3007,
2025-10-31T23:53:23.734666050Z     code: 'ENOTFOUND',
2025-10-31T23:53:23.734705276Z     syscall: 'getaddrinfo',
2025-10-31T23:53:23.734743711Z     hostname: 'fa.edge.foxdtc.digitalvideoplatform.com'
2025-10-31T23:53:23.734784439Z   }
2025-10-31T23:53:23.734819950Z }
2025-10-31T23:53:29.824322569Z Channel #219 has an active event (The Double Unmasking -- Round 1 Finals). Going to start the stream.

World Series recording was just interrupted now too.

2025/10/31 17:53:45.680458 [DVR] Error running job 1761955200-ch43 2025 World Series: Could not fetch playlist from 192.168.1.4:8185: GET: http://192.168.1.4:8185/chunklist/210/8nK4XubR.m3u8: 404 Not Found
EPLusTV container log
2025-11-01T00:53:40.417924217Z AxiosError: getaddrinfo ENOTFOUND fa.edge.foxdtc.digitalvideoplatform.com
2025-11-01T00:53:40.418434509Z     at Function.AxiosError.from (/app/node_modules/axios/lib/core/AxiosError.js:89:14)
2025-11-01T00:53:40.418540775Z     at RedirectableRequest.handleRequestError (/app/node_modules/axios/lib/adapters/http.js:533:25)
2025-11-01T00:53:40.418593066Z     at RedirectableRequest.emit (node:events:529:35)
2025-11-01T00:53:40.418679163Z     at RedirectableRequest.emit (node:domain:489:12)
2025-11-01T00:53:40.418799569Z     at ClientRequest.eventHandlers.<computed> (/app/node_modules/follow-redirects/index.js:14:24)
2025-11-01T00:53:40.417957699Z Could not parse chunklist properly!
2025-11-01T00:53:40.418980509Z Could not get chunklist for channel #210.
2025-11-01T00:53:40.418865760Z     at ClientRequest.emit (node:events:517:28)
2025-11-01T00:53:40.419076731Z     at ClientRequest.emit (node:domain:489:12)
2025-11-01T00:53:40.419118610Z     at TLSSocket.socketErrorListener (node:_http_client:501:9)
2025-11-01T00:53:40.419164266Z     at TLSSocket.emit (node:events:517:28)
2025-11-01T00:53:40.419205748Z     at TLSSocket.emit (node:domain:489:12) {
2025-11-01T00:53:40.419246502Z   hostname: 'fa.edge.foxdtc.digitalvideoplatform.com',
2025-11-01T00:53:40.419295630Z   syscall: 'getaddrinfo',
2025-11-01T00:53:40.419336892Z   code: 'ENOTFOUND',
2025-11-01T00:53:40.419380375Z   errno: -3007,
2025-11-01T00:53:40.419420293Z   config: {
2025-11-01T00:53:40.419465913Z     transitional: {
2025-11-01T00:53:40.419507727Z       silentJSONParsing: true,
2025-11-01T00:53:40.419559524Z       forcedJSONParsing: true,
2025-11-01T00:53:40.419600983Z       clarifyTimeoutError: false
2025-11-01T00:53:40.419654722Z     },
2025-11-01T00:53:40.419691576Z     adapter: [ 'xhr', 'http' ],
2025-11-01T00:53:40.419731379Z     transformRequest: [ [Function: transformRequest] ],
2025-11-01T00:53:40.419773202Z     transformResponse: [ [Function: transformResponse] ],
2025-11-01T00:53:40.419814970Z     timeout: 60000,
2025-11-01T00:53:40.419854721Z     xsrfCookieName: 'XSRF-TOKEN',
2025-11-01T00:53:40.419895858Z     xsrfHeaderName: 'X-XSRF-TOKEN',
2025-11-01T00:53:40.419936647Z     maxContentLength: -1,
2025-11-01T00:53:40.419976219Z     maxBodyLength: -1,
2025-11-01T00:53:40.420016197Z     env: { FormData: [Function [FormData]], Blob: [class Blob] },
2025-11-01T00:53:40.420061603Z     validateStatus: [Function: validateStatus],
2025-11-01T00:53:40.420102619Z     headers: AxiosHeaders {
2025-11-01T00:53:40.420142816Z       Accept: 'application/json, text/plain, */*',
2025-11-01T00:53:40.420186218Z       'Accept-Encoding': 'identity',
2025-11-01T00:53:40.420231076Z       'User-Agent': 'foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)'
2025-11-01T00:53:40.420294139Z     },
2025-11-01T00:53:40.420332295Z     method: 'get',
2025-11-01T00:53:40.420372632Z     url: 'https://fa.edge.foxdtc.digitalvideoplatform.com/1762038000_abc9eb99858f0365397eb06e135212dc4d549007/*~/live-dr/ktxl-ue2/index_2.m3u8?zipcode=95630',
2025-11-01T00:53:40.420429166Z     data: undefined
2025-11-01T00:53:40.420535657Z   },
2025-11-01T00:53:40.420576941Z   request: <ref *1> Writable {
2025-11-01T00:53:40.420664791Z     _writableState: WritableState {
2025-11-01T00:53:40.420711476Z       objectMode: false,
2025-11-01T00:53:40.420751978Z       highWaterMark: 16384,
2025-11-01T00:53:40.420791598Z       finalCalled: false,
2025-11-01T00:53:40.420832388Z       needDrain: false,
2025-11-01T00:53:40.420880000Z       ending: false,
2025-11-01T00:53:40.420920798Z       ended: false,
2025-11-01T00:53:40.420973564Z       finished: false,
2025-11-01T00:53:40.421015609Z       destroyed: false,
2025-11-01T00:53:40.421056883Z       decodeStrings: true,
2025-11-01T00:53:40.421098582Z       defaultEncoding: 'utf8',
2025-11-01T00:53:40.421139280Z       length: 0,
2025-11-01T00:53:40.421178908Z       writing: false,
2025-11-01T00:53:40.421218989Z       corked: 0,
2025-11-01T00:53:40.421261161Z       sync: true,
2025-11-01T00:53:40.421300640Z       bufferProcessing: false,
2025-11-01T00:53:40.421340789Z       onwrite: [Function: bound onwrite],
2025-11-01T00:53:40.421382644Z       writecb: null,
2025-11-01T00:53:40.421421405Z       writelen: 0,
2025-11-01T00:53:40.421462533Z       afterWriteTickInfo: null,
2025-11-01T00:53:40.421502119Z       buffered: [],
2025-11-01T00:53:40.421541129Z       bufferedIndex: 0,
2025-11-01T00:53:40.421585297Z       allBuffers: true,
2025-11-01T00:53:40.421656065Z       allNoop: true,
2025-11-01T00:53:40.421698401Z       pendingcb: 0,
2025-11-01T00:53:40.421739609Z       constructed: true,
2025-11-01T00:53:40.421779002Z       prefinished: false,
2025-11-01T00:53:40.421817928Z       errorEmitted: false,
2025-11-01T00:53:40.421860129Z       emitClose: true,
2025-11-01T00:53:40.421899098Z       autoDestroy: true,
2025-11-01T00:53:40.421937884Z       errored: null,
2025-11-01T00:53:40.421976636Z       closed: false,
2025-11-01T00:53:40.422015639Z       closeEmitted: false,
2025-11-01T00:53:40.422054537Z       [Symbol(kOnFinished)]: []
2025-11-01T00:53:40.422095476Z     },
2025-11-01T00:53:40.422131401Z     _events: [Object: null prototype] {
2025-11-01T00:53:40.422174417Z       response: [Function: handleResponse],
2025-11-01T00:53:40.422215276Z       error: [Function: handleRequestError],
2025-11-01T00:53:40.422257909Z       socket: [Array]
2025-11-01T00:53:40.422303674Z     },
2025-11-01T00:53:40.422339540Z     _eventsCount: 3,
2025-11-01T00:53:40.422378816Z     _maxListeners: undefined,
2025-11-01T00:53:40.422418559Z     _options: {
2025-11-01T00:53:40.422455981Z       maxRedirects: 21,
2025-11-01T00:53:40.422495350Z       maxBodyLength: Infinity,
2025-11-01T00:53:40.422535278Z       protocol: 'https:',
2025-11-01T00:53:40.422575116Z       path: '/1762038000_abc9eb99858f0365397eb06e135212dc4d549007/*~/live-dr/ktxl-ue2/index_2.m3u8?zipcode=95630',
2025-11-01T00:53:40.422633505Z       method: 'GET',
2025-11-01T00:53:40.422673164Z       headers: [Object: null prototype],
2025-11-01T00:53:40.422712924Z       agents: [Object],
2025-11-01T00:53:40.422751242Z       auth: undefined,
2025-11-01T00:53:40.422791946Z       beforeRedirect: [Function: dispatchBeforeRedirect],
2025-11-01T00:53:40.422833842Z       beforeRedirects: [Object],
2025-11-01T00:53:40.422879647Z       hostname: 'fa.edge.foxdtc.digitalvideoplatform.com',
2025-11-01T00:53:40.422923495Z       port: '',
2025-11-01T00:53:40.422962480Z       agent: undefined,
2025-11-01T00:53:40.423000905Z       nativeProtocols: [Object],
2025-11-01T00:53:40.423040995Z       pathname: '/1762038000_abc9eb99858f0365397eb06e135212dc4d549007/*~/live-dr/ktxl-ue2/index_2.m3u8',
2025-11-01T00:53:40.423085539Z       search: '?zipcode=95630'
2025-11-01T00:53:40.423125266Z     },
2025-11-01T00:53:40.423160782Z     _ended: true,
2025-11-01T00:53:40.423199518Z     _ending: true,
2025-11-01T00:53:40.423238736Z     _redirectCount: 0,
2025-11-01T00:53:40.423277135Z     _redirects: [],
2025-11-01T00:53:40.423314613Z     _requestBodyLength: 0,
2025-11-01T00:53:40.423354332Z     _requestBodyBuffers: [],
2025-11-01T00:53:40.423393671Z     _onNativeResponse: [Function (anonymous)],
2025-11-01T00:53:40.423437928Z     _currentRequest: ClientRequest {
2025-11-01T00:53:40.423478594Z       _events: [Object: null prototype],
2025-11-01T00:53:40.423519779Z       _eventsCount: 7,
2025-11-01T00:53:40.423559159Z       _maxListeners: undefined,
2025-11-01T00:53:40.423602483Z       outputData: [],
2025-11-01T00:53:40.423648492Z       outputSize: 0,
2025-11-01T00:53:40.423687370Z       writable: true,
2025-11-01T00:53:40.423726151Z       destroyed: false,
2025-11-01T00:53:40.423764938Z       _last: true,
2025-11-01T00:53:40.423805141Z       chunkedEncoding: false,
2025-11-01T00:53:40.423845111Z       shouldKeepAlive: false,
2025-11-01T00:53:40.423886815Z       maxRequestsOnConnectionReached: false,
2025-11-01T00:53:40.423926983Z       _defaultKeepAlive: true,
2025-11-01T00:53:40.423966030Z       useChunkedEncodingByDefault: false,
2025-11-01T00:53:40.424005602Z       sendDate: false,
2025-11-01T00:53:40.424047092Z       _removedConnection: false,
2025-11-01T00:53:40.424086541Z       _removedContLen: false,
2025-11-01T00:53:40.424128238Z       _removedTE: false,
2025-11-01T00:53:40.424167090Z       strictContentLength: false,
2025-11-01T00:53:40.424206960Z       _contentLength: 0,
2025-11-01T00:53:40.424247341Z       _hasBody: true,
2025-11-01T00:53:40.424286779Z       _trailer: '',
2025-11-01T00:53:40.424324855Z       finished: true,
2025-11-01T00:53:40.424362694Z       _headerSent: true,
2025-11-01T00:53:40.424401407Z       _closed: false,
2025-11-01T00:53:40.424440494Z       socket: [TLSSocket],
2025-11-01T00:53:40.424478644Z       _header: 'GET /1762038000_abc9eb99858f0365397eb06e135212dc4d549007/*~/live-dr/ktxl-ue2/index_2.m3u8?zipcode=95630 HTTP/1.1\r\n' +
2025-11-01T00:53:40.424528544Z         'Accept: application/json, text/plain, */*\r\n' +
2025-11-01T00:53:40.424570875Z         'Accept-Encoding: identity\r\n' +
2025-11-01T00:53:40.424611737Z         'User-Agent: foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)\r\n' +
2025-11-01T00:53:40.424674886Z         'Host: fa.edge.foxdtc.digitalvideoplatform.com\r\n' +
2025-11-01T00:53:40.424718897Z         'Connection: close\r\n' +
2025-11-01T00:53:40.424759792Z         '\r\n',
2025-11-01T00:53:40.424796912Z       _keepAliveTimeout: 0,
2025-11-01T00:53:40.424835062Z       _onPendingData: [Function: nop],
2025-11-01T00:53:40.424879312Z       agent: [Agent],
2025-11-01T00:53:40.424924482Z       socketPath: undefined,
2025-11-01T00:53:40.424964912Z       method: 'GET',
2025-11-01T00:53:40.425003999Z       maxHeaderSize: undefined,
2025-11-01T00:53:40.425044182Z       insecureHTTPParser: undefined,
2025-11-01T00:53:40.425084061Z       joinDuplicateHeaders: undefined,
2025-11-01T00:53:40.425126435Z       path: '/1762038000_abc9eb99858f0365397eb06e135212dc4d549007/*~/live-dr/ktxl-ue2/index_2.m3u8?zipcode=95630',
2025-11-01T00:53:40.425171452Z       _ended: false,
2025-11-01T00:53:40.425211275Z       res: null,
2025-11-01T00:53:40.425250426Z       aborted: false,
2025-11-01T00:53:40.425289441Z       timeoutCb: null,
2025-11-01T00:53:40.425328066Z       upgradeOrConnect: false,
2025-11-01T00:53:40.425369935Z       parser: null,
2025-11-01T00:53:40.425408314Z       maxHeadersCount: null,
2025-11-01T00:53:40.425446996Z       reusedSocket: false,
2025-11-01T00:53:40.425485942Z       host: 'fa.edge.foxdtc.digitalvideoplatform.com',
2025-11-01T00:53:40.425526704Z       protocol: 'https:',
2025-11-01T00:53:40.425564523Z       _redirectable: [Circular *1],
2025-11-01T00:53:40.425603940Z       [Symbol(kCapture)]: false,
2025-11-01T00:53:40.425655428Z       [Symbol(kBytesWritten)]: 0,
2025-11-01T00:53:40.425694988Z       [Symbol(kNeedDrain)]: false,
2025-11-01T00:53:40.425738418Z       [Symbol(corked)]: 0,
2025-11-01T00:53:40.425777672Z       [Symbol(kOutHeaders)]: [Object: null prototype],
2025-11-01T00:53:40.425821329Z       [Symbol(errored)]: null,
2025-11-01T00:53:40.425860320Z       [Symbol(kHighWaterMark)]: 16384,
2025-11-01T00:53:40.425900731Z       [Symbol(kRejectNonStandardBodyWrites)]: false,
2025-11-01T00:53:40.425941831Z       [Symbol(kUniqueHeaders)]: null
2025-11-01T00:53:40.425983531Z     },
2025-11-01T00:53:40.426022448Z     _currentUrl: 'https://fa.edge.foxdtc.digitalvideoplatform.com/1762038000_abc9eb99858f0365397eb06e135212dc4d549007/*~/live-dr/ktxl-ue2/index_2.m3u8?zipcode=95630',
2025-11-01T00:53:40.426072264Z     _timeout: null,
2025-11-01T00:53:40.426111418Z     [Symbol(kCapture)]: false
2025-11-01T00:53:40.426150247Z   },
2025-11-01T00:53:40.426186121Z   cause: Error: getaddrinfo ENOTFOUND fa.edge.foxdtc.digitalvideoplatform.com
2025-11-01T00:53:40.426235526Z       at GetAddrInfoReqWrap.onlookup [as oncomplete] (node:dns:107:26) {
2025-11-01T00:53:40.426309828Z     errno: -3007,
2025-11-01T00:53:40.426353051Z     code: 'ENOTFOUND',
2025-11-01T00:53:40.426393758Z     syscall: 'getaddrinfo',
2025-11-01T00:53:40.426432760Z     hostname: 'fa.edge.foxdtc.digitalvideoplatform.com'
2025-11-01T00:53:40.426473397Z   }
2025-11-01T00:53:40.426509341Z }
2025-11-01T00:53:46.762744081Z Channel #210 has an active event (2025 World Series: Game 6 - Dodgers at Blue Jays). Going to start the stream.

Taking a break now so I can actually watch some things.

That’s odd. When you get a chance later can you look through the container logs for the related errors and post here?

That was it for today (2 of 6 interrupted).

I'm thinking my pinchflat container (which has been crashing a lot) running on the same device may be a resource hog, so just stopped it for now.
Will see how recordings go tomorrow with that container stopped :crossed_fingers:

Yeah...pinchflat uses wayy too much resources to my taste so thats why I use ytdl-sub instead. You may need to set a memory limit for pinchflat

Sorry got busy with Halloween activities.

Did all you suggested.

I did get get this as you predicted: {"status":false,"error":{"err_code":"ERR_PKG_001","err_str":"empty api key header","err_msg":"Unauthorised"}}

Been testing some Fox News Channel today and it seems to be dying out again like yesterday...

2025-11-01 13:02:26.768 | === Done building the schedule ===
2025-11-01 13:03:01.534 | Channel #1 has an active event (LiveNOW from FOX). Going to start the stream.
2025-11-01 13:03:10.205 | Channel #2 has an active event (College Football - West Virginia at Houston). Going to start the stream.
2025-11-01 13:03:15.274 | Channel #3 has an active event (College Football - Penn State at Ohio State). Going to start the stream.
2025-11-01 13:03:16.119 | Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01 13:03:20.450 | Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01 13:03:21.718 | Channel #4 has an active event (Horse Racing - America's Day At the Races). Going to start the stream.
2025-11-01 13:03:22.433 | Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01 13:03:25.325 | Channel #5 has an active event (Fox News Live). Going to start the stream.
2025-11-01 13:07:45.617 | AxiosError: timeout of 60000ms exceeded
2025-11-01 13:07:45.620 |     at RedirectableRequest.handleRequestTimeout (/app/node_modules/axios/lib/adapters/http.js:570:16)
2025-11-01 13:07:45.620 |     at RedirectableRequest.emit (node:events:517:28)
2025-11-01 13:07:45.620 |     at RedirectableRequest.emit (node:domain:489:12)
2025-11-01 13:07:45.620 |     at Timeout.<anonymous> (/app/node_modules/follow-redirects/index.js:169:12)
2025-11-01 13:07:45.620 |     at listOnTimeout (node:internal/timers:569:17)
2025-11-01 13:07:45.620 |     at processTimers (node:internal/timers:512:7) {
2025-11-01 13:07:45.620 |   code: 'ECONNABORTED',
2025-11-01 13:07:45.620 |   config: {
2025-11-01 13:07:45.620 |     transitional: {
2025-11-01 13:07:45.620 |       silentJSONParsing: true,
2025-11-01 13:07:45.620 |       forcedJSONParsing: true,
2025-11-01 13:07:45.620 |       clarifyTimeoutError: false
2025-11-01 13:07:45.620 |     },
2025-11-01 13:07:45.620 |     adapter: [ 'xhr', 'http' ],
2025-11-01 13:07:45.620 |     transformRequest: [ [Function: transformRequest] ],
2025-11-01 13:07:45.620 |     transformResponse: [ [Function: transformResponse] ],
2025-11-01 13:07:45.620 |     timeout: 60000,
2025-11-01 13:07:45.620 |     xsrfCookieName: 'XSRF-TOKEN',
2025-11-01 13:07:45.620 |     xsrfHeaderName: 'X-XSRF-TOKEN',
2025-11-01 13:07:45.620 |     maxContentLength: -1,
2025-11-01 13:07:45.620 |     maxBodyLength: -1,
2025-11-01 13:07:45.620 |     env: { FormData: [Function [FormData]], Blob: [class Blob] },
2025-11-01 13:07:45.620 |     validateStatus: [Function: validateStatus],
2025-11-01 13:07:45.620 |     headers: AxiosHeaders {
2025-11-01 13:07:45.620 |       Accept: 'application/json, text/plain, */*',
2025-11-01 13:07:45.620 |       'Accept-Encoding': 'identity',
2025-11-01 13:07:45.620 |       'User-Agent': 'foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)'
2025-11-01 13:07:45.620 |     },
2025-11-01 13:07:45.620 |     method: 'get',
2025-11-01 13:07:45.620 |     url: 'https://fa.edge.foxdtc.digitalvideoplatform.com/1762106604_ac9c687cbde21ac21e43be8a369300bec483be5d/*~/live-dr/fnc-ue2/index_7.m3u8',
2025-11-01 13:07:45.620 |     data: undefined
2025-11-01 13:07:45.620 |   },
2025-11-01 13:07:45.620 |   request: <ref *1> Writable {
2025-11-01 13:07:45.620 |     _writableState: WritableState {
2025-11-01 13:07:45.620 |       objectMode: false,
2025-11-01 13:07:45.620 |       highWaterMark: 16384,
2025-11-01 13:07:45.620 |       finalCalled: false,
2025-11-01 13:07:45.620 |       needDrain: false,
2025-11-01 13:07:45.620 |       ending: false,
2025-11-01 13:07:45.620 |       ended: false,
2025-11-01 13:07:45.620 |       finished: false,
2025-11-01 13:07:45.620 |       destroyed: false,
2025-11-01 13:07:45.620 |       decodeStrings: true,
2025-11-01 13:07:45.620 |       defaultEncoding: 'utf8',
2025-11-01 13:07:45.620 |       length: 0,
2025-11-01 13:07:45.620 |       writing: false,
2025-11-01 13:07:45.620 |       corked: 0,
2025-11-01 13:07:45.620 |       sync: true,
2025-11-01 13:07:45.620 |       bufferProcessing: false,
2025-11-01 13:07:45.620 |       onwrite: [Function: bound onwrite],
2025-11-01 13:07:45.620 |       writecb: null,
2025-11-01 13:07:45.620 |       writelen: 0,
2025-11-01 13:07:45.620 |       afterWriteTickInfo: null,
2025-11-01 13:07:45.620 |       buffered: [],
2025-11-01 13:07:45.620 |       bufferedIndex: 0,
2025-11-01 13:07:45.620 |       allBuffers: true,
2025-11-01 13:07:45.620 |       allNoop: true,
2025-11-01 13:07:45.620 |       pendingcb: 0,
2025-11-01 13:07:45.620 |       constructed: true,
2025-11-01 13:07:45.620 |       prefinished: false,
2025-11-01 13:07:45.620 |       errorEmitted: false,
2025-11-01 13:07:45.620 |       emitClose: true,
2025-11-01 13:07:45.620 |       autoDestroy: true,
2025-11-01 13:07:45.620 |       errored: null,
2025-11-01 13:07:45.620 |       closed: false,
2025-11-01 13:07:45.620 |       closeEmitted: false,
2025-11-01 13:07:45.620 |       [Symbol(kOnFinished)]: []
2025-11-01 13:07:45.620 |     },
2025-11-01 13:07:45.620 |     _events: [Object: null prototype] {
2025-11-01 13:07:45.620 |       response: [Function: handleResponse],
2025-11-01 13:07:45.620 |       error: [Function: handleRequestError],
2025-11-01 13:07:45.620 |       socket: [Array]
2025-11-01 13:07:45.620 |     },
2025-11-01 13:07:45.620 |     _eventsCount: 3,
2025-11-01 13:07:45.620 |     _maxListeners: undefined,
2025-11-01 13:07:45.620 |     _options: {
2025-11-01 13:07:45.620 |       maxRedirects: 21,
2025-11-01 13:07:45.620 |       maxBodyLength: Infinity,
2025-11-01 13:07:45.620 |       protocol: 'https:',
2025-11-01 13:07:45.620 |       path: '/1762106604_ac9c687cbde21ac21e43be8a369300bec483be5d/*~/live-dr/fnc-ue2/index_7.m3u8',
2025-11-01 13:07:45.620 |       method: 'GET',
2025-11-01 13:07:45.620 |       headers: [Object: null prototype],
2025-11-01 13:07:45.620 |       agents: [Object],
2025-11-01 13:07:45.620 |       auth: undefined,
2025-11-01 13:07:45.620 |       beforeRedirect: [Function: dispatchBeforeRedirect],
2025-11-01 13:07:45.620 |       beforeRedirects: [Object],
2025-11-01 13:07:45.620 |       hostname: 'fa.edge.foxdtc.digitalvideoplatform.com',
2025-11-01 13:07:45.620 |       port: '',
2025-11-01 13:07:45.620 |       agent: undefined,
2025-11-01 13:07:45.620 |       nativeProtocols: [Object],
2025-11-01 13:07:45.620 |       pathname: '/1762106604_ac9c687cbde21ac21e43be8a369300bec483be5d/*~/live-dr/fnc-ue2/index_7.m3u8'
2025-11-01 13:07:45.620 |     },
2025-11-01 13:07:45.620 |     _ended: true,
2025-11-01 13:07:45.620 |     _ending: true,
2025-11-01 13:07:45.620 |     _redirectCount: 0,
2025-11-01 13:07:45.620 |     _redirects: [],
2025-11-01 13:07:45.620 |     _requestBodyLength: 0,
2025-11-01 13:07:45.620 |     _requestBodyBuffers: [],
2025-11-01 13:07:45.620 |     _onNativeResponse: [Function (anonymous)],
2025-11-01 13:07:45.620 |     _currentRequest: ClientRequest {
2025-11-01 13:07:45.620 |       _events: [Object: null prototype],
2025-11-01 13:07:45.620 |       _eventsCount: 7,
2025-11-01 13:07:45.620 |       _maxListeners: undefined,
2025-11-01 13:07:45.620 |       outputData: [],
2025-11-01 13:07:45.620 |       outputSize: 0,
2025-11-01 13:07:45.620 |       writable: true,
2025-11-01 13:07:45.620 |       destroyed: false,
2025-11-01 13:07:45.620 |       _last: true,
2025-11-01 13:07:45.620 |       chunkedEncoding: false,
2025-11-01 13:07:45.620 |       shouldKeepAlive: false,
2025-11-01 13:07:45.620 |       maxRequestsOnConnectionReached: false,
2025-11-01 13:07:45.620 |       _defaultKeepAlive: true,
2025-11-01 13:07:45.620 |       useChunkedEncodingByDefault: false,
2025-11-01 13:07:45.621 |       sendDate: false,
2025-11-01 13:07:45.621 |       _removedConnection: false,
2025-11-01 13:07:45.621 |       _removedContLen: false,
2025-11-01 13:07:45.621 |       _removedTE: false,
2025-11-01 13:07:45.621 |       strictContentLength: false,
2025-11-01 13:07:45.621 |       _contentLength: 0,
2025-11-01 13:07:45.621 |       _hasBody: true,
2025-11-01 13:07:45.621 |       _trailer: '',
2025-11-01 13:07:45.621 |       finished: true,
2025-11-01 13:07:45.621 |       _headerSent: true,
2025-11-01 13:07:45.621 |       _closed: false,
2025-11-01 13:07:45.621 |       socket: [TLSSocket],
2025-11-01 13:07:45.621 |       _header: 'GET /1762106604_ac9c687cbde21ac21e43be8a369300bec483be5d/*~/live-dr/fnc-ue2/index_7.m3u8 HTTP/1.1\r\n' +
2025-11-01 13:07:45.621 |         'Accept: application/json, text/plain, */*\r\n' +
2025-11-01 13:07:45.621 |         'Accept-Encoding: identity\r\n' +
2025-11-01 13:07:45.621 |         'User-Agent: foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)\r\n' +
2025-11-01 13:07:45.621 |         'Host: fa.edge.foxdtc.digitalvideoplatform.com\r\n' +
2025-11-01 13:07:45.621 |         'Connection: close\r\n' +
2025-11-01 13:07:45.621 |         '\r\n',
2025-11-01 13:07:45.621 |       _keepAliveTimeout: 0,
2025-11-01 13:07:45.621 |       _onPendingData: [Function: nop],
2025-11-01 13:07:45.621 |       agent: [Agent],
2025-11-01 13:07:45.621 |       socketPath: undefined,
2025-11-01 13:07:45.621 |       method: 'GET',
2025-11-01 13:07:45.621 |       maxHeaderSize: undefined,
2025-11-01 13:07:45.621 |       insecureHTTPParser: undefined,
2025-11-01 13:07:45.621 |       joinDuplicateHeaders: undefined,
2025-11-01 13:07:45.621 |       path: '/1762106604_ac9c687cbde21ac21e43be8a369300bec483be5d/*~/live-dr/fnc-ue2/index_7.m3u8',
2025-11-01 13:07:45.621 |       _ended: false,
2025-11-01 13:07:45.621 |       res: null,
2025-11-01 13:07:45.621 |       aborted: false,
2025-11-01 13:07:45.621 |       timeoutCb: null,
2025-11-01 13:07:45.621 |       upgradeOrConnect: false,
2025-11-01 13:07:45.621 |       parser: [HTTPParser],
2025-11-01 13:07:45.621 |       maxHeadersCount: null,
2025-11-01 13:07:45.621 |       reusedSocket: false,
2025-11-01 13:07:45.621 |       host: 'fa.edge.foxdtc.digitalvideoplatform.com',
2025-11-01 13:07:45.621 |       protocol: 'https:',
2025-11-01 13:07:45.621 |       _redirectable: [Circular *1],
2025-11-01 13:07:45.621 |       [Symbol(kCapture)]: false,
2025-11-01 13:07:45.621 |       [Symbol(kBytesWritten)]: 0,
2025-11-01 13:07:45.621 |       [Symbol(kNeedDrain)]: false,
2025-11-01 13:07:45.621 |       [Symbol(corked)]: 0,
2025-11-01 13:07:45.621 |       [Symbol(kOutHeaders)]: [Object: null prototype],
2025-11-01 13:07:45.621 |       [Symbol(errored)]: null,
2025-11-01 13:07:45.621 |       [Symbol(kHighWaterMark)]: 16384,
2025-11-01 13:07:45.621 |       [Symbol(kRejectNonStandardBodyWrites)]: false,
2025-11-01 13:07:45.621 |       [Symbol(kUniqueHeaders)]: null
2025-11-01 13:07:45.621 |     },
2025-11-01 13:07:45.621 |     _currentUrl: 'https://fa.edge.foxdtc.digitalvideoplatform.com/1762106604_ac9c687cbde21ac21e43be8a369300bec483be5d/*~/live-dr/fnc-ue2/index_7.m3u8',
2025-11-01 13:07:45.621 |     _timeout: null,
2025-11-01 13:07:45.621 |     [Symbol(kCapture)]: false
2025-11-01 13:07:45.621 |   }
2025-11-01 13:07:45.621 | }
2025-11-01 13:07:45.617 | Could not parse chunklist properly!
2025-11-01 13:07:45.620 | Could not get chunklist for channel #5.
2025-11-01 13:08:36.424 | Channel #5 has an active event (Fox News Live). Going to start the stream.
2025-11-01 13:09:14.731 | Channel #1 has been idle for more than 5 minutes. Removing playlist info.
2025-11-01 13:10:14.728 | Channel #2 has been idle for more than 5 minutes. Removing playlist info.
2025-11-01 13:10:14.728 | Channel #3 has been idle for more than 5 minutes. Removing playlist info.
2025-11-01 13:10:14.728 | Channel #4 has been idle for more than 5 minutes. Removing playlist info.
2025-11-01 13:10:15.209 | AxiosError: timeout of 60000ms exceeded
2025-11-01 13:10:15.209 |     at RedirectableRequest.handleRequestTimeout (/app/node_modules/axios/lib/adapters/http.js:570:16)
2025-11-01 13:10:15.209 |     at RedirectableRequest.emit (node:events:517:28)
2025-11-01 13:10:15.209 |     at RedirectableRequest.emit (node:domain:489:12)
2025-11-01 13:10:15.209 |     at Timeout.<anonymous> (/app/node_modules/follow-redirects/index.js:169:12)
2025-11-01 13:10:15.209 |     at listOnTimeout (node:internal/timers:569:17)
2025-11-01 13:10:15.209 |     at processTimers (node:internal/timers:512:7) {
2025-11-01 13:10:15.209 |   code: 'ECONNABORTED',
2025-11-01 13:10:15.209 |   config: {
2025-11-01 13:10:15.209 |     transitional: {
2025-11-01 13:10:15.209 |       silentJSONParsing: true,
2025-11-01 13:10:15.209 |       forcedJSONParsing: true,
2025-11-01 13:10:15.209 |       clarifyTimeoutError: false
2025-11-01 13:10:15.209 |     },
2025-11-01 13:10:15.209 |     adapter: [ 'xhr', 'http' ],
2025-11-01 13:10:15.209 |     transformRequest: [ [Function: transformRequest] ],
2025-11-01 13:10:15.209 |     transformResponse: [ [Function: transformResponse] ],
2025-11-01 13:10:15.209 |     timeout: 60000,
2025-11-01 13:10:15.209 |     xsrfCookieName: 'XSRF-TOKEN',
2025-11-01 13:10:15.209 |     xsrfHeaderName: 'X-XSRF-TOKEN',
2025-11-01 13:10:15.209 |     maxContentLength: -1,
2025-11-01 13:10:15.209 |     maxBodyLength: -1,
2025-11-01 13:10:15.209 |     env: { FormData: [Function [FormData]], Blob: [class Blob] },
2025-11-01 13:10:15.209 |     validateStatus: [Function: validateStatus],
2025-11-01 13:10:15.209 |     headers: AxiosHeaders {
2025-11-01 13:10:15.209 |       Accept: 'application/json, text/plain, */*',
2025-11-01 13:10:15.209 |       'Accept-Encoding': 'identity',
2025-11-01 13:10:15.209 |       'User-Agent': 'foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)'
2025-11-01 13:10:15.209 |     },
2025-11-01 13:10:15.209 |     method: 'get',
2025-11-01 13:10:15.209 |     url: 'https://foxdtc-video.akamaized.net/live-dr/fnc-ue2/hdntl=exp=1762106915~acl=%2f*~data=hdntl~hmac=5ed4aec1f72470df16e685f64fd8292efa95e6b6e9a93397383267b2a9da2562/index_7.m3u8',
2025-11-01 13:10:15.209 |     data: undefined
2025-11-01 13:10:15.209 |   },
2025-11-01 13:10:15.209 |   request: <ref *1> Writable {
2025-11-01 13:10:15.209 |     _writableState: WritableState {
2025-11-01 13:10:15.209 |       objectMode: false,
2025-11-01 13:10:15.209 |       highWaterMark: 16384,
2025-11-01 13:10:15.209 |       finalCalled: false,
2025-11-01 13:10:15.209 |       needDrain: false,
2025-11-01 13:10:15.209 |       ending: false,
2025-11-01 13:10:15.209 |       ended: false,
2025-11-01 13:10:15.209 |       finished: false,
2025-11-01 13:10:15.209 |       destroyed: false,
2025-11-01 13:10:15.209 |       decodeStrings: true,
2025-11-01 13:10:15.209 | Could not parse chunklist properly!
2025-11-01 13:10:15.209 | Could not get chunklist for channel #5.
2025-11-01 13:10:15.209 |       defaultEncoding: 'utf8',
2025-11-01 13:10:15.209 |       length: 0,
2025-11-01 13:10:15.209 |       writing: false,
2025-11-01 13:10:15.209 |       corked: 0,
2025-11-01 13:10:15.209 |       sync: true,
2025-11-01 13:10:15.209 |       bufferProcessing: false,
2025-11-01 13:10:15.209 |       onwrite: [Function: bound onwrite],
2025-11-01 13:10:15.209 |       writecb: null,
2025-11-01 13:10:15.209 |       writelen: 0,
2025-11-01 13:10:15.209 |       afterWriteTickInfo: null,
2025-11-01 13:10:15.209 |       buffered: [],
2025-11-01 13:10:15.209 |       bufferedIndex: 0,
2025-11-01 13:10:15.209 |       allBuffers: true,
2025-11-01 13:10:15.209 |       allNoop: true,
2025-11-01 13:10:15.209 |       pendingcb: 0,
2025-11-01 13:10:15.209 |       constructed: true,
2025-11-01 13:10:15.209 |       prefinished: false,
2025-11-01 13:10:15.209 |       errorEmitted: false,
2025-11-01 13:10:15.209 |       emitClose: true,
2025-11-01 13:10:15.209 |       autoDestroy: true,
2025-11-01 13:10:15.209 |       errored: null,
2025-11-01 13:10:15.209 |       closed: false,
2025-11-01 13:10:15.209 |       closeEmitted: false,
2025-11-01 13:10:15.209 |       [Symbol(kOnFinished)]: []
2025-11-01 13:10:15.209 |     },
2025-11-01 13:10:15.209 |     _events: [Object: null prototype] {
2025-11-01 13:10:15.209 |       response: [Function: handleResponse],
2025-11-01 13:10:15.209 |       error: [Function: handleRequestError],
2025-11-01 13:10:15.209 |       socket: [Array]
2025-11-01 13:10:15.209 |     },
2025-11-01 13:10:15.209 |     _eventsCount: 3,
2025-11-01 13:10:15.209 |     _maxListeners: undefined,
2025-11-01 13:10:15.209 |     _options: {
2025-11-01 13:10:15.209 |       maxRedirects: 21,
2025-11-01 13:10:15.209 |       maxBodyLength: Infinity,
2025-11-01 13:10:15.209 |       protocol: 'https:',
2025-11-01 13:10:15.209 |       path: '/live-dr/fnc-ue2/hdntl=exp=1762106915~acl=%2f*~data=hdntl~hmac=5ed4aec1f72470df16e685f64fd8292efa95e6b6e9a93397383267b2a9da2562/index_7.m3u8',
2025-11-01 13:10:15.209 |       method: 'GET',
2025-11-01 13:10:15.209 |       headers: [Object: null prototype],
2025-11-01 13:10:15.209 |       agents: [Object],
2025-11-01 13:10:15.209 |       auth: undefined,
2025-11-01 13:10:15.209 |       beforeRedirect: [Function: dispatchBeforeRedirect],
2025-11-01 13:10:15.209 |       beforeRedirects: [Object],
2025-11-01 13:10:15.209 |       hostname: 'foxdtc-video.akamaized.net',
2025-11-01 13:10:15.209 |       port: '',
2025-11-01 13:10:15.209 |       agent: undefined,
2025-11-01 13:10:15.209 |       nativeProtocols: [Object],
2025-11-01 13:10:15.209 |       pathname: '/live-dr/fnc-ue2/hdntl=exp=1762106915~acl=%2f*~data=hdntl~hmac=5ed4aec1f72470df16e685f64fd8292efa95e6b6e9a93397383267b2a9da2562/index_7.m3u8'
2025-11-01 13:10:15.209 |     },
2025-11-01 13:10:15.209 |     _ended: true,
2025-11-01 13:10:15.209 |     _ending: true,
2025-11-01 13:10:15.209 |     _redirectCount: 0,
2025-11-01 13:10:15.209 |     _redirects: [],
2025-11-01 13:10:15.209 |     _requestBodyLength: 0,
2025-11-01 13:10:15.209 |     _requestBodyBuffers: [],
2025-11-01 13:10:15.209 |     _onNativeResponse: [Function (anonymous)],
2025-11-01 13:10:15.209 |     _currentRequest: ClientRequest {
2025-11-01 13:10:15.209 |       _events: [Object: null prototype],
2025-11-01 13:10:15.209 |       _eventsCount: 7,
2025-11-01 13:10:15.209 |       _maxListeners: undefined,
2025-11-01 13:10:15.209 |       outputData: [],
2025-11-01 13:10:15.209 |       outputSize: 0,
2025-11-01 13:10:15.209 |       writable: true,
2025-11-01 13:10:15.209 |       destroyed: false,
2025-11-01 13:10:15.209 |       _last: true,
2025-11-01 13:10:15.209 |       chunkedEncoding: false,
2025-11-01 13:10:15.209 |       shouldKeepAlive: false,
2025-11-01 13:10:15.209 |       maxRequestsOnConnectionReached: false,
2025-11-01 13:10:15.209 |       _defaultKeepAlive: true,
2025-11-01 13:10:15.209 |       useChunkedEncodingByDefault: false,
2025-11-01 13:10:15.209 |       sendDate: false,
2025-11-01 13:10:15.209 |       _removedConnection: false,
2025-11-01 13:10:15.209 |       _removedContLen: false,
2025-11-01 13:10:15.209 |       _removedTE: false,
2025-11-01 13:10:15.209 |       strictContentLength: false,
2025-11-01 13:10:15.209 |       _contentLength: 0,
2025-11-01 13:10:15.209 |       _hasBody: true,
2025-11-01 13:10:15.209 |       _trailer: '',
2025-11-01 13:10:15.209 |       finished: true,
2025-11-01 13:10:15.209 |       _headerSent: true,
2025-11-01 13:10:15.209 |       _closed: false,
2025-11-01 13:10:15.209 |       socket: [TLSSocket],
2025-11-01 13:10:15.209 |       _header: 'GET /live-dr/fnc-ue2/hdntl=exp=1762106915~acl=%2f*~data=hdntl~hmac=5ed4aec1f72470df16e685f64fd8292efa95e6b6e9a93397383267b2a9da2562/index_7.m3u8 HTTP/1.1\r\n' +
2025-11-01 13:10:15.209 |         'Accept: application/json, text/plain, */*\r\n' +
2025-11-01 13:10:15.209 |         'Accept-Encoding: identity\r\n' +
2025-11-01 13:10:15.209 |         'User-Agent: foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)\r\n' +
2025-11-01 13:10:15.209 |         'Host: foxdtc-video.akamaized.net\r\n' +
2025-11-01 13:10:15.209 |         'Connection: close\r\n' +
2025-11-01 13:10:15.209 |         '\r\n',
2025-11-01 13:10:15.209 |       _keepAliveTimeout: 0,
2025-11-01 13:10:15.209 |       _onPendingData: [Function: nop],
2025-11-01 13:10:15.209 |       agent: [Agent],
2025-11-01 13:10:15.209 |       socketPath: undefined,
2025-11-01 13:10:15.209 |       method: 'GET',
2025-11-01 13:10:15.210 |       maxHeaderSize: undefined,
2025-11-01 13:10:15.210 |       insecureHTTPParser: undefined,
2025-11-01 13:10:15.210 |       joinDuplicateHeaders: undefined,
2025-11-01 13:10:15.210 |       path: '/live-dr/fnc-ue2/hdntl=exp=1762106915~acl=%2f*~data=hdntl~hmac=5ed4aec1f72470df16e685f64fd8292efa95e6b6e9a93397383267b2a9da2562/index_7.m3u8',
2025-11-01 13:10:15.210 |       _ended: false,
2025-11-01 13:10:15.210 |       res: null,
2025-11-01 13:10:15.210 |       aborted: false,
2025-11-01 13:10:15.210 |       timeoutCb: null,
2025-11-01 13:10:15.210 |       upgradeOrConnect: false,
2025-11-01 13:10:15.210 |       parser: [HTTPParser],
2025-11-01 13:10:15.210 |       maxHeadersCount: null,
2025-11-01 13:10:15.210 |       reusedSocket: false,
2025-11-01 13:10:15.210 |       host: 'foxdtc-video.akamaized.net',
2025-11-01 13:10:15.210 |       protocol: 'https:',
2025-11-01 13:10:15.210 |       _redirectable: [Circular *1],
2025-11-01 13:10:15.210 |       [Symbol(kCapture)]: false,
2025-11-01 13:10:15.210 |       [Symbol(kBytesWritten)]: 0,
2025-11-01 13:10:15.210 |       [Symbol(kNeedDrain)]: false,
2025-11-01 13:10:15.210 |       [Symbol(corked)]: 0,
2025-11-01 13:10:15.210 |       [Symbol(kOutHeaders)]: [Object: null prototype],
2025-11-01 13:10:15.210 |       [Symbol(errored)]: null,
2025-11-01 13:10:15.210 |       [Symbol(kHighWaterMark)]: 16384,
2025-11-01 13:10:15.210 |       [Symbol(kRejectNonStandardBodyWrites)]: false,
2025-11-01 13:10:15.210 |       [Symbol(kUniqueHeaders)]: null
2025-11-01 13:10:15.210 |     },
2025-11-01 13:10:15.210 |     _currentUrl: 'https://foxdtc-video.akamaized.net/live-dr/fnc-ue2/hdntl=exp=1762106915~acl=%2f*~data=hdntl~hmac=5ed4aec1f72470df16e685f64fd8292efa95e6b6e9a93397383267b2a9da2562/index_7.m3u8',
2025-11-01 13:10:15.210 |     _timeout: null,
2025-11-01 13:10:15.210 |     [Symbol(kCapture)]: false
2025-11-01 13:10:15.210 |   }
2025-11-01 13:10:15.210 | }
2025-11-01 13:12:36.673 | Channel #5 has an active event (Fox News Live). Going to start the stream.
2025-11-01 13:15:27.013 | AxiosError: timeout of 60000ms exceeded
2025-11-01 13:15:27.013 |     at RedirectableRequest.handleRequestTimeout (/app/node_modules/axios/lib/adapters/http.js:570:16)
2025-11-01 13:15:27.013 |     at RedirectableRequest.emit (node:events:517:28)
2025-11-01 13:15:27.013 |     at RedirectableRequest.emit (node:domain:489:12)
2025-11-01 13:15:27.013 |     at Timeout.<anonymous> (/app/node_modules/follow-redirects/index.js:169:12)
2025-11-01 13:15:27.013 |     at listOnTimeout (node:internal/timers:569:17)
2025-11-01 13:15:27.013 |     at processTimers (node:internal/timers:512:7) {
2025-11-01 13:15:27.013 |   code: 'ECONNABORTED',
2025-11-01 13:15:27.013 |   config: {
2025-11-01 13:15:27.013 |     transitional: {
2025-11-01 13:15:27.013 |       silentJSONParsing: true,
2025-11-01 13:15:27.013 |       forcedJSONParsing: true,
2025-11-01 13:15:27.013 |       clarifyTimeoutError: false
2025-11-01 13:15:27.013 |     },
2025-11-01 13:15:27.013 |     adapter: [ 'xhr', 'http' ],
2025-11-01 13:15:27.013 |     transformRequest: [ [Function: transformRequest] ],
2025-11-01 13:15:27.013 |     transformResponse: [ [Function: transformResponse] ],
2025-11-01 13:15:27.013 |     timeout: 60000,
2025-11-01 13:15:27.013 |     xsrfCookieName: 'XSRF-TOKEN',
2025-11-01 13:15:27.013 |     xsrfHeaderName: 'X-XSRF-TOKEN',
2025-11-01 13:15:27.013 |     maxContentLength: -1,
2025-11-01 13:15:27.013 |     maxBodyLength: -1,
2025-11-01 13:15:27.013 |     env: { FormData: [Function [FormData]], Blob: [class Blob] },
2025-11-01 13:15:27.013 |     validateStatus: [Function: validateStatus],
2025-11-01 13:15:27.013 |     headers: AxiosHeaders {
2025-11-01 13:15:27.013 |       Accept: 'application/json, text/plain, */*',
2025-11-01 13:15:27.013 |       'Accept-Encoding': 'identity',
2025-11-01 13:15:27.013 |       'User-Agent': 'foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)'
2025-11-01 13:15:27.013 |     },
2025-11-01 13:15:27.013 |     method: 'get',
2025-11-01 13:15:27.013 |     url: 'https://foxdtc-video.akamaized.net/live-dr/fnc-ue2/hdntl=exp=1762107156~acl=%2f*~data=hdntl~hmac=61a7af9d176b233b3cbd3834359e5233f3dee95fea88912943e593d392419217/index_7.m3u8',
2025-11-01 13:15:27.013 |     data: undefined
2025-11-01 13:15:27.013 |   },
2025-11-01 13:15:27.013 |   request: <ref *1> Writable {
2025-11-01 13:15:27.013 |     _writableState: WritableState {
2025-11-01 13:15:27.013 |       objectMode: false,
2025-11-01 13:15:27.013 |       highWaterMark: 16384,
2025-11-01 13:15:27.013 |       finalCalled: false,
2025-11-01 13:15:27.013 |       needDrain: false,
2025-11-01 13:15:27.013 |       ending: false,
2025-11-01 13:15:27.013 |       ended: false,
2025-11-01 13:15:27.013 |       finished: false,
2025-11-01 13:15:27.013 |       destroyed: false,
2025-11-01 13:15:27.013 |       decodeStrings: true,
2025-11-01 13:15:27.013 |       defaultEncoding: 'utf8',
2025-11-01 13:15:27.013 |       length: 0,
2025-11-01 13:15:27.013 |       writing: false,
2025-11-01 13:15:27.013 |       corked: 0,
2025-11-01 13:15:27.013 |       sync: true,
2025-11-01 13:15:27.013 |       bufferProcessing: false,
2025-11-01 13:15:27.013 |       onwrite: [Function: bound onwrite],
2025-11-01 13:15:27.013 |       writecb: null,
2025-11-01 13:15:27.013 |       writelen: 0,
2025-11-01 13:15:27.013 |       afterWriteTickInfo: null,
2025-11-01 13:15:27.013 |       buffered: [],
2025-11-01 13:15:27.013 |       bufferedIndex: 0,
2025-11-01 13:15:27.013 |       allBuffers: true,
2025-11-01 13:15:27.013 |       allNoop: true,
2025-11-01 13:15:27.013 |       pendingcb: 0,
2025-11-01 13:15:27.013 |       constructed: true,
2025-11-01 13:15:27.014 |       prefinished: false,
2025-11-01 13:15:27.014 |       errorEmitted: false,
2025-11-01 13:15:27.014 |       emitClose: true,
2025-11-01 13:15:27.014 |       autoDestroy: true,
2025-11-01 13:15:27.014 |       errored: null,
2025-11-01 13:15:27.014 |       closed: false,
2025-11-01 13:15:27.014 |       closeEmitted: false,
2025-11-01 13:15:27.014 |       [Symbol(kOnFinished)]: []
2025-11-01 13:15:27.014 |     },
2025-11-01 13:15:27.014 |     _events: [Object: null prototype] {
2025-11-01 13:15:27.014 |       response: [Function: handleResponse],
2025-11-01 13:15:27.014 |       error: [Function: handleRequestError],
2025-11-01 13:15:27.014 |       socket: [Array]
2025-11-01 13:15:27.014 |     },
2025-11-01 13:15:27.014 |     _eventsCount: 3,
2025-11-01 13:15:27.014 |     _maxListeners: undefined,
2025-11-01 13:15:27.014 |     _options: {
2025-11-01 13:15:27.014 |       maxRedirects: 21,
2025-11-01 13:15:27.014 |       maxBodyLength: Infinity,
2025-11-01 13:15:27.014 |       protocol: 'https:',
2025-11-01 13:15:27.014 |       path: '/live-dr/fnc-ue2/hdntl=exp=1762107156~acl=%2f*~data=hdntl~hmac=61a7af9d176b233b3cbd3834359e5233f3dee95fea88912943e593d392419217/index_7.m3u8',
2025-11-01 13:15:27.014 |       method: 'GET',
2025-11-01 13:15:27.014 |       headers: [Object: null prototype],
2025-11-01 13:15:27.014 |       agents: [Object],
2025-11-01 13:15:27.014 |       auth: undefined,
2025-11-01 13:15:27.014 |       beforeRedirect: [Function: dispatchBeforeRedirect],
2025-11-01 13:15:27.014 |       beforeRedirects: [Object],
2025-11-01 13:15:27.014 |       hostname: 'foxdtc-video.akamaized.net',
2025-11-01 13:15:27.014 |       port: '',
2025-11-01 13:15:27.014 |       agent: undefined,
2025-11-01 13:15:27.014 |       nativeProtocols: [Object],
2025-11-01 13:15:27.014 |       pathname: '/live-dr/fnc-ue2/hdntl=exp=1762107156~acl=%2f*~data=hdntl~hmac=61a7af9d176b233b3cbd3834359e5233f3dee95fea88912943e593d392419217/index_7.m3u8'
2025-11-01 13:15:27.014 |     },
2025-11-01 13:15:27.014 |     _ended: true,
2025-11-01 13:15:27.014 |     _ending: true,
2025-11-01 13:15:27.014 |     _redirectCount: 0,
2025-11-01 13:15:27.014 |     _redirects: [],
2025-11-01 13:15:27.014 |     _requestBodyLength: 0,
2025-11-01 13:15:27.014 |     _requestBodyBuffers: [],
2025-11-01 13:15:27.014 |     _onNativeResponse: [Function (anonymous)],
2025-11-01 13:15:27.014 |     _currentRequest: ClientRequest {
2025-11-01 13:15:27.014 |       _events: [Object: null prototype],
2025-11-01 13:15:27.014 |       _eventsCount: 7,
2025-11-01 13:15:27.014 |       _maxListeners: undefined,
2025-11-01 13:15:27.014 |       outputData: [],
2025-11-01 13:15:27.014 |       outputSize: 0,
2025-11-01 13:15:27.014 |       writable: true,
2025-11-01 13:15:27.014 |       destroyed: false,
2025-11-01 13:15:27.014 |       _last: true,
2025-11-01 13:15:27.014 |       chunkedEncoding: false,
2025-11-01 13:15:27.014 |       shouldKeepAlive: false,
2025-11-01 13:15:27.014 |       maxRequestsOnConnectionReached: false,
2025-11-01 13:15:27.014 |       _defaultKeepAlive: true,
2025-11-01 13:15:27.014 |       useChunkedEncodingByDefault: false,
2025-11-01 13:15:27.014 |       sendDate: false,
2025-11-01 13:15:27.014 |       _removedConnection: false,
2025-11-01 13:15:27.014 |       _removedContLen: false,
2025-11-01 13:15:27.014 |       _removedTE: false,
2025-11-01 13:15:27.014 |       strictContentLength: false,
2025-11-01 13:15:27.014 |       _contentLength: 0,
2025-11-01 13:15:27.014 |       _hasBody: true,
2025-11-01 13:15:27.014 |       _trailer: '',
2025-11-01 13:15:27.014 |       finished: true,
2025-11-01 13:15:27.014 |       _headerSent: true,
2025-11-01 13:15:27.014 |       _closed: false,
2025-11-01 13:15:27.014 |       socket: [TLSSocket],
2025-11-01 13:15:27.014 |       _header: 'GET /live-dr/fnc-ue2/hdntl=exp=1762107156~acl=%2f*~data=hdntl~hmac=61a7af9d176b233b3cbd3834359e5233f3dee95fea88912943e593d392419217/index_7.m3u8 HTTP/1.1\r\n' +
2025-11-01 13:15:27.014 |         'Accept: application/json, text/plain, */*\r\n' +
2025-11-01 13:15:27.014 |         'Accept-Encoding: identity\r\n' +
2025-11-01 13:15:27.014 |         'User-Agent: foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)\r\n' +
2025-11-01 13:15:27.014 |         'Host: foxdtc-video.akamaized.net\r\n' +
2025-11-01 13:15:27.014 |         'Connection: close\r\n' +
2025-11-01 13:15:27.014 |         '\r\n',
2025-11-01 13:15:27.014 |       _keepAliveTimeout: 0,
2025-11-01 13:15:27.014 |       _onPendingData: [Function: nop],
2025-11-01 13:15:27.014 |       agent: [Agent],
2025-11-01 13:15:27.014 |       socketPath: undefined,
2025-11-01 13:15:27.014 |       method: 'GET',
2025-11-01 13:15:27.014 |       maxHeaderSize: undefined,
2025-11-01 13:15:27.014 |       insecureHTTPParser: undefined,
2025-11-01 13:15:27.014 |       joinDuplicateHeaders: undefined,
2025-11-01 13:15:27.014 |       path: '/live-dr/fnc-ue2/hdntl=exp=1762107156~acl=%2f*~data=hdntl~hmac=61a7af9d176b233b3cbd3834359e5233f3dee95fea88912943e593d392419217/index_7.m3u8',
2025-11-01 13:15:27.014 |       _ended: false,
2025-11-01 13:15:27.014 |       res: null,
2025-11-01 13:15:27.014 |       aborted: false,
2025-11-01 13:15:27.014 |       timeoutCb: null,
2025-11-01 13:15:27.014 |       upgradeOrConnect: false,
2025-11-01 13:15:27.014 |       parser: [HTTPParser],
2025-11-01 13:15:27.014 |       maxHeadersCount: null,
2025-11-01 13:15:27.014 |       reusedSocket: false,
2025-11-01 13:15:27.014 |       host: 'foxdtc-video.akamaized.net',
2025-11-01 13:15:27.014 |       protocol: 'https:',
2025-11-01 13:15:27.014 |       _redirectable: [Circular *1],
2025-11-01 13:15:27.014 |       [Symbol(kCapture)]: false,
2025-11-01 13:15:27.014 |       [Symbol(kBytesWritten)]: 0,
2025-11-01 13:15:27.014 |       [Symbol(kNeedDrain)]: false,
2025-11-01 13:15:27.014 |       [Symbol(corked)]: 0,
2025-11-01 13:15:27.014 |       [Symbol(kOutHeaders)]: [Object: null prototype],
2025-11-01 13:15:27.014 |       [Symbol(errored)]: null,
2025-11-01 13:15:27.014 |       [Symbol(kHighWaterMark)]: 16384,
2025-11-01 13:15:27.014 |       [Symbol(kRejectNonStandardBodyWrites)]: false,
2025-11-01 13:15:27.014 |       [Symbol(kUniqueHeaders)]: null
2025-11-01 13:15:27.014 |     },
2025-11-01 13:15:27.014 |     _currentUrl: 'https://foxdtc-video.akamaized.net/live-dr/fnc-ue2/hdntl=exp=1762107156~acl=%2f*~data=hdntl~hmac=61a7af9d176b233b3cbd3834359e5233f3dee95fea88912943e593d392419217/index_7.m3u8',
2025-11-01 13:15:27.014 |     _timeout: null,
2025-11-01 13:15:27.014 |     [Symbol(kCapture)]: false
2025-11-01 13:15:27.014 |   }
2025-11-01 13:15:27.013 | Could not parse chunklist properly!
2025-11-01 13:15:27.013 | Could not get chunklist for channel #5.
2025-11-01 13:15:27.014 | }
2025-11-01 13:16:14.528 | Updating FOX One prelim token
2025-11-01 13:16:14.762 | Refreshing TV Provider token (FOX One)

I like this, let's try to get something like this working.

The pattern of adding |Header=value does not currently work for redirects. I suspect it may be tricky if there are restrictions in our http parser.

But an easier alternative may be extra headers, i.e. X-Location-Header: value that are read off the redirect response.

1 Like

So far, so good. On the fifth recording now.


I'll update this post when the last recording finishes.
Rats! didn't have to wait, failures again.

4 back-back The Masked Singer recordings from 03:00-07:00 not interrupted, but Invalid playlist errors in container log

Container log
2025-11-01T09:59:30.089972292Z Channel #219 has an active event (Masks Back -- The Good, The Bad & The Cuddly -- Round 1). Going to start the stream.
2025-11-01T10:00:29.743655276Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:00:32.216160129Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:00:34.639997506Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:00:37.222020371Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:00:39.703170693Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:00:42.211049823Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:00:44.726301990Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:00:47.311400244Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:00:49.638414709Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:00:51.387445484Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:00:53.935164099Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:00:56.389907473Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:00:58.894118958Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:01.395609947Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:03.917099728Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:06.385422365Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:08.928488024Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:11.423424168Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:13.808859020Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:15.555458221Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:18.064128186Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:20.603135955Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:23.090210076Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:25.558518632Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:27.975251920Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:30.610972196Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:33.077906905Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:35.600575427Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:38.077161721Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:40.482136255Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:43.074315949Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:45.567116950Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:48.104786274Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:50.612347526Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:53.070032142Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:55.481459505Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:01:57.983048240Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:00.583105062Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:03.109738046Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:05.581701182Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:08.112198139Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:10.497506103Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:13.079959857Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:15.621262307Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:18.119294882Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:20.569005474Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:23.104874833Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:25.498003553Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:28.002858187Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:30.607343654Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:33.085428119Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:35.617431145Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:38.001121943Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:39.745898871Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:42.288528174Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:44.758864624Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:47.281497991Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:49.662873762Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:51.458236911Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:53.946962982Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:56.416685057Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:02:58.926518379Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:01.332968320Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:03.974983243Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:06.418575699Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:08.976493454Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:11.410314384Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:13.845218425Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:15.632143534Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:18.103296896Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:20.621450060Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:23.008538980Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:25.593605563Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:28.071142048Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:30.636090002Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:33.114880461Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:35.595980884Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:38.129151072Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:40.517210935Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:43.101215873Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:45.600673583Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:48.142126826Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:50.602077237Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:53.098776225Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:55.612259992Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:03:58.155878773Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:00.591409016Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:03.149267091Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:05.601995557Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:08.144110440Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:10.520122834Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:13.107044283Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:15.587881000Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:18.101889842Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:20.797728011Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:23.153526420Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:25.536185057Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:28.090966417Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:30.651766847Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:33.121377008Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:35.613539034Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:38.026337505Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:39.761056910Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:42.306645915Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:44.778602034Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:47.315551464Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:49.691915460Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:52.303405444Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:54.779883570Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:57.288458271Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:04:59.824995550Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:02.280124840Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:04.791177814Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:07.189901854Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:09.792803909Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:12.332821130Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:14.792542156Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:17.283666128Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:19.791023755Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:22.209565883Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:24.826862268Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:27.294906029Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:29.802997267Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:32.335644843Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:34.819825661Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:37.209302372Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:39.833554773Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:42.289406634Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:44.822883861Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:47.328923798Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:49.704698011Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:52.208541740Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:54.836136041Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:57.313597112Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:05:59.822073421Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:02.342192454Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:04.711828495Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:07.217956378Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:09.839867469Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:12.341356473Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:14.844689791Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:17.304093419Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:19.794573928Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:22.214987776Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:24.821441871Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:27.331971276Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:29.865311372Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:32.371086589Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:34.803925633Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:37.212364184Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:39.839016220Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:42.336460453Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:44.800850294Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:47.314420062Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:49.805849791Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:52.237344909Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:54.806581380Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:57.308700791Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:06:59.827918574Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:02.319820204Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:04.810326379Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:07.217292632Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:09.848310090Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:12.302464889Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:14.829229994Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:17.365859786Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:19.727606934Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:22.310218494Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:24.822651516Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:27.354147737Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:29.821888011Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:32.373602826Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:34.813331011Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:37.262313529Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:39.847746124Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:42.319352281Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:44.817913244Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:47.366676640Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:49.833181064Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:52.263439111Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:54.821006193Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:57.368327068Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:07:59.831757084Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:02.359465719Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:04.742547723Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:07.333094489Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:09.834552837Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:12.361676820Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:14.821143056Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:17.381969037Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:19.741848913Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:22.329891249Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:24.878404659Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:27.344792720Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:29.867891172Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:32.262574838Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:34.043875876Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:36.544203837Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:38.991769316Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:41.507857928Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:44.007671235Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:46.498809110Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:49.004204831Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:51.530213791Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:54.009481512Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:56.540193737Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:08:58.941760614Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:01.422831868Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:04.040001213Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:06.506298254Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:09.062051494Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:11.537754418Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:13.931804524Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:16.513034846Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:19.071872433Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:21.547138747Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:24.047739653Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:26.512991981Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:29.012374464Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:31.523884227Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:34.016720675Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:36.555116793Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:39.013087114Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:41.516391856Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:44.011065282Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:46.511785761Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:49.029009924Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:51.524799621Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:54.099164766Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:56.568313534Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:09:59.021210165Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:01.436963078Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:04.052337854Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:06.554857132Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:09.035290285Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:11.536350916Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:13.944151696Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:16.537171192Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:19.040045628Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:21.557910242Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:24.034725252Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:26.567474562Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:28.954169133Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:31.542023566Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:34.060416882Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:36.546115760Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:39.064696300Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:41.450184060Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:44.038830684Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:46.456785747Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:49.054671149Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:51.566725273Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:54.060670137Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:56.627239679Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:10:58.963849220Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:01.536374944Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:04.052907329Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:06.560298087Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:09.074482754Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:11.466386694Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:13.964177409Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:16.542502458Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:19.087641242Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:21.558989826Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:24.104928137Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:26.457995849Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:28.256278478Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:30.756012638Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:33.244116742Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:35.715234564Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:38.207897088Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:39.876871820Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:42.385831683Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:44.919071039Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:47.372361814Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:49.890552278Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:52.425293172Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:54.877683864Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:57.426370934Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:11:59.926587646Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:02.313054621Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:04.096762203Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:06.552445888Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:09.114514134Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:11.477823408Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:13.973196889Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:16.566096449Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:19.043648592Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:21.560232604Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:24.047397094Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:26.481250141Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:28.227176612Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:30.768178865Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:33.261431856Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:35.771744416Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:38.144108081Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:40.737698057Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:43.266222315Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:45.769739604Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:48.274942554Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:50.778393449Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:53.248217812Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:55.742844759Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:12:58.247332053Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:00.739536932Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:03.241733693Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:05.824259092Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:08.151529305Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:09.943853826Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:12.411321980Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:14.941741638Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:17.332879375Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:19.908342027Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:22.408935011Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:24.944728060Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:27.418380371Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:29.920098689Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:32.408016180Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:34.075756289Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:36.621215900Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:39.119720623Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:41.586261671Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:44.081207783Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:46.584379645Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:49.125956311Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:51.587001311Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:54.113156111Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:56.508528952Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:13:58.281675239Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:00.758566707Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:03.271088385Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:05.758787297Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:08.257267137Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:10.676656861Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:13.280988809Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:15.758137117Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:18.291068209Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:20.783457807Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:23.250220033Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:25.668129366Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:28.260384720Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:30.779219930Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:33.284219301Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:35.793320030Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:38.169740758Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:40.677598181Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:43.295565930Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:45.764973646Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:48.258548540Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:50.768171140Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:53.182508173Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:55.680765508Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:14:58.261782535Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:15:00.809474634Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:15:03.301763610Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:15:05.789012807Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:15:08.265463414Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:15:10.766792192Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:15:13.271276075Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:15:15.801543651Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:15:18.262713126Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:15:20.809786753Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:15:23.266746436Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration
2025-11-01T10:15:25.683238475Z Invalid Playlist : EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration

Looks like this was simpler. I added basic support in the next build.

2 Likes

I noticed that the channel moves around in the Guide. FNC starts out on Eplus5 then after 1/2 hour moves to Eplus12 then moves to Eplus8???

Also, the guide on my Clients do not match the guide on the server. I tried to refresh the source on the client, clear cache, force close and reopen and it doesn't update.

Sounds like you don’t have the “Dedicated Linear Channels” option enabled in EPlusTV. So events are getting assigned to random virtual channels rather than their dedicated linear channel.

You were right.

I just replace the current m3u link with the one below and leave the xml link as it was????

http://192.168.1.180:8000/linear-channels.m3u

Great! So if I understand correctly, once this build is available, we can provide a custom response header like “X-User-Agent” before our redirect. Then Channels will drop the “X-“ prefix and use that as its own request header when it requests the redirect URL. Is that correct?

You could just associate the linear channel with Gracenote guide data within Channels. Or if you want the EPlusTV provided linear guide data, you could use the linear guide URL which should be http://192.168.1.180:8000/linear-xmltv.xml

1 Like

Yes, but the resp would look like:

HTTP/1.1 301 Found
Location: https://video.cdn/playlist.m3u8
X-Location-User-Agent: Mozilla
X-Location-Authorization: ABCD
1 Like

College Football - Penn State at Ohio State 09:00-12:30 interrupted
CDVR log

2025/11/01 11:30:04.312889 [DVR] Error running job 1762012800-ch43 College Football: Could not fetch playlist from 192.168.1.4:8185: GET: http://192.168.1.4:8185/chunklist/210/0dskftuX.m3u8: 404 Not Found
Container log
2025-11-01T16:00:00.016311891Z Channel #210 has an active event (College Football - Penn State at Ohio State). Going to start the stream.
2025-11-01T18:29:59.808564456Z AxiosError: Hostname/IP does not match certificate's altnames: Host: fa.edge.foxdtc.digitalvideoplatform.com. is not in the cert's altnames: DNS:settings.data.microsoft.com
2025-11-01T18:29:59.809086662Z     at Function.AxiosError.from (/app/node_modules/axios/lib/core/AxiosError.js:89:14)
2025-11-01T18:29:59.809177867Z     at RedirectableRequest.handleRequestError (/app/node_modules/axios/lib/adapters/http.js:533:25)
2025-11-01T18:29:59.809240664Z     at RedirectableRequest.emit (node:events:529:35)
2025-11-01T18:29:59.809289872Z     at RedirectableRequest.emit (node:domain:489:12)
2025-11-01T18:29:59.809341541Z     at ClientRequest.eventHandlers.<computed> (/app/node_modules/follow-redirects/index.js:14:24)
2025-11-01T18:29:59.809396597Z     at ClientRequest.emit (node:events:517:28)
2025-11-01T18:29:59.809447213Z     at ClientRequest.emit (node:domain:489:12)
2025-11-01T18:29:59.809494122Z     at TLSSocket.socketErrorListener (node:_http_client:501:9)
2025-11-01T18:29:59.809549868Z     at TLSSocket.emit (node:events:517:28)
2025-11-01T18:29:59.809592496Z     at TLSSocket.emit (node:domain:489:12) {
2025-11-01T18:29:59.809655934Z   code: 'ERR_TLS_CERT_ALTNAME_INVALID',
2025-11-01T18:29:59.809716714Z   cert: {
2025-11-01T18:29:59.809760429Z     subject: [Object: null prototype] {
2025-11-01T18:29:59.808719608Z Could not parse chunklist properly!
2025-11-01T18:29:59.809915015Z Could not get chunklist for channel #210.
2025-11-01T18:29:59.809832113Z       C: 'US',
2025-11-01T18:29:59.810028697Z       ST: 'WA',
2025-11-01T18:29:59.810072970Z       L: 'Redmond',
2025-11-01T18:29:59.810118254Z       O: 'Microsoft Corporation',
2025-11-01T18:29:59.810162149Z       CN: 'settings.data.microsoft.com'
2025-11-01T18:29:59.810204665Z     },
2025-11-01T18:29:59.810241246Z     issuer: [Object: null prototype] {
2025-11-01T18:29:59.810282681Z       C: 'US',
2025-11-01T18:29:59.810320633Z       O: 'Microsoft Corporation',
2025-11-01T18:29:59.810362423Z       CN: 'Microsoft Azure RSA TLS Issuing CA 08'
2025-11-01T18:29:59.810415079Z     },
2025-11-01T18:29:59.810452570Z     subjectaltname: 'DNS:settings.data.microsoft.com',
2025-11-01T18:29:59.810498863Z     infoAccess: [Object: null prototype] {
2025-11-01T18:29:59.810542117Z       'CA Issuers - URI': [Array],
2025-11-01T18:29:59.810584794Z       'OCSP - URI': [Array]
2025-11-01T18:29:59.810642602Z     },
2025-11-01T18:29:59.810679851Z     ca: false,
2025-11-01T18:29:59.810723161Z     modulus: 'C0D8BD61CAD84B3881BF8181D4C820A7B2A1CD9B17DEB38F77D357B8464051B8E774531A575447B610AAE0595E30FB4080991339BD744D2CB0D9D2E41DD643F611C1E5DD30B0C059816F30CA5E9F86F325E7BF984479CFE795390EF83486D3E13793A11B371C38A93026ED52ECACF9B6BF1945A70FF5343C28D35D38249F7C0C582B43F082E7457348A0CAC1D02E60402C480A0107BB5D044493ED5830B032C22D2E41DF14E5F55B3C3E7848781786312BAAA9AA2A91CD4CA298D88CDE724C03CE26437E57E7976D4B4E5023AE81CDE8B5037D576049971BA74966EFA2A18E330633C47253F66B86810B81F21A4353CEDA0DED1FFC96F6368540E1C1D1CF0C09',
2025-11-01T18:29:59.810871317Z     bits: 2048,
2025-11-01T18:29:59.810916489Z     exponent: '0x10001',
2025-11-01T18:29:59.810961594Z     pubkey: <Buffer 30 82 01 22 30 0d 06 09 2a 86 48 86 f7 0d 01 01 01 05 00 03 82 01 0f 00 30 82 01 0a 02 82 01 01 00 c0 d8 bd 61 ca d8 4b 38 81 bf 81 81 d4 c8 20 a7 b2 ... 244 more bytes>,
2025-11-01T18:29:59.811057365Z     valid_from: 'Oct 27 23:07:40 2025 GMT',
2025-11-01T18:29:59.811106016Z     valid_to: 'Apr 25 23:07:40 2026 GMT',
2025-11-01T18:29:59.811150405Z     fingerprint: '51:10:3D:D6:B9:9F:E9:75:23:FE:E6:E6:41:54:B1:77:F1:98:F3:5B',
2025-11-01T18:29:59.811208834Z     fingerprint256: '0C:BF:3F:E8:1B:0D:5F:EF:BB:C0:B8:06:99:83:36:6D:AE:C6:B2:FF:27:21:0C:D2:93:98:6C:6A:AE:01:76:0A',
2025-11-01T18:29:59.811270631Z     fingerprint512: 'B9:87:44:4C:4C:BD:13:BA:61:3E:E6:2D:16:CA:A4:4A:E7:9F:4E:F8:F2:D9:42:E9:61:FC:B1:3C:64:10:F1:77:1A:93:DB:07:8F:34:3A:04:81:30:34:9F:3C:89:AB:2B:15:AB:64:57:EC:FE:17:F2:88:B1:B3:09:1F:76:13:35',
2025-11-01T18:29:59.811348970Z     ext_key_usage: [ '1.3.6.1.5.5.7.3.2', '1.3.6.1.5.5.7.3.1' ],
2025-11-01T18:29:59.811399715Z     serialNumber: '330290BE85164FD586A1D3D54B00000290BE85',
2025-11-01T18:29:59.811446013Z     raw: <Buffer 30 82 08 7c 30 82 06 64 a0 03 02 01 02 02 13 33 02 90 be 85 16 4f d5 86 a1 d3 d5 4b 00 00 02 90 be 85 30 0d 06 09 2a 86 48 86 f7 0d 01 01 0c 05 00 30 ... 2126 more bytes>,
2025-11-01T18:29:59.811515945Z     issuerCertificate: {
2025-11-01T18:29:59.811557948Z       subject: [Object: null prototype],
2025-11-01T18:29:59.811603981Z       issuer: [Object: null prototype],
2025-11-01T18:29:59.811666563Z       infoAccess: [Object: null prototype],
2025-11-01T18:29:59.811711131Z       ca: true,
2025-11-01T18:29:59.811759151Z       modulus: 'B2EE8205CDC0D56556E899666D4B0AC05FC2E2297B1B09CC2E14BEC51E40F99BAEE896639D4EE78E2A1344479CA416CFE678A1B57F0CDDDF9FFE435F8A4F1715F3D2085E612BB52B23F045AEEEB74401562760C15BB2DAB090854D128CF838833CDA19FE379A79EF390718FA20CC5E9338F45438AF3263208F7AA9C7BE85691396F49192F8413F1B7728524506D4B1489268EB85E72DDE67D55CF766DA0E4858EC21591364E12CBBF93D0D16C732E8B77B75F1DDAF40FE71DBD2349FA345B23DFB27677F107FD9E9AFE58405732A37D896819C43520FC831081A1F606099CC2C566251B9BF1819A5A4A56BF0CD37396282474B6145B7E753A528B24AF01AB1020279E88C5114C3E8FC8BA8052C13565ED04EB58BE097C48708254A514525E1839F479CC5E0E90A8AB26E51B3A607600E98B8D824871A6C3BF131C9ABCA14229E883EFFE8E01C99D8EB6A29812B6475A22630FCF22C1ED9696567C6945DB4528ED59BC691979136F6CF014291DA435E927BA1DCDB45BF3D9D637C4FEC07E1C8B13FB7CBD6EF69C0CE544ACFEF8BEF40A00AF8FFC9E39B3F06803C3776B19D288F6BBF37E93A7A01AAD387BE1815BE418092A09E5E018DFA8A5D1FBBB758487603A3B441E5A3D32EA9F26E9F3031E01AB5C6A073C53D38CE3682110B4DA585011BB2A029A0A91EF2F1F014F4D8E172AAE6EBED17CEFFEFCCC7E12F8525A5FD46EF',
2025-11-01T18:29:59.811848202Z       bits: 4096,
2025-11-01T18:29:59.811893370Z       exponent: '0x10001',
2025-11-01T18:29:59.811934234Z       pubkey: <Buffer 30 82 02 22 30 0d 06 09 2a 86 48 86 f7 0d 01 01 01 05 00 03 82 02 0f 00 30 82 02 0a 02 82 02 01 00 b2 ee 82 05 cd c0 d5 65 56 e8 99 66 6d 4b 0a c0 5f ... 500 more bytes>,
2025-11-01T18:29:59.812043764Z       valid_from: 'Jun  8 00:00:00 2023 GMT',
2025-11-01T18:29:59.812108601Z       valid_to: 'Aug 25 23:59:59 2026 GMT',
2025-11-01T18:29:59.812155792Z       fingerprint: '31:60:09:91:ED:5F:EC:63:D3:55:A5:48:4A:6D:CC:78:7E:AD:89:BC',
2025-11-01T18:29:59.812208060Z       fingerprint256: '51:1C:1C:41:CB:7E:B2:A1:00:78:C3:2C:82:F1:79:25:BA:78:6D:E4:6C:63:39:21:D0:38:E7:40:9E:15:A5:EA',
2025-11-01T18:29:59.812266014Z       fingerprint512: '0D:CC:2C:1C:26:7B:B6:38:88:A2:BF:FD:E6:68:8A:81:95:BC:FF:01:4C:81:44:F0:1E:BA:E9:C1:4D:54:C2:91:0F:BC:78:E0:B1:3A:73:01:1C:93:A3:F5:C8:68:83:3A:A5:73:E5:C6:A6:E8:08:A5:C0:F5:99:6D:0B:C0:62:38',
2025-11-01T18:29:59.812336521Z       ext_key_usage: [Array],
2025-11-01T18:29:59.812377025Z       serialNumber: '0EFB7E547EDF0FF1069AEE57696D7BA0',
2025-11-01T18:29:59.812418817Z       raw: <Buffer 30 82 05 ac 30 82 04 94 a0 03 02 01 02 02 10 0e fb 7e 54 7e df 0f f1 06 9a ee 57 69 6d 7b a0 30 0d 06 09 2a 86 48 86 f7 0d 01 01 0c 05 00 30 61 31 0b ... 1406 more bytes>,
2025-11-01T18:29:59.812484591Z       issuerCertificate: [Object]
2025-11-01T18:29:59.812528773Z     }
2025-11-01T18:29:59.812565385Z   },
2025-11-01T18:29:59.812602532Z   host: 'fa.edge.foxdtc.digitalvideoplatform.com',
2025-11-01T18:29:59.812668020Z   reason: "Host: fa.edge.foxdtc.digitalvideoplatform.com. is not in the cert's altnames: DNS:settings.data.microsoft.com",
2025-11-01T18:29:59.812721099Z   config: {
2025-11-01T18:29:59.812761449Z     transitional: {
2025-11-01T18:29:59.812803511Z       silentJSONParsing: true,
2025-11-01T18:29:59.812845205Z       forcedJSONParsing: true,
2025-11-01T18:29:59.812889205Z       clarifyTimeoutError: false
2025-11-01T18:29:59.812931965Z     },
2025-11-01T18:29:59.812968753Z     adapter: [ 'xhr', 'http' ],
2025-11-01T18:29:59.813009298Z     transformRequest: [ [Function: transformRequest] ],
2025-11-01T18:29:59.813051390Z     transformResponse: [ [Function: transformResponse] ],
2025-11-01T18:29:59.813093684Z     timeout: 60000,
2025-11-01T18:29:59.813133726Z     xsrfCookieName: 'XSRF-TOKEN',
2025-11-01T18:29:59.813174745Z     xsrfHeaderName: 'X-XSRF-TOKEN',
2025-11-01T18:29:59.813216287Z     maxContentLength: -1,
2025-11-01T18:29:59.813257811Z     maxBodyLength: -1,
2025-11-01T18:29:59.813297494Z     env: { FormData: [Function [FormData]], Blob: [class Blob] },
2025-11-01T18:29:59.813343908Z     validateStatus: [Function: validateStatus],
2025-11-01T18:29:59.813385952Z     headers: AxiosHeaders {
2025-11-01T18:29:59.813428062Z       Accept: 'application/json, text/plain, */*',
2025-11-01T18:29:59.813472904Z       'Accept-Encoding': 'identity',
2025-11-01T18:29:59.813520239Z       'User-Agent': 'foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)'
2025-11-01T18:29:59.813578798Z     },
2025-11-01T18:29:59.813623271Z     method: 'get',
2025-11-01T18:29:59.813665440Z     url: 'https://fa.edge.foxdtc.digitalvideoplatform.com/1762099200_231ce9af2f49956fa3c2b5f9f6dd9869ada1cfac/*~/live-dr/ktxl-ue2/index_2.m3u8?zipcode=95630',
2025-11-01T18:29:59.813724554Z     data: undefined
2025-11-01T18:29:59.813768232Z   },
2025-11-01T18:29:59.813804876Z   request: <ref *1> Writable {
2025-11-01T18:29:59.813851414Z     _writableState: WritableState {
2025-11-01T18:29:59.813892270Z       objectMode: false,
2025-11-01T18:29:59.813932320Z       highWaterMark: 16384,
2025-11-01T18:29:59.813971993Z       finalCalled: false,
2025-11-01T18:29:59.814017443Z       needDrain: false,
2025-11-01T18:29:59.814058117Z       ending: false,
2025-11-01T18:29:59.814098186Z       ended: false,
2025-11-01T18:29:59.814139737Z       finished: false,
2025-11-01T18:29:59.814179310Z       destroyed: false,
2025-11-01T18:29:59.814219865Z       decodeStrings: true,
2025-11-01T18:29:59.814260572Z       defaultEncoding: 'utf8',
2025-11-01T18:29:59.814300858Z       length: 0,
2025-11-01T18:29:59.814340636Z       writing: false,
2025-11-01T18:29:59.814380484Z       corked: 0,
2025-11-01T18:29:59.814419842Z       sync: true,
2025-11-01T18:29:59.814459261Z       bufferProcessing: false,
2025-11-01T18:29:59.814501134Z       onwrite: [Function: bound onwrite],
2025-11-01T18:29:59.814545073Z       writecb: null,
2025-11-01T18:29:59.814585408Z       writelen: 0,
2025-11-01T18:29:59.814634640Z       afterWriteTickInfo: null,
2025-11-01T18:29:59.814676080Z       buffered: [],
2025-11-01T18:29:59.814714487Z       bufferedIndex: 0,
2025-11-01T18:29:59.814753279Z       allBuffers: true,
2025-11-01T18:29:59.814792859Z       allNoop: true,
2025-11-01T18:29:59.814834967Z       pendingcb: 0,
2025-11-01T18:29:59.814873596Z       constructed: true,
2025-11-01T18:29:59.814913417Z       prefinished: false,
2025-11-01T18:29:59.814955217Z       errorEmitted: false,
2025-11-01T18:29:59.814995226Z       emitClose: true,
2025-11-01T18:29:59.815034774Z       autoDestroy: true,
2025-11-01T18:29:59.815073977Z       errored: null,
2025-11-01T18:29:59.815113497Z       closed: false,
2025-11-01T18:29:59.815153295Z       closeEmitted: false,
2025-11-01T18:29:59.815193178Z       [Symbol(kOnFinished)]: []
2025-11-01T18:29:59.815236350Z     },
2025-11-01T18:29:59.815272695Z     _events: [Object: null prototype] {
2025-11-01T18:29:59.815313684Z       response: [Function: handleResponse],
2025-11-01T18:29:59.815354561Z       error: [Function: handleRequestError],
2025-11-01T18:29:59.815395598Z       socket: [Array]
2025-11-01T18:29:59.815435100Z     },
2025-11-01T18:29:59.815471093Z     _eventsCount: 3,
2025-11-01T18:29:59.815509654Z     _maxListeners: undefined,
2025-11-01T18:29:59.815549583Z     _options: {
2025-11-01T18:29:59.815587705Z       maxRedirects: 21,
2025-11-01T18:29:59.815635708Z       maxBodyLength: Infinity,
2025-11-01T18:29:59.815676096Z       protocol: 'https:',
2025-11-01T18:29:59.815720742Z       path: '/1762099200_231ce9af2f49956fa3c2b5f9f6dd9869ada1cfac/*~/live-dr/ktxl-ue2/index_2.m3u8?zipcode=95630',
2025-11-01T18:29:59.815767291Z       method: 'GET',
2025-11-01T18:29:59.815806129Z       headers: [Object: null prototype],
2025-11-01T18:29:59.815846607Z       agents: [Object],
2025-11-01T18:29:59.815885597Z       auth: undefined,
2025-11-01T18:29:59.815927795Z       beforeRedirect: [Function: dispatchBeforeRedirect],
2025-11-01T18:29:59.815969810Z       beforeRedirects: [Object],
2025-11-01T18:29:59.816010269Z       hostname: 'fa.edge.foxdtc.digitalvideoplatform.com',
2025-11-01T18:29:59.816052362Z       port: '',
2025-11-01T18:29:59.816091154Z       agent: undefined,
2025-11-01T18:29:59.816129916Z       nativeProtocols: [Object],
2025-11-01T18:29:59.816169789Z       pathname: '/1762099200_231ce9af2f49956fa3c2b5f9f6dd9869ada1cfac/*~/live-dr/ktxl-ue2/index_2.m3u8',
2025-11-01T18:29:59.816220708Z       search: '?zipcode=95630'
2025-11-01T18:29:59.816261110Z     },
2025-11-01T18:29:59.816297565Z     _ended: true,
2025-11-01T18:29:59.816338451Z     _ending: true,
2025-11-01T18:29:59.816380331Z     _redirectCount: 0,
2025-11-01T18:29:59.816419696Z     _redirects: [],
2025-11-01T18:29:59.816458063Z     _requestBodyLength: 0,
2025-11-01T18:29:59.816496413Z     _requestBodyBuffers: [],
2025-11-01T18:29:59.816534636Z     _onNativeResponse: [Function (anonymous)],
2025-11-01T18:29:59.816575554Z     _currentRequest: ClientRequest {
2025-11-01T18:29:59.816615862Z       _events: [Object: null prototype],
2025-11-01T18:29:59.816723272Z       _eventsCount: 7,
2025-11-01T18:29:59.816762406Z       _maxListeners: undefined,
2025-11-01T18:29:59.816804057Z       outputData: [],
2025-11-01T18:29:59.816843306Z       outputSize: 0,
2025-11-01T18:29:59.816886623Z       writable: true,
2025-11-01T18:29:59.816928275Z       destroyed: false,
2025-11-01T18:29:59.816967384Z       _last: true,
2025-11-01T18:29:59.817006168Z       chunkedEncoding: false,
2025-11-01T18:29:59.817045853Z       shouldKeepAlive: false,
2025-11-01T18:29:59.817085098Z       maxRequestsOnConnectionReached: false,
2025-11-01T18:29:59.817125748Z       _defaultKeepAlive: true,
2025-11-01T18:29:59.817164972Z       useChunkedEncodingByDefault: false,
2025-11-01T18:29:59.817206574Z       sendDate: false,
2025-11-01T18:29:59.817246434Z       _removedConnection: false,
2025-11-01T18:29:59.817285909Z       _removedContLen: false,
2025-11-01T18:29:59.817325232Z       _removedTE: false,
2025-11-01T18:29:59.817364388Z       strictContentLength: false,
2025-11-01T18:29:59.817406086Z       _contentLength: 0,
2025-11-01T18:29:59.817444588Z       _hasBody: true,
2025-11-01T18:29:59.817486939Z       _trailer: '',
2025-11-01T18:29:59.817525262Z       finished: true,
2025-11-01T18:29:59.817563840Z       _headerSent: true,
2025-11-01T18:29:59.817607073Z       _closed: false,
2025-11-01T18:29:59.817657923Z       socket: [TLSSocket],
2025-11-01T18:29:59.817697101Z       _header: 'GET /1762099200_231ce9af2f49956fa3c2b5f9f6dd9869ada1cfac/*~/live-dr/ktxl-ue2/index_2.m3u8?zipcode=95630 HTTP/1.1\r\n' +
2025-11-01T18:29:59.817747481Z         'Accept: application/json, text/plain, */*\r\n' +
2025-11-01T18:29:59.817790637Z         'Accept-Encoding: identity\r\n' +
2025-11-01T18:29:59.817833966Z         'User-Agent: foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)\r\n' +
2025-11-01T18:29:59.817885781Z         'Host: fa.edge.foxdtc.digitalvideoplatform.com\r\n' +
2025-11-01T18:29:59.817932082Z         'Connection: close\r\n' +
2025-11-01T18:29:59.817975470Z         '\r\n',
2025-11-01T18:29:59.818013398Z       _keepAliveTimeout: 0,
2025-11-01T18:29:59.818052501Z       _onPendingData: [Function: nop],
2025-11-01T18:29:59.818095738Z       agent: [Agent],
2025-11-01T18:29:59.818136131Z       socketPath: undefined,
2025-11-01T18:29:59.818178410Z       method: 'GET',
2025-11-01T18:29:59.818216383Z       maxHeaderSize: undefined,
2025-11-01T18:29:59.818256513Z       insecureHTTPParser: undefined,
2025-11-01T18:29:59.818296789Z       joinDuplicateHeaders: undefined,
2025-11-01T18:29:59.818342225Z       path: '/1762099200_231ce9af2f49956fa3c2b5f9f6dd9869ada1cfac/*~/live-dr/ktxl-ue2/index_2.m3u8?zipcode=95630',
2025-11-01T18:29:59.818393428Z       _ended: false,
2025-11-01T18:29:59.818434658Z       res: null,
2025-11-01T18:29:59.818475193Z       aborted: false,
2025-11-01T18:29:59.818517148Z       timeoutCb: null,
2025-11-01T18:29:59.818556315Z       upgradeOrConnect: false,
2025-11-01T18:29:59.818598845Z       parser: null,
2025-11-01T18:29:59.818647013Z       maxHeadersCount: null,
2025-11-01T18:29:59.818688287Z       reusedSocket: false,
2025-11-01T18:29:59.818728062Z       host: 'fa.edge.foxdtc.digitalvideoplatform.com',
2025-11-01T18:29:59.818768811Z       protocol: 'https:',
2025-11-01T18:29:59.818807474Z       _redirectable: [Circular *1],
2025-11-01T18:29:59.818849078Z       [Symbol(kCapture)]: false,
2025-11-01T18:29:59.818890139Z       [Symbol(kBytesWritten)]: 0,
2025-11-01T18:29:59.818929899Z       [Symbol(kNeedDrain)]: false,
2025-11-01T18:29:59.818969905Z       [Symbol(corked)]: 0,
2025-11-01T18:29:59.819008812Z       [Symbol(kOutHeaders)]: [Object: null prototype],
2025-11-01T18:29:59.819050713Z       [Symbol(errored)]: null,
2025-11-01T18:29:59.819091693Z       [Symbol(kHighWaterMark)]: 16384,
2025-11-01T18:29:59.819131589Z       [Symbol(kRejectNonStandardBodyWrites)]: false,
2025-11-01T18:29:59.819172768Z       [Symbol(kUniqueHeaders)]: null
2025-11-01T18:29:59.819212534Z     },
2025-11-01T18:29:59.819250628Z     _currentUrl: 'https://fa.edge.foxdtc.digitalvideoplatform.com/1762099200_231ce9af2f49956fa3c2b5f9f6dd9869ada1cfac/*~/live-dr/ktxl-ue2/index_2.m3u8?zipcode=95630',
2025-11-01T18:29:59.819299897Z     _timeout: null,
2025-11-01T18:29:59.819339367Z     [Symbol(kCapture)]: false
2025-11-01T18:29:59.819378239Z   },
2025-11-01T18:29:59.819414858Z   cause: Error [ERR_TLS_CERT_ALTNAME_INVALID]: Hostname/IP does not match certificate's altnames: Host: fa.edge.foxdtc.digitalvideoplatform.com. is not in the cert's altnames: DNS:settings.data.microsoft.com
2025-11-01T18:29:59.819475856Z       at new NodeError (node:internal/errors:405:5)
2025-11-01T18:29:59.819522272Z       at Object.checkServerIdentity (node:tls:337:12)
2025-11-01T18:29:59.819565988Z       at TLSSocket.onConnectSecure (node:_tls_wrap:1669:27)
2025-11-01T18:29:59.819610068Z       at TLSSocket.emit (node:events:517:28)
2025-11-01T18:29:59.819660922Z       at TLSSocket.emit (node:domain:489:12)
2025-11-01T18:29:59.819701743Z       at TLSSocket._finishInit (node:_tls_wrap:1070:8)
2025-11-01T18:29:59.819746407Z       at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:856:12) {
2025-11-01T18:29:59.819791246Z     reason: "Host: fa.edge.foxdtc.digitalvideoplatform.com. is not in the cert's altnames: DNS:settings.data.microsoft.com",
2025-11-01T18:29:59.819839977Z     host: 'fa.edge.foxdtc.digitalvideoplatform.com',
2025-11-01T18:29:59.819880803Z     cert: {
2025-11-01T18:29:59.819920061Z       subject: [Object: null prototype],
2025-11-01T18:29:59.819959957Z       issuer: [Object: null prototype],
2025-11-01T18:29:59.820003187Z       subjectaltname: 'DNS:settings.data.microsoft.com',
2025-11-01T18:29:59.820045055Z       infoAccess: [Object: null prototype],
2025-11-01T18:29:59.820085248Z       ca: false,
2025-11-01T18:29:59.820124410Z       modulus: 'C0D8BD61CAD84B3881BF8181D4C820A7B2A1CD9B17DEB38F77D357B8464051B8E774531A575447B610AAE0595E30FB4080991339BD744D2CB0D9D2E41DD643F611C1E5DD30B0C059816F30CA5E9F86F325E7BF984479CFE795390EF83486D3E13793A11B371C38A93026ED52ECACF9B6BF1945A70FF5343C28D35D38249F7C0C582B43F082E7457348A0CAC1D02E60402C480A0107BB5D044493ED5830B032C22D2E41DF14E5F55B3C3E7848781786312BAAA9AA2A91CD4CA298D88CDE724C03CE26437E57E7976D4B4E5023AE81CDE8B5037D576049971BA74966EFA2A18E330633C47253F66B86810B81F21A4353CEDA0DED1FFC96F6368540E1C1D1CF0C09',
2025-11-01T18:29:59.820185992Z       bits: 2048,
2025-11-01T18:29:59.820227286Z       exponent: '0x10001',
2025-11-01T18:29:59.820268504Z       pubkey: <Buffer 30 82 01 22 30 0d 06 09 2a 86 48 86 f7 0d 01 01 01 05 00 03 82 01 0f 00 30 82 01 0a 02 82 01 01 00 c0 d8 bd 61 ca d8 4b 38 81 bf 81 81 d4 c8 20 a7 b2 ... 244 more bytes>,
2025-11-01T18:29:59.820328910Z       valid_from: 'Oct 27 23:07:40 2025 GMT',
2025-11-01T18:29:59.820370806Z       valid_to: 'Apr 25 23:07:40 2026 GMT',
2025-11-01T18:29:59.820411465Z       fingerprint: '51:10:3D:D6:B9:9F:E9:75:23:FE:E6:E6:41:54:B1:77:F1:98:F3:5B',
2025-11-01T18:29:59.820457734Z       fingerprint256: '0C:BF:3F:E8:1B:0D:5F:EF:BB:C0:B8:06:99:83:36:6D:AE:C6:B2:FF:27:21:0C:D2:93:98:6C:6A:AE:01:76:0A',
2025-11-01T18:29:59.820506719Z       fingerprint512: 'B9:87:44:4C:4C:BD:13:BA:61:3E:E6:2D:16:CA:A4:4A:E7:9F:4E:F8:F2:D9:42:E9:61:FC:B1:3C:64:10:F1:77:1A:93:DB:07:8F:34:3A:04:81:30:34:9F:3C:89:AB:2B:15:AB:64:57:EC:FE:17:F2:88:B1:B3:09:1F:76:13:35',
2025-11-01T18:29:59.820565840Z       ext_key_usage: [Array],
2025-11-01T18:29:59.820604975Z       serialNumber: '330290BE85164FD586A1D3D54B00000290BE85',
2025-11-01T18:29:59.820657529Z       raw: <Buffer 30 82 08 7c 30 82 06 64 a0 03 02 01 02 02 13 33 02 90 be 85 16 4f d5 86 a1 d3 d5 4b 00 00 02 90 be 85 30 0d 06 09 2a 86 48 86 f7 0d 01 01 0c 05 00 30 ... 2126 more bytes>,
2025-11-01T18:29:59.820713636Z       issuerCertificate: [Object]
2025-11-01T18:29:59.820755244Z     },
2025-11-01T18:29:59.820791563Z     code: 'ERR_TLS_CERT_ALTNAME_INVALID'
2025-11-01T18:29:59.820831482Z   }
2025-11-01T18:29:59.820868033Z }
2025-11-01T18:30:05.387710490Z Channel #210 has an active event (College Football - Penn State at Ohio State). Going to start the stream.
2025-11-01T19:25:15.615273393Z Error fetching 210-segment-VMxsfi5d: write EPROTO 784AA3D3A77F0000:error:0A000410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure:ssl/record/rec_layer_s3.c:1605:SSL alert number 40
2025-11-01T19:25:15.615830054Z 
2025-11-01T19:25:16.134534340Z AxiosError: write EPROTO 784AA3D3A77F0000:error:0A000410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure:ssl/record/rec_layer_s3.c:1605:SSL alert number 40
2025-11-01T19:25:16.135020536Z 
2025-11-01T19:25:16.135096020Z     at Function.AxiosError.from (/app/node_modules/axios/lib/core/AxiosError.js:89:14)
2025-11-01T19:25:16.135156881Z     at RedirectableRequest.handleRequestError (/app/node_modules/axios/lib/adapters/http.js:533:25)
2025-11-01T19:25:16.135215228Z     at RedirectableRequest.emit (node:events:529:35)
2025-11-01T19:25:16.135263054Z     at RedirectableRequest.emit (node:domain:489:12)
2025-11-01T19:25:16.135310929Z     at ClientRequest.eventHandlers.<computed> (/app/node_modules/follow-redirects/index.js:14:24)
2025-11-01T19:25:16.135366098Z     at ClientRequest.emit (node:events:517:28)
2025-11-01T19:25:16.135411195Z     at ClientRequest.emit (node:domain:489:12)
2025-11-01T19:25:16.135453014Z     at TLSSocket.socketErrorListener (node:_http_client:501:9)
2025-11-01T19:25:16.135500949Z     at TLSSocket.emit (node:events:517:28)
2025-11-01T19:25:16.135584388Z     at TLSSocket.emit (node:domain:489:12) {
2025-11-01T19:25:16.135649332Z   syscall: 'write',
2025-11-01T19:25:16.135691450Z   code: 'EPROTO',
2025-11-01T19:25:16.135731811Z   errno: -71,
2025-11-01T19:25:16.135772047Z   config: {
2025-11-01T19:25:16.135814642Z     transitional: {
2025-11-01T19:25:16.135854699Z       silentJSONParsing: true,
2025-11-01T19:25:16.135900446Z       forcedJSONParsing: true,
2025-11-01T19:25:16.135941690Z       clarifyTimeoutError: false
2025-11-01T19:25:16.135983627Z     },
2025-11-01T19:25:16.136023730Z     adapter: [ 'xhr', 'http' ],
2025-11-01T19:25:16.136064340Z     transformRequest: [ [Function: transformRequest] ],
2025-11-01T19:25:16.136107265Z     transformResponse: [ [Function: transformResponse] ],
2025-11-01T19:25:16.136149505Z     timeout: 60000,
2025-11-01T19:25:16.136190942Z     xsrfCookieName: 'XSRF-TOKEN',
2025-11-01T19:25:16.136233091Z     xsrfHeaderName: 'X-XSRF-TOKEN',
2025-11-01T19:25:16.136278463Z     maxContentLength: -1,
2025-11-01T19:25:16.136320126Z     maxBodyLength: -1,
2025-11-01T19:25:16.136360673Z     env: { FormData: [Function [FormData]], Blob: [class Blob] },
2025-11-01T19:25:16.136410427Z     validateStatus: [Function: validateStatus],
2025-11-01T19:25:16.136452666Z     headers: AxiosHeaders {
2025-11-01T19:25:16.136496625Z       Accept: 'application/json, text/plain, */*',
2025-11-01T19:25:16.136546221Z       'User-Agent': 'foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)',
2025-11-01T19:25:16.136611307Z       'Accept-Encoding': 'gzip, compress, deflate, br'
2025-11-01T19:25:16.136679947Z     },
2025-11-01T19:25:16.136718356Z     responseType: 'arraybuffer',
2025-11-01T19:25:16.136759474Z     method: 'get',
2025-11-01T19:25:16.136800822Z     url: 'https://foxdtc-video.akamaized.net/live-dr/ktxl-ue2/hdntl=exp=1762108206~acl=%2f*~data=hdntl~hmac=c1e2c29d08b267a1b712b80d4801c5c8754c2fb30e48e1f0f64f3b486a96f5fd/segment_2_5200835.ts',
2025-11-01T19:25:16.136885324Z     data: undefined
2025-11-01T19:25:16.136929439Z   },
2025-11-01T19:25:16.136972082Z   request: <ref *1> Writable {
2025-11-01T19:25:16.137017556Z     _writableState: WritableState {
2025-11-01T19:25:16.137059495Z       objectMode: false,
2025-11-01T19:25:16.137105808Z       highWaterMark: 16384,
2025-11-01T19:25:16.137148854Z       finalCalled: false,
2025-11-01T19:25:16.137189785Z       needDrain: false,
2025-11-01T19:25:16.137229947Z       ending: false,
2025-11-01T19:25:16.137269328Z       ended: false,
2025-11-01T19:25:16.137310160Z       finished: false,
2025-11-01T19:25:16.137350024Z       destroyed: false,
2025-11-01T19:25:16.137390955Z       decodeStrings: true,
2025-11-01T19:25:16.137430774Z       defaultEncoding: 'utf8',
2025-11-01T19:25:16.137470989Z       length: 0,
2025-11-01T19:25:16.137509821Z       writing: false,
2025-11-01T19:25:16.137549244Z       corked: 0,
2025-11-01T19:25:16.137588986Z       sync: true,
2025-11-01T19:25:16.137643102Z       bufferProcessing: false,
2025-11-01T19:25:16.137689867Z       onwrite: [Function: bound onwrite],
2025-11-01T19:25:16.137733307Z       writecb: null,
2025-11-01T19:25:16.137776188Z       writelen: 0,
2025-11-01T19:25:16.137815727Z       afterWriteTickInfo: null,
2025-11-01T19:25:16.137866692Z       buffered: [],
2025-11-01T19:25:16.137905904Z       bufferedIndex: 0,
2025-11-01T19:25:16.137945055Z       allBuffers: true,
2025-11-01T19:25:16.137984498Z       allNoop: true,
2025-11-01T19:25:16.138026694Z       pendingcb: 0,
2025-11-01T19:25:16.138066425Z       constructed: true,
2025-11-01T19:25:16.138106608Z       prefinished: false,
2025-11-01T19:25:16.138145946Z       errorEmitted: false,
2025-11-01T19:25:16.138185478Z       emitClose: true,
2025-11-01T19:25:16.138224930Z       autoDestroy: true,
2025-11-01T19:25:16.138265004Z       errored: null,
2025-11-01T19:25:16.138303640Z       closed: false,
2025-11-01T19:25:16.138343532Z       closeEmitted: false,
2025-11-01T19:25:16.138386061Z       [Symbol(kOnFinished)]: []
2025-11-01T19:25:16.138430112Z     },
2025-11-01T19:25:16.138466317Z     _events: [Object: null prototype] {
2025-11-01T19:25:16.138508138Z       response: [Function: handleResponse],
2025-11-01T19:25:16.138549507Z       error: [Function: handleRequestError],
2025-11-01T19:25:16.138589249Z       socket: [Array]
2025-11-01T19:25:16.138638806Z     },
2025-11-01T19:25:16.138675814Z     _eventsCount: 3,
2025-11-01T19:25:16.138714553Z     _maxListeners: undefined,
2025-11-01T19:25:16.138754044Z     _options: {
2025-11-01T19:25:16.138792493Z       maxRedirects: 21,
2025-11-01T19:25:16.138832164Z       maxBodyLength: Infinity,
2025-11-01T19:25:16.138878031Z       protocol: 'https:',
2025-11-01T19:25:16.138919857Z       path: '/live-dr/ktxl-ue2/hdntl=exp=1762108206~acl=%2f*~data=hdntl~hmac=c1e2c29d08b267a1b712b80d4801c5c8754c2fb30e48e1f0f64f3b486a96f5fd/segment_2_5200835.ts',
2025-11-01T19:25:16.138970042Z       method: 'GET',
2025-11-01T19:25:16.139009079Z       headers: [Object: null prototype],
2025-11-01T19:25:16.139051367Z       agents: [Object],
2025-11-01T19:25:16.139090616Z       auth: undefined,
2025-11-01T19:25:16.139133331Z       beforeRedirect: [Function: dispatchBeforeRedirect],
2025-11-01T19:25:16.139177567Z       beforeRedirects: [Object],
2025-11-01T19:25:16.139216321Z       hostname: 'foxdtc-video.akamaized.net',
2025-11-01T19:25:16.139258795Z       port: '',
2025-11-01T19:25:16.139297534Z       agent: undefined,
2025-11-01T19:25:16.139336314Z       nativeProtocols: [Object],
2025-11-01T19:25:16.139376289Z       pathname: '/live-dr/ktxl-ue2/hdntl=exp=1762108206~acl=%2f*~data=hdntl~hmac=c1e2c29d08b267a1b712b80d4801c5c8754c2fb30e48e1f0f64f3b486a96f5fd/segment_2_5200835.ts'
2025-11-01T19:25:16.139424783Z     },
2025-11-01T19:25:16.139461296Z     _ended: true,
2025-11-01T19:25:16.139500690Z     _ending: true,
2025-11-01T19:25:16.139540346Z     _redirectCount: 0,
2025-11-01T19:25:16.139579491Z     _redirects: [],
2025-11-01T19:25:16.139625215Z     _requestBodyLength: 0,
2025-11-01T19:25:16.139667362Z     _requestBodyBuffers: [],
2025-11-01T19:25:16.139706472Z     _onNativeResponse: [Function (anonymous)],
2025-11-01T19:25:16.139747523Z     _currentRequest: ClientRequest {
2025-11-01T19:25:16.139787505Z       _events: [Object: null prototype],
2025-11-01T19:25:16.139827488Z       _eventsCount: 7,
2025-11-01T19:25:16.139866208Z       _maxListeners: undefined,
2025-11-01T19:25:16.139906824Z       outputData: [],
2025-11-01T19:25:16.139945651Z       outputSize: 0,
2025-11-01T19:25:16.139988225Z       writable: true,
2025-11-01T19:25:16.140026966Z       destroyed: true,
2025-11-01T19:25:16.140066036Z       _last: true,
2025-11-01T19:25:16.140107180Z       chunkedEncoding: false,
2025-11-01T19:25:16.140147970Z       shouldKeepAlive: false,
2025-11-01T19:25:16.140187678Z       maxRequestsOnConnectionReached: false,
2025-11-01T19:25:16.140230598Z       _defaultKeepAlive: true,
2025-11-01T19:25:16.140271627Z       useChunkedEncodingByDefault: false,
2025-11-01T19:25:16.140312208Z       sendDate: false,
2025-11-01T19:25:16.140354752Z       _removedConnection: false,
2025-11-01T19:25:16.140394639Z       _removedContLen: false,
2025-11-01T19:25:16.140433986Z       _removedTE: false,
2025-11-01T19:25:16.140473672Z       strictContentLength: false,
2025-11-01T19:25:16.140515456Z       _contentLength: 0,
2025-11-01T19:25:16.140554218Z       _hasBody: true,
2025-11-01T19:25:16.140595251Z       _trailer: '',
2025-11-01T19:25:16.140640628Z       finished: true,
2025-11-01T19:25:16.140679845Z       _headerSent: true,
2025-11-01T19:25:16.140719069Z       _closed: true,
2025-11-01T19:25:16.140760839Z       socket: [TLSSocket],
2025-11-01T19:25:16.140799594Z       _header: 'GET /live-dr/ktxl-ue2/hdntl=exp=1762108206~acl=%2f*~data=hdntl~hmac=c1e2c29d08b267a1b712b80d4801c5c8754c2fb30e48e1f0f64f3b486a96f5fd/segment_2_5200835.ts HTTP/1.1\r\n' +
2025-11-01T19:25:16.140851809Z         'Accept: application/json, text/plain, */*\r\n' +
2025-11-01T19:25:16.140894993Z         'User-Agent: foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)\r\n' +
2025-11-01T19:25:16.140948830Z         'Accept-Encoding: gzip, compress, deflate, br\r\n' +
2025-11-01T19:25:16.140994375Z         'Host: foxdtc-video.akamaized.net\r\n' +
2025-11-01T19:25:16.141037425Z         'Connection: close\r\n' +
2025-11-01T19:25:16.141079184Z         '\r\n',
2025-11-01T19:25:16.141116638Z       _keepAliveTimeout: 0,
2025-11-01T19:25:16.141158769Z       _onPendingData: [Function: nop],
2025-11-01T19:25:16.141203491Z       agent: [Agent],
2025-11-01T19:25:16.141242104Z       socketPath: undefined,
2025-11-01T19:25:16.141283567Z       method: 'GET',
2025-11-01T19:25:16.141321657Z       maxHeaderSize: undefined,
2025-11-01T19:25:16.141362162Z       insecureHTTPParser: undefined,
2025-11-01T19:25:16.141402748Z       joinDuplicateHeaders: undefined,
2025-11-01T19:25:16.141443287Z       path: '/live-dr/ktxl-ue2/hdntl=exp=1762108206~acl=%2f*~data=hdntl~hmac=c1e2c29d08b267a1b712b80d4801c5c8754c2fb30e48e1f0f64f3b486a96f5fd/segment_2_5200835.ts',
2025-11-01T19:25:16.141490742Z       _ended: false,
2025-11-01T19:25:16.141531086Z       res: null,
2025-11-01T19:25:16.141572722Z       aborted: false,
2025-11-01T19:25:16.141613053Z       timeoutCb: null,
2025-11-01T19:25:16.141661219Z       upgradeOrConnect: false,
2025-11-01T19:25:16.141701295Z       parser: null,
2025-11-01T19:25:16.141740233Z       maxHeadersCount: null,
2025-11-01T19:25:16.141779530Z       reusedSocket: false,
2025-11-01T19:25:16.141820432Z       host: 'foxdtc-video.akamaized.net',
2025-11-01T19:25:16.141861108Z       protocol: 'https:',
2025-11-01T19:25:16.141900048Z       _redirectable: [Circular *1],
2025-11-01T19:25:16.141941786Z       [Symbol(kCapture)]: false,
2025-11-01T19:25:16.141986659Z       [Symbol(kBytesWritten)]: 0,
2025-11-01T19:25:16.142027320Z       [Symbol(kNeedDrain)]: false,
2025-11-01T19:25:16.142086772Z       [Symbol(corked)]: 0,
2025-11-01T19:25:16.142126525Z       [Symbol(kOutHeaders)]: [Object: null prototype],
2025-11-01T19:25:16.142168795Z       [Symbol(errored)]: null,
2025-11-01T19:25:16.142210435Z       [Symbol(kHighWaterMark)]: 16384,
2025-11-01T19:25:16.142250722Z       [Symbol(kRejectNonStandardBodyWrites)]: false,
2025-11-01T19:25:16.142292407Z       [Symbol(kUniqueHeaders)]: null
2025-11-01T19:25:16.142332775Z     },
2025-11-01T19:25:16.142369582Z     _currentUrl: 'https://foxdtc-video.akamaized.net/live-dr/ktxl-ue2/hdntl=exp=1762108206~acl=%2f*~data=hdntl~hmac=c1e2c29d08b267a1b712b80d4801c5c8754c2fb30e48e1f0f64f3b486a96f5fd/segment_2_5200835.ts',
2025-11-01T19:25:16.142423643Z     _timeout: null,
2025-11-01T19:25:16.142465922Z     [Symbol(kCapture)]: false
2025-11-01T19:25:16.142506764Z   },
2025-11-01T19:25:16.142543285Z   cause: Error: write EPROTO 784AA3D3A77F0000:error:0A000410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure:ssl/record/rec_layer_s3.c:1605:SSL alert number 40
2025-11-01T19:25:16.142598611Z   
2025-11-01T19:25:16.142645580Z       at WriteWrap.onWriteComplete [as oncomplete] (node:internal/stream_base_commons:94:16) {
2025-11-01T19:25:16.142696482Z     errno: -71,
2025-11-01T19:25:16.142735784Z     code: 'EPROTO',
2025-11-01T19:25:16.142776312Z     syscall: 'write'
2025-11-01T19:25:16.142815720Z   }
2025-11-01T19:25:16.142851710Z }
2025-11-01T19:25:16.142887724Z Error fetching 210-segment-VMxsfi5d: Cached segment or key failed to resolve!

College Football - Texas Tech at Kansas State 12:30-16:00 interrupted
CDVR log

2025/11/01 12:31:09.484713 [DVR] Error running job 1762025400-ch43 College Football: Could not fetch playlist from 192.168.1.4:8185: GET: http://192.168.1.4:8185/chunklist/210/e8qeDFm7.m3u8: 404 Not Found
Container log
2025-11-01T19:31:04.418994792Z AxiosError: getaddrinfo ENOTFOUND foxdtc-video.akamaized.net
2025-11-01T19:31:04.419684538Z     at Function.AxiosError.from (/app/node_modules/axios/lib/core/AxiosError.js:89:14)
2025-11-01T19:31:04.419880430Z     at RedirectableRequest.handleRequestError (/app/node_modules/axios/lib/adapters/http.js:533:25)
2025-11-01T19:31:04.419980200Z     at RedirectableRequest.emit (node:events:529:35)
2025-11-01T19:31:04.420064740Z     at RedirectableRequest.emit (node:domain:489:12)
2025-11-01T19:31:04.420124381Z     at ClientRequest.eventHandlers.<computed> (/app/node_modules/follow-redirects/index.js:14:24)
2025-11-01T19:31:04.419058932Z Could not parse chunklist properly!
2025-11-01T19:31:04.420546097Z Could not get chunklist for channel #210.
2025-11-01T19:31:04.420242703Z     at ClientRequest.emit (node:events:517:28)
2025-11-01T19:31:04.420802232Z     at ClientRequest.emit (node:domain:489:12)
2025-11-01T19:31:04.420855081Z     at TLSSocket.socketErrorListener (node:_http_client:501:9)
2025-11-01T19:31:04.420915250Z     at TLSSocket.emit (node:events:517:28)
2025-11-01T19:31:04.420963527Z     at TLSSocket.emit (node:domain:489:12) {
2025-11-01T19:31:04.421016626Z   hostname: 'foxdtc-video.akamaized.net',
2025-11-01T19:31:04.421074639Z   syscall: 'getaddrinfo',
2025-11-01T19:31:04.421116796Z   code: 'ENOTFOUND',
2025-11-01T19:31:04.421167883Z   errno: -3007,
2025-11-01T19:31:04.421217781Z   config: {
2025-11-01T19:31:04.421258201Z     transitional: {
2025-11-01T19:31:04.421307585Z       silentJSONParsing: true,
2025-11-01T19:31:04.421354296Z       forcedJSONParsing: true,
2025-11-01T19:31:04.421419572Z       clarifyTimeoutError: false
2025-11-01T19:31:04.421566010Z     },
2025-11-01T19:31:04.421636344Z     adapter: [ 'xhr', 'http' ],
2025-11-01T19:31:04.421680952Z     transformRequest: [ [Function: transformRequest] ],
2025-11-01T19:31:04.421735608Z     transformResponse: [ [Function: transformResponse] ],
2025-11-01T19:31:04.421778141Z     timeout: 60000,
2025-11-01T19:31:04.421841922Z     xsrfCookieName: 'XSRF-TOKEN',
2025-11-01T19:31:04.421895421Z     xsrfHeaderName: 'X-XSRF-TOKEN',
2025-11-01T19:31:04.421949799Z     maxContentLength: -1,
2025-11-01T19:31:04.421991649Z     maxBodyLength: -1,
2025-11-01T19:31:04.422041709Z     env: { FormData: [Function [FormData]], Blob: [class Blob] },
2025-11-01T19:31:04.422088411Z     validateStatus: [Function: validateStatus],
2025-11-01T19:31:04.422140283Z     headers: AxiosHeaders {
2025-11-01T19:31:04.422191089Z       Accept: 'application/json, text/plain, */*',
2025-11-01T19:31:04.422236573Z       'Accept-Encoding': 'identity',
2025-11-01T19:31:04.422289992Z       'User-Agent': 'foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)'
2025-11-01T19:31:04.422364865Z     },
2025-11-01T19:31:04.422413438Z     method: 'get',
2025-11-01T19:31:04.422454533Z     url: 'https://foxdtc-video.akamaized.net/live-dr/ktxl-ue2/hdntl=exp=1762108206~acl=%2f*~data=hdntl~hmac=c1e2c29d08b267a1b712b80d4801c5c8754c2fb30e48e1f0f64f3b486a96f5fd/index_2.m3u8?zipcode=95630',
2025-11-01T19:31:04.422547184Z     data: undefined
2025-11-01T19:31:04.422600281Z   },
2025-11-01T19:31:04.422654222Z   request: <ref *1> Writable {
2025-11-01T19:31:04.422709484Z     _writableState: WritableState {
2025-11-01T19:31:04.422752407Z       objectMode: false,
2025-11-01T19:31:04.422802668Z       highWaterMark: 16384,
2025-11-01T19:31:04.422844393Z       finalCalled: false,
2025-11-01T19:31:04.422895394Z       needDrain: false,
2025-11-01T19:31:04.422936114Z       ending: false,
2025-11-01T19:31:04.422986793Z       ended: false,
2025-11-01T19:31:04.423035620Z       finished: false,
2025-11-01T19:31:04.423076231Z       destroyed: false,
2025-11-01T19:31:04.423127538Z       decodeStrings: true,
2025-11-01T19:31:04.423168388Z       defaultEncoding: 'utf8',
2025-11-01T19:31:04.423208704Z       length: 0,
2025-11-01T19:31:04.423249102Z       writing: false,
2025-11-01T19:31:04.423289641Z       corked: 0,
2025-11-01T19:31:04.423334288Z       sync: true,
2025-11-01T19:31:04.423374089Z       bufferProcessing: false,
2025-11-01T19:31:04.423416004Z       onwrite: [Function: bound onwrite],
2025-11-01T19:31:04.423458898Z       writecb: null,
2025-11-01T19:31:04.423499595Z       writelen: 0,
2025-11-01T19:31:04.423539557Z       afterWriteTickInfo: null,
2025-11-01T19:31:04.423580843Z       buffered: [],
2025-11-01T19:31:04.423643558Z       bufferedIndex: 0,
2025-11-01T19:31:04.423691482Z       allBuffers: true,
2025-11-01T19:31:04.423733406Z       allNoop: true,
2025-11-01T19:31:04.423775789Z       pendingcb: 0,
2025-11-01T19:31:04.423816597Z       constructed: true,
2025-11-01T19:31:04.423857024Z       prefinished: false,
2025-11-01T19:31:04.423897083Z       errorEmitted: false,
2025-11-01T19:31:04.423937179Z       emitClose: true,
2025-11-01T19:31:04.423976742Z       autoDestroy: true,
2025-11-01T19:31:04.424024150Z       errored: null,
2025-11-01T19:31:04.424063734Z       closed: false,
2025-11-01T19:31:04.424103447Z       closeEmitted: false,
2025-11-01T19:31:04.424143880Z       [Symbol(kOnFinished)]: []
2025-11-01T19:31:04.424185247Z     },
2025-11-01T19:31:04.424221169Z     _events: [Object: null prototype] {
2025-11-01T19:31:04.424263449Z       response: [Function: handleResponse],
2025-11-01T19:31:04.424305973Z       error: [Function: handleRequestError],
2025-11-01T19:31:04.424350032Z       socket: [Array]
2025-11-01T19:31:04.424390703Z     },
2025-11-01T19:31:04.424427393Z     _eventsCount: 3,
2025-11-01T19:31:04.424466583Z     _maxListeners: undefined,
2025-11-01T19:31:04.424507302Z     _options: {
2025-11-01T19:31:04.424549060Z       maxRedirects: 21,
2025-11-01T19:31:04.424589304Z       maxBodyLength: Infinity,
2025-11-01T19:31:04.424659873Z       protocol: 'https:',
2025-11-01T19:31:04.424706065Z       path: '/live-dr/ktxl-ue2/hdntl=exp=1762108206~acl=%2f*~data=hdntl~hmac=c1e2c29d08b267a1b712b80d4801c5c8754c2fb30e48e1f0f64f3b486a96f5fd/index_2.m3u8?zipcode=95630',
2025-11-01T19:31:04.424768319Z       method: 'GET',
2025-11-01T19:31:04.424808154Z       headers: [Object: null prototype],
2025-11-01T19:31:04.424849484Z       agents: [Object],
2025-11-01T19:31:04.424888203Z       auth: undefined,
2025-11-01T19:31:04.424928163Z       beforeRedirect: [Function: dispatchBeforeRedirect],
2025-11-01T19:31:04.424970703Z       beforeRedirects: [Object],
2025-11-01T19:31:04.425012313Z       hostname: 'foxdtc-video.akamaized.net',
2025-11-01T19:31:04.425055050Z       port: '',
2025-11-01T19:31:04.425094036Z       agent: undefined,
2025-11-01T19:31:04.425136926Z       nativeProtocols: [Object],
2025-11-01T19:31:04.425178440Z       pathname: '/live-dr/ktxl-ue2/hdntl=exp=1762108206~acl=%2f*~data=hdntl~hmac=c1e2c29d08b267a1b712b80d4801c5c8754c2fb30e48e1f0f64f3b486a96f5fd/index_2.m3u8',
2025-11-01T19:31:04.425232920Z       search: '?zipcode=95630'
2025-11-01T19:31:04.425276506Z     },
2025-11-01T19:31:04.425314752Z     _ended: true,
2025-11-01T19:31:04.425354554Z     _ending: true,
2025-11-01T19:31:04.425394110Z     _redirectCount: 0,
2025-11-01T19:31:04.425434225Z     _redirects: [],
2025-11-01T19:31:04.425473812Z     _requestBodyLength: 0,
2025-11-01T19:31:04.425513251Z     _requestBodyBuffers: [],
2025-11-01T19:31:04.425552146Z     _onNativeResponse: [Function (anonymous)],
2025-11-01T19:31:04.425596894Z     _currentRequest: ClientRequest {
2025-11-01T19:31:04.425655585Z       _events: [Object: null prototype],
2025-11-01T19:31:04.425702346Z       _eventsCount: 7,
2025-11-01T19:31:04.425747663Z       _maxListeners: undefined,
2025-11-01T19:31:04.425791677Z       outputData: [],
2025-11-01T19:31:04.425842281Z       outputSize: 0,
2025-11-01T19:31:04.425882733Z       writable: true,
2025-11-01T19:31:04.425926466Z       destroyed: false,
2025-11-01T19:31:04.425965889Z       _last: true,
2025-11-01T19:31:04.426005458Z       chunkedEncoding: false,
2025-11-01T19:31:04.426046766Z       shouldKeepAlive: false,
2025-11-01T19:31:04.426090340Z       maxRequestsOnConnectionReached: false,
2025-11-01T19:31:04.426131254Z       _defaultKeepAlive: true,
2025-11-01T19:31:04.426172874Z       useChunkedEncodingByDefault: false,
2025-11-01T19:31:04.426222363Z       sendDate: false,
2025-11-01T19:31:04.426263591Z       _removedConnection: false,
2025-11-01T19:31:04.426304183Z       _removedContLen: false,
2025-11-01T19:31:04.426344189Z       _removedTE: false,
2025-11-01T19:31:04.426383631Z       strictContentLength: false,
2025-11-01T19:31:04.426424995Z       _contentLength: 0,
2025-11-01T19:31:04.426464338Z       _hasBody: true,
2025-11-01T19:31:04.426503689Z       _trailer: '',
2025-11-01T19:31:04.426546207Z       finished: true,
2025-11-01T19:31:04.426585648Z       _headerSent: true,
2025-11-01T19:31:04.426647943Z       _closed: false,
2025-11-01T19:31:04.426689538Z       socket: [TLSSocket],
2025-11-01T19:31:04.426729150Z       _header: 'GET /live-dr/ktxl-ue2/hdntl=exp=1762108206~acl=%2f*~data=hdntl~hmac=c1e2c29d08b267a1b712b80d4801c5c8754c2fb30e48e1f0f64f3b486a96f5fd/index_2.m3u8?zipcode=95630 HTTP/1.1\r\n' +
2025-11-01T19:31:04.426791323Z         'Accept: application/json, text/plain, */*\r\n' +
2025-11-01T19:31:04.426840351Z         'Accept-Encoding: identity\r\n' +
2025-11-01T19:31:04.426882057Z         'User-Agent: foxone-androidtv/1.3.0 (Linux; Android 12; en-us; onn. 4K Streaming Box Build/SGZ1.221127.063.A1.9885170)\r\n' +
2025-11-01T19:31:04.426939622Z         'Host: foxdtc-video.akamaized.net\r\n' +
2025-11-01T19:31:04.426988071Z         'Connection: close\r\n' +
2025-11-01T19:31:04.427030406Z         '\r\n',
2025-11-01T19:31:04.427071877Z       _keepAliveTimeout: 0,
2025-11-01T19:31:04.427111353Z       _onPendingData: [Function: nop],
2025-11-01T19:31:04.427155961Z       agent: [Agent],
2025-11-01T19:31:04.427195258Z       socketPath: undefined,
2025-11-01T19:31:04.427235491Z       method: 'GET',
2025-11-01T19:31:04.427274223Z       maxHeaderSize: undefined,
2025-11-01T19:31:04.427317737Z       insecureHTTPParser: undefined,
2025-11-01T19:31:04.427357988Z       joinDuplicateHeaders: undefined,
2025-11-01T19:31:04.427474525Z       path: '/live-dr/ktxl-ue2/hdntl=exp=1762108206~acl=%2f*~data=hdntl~hmac=c1e2c29d08b267a1b712b80d4801c5c8754c2fb30e48e1f0f64f3b486a96f5fd/index_2.m3u8?zipcode=95630',
2025-11-01T19:31:04.427531132Z       _ended: false,
2025-11-01T19:31:04.427570824Z       res: null,
2025-11-01T19:31:04.427614089Z       aborted: false,
2025-11-01T19:31:04.427674041Z       timeoutCb: null,
2025-11-01T19:31:04.427713219Z       upgradeOrConnect: false,
2025-11-01T19:31:04.427752662Z       parser: null,
2025-11-01T19:31:04.427801637Z       maxHeadersCount: null,
2025-11-01T19:31:04.427846342Z       reusedSocket: false,
2025-11-01T19:31:04.427886391Z       host: 'foxdtc-video.akamaized.net',
2025-11-01T19:31:04.427927521Z       protocol: 'https:',
2025-11-01T19:31:04.427966447Z       _redirectable: [Circular *1],
2025-11-01T19:31:04.428010704Z       [Symbol(kCapture)]: false,
2025-11-01T19:31:04.428052798Z       [Symbol(kBytesWritten)]: 0,
2025-11-01T19:31:04.428095231Z       [Symbol(kNeedDrain)]: false,
2025-11-01T19:31:04.428137323Z       [Symbol(corked)]: 0,
2025-11-01T19:31:04.428179321Z       [Symbol(kOutHeaders)]: [Object: null prototype],
2025-11-01T19:31:04.428221654Z       [Symbol(errored)]: null,
2025-11-01T19:31:04.428261153Z       [Symbol(kHighWaterMark)]: 16384,
2025-11-01T19:31:04.428307260Z       [Symbol(kRejectNonStandardBodyWrites)]: false,
2025-11-01T19:31:04.428354957Z       [Symbol(kUniqueHeaders)]: null
2025-11-01T19:31:04.428395756Z     },
2025-11-01T19:31:04.428432788Z     _currentUrl: 'https://foxdtc-video.akamaized.net/live-dr/ktxl-ue2/hdntl=exp=1762108206~acl=%2f*~data=hdntl~hmac=c1e2c29d08b267a1b712b80d4801c5c8754c2fb30e48e1f0f64f3b486a96f5fd/index_2.m3u8?zipcode=95630',
2025-11-01T19:31:04.428488760Z     _timeout: null,
2025-11-01T19:31:04.428533814Z     [Symbol(kCapture)]: false
2025-11-01T19:31:04.428573726Z   },
2025-11-01T19:31:04.428610735Z   cause: Error: getaddrinfo ENOTFOUND foxdtc-video.akamaized.net
2025-11-01T19:31:04.428671199Z       at GetAddrInfoReqWrap.onlookup [as oncomplete] (node:dns:107:26) {
2025-11-01T19:31:04.428821332Z     errno: -3007,
2025-11-01T19:31:04.428865824Z     code: 'ENOTFOUND',
2025-11-01T19:31:04.428905543Z     syscall: 'getaddrinfo',
2025-11-01T19:31:04.428947735Z     hostname: 'foxdtc-video.akamaized.net'
2025-11-01T19:31:04.428988741Z   }
2025-11-01T19:31:04.429024899Z }
2025-11-01T19:31:10.548150333Z Channel #210 has an active event (College Football - Texas Tech at Kansas State). Going to start the stream.

This recording is still getting interrupted, 5 times so far.

2025/11/01 12:31:09.484713 [DVR] Error running job 1762025400-ch43 College Football: Could not fetch playlist from 192.168.1.4:8185: GET: http://192.168.1.4:8185/chunklist/210/e8qeDFm7.m3u8: 404 Not Found
2025/11/01 14:09:36.671376 [DVR] Error running job 1762025400-ch43 College Football: Could not fetch playlist from 192.168.1.4:8185: GET: http://192.168.1.4:8185/chunklist/210/s6lr0EPi.m3u8: 404 Not Found
2025/11/01 14:11:41.703112 [DVR] Error running job 1762025400-ch43 College Football: Could not fetch playlist from 192.168.1.4:8185: GET: http://192.168.1.4:8185/chunklist/210/zflmFhbZ.m3u8: 404 Not Found
2025/11/01 14:22:54.273317 [DVR] Error running job 1762025400-ch43 College Football: Could not fetch playlist from 192.168.1.4:8185: GET: http://192.168.1.4:8185/chunklist/210/ffusKz6w.m3u8: 404 Not Found
2025/11/01 15:32:58.822638 [DVR] Error running job 1762025400-ch43 College Football: Could not fetch playlist from 192.168.1.4:8185: GET: http://192.168.1.4:8185/chunklist/210/aG0pjpqX.m3u8: 404 Not Found

Since errors in the container log are quite verbose (total container log error entries are 1,185 lines, 85,180 characters), I'll just post the first line for each.


Channels DVR log

2025/11/01 12:31:09.484713 [DVR] Error running job 1762025400-ch43 College Football: Could not fetch playlist from 192.168.1.4:8185: GET: http://192.168.1.4:8185/chunklist/210/e8qeDFm7.m3u8: 404 Not Found

Container log error is 185 lines, 12722 characters

2025-11-01T19:31:04.418994792Z AxiosError: getaddrinfo ENOTFOUND foxdtc-video.akamaized.net

Channels DVR log

2025/11/01 14:09:36.671376 [DVR] Error running job 1762025400-ch43 College Football: Could not fetch playlist from 192.168.1.4:8185: GET: http://192.168.1.4:8185/chunklist/210/s6lr0EPi.m3u8: 404 Not Found

Container log error is 186 lines, 12644 characters

2025-11-01T21:09:31.502312363Z AxiosError: getaddrinfo ENOTFOUND fa.edge.foxdtc.digitalvideoplatform.com

Channels DVR log

2025/11/01 14:11:41.703112 [DVR] Error running job 1762025400-ch43 College Football: Could not fetch playlist from 192.168.1.4:8185: GET: http://192.168.1.4:8185/chunklist/210/zflmFhbZ.m3u8: 404 Not Found

Container log error is 186 lines, 12722 characters

2025-11-01T21:11:36.684368088Z AxiosError: write EPROTO 784AA3D3A77F0000:error:0A000410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure:ssl/record/rec_layer_s3.c:1605:SSL alert number 40

Channels DVR log

2025/11/01 14:22:54.273317 [DVR] Error running job 1762025400-ch43 College Football: Could not fetch playlist from 192.168.1.4:8185: GET: http://192.168.1.4:8185/chunklist/210/ffusKz6w.m3u8: 404 Not Found

Container log error is 265 lines, 22361 characters

2025-11-01T21:22:49.164785165Z AxiosError: Hostname/IP does not match certificate's altnames: Host: cf.edge.foxdtc.digitalvideoplatform.com. is not in the cert's altnames: DNS:citiretailservices.citibankonline.com, DNS:crs.registermycc.com, DNS:retailservicesconsumer.citi.com, DNS:www.retailservicesconsumer.citi.com

Channels DVR log

2025/11/01 15:32:58.822638 [DVR] Error running job 1762025400-ch43 College Football: Could not fetch playlist from 192.168.1.4:8185: GET: http://192.168.1.4:8185/chunklist/210/aG0pjpqX.m3u8: 404 Not Found

Container log error is 363 lines, 24731 characters

2025-11-01T22:32:54.595945586Z AxiosError: Request failed with status code 503