やっとMoodle2.4のサイトが動き始めました.まだまだコンテンツの引っ越しはこれから先です.さて,Moodle2からは外部リポジトリとして様々なサービスが利用可能です.その中でも普及率の高いDropboxとの連携には皆さんも興味あるのではないでしょうか? 実際のところ,Moodle2+Dropboxについては思ったほどの情報がありません.
さて,やはり参照すべきはMoodleDocsで,既に吉田さんもこのページは訳してくれています.
http://docs.moodle.org/2x/ja/Dropbox
ですが,先ほどチャレンジすべく,
https://www.dropbox.com/developers/apps
このページに行きましたが,どうもドキュメントと内容が一致しないように感じます(英語版も同じ内容).Appsが三種類あります.
- Dropbox Chooser
- Sync API
- Core
さて,Moodleで対応しているのはどれでしょう? 試しにDropbox Chooserを作成してみたのですが,AppKeyは入手できるのですが,秘密鍵というのがどこにあるのか分かりません.
もう一つ根本的な疑問です.そもそもここから話を始めるべきなのですが,「使ってみたら分かるかも」と先に走り出した次第です.サイトやコースのファイル領域(サーバファイル),ユーザ個人のプライベートファイル(うちはデフォルトで100MBのようです)の領域があります.どちらもmoodledata/filedir内に抽象化されたファイルシステムの中にありますね.リソースを追加したり,コースをリストアする場合は,これらのサーバファイル領域から選ぶ(リストアに関してはコースおよび個人のバックアップエリアも選択可能)ことができ,そのためのユーザインタフェースをファイルピッカーと呼ぶ.ここまで正しいでしょうか?
Dropboxなどのストレージ系の外部リポジトリの役割で疑問なのはここです.
- リソースなどのファイルをリポジトリに直接リンクさせる:dropbox内で消されたらキャッシュされている期日を超えると消える? どうやらファイルピッカーでの選択時に,コピーかリンクかを選べるらしく,コピーしたらコースファイルとしてサーバファイル領域にコピーされるのですよね.そのコピーは1度きりの片方向? つまりDropbox内で修正を行ったら反映されるのか.リンクとコピーをいつでも後から変えられるのなら構いませんが,うっかりDropbox内で削除したら行方不明になるのか?
- たとえばDropbox内で多層のフォルダを作成し,その中にたくさんのファイルを入れる.それをファイルピッカで”フォルダごと”コースのファイル領域にコピーできるのだろうか? もしこれができないのであれば,ZIP書庫を作成してそれをアップロードし,展開すれば同じ.ただしコース(およびサイトの)アップロード可能なファイルサイズには上限がありますので,ZIPファイルがそれより大きくてはいけない.ファイルの数が多い場合は一つ一つ選択してコピーしていては大変.見落とすかも知れない.
Dropboxを使うことでどこまでできるのだろう.いまの私の要望は,リソースとしてフォルダをコースに追加(すると,コースファイル領域が用意される)し,そこに複雑なフォルダ構造かつ大量かつ大きなファイルをコピーしたい.これを確実かつ楽な手段でできないか,それがDropboxなのだと期待しています.違うのでしょうか?
あともうひとつ気になるのは,一つのMoodleサイトに割り当てられるDropboxのアカウントは一つなのか,複数なのか,です.一つしかないのだとしたら,そのアカウントはサイトに関わりのある教師全員がパスワードを知っていなくてはいけない.Dropboxをリポジトリとして有効にする際に求められるAppKeyと秘密鍵は一つです.誰かのアカウントで作成すれば,それをそのMoodleから利用する際には共有され(ファイルではなく,サービスが),各人のアカウントでログインできる,ということでしょうか?