Skip to content

shiguredo/sora-js-sdk

Repository files navigation

Sora JavaScript SDK

Static Badge GitHub tag npm version License

Sora JavaScript SDK は株式会社時雨堂が開発、販売している WebRTC SFU Sora / Sora Cloud をブラウザから扱うための SDK です。

About Shiguredo's open source software

We will not respond to PRs or issues that have not been discussed on Discord. Also, Discord is only available in Japanese.

Please read https://github.com/shiguredo/oss before use.

時雨堂のオープンソースソフトウェアについて

利用前に https://github.com/shiguredo/oss をお読みください。

使い方

使い方は Sora JavaScript SDK ドキュメント を参照してください。

npm

npm install sora-js-sdk

pnpm

pnpm add sora-js-sdk

システム条件

  • WebRTC SFU Sora 2024.1.0 以降
  • TypeScript 5.1 以降
  • Node.js 18.0 以降

Caution

Sora JavaScript SDK 2024.2.0 以降は Compression Stream API を利用しているため、ブラウザの要件がありますのでご確認ください。

  • Chrome / Edge 80 以降
  • Firefox 113 以降
  • Safari 16.4 以降

サンプル

サンプルを Vite にて起動できます。

# .env.local を作成して適切な値を設定してください
$ cp .env.template .env.local
$ pnpm install
$ pnpm run build
$ pnpm run dev

E2E (End to End) テスト

Playwright を利用した E2E テストを実行できます。

# .env.local を作成して適切な値を設定してください
$ cp .env.template .env.local
$ pnpm install
$ pnpm run build
$ pnpm exec playwright install chromium --with-deps
$ pnpm run e2e-test

E2E テストページ

E2E テストで実行するページを Vite にて起動できます。

pnpm run e2e-dev

マルチトラックについて

WebRTC SFU Sora は 1 メディアストリームにつき 1 音声トラック、 1 映像トラックまでしか対応していないため, Sora JavaScript SDK はマルチトラックに対応していません。

マルチトラックへの対応は今のところ未定です。

API 一覧

Sora JavaScript SDK ドキュメント API リファレンス

ライセンス

Apache License 2.0

Copyright 2017-2024, Shiguredo Inc.
Copyright 2017-2022, Yuki Ito (Original Author)

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

リンク

商用製品

無料検証サービス

クライアント SDK

クライアントツール

サーバーツール