RSS integracija

Uvod i orijentacija

Tehnička pravila za pripremu RSS izvora, prepoznavanje promjena te format stavki i priloga.

Kome je vodič namijenjen

Ova specifikacija namijenjena je programeru ili dobavljaču RSS/XML feeda koji priprema izvor za korisnika. Korisnik dostavlja URL gotovog feeda pružaocu sistema, a njegov administrator povezuje izvor i kreira RSS aplikaciju. Postupak postavljanja opisan je u vodiču Konfiguracija RSS aplikacije.

Pogledajte primjere u biblioteci aplikacija

Čemu služi RSS integracija

RSS integracija omogućava sistemu da preuzme strukturirani sadržaj iz podešenog RSS kanala, pripremi njegove medije i distribuira promjene definicije uređajima povezanim s tim kanalom.

Tehnička dokumentacija

Kako radi sinhronizacija

  1. Server preuzima podešeni RSS izvor i poredi identifikatore stavki i vrijednosti changeDate sa sačuvanim podacima.
  2. Obrađuju se nove i izmijenjene stavke. Server preuzima njihove medije i prosljeđuje ih servisu za datoteke radi pohrane i eventualne konverzije; nekorištene stavke i mediji se uklanjaju.
  3. Server obavještava portal o prepoznatoj promjeni, a portal osigurava slanje ažuriranih podataka uređajima koji koriste taj kanal.
  4. Uređaj sprema primljene podatke i zasebno preuzima potrebne priloge. Prijem definicije sam po sebi ne potvrđuje da je preuzimanje svih medija završeno.

Interval provjere izvora i dodjelu RSS aplikacije opisuje vodič Konfiguracija RSS aplikacije. Ažuriranje nije trenutno; zavisi i od pripreme medija te povezanosti uređaja.

Opisana sinhronizacija podrazumijeva izvor s barem jednom važećom stavkom. Nemojte se oslanjati na potpuno pražnjenje kanala kao garantovan način prekida prikazivanja sadržaja.

Kako sistem otkriva promjene stavki

  • Novi guid u novoj definiciji koji nije postojao u staroj → nova stavka; njeni mediji se preuzimaju i pripremaju.
  • Prethodni guid nedostaje u novoj definiciji → uklonjena stavka; njeni mediji se uklanjaju.
  • guid postoji u obje definicije, ali se changeDate razlikuje → promijenjena stavka; stari mediji se uklanjaju, a novi preuzimaju i pripremaju.

Pri promjeni naslova, opisa, linka ili priloga zadržite guid i promijenite changeDate. Isto važi pri zamjeni datoteke na nepromijenjenom URL-u. Sama promjena redoslijeda stavki ne mora pokrenuti slanje nove definicije; za dostavu promjene ažurirajte i changeDate.

Glavna svojstva

  • guid: Jedinstveni i stabilni identifikator stavke, naprimjer ID zapisa u bazi podataka. Zadržite ga i pri uređivanju sadržaja.
  • title: Obavezan naslov koji ne smije biti prazan. Može sadržavati HTML oznake, ali se u listi i naslovu detalja prikazuje kao običan tekst.
  • description: Opis stavke. Može sadržavati HTML; formatirani prikaz zavisi od postavki RSS aplikacije.
  • category: Naziv kategorije za filtriranje. Izbor kategorije prikazuje se ako kanal sadrži barem jednu kategoriju čiji naziv nije prazan.
  • link: Apsolutna adresa povezane web-stranice. Link koji počinje s http u detaljima se prikazuje i kao QR kod za mobilni uređaj.
  • pubDate: Datum i vrijeme kreiranja stavke. Ne služi za odgođeni prikaz: budući datum sam po sebi ne sprečava prikazivanje stavke.
  • endDate: Datum i vrijeme isteka važenja. Samo popunjavanje ovog polja ne garantuje trenutno skrivanje stavke prema vremenu uređaja, naročito kada uređaj nije povezan s internetom. Nemojte se oslanjati isključivo na ovo polje za sadržaj koji se mora prestati prikazivati u tačno određeno vrijeme.
  • changeDate: Datum i vrijeme posljednje promjene sadržaja. Sistem ih poredi zajedno s guid; pri svakoj promjeni sadržaja upotrijebite drugačiju vrijednost.
  • media:content: Reprezentativna slika stavke izvan grupe priloga. Navedite atribute url i type.
  • content, image: Parser prihvata i ove nazive oznaka s istim medijskim atributima. Oznaka image služi kao zamjena ako URL glavnog medija još nije postavljen. Preporučuje se media:content; ovaj alternativni zapis ne podržava proizvoljnu ugniježđenu strukturu image/url.
  • media:group: Grupa priloga stavke: slike, videozapisi, dokumenti i umetnuti HTML sadržaj.

