Chamilo
ONLYOFFICEとChamiloの統合について
ONLYOFFICEは、ONLYOFFICE DocsをChamiloと統合し、ドキュメントライブラリ内でオフィス文書を編集するための公式コネクターを提供しています。ONLYOFFICEコネクターはGitHubページから入手できます。
Chamilo用ONLYOFFICEコネクターの動作について詳しくは、APIドキュメントをご覧ください。
主な機能
- テキスト文書、スプレッドシート、プレゼンテーション、PDFフォームの編集と閲覧。
- リアルタイムでの文書の共同編集:2つの共同編集モード(高速と厳格)、変更履歴モード、コメント、内蔵チャット。
- JWTサポートにより通信を保護し、適切な権限を持つユーザー以外は文書にアクセスできないようにします。
サポートされている形式
- 編集:DOCX、XLSX、PPTX、PPSX、PDFフォーム
- 閲覧のみ:PDF、DJVU、TXT、CSV、ODT、ODS、ODP、DOC、XLS、PPT、PPS、EPUB、RTF、HTML、HTM、MHT、XPS
バージョン1.5.0の新機能
追加
- ラーニングパスのサポート
変更
- 軽微な修正
完全な変更履歴はこちらでご覧いただけます。
ONLYOFFICE DocsとChamiloの接続
要件
-
ONLYOFFICE Document Server v6.2以降(サーバー版またはクラウド版)
Chamiloとすべてのエンドクライアントの両方から名前解決および接続可能なONLYOFFICE Docsのインスタンスが必要です。Chamiloに直接POSTできる必要があります。
注記ONLYOFFICE Docsのインストールについて詳しくは、公式のドキュメントページをご参照ください。
Chamilo用ONLYOFFICEコネクターのインストール
Chamilo v1.11.16以降では、ONLYOFFICEコネクターがプリインストールされています。有効にするには、次の手順を実行します。
- ChamiloのAdministration(管理)ページに移動し、Portal(ポータル)ブロックのPlugins(プラグイン)セクションを選択します。
- プラグインの一覧からONLYOFFICEプラグインを選択し、Enable the selected plugins(選択したプラグインを有効にする)ボタンをクリックします。

Chamiloのバージョンが1.11.16より前の場合は、次の手順でONLYOFFICEコネクターをインストールしてください。
- GitHubページからコネクターをダウンロードします。
- Chamilo Administration(管理)に移動し、Plugins(プラグイン)を選択して、Upload plugin(プラグインをアップロード)ボタンをクリックします。
- onlyoffice.zipファイルをアップロードします。プラグインの一覧が表示されます。
- Chamiloのルートフォルダーでターミナルを使用してcomposer installを実行します。
- プラグインの一覧に戻り、ONLYOFFICEプラグインを選択して、Enable(有効にする)をクリックします。
Chamilo用ONLYOFFICEコネクターの更新
コネクターを最新バージョンに更新するには、プリインストールされているデフォルトのプラグインフォルダーを、新しく用意したプラグインに置き換える必要があります。
ステップ1:新しいバージョンのコネクターのフォルダーを用意します。
-
GitHubページからダウンロードし、アーカイブを展開します:
cd /tmp && wget https://github.com/ONLYOFFICE/onlyoffice-chamilo/releases/download/vX.X.X/onlyoffice.zipここでvX.X.Xは必要なコネクターのバージョンです。
unzip onlyoffice.zip -
または、コネクターをビルドすることもできます:
-
次のコマンドを実行して、このリポジトリの最新バージョンを取得します:
git clone https://github.com/ONLYOFFICE/onlyoffice-chamilocd onlyoffice-chamilo -
サブモジュールを取得します:
git submodule update --init --recursive -
プラグインの依存関係を取得します:
composer install -
すべてのファイルをまとめます:
mkdir /tmp/onlyoffice-deploymkdir /tmp/onlyoffice-deploy/onlyofficecp -r ./ /tmp/onlyoffice-deploy/onlyofficecd /tmp/onlyoffice-deploy/onlyofficerm -rf ./.git*rm -rf */.git*
-
ステップ2:古いコネクターのフォルダーを削除します。
-
ルートフォルダーでターミナルを開きます。
-
次のコマンドを使用してフォルダーを削除します:
rm -rf /var/www/html/chamilo-x.x.x/plugin/onlyofficeここで
chamilo-x.x.xはお使いのChamiloのバージョンです。
ステップ3:新しいコネクターのフォルダーをchamilo-x.x.x/plugin/ディレクトリに移動します。
-
ルートフォルダーでターミナルを開きます。
-
次のコマンドを使用してフォルダーを移動します:
cp -r /tmp/onlyoffice-deploy/onlyoffice /var/www/html/chamilo-x.x.x/plugin/ここで
chamilo-x.x.xはお使いのChamiloのバージョンです。
Chamilo用ONLYOFFICEコネクターの設定
Plugins(プラグイン)ページでONLYOFFICEを探し、Configure(設定)をクリックします。Settings(設定)ページが表示され、次のパラメーターを設定できます。
-
Chamiloからドキュメント編集サービスへのアクセスに使用するアドレスを、Document Editing Service address(ドキュメント編集サービスのアドレス)フィールドに入力します。
重要ONLYOFFICE DocsのアドレスはChamiloからアクセス可能である必要があり、ChamiloのアドレスもONLYOFFICE Docsからアクセス可能である必要があります。
-
データの署名に使用するシークレットをSecret Key(シークレットキー)フィールドに指定します。
注記ONLYOFFICE Docs v7.2以降では、JWTがデフォルトで有効になり、シークレットキーが自動的に生成されます。Chamilo側でも有効にする必要があります。ONLYOFFICE Docs設定ファイルでシークレットキーを確認し、コネクターの設定に同じシークレットキーを指定してください。詳細は、この記事のONLYOFFICEとChamiloの統合でJWTを有効にするセクションをご覧ください。

