Փոդքասթի RSS հոսքերի կառուցվածքը և վավերացումը
Փոդքասթի հաջող հրապարակումն ու տարածումը տարբեր հարթակներում կախված է RSS 2.0 XML հոսքի ճշգրտությունից: Քանի որ փոդքասթների կատալոգները և նվագարկիչները ավտոմատացված կերպով կարդում են այս ֆայլերը, ցանկացած կառուցվածքային սխալ կամ բացակայող տվյալ կարող է հանգեցնել հաղորդման հեռացմանը կամ էպիզոդների սխալ արտացոլմանը:
«Փոդքասթի RSS վավերացուցիչ» գործիքը նախատեսված է փոդքասթ արտադրողների, հոսթինգը տեղափոխող անհատների և RSS հոսքեր սպասարկող ծրագրավորողների համար: Այն իրականացնում է XML կառուցվածքի, պարտադիր դաշտերի, մեդիա ֆայլերի հատկանիշների և ամսաթվերի ձևաչափերի ստատիկ ստուգում:
Ինչպես է կատարվում ստուգումը և տվյալների գաղտնիությունը
Գործիքի աշխատանքը հիմնված է տեղական մշակման սկզբունքի վրա: Ձեր փոդքասթի հոսքը ստուգվում է դիտարկիչում։ BroBroGo-ն ոչինչ չի վերբեռնում կամ պահպանում: Սա նշանակում է, որ XML բովանդակությունը չի փոխանցվում արտաքին սերվերներին:
Ստուգումն իրականացնելու համար անհրաժեշտ է մուտքագրել ամբողջական RSS XML տեքստը: Գործիքն ունի հետևյալ սահմանափակումներն ու կանոնները.
- Մուտքային ձևաչափը: Ընդունվում է միայն XML ձևաչափը, որը ներառում է XML հայտարարությունը և արմատային տարրը:
- Ծավալի սահմանափակում: Այս գործիքը ստուգման յուրաքանչյուր քայլում ընդունում է մինչև 500,000 նիշ: Եթե սահմանաչափը գերազանցվի, կցուցադրվի «Այս գործիքը ստուգման յուրաքանչյուր քայլում ընդունում է մինչև
‹max›նիշ։» հաղորդագրությունը: - Ժամանակի սահմանափակում: Եթե գործընթացը չափազանց երկար տևի, համակարգը կցուցադրի «Ստուգումը չափազանց երկար տևեց։ Փորձեք ավելի փոքր հոսք։» զգուշացումը:
- Անավարտ ստուգում: Տեխնիկական խնդիրների դեպքում հայտնվում է «Ստուգումը ավարտի չի հասել։» հաղորդագրությունը:
- Դատարկ մուտքագրում: Առանց տեքստի ստուգման կոճակը սեղմելիս հայտնվում է «Տեղադրեք Podcast RSS XML- ը վավերացումից առաջ:» պահանջը:
XML կառուցվածքի և Apple Podcasts-ի պահանջները
Վավերացման առաջին փուլում ստուգվում է XML-ի հիմնական կառուցվածքը: Եթե ֆայլում առկա է DOCTYPE հայտարարություն, ապա վերլուծիչը կանգ է առնում և ցուցադրում «Ստուգելուց առաջ հեռացրեք DOCTYPE հայտարարությունը այս ֆիդից։» սխալը: Սխալ ձևավորված կոդի դեպքում օգտատերը կստանա «Վերանորոգեք սխալ ձևավորված XML-ը, այնուհետև կրկին ստուգեք։» հաղորդագրությունը, որին կուղեկցի «XML վերլուծիչի մանրամասներ՝ ‹detail›» տեղեկատվությունը:
Հոսքի արմատային կառուցվածքը պետք է համապատասխանի հետևյալ կանոններին.
- Փաստաթղթի արմատը պետք է լինի
<rss>: <rss>-ի version հատկանիշը սահմանեք 2.0:- Հայտարարեք Apple Podcasts namespace-ը
<rss>-ում՝http://www.itunes.com/dtds/podcast-1.0.dtd: - RSS-ը պետք է պարունակի միայն մեկ ուղիղ
<channel>: Եթե հայտնաբերվի այլ քանակ, կցուցադրվի համապատասխան սխալը:
Ալիքի մակարդակով ստուգվում են պարտադիր դաշտերը: Ցանկացած բացակայող տարրի դեպքում գործիքը գեներացնում է «Ավելացրեք պահանջվող ‹field›։» սխալը: Կապուղու հղումները պետք է լինեն ճշգրիտ. «‹field› պետք է լինի ամբողջական HTTP կամ HTTPS URL։»: Պատկերների համար գործում է «Տեղադրեք itunes:image href-ը ամբողջական HTTP կամ HTTPS URL-ով։» կանոնը: Կատեգորիաների դեպքում պահանջվում է «itunes:category-ին ավելացրեք ոչ դատարկ text հատկանիշ։»: Իսկ տարիքային սահմանափակման պիտակը պետք է ունենա հստակ արժեք՝ «Տեղադրեք itunes:explicit-ը true կամ false արժեքով։»:
Էպիզոդների և մեդիա ֆայլերի (Enclosure) վավերացում
Յուրաքանչյուր փոդքասթ պետք է ունենա գոնե մեկ հրապարակված էպիզոդ: Հակառակ դեպքում կցուցադրվի «Ավելացրեք առնվազն մեկ <item> էպիզոդ ցանցում։» սխալը: Եթե հաղորդումը նշված է որպես սերիալային (serial), ապա գործում է կանոնը՝ «Սերիալ շոուները պահանջում են դրական ամբողջ թիվ itunes:episode յուրաքանչյուր էպիզոդի համար։»:
Մեդիա ֆայլերի կցումները (<enclosure>) ենթարկվում են խիստ ստուգման: Յուրաքանչյուր էպիզոդ կարող է ունենալ միայն մեկ մեդիա ֆայլ: Եթե հայտնաբերվեն մի քանիսը, կցուցադրվի «Այս էպիզոդում պահպանեք միայն մեկ <enclosure>․ գտնվեց ‹count›։» սխալը:
<enclosure> տարրի հիմնական ստուգումները ներառում են.
- Բացակայող հատկանիշներ: «Ավելացրեք պահանջվող ‹attribute› հատկանիշը <enclosure>-ին։»:
- URL հասցե: «<enclosure>-ի url հատկանիշում տեղադրեք ամբողջական HTTP կամ HTTPS URL։»:
- Ֆայլի չափս: «<enclosure>-ի length հատկանիշում նշեք բայթերի ամբողջ թիվը։»: Եթե չափսը նշված է 0, համակարգը տալիս է նախազգուշացում՝ «<enclosure>-ի length հատկանիշը 0 է։ Հրապարակելուց առաջ ստուգեք բայթերի իրական քանակը։»:
- MIME տեսակներ: Պետք է օգտագործվի վավեր տեսակ՝ «Օգտագործեք վավեր MIME տիպ, օրինակ՝ audio/mpeg։»: Ոչ աուդիո ֆայլերի դեպքում հայտնվում է զգուշացում՝ «Այս <enclosure>-ը որպես աուդիո նշված չէ։ Համոզվեք, որ տեսանյութ կամ փաստաթուղթ պարունակող էպիզոդը դիտավորյալ է։»:
- Անվանման համապատասխանություն: Եթե ֆայլի ընդլայնումը չի համապատասխանում նշված տեսակին, գեներացվում է «Մեդիայի ֆայլի անունը և MIME տիպը չեն համընկնում (
‹extension›vs‹mime›):» նախազգուշացումը:
Բացի այդ, գործիքը կանխում է տվյալների կրկնությունը: Եթե նույն մեդիա ֆայլի հղումը կամ նույնականացուցիչը հանդիպում է մի քանի տեղ, կստանաք հետևյալ սխալները՝ «Այս <enclosure> URL-ը կրկնում է ‹first› տողի արժեքը։» կամ «Այս GUID-ը կրկնում է արժեքը ‹first› տողում։»:
Ամսաթվերի ձևաչափեր և էպիզոդների քանակի սահմանափակումներ
Էպիզոդների ճիշտ ժամանակագրական դասավորության համար պարտադիր է հրապարակման ամսաթվի առկայությունը: Դրա բացակայության դեպքում հայտնվում է նախազգուշացում՝ «Ավելացրեք <pubDate>, որպեսզի փոդքասթի հավելվածները վստահելիորեն դասավորեն և հրապարակեն այս էպիզոդը։»:
Ամսաթվերը պետք է խստորեն համապատասխանեն RFC 2822 ստանդարտին: Սխալ ձևաչափի դեպքում գործիքը ցուցադրում է հետևյալ հաղորդագրությունը. «Օգտագործեք RFC 2822 ամսաթիվ իրական օրացույցի ամսաթվով և ժամանակային գոտով, օրինակ՝ Sat, 01 Apr 2023 19:00:00 +0000։»: Եթե օգտագործվում է տեքստային ժամանակային գոտի (օրինակ՝ EST կամ GMT), համակարգը խորհուրդ է տալիս անցնել թվային տարբերակի՝ «Այս անվան գոտին ընդունելի է, բայց ավելի քիչ տեղափոխելի է; նախապատվությունը տվեք թվային տեղաշարժին, օրինակ +0000։»:
Մեկ այլ կարևոր սահմանափակում վերաբերում է էպիզոդների ընդհանուր քանակին: Թեև RSS հոսքը կարող է պարունակել անսահմանափակ թվով էպիզոդներ, խոշոր հարթակներն ունեն իրենց սահմանաչափերը: Եթե հոսքում էպիզոդների քանակը գերազանցում է 2,000-ը, գործիքը տալիս է հետևյալ զգուշացումը. «Այս հոսքը ունի ‹count› էպիզոդներ; Apple Podcasts-ը ցուցադրում է միայն վերջին 2000-ը։»:
Ստուգման արդյունքների վերլուծություն
Ստուգումն ավարտելուց հետո համակարգը ցուցադրում է «Հոսքի ստուգման արդյունք» բաժինը: Արդյունքներում հստակ նշվում են հայտնաբերված խնդիրների քանակները՝ «‹count› սխալներ», «‹count› զգուշացումները» և հայտնաբերված էպիզոդների ընդհանուր թիվը՝ «‹count› դրվագներ»:
Յուրաքանչյուր խնդրի համար տրվում է ճշգրիտ տեղեկատվություն դրա տեղակայման մասին: Օգտատերը տեսնում է հետևյալ տվյալները.
- Ճշգրիտ տեղը՝ «Տող
‹line›, սյունակ‹column›»: - XML տարրի XPath ուղին՝ «Ուղղման տեղը՝
‹path›»: - Արագ անցման հղումը՝ «Գնալ
‹path›‹line›տողում»:
Եթե հոսքում առկա են բազմաթիվ խնդիրներ, ցուցակը կարող է կրճատվել՝ արտացոլելով հետևյալ հաղորդագրությունը. «Ցուցադրվում են ‹total› խնդիրներից առաջին ‹shown›-ը։»: Եթե ոչ մի սխալ չի հայտնաբերվել, համակարգը ցույց կտա «Կառուցվածքային խնդիրներ չեն հայտնաբերվել։» հաղորդագրությունը: ‹errors› սխալներ եւ ‹warnings› նախազգուշացումներ հայտնաբերվեցին: