? Stremio アドオン SDK ?は、ストリーミング プラットフォーム用の Node.js アドオンの作成を大幅に簡素化する方法として Stremio チームによって開発されました。
Stremio は現在、Windows、macOS、Linux、Android、iOS をサポートしています。
重要: BeamUp サーバーにアドオンを展開することを強くお勧めします。
この任意の例では、Big Buck Bunny にストリームを提供し、それにアクセスできる HTTP アドレスを出力するアドオンを作成します。
const { addonBuilder,serveHTTP,publishToCentral } = require('stremio-addon-sdk')const builder = new addonBuilder({id: 'org.myexampleaddon',version: '1.0.0',name: 'simple example',/ / Stremio がこのアドオンをいつ選択するかを決定するプロパティ// これは、アドオンが次のタイプのストリームに使用されることを意味しますmoviecatalogs: [],resources: ['stream'],types: ['movie'],idPrefixes: ['tt']})// は function(args)builder.defineStreamHandler(function(args) {if (args. type === 'movie' && args.id === 'tt1254207') {// 1 つのストリームを大金に提供bunnyconst stream = { url: 'http://distribution.bbb3d.renderfarming.net/video/mp4/bbb_sunflower_1080p_30fps_normal.mp4' }return Promise.resolve({ streams: [stream] })} else {// それ以外の場合はストリームを返しませんreturn Promise.resolve({ ストリーム: [] })}})serveHTTP(builder.getInterface(), { port: process.env.PORT || 7000 })//publishToCentral("https://your-domain/manifest.json") // <- これを呼び出しますアドオンを公開したい場合で、そのアドオンが「あなたのドメイン」で一般にアクセスできる場合
これをaddon.js
として保存し、実行します。
npm インストール stremio-addon-sdk ノード ./addon.js
Stremio にアドオンをインストールするために使用できる URL が出力されます。
注意: Stremio のアドオン URL は HTTPS ( 127.0.0.1
を除く) でロードされ、CORS をサポートしている必要があります。 CORS サポートは SDK によって自動的に処理されますが、アドオンをリモートで ( 127.0.0.1
からではなく) ロードしようとしている場合は、HTTPS をサポートする必要があります。
新しい Stremio アドオンの足場を築くために、 addon-bootstrap
と呼ばれるツールを作成しました。
次の方法で使用できます。
npm install -g stremio-addon-sdk # Linuxaddon-bootstrap hello-world の場合は sudo を使用します
どのリソースとタイプをサポートするかを尋ねられます。その後、アドオンがhello-world
ディレクトリに作成され、実行できるようになります。
CD ハローワールド npmインストール npm start -- --launch
Stremio のデスクトップ バージョン (ここからダウンロードできます) にアドオンをインストールしたい場合は、 npm start -- --install
使用する必要があります。
すべてのドキュメントはここ GitHub にあります。高レベルの情報についてはサンプル リストを参照するか、コード リファレンス ドキュメントについては SDK ドキュメントに直接アクセスしてください。
独自のアドオンを構築するためのガイドとして使用できるサンプル アドオンもあります。
2 つのステップバイステップ ガイドを作成しました。1 つはこの SDK 用で、もう 1 つは任意のプログラミング言語用です。こちらで読むことができます。
Node.js を使用したくない場合 (つまり、この SDK も使用したくない場合)、任意のプログラミング言語でアドオンを作成できます。詳細については、アドオン プロトコルの仕様を参照してください。
プログラミング言語を使用せずにアドオンを作成することもできます。プロトコル仕様に基づいた静的アドオンの例を参照してください。
SDK の機能には次のものが含まれます。
HTTP 経由でアドオンを公開する
publishToCentral を使用して、アドオン リンクをパブリック アドオン コレクションに公開します。
「アドオンのインストール」ボタンを含むアドオンのホームページを作成する
新しいアドオンを簡単にテストする方法を探している開発者は、次のいずれかを行うことができます。
Stremio でテストする
Web バージョンでテストする
アドオンを他の人が使用できるようにするには、アドオンをオンラインで展開する必要があります。
Node.js の推奨ホスティング プロバイダーのリストを確認することも、localtunnel を使用してローカルでホストすることもできます。
パブリックにデプロイした後、(パブリック アドオン コレクションを通じて) アドオンを Stremio に表示するには、publishToCentral を使用するか、UI を通じて手動で公開する必要があります。
サンプルとデモ アドオンの増え続けるリストをチェックしてください。このリストには、PHP、Python、Ruby、C#、Rust、Java、Go で Stremio アドオンを開発する方法に関する例とチュートリアルも含まれています。ビデオチュートリアルのリストも含まれています。
Sleeyax によって開発された stremio-core に基づいて構築されたこの SDK のサードパーティの Rust バージョンがここにあります。
doodswork によって開発されたこの SDK のサードパーティ Go バージョンがここにあります。
高度な使用法に関するガイドを読んで、アドオンのさまざまな使用方法を理解してください。
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
経由でインポートできます。
すべてのハンドラーは ( cb
取得するのではなく) Promise
を返さなければなりません
Stremio アドオンの作成には、この SDK の使用は必須ではありません。 HTTP サーバーの作成をサポートする任意のプログラミング言語を使用して、Stremio アドオンを作成できます。詳細と例については、プロトコル仕様を参照してください。
SDK を使用しない便利なシナリオの 1 つは、アドオンにユーザー固有のデータ (API 認証トークンなど) が必要な場合です。ここで、アドオン URL でユーザー固有のデータを渡す例を確認できます。この例では、Node.js と Express を使用してユーザー固有のデータを取得します。 (更新: アドオン SDK はユーザー設定をサポートするようになりました)
Stremio チームが愛情と本格的なコーディング スキルを持って構築しました