? Stremio Addon SDK ? ได้รับการพัฒนาโดยทีม Stremio เพื่อลดความซับซ้อนในการสร้างส่วนเสริม Node.js สำหรับแพลตฟอร์มสตรีมมิ่งของเรา
ปัจจุบัน Stremio รองรับ Windows, macOS, Linux, Android และ iOS
สำคัญ: เราขอแนะนำอย่างยิ่งให้ปรับใช้ส่วนเสริมกับเซิร์ฟเวอร์ BeamUp
ตัวอย่างที่กำหนดเองนี้สร้างส่วนเสริมที่ให้สตรีมสำหรับ Big Buck Bunny และส่งออกที่อยู่ HTTP ที่คุณสามารถเข้าถึงได้
const { addonBuilder, serverHTTP, publishToCentral } = need('stremio-addon-sdk')const builder = new addonBuilder({id: 'org.myexampleaddon',version: '1.0.0',ชื่อ: 'ตัวอย่างง่ายๆ',/ / คุณสมบัติที่กำหนดว่า Stremio จะเลือก Addon นี้เมื่อใด// หมายความว่า Addon ของคุณจะถูกใช้สำหรับการสตรีมประเภทนี้ แคตตาล็อกภาพยนตร์: [],ทรัพยากร: ['สตรีม'],ประเภท: ['ภาพยนตร์'],idPrefixes: ['tt']})// รับฟังก์ชัน(args)builder.defineStreamHandler(ฟังก์ชั่น(args) {if (args. type === 'movie' && args.id === 'tt1254207') {// ให้บริการหนึ่งสตรีมไปยัง big buck bunnyconst stream = { url: 'http://distribution.bbb3d.renderfarming.net/video/mp4/bbb_sunflower_1080p_30fps_normal.mp4' }return Promise.resolve({ streams: [stream] })} else {// ไม่เช่นนั้นจะ return no streamsreturn Promise.resolve({ streams : [] })}})serveHTTP(builder.getInterface(), { พอร์ต: process.env.PORT ||. 7000 })//publishToCentral("https://your-domain/manifest.json") // <- เรียกใช้สิ่งนี้หากคุณต้องการเผยแพร่ Addon ของคุณและสามารถเข้าถึงได้แบบสาธารณะบน "your-domain"
บันทึกสิ่งนี้เป็น addon.js
แล้วรัน:
npm ติดตั้ง stremio-addon-sdk โหนด ./addon.js
มันจะส่งออก URL ที่คุณสามารถใช้เพื่อติดตั้ง addon ใน Stremio
โปรดทราบ: URL ของ addon ใน Stremio จะต้องโหลดด้วย HTTPS (ยกเว้น 127.0.0.1
) และต้องรองรับ CORS! การสนับสนุน CORS ได้รับการจัดการโดยอัตโนมัติโดย SDK แต่หากคุณพยายามโหลด Addon จากระยะไกล (ไม่ใช่จาก 127.0.0.1
) คุณจะต้องรองรับ HTTPS
เพื่อสนับสนุน Stremio addon ใหม่ เราได้สร้างเครื่องมือที่เรียกว่า addon-bootstrap
คุณสามารถใช้มันในลักษณะต่อไปนี้:
npm ติดตั้ง -g stremio-addon-sdk # ใช้ sudo หากบน Linuxaddon-bootstrap สวัสดีชาวโลก
คุณจะถูกถามเกี่ยวกับทรัพยากรและประเภทที่คุณต้องการสนับสนุน หลังจากนั้นส่วนเสริมจะถูกสร้างขึ้นในไดเร็กทอรี hello-world
และคุณจะสามารถเรียกใช้ได้:
ซีดี สวัสดีชาวโลก ติดตั้ง npm เริ่มเวลา npm -- --launch
หากคุณต้องการติดตั้ง addon ใน Stremio เวอร์ชันเดสก์ท็อป (ซึ่งคุณสามารถดาวน์โหลดได้ที่นี่) คุณควรใช้ npm start -- --install
เอกสารทั้งหมดของเราอยู่ที่นี่บน GitHub ดูรายการตัวอย่างของเราสำหรับข้อมูลระดับสูงบางส่วน หรือเจาะลึกเอกสาร SDK ของเราสำหรับเอกสารอ้างอิงโค้ดของเรา
เรายังมีตัวอย่าง addon ที่คุณสามารถใช้เป็นแนวทางในการช่วยคุณสร้าง addon ของคุณเองได้
เราได้จัดทำคำแนะนำสองขั้นตอน: หนึ่งรายการสำหรับ SDK นี้ และอีกรายการหนึ่งสำหรับภาษาการเขียนโปรแกรมใดๆ ซึ่งคุณสามารถอ่านได้ที่นี่
หากคุณไม่ต้องการใช้ Node.js (และไม่ต้องการใช้ SDK นี้เช่นกัน) คุณสามารถสร้างส่วนเสริมในภาษาการเขียนโปรแกรมใดก็ได้ โปรดดูข้อมูลเพิ่มเติมในข้อกำหนดโปรโตคอล addon
นอกจากนี้ยังสามารถสร้าง Addon โดยไม่ต้องใช้ภาษาการเขียนโปรแกรมใดๆ ดูตัวอย่าง Addon แบบคงที่ของเราตามข้อกำหนดโปรโตคอล
คุณสมบัติ SDK รวมถึง:
การเผยแพร่ addon ผ่าน HTTP
การเผยแพร่ลิงก์ Addon ของคุณไปยังคอลเลกชัน Addon สาธารณะด้วย publishToCentral
การสร้างหน้าแรกสำหรับ Addon ของคุณที่มีปุ่ม "ติดตั้ง Addon"
สำหรับนักพัฒนาที่กำลังมองหาวิธีที่รวดเร็วในการทดสอบส่วนเสริมใหม่ คุณสามารถ:
ทดสอบกับ Stremio
ทดสอบกับเวอร์ชันเว็บของเรา
เพื่อให้ผู้อื่นใช้งาน Addon ของคุณได้ จำเป็นต้องปรับใช้ทางออนไลน์
คุณสามารถตรวจสอบรายชื่อผู้ให้บริการโฮสติ้งที่แนะนำสำหรับ Node.js หรือโฮสต์ภายในเครื่องด้วย localtunnel
หลังจากที่คุณปรับใช้แบบสาธารณะแล้ว เพื่อให้ Addon แสดงใน Stremio (ผ่านคอลเลกชั่น Addon สาธารณะ) คุณต้องใช้ publishToCentral หรือเผยแพร่ด้วยตนเองผ่าน UI
ลองดูรายการตัวอย่างและส่วนเสริมการสาธิตที่เพิ่มขึ้นเรื่อยๆ ของเรา รายการนี้ยังรวมถึงตัวอย่างและบทช่วยสอนเกี่ยวกับวิธีพัฒนา Stremio addons ใน PHP, Python, Ruby, C#, Rust, Java และ Go นอกจากนี้ยังมีรายการวิดีโอบทช่วยสอนด้วย
มี SDK เวอร์ชัน Rust ของบุคคลที่สามที่สร้างขึ้นบน stremio-core ที่พัฒนาโดย Sleeyax ที่นี่
มี SDK เวอร์ชัน Go ของบุคคลที่สามที่พัฒนาโดย doodswork ที่นี่
อ่านคำแนะนำการใช้งานขั้นสูงของเราเพื่อทำความเข้าใจวิธีการต่างๆ มากมายที่สามารถใช้ Addons ได้
หากคุณมีปัญหาใดๆ เกี่ยวกับ Stremio Addon SDK โปรดรายงานได้ที่นี่
หากต้องการย้ายจาก v0.x คุณต้อง:
เปลี่ยน new addonSDK
เป็น new addonBuilder
ซึ่งคุณสามารถนำเข้าผ่าน const addonBuilder = require('stremio-addon-sdk').addonBuilder
เปลี่ยน addon.run(opts)
เป็น serveHTTP(addon.getInterface(), opts)
ซึ่งคุณสามารถนำเข้าผ่าน const serveHTTP = require('stremio-addon-sdk').serveHTTP
ผู้จัดการทุกคนจะต้องคืน Promise
(แทนที่จะรับ cb
)
การใช้ SDK นี้ไม่จำเป็นสำหรับการสร้าง Stremio Addons คุณสามารถใช้ภาษาการเขียนโปรแกรมใดก็ได้ที่รองรับการสร้างเซิร์ฟเวอร์ HTTP เพื่อสร้าง Stremio Addons โปรดดูข้อกำหนดโปรโตคอลของเราสำหรับรายละเอียดและตัวอย่าง
สถานการณ์ที่เป็นประโยชน์อย่างหนึ่งในการไม่ใช้ SDK คือเมื่อคุณต้องการข้อมูลเฉพาะผู้ใช้สำหรับ Addon ของคุณ (เช่น API Autherntication Token) คุณสามารถดูตัวอย่างการส่งข้อมูลเฉพาะผู้ใช้ใน URL ของ Addon ที่นี่ ตัวอย่างนี้ใช้ Node.js และ Express เพื่อรับข้อมูลเฉพาะของผู้ใช้ (อัปเดต: Addon SDK รองรับการตั้งค่าผู้ใช้แล้ว)
สร้างขึ้นด้วยความรักและทักษะการเขียนโค้ดอย่างจริงจังโดยทีม Stremio