以下、本発明の実施の形態について、図面を用いて説明する。
まず、本発明の一実施の形態に係る情報処理システムの構成について説明する。
図1は、本実施の形態に係る情報処理システム10のブロック図である。
図1に示すように、情報処理システム10は、モバイル端末20を備えている。情報処理システム10は、モバイル端末20以外にも、モバイル端末20と同様のモバイル端末を少なくとも1つ備えることが可能である。例えば、情報処理システム10に含まれるモバイル端末は、それぞれ、生徒によってノートとして利用される。
情報処理システム10は、データを管理するデータ管理システム40を備えている。データ管理システム40は、1台のコンピューターによって構成されても良いし、複数台のコンピューターによって構成されても良い。データ管理システム40は、クラウド上で動作するシステムでも良い。
情報処理システム10に含まれるモバイル端末と、データ管理システム40とは、LAN(Local Area Network)、インターネットなどのネットワーク11を介して通信可能である。
図2は、モバイル端末20のブロック図である。
図2に示すように、モバイル端末20は、種々の操作が入力される例えばボタンなどの操作デバイスである操作部21と、種々の情報を表示する例えばLCD(Liquid Crystal Display)などの表示デバイスである表示部22と、マイク23と、スピーカー24と、カメラ25と、LAN、インターネットなどのネットワーク経由で、または、ネットワークを介さずに有線または無線によって直接に、外部の装置と通信を行う通信デバイスである通信部26と、各種の情報を記憶する例えば半導体メモリー、HDD(Hard Disk Drive)などの不揮発性の記憶デバイスである記憶部27と、モバイル端末20全体を制御する制御部28とを備えている。
図3は、開いた状態でのモバイル端末20の正面図である。図4は、閉じた状態でのモバイル端末20の正面図である。
図2~図4に示すように、操作部21は、各種の操作を受け付ける複数のボタン21aを備えている。
表示部22は、操作部21の一部とともに第1のタッチパネルを構成する第1の表示部22aと、操作部21の一部とともに第2のタッチパネルを構成する第2の表示部22bとを備えている。第1の表示部22aは、例えば、液晶ディスプレー、有機ELディスプレー、プラズマディスプレーによって構成されている。第2の表示部22bは、例えば、電子ペーパーによって構成されている。なお、第2の表示部22bだけでなく第1の表示部22aも、電子ペーパーによって構成されても良い。また、第1の表示部22aおよび第2の表示部22bのサイズは、それぞれ、ノートとして利用し易いA4サイズでも良い。
モバイル端末20は、第1の表示部22aおよび第2の表示部22bを回動自在に連結するヒンジ部20aを備えている。モバイル端末20は、第1の表示部22aおよび第2の表示部22bをヒンジ部20aによって互いに回動させることによって、図3に示すように第1の表示部22aの画面および第2の表示部22bの画面が同一面上で互いに隣り合う見開き状態と、図4に示すように第1の表示部22a(図3参照。)の画面および第2の表示部22b(図3参照。)の画面が向かい合わせに閉じた閉状態とになることが可能である。
カメラ25は、モバイル端末20が見開き状態である場合にモバイル端末20の正面側を撮影するための正面カメラ25aと、モバイル端末20が見開き状態である場合にモバイル端末20の背面側を撮影するための背面カメラ25bとを備えている。
記憶部27は、各種のアプリケーションプログラムを記憶している。例えば、記憶部27は、複数のページを含むノートを作成し、作成したノートに操作部21を介して書き込みを可能にするアプリケーションプログラムであるノートアプリケーションプログラム27aと、Microsoft(登録商標) Word、Microsoft Excel(登録商標)、PDFなどのドキュメントを作成、表示および編集するためのアプリケーションプログラムであるドキュメントアプリケーションプログラム27bと、Webページを表示部22に表示するためのアプリケーションプログラムであるブラウザーアプリケーションプログラム27cと、電話機能を実現するためのアプリケーションプログラムである電話アプリケーションプログラム27dとを記憶している。なお、ノートアプリケーションプログラム27a、ドキュメントアプリケーションプログラム27b、ブラウザーアプリケーションプログラム27cおよび電話アプリケーションプログラム27dは、Webアプリケーションでも良い。
図3に示す第1の表示部22aには、ドキュメントアプリケーションプログラム27bに対応付けられたアイコン31aと、ブラウザーアプリケーションプログラム27cに対応付けられたアイコン31bと、電話アプリケーションプログラム27dに対応付けられたアイコン31cとが表示されている。図3に示す第2の表示部22bには、英語用のノートを作成する場合のノートアプリケーションプログラム27aに対応付けられたアイコン31dと、数学用のノートを作成する場合のノートアプリケーションプログラム27aに対応付けられたアイコン31eと、メモ用のノートを作成する場合のノートアプリケーションプログラム27aに対応付けられたアイコン31fとが表示されている。
記憶部27は、ブラウザーアプリケーションプログラム27cの実行内容を取得するブラウザー拡張機能用のプログラムであるブラウザー拡張機能用プログラム27eを記憶している。
制御部28は、例えば、CPU(Central Processing Unit)と、プログラムおよび各種のデータを記憶しているROM(Read Only Memory)と、制御部28のCPUの作業領域として用いられるメモリーとしてのRAM(Random Access Memory)とを備えている。制御部28のCPUは、記憶部27または制御部28のROMに記憶されているプログラムを実行する。
制御部28は、記憶部27または制御部28のROMに記憶されているプログラムを実行することによって、表示部22に表示された画面に対する入力を受け付ける入力受付手段28aと、ユーザー認証を実行するユーザー認証手段28bと、アプリケーションプログラムを実行するアプリ実行手段28cと、ノートアプリケーションプログラム27aによって第2の表示部22bに表示されたページ32(図5参照。)のプレーバックデータの記録要求をデータ管理システム40(図1参照。)に送信する記録要求手段28dと、ノートアプリケーションプログラム27aによって第2の表示部22bに表示されるページ32のプレーバックデータの取得要求をデータ管理システム40に送信する取得要求手段28eと、取得要求手段28eによって取得されたプレーバックデータを再生する再生処理手段28fとを実現する。
入力受付手段28aは、例えば、ノートアプリケーションプログラム27aによって第2の表示部22bに表示されるページ32に対して操作部21から入力される位置座標を示すポイントをページ32上に表示する。すなわち、操作部21から入力される位置座標の軌跡は、手書きデータとしてページ32に描画される。入力受付手段28aは、例えば、図3に示すアイコン31a~31fのいずれかがタッチされることによって、タッチされたアイコンに対応付けられたアプリケーションプログラムの起動操作を受け付ける。
ユーザー認証手段28bは、認証情報の入力を受け付けるための認証画面を表示部22に表示する。そして、ユーザー認証手段28bは、入力受付手段28aを介して認証画面に入力される認証情報をデータ管理システム40に送信し、データ管理システム40との間でユーザー認証を行う。例えば、データ管理システム40は、予め登録されたアカウント情報における認証情報に、ユーザー認証手段28bから送信された認証情報と一致するものが存在する場合に、認証が成功したことを示す認証成功通知をユーザー認証手段28bに送信する。ユーザー認証手段28bは、データ管理システム40から認証成功通知が送信されてくることによって、ユーザーのログインを行う。例えば、認証情報は、ユーザーIDおよびパスワードの組み合わせである。
アプリ実行手段28cは、入力受付手段28aによってアプリケーションプログラムの起動操作が受け付けられた場合、入力受付手段28aによって起動操作が受け付けられたアプリケーションプログラムを起動させる。アプリ実行手段28cは、複数のアプリケーションプログラムを並行して実行することができる。
記録要求手段28dは、第2の表示部22bに表示されたページ32に、入力受付手段28aを介して書き込まれる書き込みデータを、書き込まれたページ32のプレーバックデータとして、タイムスタンプを付加して、通信部26経由でリアルタイムにデータ管理システム40に記録要求を送信する。また、記録要求手段28dは、入力受付手段28aによってページ32への書き込みが受け付けられている場合に、アプリ実行手段28cによって実行されたドキュメントアプリケーションプログラム27b、ブラウザーアプリケーションプログラム27cおよび電話アプリケーションプログラム27dの実行内容等を、書き込まれたページ32のプレーバックデータとして、タイムスタンプを付加して、通信部26経由でリアルタイムにデータ管理システム40に記録要求を送信する。なお、タイムスタンプは、図示していない計時部で計時される現在時刻を示す情報である。また、記録要求手段28dは、マイク23によって生成された音声データや、カメラ25によって撮影された画像データなどをプレーバックデータに含めることができる。
取得要求手段28eは、記録要求手段28dによってデータ管理システム40にプレーバックデータを送信済のページ32が第2の表示部22bに表示される場合に、このページ32のプレーバックデータの取得要求を通信部26経由でデータ管理システム40に送信することによって、このプレーバックデータをデータ管理システム40から受信する。
再生処理手段28fは、取得要求手段28eによって取得されたプレーバックデータに含まれる書き込みデータおよび実行内容を、それぞれに付加されたタイムスタンプに基づいて同期して再生する。
制御部28は、ノートアプリケーションプログラム27aを実行することによってノートアプリ28gを実現する。ノートアプリ28gは、第2のタッチパネルを介して、複数のページを含む新規ノートの作成、表示および編集を受け付ける。
制御部28は、ドキュメントアプリケーションプログラム27bを実行することによってドキュメントアプリ28hを実現する。ドキュメントアプリ28hは、第1のタッチパネルを介して、教材コンテンツ等のドキュメントの作成、表示および編集を受け付ける。
制御部28は、ブラウザーアプリケーションプログラム27cを実行することによってブラウザーアプリ28iを実現する。ブラウザーアプリ28iは、通信部26を介してインターネット等から取得するWebサイトを第1の表示部22aに表示する。
制御部28は、電話アプリケーションプログラム27dを実行することによって電話アプリ28jを実現する。電話アプリ28jは、通信部26を介して他のユーザーとの音声通話を制御する。電話アプリ28jは、1対1の通話だけでなく、複数人と通話するグループ通話が可能である。
電話アプリ28jは、ノートアプリ28gと連携している。アプリ実行手段28cが電話アプリケーションプログラム27dを起動させると、電話アプリ28jは、通話先を選択するためのアドレス帳33(図5参照。)を第1の表示部22aに表示する。アプリ実行手段28cは、電話アプリケーションプログラム27dを起動させる場合、ノートアプリケーションプログラム27aも起動させる。アプリ実行手段28cがノートアプリケーションプログラム27aを起動させると、ノートアプリ28gは、書き込み可能な新規のページ32(図5参照。)を第2の表示部22bに表示する。したがって、発信者は、電話の際に、第2の表示部22bに表示されたページ32に操作部21を介してメモすることができる。
発信側のモバイル端末の第2の表示部に表示されたページ32は、通話者間で共有されるページとしてデータ管理システム40に登録され、通話先と共有される。着信側のモバイル端末は、発信側のモバイル端末の電話アプリからの着信があると、アプリ実行手段によって電話アプリケーションプログラムを起動することによって、発信者とのビデオ通話を可能にし、通話先の相手を示す画像34(図5参照。)を第1の表示部に表示する。そして、着信側のモバイル端末のアプリ実行手段はノートアプリケーションプログラムを起動することによって、通話者間で共有されるページ32をデータ管理システム40から取得し、第2の表示部に表示する。したがって、発信者と、着信者とは、モバイル端末の第2の表示部に表示されるページ32を介して書き込みを共有することができる。
なお、ノートアプリケーションプログラム27aによって第2の表示部22bに表示されたページ32への書き込みを入力受付手段28aが受け付けている場合、第2の表示部22bには、図5に示すように、マイクボタン35が表示される。マイクボタン35は、操作部21を介してタッチされる度に、ONと、OFFとが切り替わる。マイクボタン35がONである間、マイク23によって入力音声に基づく音声データが生成され、録音が行われる。通話中でない状態でマイクボタン35がONになった場合、マイク23によって生成された音声データは、記録要求手段28dによってマイク録音データとして取得される。通話中にマイクボタン35がONになった場合、マイク23によって生成された音声データは、発信録音データとして記録要求手段28dによって取得される。記録要求手段28dによって発信録音データが取得される場合、ネットワーク11を介して着信する通話先の音声データは、着信録音データとして記録要求手段28dによって取得される。
制御部28は、ブラウザー拡張機能用プログラム27eを実行することによって、ブラウザー拡張機能28kを実現する。ブラウザー拡張機能28kは、ブラウザーアプリ28iがいずれのWebサイトにアクセスしているかなど、ブラウザーアプリ28iで発生した全てのイベントを取得することができるとともに、ブラウザーアプリ28iに任意のWebサイトにアクセスさせるなど、ブラウザーアプリ28iに任意のアクションを行わせることができる。
図6は、1台のコンピューターによって構成される場合のデータ管理システム40のブロック図である。
図6に示すデータ管理システム40は、種々の操作が入力される例えばキーボード、マウスなどの操作デバイスである操作部41と、種々の情報を表示する例えばLCDなどの表示デバイスである表示部42と、LAN、インターネットなどのネットワーク経由で、または、ネットワークを介さずに有線または無線によって直接に、外部の装置と通信を行う通信デバイスである通信部43と、各種の情報を記憶する例えば半導体メモリー、HDDなどの不揮発性の記憶デバイスである記憶部44と、データ管理システム40全体を制御する制御部45とを備えている。
データ管理システム40は、複数のモバイル端末を介した通話者間でのページの書き込みを共有するために、例えば、MQTT(Message Queue Telemetry Transport)サーバーを備えても良い。MQTTサーバーは、通話毎に通話者の登録を受け付け、登録された1人の通話者がモバイル端末上で行った操作を他の通話者のモバイル端末にリアルタイムに通知して反映させることによって、通話者間でページの書き込みを共有させることができる。また、MQTTサーバーは、ページだけでなく、ドキュメントアプリケーションプログラムによるドキュメントデータや、ブラウザーアプリケーションプログラムによるWebサイトを通話者間で共有させることもできる。
記憶部44は、例えば、データベースサーバーによって構成されても良い。記憶部44は、データベース44aと、大容量記憶部44bとを備えている。
図7は、データベース44aのディレクトリー構成を示す図である。
図7に示すように、データベース44aは、「データ」、「ユーザー」、「ノート」、「ページ」のディレクトリーの順に構成された階層構造を有している。「ユーザー」は、ユーザー毎に、ユーザーID等によって識別可能に設けられている。「ノート」は、ユーザーが作成したノート毎に、ノート名等によって識別可能に設けられている。「ページ」は、ノートを構成するページ毎に、ページID等によって識別可能に設けられている。
情報処理システム10(図1参照。)に含まれるモバイル端末から送信されてくるプレーバックデータ50は、ページのデータとして「ページ」の配下に格納される。プレーバックデータ50は、マイク録音データ51、着信録音データ52、発信録音データ53、手書きデータ54、コピーアンドペーストデータ55、日付ブックマークデータ56およびアプリケーションイベント57を含んでいる。手書きデータ54およびコピーアンドペーストデータ55は、ページに描画された書き込み内容であるが、マイク録音データ51、着信録音データ52、発信録音データ53およびアプリケーションイベント57等は、ユーザーがページへの書き込みの参考にした参考情報である。つまり、データベース44aは、各ユーザーが有する各ノートのページ毎に、ページへの書き込み内容と、ページへの書き込みの参考にした参考情報とを一緒に記憶する。
図8は、プレーバックデータ50の一例を示す図である。
図8に示すように、マイク録音データ51、着信録音データ52、発信録音データ53は、wav等の音声ファイル形式で記録される。手書きデータ54は、SVG等のベクター形式で記録される。また、コピーアンドペーストデータ55は、文字や画像、リンク先のurl等を含めて記録される。日付ブックマークデータ56は、日時情報が記録される。アプリケーションイベント57は、アプリケーションの実行内容が記録される。
なお、図7では、ドキュメントデータは「ユーザー」の配下に格納されている。プレーバックデータ50にドキュメントアプリ28h(図2参照。)のアプリケーションイベント57が含まれる場合、このアプリケーションイベント57は、ドキュメントアプリ28hが表示したドキュメントデータのファイル名を含む。そのため、プレーバックデータ50にドキュメントアプリ28hのアプリケーションイベント57が含まれる場合、ドキュメントアプリ28hは、アプリケーションイベント57に含まれる、ドキュメントデータのファイル名に基づいて、表示対象のドキュメントデータをデータ管理システム40から取得して表示することができる。
大容量記憶部44bは、HDD等の大容量記憶手段であり、WAV、XML、SVG、JSON、PDF、Microsoft Word、Microsoft Excel等の各種データを記憶する。マイク録音データ51、着信録音データ52、発信録音データ53、手書きデータ54およびドキュメントデータのように、データ量の大きなデータの実体は、大容量記憶部44bに記憶される。
制御部45は、例えば、CPUと、プログラムおよび各種のデータを記憶しているROMと、制御部45のCPUの作業領域として用いられるメモリーとしてのRAMとを備えている。制御部45のCPUは、記憶部44または制御部45のROMに記憶されているプログラムを実行する。
制御部45は、記憶部44または制御部45のROMに記憶されているプログラムを実行することによって、情報処理システム10(図1参照。)に含まれるモバイル端末からネットワーク11(図1参照。)を介して送信されてきたプレーバックデータの記録要求を受け付けて、このプレーバックデータを記憶部44に記憶させる記録要求受付手段45aと、情報処理システム10に含まれるモバイル端末からネットワーク11を介して送信されてきたプレーバックデータの取得要求を受け付けて、このプレーバックデータを記憶部44において検索し、検索したプレーバックデータをネットワーク11経由でモバイル端末に返信する取得要求応答手段45bと、情報処理システム10に含まれるモバイル端末の各アプリからのリクエストに応じて各種のアプリケーション処理を行うアプリケーション処理手段45cとを実現する。記録要求受付手段45a、取得要求応答手段45bおよびアプリケーション処理手段45cは、それぞれ、複数のWebサーバーで構成されても良い。
アプリケーション処理手段45cは、例えば、モバイル端末の電話アプリからのリクエストに応じて、公衆回線等のネットワークを介した呼制御を行う。データ管理システム40は、電話の呼制御処理を行うためのWebRTCゲートウェイやIP-PBX、SIPサーバーを備えても良い。また、アプリケーション処理手段45cは、モバイル端末のノートアプリの機能を提供するノートアプリサーバーと、モバイル端末のドキュメントアプリの機能を提供するドキュメントアプリサーバーと、モバイル端末のブラウザーアプリの機能を提供するブラウザーサーバーと、モバイル端末の電話アプリの機能を提供する電話サーバーとのいずれかを備えても良い。
次に、情報処理システム10の動作について説明する。
まず、モバイル端末20によってデータ管理システム40に送信されたプレーバックデータ50がデータ管理システム40に記憶される場合の情報処理システム10の動作について説明する。
ユーザー認証手段28bによってログインしたユーザーは、ノートアプリケーションプログラム27aによってページ32が第2の表示部22bに表示されると、ページ32に対して、書き込みを行うか、後述のプレーバックデータ50の再生を行うかを操作部21を介して選択することができる。モバイル端末20の記録要求手段28dは、ページ32に対して書き込みを行うことが選択された場合、図9に示す動作を開始する。
図9は、ページ32に対して書き込みが行われる場合のモバイル端末20の動作のフローチャートである。
図9に示すように、モバイル端末20の記録要求手段28dは、記録開始日時を示す日付ブックマークデータを作成し、作成した日付ブックマークデータにタイムスタンプを付加し、タイムスタンプを付加した日付ブックマークデータをページ32のプレーバックデータの日付ブックマークデータとして、データ管理システム40に記録要求を送信する(S101)。したがって、データ管理システム40の記録要求受付手段45aは、S101においてモバイル端末20から送信された記録要求を受け付けて、受け付けた記録要求の対象である日付ブックマークデータを、ページ32のプレーバックデータ50の日付ブックマークデータ56の少なくとも一部として、記憶部44においてページ32の配下に記憶する。
モバイル端末20の記録要求手段28dは、S101の処理が終了すると、ノートアプリケーションプログラム27a以外のアプリケーションプログラム、すなわち、他のアプリケーションプログラムがアプリ実行手段28cによって実行されたか否かを判断する(S102)。
記録要求手段28dは、他のアプリケーションプログラム、すなわち、ドキュメントアプリケーションプログラム27b、ブラウザーアプリケーションプログラム27c、電話アプリケーションプログラム27dなどのアプリケーションプログラムがアプリ実行手段28cによって実行されたとS102において判断すると、アプリ実行手段28cによって実行されたアプリケーションプログラムの実行内容を示すアプリケーションイベントを取得し、取得したアプリケーションイベントにタイムスタンプを付加し、タイムスタンプを付加したアプリケーションイベントをページ32のプレーバックデータのアプリケーションイベントとして、データ管理システム40に記録要求を送信する(S103)。ここで、記録要求手段28dは、ブラウザーアプリケーションプログラム27cの実行内容としては、ブラウザー拡張機能28kによって取得されたものを利用する。したがって、データ管理システム40の記録要求受付手段45aは、S103においてモバイル端末20から送信された記録要求を受け付けて、受け付けた記録要求の対象であるアプリケーションイベントを、ページ32のプレーバックデータ50のアプリケーションイベント57の少なくとも一部として、記憶部44においてページ32の配下に記憶する。例えば、図10に示すように、第2の表示部22bに表示されたページ32に対して書き込みが行われている場合に、ドキュメントアプリケーションプログラム27bによるドキュメントデータ36や、ブラウザーアプリケーションプログラム27cによるWebサイト37が第1の表示部22aに表示されたとき、モバイル端末20の記録要求手段28dは、ドキュメントアプリケーションプログラム27bの実行内容を示すアプリケーションイベントと、ブラウザーアプリケーションプログラム27cの実行内容を示すアプリケーションイベントとを取得し、取得したアプリケーションイベントのそれぞれにタイムスタンプを付加し、タイムスタンプを付加したアプリケーションイベントのそれぞれをページ32のプレーバックデータのアプリケーションイベントとして、データ管理システム40に記録要求を送信する。したがって、データ管理システム40の記録要求受付手段45aは、モバイル端末20においてユーザーがページ32に書き込む際にユーザーが参照したドキュメントデータやWebサイトに関する情報を、ページ32に関連付けて記録することができる。
モバイル端末20の記録要求手段28dは、他のアプリケーションプログラムがアプリ実行手段28cによって実行されていないとS102において判断するか、S103の処理が終了すると、入力受付手段28aによってページ32に手書き入力がされたか否かを判断する(S104)。
記録要求手段28dは、入力受付手段28aによってページ32に手書き入力がされたとS104において判断すると、入力受付手段28aによってページ32に書き込まれた手書きデータを取得し、取得した手書きデータにタイムスタンプを付加し、タイムスタンプを付加した手書きデータをページ32のプレーバックデータの手書きデータとして、データ管理システム40に記録要求を送信する(S105)。したがって、データ管理システム40の記録要求受付手段45aは、S105においてモバイル端末20から送信された記録要求を受け付けて、受け付けた記録要求の対象である手書きデータを、ページ32のプレーバックデータ50の手書きデータ54の少なくとも一部として、記憶部44においてページ32の配下に記憶する。
モバイル端末20の記録要求手段28dは、入力受付手段28aによってページ32に手書き入力がされていないとS104において判断するか、S105の処理が終了すると、入力受付手段28aによってマイクボタン35がONにされたか否かを判断する(S106)。
記録要求手段28dは、入力受付手段28aによってマイクボタン35がONにされたとS106において判断すると、通話状況に応じてマイク録音データ、着信録音データおよび発信録音データのいずれかの録音データを取得し、取得した録音データにタイムスタンプを付加し、タイムスタンプを付加した録音データをページ32のプレーバックデータの録音データとして、データ管理システム40に記録要求を送信する(S107)。したがって、データ管理システム40の記録要求受付手段45aは、S107においてモバイル端末20から送信された記録要求を受け付けて、受け付けた記録要求の対象である録音データを、ページ32のプレーバックデータ50の録音データの少なくとも一部として、記憶部44においてページ32の配下に記憶する。ここで、記録要求受付手段45aは、S107においてモバイル端末20から送信された記録要求の対象である録音データがマイク録音データである場合、このマイク録音データをページ32のプレーバックデータ50のマイク録音データ51の少なくとも一部として記憶する。また、記録要求受付手段45aは、S107においてモバイル端末20から送信された記録要求の対象である録音データが着信録音データである場合、この着信録音データをページ32のプレーバックデータ50の着信録音データ52の少なくとも一部として記憶する。また、記録要求受付手段45aは、S107においてモバイル端末20から送信された記録要求の対象である録音データが発信録音データである場合、この発信録音データをページ32のプレーバックデータ50の発信録音データ53の少なくとも一部として記憶する。したがって、例えば、モバイル端末20においてノートアプリケーションプログラム27aによって第2の表示部22bに表示されたページ32への書き込みを入力受付手段28aが受け付けている場合にモバイル端末20によって録音された講師等の音声や通話音声を、データ管理システム40においてページ32に関連付けて記録することができる。
モバイル端末20の記録要求手段28dは、入力受付手段28aによってマイクボタン35がONにされていないとS106において判断するか、S107の処理が終了すると、入力受付手段28aによってページ32に対してコピーアンドペーストがされたか否かを判断する(S108)。例えば、ユーザーは、図11に示すように、操作部21を介してドキュメントデータ36や、Webサイト37からコピー対象領域38を選択して、選択したコピー対象領域38内の文字や画像、リンク情報をコピーし、ページ32内の指定した位置に貼り付けて、コピーアンドペーストすることができる。また、ユーザーは、他のユーザーが作成したノートのページの書き込み内容を、自分の書き込み対象のページ32にコピーアンドペーストすることもできる。
記録要求手段28dは、入力受付手段28aによってページ32に対してコピーアンドペーストがされたとS108において判断すると、入力受付手段28aによってページ32に書き込まれたコピーアンドペーストデータを取得し、取得したコピーアンドペーストデータにタイムスタンプを付加し、タイムスタンプを付加したコピーアンドペーストデータをページ32のプレーバックデータのコピーアンドペーストデータとして、データ管理システム40に記録要求を送信する(S109)。したがって、データ管理システム40の記録要求受付手段45aは、S109においてモバイル端末20から送信された記録要求を受け付けて、受け付けた記録要求の対象であるコピーアンドペーストデータを、ページ32のプレーバックデータ50のコピーアンドペーストデータ55の少なくとも一部として、記憶部44においてページ32の配下に記憶する。
モバイル端末20の記録要求手段28dは、入力受付手段28aによってページ32に対してコピーアンドペーストがされていないとS108において判断するか、S109の処理が終了すると、入力受付手段28aによる書き込みの受付が終了したか否かを判断する(S110)。例えば、入力受付手段28aは、操作部21を介してノートを閉じる操作がされたり、操作部21を介して次のページの表示操作がされたりした場合に、表示しているページ32への書き込みの受付を終了する。
モバイル端末20の記録要求手段28dは、入力受付手段28aによる書き込みの受付が終了していないとS110において判断すると、S102の処理を実行する。すなわち、記録要求手段28dは、入力受付手段28aによってページ32への書き込みが受け付けられている間、ページ32のプレーバックデータの記録要求を行う。
モバイル端末20の記録要求手段28dは、入力受付手段28aによる書き込みの受付が終了したとS110において判断すると、記録終了日時を示す日付ブックマークデータを作成し、作成した日付ブックマークデータにタイムスタンプを付加し、タイムスタンプを付加した日付ブックマークデータをページ32のプレーバックデータの日付ブックマークデータとして、データ管理システム40に記録要求を送信する(S111)。したがって、データ管理システム40の記録要求受付手段45aは、S111においてモバイル端末20から送信された記録要求を受け付けて、受け付けた記録要求の対象である日付ブックマークデータを、ページ32のプレーバックデータ50の日付ブックマークデータ56の少なくとも一部として、記憶部44においてページ32の配下に記憶する。
モバイル端末20の記録要求手段28dは、S111の処理が終了すると、図9に示す動作を終了する。
次に、他のユーザーが作成したノートのページの書き込み内容をユーザーが自分の書き込み対象のページ32にコピーアンドペーストする場合の情報処理システム10の動作について詳細に説明する。
ユーザー(以下「ユーザーA」という。)は、図12に示すように、他のユーザー(以下「ユーザーB」という。)が作成したノートのページをユーザーA自身のモバイル端末20の第2の表示部22bに表示させ、ユーザーBのページの書き込み内容をユーザーA自身の書き込み対象のページ32にコピーアンドペーストすることもできる。この場合、ユーザーAは、予め設定された認証キーを入力することによって、ユーザーBから許可されたページをユーザーA自身のモバイル端末20に表示させることができる。ユーザーBは、予め、ユーザーB自身のモバイル端末のノートアプリ28gを介して、データ管理システム40と通信を行い、ユーザーAに表示を許可するページに、パスワード等の認証キーを設定しておけば良い。
ユーザーAのモバイル端末20の記録要求手段28dが、ユーザーBのページの書き込み内容のコピーアンドペーストデータの記録要求をS109においてデータ管理システム40に送信すると、データ管理システム40の記録要求受付手段45aは、図13に示すように、コピー対象領域38に対応するユーザーBのプレーバックデータを含めたコピーアンドペーストデータを、ページ32のプレーバックデータ50のコピーアンドペーストデータ55の少なくとも一部として、記憶部44においてページ32の配下に記憶する。すなわち、コピー対象領域38内の書き込みデータ(手書きデータ54およびコピーアンドペーストデータ55)だけでなく、コピー対象領域38内の書き込みデータにおける最初のタイムスタンプから最後のタイムスタンプまでに対応するユーザーBのプレーバックデータの全てがコピー対象となる。
例えば、図14では、コピー対象領域38に対応するユーザーBのプレーバックデータとして、マイク録音データ、手書きデータ、コピーアンドペーストデータおよびアプリケーションイベントが含まれる。したがって、ユーザーAがユーザーBのページからコピーしたコピー対象領域38の書き込みデータが、ユーザーBが書き込みの参考にしたドキュメントデータやWebサイト等の情報をバックボーンに抱えて、ユーザーAのページ32に貼り付けされる。
なお、図15に示すように、ユーザーBのページからコピーしたコピー対象領域38がユーザーAのページ32に貼り付けられる場合に、コピー対象領域38のサイズがページ32の残りの書き込み可能領域(貼り付け可能領域)のサイズよりも大きいとき、コピー対象領域38は、ページ32と、ページ32の次のページとに跨って貼り付けられる。図15に示す例では、コピー対象領域38は、ページ32に貼り付けられるコピー対象領域38aと、ページ32の次のページに貼り付けられるコピー対象領域38bとに分割される。したがって、まず、ユーザーAのモバイル端末20の記録要求手段28dは、コピー対象領域38aに基づくコピーアンドペーストデータにタイムスタンプを付加し、タイムスタンプを付加したコピーアンドペーストデータをページ32のプレーバックデータのコピーアンドペーストデータとして、データ管理システム40に記録要求を送信する(S109)。次いで、記録要求手段28dは、ページ32に書き込み可能領域がなくなったので、書き込み終了と判断し、記録終了日時を示す日付ブックマークデーを作成し、作成した日付ブックマークデータにタイムスタンプを付加し、タイムスタンプを付加した日付ブックマークデータをページ32のプレーバックデータの日付ブックマークデータとして、データ管理システム40に記録要求を送信する(S111)。次いで、コピー対象領域38bを貼り付けるため、ノートアプリケーションプログラム27aによってページ32の次のページが表示され、入力受付手段28aによって書き込みが受け付けられる。次いで、ユーザーAのモバイル端末20の記録要求手段28dは、記録開始日時を示す日付ブックマークデータを作成し、作成した日付ブックマークデータにタイムスタンプを付加し、タイムスタンプを付加した日付ブックマークデータをページ32の次のページのプレーバックデータの日付ブックマークデータとして、データ管理システム40に記録要求を送信する(S101)。次いで、コピー対象領域38bがページ32の次のページに貼り付けされるので、記録要求手段28dは、コピー対象領域38bに基づくコピーアンドペーストデータにタイムスタンプを付加し、タイムスタンプを付加したコピーアンドペーストデータをページ32の次のページのプレーバックデータのコピーアンドペーストデータとして、データ管理システム40に記録要求を送信する(S109)。したがって、データ管理システム40の記録要求受付手段45aは、図16および図17に示すように、記憶部44においてユーザーAの連続する複数のページの配下に、コピーアンドペーストデータ55として、それぞれ、ユーザーBのコピー対象領域38aに対応するプレーバックデータと、ユーザーBのコピー対象領域38bに対応するプレーバックデータとをコピーする。
なお、コピー元であるユーザーBが、コピー対象領域38内の書き込みに、ユーザーCのページからコピーした書き込みデータを含めて作成していた場合、コピー対象領域38は、ユーザーBのプレーバックデータと、ユーザーCのプレーバックデータとを含む。この場合、データ管理システム40の記録要求受付手段45aは、ユーザーAからプレーバックデータとしてコピーアンドペーストデータの記録要求を受け付けると、コピー対象領域38に対応する複数のユーザーのプレーバックデータを、記憶部44においてユーザーAのページの配下に、コピーアンドペーストデータ55としてコピーする。
次に、データ管理システム40に記憶されているプレーバックデータ50がモバイル端末20によって再生される場合の情報処理システム10の動作について説明する。
ユーザー認証手段28bによってログインしたユーザーは、モバイル端末20の操作部21を介してノートを開く操作を入力することができる。ノートを開く操作をモバイル端末20の入力受付手段28aが受け付けると、モバイル端末20の取得要求手段28eは、図18に示す動作を開始する。
図18は、プレーバックデータ50の再生を行う場合のモバイル端末20の動作のフローチャートである。
図18に示すように、モバイル端末20の取得要求手段28eは、最後に第2の表示部22bに表示されたページ、すなわち、直近のページである最終更新ページのプレーバックデータの取得要求をデータ管理システム40に送信する(S131)。なお、新規のノートのように1回も開いたことがないノートの場合には、取得要求手段28eは、1ページ目を最終更新ページとする。データ管理システム40の取得要求応答手段45bは、S131においてモバイル端末20から送信された取得要求を受け付けて、受け付けた取得要求の対象であるページのプレーバックデータを記憶部44から検索する。ここで、取得要求応答手段45bは、記憶部44に記憶されている日付ブックマークデータやタイムスタンプのうち、最新日時が格納されているページを最終更新ページとして特定すれば良い。データ管理システム40の取得要求応答手段45bは、取得要求の対象であるページのプレーバックデータを特定すると、記憶部44から最終更新ページのディレクトリーに格納されている、日付ブックマークデータ、アプリケーションイベント、手書きデータ、録音データ、コピーアンドペーストデータ等をプレーバックデータとして取得し、取得したページのプレーバックデータをモバイル端末20に送信する。なお、一度も書き込みが受け付けられていない新規ページの場合、このページのディレクトリーには、プレーバックデータが格納されていない。そのため、データ管理システム40の取得要求応答手段45bは、新規ページの取得要求がされた場合には、プレーバックデータとして空の情報(例えばNULL等)をモバイル端末20に送信する。
モバイル端末20の取得要求手段28eは、S131の処理が終了すると、データ管理システム40からのプレーバックデータの受信が完了したと判断するまで、データ管理システム40からのプレーバックデータの受信が完了したか否かを判断する(S132)。
モバイル端末20の再生処理手段28fは、データ管理システム40からのプレーバックデータの受信が完了したとS132において判断されると、データ管理システム40からの受信が完了したとS132において判断したプレーバックデータに含まれる手書きデータおよびコピーアンドペーストデータが最後まで書き込まれたページ(最終更新ページ)を、ノートアプリケーションプログラム27aによって第2の表示部22bに表示する(S133)。ここで、再生処理手段28fは、データ管理システム40からの受信が完了したとS132において判断したプレーバックデータが空の情報である場合には、何も書き込まれていないページのみを第2の表示部22bに表示する。
モバイル端末20の再生処理手段28fは、S133の処理が終了すると、データ管理システム40からの受信が完了したとS132において判断したプレーバックデータに含まれるアプリケーションイベントに基づいて、ノートアプリケーションプログラム27a以外の他のアプリケーションプログラムによって最後に表示された画面を表示部22に表示する(S134)。すなわち、再生処理手段28fは、前回、最終更新ページへの書き込みを終了した時点で表示部22に表示されていた他のアプリケーションプログラムによる画面を表示部22に表示する。例えば、前回、最終更新ページへの書き込みを終了した時点で表示部22に表示されていたドキュメントデータやWebサイトが第1の表示部22aに表示される。
モバイル端末20の再生処理手段28fは、S134の処理が終了すると、プレーバックデータを再生するための図19に示す再生バー39を第2の表示部22bに表示する(S135)。再生バー39は、プレーバックデータの再生時間長を示す領域である再生可能領域39aと、再生可能領域39a内の再生位置を示すカーソルであって、操作部21を介して再生可能領域39a内の任意の位置にスライド可能である再生カーソル39bと、再生カーソル39bの再生位置に対応する時刻からプレーバックデータを再生するための再生開始ボタン39cと、プレーバックデータの再生を停止するための再生停止ボタン39dとを備えている。
モバイル端末20の再生処理手段28fは、S135の処理が終了すると、再生開始ボタン39cによって再生バー39が再生操作を受け付けたと判断するまで、再生開始ボタン39cによって再生バー39が再生操作を受け付けたか否かを判断する(S136)。
モバイル端末20の再生処理手段28fは、再生開始ボタン39cによって再生バー39が再生操作を受け付けたとS136において判断すると、再生カーソル39bが示す再生位置に対応する時刻のタイムスタンプ以降のプレーバックデータに基づく表示を一旦消して、再生カーソル39bが示す再生位置に対応する時刻のタイムスタンプからプレーバックデータを順に再生する(S137)。すなわち、再生処理手段28fは、データ管理システム40からの受信が完了したとS132において判断したプレーバックデータ内の、再生カーソル39bが示す時刻以降で、この時刻に最も近い時刻を示すタイムスタンプを有するデータから、最終時刻のタイムスタンプを有するデータまでを、時系列的に再生する。なお、再生処理手段28fは、第2の表示部22bに表示されているページ内の書き込みデータのうち、いずれかの書き込みデータがタッチされることによって、タッチされた書き込みデータのタイムスタンプを再生位置としてプレーバックデータを再生しても良い。
モバイル端末20の再生処理手段28fは、S137においてプレーバックデータを再生する場合に、再生対象のプレーバックデータを、取得要求手段28eを介してデータ管理システム40から逐次取得してストリーミング再生しても良い。例えば、再生処理手段28fは、図20に示すように、プレーバックデータの再生中に1秒毎などの特定の時間毎にタイマー割込みを発生させ、発生させたタイマー割込みに対応する時刻から、次に発生させるタイマー割込みまでの時間などの特定の時間内に対応するタイムスタンプを有するプレーバックデータの取得要求を取得要求手段28eによってデータ管理システム40に対して行って、このプレーバックデータをデータ管理システム40から取得する。再生処理手段28fは、プレーバックデータをデータ管理システム40から取得すると、取得した該当期間のデータを、ノートアプリ28g、ドキュメントアプリ28h、ブラウザーアプリ28iおよび電話アプリ28jの少なくとも1つ以上に渡して同期して再生させる。モバイル端末20がデータ管理システム40からプレーバックデータを逐次取得してストリーミング再生する場合、最終更新ページを第2の表示部22bに表示させるときに受信するプレーバックデータのデータ量を減らすことができるので、最終更新ページを表示するまでの時間を短縮することができる。
なお、モバイル端末20の再生処理手段28fは、ブラウザーアプリケーションプログラム27cの実行内容を再生する場合、ブラウザーアプリケーションプログラム27cの実行内容をブラウザー拡張機能28kを介して再生する。
以上においては、最終更新ページに対するプレーバックデータの再生について説明したが、最終更新ページ以外のページに対するプレーバックデータの再生についても同様である。例えば、モバイル端末20の再生処理手段28fは、最終更新ページを第2の表示部22bに表示した後に、次のページを表示させる操作や、前のページを表示させる操作が操作部21を介して入力された場合、新たな表示対象のページに対するプレーバックデータの取得要求をデータ管理システム40に送信し、データ管理システム40から取得したプレーバックデータに基づいて表示対象のページを第2の表示部22bに表示し、このページに対するプレーバックデータを操作部21を介した操作に応じて再生する。
以上に説明したように、情報処理システム10は、モバイル端末20に表示されたページに書き込みが行われた際に参考にされたドキュメントデータやWebサイト、マイク23による音声データなどを、タイムスタンプを付加して、書き込みデータとともにページに関連付けてプレーバックデータとして記録する。そして、情報処理システム10は、書き込んだページを表示させる場合に、ページのプレーバックデータを取得し、取得したプレーバックデータに含まれる各データをタイムスタンプに基づいて同期して再生することができる。したがって、情報処理システム10は、ノートのページへの書き込みを、書き込んだ状況とともに再現することができ、ノートのページへの書き込み内容をユーザーに容易に理解させることができる。
モバイル端末20は、ブラウザーアプリケーションプログラム27cの実行内容をブラウザー拡張機能28kによって取得し、ブラウザーアプリケーションプログラム27cの実行内容をブラウザー拡張機能28kを介して再生するので、モバイル端末20の製造業者と、ブラウザーアプリケーションプログラム27cの製造業者とが異なる場合であっても、ブラウザー拡張機能28kを利用することによって、ブラウザーアプリケーションプログラム27cの実行内容の記録および再生を実行することができる。
モバイル端末20は、本実施の形態において第1の表示部22aおよび第2の表示部22bという2個のハードウェアで表示部22を構成している。しかしながら、モバイル端末20は、ハードウェアとしては1個の表示部をソフトウェアによって2個の表示部に分割することによって、第1の表示部22aおよび第2の表示部22bを構成しても良い。