仕組み
ONLYOFFICE統合は、こちらに記載されているAPIに従っています。
-
新しいファイルを作成するには、教師が必要なフォルダーを開き、Create new(新規作成)のONLYOFFICEアイコンをクリックします。
-
ユーザーはファイル作成ページに移動し、ファイル名と形式(テキスト文書、スプレッドシート、プレゼンテーション)を入力します。ブラウザーは*/plugin/onlyoffice/create.php*メソッドを呼び出します。これにより、空のファイルのコピーがコースフォルダーに追加されます。
-
既存のファイルを開くには、ユーザーはOpen with ONLYOFFICE(ONLYOFFICEで開く)アイコンを選択します。
-
リクエストは*/plugin/onlyoffice/editor.php?docId="document identificator"*に送信されます。サーバーはリクエストを処理し、次のプロパティを持つエディター初期化設定を生成します:
- url - ONLYOFFICE Docsが文書をダウンロードするために使用するURL;
- callbackUrl - ONLYOFFICE Docsが文書の編集状況を通知するために使用するURL;
- documentServerUrl - クライアントがONLYOFFICE Docsに応答するために必要なURL(管理設定ページで設定できます);
- key - ONLYOFFICE Docsに文書を再ダウンロードするかどうかを指示するetag。
-
サーバーは、エディターを開くスクリプトを含むページを返します。
-
ブラウザーはこのページを開き、エディターを読み込みます。
-
ブラウザーはONLYOFFICE Docsにリクエストを送り、文書の設定を渡します。
-
ONLYOFFICE Docsが文書を読み込み、ユーザーが編集を開始します。
-
ONLYOFFICE DocsはcallbackUrlにPOSTリクエストを送信し、ユーザーが文書を編集していることをChamiloに通知します。
-
すべてのユーザーが編集を終えると、エディターのウィンドウを閉じます。
-
10秒後、ONLYOFFICE DocsはcallbackUrlにPOSTリクエストを送信して編集セッションの終了を通知し、新しい文書バージョンへのリンクを送信します。
-
Chamiloは文書の新しいバージョンを読み込み、ファイルを上書きします。
ONLYOFFICEとChamiloの統合でJWTを有効にする
文書を不正アクセスから保護するため、ONLYOFFICEエディターはJSON Web Token(JWT)を使用します。トークンは、ドキュメントエディターの初期化時の設定と、内部のONLYOFFICE Docsサービス間のコマンドのやり取りに追加されます。シークレットキーは、JSON Web Tokenの署名と、ONLYOFFICE Docsへのリクエスト時のトークンの検証に使用されます。
ONLYOFFICE Docs v7.2以降では、JWTがデフォルトで有効になり、シークレットキーが自動的に生成されます。ONLYOFFICE Docs設定ファイルでシークレットキーを確認し、コネクターの設定に同じシークレットキーを指定する必要があります。
ステップ1:ONLYOFFICE Docs設定ファイルでシークレットキーを確認します
-
任意のテキストエディターでlocal.jsonファイルを開きます。
-
Linuxの場合 -
/etc/onlyoffice/documentserver/local.json -
Windowsの場合 -
%ProgramFiles%\ONLYOFFICE\DocumentServer\config\local.json -
Dockerの場合 –
docker exec -it <containerID> bashコマンドでONLYOFFICE Docsコンテナに入り、/etc/onlyoffice/documentserver/local.jsonを開きますまたは、local.jsonを開かずに、次のコマンドでデフォルトのシークレットキーを確認することもできます:
sudo docker exec <containerID> /var/www/onlyoffice/documentserver/npm/json -f /etc/onlyoffice/documentserver/local.json 'services.CoAuthoring.secret.session.string'
local.jsonファイルは次のようになっているはずです:
{"services": {"CoAuthoring": {"token": {"enable": {"request": {"inbox": true,"outbox": true},"browser": true}},"secret": {"inbox": {"string": "yoursecret"},"outbox": {"string": "yoursecret"},"session": {"string": "yoursecret"}}}}} -
-
3つのセクションに
true値が指定されています。これはトークンの検証が有効であることを意味します。services.CoAuthoring.token.enable.browserservices.CoAuthoring.token.enable.request.inboxservices.CoAuthoring.token.enable.request.outbox
-
自動生成されたシークレットキーが3つのセクションに指定されています。デフォルトのシークレット値は、独自のシークレットキーに置き換えることができます。シークレットキーは3つのセクションで同じである必要があります。
services.CoAuthoring.secret.inbox.stringservices.CoAuthoring.secret.outbox.stringservices.CoAuthoring.secret.session.string
-
変更を加えた場合は、保存してサービスを再起動し、設定の変更を反映させます。
supervisorctl restart all
ステップ2:コネクターの設定に同じシークレットキーを指定します
コネクターの設定で、Secret key(シークレットキー)フィールドに同じシークレットを指定し、設定を保存します。
Chamilo用ONLYOFFICEコネクターの無効化
ONLYOFFICEコネクターを無効にする必要がある場合:
- Plugins(プラグイン)ページでONLYOFFICEを探し、Configure(設定)をクリックします。
- Enable(有効)セクションのNo(いいえ)チェックボックスをオンにします。
Chamilo内でONLYOFFICE Docsを使い始める
ONLYOFFICE Docsエディターで文書を開いて編集するには:
- 必要なファイルがあるフォルダーを開きます。
Edit in ONLYOFFICE(ONLYOFFICEで編集)アイコンをクリックして、ファイルをエディターで開き編集します。
文書はONLYOFFICE Docsエディターで開きます。

文書の権限を読み取り専用に変更するには:
- 対象の文書を探します。
Edit(編集)アイコンをクリックします。
- 開いたページで、Read only(読み取り専用)チェックボックスを選択します。
- Save document(文書を保存)ボタンをクリックします。

最も一般的な問題とその解決方法について詳しくは、トラブルシューティングガイドをご覧ください。