Zapis datuma i vremena

Upotrijebite, naprimjer, 2026-10-17 08:30:00. Podržani su i razdvajanje datuma i vremena znakom T ili t, datum oblika 17.10.2026 te RSS zapis poput Sat, 17 Oct 2026 08:30:00 +0200.

Vrijednosti se obrađuju kao lokalni datum i vrijeme. Navedeni vremenski pomak ne preračunava se u UTC, zato dosljedno koristite dogovorenu vremensku zonu. Provjereni parser ne podržava zapis ISO 8601 koji završava znakom Z.

XML primjer

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:media="http://search.yahoo.com/mrss/">
    <channel>
        <item>
            <guid>offer-001</guid>
            <title>Novosti u ponudi</title>
            <description>Informacije o aktuelnoj ponudi</description>
            <category>Novosti</category>
            <pubDate>2026-10-17 08:00:00</pubDate>
            <changeDate>2026-10-17 08:30:00</changeDate>
            <link>https://example.org/offers/offer-001/</link>
            <media:content url="https://example.org/media/offer-001.jpg" type="image/jpeg"/>
            <media:group>
                <media:content url="https://example.org/media/offer-001.pdf" name="Detalji ponude" type="application/pdf"/>
                <media:content type="text/html"><![CDATA[<h1>Detalji</h1><p>Dodatne informacije o ponudi.</p>]]></media:content>
            </media:group>
        </item>
    </channel>
</rss>

Adrese na domeni example.org služe samo kao primjer; zamijenite ih stvarnim adresama dostupnim RSS serveru. Osnovni primjer ne sadrži endDate kako stavka iz primjera ne bi automatski istekla.

Parametri stavke

Tabela navodi zahtijevani format integracije. To što parser toleriše podatke koji nedostaju ne zamjenjuje njihovo ispravno popunjavanje. Pri ažuriranju postojeće stavke potrebno je navesti i promijeniti changeDate.

ParametarObaveznoTipPrimjer
guidDATekst / broj548A59C5B5E
titleDATekst / HTMLSjajne vijesti
descriptionNETekst / HTMLOvo je VELIKA vijest
linkNEUrlhttps://...
categoryNETekstVijesti
authorNETekstBill Johanson
pubDateDADatum i vrijeme2026-10-17 08:00:00
endDateNEDatum i vrijeme2026-10-18 18:00:00
changeDatePri izmjeniDatum i vrijeme2026-10-17 08:30:00
media:contentNEStavka
media:groupNEGrupa

Stavke medijske grupe

Slika, dokument ili videozapis: u grupu dodajte element media:content s atributima url i type. Neobavezni atribut name određuje naziv priloga.

HTML ili običan tekst: upotrijebite media:content type="text/html" i sadržaj umetnite direktno u element, naprimjer kao HTML fragment unutar CDATA. Za običan tekst dovoljan je jednostavan pasus. Prikaz HTML priloga nije potpuna web-aplikacija i ova specifikacija ne garantuje izvršavanje JavaScripta.

Ograničenje tekstualnih priloga: samostalni prilozi vrste text/plain ne obrađuju se ispravno u provjerenoj implementaciji. Za tekstualni prilog upotrijebite prethodno prikazani zapis text/html.

Podržani tipovi sadržaja

image/webp image/jpeg image/png video/mp4 video/x-msvideo video/webm video/quicktime video/x-m4v video/mpeg application/pdf application/rtf application/msword application/vnd.openxmlformats-officedocument.wordprocessingml.document application/vnd.ms-excel application/vnd.openxmlformats-officedocument.spreadsheetml.sheet application/vnd.ms-powerpoint application/vnd.openxmlformats-officedocument.presentationml.presentation application/vnd.oasis.opendocument.text application/vnd.oasis.opendocument.presentation application/vnd.oasis.opendocument.spreadsheet text/html

To su ulazni formati priloga koje sistem, zavisno od vrste, pohranjuje ili priprema za prikaz. Uspješna obrada zavisi i od sadržaja konkretne datoteke te njenog kodiranja; podudaranje MIME tipa samo po sebi ne potvrđuje završetak konverzije.

Niste pronašli ono što ste tražili?
Obratite se svom pružaocu softvera.