I have a Roku channel with multiple series, seasons and episodes. I am attempting to modify my Fire App Builder recipes to extract the desired data according to the structure of my Roku feed. Unfortunately when I launch my app, it gets stuck on the loading splash screen. I am new to coding and not sure if I have correctly coded the recipes and would appreciate any input. Here is a sample of my feed and both category and content recipes code. The full feed can be found here: https://d2n971lt6fos4i.cloudfront.net/Feed/Nation+Extreme+Wrestling.json. Any suggestions?
Roku JSON feed sample:
{
"lastUpdated": "2023-06-30T11:55:24+00:00",
"providerName": "Nation Extreme Wrestling",
"language": "en-US",
"series": [
{
"id": "db771e79bbcf433cb3b417865abf6cde",
"title": "Nation Extreme Wrestling",
"seasons": [
{
"seasonNumber": 1,
"title": "NEW 1",
"description":"The Gaming Stadium - July 2021",
"episodes": [
{
"id": "ead12e119ec74af78de702aee7131fe2",
"title": "Travis Williams vs Judas Icarus",
"content": {
"dateAdded": "2023-06-20T11:26:56+00:00",
"videos": [
{
"url": "https://d2n971lt6fos4i.cloudfront.net/NEW+1/Travis_Williams_vs_Judas_Icarus_(S1-EP1)/master.m3u8",
"quality": "FHD",
"videoType": "hls"
}
],
"duration": 904,
"language": "en-US"
},
"thumbnail": "https://d2n971lt6fos4i.cloudfront.net/NEW+1/Travis_Williams_vs_Judas_Icarus_(S1-EP1)/Travis+Williams+vs+Judas+Icarus+(S1-EP1).png",
"episodeNumber": 1,
"releaseDate": "2023-07-04",
"shortDescription": "Golden Boy takes it to Judas Icarus",
"longDescription": "These guys have been at it many times before, but tonight Travis is going to prove he is going to the top and he's one of the true players in the Pacific Northwest",
"credits": [
{
"name": "Travis Williams",
"role": "",
"birthDate": ""
},
{
"name": "Judas Icarus",
"role": "",
"birthDate": ""
}
],
"rating": {
"rating": "TVPG",
"ratingSource": "USA_PR"
}
},
NEWCategoriesRecipe.json
{
"cooker": "DynamicParser",
"format": "json",
"model": "com.amazon.android.model.content.ContentContainer",
"translator": "ContentContainerTranslator",
"modelType": "array",
"query": "$..series[*]",
"queryResultType": "[]$",
"matchList": [
"StringKey@mName"
],
"keyDataType": "StringKey@keyDataPath"
}
NEWContentsRecipe.json
{
"cooker": "DynamicParser",
"format": "json",
"model": "com.amazon.android.model.content.Content",
"translator": "ContentTranslator",
"modelType": "array",
"query": "$[?(@.series.seasons[0] in [$$par0$$])]",
"matchList": [
"episodes/title@mTitle",
"episodes/id@mId",
"episodes/shortDescription@mDescription",
"episodes/content/videos[0].url@mUrl",
"episodes/thumbnail@mCardImageUrl",
"episodes/thumbnail@mBackgroundImageUrl",
"$.id@mChannelId",
"seasonNumber@mSeasonNumber",
"episodes/episodeNumber@mEpisodeNumber",
"episodes/releaseDate@mReleaseDate",
"episodes/rating/rating@mRating",
"episodes/longDescription@mLongDescription"
]
}
I tried to modify the recipe code to what I thought was the proper path, but the app stuck on the loading screen.