Siirry pääsisällölle

Avoin oppituntimuoto

Avoin oppituntimuoto on standardoitu JSON-skeema, jonka avulla kolmannen osapuolen sisällöntuottajat voivat julkaista opetussuunnitelmia Lessons.church-palveluun. Mikä tahansa organisaatio, joka isännöi syötettä tässä muodossa, voidaan lisätä ulkoisena tarjoajana. Sen sisältö on silloin selattavissa ja toistettavissa sisäänrakennetun kirjaston rinnalla.

Miten se toimii​

Tarjoaja isännöi kahta tyyppiä päätepisteitä:

  1. Tarjoajapuu -- Yksi URL-osoite, joka palauttaa koko ohjelmien, opintojaksojen, oppituntien ja toimipaikkojen luettelon. Jokainen toimipaikka sisältää syöte-URL-osoitteen, joka osoittaa yksityiskohtaiseen oppitunnin sisältöön.
  2. Toimipaikkasyöte -- Yksi URL-osoite toimipaikkaa kohden, joka palauttaa koko oppitunnin sisällön (osiot, toiminnot ja mediatiedostot).

Kun kirkko lisää tarjoajan URL-osoitteen Lessons.church-palveluun, alusta hakee puun löytääkseen saatavilla olevan sisällön. Yksittäiset toimipaikkasyötteet haetaan tarvittaessa.

Tarjoajapuu​

Tarjoajan URL-osoitteen on palautettava JSON-objekti tällä rakenteella:

{
"programs": [
{
"id": "program-1",
"name": "Gospel of Mark",
"slug": "gospel-of-mark",
"image": "https://example.com/images/mark.jpg",
"about": "A 12-week study through the Gospel of Mark.",
"studies": [
{
"id": "study-1",
"name": "The Beginning",
"slug": "the-beginning",
"image": "https://example.com/images/study1.jpg",
"lessons": [
{
"id": "lesson-1",
"name": "The Baptism of Jesus",
"slug": "baptism-of-jesus",
"title": "The Baptism of Jesus",
"image": "https://example.com/images/lesson1.jpg",
"description": "An introduction to Jesus' ministry.",
"bottomLine": "God keeps His promises.",
"verse": "Genesis 9:13 — I have set my rainbow in the clouds…",
"parentQuestion": "What is one promise God has kept in our family?",
"parentNote": "Pray together thanking God for keeping His promises.",
"venues": [
{
"id": "venue-1",
"name": "Kids",
"apiUrl": "https://example.com/feed/venues/venue-1"
},
{
"id": "venue-2",
"name": "Adults",
"apiUrl": "https://example.com/feed/venues/venue-2"
}
]
}
]
}
]
}
]
}

Puun kentät​

KenttäTyyppiKuvaus
programs[].idstringOhjelman yksilöllinen tunniste
programs[].namestringNäytettävä nimi
programs[].slugstringURL-ystävällinen nimi
programs[].imagestringOhjelman kuvan URL-osoite (valinnainen)
programs[].aboutstringKuvaus (valinnainen)
studies[].idstringOpintojakson yksilöllinen tunniste
studies[].namestringNäytettävä nimi
studies[].slugstringURL-ystävällinen nimi
studies[].imagestringOpintojakson kuvan URL-osoite (valinnainen)
lessons[].idstringOppitunnin yksilöllinen tunniste
lessons[].namestringNäytettävä nimi
lessons[].slugstringURL-ystävällinen nimi
lessons[].titlestringKoko otsikko
lessons[].imagestringOppitunnin kuvan URL-osoite (valinnainen)
lessons[].descriptionstringOppitunnin yhteenveto (valinnainen). Luettelotieto, joka on tarkoitettu kirjastoa selaaville opettajille, ei vanhemmille tarkoitettua kotiviestiä.
lessons[].bottomLinestringYksi lause vanhemmille tarkoitetusta kotiviestistä (valinnainen)
lessons[].versestringMuistettava jae viitteineen ja lyhyine tekstineen (valinnainen)
lessons[].parentQuestionstringYksi kysymys, jonka vanhemmat voivat esittää kotona (valinnainen)
lessons[].parentNotestringValinnainen lisähuomautus vanhemmille (markdown)
venues[].idstringToimipaikan yksilöllinen tunniste
venues[].namestringToimipaikan nimi (esim. "Kids", "Adults", "Youth")
venues[].apiUrlstringToimipaikkasyötteen palauttava URL-osoite (katso alla)

Neljä vanhempien kotiviestikenttää (bottomLine, verse, parentQuestion, parentNote) ovat valinnaisia sekä puussa että toimipaikkasyötteessä. Jos ne jätetään pois, niitä käsitellään tyhjinä. Älä kopioi description-kenttää niihin.

Toimipaikat edustavat saman oppitunnin eri versioita, jotka on räätälöity eri yleisöille, kuten ikäryhmille tai eri ympäristöihin.

Toimipaikkasyöte​

Jokaisen toimipaikan apiUrl-osoitteen on palautettava JSON-objekti, joka vastaa tätä skeemaa:

