[Bug] RangeError: Invalid time value
Contact Details
No response
What happened?
A bug happened!
Version
0.1.0
What browser did you experience the the problem on?
Microsoft Edge (125.0.0.0)
What operating system are you using?
Windows (NT 10.0)
Relevant log output
RangeError: Invalid time value
at nHe (http://192.168.1.22:3333/web/assets/index-9ade4abc.js:363:88917)
at nA (http://192.168.1.22:3333/web/assets/index-9ade4abc.js:62:19550)
at nU (http://192.168.1.22:3333/web/assets/index-9ade4abc.js:64:44096)
at J5 (http://192.168.1.22:3333/web/assets/index-9ade4abc.js:64:39817)
at Mee (http://192.168.1.22:3333/web/assets/index-9ade4abc.js:64:39744)
at cb (http://192.168.1.22:3333/web/assets/index-9ade4abc.js:64:39595)
at _P (http://192.168.1.22:3333/web/assets/index-9ade4abc.js:64:35958)
at X5 (http://192.168.1.22:3333/web/assets/index-9ade4abc.js:64:34905)
at E (http://192.168.1.22:3333/web/assets/index-9ade4abc.js:49:1558)
at MessagePort._ (http://192.168.1.22:3333/web/assets/index-9ade4abc.js:49:1920)
Are you able to provide any other details? Were you adding a ton of programs? What sort of program tools, if any, were you using? Any details would be very helpful here!
This is just me adding one TV Show, when saving I get
Error saving programs. Zodios: Invalid Body parameter 'body'
Hmm ok, that's tough to debug without additional context. There should be more details in that log, too, which is weird.
I don't think this feature is completely broken since some others and I have been testing 1000s of shows at once...so we have to find a way to get more error details from your situation
The initial error "invalid time value" is different from the second error on the save request. Have you tried pulling more recent builds and retrying?
The initial error "invalid time value" is different from the second error on the save request. Have you tried pulling more recent builds and retrying?
I updated tonight.
It only gives the Zodios error when I include some shows in the programming.
For the Zodios error, there should be some more details in the developer tools console that would be helpful to paste in here.
ChannelProgrammingConfig.tsx:101 Error: Zodios: Invalid Body parameter 'body' at MVe.request (index.mjs:4:2592) at async tB.interceptRequest (index.mjs:9:782) at async OVe.request (index.mjs:9:6099)Caused by: ZodError at get error (index.mjs:538:31) at MVe.request (index.mjs:4:2644) at async tB.interceptRequest (index.mjs:9:782) at async OVe.request (index.mjs:9:6099) ZodError at get error (index.mjs:538:31) at MVe.request (index.mjs:4:2644) at async tB.interceptRequest (index.mjs:9:782) at async OVe.request (index.mjs:9:6099) onError @ ChannelProgrammingConfig.tsx:101 execute @ mutation.js:127 Show 1 more frame Show less [NEW] Explain Console errors by using Copilot in Edge: click
to explain an error.
Learn more
Don't show again
Error: Zodios: Invalid Body parameter 'body' at MVe.request (index.mjs:4:2592) at async tB.interceptRequest (index.mjs:9:782) at async OVe.request (index.mjs:9:6099)Caused by: ZodError at get error (index.mjs:538:31) at MVe.request (index.mjs:4:2644) at async tB.interceptRequest (index.mjs:9:782) at async OVe.request (index.mjs:9:6099)
I see. Im still surprised by the lack of error details: that line should print a bunch of info: https://github.com/chrisbenincasa/tunarr/blob/dev/web/src/components/channel_config/ChannelProgrammingConfig.tsx#L99-L102
I'm going to push a change that hopefully will get more details printed.
OK once e486db84abc1e6ea1050edb14f1a30355d610f2a lands in the edge build we should get the actual type error
I get the same thing when adding some music videos to recreate a MTV like experience. Doesn't have to be many items, I have a consistent repro
Just commented something similar on #638 - we've seen this a few times. There should be more details as to what field Tunarr expects but is missing in the browser console logs. Most times the field is unnecessarily marked as required and we can easily mark it optional and the issue is resolved. Let me know if you can get more details from your browser console log and I can look into fixing this.
Ahh ok I didn't know it was in the browser log, I get this:
It happens when adding a particular set (75 items) I can probably narrow it down further and inspect the one it fails or
I might be able to help out and fix later this week
Line: https://github.com/chrisbenincasa/tunarr/blob/c067a85756185ed7fe2fdea613208656de7133c4/web/src/components/channel_config/ChannelProgrammingConfig.tsx#L100-L106
Error: Zodios: Invalid Body parameter 'body'
at Object.request (index.mjs:4:2592)
at async CN.interceptRequest (index.mjs:9:782)
at async h6e.request (index.mjs:9:6099)Caused by: ZodError
at get error (index.mjs:538:31)
at Object.request (index.mjs:4:2644)
at async CN.interceptRequest (index.mjs:9:782)
at async h6e.request (index.mjs:9:6099)
```
```
ChannelProgrammingConfig.tsx:102 ZodError
at get error (index.mjs:538:31)
at Object.request (index.mjs:4:2644)
at async CN.interceptRequest (index.mjs:9:782)
at async h6e.request (index.mjs:9:6099) "Zodios: Invalid Body parameter 'body'"
```
```
ChannelProgrammingConfig.tsx:104 [
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
239,
"originalProgram",
"Media",
0,
"duration"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
239,
"originalProgram",
"Media",
0,
"bitrate"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
240,
"originalProgram",
"Media",
0,
"duration"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
240,
"originalProgram",
"Media",
0,
"bitrate"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
241,
"originalProgram",
"Media",
0,
"duration"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
241,
"originalProgram",
"Media",
0,
"bitrate"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
242,
"originalProgram",
"Media",
0,
"duration"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
242,
"originalProgram",
"Media",
0,
"bitrate"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
243,
"originalProgram",
"Media",
0,
"duration"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
243,
"originalProgram",
"Media",
0,
"bitrate"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
244,
"originalProgram",
"Media",
0,
"duration"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
244,
"originalProgram",
"Media",
0,
"bitrate"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
245,
"originalProgram",
"Media",
0,
"duration"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
245,
"originalProgram",
"Media",
0,
"bitrate"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
246,
"originalProgram",
"Media",
0,
"duration"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
246,
"originalProgram",
"Media",
0,
"bitrate"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
247,
"originalProgram",
"Media",
0,
"duration"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
247,
"originalProgram",
"Media",
0,
"bitrate"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
248,
"originalProgram",
"Media",
0,
"duration"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
248,
"originalProgram",
"Media",
0,
"bitrate"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
249,
"originalProgram",
"Media",
0,
"duration"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
249,
"originalProgram",
"Media",
0,
"bitrate"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
250,
"originalProgram",
"Media",
0,
"duration"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
250,
"originalProgram",
"Media",
0,
"bitrate"
],
"message": "Required"
}
]
(24) [{…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}]
0
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
1
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
2
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
3
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
4
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
5
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
6
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
7
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
8
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
9
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
10
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
11
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
12
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
13
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
14
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
15
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
16
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
17
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
18
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
19
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
20
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
21
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
22
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
23
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
length
:
24
[[Prototype]]
Narrowed down to just a single episode that will fail, plex metadata is as follows:
Plex metadata
This XML file does not appear to have any style information associated with it. The document tree is shown below.
<MediaContainer size="1" allowSync="1" identifier="com.plexapp.plugins.library" librarySectionID="2" librarySectionTitle="TV" librarySectionUUID="6c2368cc-58db-4d73-8349-e5ee7d99b651" mediaTagPrefix="/system/bundle/media/flags/" mediaTagVersion="1720526106">
<Video ratingKey="80691" key="/library/metadata/80691" parentRatingKey="80690" grandparentRatingKey="80689" guid="plex://episode/5d9c11d1ba6eb9001fc0db02" parentGuid="plex://season/602e66a391bd55002cf838e4" grandparentGuid="plex://show/5d9c0864705e7a001e6dacbb" grandparentSlug="schoolhouse-rock" type="episode" title="Three Is a Magic Number" grandparentKey="/library/metadata/80689" parentKey="/library/metadata/80690" librarySectionTitle="TV" librarySectionID="2" librarySectionKey="/library/sections/2" grandparentTitle="Schoolhouse Rock!" parentTitle="Season 1" contentRating="Not Rated" summary="A Magician digs deep into his top hat that proves there's a magic number." index="1" parentIndex="1" audienceRating="10.0" year="1973" thumb="/library/metadata/80691/thumb/1722112539" art="/library/metadata/80689/art/1720753544" parentThumb="/library/metadata/80690/thumb/1720749464" grandparentThumb="/library/metadata/80689/thumb/1720753544" grandparentArt="/library/metadata/80689/art/1720753544" grandparentTheme="/library/metadata/80689/theme/1720753544" duration="181324" originallyAvailableAt="1973-01-06" addedAt="1720749458" updatedAt="1722112539" audienceRatingImage="themoviedb://image.rating">
<Media id="103758" duration="181324" bitrate="1137" width="720" height="480" aspectRatio="1.33" audioChannels="2" audioCodec="aac" videoCodec="h264" videoResolution="480" container="mp4" videoFrameRate="NTSC" optimizedForStreaming="1" audioProfile="lc" has64bitOffsets="0" videoProfile="high">
<Part accessible="1" exists="1" id="135508" key="/library/parts/135508/1720222747/file.mp4" duration="181324" file="/media/TV/Schoolhouse Rock!/Season 1/Schoolhouse Rock! - S01E01 - Three is a Magic Number.mp4" size="25773484" audioProfile="lc" container="mp4" has64bitOffsets="0" optimizedForStreaming="1" videoProfile="high">
<Stream id="365831" streamType="1" default="1" codec="h264" index="0" bitrate="1001" anamorphic="1" bitDepth="8" chromaLocation="left" chromaSubsampling="4:2:0" codedHeight="480" codedWidth="720" frameRate="29.970" hasScalingMatrix="0" height="480" level="30" pixelAspectRatio="8:9" profile="high" refFrames="5" scanType="progressive" streamIdentifier="1" width="720" displayTitle="480p (H.264)" extendedDisplayTitle="480p (H.264)"> </Stream>
<Stream id="365832" streamType="2" selected="1" default="1" codec="aac" index="1" channels="2" bitrate="128" audioChannelLayout="stereo" profile="lc" samplingRate="44100" streamIdentifier="2" displayTitle="Unknown (AAC Stereo)" extendedDisplayTitle="Unknown (AAC Stereo)"> </Stream>
</Part>
</Media>
<Guid id="imdb://tt1268154"/>
<Guid id="tmdb://416852"/>
<Guid id="tvdb://290708"/>
<Rating image="themoviedb://image.rating" value="10.0" type="audience"/>
<Writer id="256759" filter="writer=256759" tag="Bob Dorough" tagKey="5d776a7f23d5a3001f505275" thumb="https://metadata-static.plex.tv/0/people/08341fcad695718263011c555ec8715a.jpg"/>
<Role id="94472" filter="actor=94472" tag="Jack Sheldon" tagKey="5d77684f5af944001f1fed4e" role="" thumb="https://metadata-static.plex.tv/people/5d77684f5af944001f1fed4e.jpg"/>
<Role id="256673" filter="actor=256673" tag="Bob Dorough" tagKey="5d776a7f23d5a3001f505275" role="" thumb="https://metadata-static.plex.tv/0/people/08341fcad695718263011c555ec8715a.jpg"/>
<Role id="256674" filter="actor=256674" tag="Lynn Ahrens" tagKey="5d776f2696b655001fe7ed54" role="" thumb="https://metadata-static.plex.tv/people/5d776f2696b655001fe7ed54.jpg"/>
<Role id="256675" filter="actor=256675" tag="Blossom Dearie" tagKey="5d77685054c0f0001f30646c" role="" thumb="https://metadata-static.plex.tv/6/people/627e72843588c7ac2372d89840c7e0c5.jpg"/>
<Role id="256676" filter="actor=256676" tag="Essra Mohawk" tagKey="5d9c0864705e7a001e6dacf2" role="" thumb="https://metadata-static.plex.tv/1/people/1544a77e4a849351b236be6c5125f648.jpg"/>
<Role id="256677" filter="actor=256677" tag="Grady Tate" tagKey="5d77689f594b2b001e6911d1" role="" thumb="https://metadata-static.plex.tv/4/people/451ff92c2610977ba9820bfa1a850758.jpg"/>
<Extras size="0"> </Extras>
<Related> </Related>
</Video>
</MediaContainer>
Console statement:
ChannelProgrammingConfig.tsx:104 [
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
239,
"originalProgram",
"Media",
0,
"duration"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
239,
"originalProgram",
"Media",
0,
"bitrate"
],
"message": "Required"
}
]
(2) [{…}, {…}]
0
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
1
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
length
:
2
Thanks for all the info! This one is definitely strange because your example item seems to have both of the fields that Tunarr is saying is missing (unless I'm missing something). You're sure that's the item that's causing that exact error?
So "bitrate" we can almost certainly mark as optional. "Duration" is tricky though, since it's used for pretty much everything from guide building to streaming.
Looking again, for "duration" I see it's complaining about the one nested on the Media field. While that's still present and I'm not sure why it's complaining, there is one in the root level item which is really all we need.
Hmm strange so it must be an issue of one that is already in there. I just created a different channel and only added that one episode but it was fine so must be somewhere else, I'll try and find which one is actually causing it.
Any way it could just not add those and display which ones weren't added for future proofing and not to fail on invalid items?
I narrowed to a single item from a blank channel, still not sure why it would be failing because the plex xml shows the fields, I wonder if Tunarr can't access some of them?
Single instance failing
This XML file does not appear to have any style information associated with it. The document tree is shown below.
<MediaContainer size="1" allowSync="1" identifier="com.plexapp.plugins.library" librarySectionID="2" librarySectionTitle="TV" librarySectionUUID="6c2368cc-58db-4d73-8349-e5ee7d99b651" mediaTagPrefix="/system/bundle/media/flags/" mediaTagVersion="1720526106">
<Video ratingKey="80692" key="/library/metadata/80692" parentRatingKey="80690" grandparentRatingKey="80689" guid="plex://episode/5d9c11d1ba6eb9001fc0daff" parentGuid="plex://season/602e66a391bd55002cf838e4" grandparentGuid="plex://show/5d9c0864705e7a001e6dacbb" grandparentSlug="schoolhouse-rock" type="episode" title="My Hero, Zero" grandparentKey="/library/metadata/80689" parentKey="/library/metadata/80690" librarySectionTitle="TV" librarySectionID="2" librarySectionKey="/library/sections/2" grandparentTitle="Schoolhouse Rock!" parentTitle="Season 1" contentRating="Not Rated" summary="When it comes to multiplications, zero is a real hero. It will always be an important number to the world." index="2" parentIndex="1" audienceRating="6.3" year="1973" thumb="/library/metadata/80692/thumb/1722204349" art="/library/metadata/80689/art/1720753544" parentThumb="/library/metadata/80690/thumb/1720749464" grandparentThumb="/library/metadata/80689/thumb/1720753544" grandparentArt="/library/metadata/80689/art/1720753544" grandparentTheme="/library/metadata/80689/theme/1720753544" duration="181533" originallyAvailableAt="1973-01-20" addedAt="1720749458" updatedAt="1722204349" audienceRatingImage="themoviedb://image.rating">
<Media id="103759" duration="181533" bitrate="1076" width="720" height="480" aspectRatio="1.33" audioChannels="2" audioCodec="aac" videoCodec="h264" videoResolution="480" container="mp4" videoFrameRate="NTSC" optimizedForStreaming="1" audioProfile="lc" has64bitOffsets="0" videoProfile="high">
<Part accessible="1" exists="1" id="135509" key="/library/parts/135509/1720222747/file.mp4" duration="181533" file="/media/TV/Schoolhouse Rock!/Season 1/Schoolhouse Rock! - S01E02 - My Hero, Zero.mp4" size="24427030" audioProfile="lc" container="mp4" has64bitOffsets="0" optimizedForStreaming="1" videoProfile="high">
<Stream id="369006" streamType="1" default="1" codec="h264" index="0" bitrate="941" anamorphic="1" bitDepth="8" chromaLocation="left" chromaSubsampling="4:2:0" codedHeight="480" codedWidth="720" frameRate="29.970" hasScalingMatrix="0" height="480" level="30" pixelAspectRatio="8:9" profile="high" refFrames="5" scanType="progressive" streamIdentifier="1" width="720" displayTitle="480p (H.264)" extendedDisplayTitle="480p (H.264)"> </Stream>
<Stream id="369007" streamType="2" selected="1" default="1" codec="aac" index="1" channels="2" bitrate="128" audioChannelLayout="stereo" profile="lc" samplingRate="44100" streamIdentifier="2" displayTitle="Unknown (AAC Stereo)" extendedDisplayTitle="Unknown (AAC Stereo)"> </Stream>
</Part>
</Media>
<Guid id="imdb://tt1268077"/>
<Guid id="tmdb://416850"/>
<Guid id="tvdb://290706"/>
<Rating image="themoviedb://image.rating" value="6.3" type="audience"/>
<Writer id="256759" filter="writer=256759" tag="Bob Dorough" tagKey="5d776a7f23d5a3001f505275" thumb="https://metadata-static.plex.tv/0/people/08341fcad695718263011c555ec8715a.jpg"/>
<Role id="94472" filter="actor=94472" tag="Jack Sheldon" tagKey="5d77684f5af944001f1fed4e" role="" thumb="https://metadata-static.plex.tv/people/5d77684f5af944001f1fed4e.jpg"/>
<Role id="256673" filter="actor=256673" tag="Bob Dorough" tagKey="5d776a7f23d5a3001f505275" role="" thumb="https://metadata-static.plex.tv/0/people/08341fcad695718263011c555ec8715a.jpg"/>
<Role id="256674" filter="actor=256674" tag="Lynn Ahrens" tagKey="5d776f2696b655001fe7ed54" role="" thumb="https://metadata-static.plex.tv/people/5d776f2696b655001fe7ed54.jpg"/>
<Role id="256675" filter="actor=256675" tag="Blossom Dearie" tagKey="5d77685054c0f0001f30646c" role="" thumb="https://metadata-static.plex.tv/6/people/627e72843588c7ac2372d89840c7e0c5.jpg"/>
<Role id="256676" filter="actor=256676" tag="Essra Mohawk" tagKey="5d9c0864705e7a001e6dacf2" role="" thumb="https://metadata-static.plex.tv/1/people/1544a77e4a849351b236be6c5125f648.jpg"/>
<Role id="256677" filter="actor=256677" tag="Grady Tate" tagKey="5d77689f594b2b001e6911d1" role="" thumb="https://metadata-static.plex.tv/4/people/451ff92c2610977ba9820bfa1a850758.jpg"/>
<Extras size="0"> </Extras>
<Related> </Related>
</Video>
</MediaContainer>
console output
ChannelProgrammingConfig.tsx:104 [
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
0,
"originalProgram",
"Media",
0,
"duration"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "number",
"received": "undefined",
"path": [
"programs",
0,
"originalProgram",
"Media",
0,
"bitrate"
],
"message": "Required"
}
]
(2) [{…}, {…}]
0
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
1
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
length
:
2
[[Prototype]]
:
Array(0)
What version are you using currently? I remembered that I marked these fields as optional as part of https://github.com/chrisbenincasa/tunarr/issues/600. I wonder if either your version doesn't have this fix (though it was a while back) or if there's another area where we need to mark these fields optional.
If you want, you can hit Tunarr's Plex proxy endpoint to see what Tunarr would receive from the requests for metadata.
The endpoint is in the form (where PLEX_SERVER_NAME is the name of the server you added within Tunarr):
http://localhost:8000/api/plex?name=PLEX_SERVER_NAME&path=/library/metadata/80692
Using your key above as an example
We've added code to protect against 0 duration programs and have also marked the other fields mentioned here as optional. Going to close this out for now, but feel free to open a new issue or reopen if this is still an issue.