LOGIN ID Password Auto Login Register Now! Lost Password?
XOOPS2BasicManual
About XOOPS
JavaScriptをOnでご覧ください。

6.5 イベント通知システムの概念

イベント通知システムの概要

イベント通知とは、登録ユーザが事前に、あるイベントに対して通知を希望しておくことで、実際にそのイベントが発生した際、そのユーザにメールまたはPM が送られる機能です。サイトの性格によっては、とても有効な機能なのですが、XOOPSとしては比較的最近に実装された機能であるためか、さほど積極的に 利用されていません。

参考画面

イベントという概念的な表現では判りづらいと思うので、以下にイベント通知の例を挙げます。

  • フォーラムのあるスレッドについて、誰かがレスポンスをつけたら、そのことを知らせて欲しい。
  • 一般ユーザがニュース記事を投稿した際、その記事が管理者によって承認された時にPMが欲しい

通知可能な「イベント」には様々なものが考えられますが、一般的なものを以下に挙げます。

  • あるモジュールに投稿がなされた
  • あるモジュール内の特定のカテゴリーに投稿がなされた
  • 投稿が管理者によって承認された
  • ある記事(写真・イベント等、各アイテム)に、コメントがついた

各イベントは親にカテゴリーを持ち、カテゴリーの親がモジュールとなります。
「カテゴリー」という言葉がまた紛らわしく、多くのモジュール本体が持っているカテゴリーという概念とは本来まったく関係がありません。

例えば、myAlbum-Pであれば、イベント通知用のカテゴリーとして、「モジュール全体」「カテゴリー」「写真」の3種類があり、それぞれの下に、特定イベントが配置されます。

【myAlbum-Pイベント通知の例 】

  • モジュール全体(モジュール全体に対するイベント)
    • 新規写真登録
  • カテゴリー(あるカテゴリーに対するイベント)
    • カテゴリ毎の新写真登録
    • ブックマーク
  • 写真 (ある1枚の写真に対するイベント)
    • コメントが追加されました
    • 新規コメントの投稿がありました
    • ブックマーク

参考画面 
※myAlbum-Pのイベント選択部分

ここで出てきたブックマークとは、 イベント通知機能 を応用したおまけです。実際には何も通知はしませんが、登録ユーザのイベント通知一覧に登録されるので、擬似的に、 イベント通知機能 がブックマークになる、という意味です。

サイト管理者にとってのイベント通知

サイト管理者は、モジュールの一般設定画面から、すべての通知対象となる特定イベントについて、ON/OFFを選択できます。(複数選択式のリストボックスなので、CTRLキーまたはCommandキーを活用してください)

OFFとされた特定イベントについては、サイト訪問者が通知機能を登録することはできません。

参考画面

また、サイトとしてイベント通知を提供する場合、その登録用フォームを表示する必要がありますが、その表示方法も、各モジュールの一般設定画面から選択で きます。ブロック表示する場合、システム管理の「イベント通知設定」ブロックをそのモジュールに対して表示するように設定しないと意味がありません。

イベント通知機能 は 便利ですが、数多く表示されるとインターフェースがごちゃごちゃと判りづらくなる欠点もあるため、本当に必要とされる機能だけを有効にするのが良いと思い ます。特にブックマークは不要でしょう。この手の機能が必要であれば、栞モジュールをインストールする方がスマートです。

サイト訪問者にとってのイベント通知

サイト訪問者が登録したイベントは、ユーザメニューの「 イベント通知機能 」からその中身を確認することや削除ができます。

イベントが発生した時の通知手段は、メールかPMのいずれかですが、そのいずれにするかは、ユーザ自身がアカウント編集から選択します。一時的に、通知を中止することも可能です。

通知文の内容は、一種のテンプレート方式(とは言ってもSmartyを利用するわけではなく、実際には{と}で囲まれた部分をstr_replace() で置換するだけ)になっていて、言語ファイルのmail_template/下にあるtplファイルに、モジュールが動的に各種テキストを埋め込んで生成 されます。

イベント通知で勘違いしやすいのは、 イベント通知機能 のデフォルト設定だと、イベントを起こした本人にはイベント通知が送られないことです。

あるモジュール全体に対して、なんらかの投稿があったらイベントを発生するようにしていても、投稿者が自分自身であれば、イベント通知がされません。

モジュール開発者が イベント通知機能 をテストする場合は、ブラウザを2つ立ち上げて、別のユーザとしてログインしてイベントを起こす方が良いでしょう。


Previous
6.6 イメージマネージャーの概念
Top of contents Next
6.4 テキストサニタイザ
Back to Page Top
MainMenu
Manuals
Search
XOOPS Official & Dev.
XOOPS Communities