slack

テクてく Lotus 技術者 Slack に参加しよう!

2012/11/06

Collaboration Today のサイトがオープンソースとして公開

9 月に「CollaborationToday.info」のポストでご紹介した IBM/コミュニティの IBM Collaboration Solutions (ICS) のサイトをご紹介しました。このサイトは XPages で作成されており、OpenNTF でオープンソース「Collaboration Today」プロジェクトとして公開されています。

Collaboration Today のコンセプトは、単なる情報の垂れ流しではなく、サイトのモデレーターが公開する内容を承認してキュレーションを行ないながらコンテンツを公開する方法を取っています。
企業内においても、情報共有の新しい形として利用できるのでないでしょうか?

早速ファイルをダウンロードすると「ct.ntf」というテンプレートが用意されていますので、このテンプレートからデータベースを作成するだけ。

このサイトには通常の XPages の他にいくつかのテクノロジーが使用されています。なかでも特筆すべき点は、

  1. Responsive Web Design
  2. Counting Clicks
  3. Cache
の3 つ。
Responsive Web Design はデスクトップ、タブレット、スマートフォンの異なる画面サイズに合わせて、自動的にページのレイアウトを変更されるといった JavaScript/CSS の技術で、このデータベースには jQuery と Twitter Bootstrap が使用されています。前にもどこかでお話ししたかもしれませんが、Bootstrap は Class 識別子を使うので、XPages にはとても相性の良いフレームワークです。どういう作り方をしているのか設計を見るだけでも勉強になります。

ふたつめは、Collaboration Today で公開されているコンテンツの中で、人気のあるコンテンツはなにか、つまりクリック数の多いコンテンツは何かを表示( Popular ページで表示)するために、クリックのカウントをしています。同じ IP アドレスからの重複したクリックをカウントしない、5 分以内に同じユーザーからのクリックはカウントしないなどの工夫がされています。「log.xsp」を見ると、これを実現するための xAgent (これは将来変更されるかも) と 特に重複の回避のためのロジックは Java で記述されています。

そして Cache。コンテンツの内容と設定の内容はすべて applicationScope にキャッシュされています。最初にこのデータベースでカテゴリ(設定)を日本語に直そうとノーツ文書の中を変更したのですが、ページを表示すると英語のままで表示されたので、おやっと思ったのですが、キャッシュのリフレッシュをしないと日本語に修正した部分が表示されませんでしたので要注意です。コンテンツの部分は Web からの登録になるので、キャッシュリフレッシュのロジックがきちんと付いていますが、設定に関してはこの点をお忘れなく。

上記の内容は、プロジェクトページにビデオ(英語)で紹介されていますので、一度ご確認ください。

最後に、日本版の Collaboration Today も現在 XPages Extension Library Japan プロジェクトの一環として準備中です。IBM からのアナウンス、コミュニティのブログ、ビジネスパートナーのイベント告知、製品アナウンスなど ICS の戦略に見合うものをすべて網羅していきたいとプロジェクトメンバー全員で早期オープン向けがんばっているところです。


1 件のコメント:

  1. 追記:このデータベースを使用する場合は、Notes/Domino 8.5.3 以降、加えて XPages Extension Library/Upgrade Pack のインストールが前提条件となります。

    返信削除