{
"id": "venue-1",
"name": "Kids",
"lessonId": "lesson-1",
"lessonName": "The Baptism of Jesus",
"lessonImage": "https://example.com/images/lesson1.jpg",
"lessonDescription": "An introduction to Jesus' ministry.",
"bottomLine": "God keeps His promises.",
"verse": "Genesis 9:13 — I have set my rainbow in the clouds…",
"parentQuestion": "What is one promise God has kept in our family?",
"parentNote": "Pray together thanking God for keeping His promises.",
"studyName": "The Beginning",
"studySlug": "the-beginning",
"programName": "Gospel of Mark",
"programSlug": "gospel-of-mark",
"programAbout": "A 12-week study through the Gospel of Mark.",
"downloads": [],
"sections": [
{
"id": "section-1",
"name": "Opening Discussion",
"sort": 1,
"materials": "Whiteboard and markers",
"actions": [
{
"id": "action-1",
"actionType": "text",
"content": "**Key Verse:** Mark 1:9-11",
"sort": 1
},
{
"id": "action-2",
"actionType": "question",
"content": "What do you know about baptism?",
"sort": 2,
"role": "Leader"
},
{
"id": "action-3",
"actionType": "play",
"content": "Intro Video",
"sort": 3,
"files": [
{
"id": "file-1",
"name": "intro-video.mp4",
"url": "https://example.com/media/intro.mp4",
"streamUrl": "https://vimeo.com/123456789",
"fileType": "video/mp4",
"seconds": 180,
"bytes": 52428800,
"thumbnail": "https://example.com/media/intro-thumb.jpg",
"loop": false
}
]
}
]
}
]
}

Toimipaikkasyötteen kentät​

Juuriobjekti​

KenttäTyyppiKuvaus
idstringToimipaikan tunniste
namestringToimipaikan nimi
lessonIdstringOppitunnin tunniste
lessonNamestringOppitunnin näytettävä nimi
lessonImagestringOppitunnin kuvan URL-osoite
lessonDescriptionstringOppitunnin yhteenveto (luettelotieto)
bottomLinestringYksi lause vanhemmille tarkoitetusta kotiviestistä (valinnainen)
versestringMuistettava jae viitteineen ja lyhyine tekstineen (valinnainen)
parentQuestionstringYksi kysymys, jonka vanhemmat voivat esittää kotona (valinnainen)
parentNotestringValinnainen lisähuomautus vanhemmille, markdown (valinnainen)
studyNamestringVanhemman opintojakson nimi
studySlugstringVanhemman opintojakson URL-nimi
programNamestringVanhemman ohjelman nimi
programSlugstringVanhemman ohjelman URL-nimi
programAboutstringOhjelman kuvaus
downloadsarrayLadattavat tiedostopaketit
sectionsarrayJärjestetyt oppituntiosiot

Osio​

KenttäTyyppiKuvaus
idstringOsion tunniste
namestringOsion otsikko
sortnumberNäyttöjärjestys
materialsstringMateriaalit tai valmisteluohjeet (valinnainen)
actionsarrayTämän osion järjestetyt toiminnot

Toiminto​

KenttäTyyppiKuvaus
idstringToiminnon tunniste
actionTypestringYksi seuraavista: play, text, question, quote, subhead
contentstringTekstisisältö tai median nimike
sortnumberNäyttöjärjestys
rolestringRoolin nimi, esim. "Leader" tai "Kids" (valinnainen)
roleIdstringRoolin tunniste (valinnainen)
filesarrayMedian tiedostot play-toiminnoille (valinnainen)

Tiedosto​

KenttäTyyppiKuvaus
idstringTiedoston tunniste
namestringTiedoston nimi
urlstringSuora lataus-URL-osoite
streamUrlstringSuoratoiston URL-osoite, esim. Vimeo-linkki (valinnainen)
fileTypestringMIME-tyyppi (esim. video/mp4, image/jpeg)
secondsnumberKesto sekunneissa ääni- tai videosisällölle (valinnainen)
bytesnumberTiedoston koko tavuina (valinnainen)
thumbnailstringPikkukuvan URL-osoite (valinnainen)
loopbooleanToistetaanko media silmukassa (valinnainen, oletus false)

Lataus​

KenttäTyyppiKuvaus
namestringLatauspaketin nimi (esim. "Tulostettavat materiaalit")
filesarrayTämän latauspaketin tiedostot (samat kentät kuin yllä olevalla File-rakenteella)

Toimintotyypit​

TyyppiTarkoitus
playMedian toisto -- video, ääni tai diaesitys. Täytyy sisältää files.
textStaattinen tekstisisältö. Tukee markdown-tyylistä lihavointia (**teksti**).
questionKeskustelu- tai pohdintakysymys yleisölle.
quoteKorostettu lainaus tai raamatunkohta.
subheadOtsikko tai väliotsikko osion sisällä.
vihje

Voit nähdä toimivan esimerkin syötteestä tarkastelemalla sisäänrakennettua Lessons.church-sisältöpuuta osoitteessa https://api.lessons.church/lessons/public/tree ja hakemalla sieltä minkä tahansa toimipaikkasyötteen URL-osoitteen.