便利なライブラリ
APIアダプタとやり取りを行う、SCOは、定番的な処理がいくつかあります。そうした処理は、毎回ゼロからプログラムを書くのではなく、まとめておいた方が便利です。インターネット上には、そうしたライブラリを配布しているサイトも存在しています。
ADLが配布しているサンプルコンテンツを見るとそのような処理をまとめた
APIWrapper.js、SCOFunctions.jsというJavaScriptの外部ファイルを利用しています。
APIWrapper.js | APIアダプタの階層パスの取得から、LMSInitialize()などメソッドを実行するときの、エラー処理が追加されています。実用上、最低限の処理のかたまりです。 |
SCOFunctions.js | APIWrapperに対してさらに機能拡張として処理が付加されています。例えば、LMSInitialize()を実行したらcmi.core.lesson_status(学習状況のステータス)をincomplete(未修了)にしたり、起動したSCOの学習時間を計測するスクリプトが書かれています。 |
ライセンスは、基本的に自由に利用できる独自ライセンスですが、API Wrapperは、2011年9月7日、手直され、クリエイティブコモンズ(CC BY-SA 3.0)として単独で公開されました。ADLが公開しているサンプルファイルは、それ以前に作られたものなので、ライセンスは独自ライセンスのままです。
※ 手直しは、JavaScriptのアラートウインドウが、console.logに変更されています。IE7など古いブラウザは未対応のため旧APIWrapper.jsの方がいい場合があるかもしれません。
※ SCOFunctions.jsは、独自ライセンスのままです。CCの配布はないようです。
SCORM 1.2 Content ExamplesのSCORM 1.2 Content PackagesにSCOFunctions.js、SCOFunctions.jsを含むサンプルがあります。
SCORM Version 1.2 Resources ダウンロード
ADLによるAPI Wrapper ファイルの配布 (クリエイティブコモンズ版)
ADL Releases SCORM Version 1.2 and SCORM 2004 API Wrapper Files ダウンロード
APIWrapper、SCOFunctionsのライセンス
ADLのサンプルで使用されている、APIWrapper、SCOFunctionsの独自ライセンスの条文です。
(意訳)
コンカレントテクノロジーコーポレーション(CTC) は、あなたに包括的、ロイヤルティフリーとして、このソフトウェアを以下の条件のもとで、ソースとバイナリコードの修正と再配布のライセンスを保証します。
i) この著作権表示とライセンスは、コピーしたソフトウェア上にすべて表示します。
ii) ライセンス授与者がCTCに不利益な形でソフトウェアを使用しない。
※ 訳の内容保障はいたしません、参考程度にして判断してください。