โครงสร้างและข้อกำหนดของ RSS 2.0 สำหรับพอดแคสต์
การสร้างฟีดพอดแคสต์ที่ทำงานได้อย่างถูกต้องจำเป็นต้องปฏิบัติตามข้อกำหนดของมาตรฐาน RSS 2.0 อย่างเคร่งครัด โดยเอกสาร XML จะต้องมีความสมบูรณ์ทางโครงสร้างและมีรูทเอกสารเป็น <rss> เท่านั้น อีกทั้งแอตทริบิวต์ version ของ <rss> จะต้องกำหนดค่าเป็น "2.0" เสมอ หากในฟีดมีการระบุการประกาศ DOCTYPE พาร์เซอร์จะหยุดทำงานและแสดงข้อผิดพลาด "ลบการประกาศ DOCTYPE ก่อนที่จะตรวจสอบ feed นี้"
นอกจากนี้ โครงสร้างภายในของ RSS จะต้องมีองค์ประกอบ <channel> โดยตรงเพียงตัวเดียวเท่านั้น หากพบจำนวนอื่นจะแสดงข้อผิดพลาด "RSS ต้องมี <channel> โดยตรงเพียงตัวเดียวเท่านั้น เจอ {count}." และภายในช่องสัญญาณดังกล่าวจะต้องมีรายการตอนหรือ <item> อย่างน้อยหนึ่งตอนขึ้นไป หากไม่มีจะเกิดข้อผิดพลาด "เพิ่ม <item> อย่างน้อยหนึ่งตอนลงในช่อง"
ข้อกำหนดเฉพาะสำหรับ Apple Podcasts
การเผยแพร่พอดแคสต์ไปยังแพลตฟอร์มหลัก เช่น Apple Podcasts มีข้อกำหนดเพิ่มเติมที่ต้องประกาศเนมสเปซของ Apple Podcasts บน <rss> ให้ถูกต้อง หากไม่มีการประกาศจะแสดงข้อผิดพลาด "ประกาศเนมสเปซ Apple Podcasts บน <rss>: {namespace}"
สำหรับข้อมูลระดับช่องและระดับตอน ฟิลด์ที่จำเป็นต่างๆ จะต้องครบถ้วน หากขาดหายไปจะแสดงข้อผิดพลาด "เพิ่ม {field} ที่จำเป็น" โดยมีกฎเฉพาะสำหรับข้อมูลแต่ละประเภทดังนี้:
- ลิงก์และรูปภาพ: ลิงก์ทั่วไปจะต้องเป็น URL ที่สมบูรณ์ หากไม่ถูกต้องจะแสดงข้อผิดพลาด "
{field}ต้องเป็น URL ของ HTTP หรือ HTTPS ที่สมบูรณ์" ส่วนรูปภาพปกจะต้องระบุแอตทริบิวต์อย่างถูกต้อง หากไม่เป็นไปตามนั้นจะแสดงข้อผิดพลาด "ตั้งค่า itunes:image href เป็น URL ของ HTTP หรือ HTTPS ที่สมบูรณ์" - หมวดหมู่: การระบุหมวดหมู่ของพอดแคสต์ต้องไม่ปล่อยว่าง หากไม่ถูกต้องจะแสดงข้อผิดพลาด "เพิ่มแอตทริบิวต์ text ที่ไม่ว่างเปล่าให้กับ itunes:category"
- เนื้อหาที่เหมาะสมกับผู้ใหญ่: แท็กระบุประเภทเนื้อหาจะต้องกำหนดค่าอย่างชัดเจน หากไม่ถูกต้องจะแสดงข้อผิดพลาด "ตั้งค่า itunes:explicit เป็น true หรือ false"
- พอดแคสต์แบบซีรีส์: สำหรับรายการประเภท Serial จะต้องระบุหมายเลขตอนเป็นตัวเลขเสมอ หากไม่ครบถ้วนจะแสดงข้อผิดพลาด "รายการต่อเนื่องต้องมีจำนวนเต็มบวก itunes:episode สำหรับทุกตอน"
การตรวจสอบไฟล์สื่อและ Enclosure
องค์ประกอบ <enclosure> ในแต่ละตอนคือส่วนที่ระบุไฟล์เสียงของพอดแคสต์ โดยแต่ละตอนจะต้องมี <enclosure> เพียงชิ้นเดียวเท่านั้น หากพบมากกว่านั้นจะแสดงข้อผิดพลาด "เก็บ <enclosure> ไว้หนึ่งอันในตอนนี้ พบ {count}."
การตรวจสอบแอตทริบิวต์ของ <enclosure> มีข้อกำหนดและข้อผิดพลาดที่เกี่ยวข้องดังนี้:
- แอตทริบิวต์ที่จำเป็น: หากขาดหายไปจะแสดงข้อผิดพลาด "เพิ่มแอ็ตทริบิวต์
{attribute}ที่จำเป็นให้กับ<enclosure>" - URL ของไฟล์สื่อ: ต้องเป็นลิงก์ที่ใช้งานได้จริง หากไม่ถูกต้องจะแสดงข้อผิดพลาด "ตั้งค่าแอตทริบิวต์ url ของ <enclosure> เป็น URL แบบ HTTP หรือ HTTPS ที่สมบูรณ์"
- ขนาดของไฟล์: ต้องระบุขนาดเป็นจำนวนไบต์ที่ถูกต้อง หากค่าไม่เป็นตัวเลขจะแสดงข้อผิดพลาด "ตั้งค่าแอตทริบิวต์ length ของ <enclosure> เป็นจำนวนไบต์แบบจำนวนเต็ม" แต่หากระบุค่าเป็น 0 จะแสดงคำเตือน "แอตทริบิวต์ length ของ <enclosure> เป็น 0 โปรดตรวจสอบจำนวนไบต์จริงก่อนเผยแพร่"
- ประเภท MIME: ต้องใช้ประเภทที่ถูกต้อง เช่น audio/mpeg หากไม่ถูกต้องจะแสดงข้อผิดพลาด "ใช้ประเภท MIME ที่ถูกต้อง เช่น audio/mpeg" หากใช้ประเภทที่ไม่ใช่เสียงจะแสดงคำเตือน "<enclosure> นี้ไม่ได้ระบุว่าเป็นเสียง โปรดตรวจสอบว่าตั้งใจเผยแพร่ตอนนี้เป็นวิดีโอหรือเอกสาร" และหากนามสกุลไฟล์ไม่ตรงกับประเภท MIME จะแสดงคำเตือน "ชื่อไฟล์สื่อและประเภท MIME ไม่ตรงกัน (
{extension}กับ{mime})" - URL ซ้ำ: ป้องกันการใช้ไฟล์ซ้ำกันโดยหากพบ URL ซ้ำจะแสดงข้อผิดพลาด "URL enclosure นี้ทำซ้ำค่าที่บรรทัด
{first}"
รูปแบบวันที่และข้อจำกัดของจำนวนตอน
วันที่เผยแพร่มีความสำคัญต่อการจัดเรียงตอนในแอปพลิเคชัน หากไม่มีแท็ก <pubDate> จะแสดงคำเตือน "เพิ่ม <pubDate> เพื่อให้แอปพอดแคสต์สามารถสั่งซื้อและเผยแพร่ตอนนี้ได้อย่างน่าเชื่อถือ"
การระบุวันที่ต้องเป็นไปตามมาตรฐาน RFC 2822 หากรูปแบบไม่ถูกต้องจะแสดงข้อผิดพลาด "ใช้วันที่ RFC 2822 กับวันที่และเขตเวลาตามปฏิทินจริง เช่น Sat, 01 Apr 2023 19:00:00 +0000" และหากใช้เขตเวลาแบบชื่อตัวอักษรจะแสดงคำเตือน "เขตเวลาที่มีชื่อนี้ได้รับการยอมรับแต่สามารถพกพาได้น้อยกว่า ต้องการออฟเซ็ตตัวเลขเช่น +0000"
นอกจากนี้ การบริหารจัดการจำนวนตอนในฟีดก็มีข้อจำกัด โดยหากฟีดมีขนาดใหญ่เกินไปจะแสดงคำเตือน "ฟีดนี้มี {count} ตอน โดย Apple Podcasts แสดงเฉพาะ 2,000 ตอนล่าสุด" และต้องระวังไม่ให้เกิดค่า GUID ซ้ำกันในแต่ละตอน หากซ้ำจะแสดงข้อผิดพลาด "GUID นี้ทำซ้ำค่าที่บรรทัด {first}"
การทำงานของเครื่องมือและความเป็นส่วนตัว
เครื่องมือตรวจสอบพอดแคสต์ RSS ทำงานวิเคราะห์ข้อมูลภายในเบราว์เซอร์ของคุณโดยตรง ฟีด RSS ของพอดแคสต์จะได้รับการตรวจสอบในเบราว์เซอร์ของคุณ BroBroGo ไม่อัปโหลดหรือบันทึกข้อมูลใดๆ
การตรวจสอบจำกัดขนาดข้อมูลของพอดแคสต์ RSS XML สูงสุดที่ 500,000 ตัวอักษรต่อการตรวจสอบหนึ่งครั้ง หากไม่มีการป้อนข้อมูลใดๆ ระบบจะแสดงข้อความ "วาง Podcast RSS XML ก่อนตรวจสอบ" หากข้อมูลมีขนาดใหญ่เกินไปจะแสดงข้อความ "เครื่องมือนี้ยอมรับอักขระสูงสุด {max} ต่อการตรวจสอบ" หากใช้เวลาประมวลผลนานเกินไปจะแสดงข้อความ "การตรวจสอบใช้เวลานานเกินไป ลองใช้ฟีดที่เล็กกว่า" และหากเกิดข้อผิดพลาดที่ไม่สามารถดำเนินการต่อได้จะแสดงข้อความ "การตรวจสอบความถูกต้องไม่สามารถเสร็จสิ้นได้"
เมื่อพาร์เซอร์วิเคราะห์โครงสร้าง XML แล้วพบว่ามาร์กอัปไม่ถูกต้อง จะแสดงข้อความ "แก้ไข XML ที่มีรูปแบบไม่ถูกต้อง จากนั้นตรวจสอบอีกครั้ง" พร้อมรายละเอียดเพิ่มเติมในรูปแบบ "รายละเอียดพาร์เซอร์: {detail}" แต่หากตรวจสอบแล้วผ่านเกณฑ์ทั้งหมดจะแสดงข้อความ "ไม่พบปัญหาเชิงโครงสร้าง"
คำถามที่พบบ่อย
เครื่องมือตรวจสอบ Podcast RSS นี้ตรวจสอบอะไร โดยจะตรวจสอบ RSS 2.0 XML ที่มีรูปแบบถูกต้อง, RSS ที่จำเป็น และฟิลด์ช่องและตอนของ Apple Podcasts ทั่วไป, คุณลักษณะ enclosure, รายการซ้ำ และวันที่ของ RFC 2822
มันทดสอบไฟล์เสียงหรือเปล่า? ตรวจสอบ URL ใน <enclosure> จำนวนไบต์ ประเภท MIME การซ้ำของ URL และความสอดคล้องระหว่างชื่อไฟล์กับประเภท โดยไม่ดาวน์โหลดหรือถอดรหัสไฟล์เสียง
feed ที่ผ่านจะยอมรับทุกที่หรือไม่ ไม่ แอพ Podcast สามารถเพิ่มกฎและการตรวจสอบระยะไกลได้ การผ่านหมายความว่า XML ที่วางตรงตามการตรวจสอบคงที่ที่แสดงไว้ที่นี่ ไม่ใช่ว่าไดเร็กทอรีจะยอมรับหรือเผยแพร่