JP2005122507A - 情報通知システム、情報通知方法、および、プログラム - Google Patents

情報通知システム、情報通知方法、および、プログラム Download PDF

Info

Publication number
JP2005122507A
JP2005122507A JP2003357339A JP2003357339A JP2005122507A JP 2005122507 A JP2005122507 A JP 2005122507A JP 2003357339 A JP2003357339 A JP 2003357339A JP 2003357339 A JP2003357339 A JP 2003357339A JP 2005122507 A JP2005122507 A JP 2005122507A
Authority
JP
Japan
Prior art keywords
information
notification
icon
displayed
mouse pointer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2003357339A
Other languages
English (en)
Other versions
JP4150967B2 (ja
Inventor
Makoto Okada
誠 岡田
Kentaro Furukawa
健太郎 古川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SAGE CORP X
X SAGE CORP
Original Assignee
SAGE CORP X
X SAGE CORP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SAGE CORP X, X SAGE CORP filed Critical SAGE CORP X
Priority to JP2003357339A priority Critical patent/JP4150967B2/ja
Publication of JP2005122507A publication Critical patent/JP2005122507A/ja
Application granted granted Critical
Publication of JP4150967B2 publication Critical patent/JP4150967B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Controls And Circuits For Display Device (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

【課題】 マウスポインタに追従して広告を表示する際、ユーザが他のアプリケーションで業務を行っている間でも、計算機に負荷を掛けずに複数の広告を画面上に表示させること。
【解決手段】 端末装置と通信ネットワークを介して繋がり、通知情報を端末装置2へ配信するサーバ装置を有する情報通知システムであって、サーバ装置は、通知対象に関連付けて、アイコン情報および通知情報を保存する手段と、アイコン情報および通知情報を端末装置へ送信する手段とを備え、端末装置は、サーバ装置から送られてくるアイコン情報および通知情報を取得する手段と、マウスポインタの位置を取得する手段と、マウスポインタ近傍の領域に前記アイコンを表示すると共に通知情報をスクロール表示する手段と、マウスポインタの反復移動の速度を検出する手段と、検出した反復移動の速度をもとに表示されている通知情報を順に切り替える手段とを備える。
【選択図】 図3

Description

本発明は、インターネット等の通信ネットワーク経由で広告情報等の通知情報をユーザの端末に配信する情報通知システム、情報通知方法、および、プログラムに関する。
近時、インターネットの普及により、多くの人々がこの通信ネットワークに接続し、様々な情報の入手や発信を行っている。インターネットのWWW(World Wide Web)や電子メールサービスを多くの人間が利用するにいたった結果、インターネットを利用した広告が一般的に行われるようになってきた。
インターネットを使った広告にはたくさんの種類があり、その代表的なものにバナー広告がある。インターネットを使えば、従来のテレビや新聞等のマス広告に比べかかる広告料金は少なくて済む。バナー広告は、ホームページ上に掲載されているバナー(旗)をクリックして広告主のホームページや商品情報等へジャンプするものである。
ところで、このバナー広告の形態を用いて表示する場合、端末装置画面上にある一定の場所に固定された範囲でしかバナー広告を張り付けることができない。このため、その固定された場所から離れた場合、すなわち、バナー広告以外の表示内容を閲覧しようとして画面をスクロールしたときに、表示されていたバナー広告は画面から消え、見えなくなってしまうという不都合があった。ブラウザで表示する際にフレーム分割を行い、バナー広告を常時表示することも考えられるが、広告以外の本来のコンテンツ情報を表示するスペースが狭くなるという問題が生ずる。
この問題に対しては、端末画面上に表示されるマウスポインタとは所定の間隔をおいて設定される領域に表示される広告情報を、マウスポインタの移動に追随して移動制御するか、あるいは、移動オブジェクト軌道設定部により設定された所定の軌道に沿って移動する移動オブジェクトをマウスポインタで捕らえ、クリックすることにより広告主のホームページにジャンプさせることによって、広告が画面から消えることなく、インターネット広告表示を実現するという方法が提案されている。(例えば、特許文献1を参照)。
しかしながら、このようにマウスポインタに広告情報を追従させるやり方は、ユーザの注意を引くという効果がある一方、計算機の負荷が過大となり、広告表示を目的とするWeb画面にこの方法で表示させて使用することは可能であるものの、ユーザが端末で他の業務を行っているという状況での使用には適さないという問題がある。また、複数の広告情報を表示させようとすると、マウスポインタの周辺が広告情報で煩雑になるという問題もある。さらに、広告の詳細情報を表示させる際、所定の起動に沿って移動する移動オブジェクトをマウスポインタで捕らえてクリックするのは、端末で他の作業を行っているユーザにとっては煩わしい操作となる。
特開2002−202743号公報
本発明は、上記のかかる事情に鑑みてなされたものであり、マウスポインタに追従して広告やメッセージ等の通知情報を表示する際、ユーザが他のアプリケーションソフトウェア(以下、アプリケーションという)で作業を行っている間でも、計算機に負荷を掛けずに複数の通知情報を画面上に表示させることのできる情報通知システム、情報通知方法、および、プログラムを提供することを目的とする。
上記の目的を達成するため、本発明に係わる情報通知システムは、端末装置と通信ネットワークを介して繋がり、通知情報を端末装置へ配信するサーバ装置を有する情報通知システムであって、前記サーバ装置は、通知対象に関連付けて、アイコン情報および通知情報を保存する手段と、前記アイコン情報および前記通知情報を端末装置へ送信する手段とを備え、前記端末装置は、前記サーバ装置から送られてくるアイコン情報および通知情報を取得する手段と、マウスポインタの位置を取得する手段と、前記マウスポインタ近傍の領域に前記アイコンを表示すると共に通知情報をスクロール表示する手段と、マウスポインタの反復移動の速度を検出する手段と、前記反復移動の速度をもとに表示されている通知情報を順に切り替える手段とを備えたことを特徴とする。
複数の広告をマウスの動きによって順に切り替え、また長い通知情報はスクロール表示するので、マウス周辺が広告で煩雑になるのを防止することができる。
ここで、通信対象とは、通知情報を送信する単位であって、広告の配信の場合は、ある広告主の広告すべき商品やサービスの単位を意味し、たとえば、ブランド単位でメッセージを送信する場合はそれを含む趣旨である。
通知情報とは、端末に表示すべきメッセージ情報を意味する。たとえば、広告情報や会社内の業務指令などの情報あるいは自己のリマインダとしてのスケジュール情報などが含まれる。
アイコン情報とは、アイコンそのものの他、端末装置にアイコンを表示させるためのアイコンを識別するための情報、あるいは、端末装置側でアイコン自体を保存している場合に、情報の通知に伴って該当するアイコンを選択するための情報も含む趣旨である。また、端末装置側で通知対象情報によって、アイコン表示をさせるような場合は、アイコン情報は通知対象情報である場合も含む。
反復移動の速度には、角速度も含む趣旨である。なお、速度および角速度それぞれの絶対値の一定時間の平均値が所定の範囲にあるか否かを判定し、その範囲にある場合は通知情報を切り替えたり、次に表示する通知情報がない場合は、アイコンの消去をするなどの処理をすると、ユーザの作業に支障を来たさず、切り替え等を行うことができる。
このとき、普段のユーザのマウス移動スピードを監視し、切り替え判定のための基準値を補正するようにすれば、より精度の高い処理が可能となる。
好ましくは、端末装置において、CPU等の性能情報を取得し、この性能情報によって
画面表示関連のインジケータのスクロール速度や表示形式などのパラメータを変更可能にするとよい。ここで、性能情報とは、CPUチップの種別、動作速度、主メモリの容量などの情報を意味する。また、インジケータとは、通知を受け取るとマウスの近くに表示されるスコープアイコンとメッセージの総称をいう。
なお、この性能情報によって、サーバへの通知情報の有無の問い合わせ周期を変更するようにしてもよい。これにより、性能の低い端末(計算機)は、サーバへの問い合わせ間隔を長くするなど、負荷を軽減することができる。
より好ましくは、ネットワーク負荷をサーバ側で収集し、問い合わせ間隔設定コマンドを端末装置側へ送信し、端末装置は、その問い合わせ間隔にしたがってサーバに問い合わせ(定期アクセス)をするようにするとよい。これにより、サーバは自らの負荷を制御できるため、ユーザ数が増えても対応可能となる。
また、サーバ側では、ユーザごと通知情報ごとに、通知情報が通知済みか否かを示す通知済みフラグと詳細情報(URL)へ誘導済みか否かを示す誘導済みフラグを備えるようにするとよい。
同じ通知情報を何度も送信する必要がなくなるので、計算機や通信ネットワークの負荷を軽減することができる。
なお、性能情報に替え、または、性能情報と共に、負荷情報を収集するようにしてもよい。負荷情報とは通信ネットワークの反応時間などである。
さらに、アイコンや通知情報をマウスポインタに追従して移動させる場合、マウスポインタが移動を開始してから少し時間をおいてアイコンまたは通知情報の移動を開始するようにするとよい。これにより、ユーザはマウスポインタを容易に判別できる。
また、本発明に係わる情報通知方法は、サーバから通知情報を通信ネットワーク経由で端末装置の画面上に表示させる情報通知方法であって、前記通知情報を端末装置の画面上に表示されるマウスポインタとは、所定の間隔をおいて設定する領域に、通知対象に関連付けられたアイコンを表示すると共に通知情報をスクロールして表示し、前記マウスポインタの移動に追随して移動制御することを特徴とする。
表示すべき通知対象が複数存在する場合は、一の通知対象の通知情報を表示すると共に、他の通知対象に対応するアイコンを前記一の通知対象のアイコンの近傍に縮小表示する。これにより、マウスポインタ周辺が煩雑にならずに、ユーザは通知情報の配信状況を知ることができる。
好ましくは、前記通知情報に対応する詳細情報取得先アドレス情報を画面の所定エリアに関連付けて保存し、マウスポインタで指示することによって、当該アドレスにアクセスして、詳細情報を取得して予め設定されたブラウザ上に表示されるようにするとよい。
たとえば、タスクバー上のアイコンをクリックすることによって、広告の一覧が表示され、さらに特定の広告をクリックすることによって、その詳細情報が保存されているWebサイトから情報を取得して、Webブラウザに表示させるようにする。これにより、ユーザは、興味のある広告の詳細情報を簡便な手法で入手することができる。
ここで、「詳細情報取得先アドレス情報」とは、アドレス自体の他、アドレスと関連付けられた情報、たとえば、マウスポインタ付近に表示される通知情報の全部または一部などを含む趣旨である。
また、本発明に係わるプログラムは、端末装置上で動作するプログラムであって、
サーバからアイコン情報と通知情報を取得する処理と、マウスポインタの位置を取得する処理と、前記マウスポインタ近傍の領域にアイコンを表示すると共に通知情報をスクロール表示する処理と、マウスポインタの反復移動の速度を検出する処理と、前記反復移動の速度をもとに表示されている通知情報を順に切り替える処理とをコンピュータに実行させることを特徴とする
なお、本発明は、広告情報のみならず、たとえば、会社内において、従業員へ情報を通知するためのしくみとして活用することも可能である。
本発明によれば、マウスポインタに追従して広告等の通知メッセージを表示する際、ユーザが他のアプリケーションで作業を行っている間でも、計算機に負荷を掛けずに複数の通知メッセージを画面上に表示させることが可能となる。また、通知メッセージを切り替える際にマウスを振るだけで、切り替えることができ、煩わしい操作やマウスポインタを遠くへ移動させて操作をする必要がなく、ユーザの作業の効率低下を抑制することができる。
以下、本発明の実施の形態を説明する。図1は、情報通知システム1、および、通信ネットワークを介して繋がるエンドユーザ端末2、サービス業者(サービス管理者)端末7、および、企業ユーザ端末8の装置構成図である。情報通知システム(以下、Seelサーバまたはサーバマシン)1は、複数の企業ユーザ(広告主)の広告情報をユーザ端末へ配信する広告情報提供サービスを行う業者(以下、サービス業者という)のサーバとして構成される。ここで、情報通知システム1は、インターネット等の通信ネットワーク3を介してエンドユーザ端末(以下、クライアントマシン)2と繋がっている。また、LAN等の構内ネットワーク5を介してファイアウォール6と繋がっている。ファイアウォール6の先は、通信ネットワーク4を介してサービス業者端末7あるいは企業ユーザ端末8と繋がっている。なお、通信ネットワーク3と通信ネットワーク4は、物理的に同じネットワークを共有する場合もある。通信ネットワーク4は、必要によりSSL通信を行う。
なお、企業ユーザは、図示しない、一般のWebサーバに各企業の詳細な広告情報を掲載しているものとする。
以上の構成において、広告情報提供サービスの処理の流れを図2を用いて説明する。
まず、広告主である企業ユーザは、サービス事業者に広告表示サービスの利用の申し込みを行う(S101)。そして、サービス事業者の管理者は、サービス業者端末7を介して情報通知システム1にアカウントを作成して(S102)、そのアカウント情報を広告主に通知する(S103)。そして、その広告主のサーバ(一般のWebサーバ)に、クライアントマシン用のインストールソフトウェア(Seelインストーラ)を設置する(S104)。
一方、広告情報の提供を受けるエンドユーザは、Webサーバにアクセスして、Seelインストーラをクライアントマシンにダウンロードしてインストールを実行する(S105)。通常は、クライアントマシンが立ち上がったときに、インストールされた広告表示用プログラム(Seelプログラム)が起動されるように設定される。
そして、エンドユーザが、クライアントマシンを立ち上げるとSeelプログラムが起動され(S106)、Seelプログラムから定期的にSeelサーバへアクセスして、新たに通知すべき広告情報の有無を検索する(S107、S109)。新たに通知すべき広告情報がない場合は、通知なしのレスポンスが返信される(S108、S110)。
企業ユーザが広告情報などの通知内容を登録した後(S111)、クライアントマシンのSeelプログラムがSeelサーバにアクセスすると(S112)、Seelサーバ内の通知済みフラグがONになり(S113)、通知ありのメッセージ情報がクライアントマシンに送られる(S114)。ここで、通知済みフラグは、各通知についてサーバが各エンドユーザに対して一度でもその通知を送信したことを表すものである。初期状態はOFFである。このフラグにより、以降、そのユーザに対して同一の通知を行わないようにすることができる。その後は、インジケータ(通知されたメッセージ情報)が消去されない限り、Seelプログラムからの定期アクセスに対して、Seelサーバからは通知なしのメッセージが返送される。
ステップS114の後、エンドユーザがインジケータを消去する(S115)。その後、Seelサーバにおいて新たな通知が配信期間に入った場合は、次のSeelプログラムからの定期アクセスに対して(S116)、Seelサーバ内の通知済みフラグがONになり(S117)、Seelサーバからは通知ありのレスポンスが返送される(S118)。
クライアントマシンのスコープ定義ファイルに保存されている更新周期でこのステップは繰り返される(S119〜S122)。
そして、エンドユーザがクライアントマシンのトレイアイコンをクリックして(S1123)、ブラウザを開くと(S124)、Seelサーバ上の誘導済みフラグがONになり(S125)、誘導先URL(Universal Resource Locator)がクライアントマシンに送られる(S126)。そして、誘導先URLへの転送(ページの切り替え)が行われる。(S127)。
ここで、誘導済みフラグとは、通知を受けたエンドユーザがインジケータを見てトレイアイコンをクリックして誘導先のサイトを閲覧したことを表すものである。初期状態はOFFである。このフラグは、通知に対してエンドユーザが閲覧したかどうか(興味を持ったかどうか)のフィードバック率等の集計データとして使用することができる。
特に、ユーザ登録情報とパソコンの起動時刻等の生活(行動)情報との組み合わせでユーザをパターン分類し、夫々のユーザの誘導済みフラグの状態との相関を演算することにより、CRM(Customer Relationship Management)のしくみとして活用することも可能である。この場合、ユーザ登録情報は、年齢、性別、郵便番号程度にしておき、プライベート情報を収集しなくても相当な効果が期待できる。
次に、上記のステップS114で、広告情報の通知があったときの、クライアントマシンでの表示例について図4を用いて説明する。
唯一の通知対象(スコープ)に対して、唯一の通知が届いた場合の画面表示は、図4(a)のようになる。この図のように、メッセージが長い場合は、メッセージの一部が切り抜かれスクロールして全文表示されるようになっている。
また、唯一のスコープに対して一度に複数の通知が届いた場合の画面表示は図4(b)のようになる。一定数の通知までが連なって表示され、一定数を超えると最後に「続きがあります」と表示され、以降のメッセージは省略される。なお、スコープとは、企業ユーザ等が展開するブランドの名義で通知の配信等を行う範囲の単位を意味する。
一度に複数のスコープに対して通知が届いた場合の画面表示は図4(c)のようになる。最前面のスコープについての通知は通常通り表示されるが、それ以降のスコープについては縮小化されたアイコン(メッセージの上に表示されているアイコン)だけが連なって表示され、待機状態の通知があることをユーザに示す。
待機状態の通知がある場合に、マウスを一定の範囲の速さで振ることで最前面のスコープに関する通知が消去されると、待機状態にあったスコープ、すなわち、図4(c)で縮小化されたアイコンで表示されていたスコープが一つ繰り上げられ、新たに最前面となったスコープの通知が表示される。(図4(d)参照)。
一方、タスクトレイの表示については、何も通知が届いていない状態では、図5(a)右端に例示するアイコンが表示されている。ただし、これはコンフィギュレーション(以下、コンフィグという)によって消しておくことも可能である。
通知が届くと、図5(a)右端のアイコンと図5(b)右端のアイコンに示すように、アイコンが点滅表示される。最前面のスコープに唯一の通知が届いているとき、このアイコンを左クリックすると、NOTIFYコマンドで指定されたアプリケーション(標準ではOS標準のブラウザ)により、通知に関連付けられたURLが開かれる。同時に、それまで表示されていた通知は消去される。
また、最前面のスコープに複数の通知が届いているとき、アイコンを左クリックすると図5(c)のようなメニューが表示される。セパレータ(「すべて閉じる(X)」の下のライン)の下側にあるメニュー項目として、最前面のスコープに届いているすべての通知メッセージがリストアップされている。これらのうち、一つを選択すると、NOTIFYコマンドで指定されたアプリケーションより、通知に関連付けられたURLが開かれる。同時にそれまで表示されていた通知は消去される。上部の「すべて閉じる」を選択した場合は、すべての通知が消去される。なお、複数のスコープに通知が届いているときに限り、「1グループ閉じる」という機能を設けるようにしてもよい。
通知が届いているとき、アイコンを右クリックすると図5(d)のようなメニューが表示される。最下部には通知が届いているすべてのスコープ名がリストアップされており、これらのサブメニューとしてそのスコープに届いているすべての通知メッセージがリストアップされるようになっている。これらのうち一つを選択すると、NOTIFYコマンドで指定されたアプリケーション(標準ではOS標準のブラウザ)により、通知に関連付けられたURLが開かれる。同時に、表示されていた通知は消去される。
中央部に「1グループ閉じる」という表示を行い、これを選択した場合は最前面のスコープのみが消去され、「すべて閉じる」を選択した場合は、すべての通知が消去されるようになっている。
上部の「終了」を選択すると、本当に終了するかを訊ねる簡単なダイアログが表示され、そこでOKするとOSの終了を待たずして即座にアプリケーションは終了する。「詳細設定」はコンフィグダイアログを開く。「履歴を表示」は、消去してしまったものも含めて今までに届いた通知を閲覧するためのエンドユーザ向けWeb管理画面を開く。
以下に上述の広告表示を実現するため、情報通知システム1およびクライアントマシン2の動作を図3を用いて説明する。図3は、クライアントマシン2、および、クライアントマシン2と通信ネットワーク3を介して繋がる情報通知システム1の機能ブロック図である。
この図において、情報通知システム1は、ユーザに関する基本情報の登録処理や広告の配信処理を実行するユーザ管理・配信処理部11、および、広告主や広告、ユーザおよび配信処理に関する情報を記憶する記憶部12を有している。なお、図示しないが、キーボードなどの入力部やディスプレイやプリンタなどの出力部、および、通信ネットワーク3と接続するためのインタフェースとなる通信部を備えている。ユーザ管理・配信処理部11は、中央演算処理装置(CPU)上で動作するソフトウェアで実現され、記憶部12は、メモリやハードディスクなどの記憶媒体で実現される。
さらに、ユーザ管理・配信処理部11は、広告主に関する情報や広告対象(通知対象)ごとに広告情報や詳細情報の取得先アドレス(URL)を登録する企業ユーザ管理手段(機能)111、広告情報の配信管理を行う配信管理手段(機能)112、広告の配信を受けるエンドユーザ(以下、単にユーザという)に関する情報を登録するエンドユーザ管理手段(機能)113、および、クライアントマシン2と通信を行いクライアントマシンからの問い合わせに対して応答する通知検索・コマンド返送手段(機能)114を有している。
また、クライアントマシン(端末装置)2は、広告情報の取得指令やマウスの速度演算等を行う制御部21、情報通知システム1へ広告情報の有無の問い合わせや取得要求を送信する監視部22、および、マウスに追従させて広告情報の表示出力を行う表示部23を備えている。
この制御部21、監視部22、表示部23は、中央演算処理装置(CPU)上で動作するソフトウェアで実現される。また、図示しないマウスやキーボード等の入力部やディスプレイなどの表示部を備えている。
なお、制御部21は、監視開始手段(機能)211、マウスの動きを検出するためのマウストラッキングスレッドループ212、マウス速度・角速度等演算手段(機能)213を有している。
監視部22は、監視スレッドループ221、情報通知システム1や他のWebサーバと通信を行うための通信手段(機能)222、および、NOTIFYコマンド実行手段(機能)223を有している。
さらに、表示部23は、通信登録メッセージ処理手段(機能)231、インジケータ登録手段(機能)232、スコープアイコン順序更新手段(機能)233、インジケータ順序更新手段(機能)234、マウス座標更新メッセージ処理手段(機能)235、マウス反復運動検出手段(機能)236、(前面)スコープアイコン消去手段(機能)237、スコープアイコン座標更新手段(機能)238、インジケータ座標更新手段(機能)239、スクロール量更新手段(機能)240、および、図示しないタスクトレイアイコン処理手段(機能)241と通知リンクサイト表示手段(機能)242を有している。
<広告情報登録処理>
以上の構成において、まず、情報通知システム1の企業ユーザ管理手段111によって、通知すべきメッセージなどの情報が登録される。この情報は、企業ユーザ端末8から通信ネットワーク4を経由して情報通知システム1へ送られてくる。
図6は、広告情報単位に登録されるスコープテーブルの一例である。広告情報ごとに識別情報(スコープID)がとられ、広告記号(スコープ名)、広告名(キャプション)、有効フラグ、削除フラグ、更新日、登録日が登録されている。
ここで、スコープとは、広告主が展開するひとつの情報配信空間(たとえば、ブランド)を意味する。スコープにはそのスコープを特定するための機械認識用の英数字列を付し、これを「スコープ名」と呼ぶ。また、人間が読む際に分かりやすく付けた名前を「スコープキャプション」(または、単に「キャプション」)と呼び、スコープIDに関係付けられたこれら一連の情報をスコープ情報と呼ぶ。
有効フラグは、そのスコープ情報が登録され、機能開始状態になったときにセットされ、削除フラグは、機能停止状態になったときにセットされる。すなわち、有効フラグは、企業ユーザに対する使用の許可状態を意味し、削除フラグは、そのスコープ情報の存在そのものを意味する。たとえば、削除フラグがONのときは、その企業ユーザは管理画面に表示されない。削除フラグ、有効フラグが共にOFFのときは、契約期間外の場合などが該当する。
また、このスコープ情報に対応して、通知テーブルが設けられている。図7は、通知テーブルの一例である。ここで、スコープIDごとに通知ID、アプリケーション情報、詳細情報の取得先であるURL、表示の際の文字色、縁取り色、クライアントマシンに表示されるべきメッセージ情報、広告開始時期、広告終了時期、削除フラグ、登録日の情報などが保存されている。
ここで、アプリケーションとは、URLをもとに取得した詳細情報を表示するときに立ち上げるべきブラウザの識別情報(ID)を意味する。
<ユーザ情報登録処理>
次に、情報通知システム1のエンドユーザ情報の登録処理について説明する。
エンドユーザ管理手段113は、ユーザからユーザ情報の送信があると、送られてきたユーザ情報をユーザテーブルに登録する。図8は、ユーザテーブルの一例である。ここで、ユーザテーブルは、ユーザ識別情報(ユーザID)ごとに年齢、性別等のユーザ属性情報、使用OSやCPUの種類、CPU速度などの性能情報、通信ネットワークの反応時間などの負荷情報などが保存されている。なお、削除フラグは、ユーザが脱退したときなどサービスを停止したときにセットされる。
また、ユーザが情報の提供を希望する広告対象(スコープ)ごとに、ユーザIDとスコープIDが対応付けられてユーザ契約テーブルに保存される。図9は、ユーザ契約テーブルの一例である。ここで、契約フラグは、ユーザと広告主との間で広告配信の契約成立時にセットされ、契約解除時にリセットされる。
次にクライアントマシンの動作を図3および図11から図28のフローチャートを用いて説明する。
なお、クライアントマシンには、広告表示用プログラム(Seelプログラム)がインストールされているとする。このSeelプログラムは、情報提供システム1または広告主である企業のサーバからダウンロードできるものである。
<広告情報取得処理>
まず、クライアントマシンが立ち上がることによって、監視開始手段211が起動する。監視手段211は、起動されると、設定ファイル・レジストリから各種パラメータを取得する(S201)。この設定ファイルおよびレジストリの例を図29から図31に示す。図29のグローバル設定ファイルは、システムの動作を規定するものである。また、図30のレジストリには、ユーザIDが格納されている。図31のスコープ定義ファイルには、サーバとの通信のための情報が格納されている。各エンドユーザは、公開されているスコープのうち好みのものを選択して、設定ファイルのインストールを行う。これにより、ユーザは、設定ファイルにインストールされたスコープから通知を受けることができる。
ステップS201の後、マウストラッキングスレッドループを開始する(S202)。これにより、マウスの位置や速度等のデータが収集できる。
スコープ定義ディレクトリ内のディレクトリリストにアクセスして、ディレクトリリストにあるディレクトリ名を抽出する(S204)。そして、ディレクトリ名(dir)を指定して、スコープオブジェクトを作成する(S205)。なお、スコープオブジェクトとは、スコープごとにスコープ名やキャプションなどの表示用データ、更新確認間隔、タイムアウト時間などの通信データなどを含んだクラスオブジェクトである。そして、スコープオブジェクトの監視スレッドループを開始する(S206)。これをディレクトリリストの全ディレクトリについて繰り返す(S207)。これにより、スコープ名が与えられたディレクトリにあるスコープ設定ファイルが全て読み込まれ、各スコープに一つずつの監視スレッドループが起動される。
次に監視スレッドループについて説明する。監視スレッドループは、起動されると、まず、スレッドの優先度を低く設定して(S301)、スコープ設定ファイルで定められている起動遅延時間分だけ待機する(S302)。
なお、ステップS301の処理によりサーバとの通信時だけスリープ時に比べ負荷が高くなるという現象がなくなり、安定した動作となる。また、ステップS302の処理により、他のアプリケーションの立ち上げを優先させることができる。
そして、スレッド続行フラグがONになっているものについてSOPコマンド取得ループを実行する(S303)。次に、インターネット接続に成功したか否かを判定し(S304)、成功した場合には、通信手段222を起動する(S305)。そして、再取得遅延時間分だけ待機して(S306)、スレッド続行フラグがONになっているものについて、ステップS303からステップS308を繰り返す。一方、ステップS304でインターネット接続に成功しなかった場合は、再試行遅延時間分だけ待機して(S307)、次のループを実行する(S308)。
次に通信手段222の処理を図13を用いて説明する。通信手段222は起動されると、まず、ユーザID、スコープ名、ローカル時刻等の情報をパラメータとしてサーバスクリプトにアクセスする(S401)。
一方、サーバ(情報通知システム)側の通知検索・コマンド返送手段114は、この情報を受信すると通知テーブルを参照して、ユーザID、スコープ名から配信すべきメッセージを検索する(S501)。そして、該当するユーザが見つからない場合は、ユーザIDを発行して、ID設定用コマンドと共に返送する(S503)。次に、配信すべきメッセージが見つかったか否かを判定して(S504)、配信すべきメッセージが見つかった場合はメッセージアクセス用コマンドを返却して(S505)、アクセス情報を記録して終了する(S506)。アクセス情報の記録は、具体的には、図10に示す通知状態テーブルで、ユーザIDごとにスコープIDの通知済みフラグをセットすることにより行う。なお、通知状態テーブルの誘導済みフラグは、ユーザがトレイアイコンをクリックして詳細情報を要求したとき、誘導先URLの通知の際にセットされる。
端末側では、ステップS401で、サーバへのアクセスの後、サーバからレスポンスを取得すると(S402)、レスポンスが空か否かを判定して(S403)、空でなければ、レスポンスを行ごとに分解して(S404)、コマンド実行ループを実行する
(S505)。コマンド実行ループでは、分解された各行(line)をさらにトークンに分解して(S406)、最初のトークンからコマンドの判別を行う(S407)。そして、トークンによって指示されたNOTIFYコマンド実行手段223、または図示しないSETコマンド実行手段を起動する(S408、S409)。このコマンド実行ループを分解された各行について実行する(S410)。
次にNOTIFYコマンド実行手段223の動作を図14を用いて説明する。NOTIFYコマンド実行手段223は起動されると、これに続くトークンからの通知ID、インタフェースの種類、インジケータ色、インジケータ本文を抽出する(S601)。そして、通知オブジェクト(表示すべき情報)を作成して通知登録キューに追加して(S602)、通知登録メッセージを表示部23へ送信する(S603)。
<広告情報表示処理>
次に通知登録メッセージ処理手段231の処理を説明する。通知登録メッセージ処理手段231は起動されると、通知登録キューが空でない限り以下のループを繰り返す(S701)。まず、通知登録キューから一つの通知オブジェクトを取り出す(S702)。通知オブジェクトは、情報通知システム1から送られてくる通知テーブルの情報で、所属スコープ名、通知ID、アプリケーション、文字色、縁取色、通知すべきメッセージ情報などである。
そして、登録しようとしている通知が属するスコープのアイコンが表示中か否かを判定し(S703)、表示中でなければ、スコープアイコンを作成し、描画スレッドを起動する(S704)。そして、作成したスコープアイコンをキューの最後に追加して(S705)、スコープアイコン順序更新手段233を起動する(S706)。ここで、スコープアイコンとは、スコープのブランドイメージを表すためのアイコンである。
その後、インジケータを作成し、描画スレッドを起動して(S707)、インジケータ登録手段232を起動する(S708)。
一方、ステップS703で「YES」の場合は、ステップS707以降の処理を実行する。以上のステップS701以降の通知登録ループを繰り返す(S709)。
次に、スコープアイコン順序更新手段233について説明する。スコープアイコン順序更新手段233は起動されると、まず、アイコンが表示されるべき座標を計算する(S801)。そして、そのアイコンが最前面にあるか否かを判定して(S802)、最前面にある場合は、全てのインジケータを実体化、すなわち、ウィンドウをもった画面上のオブジェクトとして表示可能な状態にして(S803)、インジケータ順序更新手段234を起動する(S804)。一方、ステップS802で「NO」の場合は、直ちに終了する。
次に、インジケータ登録手段232の処理を説明する。インジケータ登録手段232は起動されると、まず、関連付けられているスコープアイコンが最前面にあるか否かを判定する(S901)。そして、「YES」の場合は、インジケータを実体化して(S902)、インジケータ順序更新手段234を起動する(S903)。ステップS901で「NO」の場合は、直ちに終了する。
なお、インジケータ順序更新手段234は起動されると、インジケータが表示されるべき座標を計算し、その計算結果を保持する(S1001)。
次に、マウストラッキングスレッドループの処理について説明する。マウストラッキングスレッドループは起動されると、スレッド続行フラグがONになっていることを条件に以下のマウス監視ループを繰り返す(S1101)。まず、マウス速度・角速度等算出手段213を起動する(S1102)。そして、マウス座標更新メッセージをマウス座標更新メッセージ処理手段235へ送信する(S1103)。そして、所定時間、すなわち、1/(座標更新頻度数)秒間待機後(S1104)、マウス監視ループを繰り返す(S1105)。
次にマウス速度・角速度等算出手段213の処理を説明する。マウス速度・角速度等算出手段213は起動されると、まず、マウスカーソルの現在の座標と現在の時刻を取得する(S1201)。そして、現在と前回のデータをもとに座標差分と、経過時間を算出する(S1202)。続いて、移動方向と移動方向差分を求めて(S1203、S1204)、速度量と角速度量を算出する(S1205)。この速度量、角速度量をそれぞれ積分値に加算すると共に(S1206)、それぞれのキューに追加する(S1207)。
その後、速度量キューおよび角速度キューのサイズが座標更新頻度数を超えたか否かを判定して(S1208)、超えている場合は、それぞれのキューから1要素取り出し、またそれぞれの積分値から1要素分減算する(S1209)。
そして、速度量秒間平均値と角速度量秒間平均値を算出して(S1210)、移動方向を次回参照するために、現在の座標および時刻を保存する(S1211)。
次にマウス座標更新メッセージ処理手段235の処理を説明する。マウス座標更新メッセージ処理手段235は起動されると、まず、マウス反復運動検出手段236を起動する(S1301)。そして、全てのスコープアイコンについて、スコープアイコン座標更新手段238を実行する(S1302〜S1304)。
次にマウス反復運動検出手段236の処理を説明する。マウス反復運動検出手段236は起動されると、まず、速度量秒間平均値に速度感度係数を乗じて速度評価値(v)を算出する。同様に、角速度量秒間平均値に角速度感度係数を乗じて角速度評価値(r)を算出する(S1401)。そして、これらの評価値が所定の条件を満たしているか否かを判定して(S1402)、「YES」の場合は、最前面のものについて、スコープアイコン消去手段237を実行する(S1403)。
次に、スコープアイコン消去手段237の処理を説明する。スコープアイコン消去手段237は起動されると、まず、当該スコープアイコンを破棄し、キューから取り除く(S1501)。そして、キューにスコープアイコンが残っているか否かを判定して(S1502)、残っている場合は、全てのスコープアイコンについて、スコープアイコン順序更新手段233を実行する(S1503〜S1505)。
そして、最前面のスコープアイコンが別のものになった場合、それに付随するインジケータを全て実体化する(S1506)。なお、ステップS1502で「NO」のときは、直ちに終了する。
次にスコープアイコン座標更新手段238の処理を説明する。スコープアイコン座標更新手段238は起動されると、まず、パラメータに渡された基準点から一定のオフセットを加えた座標を目的の座標として算出する(S1601)。そして、現在の座標と目的の座標とを(1:遅延係数)に内分する座標を新しい座標として算出して(S1602)、新しい座標にアイコンを移動し、可視化する(S1603)。その後、そのアイコンが最前面にあるか否かを判定して(S1604)、最前面にある場合は、全てのインジケータについて、インジケータ座標更新手段239を実行する(S1605〜S1607)。
次にインジケータ座標更新手段239の処理を説明する。インジケータ座標更新手段239は起動されると、まず、パラメータに渡された基準点から一定のオフセットを加えた座標を目的の座標として算出する(S1701)。そして、現在の座標と目的の座標とを(1:遅延係数)に内分する座標を新しい座標として算出して(S1702)、新しい座標にインジケータを移動し可視化する(S1703)。
その後、スクロールが必要か否かを判定して(S1704)、スクロールが必要な場合は、次にスクロール開始ディスプレイ時間が経過したか否かを判定して(S1705)、「YES」の場合は、スクロール量更新手段240を起動する(S1706)。このステップS1705の処理により、ユーザはメッセージを読み始めるまでの猶予が与えられ、負担なくメッセージを読むことができる。
スクロール量更新手段240は起動されると、スクロール量を一定値増加し、スクロール幅の剰余をとり(S1801)、スクロール量を表示内容に反映させる(S1802)。
次にタスクトレイアイコン処理手段241の処理を説明する。タスクトレイアイコン処理手段241はユーザがタスクトレイをクリックすることにより起動される。起動されると、まず、クリックされたボタンが右か左かを判定する(S1901)。そして、右クリックの場合は、右クリックメニューを作成して・トラッキングを実行する(S1906)。左クリックの場合は、通知が表示中か否かを判定して(S1902)、表示中の場合は、次に複数の通知が表示中か否かを判定する(S1903)。そして、「YES」の場合は、最前面スコープアイコンの通知メニューを作成してトラッキングを実行する(S1905)。ステップS1903で、「NO」の場合は、通知リンクサイト表示手段242を起動する(S1904)。
通知リンクサイト表示手段242は起動されると、まず、目的のインジケータの通知IDをパラメータとして付加したサーバスクリプトのURLを開く。このとき、その通知に関連付けられたアプリケーションで開く(S2001)。そして、当該インジケータを破棄し、それが属していたスコープアイコンを持つリストから取り除く(S2002)。
その後、全てのインジケータについて、インジケータ順序更新手段234を実行する(S2003〜S2005)。そして、リストが空になったか否かを判定して(S2006)、空の場合は、スコープアイコン消去手段237を実行する(S2007)。
以上の処理の結果、図32(b)に示すように、マウスを所定の速度で反復移動させることにより、通知メッセージの切り替え、および、消去を行うことができる。このときの、画面上のマウスポインタの動きとしては、図32(a)に示すように現在位置を軸に僅かな範囲で動くのみである。このため、ユーザは、通知メッセージの切り替え等の操作のために大きくマウスを動かす必要がなく、他の業務に支障なく通知メッセージの確認および切り替えや消去等の操作を行うことができる。たとえば、図32(a)のAの送信ボタンを押すつもりであったユーザがわざわざ画面隅のBの位置にある切替用のアイコンをクリックしようとすると、送信ボタンから目を離すことになり作業効率が低下するが、その場でマウスを所定範囲の速度で反復移動することによってメッセージの切替やアイコンの消去を行うことができるため、作業の進行を著しく妨げるようなことがない。
以上の処理によって、ユーザが作業を行っている端末2のマウスポインタ近傍へ広告等の情報通知を行うことができ、その情報は、マウスの操作によって、簡単に切替や消去を行うことができ、さらに、ユーザはタスクバーのアイコンをクリックすることによって詳細情報を取得することができる。
ここで、端末2に表示されるメッセージとサーバ1の種々のテーブルのデータとの関連を説明する。
図33は、図4(a)のメッセージが表示されるときの、サーバ1のスコープテーブル、通知テーブル、通知状態テーブルのデータ例である。
通知テーブルのメッセージ情報が文字色、縁取色などの表示形式データによって設定された形式で端末上に表示される。なお、メッセージの先頭に表示されているアイコンは、端末2にコンフィグ時に設定されているスコープIDに関連付けされたアイコン表示用データに基づいて、サーバから送られてくるスコープIDからこのアイコン表示用データを抽出して表示される。
図34は、図4(b)のメッセージが表示されるときの、サーバ1のスコープテーブル、通知テーブル、通知状態テーブルのデータ例である。
一つのスコープIDに対して、通知するメッセージが3種類あるので、メッセージごとに通知IDがとられる。また、この通知IDごとに通知済みフラグおよび誘導済みフラグが割り付けられている。
図35は、図4(c)のメッセージおよび待機用アイコンが表示されるときの例である。通知テーブルには、2種類のスコープID(5,6)があり、スコープID「5」のメッセージが表示されており、スコープID「6」は、待機状態であるため、スコープID「5」のアイコンの右上に縮小表示され、待機状態のメッセージがあることを示している。この状態で、ユーザがマウスを所定の速度で反復移動させると待機状態のメッセージが表示される。
図36は、タスクバーのアイコンをクリックして詳細情報を要求したときの通知状態テーブルのデータ例である。このクリックにより、誘導済みフラグが「0」から「1」に変わり、ユーザ端末には、誘導先URL情報が送られる。
以上、本実施の形態の基本的な機能に対して、さらに次の改善を行うことによって、より優れたシステムを実現することができる。
<クライアント側における通知タイミングの調整>
ユーザが離席しているときに通知を表示しても気付いてもらえる可能性は低い。また、本人のいないところで表示されている通知を他人に覗かれる状態にしておくのも望ましいとはいえない。このため、ユーザがマシンを使用しているタイミングを計り、離席中はそれまで通知の表示を遅延するような機能があるのが好ましい。
通常、マウスが頻繁に動いている場合は、間違いなくユーザがマシンを使用しているといえる。そうでないときでも、ユーザがWebを閲覧したりドキュメントを読んだりしている場合があり得るが、そういったときにはマウスカーソルへの注意が弱くなっている可能性が高いので、マウスが移動し始めるまで待機する。マウスが動いておらずキーボードから頻繁に入力がある場合は、ユーザはマウスから手を離している可能性が高く、邪魔になった場合はマウスを持つことを強要してしまうため、やはりこの場合も邪魔にならないよう待機する。
したがって、マウスが頻繁に動いているときのみに、タイミングよく通知情報を表示するのが最善といえる。ただし、あまり激しい動きをしているときは通知そのものが読みづらく、また「マウスを振った」と判断されて表示されるや否や消去されてしまいかねないので、ある程度ゆっくりした動きが検出されたときに限定するのがよい。
具体的には、マウストラッキングスレッドが繰り返し算出しているマウス速度量積分値を参考にする。「マシンが使用されている」とみなす上限値(激しい動きを無視するための値)、下限値(光学マウスでは物理的に静止していてもカーソルがわずかに動く場合があるので、これを無視するための値)を設定し、この範囲にマウス速度量積分値が入っている間は通知を受け取り次第表示する。上限値・下限値はコンフィグできるようにするとなお良い。
通知を受け取ったときにこの範囲から外れている場合は、この範囲に入るまで通知の表示を遅延させる。通知を受け取るのは専用のスレッドなので、単に条件を満たすまで短い周期でスリープしながらループしておればよいことになる。
<ホットキー機能>
ユーザの要求は、基本的にはマウスの振りとタスクトレイアイコンのメニュー選択によって伝えられるが、慣れたユーザ向けにはキーボード操作でもこれを行えるようにすると良い。実際にどのキーがどの機能に割り当てられるかはコンフィグできるようにする。割り当てられる機能として以下のようなものが考えられる。
・最前面スコープアイコンの最上位の通知に関する情報にアクセス
・最前面スコープアイコンとそれに伴う通知を消去
・スコープアイコンと通知をすべて消去
・履歴を表示
<履歴機能>
タスクトレイアイコンのメニューからいつでも履歴一覧を表示可能にする。履歴一覧には、これまで届けられた通知の一覧が表示され、そこから直接関連付けられた情報にアクセスできる(期限の切れた通知は除く)。
<予約機能>
監視スレッドの更新間隔は数時間〜1日程度を要する。しかし、メッセージ配信のリアルタイム性が要求される場合、例えば、クリスマスの夜に通知を表示し専用ブラウザが起動して欲しい場合などには、ただ再更新に頼っているだけでは機を逸してしまうことになる。
このため、予約という概念を導入するのが効果的である。具体的には、事前に監視アプリケーションからの更新確認に対しサーバスクリプトが「○○日の××時に通知を表示せよ」というコマンドを返し、それをレジストリに記憶しておくことで、指定された時刻に通知表示を行う。
予約の時刻は複数登録でき、また各予約には有効期間が設けられる。起動時刻にクライアントマシンが起動されておらず、その後有効期間内にクライアントマシンが起動されない場合は、その予約は無視される。また、無視された場合はその事実を次回の更新時にサーバスクリプトへ通達する。これにより、メッセージを受け取り損ねたユーザは再配信の機会を得ることができる。
しかしながら、ここで問題となるのが、クライアントマシンの時計がずれていると正しい時刻に表示されない可能性があるということである。また、海外での利用者の存在も考慮して、時差を吸収しなければならない。そこで、監視スレッドが定期的にサーバに送信しているクライアントマシンのローカル時刻とGMTを考慮して、サーバスクリプト側で最適な予約時刻を算出する。
予約で多数のユーザに同一の時刻を設定すると、関連付けられたURLへのHTTPアクセスが(最大で)設定したユーザ数の分だけ同時に起こることになる。これはサーバに大きな負荷がかかり非常に危険なので、サーバ側で予約設定時刻をある程度シャッフルして時間差を設ける。効果的なのは、有効期間が重複しないいくつかのグループに分けることである。例えば、年齢によってマシンを起動している時刻に特定の傾向がある場合、それを見越した上で19時代、20時代、21時代にのみ起動可能とすることで、アクセスを分散することができる。メッセージを受け取ることができなかったユーザの数が多ければ、翌日に同じ予約を入れる。ユーザが残り少なくなったらグループを減らし、有効期間を伸ばして行く。このような手順により、理想的な時間帯での配信が可能となる。
予約による集中アクセスを回避するため、関連付けられたURLで閲覧できる予定のコンテンツをあらかじめダウンロードし、先読みしておくという手法が考えられる。実際の時刻が来たら通知を表示し、タスクトレイアイコンがクリックされると先読みキャッシュにあるコンテンツを表示するようブラウザを起動して、コンテンツを表示する。
これにより、アクセスを集中させることなく同一の時刻にメッセージを配信したかのように見せることができる。ただし、アンケートフォームなど双方向の通信を要するページを含む場合、その部分だけはサーバへのアクセスを行うようにする。
<OS再インストール時のユーザIDの復元方法>
ユーザがOSを再インストールした場合、レジストリに保存されていたユーザIDは取得できなくなり、新しいユーザとして再登録しなければならなくなる。これを避けるため、クライアントマシン上で動作する監視アプリケーションは、NIC(ネットワークインタフェース)のMACアドレスを取得してサーバに送信することで、ユーザIDの自動的な再取得が可能となる。
監視アプリケーションの開始時にユーザIDをレジストリから正しく取得できた場合、NICのMACアドレスをユーザIDとともにサーバに送信する。サーバスクリプトは当該ユーザのNICのMACアドレスを情報通知システムのユーザテーブルに保存する。
ユーザIDが取得できなかった場合は、NICのMACアドレスのみをサーバに送信する。データベースからこのMACアドレスを検索し、ユーザが見つかればそのユーザIDを用いるようクライアントマシンにSetコマンドを返却する。見つからなければ、新しいユーザとして登録するため登録用のインタフェースを表示するようWelcomeコマンドを返却する。
<起動・終了時刻の集計機能>
クライアントマシン上で動作するSeelプログラム(オブザーバ)は起動・終了の度にその時刻を記録し、サーバに知らせる。しかしこれをすべてサーバに保存しているとサーバの負荷が過大となる。このため、曜日・時刻で見た起動・終了のタイミングに限定する。これは、1週間を周期とし、0か1の振幅を持つ波形として表される。この波形の平均の形を作り、そのユーザの「平均的な1週間」を算出し保存する。
これにより、単純に波形の平均を採ることで、「PCを起動している可能性」の時間的確率関数を得る。1週間を10分単位で分割し、時間方向へ6×24×7=1008の値を持つ。各値は整数で0〜100%とすれば十分であり、1バイトで表現される。したがって、1人のユーザにつき1008バイト=約1Kバイト用意すれば、10分単位での1週間の生活ぶりが分かる。
より正確な波形を求めるため、以下の例のように値のアンチエイリアシングを行うようにしてもよい。
例:
ある週の月曜日20:43〜21:15まで起動していた場合、その週の計測値は
・月曜20時40分代の起動率は(10-3)/10 = 70%
・月曜20時50分代〜21時00分代の起動率は100%
・月曜21時10分代の起動率は5/10 = 50%
とする。
波形テーブルには常にこれまで計測されてきた起動確率を保持している。計測開始日時と現在時刻から、各タイムスパンが何週間分の計測値を平均したものかがわかるので、以下の式により新しい平均値を更新することができる。
<今週までの平均値> = ( <先週までの平均値> × <経過した週数>
+ <今週の計測値> ) ÷ (<経過した週数> + 1)
ここで、<経過した週数>に当てはめる値をある一定の値以下に制限することで、古い値を排除していくことができる。
たとえば、10週目まで平均80%、11週目以降はずっと0%が続いたとする。普通に計算すれば、n週目の値は
(80×10)÷ n
となり、経過週数に反比例して減衰していく。これが1%まで減衰するのはn=800週目のことである。すなわち、80%の確率で起動していたのは最初の10週間だけであるにもかかわらず、15年も経たないと1%まで減衰しないことを意味する。
しかしここで週数を4以下に限定すると、n>=10なるn週目の値P(n)は、
P(n) = P(n-1) * 4 / 5
という式で求められるため、指数関数的に変化していくことがわかる。この漸化式を解くと、P(10)=80であるから
P(n) = 80 * (4/5)^(n-10)
P(n)<=1となるのは、以下の計算により30週目となる。
n-10 >= log(4/5, 1/80)
n >= 29.6
最初の10週間=2ヶ月強に渡り80%であったことが、(その後5ヶ月弱にわたり0%が続いて)約7ヶ月目で1%にまで減衰することになり、週数を制限しない場合に比べれば感覚的に妥当になったといえる。もちろん、限定する週数を変更すればこの変化の速さは調節可能である。
なお、直近のある一定の期間のみにわたる平均値を算出するには、少なくともその期間分の計測値をすべて保存しておかなければならないという問題が考えられる。
<マウスポインタ(マウスカーソル)へのアイコン、メッセージの追従調整機能>
ブランドアイコンとメッセージはマウスカーソルにやや遅れて追従させる。以下はその手法である。
60分の1秒ごとに以下の処理を行う。
1. マウスカーソルの座標を取得する。
2. すべてのインジケータについて以下の処理を実行する。
2-a. まずインジケータが定位すべき絶対座標を算出する。。これには、コンフィグされたレイアウトによって定まる、マウスカーソルからの距離を用いる。
2-b. 現在のインジケータの座標と、上記2-aで求めた座標とを 1 : nDullnessに内分する座標を算出し、それをインジケータの新しい座標として更新する。nDullnessの値は0〜4程度の整数で、コンフィグ可能である。
内分点の座標が変化しなくなった場合は、上記2-aで求めた座標とする。
これにより、マウスカーソルを移動させたときに、メッセージやアイコンと一体化して、マウスカーソルの位置が把握しづらくなるという弊害を回避することができる。
<インジケータ消去機能の目的と実現方法の詳細>
ユーザが広告を消そうと思ったとき、ユーザに「画面右下に表示されたウィンドウの×ボタンをクリックする」などの作業をさせる一般的なポップアップ広告は、前述の「視線を注視している領域から引き離し、また元の位置を探して戻す」というユーザにストレスを与えるような動作を強いることになる。しかもこのとき、視線にあわせてマウスカーソルも遠くへ移動しなければならない。Seelプログラムは、マウスカーソルを左右に振ることによって、マウスカーソルの位置(ひいてはテーブル上での右手の位置)をほとんど遠くへ動かさずに広告を消すことを可能にする。
その実現方法としては、60分の1秒ごとに以下の処理を実行する。
1. マウスカーソルの座標の差分を算出する。
2. 上記1に基づき、擬似的なマウスの瞬間移動速度を算出する。
3. 上記1に基づき、擬似的なマウスの瞬間角速度を算出する。
このとき、この値の絶対値が0.5回転(180°)以下になるような回転方向となるよう、値を調整する。
4. 移動速度、角速度のそれぞれについて、その絶対値の直近1秒間の平均値を算出する。
5. 角速度の平均が一定の値以上であり、かつ移動速度と角速度が以下の不等式を満たすとき、「マウスが小刻みに方向を変えながら一定の速度以上で移動しつづけている」即ち「マウスを振っている」とみなし、インジケータを消去する。
(r > 3) and (v > 4.8 - 0.8*r) and (v > 0.1*r)
ただし
v: 移動速度の絶対値の直近1秒間の平均 [Mpixel/sec]
r: 角速度の絶対値の直近1秒間の平均 [round/sec]
このようにして、マウスの反復移動を高精度で検出することができる。
以上、本実施の形態によれば、マウスポインタの近傍に広告情報等の通知メッセージを表示することができ、また、複数のメッセージを通知する場合でも、マウスポインタの周辺が煩雑になるのを抑制することができる。
特に、マウスポインタ近傍の表示として、スコープアイコンと最前面のアイコンに関連する通知メッセージのスクロール表示の組み合わせにより、ユーザは効果的に通知情報を確認することができる。
さらに、通知メッセージの切り替え等の操作をマウスの動作によって行うため、通知メッセージに対する操作のためにマウスを大きく動かす必要がなく、他の業務への影響を最小限に抑えることができる。
また、情報通知システム1に通知済みフラグまたは誘導済みフラグを持たせることによって、同じ通知情報を何度も送信することをなくし、通信ネットワークの負荷およびクライアントマシンの負荷を軽減することができる。
特に、ブラウザはスクリプト言語を解釈しながら、複雑に配置されたレイヤの重なり合いを再計算、再描画する必要があるが、本実施の形態の機能構成によれば、OSが管理するウィンドウを直接作成・配置するため、ブラウザ上でウィンドウをシミュレートすることに比べ高速処理が可能となる。
なお、本実施の形態では、企業ユーザの広告情報をエンドユーザのクライアントマシンへ配信することを例に説明したが、たとえば、会社内において、従業員へ情報を通知するためのしくみとして活用することも可能である。この場合、企業ユーザ端末8は、会社内における管理者の端末となり、情報通知システム1に対して、メッセージを登録する。通常のメールシステムでは、メーラを立ち上げなければ、そのメールを確認することができず、また誰からのメールかも送信者を確認しない限りできないが、本発明によれば、ユーザである従業員は、端末上で作業を行いながら、その特定者からのメッセージをリアルタイムに確認することができる。
また、ユーザ端末2から自らのスケジュールを情報通知システム1に保存しておき、リマインダとして使用することもできる。
さらに、これら、広告情報、社内の業務指示通知、リマインダの機能を複合的に持たせることも可能である。この場合、通知情報の種別ごとに優先順位を設けるようにすると効果的である。たとえば、リマインダ通知は、広告情報よりも優先順位を高くしておけば、広告表時中でもリマインダ通知が配信されると、その通知が画面に表示されるため、業務への有効利用を図りつつ、広告情報等の収集も可能となる。
なお、本発明は、上記した実施形態に限定されず、その要旨を逸脱しない範囲で種々変形して適用可能なことは明らかである。
本実施の形態による情報通知システム、および、通信ネットワークを介して繋がる各種端末の装置構成図である。 本実施の形態による各装置間の処理およびデータの流れの説明図である。 本実施の形態による情報通知システム(サーバマシン)1とクライアントマシン2の機能ブロック図である。 図3のクライアントマシン2への通知情報の表示の説明図である。 図3のクライアントマシン2のタスクバーの詳細情報取得時の説明図である。 図3のサーバマシン1の記憶部12に保存されているスコープテーブルの説明図である。 図3のサーバマシン1の記憶部12に保存されている通知テーブルの説明図である。 図3のサーバマシン1の記憶部12に保存されているユーザテーブルの説明図である。 図3のサーバマシン1の記憶部12に保存されているユーザ契約テーブルの説明図である。 図3のサーバマシン1の記憶部12に保存されている通知状態テーブルの説明図である。 図3の監視開始手段211の処理手順を表すフローチャートである。 図3の監視スレッドループ221の処理手順を表すフローチャートである。 図3の通信手段222の処理手順を表すフローチャートである。 図3のNOTIFYコマンド実行手段223の処理手順を表すフローチャートである。 図3の通知登録メッセージ処理手段231の処理手順を表すフローチャートである。 図3のスコープアイコン順序更新手段233の処理手順を表すフローチャートである。 図3のインジケータ登録手段232の処理手順を表すフローチャートである。 図3のインジケータ順序更新手段234の処理手順を表すフローチャートである。 図3のマウストラッキングスレッドループ212の処理手順を表すフローチャートである。 図3のマウス速度・角速度等算出手段213の処理手順を表すフローチャートである。 図3のマウス座標更新メッセージ処理手段235の処理手順を表すフローチャートである。 図3のマウス反復運動検出手段236の処理手順を表すフローチャートである。 図3のスコープアイコン消去手段237の処理手順を表すフローチャートである。 図3のスコープアイコン座標更新手段238の処理手順を表すフローチャートである。 図3のインジケータ座標更新手段239の処理手順を表すフローチャートである。 図3のスクロール量更新手段240の処理手順を表すフローチャートである。 図3のクライアントマシン2のタスクトレイアイコン処理手段241の処理手順を表すフローチャートである。 図3のクライアントマシン2の通知リンクサイト表示手段242の処理手順を表すフローチャートである。 図3のクライアントマシン2に保存されているグローバル設定ファイルの説明図である。 図3のクライアントマシン2に保存されているレジストリの説明図である。 図3のクライアントマシン2に保存されているスコープ定義ファイルの説明図である。 本発明の実施の形態によるマウスの反復移動とマウスポインタの動きの説明図である。 図4(a)の表示が行われるときのサーバマシン1のテーブル設定の説明図である。 図4(b)の表示が行われるときのサーバマシン1のテーブル設定の説明図である。 図4(c)の表示が行われるときのサーバマシン1のテーブル設定の説明図である。 図5(b)でタスクバーのアイコンをクリックしたときのサーバマシン1のテーブル設定値の変化の説明図である。
符号の説明
1 情報通知システム
2 エンドユーザ端末(クライアントマシン)
3、4 通信ネットワーク
5 構内LAN
6 ファイアウォール
7 サービス業者端末
8 企業ユーザ端末
11 ユーザ管理・配信処理部
12 記憶部
21 制御部
22 監視部
23 表示部
111 企業ユーザ管理手段
112 配信管理手段
113 エンドユーザ管理手段
114 通知検索・コマンド返送手段
211 監視開始手段
212 マウストラッキングスレッドループ
213 マウス速度・角速度等算出手段
221 監視スレッドループ
222 通知手段
223 NOTIFYコマンド実行手段
231 通知登録メッセージ処理手段
232 インジケータ登録手段
233 スコープアイコン順序更新手段
234 インジケータ順序更新手段
235 マウス座標更新メッセージ処理手段
236 マウス反復運動検出手段
237 スコープアイコン消去手段
238 スコープアイコン座標更新手段
239 インジケータ座標更新手段
240 スクロール量更新手段
241 タスクトレイアイコン処理手段
242 通知リンクサイト表示手段

Claims (5)

  1. 端末装置と通信ネットワークを介して繋がり、通知情報を端末装置へ配信するサーバ装置を有する情報通知システムであって、
    前記サーバ装置は、
    通知対象に関連付けて、アイコン情報および通知情報を保存する手段と、
    前記アイコン情報および前記通知情報を端末装置へ送信する手段と、を備え、
    前記端末装置は、
    前記サーバ装置から送られてくるアイコン情報および通知情報を取得する手段と、
    マウスポインタの位置を取得する手段と、
    前記マウスポインタ近傍の領域にアイコンを表示すると共に通知情報をスクロール表示する手段と、
    マウスポインタの反復移動の速度を検出する手段と、
    前記反復移動の速度をもとに表示されている通知情報を順に切り替える手段と、
    を備えたことを特徴とする情報通知システム。
  2. サーバから通知情報を通信ネットワーク経由で端末装置の画面上に表示させる情報通知方法であって、前記通知情報を端末装置の画面上に表示されるマウスポインタとは、所定の間隔をおいて設定する領域に、通知対象に関連付けられたアイコンを表示すると共に通知情報をスクロールして表示し、前記マウスポインタの移動に追随して移動制御することを特徴とする情報通知方法。
  3. 表示すべき通知対象が複数存在する場合は、一の通知対象の通知情報を表示すると共に、他の通知対象に対応するアイコンを前記一の通知対象のアイコンの近傍に縮小表示することを特徴とする請求項2記載の情報通知方法。
  4. 前記通知情報に対応する詳細情報取得先アドレス情報を画面所定エリアに保存し、マウスポインタで指示することによって、当該アドレスにアクセスして、詳細情報を取得して予め設定されたブラウザ上に表示されることを特徴とする請求項2または3に記載の情報通知方法。
  5. 端末装置上で動作するプログラムであって、
    サーバからアイコン情報と通知情報を取得する処理と、
    マウスポインタの位置を取得する処理と、
    前記マウスポインタ近傍の領域にアイコンを表示すると共に通知情報をスクロール表示する処理と、
    マウスポインタの反復移動の速度を検出する処理と、
    前記反復移動の速度をもとに表示されている通知情報を順に切り替える処理と、
    をコンピュータに実行させるためのプログラム。
JP2003357339A 2003-10-17 2003-10-17 情報通知システム、情報通知方法、および、プログラム Expired - Fee Related JP4150967B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003357339A JP4150967B2 (ja) 2003-10-17 2003-10-17 情報通知システム、情報通知方法、および、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003357339A JP4150967B2 (ja) 2003-10-17 2003-10-17 情報通知システム、情報通知方法、および、プログラム

Publications (2)

Publication Number Publication Date
JP2005122507A true JP2005122507A (ja) 2005-05-12
JP4150967B2 JP4150967B2 (ja) 2008-09-17

Family

ID=34614254

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003357339A Expired - Fee Related JP4150967B2 (ja) 2003-10-17 2003-10-17 情報通知システム、情報通知方法、および、プログラム

Country Status (1)

Country Link
JP (1) JP4150967B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110024991A (ko) * 2009-09-03 2011-03-09 김서준 사용자 피드백을 이용하여 컨텐츠에 대한 평가 점수를 산출하기 위한 방법 및 장치
CN102752618A (zh) * 2011-04-18 2012-10-24 夏普株式会社 视差图像生成装置、显示装置及视差图像生成方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04195520A (ja) * 1990-11-28 1992-07-15 Pfu Ltd 補足メッセージ表示処理方式
JPH05232917A (ja) * 1992-02-21 1993-09-10 Toshiba Corp 画像表示装置
JPH05265683A (ja) * 1992-03-18 1993-10-15 Hitachi Ltd ウインドウ表示制御方法
JPH10247137A (ja) * 1997-03-04 1998-09-14 Sony Corp 情報閲覧装置
JP2002202743A (ja) * 2000-12-28 2002-07-19 Verylook.Com Corp インターネット広告表示方法
JP2002311873A (ja) * 2001-04-13 2002-10-25 Misako Sato インターネットでの広告表示方法
JP2002329116A (ja) * 2001-04-26 2002-11-15 Victor Co Of Japan Ltd 情報表示携帯端末システム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04195520A (ja) * 1990-11-28 1992-07-15 Pfu Ltd 補足メッセージ表示処理方式
JPH05232917A (ja) * 1992-02-21 1993-09-10 Toshiba Corp 画像表示装置
JPH05265683A (ja) * 1992-03-18 1993-10-15 Hitachi Ltd ウインドウ表示制御方法
JPH10247137A (ja) * 1997-03-04 1998-09-14 Sony Corp 情報閲覧装置
JP2002202743A (ja) * 2000-12-28 2002-07-19 Verylook.Com Corp インターネット広告表示方法
JP2002311873A (ja) * 2001-04-13 2002-10-25 Misako Sato インターネットでの広告表示方法
JP2002329116A (ja) * 2001-04-26 2002-11-15 Victor Co Of Japan Ltd 情報表示携帯端末システム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110024991A (ko) * 2009-09-03 2011-03-09 김서준 사용자 피드백을 이용하여 컨텐츠에 대한 평가 점수를 산출하기 위한 방법 및 장치
WO2011027950A1 (ko) * 2009-09-03 2011-03-10 Kim Seo-Joon 사용자 피드백을 이용하여 컨텐츠에 대한 평가 점수를 산출하기 위한 방법 및 장치
KR101659064B1 (ko) * 2009-09-03 2016-09-22 김서준 사용자 피드백을 이용하여 컨텐츠에 대한 평가 점수를 산출하기 위한 방법 및 장치
CN102752618A (zh) * 2011-04-18 2012-10-24 夏普株式会社 视差图像生成装置、显示装置及视差图像生成方法

Also Published As

Publication number Publication date
JP4150967B2 (ja) 2008-09-17

Similar Documents

Publication Publication Date Title
JP4304205B2 (ja) インターネットユーザのアクセス意図を用いたインターネット上での広告誘致および広告提供方法とそのシステム
JP6026906B2 (ja) ロケーションに基づいたコンテンツターゲット情報
AU2002301226C1 (en) Automatic Advertiser Notification for a System for Providing Place and Price Protection in a Search Result List Generated by a Computer Network Search Engine
US20170324821A1 (en) Display of Communication System Usage Statistics
JP5175939B2 (ja) 地図ベースの表示を含む地理関連検索結果のための方法及び装置
US8972895B2 (en) Actively and passively customizable navigation bars
RU2416127C2 (ru) Сетевые приборы для замены одних рекламных объявлений другими
US20080120278A1 (en) System and method for managing search results and delivering advertising and enhanced effectiveness
KR100886066B1 (ko) 디지털 콘텐츠 배신 시스템, 디지털 콘텐츠 배신 방법, 및휴대 단말기
JP2002041537A (ja) 広告提示システム
JP2009086786A (ja) 広告システム及び方法
US20130232015A1 (en) Advertisement distribution system
EP2396625A2 (en) Entity-based search results and clusters on maps
WO2009150730A1 (ja) プログラム、情報処理装置、情報処理方法、および情報管理装置
JP2006202056A (ja) 経路検索装置
US9286359B2 (en) Providing enhanced business listings with structured lists to multiple search providers from a source system
JP2007172174A (ja) 広告提示方法及び装置及びプログラム及びコンピュータ読み取り可能な記録媒体
JP2006252505A (ja) 疑似プッシュ型ウェブ広告管理システム
US20150095088A1 (en) Appointment schedulers within sponsored content items
JP5885334B2 (ja) 宣伝配信装置及びプログラム
US20160239171A1 (en) Information display apparatus, distribution apparatus, information display method, and non-transitory computer readable storage medium
JP4150967B2 (ja) 情報通知システム、情報通知方法、および、プログラム
JP6354798B2 (ja) 配信装置、配信方法及びプログラム
JP2002041737A (ja) スケジュール情報システム
JP3111977U (ja) チラシ公開サーバ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051027

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080331

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080520

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20080524

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20080526

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080618

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110711

Year of fee payment: 3

A072 Dismissal of procedure [no reply to invitation to correct request for examination]

Free format text: JAPANESE INTERMEDIATE CODE: A072

Effective date: 20081007

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140711

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees