JPWO2004003765A1 - Seamless system, recording medium, and computer system processing continuation method - Google Patents

Seamless system, recording medium, and computer system processing continuation method Download PDF

Info

Publication number
JPWO2004003765A1
JPWO2004003765A1 JP2004517273A JP2004517273A JPWO2004003765A1 JP WO2004003765 A1 JPWO2004003765 A1 JP WO2004003765A1 JP 2004517273 A JP2004517273 A JP 2004517273A JP 2004517273 A JP2004517273 A JP 2004517273A JP WO2004003765 A1 JPWO2004003765 A1 JP WO2004003765A1
Authority
JP
Japan
Prior art keywords
data
identification data
processing
resumption
service
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
JP2004517273A
Other languages
Japanese (ja)
Other versions
JP4302057B2 (en
Inventor
正明 岡島
正明 岡島
松本 茂
茂 松本
公夫 佐波
公夫 佐波
朝彦 山田
朝彦 山田
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Publication of JPWO2004003765A1 publication Critical patent/JPWO2004003765A1/en
Application granted granted Critical
Publication of JP4302057B2 publication Critical patent/JP4302057B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

本発明のシームレスシステムは、機器から受け付けたユーザ識別データと機器から実行を要求された処理を示す処理識別データとを対応付けたデータ5aを管理し、処理識別データの示す処理の再開を実現するために用いられる再開実現データをデータ5aに登録し、再開要求とユーザ識別データを受け付けた場合に、データ5aに基づいて、ユーザ識別データに対応する処理識別データと再開実現データとを取得し、再開実現データに基づいて得られる処理識別データの示す処理の実行結果を、再開要求の発信機器に提供する。The seamless system of the present invention manages data 5a in which user identification data received from a device is associated with processing identification data indicating processing requested to be executed by the device, and resumption of processing indicated by the processing identification data is realized. When the resumption realization data used for registration is registered in the data 5a and the resumption request and the user identification data are received, the process identification data and the resumption realization data corresponding to the user identification data are acquired based on the data 5a. The execution result of the process indicated by the process identification data obtained based on the restart realization data is provided to the restarting request transmitting device.

Description

本発明は、ユーザの操作する機器からネットワークを経由してアクセスされるシステム及び記録媒体並びにコンピュータシステムの処理継続方法に関する。  The present invention relates to a system and a recording medium that are accessed from a device operated by a user via a network, and a computer system processing continuation method.

一般的なコンピュータの利用形態として、各ユーザが自分のコンピュータを所有し利用する形態がある。また、他の一般的なコンピュータの利用形態として、複数のユーザが共用コンピュータを共同で利用する形態がある。
ユーザは、電源の入っていないコンピュータの利用を開始する場合、まず電源を入れる。そして、ユーザは、ID管理がなされる場合、自己のユーザIDを入力してログオンする。すると、コンピュータは利用開始の初期状態となる。
その後、ユーザは、自分の意思にしたがってコンピュータを利用して作業を行う。作業が終了すると、ユーザは、終了処理をした後にコンピュータの電源を切る。
このようなコンピュータの利用形態においては、ユーザは、作業を中断してコンピュータの電源を切りたい場合、作業を終了させるか、途中までの作業をキャンセルして電源を切る必要がある。
その一方で、作業を中断する中断機能をサポートしている単体のコンピュータが存在する。
中断機能をサポートするコンピュータを利用するユーザは、中断処理を実行した後に電源を切り、さらに再度電源を入れた後に再開処理を行う。すると、ユーザは、コンピュータの電源を切った後であっても、電源を切る前の作業を継続可能となる。
しかし、この中断機能を用いたとしても、あるコンピュータにおいて中断された作業が他のコンピュータで再開されることはない。
As a general computer usage form, each user owns and uses his or her computer. As another general computer usage mode, there is a mode in which a plurality of users share a shared computer.
When a user starts using a computer that is not turned on, the user first turns on the power. When ID management is performed, the user logs on by inputting his / her user ID. Then, the computer is in an initial state of starting use.
Thereafter, the user performs work using a computer according to his / her intention. When the work is finished, the user turns off the computer after finishing the work.
In such a computer usage mode, when the user wants to interrupt the work and turn off the computer, the user must end the work or cancel the work up to the middle and turn off the power.
On the other hand, there is a single computer that supports an interrupt function for interrupting work.
A user who uses a computer that supports the interruption function turns off the power after executing the interruption process, and performs the restart process after turning on the power again. Then, even after the user turns off the computer, the user can continue the work before turning off the computer.
However, even if this interruption function is used, an operation interrupted in one computer is not resumed in another computer.

本発明は、ネットワークに接続されている複数の端末間で作業を継続可能なシームレスシステム及びプログラム並びにコンピュータシステムの処理継続方法に関する。
第1の発明のシームレスシステムは、機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データとを対応付けた利用状態データを管理する管理部と、前記処理識別データの示す処理の再開を実現するために用いられる再開実現データを前記利用状態データに登録する保存部と、再開要求と前記ユーザ識別データを受け付けた場合に、前記利用状態データに基づいて、前記ユーザ識別データに対応する前記処理識別データと前記再開実現データとを取得し、前記再開実現データに基づいて得られる前記処理識別データの示す処理の実行結果を、前記再開要求の発信機器に提供する再開部とを具備する。
第2の発明のシームレスシステムは、機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データとを対応付けた利用状態データを管理する管理部と、再開要求と前記ユーザ識別データを受け付けた場合に、前記利用状態データに基づいて、前記ユーザ識別データに対応する前記処理識別データを取得し、前記処理識別データの示す処理の実行結果を、前記再開要求の発信機器に提供する再開部とを具備する。
第3の発明のシームレスシステムは、機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データとを対応付けた利用状態データを管理する管理部と、前記機器において中断イベントが発生した場合に、前記処理識別データの示す処理を中断した旨を示す状態データを前記利用状態データに登録する保存部と、再開要求と前記ユーザ識別データを受け付けた場合に、前記利用状態データの中から、前記ユーザ識別データに対応し前記状態データが中断を示す再開用の処理識別データを取得し、前記再開用の処理識別データの示す処理の実行結果を、前記再開要求の発信機器に提供する再開部とを具備する。
第4の発明のシームレスシステムは、機器から受け付けたユーザ識別データを利用状態データに登録する管理部と、所定の処理の再開を実現するために用いられる再開実現データを、前記ユーザ識別データと対応付けて前記利用状態データに登録する保存部と、再開要求と前記ユーザ識別データを受け付けた場合に、前記利用状態データに基づいて、前記ユーザ識別データに対応する前記再開実現データを取得し、前記再開実現データに基づいて得られる前記処理の実行結果を、前記再開要求の発信機器に提供する再開部とを具備する。
第5の発明のシームレスシステムは、機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データとを対応付けた利用状態データを管理する管理部と、前記機器に提供されるコンテンツに他の処理のアドレス情報が含まれる場合に、前記アドレス情報に基づいて前記アドレス情報を自己のシステムのリンク情報を含んだアドレス情報に書き換える書換部とを具備し、前記管理部は、前記書換部に書き換えられたアドレス情報に基づいて前記処理識別データを受信すると受信情報を前記利用状態データとして保存し、前記機器から処理の再開要求と前記ユーザ識別データを受け付けると前記利用状態データに基づいて前記ユーザ識別データに対応する処理の再開を行う。
第6の発明のシームレスシステムは、機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データと前記処理の状態情報とを対応付けた利用状態データを管理する管理部と、前記機器に提供されるコンテンツに前記機器の前記状態情報を自己のシステムに通知する命令を埋め込む付加部とを具備し、前記管理部は、前記機器から前記状態情報を受け付けた場合は前記利用状態データに登録し、再開要求と前記ユーザ識別データを受け付けた場合は前記利用状態データに基づいて、前記ユーザ識別データに対応する処理の再開を行う。
第7の発明のシームレスシステムは、機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データと前記処理の状態情報とを対応付けた利用状態データを管理する管理部と、前記機器に提供されるコンテンツに他の処理のアドレス情報が含まれる場合に、前記アドレス情報に基づいて前記アドレス情報を自己のシステムのリンク情報を含んだアドレス情報に書き換える書換部と、前記機器に提供されるコンテンツに前記機器の前記状態情報を自己のシステムに通知する命令を埋め込む付加部とを具備し、前記管理部は、前記書換部に書き換えられたアドレス情報に基づいて前記処理識別データを受信すると受信情報を前記利用状態データとして保存し、前記機器から前記状態情報を受け付けた場合は前記利用状態データに登録し、前記機器から処理の再開要求と前記ユーザ識別データを受け付けると前記利用状態データに基づいて前記ユーザ識別データに対応する前記処理識別データと前記機器からの処理の再開を行うと共に、前記利用状態データに基づいて、前記ユーザ識別データに対応する処理の再開を行う。
上記各シームレスシステムによりコンピュータシステムの処理継続方法が実施される。
なお、上記各シームレスシステムに具備されている構成要素は、コンピュータに読み込まれたプログラムによって実現されてもよい。このプログラム又はこのプログラムを記録した記録媒体によって、コンピュータを、上記のシームレスシステムとして機能させることもできる。
The present invention relates to a seamless system and program capable of continuing work between a plurality of terminals connected to a network, and a process continuation method of a computer system.
A seamless system according to a first aspect of the present invention includes a management unit that manages usage state data in which user identification data received from a device is associated with processing identification data indicating processing requested to be executed by the device; and the processing identification data When a resumption request and the user identification data are received, a storage unit that registers resumption realization data used to realize the resumption of processing indicated by the user, and the user identification data are received based on the utilization state data. Resume that obtains the process identification data and the resume implementation data corresponding to the identification data, and provides the execution result of the process indicated by the process identification data obtained based on the resume implementation data to the transmission device of the resume request Part.
A seamless system according to a second aspect of the present invention includes a management unit that manages usage state data in which user identification data received from a device and processing identification data indicating processing requested to be executed by the device are associated with each other, a restart request, When the user identification data is received, the process identification data corresponding to the user identification data is acquired based on the usage state data, and the execution result of the process indicated by the process identification data is transmitted to the restart request transmission device. And a resuming unit to be provided.
A seamless system according to a third aspect of the present invention is directed to a management unit that manages usage state data in which user identification data received from a device is associated with processing identification data indicating processing requested to be executed by the device, and interrupted in the device When an event occurs, a storage unit that registers state data indicating that the process indicated by the process identification data is interrupted in the usage state data, and a usage request when the restart request and the user identification data are received. The processing identification data for resumption corresponding to the user identification data corresponding to the user identification data is acquired from the data, and the execution result of the processing indicated by the processing identification data for resumption is transmitted as the restart request transmitting device. And a resuming unit to be provided.
A seamless system according to a fourth aspect of the present invention relates to a management unit for registering user identification data received from a device in usage state data, and resumption realizing data used for realizing resumption of a predetermined process with the user identification data. In addition, when receiving the storage unit to be registered in the usage state data, the restart request and the user identification data, based on the usage state data, obtain the restart realization data corresponding to the user identification data, A resuming unit that provides the execution result of the processing obtained based on the resuming realization data to the resuming request transmitting device.
A seamless system according to a fifth aspect of the present invention provides a management unit that manages usage state data in which user identification data received from a device is associated with processing identification data indicating processing requested to be executed by the device, and provided to the device A rewriting unit that rewrites the address information to address information including link information of its own system based on the address information when the addressed information includes other processing address information, When the process identification data is received based on the address information rewritten in the rewrite unit, the received information is stored as the usage status data, and when the process restart request and the user identification data are received from the device, the usage status data The processing corresponding to the user identification data is resumed based on the above.
A seamless system according to a sixth aspect of the present invention is a management unit that manages usage state data in which user identification data received from a device, processing identification data indicating processing requested to be executed by the device, and state information of the processing are associated with each other And an adding unit that embeds a command for notifying the system of the status information of the device in the content provided to the device, and the management unit receives the status information from the device when the status information is received. When registration is made in the usage status data and the resumption request and the user identification data are received, the processing corresponding to the user identification data is resumed based on the usage status data.
A seamless system according to a seventh aspect of the invention is a management unit that manages usage state data in which user identification data received from a device, processing identification data indicating processing requested to be executed by the device, and state information of the processing are associated with each other A rewriting unit that rewrites the address information to address information including link information of its own system based on the address information when the content provided to the device includes address information of another process; An adder that embeds a command for notifying the system of the status information of the device in the content provided to the device, and the management unit identifies the process based on the address information rewritten in the rewrite unit When data is received, the received information is saved as the usage status data, and when the status information is received from the device, Registered in the service status data, and when the process restart request and the user identification data are received from the device, the process identification data corresponding to the user identification data and the process restart from the device based on the usage status data At the same time, the process corresponding to the user identification data is resumed based on the usage state data.
A computer system processing continuation method is implemented by each of the seamless systems.
Note that the constituent elements provided in each of the seamless systems may be realized by a program loaded in a computer. A computer can be caused to function as the seamless system by using this program or a recording medium on which this program is recorded.

図1は本発明の第1の実施の形態に係るシームレスシステムの構成例を示すブロック図。
図2は第1の実施の形態に係るユーザプロファイルデータの一例を示す図。
図3は第1の実施の形態に係るシームレスシステムの処理の一例を示すフローチャート。
図4は第1の実施の形態においてサービスの開始、中断、再開が要求された場合の処理の一例を示すフローチャート。
図5は第1の実施の形態における端末の接続からサービス開始までの動作例を示すシーケンス図。
図6は第1の実施の形態においてユーザが利用中のサービスを中断する場合の動作例を示すシーケンス図。
図7は第1の実施の形態においてユーザが他の端末からサービスの再開を要求する場合の動作例を示すシーケンス図。
図8は第1の実施の形態に係るユーザプロファイルデータの遷移状態の一例を示す図。
図9は第1の実施の形態に係るシームレスシステムによる第1のサービス継続例を示すブロック図。
図10は第1の実施の形態に係るシームレスシステムによる第2のサービス継続例を示すブロック図。
図11は第1の実施の形態に係るシームレスシステムによる第3のサービス継続例を示すブロック図。
図12は第1の実施の形態に係るシームレスシステムとサービスサーバとの間の第1のセッション維持例を示すブロック図。
図13は第1の実施の形態に係るシームレスシステムとサービスサーバとの間の第2のセッション維持例を示すブロック図。
図14は第1の実施の形態に係るシームレスシステムとサービスサーバとの間の第3のセッション維持例を示すブロック図。
図15は第1の実施の形態に係るシームレスシステムをユビキタス・システムに適用した例を示すブロック図。
図16は本発明の第2の実施の形態に係るシームレスシステムの構成の例を示すブロック図。
図17は本発明の第3の実施の形態に係る端末の接続からサービス開始までの動作例を示すシーケンス図。
図18は第3の実施の形態においてユーザが利用中のサービスを中断する場合の動作例を示すシーケンス図。
図19は第3の実施の形態においてユーザが他の端末を利用してサービスの再開を要求する場合の動作例を示すシーケンス図。
図20は第3の実施の形態に係るユーザプロファイルデータの遷移状態の一例を示す図。
図21は本発明の第4の実施の形態に係るユーザプロファイルデータの一例を示す図。
図22は第4の実施の形態において端末の接続からサービス中断までの動作例を示すシーケンス図。
図23は第4の実施の形態においてサービスの中断後ユーザが他の端末を利用してサービスの再開を要求する場合の動作例を示すシーケンス図。
図24は本発明の第5の実施の形態に係るシームレスシステムの構成例を示すブロック図。
図25はユーザ管理データの具体例を示す図。
図26は状態管理データの具体例を示す図。
図27は状態管理データに含まれるリクエストの一例を示す図。
図28は状態管理データに含まれる実行データの一例を示す図。
図29は作業の一例を示すブロック図。
図30は第5の実施の形態におけるサービスからWebブラウザに提供される実行データの第1の変換例を示すブロック図。
図31は第5の実施の形態におけるサービスからWebブラウザに提供される実行データの第2の変換例を示すブロック図。
図32は第5の実施の形態におけるサービスからWebブラウザに提供される実行データの第3の変換例を示すブロック図。
図33は第5の実施の形態におけるサービスからWebブラウザに提供される実行データの第4の変換例を示すブロック図。
図34は第5の実施の形態におけるサービスからWebブラウザに提供される実行データの第5の変換例を示すブロック図。
図35は第5の実施の形態においてユーザがサービスの利用開始を要求してからコンテンツが表示されるまでの前段動作を示すシーケンス図。
図36は第5の実施の形態においてユーザがサービスの利用開始を要求してからコンテンツが表示されるまでの後段動作を示すシーケンス図。
図37は第5の実施の形態においてコンテンツ表示後に継続してサービスが呼び出された場合の前段動作を示すシーケンス図。
図38は第5の実施の形態においてコンテンツ表示後に継続してサービスが呼び出された場合の後段動作を示すシーケンス図。
図39は第5の実施の形態においてサービスを中断する場合の動作を示すシーケンス図。
図40は第5の実施の形態において中断されたサービスの利用を別の端末から再開する場合の前段動作を示すシーケンス図。
図41は第5の実施の形態において中断されたサービスの利用を別の端末から再開する場合の中断動作を示すシーケンス図。
図42は第5の実施の形態において中断されたサービスの利用を別の端末から再開する場合の後段動作を示すシーケンス図。
図43は本発明の第6の実施の形態に係るシームレスシステムの構成例を示すブロック図。
図44は第6の実施の形態においてサービスからWebブラウザに提供される実行データの第1の変換例を示すブロック図。
図45は第6の実施の形態においてサービスからWebブラウザに提供される実行データの第2の変換例を示すブロック図。
図46は第6の実施の形態においてユーザがサービスの利用開始を要求してからコンテンツが表示されるまでの前段動作を示すシーケンス図。
図47は第6の実施の形態においてユーザがサービスの利用開始を要求してからコンテンツが表示されるまでの後段動作を示すシーケンス図。
図48は第6の実施の形態においてコンテンツ表示後に継続してサービスが呼び出された場合の前段動作を示すシーケンス図。
図49は第6の実施の形態においてコンテンツ表示後に継続してサービスが呼び出された場合の後段動作を示すシーケンス図。
図50は第6の実施の形態において作業を中断する場合の動作を示すシーケンス図。
図51は第6の実施の形態において中断されたサービスの利用を別の端末から再開する場合の前段動作を示すシーケンス図。
図52は第6の実施の形態において中断されたサービスの利用を別の端末から再開する場合の後段動作を示すシーケンス図。
図53は本発明の第7の実施の形態に係るシームレスシステムの構成例を示すブロック図。
FIG. 1 is a block diagram showing a configuration example of a seamless system according to a first embodiment of the present invention.
FIG. 2 is a diagram showing an example of user profile data according to the first embodiment.
FIG. 3 is a flowchart showing an example of processing of the seamless system according to the first embodiment.
FIG. 4 is a flowchart showing an example of processing when a service start, interruption, or restart is requested in the first embodiment.
FIG. 5 is a sequence diagram showing an operation example from terminal connection to service start in the first embodiment.
FIG. 6 is a sequence diagram showing an operation example in the case of interrupting a service being used by a user in the first embodiment.
FIG. 7 is a sequence diagram showing an operation example when the user requests to restart the service from another terminal in the first embodiment.
FIG. 8 is a diagram illustrating an example of a transition state of user profile data according to the first embodiment.
FIG. 9 is a block diagram showing a first service continuation example by the seamless system according to the first embodiment.
FIG. 10 is a block diagram showing a second service continuation example by the seamless system according to the first embodiment.
FIG. 11 is a block diagram showing a third service continuation example by the seamless system according to the first embodiment.
FIG. 12 is a block diagram showing a first session maintenance example between the seamless system and the service server according to the first embodiment.
FIG. 13 is a block diagram illustrating a second session maintenance example between the seamless system and the service server according to the first embodiment.
FIG. 14 is a block diagram showing a third session maintenance example between the seamless system and the service server according to the first embodiment.
FIG. 15 is a block diagram showing an example in which the seamless system according to the first embodiment is applied to a ubiquitous system.
FIG. 16 is a block diagram showing an example of a configuration of a seamless system according to the second embodiment of the present invention.
FIG. 17 is a sequence diagram showing an operation example from terminal connection to service start according to the third embodiment of the present invention.
FIG. 18 is a sequence diagram illustrating an operation example in the case of interrupting a service being used by a user in the third embodiment.
FIG. 19 is a sequence diagram illustrating an operation example when a user requests restart of a service using another terminal in the third embodiment.
FIG. 20 is a diagram showing an example of a transition state of user profile data according to the third embodiment.
FIG. 21 is a diagram showing an example of user profile data according to the fourth embodiment of the present invention.
FIG. 22 is a sequence diagram showing an operation example from connection of a terminal to service interruption in the fourth embodiment.
FIG. 23 is a sequence diagram showing an operation example in the case where the user uses another terminal to request service resumption after service interruption in the fourth embodiment.
FIG. 24 is a block diagram showing a configuration example of a seamless system according to the fifth embodiment of the present invention.
FIG. 25 is a diagram showing a specific example of user management data.
FIG. 26 is a diagram illustrating a specific example of state management data.
FIG. 27 is a diagram illustrating an example of a request included in the state management data.
FIG. 28 is a diagram illustrating an example of execution data included in state management data.
FIG. 29 is a block diagram illustrating an example of work.
FIG. 30 is a block diagram illustrating a first conversion example of execution data provided to a Web browser from a service according to the fifth embodiment.
FIG. 31 is a block diagram illustrating a second conversion example of execution data provided to a Web browser from a service according to the fifth embodiment.
FIG. 32 is a block diagram illustrating a third conversion example of execution data provided from the service to the Web browser according to the fifth embodiment.
FIG. 33 is a block diagram showing a fourth conversion example of execution data provided from the service to the Web browser in the fifth embodiment.
FIG. 34 is a block diagram showing a fifth conversion example of execution data provided from the service to the Web browser in the fifth embodiment.
FIG. 35 is a sequence diagram showing the previous operation from when the user requests to start using the service until the content is displayed in the fifth embodiment.
FIG. 36 is a sequence diagram showing a subsequent operation from when a user requests to start using a service until content is displayed in the fifth embodiment.
FIG. 37 is a sequence diagram showing a previous operation when a service is continuously called after content display in the fifth embodiment.
FIG. 38 is a sequence diagram showing a subsequent operation when a service is continuously called after content display in the fifth embodiment.
FIG. 39 is a sequence diagram showing an operation when a service is interrupted in the fifth embodiment.
FIG. 40 is a sequence diagram showing the previous operation when the use of the service interrupted in the fifth embodiment is resumed from another terminal.
FIG. 41 is a sequence diagram showing an interruption operation when the use of the service interrupted in the fifth embodiment is resumed from another terminal.
FIG. 42 is a sequence diagram showing a post-stage operation when the use of the service interrupted in the fifth embodiment is resumed from another terminal.
FIG. 43 is a block diagram showing a configuration example of a seamless system according to the sixth embodiment of the present invention.
FIG. 44 is a block diagram showing a first conversion example of execution data provided from a service to a Web browser in the sixth embodiment.
FIG. 45 is a block diagram showing a second conversion example of execution data provided from a service to a Web browser in the sixth embodiment.
FIG. 46 is a sequence diagram showing the previous operation from when the user requests to start using the service until the content is displayed in the sixth embodiment.
FIG. 47 is a sequence diagram showing the subsequent operation from when the user requests to start using the service until the content is displayed in the sixth embodiment.
FIG. 48 is a sequence diagram showing a previous operation when a service is continuously called after content display in the sixth embodiment.
FIG. 49 is a sequence diagram showing a post-stage operation when a service is continuously called after content display in the sixth embodiment.
FIG. 50 is a sequence diagram showing an operation when the work is interrupted in the sixth embodiment.
FIG. 51 is a sequence diagram showing a previous-stage operation when the use of the service interrupted in the sixth embodiment is resumed from another terminal.
FIG. 52 is a sequence diagram showing a post-stage operation when the use of the service interrupted in the sixth embodiment is resumed from another terminal.
FIG. 53 is a block diagram showing a configuration example of a seamless system according to the seventh embodiment of the present invention.

以下、図面を参照しながら本発明の実施の形態を説明する。なお、以下の説明において、同一の部分には同一の符号を付してその説明を省略する。
(第1の実施の形態)
本実施の形態に係るシームレスシステムは、ネットワークに接続され、複数の端末間でシームレス作業を実現する環境を提供する。
本実施の形態においては、複数の端末間で、複数のサービスについてのシームレス作業が実現される。
図1は、本実施の形態に係るシームレスシステムの構成例を示すブロック図である。
シームレスシステム1は、例えばインターネットなどのようなネットワーク2経由で、端末群3の各端末31〜3nと通信可能に接続されている。また、シームレスシステム1は、ネットワーク2経由で、ネットワークサービス群4の各種サービス41〜4nと接続されている。なお、ネットワーク2はインターネットではなく、LAN、イントラネットなどのような他の通信ネットワークでもよい。
シームレスシステム1は、記録部5、端末接続部6、サービス管理部7、最適化部8を具備する。
また、シームレスシステム1は、ネットワークサービス群4の各種サービス41〜4nと同様の機能に基づいてローカルサービス9を提供する。シームレスシステム1とローカルサービス9との間には、ネットワーク2は介在しない。なお、ローカルサービス9の存在は必須ではなく、サービスを全てネットワークサービスで構成してもよい。また逆にサービスを全てローカルサービスで構成してもよい。
シームレスシステム1は、記録媒体10に記録されているシームレスプログラム11を読み込み、実行することにより、端末接続部6、サービス管理部7、最適化部8としての機能を実現する。
シームレスプログラム11は、例えば1台のサーバコンピュータ上で動作してもよく、複数のコンピュータ上に分散された状態で連携しつつ動作してもよい。
サービス41〜4n,9は、アプリケーション、処理プロセス、オブジェクト、プログラムなどによる処理の実行によってユーザに提供される。
例えば、サービス41〜4n,9には、コンテンツの配信サービス、アプリケーション配信サービス、ストリーミングサービス、情報検索サービス、文書編集サービス、各種業務支援サービスなどがある。
記録部5には、利用状態データとしての役割を持つユーザプロファイルデータ5aが記録される。
図2に、ユーザプロファイルデータ5aの例を示す。この例では、ユーザプロファイルデータ5aは、項目「ユーザID」「パスワード」「サービスID」「状態データ」「属性データ」を持つ。また、図2のユーザプロファイルデータ5aでは、項目「属性データ」が2つの項目「サービス属性」「端末属性」から構成されている。ユーザプロファイルデータ5aで管理される各項目の値は、行単位で対応付けられている。
ユーザIDは、サービス41〜4n,9のいずれかを利用するユーザのユーザ識別データである。
パスワードは、ユーザIDとともにユーザ認証処理に利用される。
サービスID(処理識別データ)は、ユーザに利用されるサービスを識別するためのデータである。
状態データは、ユーザによるサービスの利用状態を示す。状態データは、例えば「開始」「中断」「再生」などの値を持つ。
属性データは、サービスと端末との間で共用されるデータである。例えば、属性データは、クッキー情報として、サービスと端末との間で送受信される。
サービス属性とはサービス側で保持されていた属性データである。サービス属性の具体例としては、セッションID、ビットレート、ユーザによって入力されサービス側に提供されたデータなどがある。
端末属性とは、端末側で保持される属性データである。端末属性の具体例としては、表示画像サイズ、配信済み時間、ユーザによって入力され端末側で利用されるデータなどがある。
上記状態データと属性データとは、サービスの再開を実現するために利用される。なお、本実施の形態においては、状態データと属性データを利用しているが、これらのデータの利用は必須ではなく、例えば状態データのみ又は属性データのみを利用してもよい。
端末接続部6は、データ管理部6aを具備する。
端末接続部6は、端末31〜3nのうちのいずれかを使用し、接続を要求したユーザをユーザID及びパスワードに基づいて識別し、ユーザ毎に、サービスの開始・中断・再開・終了を行うための接続管理を行う。なお、端末接続部6は、他の手法によりユーザの識別を行ってもよく、例えばICカードなどに埋め込まれた電子証明書を用いる方法や、指紋認証などの生体認証技術を用いる方法、もしくはいくつかの方法を組み合わせた方法などを用いてもよい。
データ管理部6aは、ユーザプロファイルデータ5aに、受け付けたユーザのユーザID、受け付けたサービスID、このユーザによるサービスの利用状態を示す状態データ、このユーザの操作する端末とサービスとの間で共用される属性データを登録する。
最適化部8は、サービスによって提供されるコンテンツの表示形態など、各種端末31〜3n毎の入力・表示スペックの中から、接続中の端末におけるスペックを選択する。そして、最適化部8は、接続中の端末に提供するデータを、選択されたスペックに変換する。これにより、各端末31〜3nに対応するデータの最適化が行われる。
また、最適化部8は、接続中の端末から受け付けたデータを、データ提供先のサービスのデータ形式に変換してもよい。
最適化部8の実現手段としては、様々手法が利用可能である。例えば、あるサービスから提供されるコンテンツがHTML(Hypertext Markup Language)又はXML(Extensible Markup Language)で記述されているデータの場合、XSLTと呼ばれるトランスレータソフトウェアを最適化部8として用いることができる。これにより、HTML又はXMLのタグを別の文字列に変換することができる。例えば、変換前のコンテンツがパーソナルコンピュータでの利用を想定したデータ形式を採用していても、このコンテンツを携帯電話又はテレビジョンなどパーソナルコンピュータ以外の機器に搭載されているブラウザソフトウェアで解釈可能な形式に変換することができる。
その他、最適化部8には、トランスコーディングミドルウェアなども利用可能である。
サービス管理部7は、開始部7a、中断部7b、再開部7cを具備する。
サービス管理部7の開始部7aは、ネットワーク2上のサービス41〜4nを実現する処理又はローカルサービス9を実現する処理の中から、ユーザが要求するサービスを実現する処理を特定する。
サービス41〜4n,9を実現する処理の特定には、例えば、端末からシームレスシステム1に提供される処理要求データに含まれる一部の文字列をインターネットのHTTP通信で用いられるURL(Universal Resource Locator)として扱い、このURLによってネットワーク2上の処理を特定する方法が用いられる。
また、開始部7aは、特定した処理を実行し、例えばコンテンツ配信サービスによってユーザに提供されるコンテンツなど、特定した処理を実行して得られる実行データを取得する。
そして、開始部7aは、取得した実行データのうち、ユーザの操作する端末から中断要求を受け付けるまでの実行データをその端末に提供するための制御を実行する。
中断部7bは、端末から中断要求を受け付けた場合に、中断を示す状態データとユーザIDとを対応付けてユーザプロファイルデータ5aに登録するとともに、属性データとユーザIDとを対応付けてユーザプロファイルデータ5aに登録する。例えばストリームコンテンツ配信済みの時間データ、中断されるまでにユーザによって入力されたデータなどが属性データとしてユーザプロファイルデータ5aに登録される。
再開部7cは、ユーザIDと再開要求を受け付けた場合に、ユーザプロファイルデータ5aに基づいて、受け付けたユーザIDに関連するサービスIDと状態データとを取得する。
また、再開部7cは、取得したサービスIDのうち状態データが中断を示すサービスIDを選択し、選択したサービスIDの示すサービスの再開後の実行データを属性データに基づいて取得し、再開要求の発信端末(作業を再開する再開機器に相当する)に提供する。
例えば、再開部7cは、中断前までの処理の実行段階を示す属性データに基づいて、処理を実行し、中断前の段階まで復元した実行データを求め、再開後の実行データを取得する。
例えば、再開部7cは、ユーザプロファイルデータ5aの中に中断直前の実行データを含めて保存し、再開要求の発信端末に対して、保存した実行データを提供するとしてもよい。
なお、上記図1のネットワークサービス群4とローカルサービス9とは、双方が必須の構成要素ではなく、シームレスシステム1はどちらか一方を利用可能であればよい。
図3は、本実施の形態に係るシームレスシステム1の処理の一例を示すフローチャートである。
ステップR1において、端末接続部6は、端末から要求を受け付ける。
ステップR2において、端末接続部6は、受け付けた要求に基づいて、ユーザIDと要求の種類を特定する。
ステップR3において、端末接続部6は、要求の種類に応じて以後の処理内容を切り替える。
中断及び再開でない場合、すなわち要求の種類が開始の場合、ステップR4において、端末接続部6は、サービスIDを特定する。
ステップR5において、端末接続部6は、ユーザIDとサービスIDをユーザプロファイルデータ5aに登録する。
ステップR6において、開始部7aは、サービスIDに対応するサービスの実行データを取得する。
ステップR7において、端末接続部6は、開始部7aによって取得された実行データを、最適化部8を利用して端末の出力形態に変換する。
ステップR8において、端末接続部6は、変換後の実行データを端末に提供する。
要求の種類が中断の場合、ステップR9において、中断部7bは、サービスIDを特定する。
ステップR10において、中断部7bは、サービスIDに対応するサービスの中断を示す状態データをユーザプロファイルデータ5aに登録する。
要求の種類が再開の場合、ステップR11において、再開部7cは、ユーザプロファイルデータ5aに基づいて、ユーザIDに対応付けられており状態データが中断を示すサービスIDを特定する。
ステップR12において、再開部7cは、特定したサービスIDのサービスの実行データを取得し、属性データに基づいて再開後のサービスの実行データを取得する。
ステップR13において、端末接続部6は、再開部7cによって取得された再開後のサービスの実行データを、最適化部8を利用して再開要求の発信端末の出力形態に変換する。
ステップR14において、端末接続部6は、変換後のサービスの実行データを再開要求の発信端末に提供する。なお、図3はシームレスシステムが継続的に動作する過程での1回毎の端末からの要求受付に対応する動作を示したものであり、ENDまで到達した後は再度端末からの要求を待つ状態となり、端末からの次の要求を受けて図3のフローチャートを繰り返す。また、要求の種類として終了を要求する種類を加え、要求の種類が終了であった場合には図3のフローチャートの繰り返しを終了させる、という動作としてもよい。
図4は、本実施の形態に係るシームレスシステム1の概略処理の一例を示すフローチャートである。この図4では、サービスの開始、中断、再開が要求された場合の処理の流れを示している。
ステップS1において、端末接続部6は、ユーザの操作する端末からユーザIDとサービスIDとを受け付ける。
ステップS2において、端末接続部6は、ユーザIDとサービスIDとをユーザプロファイルデータ5aに含め、管理する。
ステップS3において、開始部7aは、端末から中断要求を受信するまでサービスIDに対応するサービスの実行データを取得する。
ステップS4において、端末接続部6は、開始部7aによって取得された実行データを、最適化部8を利用して端末の出力形態に変換する。
ステップS5において、端末接続部6は、変換後の実行データを端末に提供する。
ステップS6において、端末接続部6は、端末から中断要求を受け付ける。
ステップS7において、中断部7bは、サービスIDに対応するサービスの中断を示す状態データをユーザプロファイルデータ5aに登録する。
ステップS8において、端末接続部6は、再開要求とユーザIDとを受け付ける。
ステップS9において、再開部7cは、ユーザプロファイルデータ5aに基づいて、ユーザIDに対応付けられており状態データが中断を示すサービスIDのサービスの実行データを取得し、属性データに基づいて再開後のサービスの実行データを取得する。
ステップS10において、端末接続部6は再開部7cによって取得された再開後のサービスの実行データを、最適化部8を利用して再開要求の発信端末の出力形態に変換する。
ステップS11において、端末接続部6は、変換後のサービスの実行データを再開要求の発信端末に提供する。
上記のようなシームレスシステム1の詳細動作を、図5〜7を用いて説明する。
なお、この図5〜7では、端末31によるサービスの利用が中断され、中断前と異なる端末32で同じサービスが再び利用される場合を示している。また、図5〜7については、コンテンツを配信するサービス41を実現する処理の実行が要求されたとして説明を行う。
図8は、ユーザプロファイルデータ5aの遷移状態の例を示す図である。
図5は、端末31の接続からサービス開始までの動作例を示すシーケンス図である。
まず、ユーザ12は、端末31の利用を開始し、端末31を操作してシームレスシステム1に接続する。
接続要求を受け付けた端末接続部6は、ユーザ認証処理を行い、接続を要求したユーザ12を特定する。
なお、ユーザ認証処理には、任意の手法を適用することができる。例えば、ユーザ認識処理として、ユーザIDとパスワードをユーザプロファイルデータ5aで管理し、接続要求時に端末31からユーザIDとパスワードを受け付け、受け付けたユーザIDとパスワードとユーザプロファイルデータ5aのユーザIDとパスワードとが整合していれば認証完了とする。
次に、端末接続部6は、ユーザプロファイルデータ5aにユーザ12が利用開始状態になった旨を示す状態データを登録する。この時点でのユーザプロファイルデータ5aの内容は、図8の状態Tとなる。
接続が完了すると、ユーザ12は、端末31を通じて、サービスIDとサービス利用開始要求をシームレスシステム1に提供する。サービスIDとサービス利用開始要求は、端末接続部6を経由してサービス管理部7に受け付けられる。この図5では、ユーザ12によってサービス41の実行が要求されている。
サービス管理部7の開始部7aは、ユーザ12が利用開始を要求したサービス41がどこにあるか検索・特定し、そのサービス41によって提供されるコンテンツを取得する。
例えば、サービス41が、複数の画面遷移を伴う場合又は時間的に連続変化するデータを継続的に提供し続けるストリーミングサービスの場合、サービス管理部7の開始部7aは、コンテンツの最初の表示内容を取得する。
サービス管理部7の開始部7aは、ユーザ12がサービス41を利用している旨を示す情報をユーザプロファイルデータ5aに記録する。例えば、サービスIDをユーザプロファイルデータ5aに記録する。この時点でのユーザプロファイルデータ5aの内容は、図8の状態Tとなる。
さらに、サービス管理部7の開始部7aは、サービス41を利用するにあたって端末31が保持しなければならない属性データがサービス41から送られてきた場合に、この属性データを端末31に中継すると共に、ユーザプロファイルデータ5aに登録する。
例えば、サービスが複数の画面を表示する場合に、セッションIDを端末とサービスを提供するサーバとが共有する方法が一般的に用いられる。この方法が用いられる場合に、サービスを提供するサーバからクライアントとなる端末に対してセッションIDが提供される。このセッションIDが属性データとしてユーザプロファイルデータ5aに記録される。
この時点でのユーザプロファイルデータ5aの内容は、図8の状態Tとなる。この状態Tでは、項目「サービス属性」の値としてセッションIDが記録される。
端末接続部6は、サービス管理部7の開始部7aから提供されるコンテンツを最適化部8に提供し、コンテンツを端末31の表示スペックに整合した形態に変換し、端末31に対して変換後のコンテンツを提供する。
端末31では、受け付けたコンテンツを表示する。ユーザ12は、その表示に対して操作を行い、場合によっては次の画面を要求する。
図6は、ユーザ12が利用中のサービス41を中断する場合の動作例を示すシーケンス図である。
まず、ユーザ12の操作する端末31から中断要求が端末接続部6を経由してサービス管理部7に提供される。端末31は、中断要求に端末31で保持されていた各種の属性データ(端末属性)を付加し、サービス管理部7に提供する。例えば、端末属性には、端末31での表示サイズ、ストリーミングの再生済み時間などがある。
サービス管理部7の中断部7bは、中断要求に付加された端末属性をユーザプロファイルデータ5aに登録する。なお、端末属性をユーザプロファイルデータ5aで管理することは必須ではない。
この時点でのユーザプロファイルデータ5aの内容は、図8の状態Tとなる。
サービス管理部7の中断部7bは、中断要求を受け付けると、サービス41の中断処理を行う。サービス41の中断処理としては、例えばストリーミングサービスの再生停止処理などがある。なお、サービス41の動作内容によっては、支障がなければサービス41の中断処理を行わなくてもよい。
次に、サービス管理部7の中断部7bは、中断したサービス41の実行状態に関するデータをユーザプロファイルデータ5aに記録する。サービスの実行状態に関するデータには、例えばストリーミングサービスの再生済み時間データ、中断されるサービスにおいて中断前まで利用されたクッキー情報、ビットレート、ユーザによって入力されたデータなどがある。
この時点でのユーザプロファイルデータ5aの内容は、図8の状態Tとなる。
サービス管理部7の中断部7bは、ユーザ12によりサービス41が中断された旨を示す状態データをユーザプロファイルデータ5aに登録し、中断処理を完了する。この時点でのユーザプロファイルデータ5aの内容は、図8の状態Tとなる。
サービス41の中断処理が終了した後、ユーザ12の操作する端末31は、シームレスシステム1とサービスを提供するサーバとの間の接続を解除する要求をシームレスシステム1に提供し、端末接続部6は、ユーザ12について接続解除状態となった旨の状態データをユーザプロファイルデータ5aに登録する。
この時点でのユーザプロファイルデータ5aの内容は、図8の状態Tとなる。
なお、状態Tへの変化は、省略されてもよい。この場合、接続解除状態に移行することなく接続を維持したままユーザの操作が中断した状態を示す状態データがユーザプロファイルデータ5aに登録される。
端末31の電源が切られるなど接続解除要求がシームレスシステム1に提供されることなく端末31の利用が終了する場合もある。この場合、ユーザプロファイルデータ5aの内容は変更されない。
図7は、ユーザ12が端末32を利用してサービス41の再開を要求する場合の動作の例を示すシーケンス図である。
まず、ユーザ12は端末32を操作して端末接続部6に接続要求を提供する。すると、上記図5の場合と同様のユーザ認証処理により、端末接続部6はユーザの認証を行う。
端末接続部6は、ユーザプロファイルデータ5aにユーザ12の切断状態が解除された旨を示す状態データを登録する。
この時点でのユーザプロファイルデータ5aの内容は、図8の状態Tとなる。この状態Tでは、項目「状態データ」の値が「中断&切断」から「中断」に変更されている。
なお、ユーザプロファイルデータ5aが中断中のサービスがある旨を示す場合、端末接続部6は、どのサービスが中断中であるか示すデータを端末32に提供するとしてもよい。一人のユーザ12に対して、中断中のサービスが複数ある状態を許す場合には、どの中断中のサービスを再開するかをユーザ12に決定させるために、端末接続部6は、どのサービスが中断中であるかを示すデータを端末32に提供し、ユーザ12に利用再開を要求するサービスを選択させるための処理を実行してもよい。
また、端末接続部6は、マルチウィンドウ表示可能な端末に対して、中断中の全てのサービスを別々のウィンドウで再表示するために、中断中の全てのサービスの実行データを提供するとしてもよい。
次に、ユーザ12は端末32を操作して中断中のサービスの利用再開を要求すると、利用再開要求が端末接続部6を経由してサービス管理部7に提供される。
サービス管理部7の再開部7cは、利用再開要求に応じて、ユーザプロファイルデータ5aの状態データに基づいて中断中のサービスを選択し、ユーザプロファイルデータ5aに登録されている各種の属性データを利用してサービス41にアクセスし、中断直前に表示されたコンテンツの続きとなるコンテンツを取得する。
サービス管理部7の再開部7cは、サービス41からサービス属性を受け付けた場合には、サービス属性をユーザプロファイルデータ5aに記録する。
サービス管理部7の再開部7cは、サービス41が再開された旨を示す状態データをユーザプロファイルデータ5aに記録し、再開後のコンテンツを端末接続部6に提供する。
この時点でのユーザプロファイルデータ5aの内容は、図8の状態Tとなる。
端末接続部6は、最適化部8によりコンテンツの表示形態の最適化を行い、変換後のコンテンツを端末32に提供する。これにより、端末31と端末32が異なる入出力スペックを適用していても、かかるスペックの違いに関係なく、サービス41の実行を引き継ぐことができる。
図9は、シームレスシステム1による第1のサービス継続例を示すブロック図である。
中断前の端末の通信ソフトウェア13とシームレスシステム1の端末接続部6との間では、時間的に離散なイベントが送受信され、サービスが提供される。
端末接続部6は、中断前の端末の通信ソフトウェア13とシームレスシステム1との間の通信で利用されるセッションを、サービス中断後においても維持する。
中断前の端末の通信ソフトウェア13からシームレスシステム1に提供された入力データは、シームレスシステム1によって記録されている。
サービスが中断され、その後再開される場合、シームレスシステム1の再開部7cは、記録済みの入力データを用いてサービスを実行し、端末接続部6は、維持されているセッションを利用して、実行されたサービスの実行データを再開要求の発信端末の通信ソフトウェア13に送信する。
なお、ユーザプロファイルデータ5a中に中断直前の実行データが登録されている場合には、再開部7cは、この中断直前の実行データを取得し、端末接続部6は、この中断直前の実行データを再開要求の発信端末に提供するとしてもよい。
これにより、ユーザは、シームレスシステム1に再接続するのみでサービスを継続して受けることができる。
図10は、シームレスシステム1による第2のサービス継続例を示すブロック図である。
中断前の端末のブラウザ14とシームレスシステム1との間では擬似セッション管理が行われる。中断前の端末のブラウザ14とシームレスシステム1との間で一定時間通信が行われない場合、セッションタイムアウトが発生する。
サービスを中断する場合、端末接続部6は、定期的にセッションリフレッシュのためのリクエストを発生させ、セッションタイムアウトを防止し、セッションを維持する。
サービスが中断され、その後再開される場合、端末接続部6は、維持されているセッションを利用して、再開要求の発信端末のブラウザ14に接続する。これにより、ユーザは、中断されたサービスをブラウザ14によって継続利用できる。
図11は、シームレスシステム1による第3のサービス継続例を示すブロック図である。
中断前の端末の再生ソフトウェア15とシームレスシステム1の端末接続部6との間では、時間的に連続したイベントが送受信され、サービスが提供される。ここでは、シームレスシステム1から再生ソフトウェア15にストリーミングサービスのためのコンテンツが提供されるとする。
端末接続部6は、再生ソフトウェア15とシームレスシステム1との間のセッションを、サービス中断後においても維持する。
シームレスシステム1の中断部7bは、中断前に再生済みのポイントを記録する。
ストリーミングサービス自体に中断機能が備わっている場合には、再開部7cは、ストリーミングサービスに対して再生済みのポイントを指定し、再開を指示する。
ストリーミングサービス自体に中断機能が備わっていない場合には、再開部7cは、一旦コンテンツをストリーミングサービスから受け付け、再生済みポイントから後の部分を取得し、端末接続部6は、再生済みポイントから後の部分を再開要求の発信端末の再生ソフトウェア15に送信する。
なお、図12〜図14に示すように、シームレスシステム1は、それぞれ上記図9〜図11と同様の手法によって、シームレスシステム1とのサービスを提供するサービスサーバ4sとの間のセッションを維持し、サービスを継続するとしてもよい。
図15は、本実施の形態に係るシームレスシステム1をユビキタス・システムに適用した例を示すブロック図である。
ユビキタス・システムでは、例えばテレビジョン161、冷蔵庫162、電子レンジ163、電話164、カーナビゲーション装置165などのような様々な機器に通信部17が具備されており、この各種機器がコンピュータネットワークシステムの端末として使用可能である。
このようなユビキタス・システムにシームレスシステム1を適用することにより、ある機器で作業を中断しても、他の機器で適切、迅速、容易に作業を再開することができる。例えば、テレビジョン161で行っていた作業を電話164によって継続できる。
また、入力形態、出力形態が異なっていても、ユーザがその時点で操作している機器に適した入力、出力が可能となる。
なお、ユビキタス・システムの端末として、他にもデスクトップ型コンピュータ、携帯型コンピュータ、携帯電話、ゲーム機、PDA(Personal Digital Assistant)、オーディオ機器など様々な機器が利用可能である。
以上説明した本実施の形態においては、ユーザが操作する端末が切り替わった場合であっても、先の端末でのサービスを後の端末で引き継ぐことができ、サービスの継続を実現できる。
ある端末で中断した作業を他の端末で再開する場合、作業を中断した端末の具備する入出力装置(例えばキーボード、マウス、ディスプレイなど)又は表示形式と、作業を再開する端末の具備する入出力装置又は表示形式とが同じとは限らない。このような場合であっても、本実施の形態では、最適化部8によってシーケンスシステム1から端末に端末に適したデータを提供できる。
なお、本実施の形態で説明した各構成要素は、自由に組み合わせてもよく、また複数の要素に分割してもよい。
また、本実施の形態に係る端末接続部6、サービス管理部7、最適化部8は、ハードウェアにより実現するとしてもよい。
なお、本実施の形態においては、属性データとして上記図2に示すような「サービス属性」「端末属性」という2種類のデータを管理する例を記載しているが、これら2種類のデータのうち一方のみを管理するとしてもよい。
例えばサービス属性のみを利用する場合、端末上での表示の大きさなどの端末側で管理される情報は失われるが、中断直前にサービス41から端末に提供されたデータの属性値についてはサービス属性として保存される。このため、サービス41の処理を再開させることができる。また、中断処理を行わずに端末が強制的にネットワークから切断され、端末属性がユーザプロファイルデータ5aに登録されなくても、最低限の再開処理が可能となる。
例えば端末属性のみを利用する場合、サービス属性に相当する情報は端末でも保持されている場合があり、中断処理時に端末からサービス属性に相当する情報を端末属性として登録することにより、サービス41の処理を再開できる。
また、本実施の形態においては、上記図2に示すように、ユーザプロファイルデータ5aにおいて状態データを管理しているが、状態データを管理することは必須ではない。状態データを管理しない場合には、上記図7の再開処理において、端末から受け付けたユーザIDに対応するサービスIDについて全て再開状態とすることで、状態データを管理することなく中断された処理を再開することができる。
なお、本実施の形態においてはユーザプロファイルデータに情報を記録し、その後処理の再開時に利用する際のキーとなる情報としてユーザIDを用いる例を示しているが、ユーザプロファイルデータの中から必要な情報を特定できるユーザID以外の情報を利用してもよい。例えば端末となる機器ごとにユニークに割り当てられた機器IDをユーザIDと同様にユーザプロファイルデータで管理することにより、機器IDを本実施の形態におけるユーザIDが果たす役割と同様の役割として利用することが可能である。また例えば中断処理時にユーザプロファイルへ記録されたサービスIDを利用することも可能である。ユーザプロファイルデータ内の情報を特定する手段としてユーザID以外の情報が利用可能であることについては、以下の各実施の形態においても同様である。
(第2の実施の形態)
本実施の形態においては、上記第1の実施の形態に係るシームレスシステム1の変形例について説明する。
図16は、本実施の形態に係るシームレスシステムの構成の例を示すブロック図である。
端末31は、ユーザからの入力を受け付ける入力部31a、ユーザに対して処理の実行データを出力する出力部31b、シームレスシステム18との通信を制御する通信部17を具備する。
シームレスシステム18は、ネットワーク2を経由して端末31と通信可能に接続されており、またサービスを提供するアプリケーション機能19(処理プロセス又はスレッド)と接続されている。なお、アプリケーション機能19は、シームレスシステム18と同一ハードウェア上にあってもよく、別のハードウェア上にあってもよい。アプリケーション機能19とシームレスシステム18とは、ネットワーク2経由で接続されているとしてもよい。
シームレスシステム18は、記録部5、制御部21、最適化部8を具備する。
シームレスシステム18は、記録媒体22に記録されたシームレスプログラム23を読み出し、実行することで、制御部21、最適化部8としての機能を実現する。
本実施の形態において、シームレスプログラム23は、例えば1台のサーバコンピュータ上で動作してもよく、複数のコンピュータ上に分散された状態で連携しつつ動作してもよい。
記録部5は、利用状態データ5bを記録する。
制御部21は、上記第1の実施の形態に係るサービス管理部7と端末接続部6としての機能を含む。
上記のようなシームレスシステム18の概要について説明する。
端末31は、端末31を操作するユーザのユーザIDを含む処理要求と端末の種類とをシームレスシステム18に提供し、自己の種類に応じた形式の処理の実行を要求する。
シームレスシステム18の制御部21は、端末31からの処理要求と端末の種類とを受け付けると、端末31の種類と処理要求とを最適化部8に渡す。
最適化部8は、制御部21から受け付けた端末31の種類に基づいて、処理要求をシームレスシステム18の形式に変換し、制御部21に返す。
制御部21は、利用状態データ5bを参照し、処理要求に含まれているユーザIDに基づいてユーザ認証処理を実行する。
ユーザが認証されない場合、制御部21は、端末31にユーザの認証データを要求する。
制御部21からの認証データの要求に応じて、端末31は、ユーザの認証データをシームレスシステム18に提供する。
シームレスシステム18の制御部21は、端末31から認証データを受け付ける。
制御部21は、認証データに基づいてユーザ認証処理を行う。
制御部21は、ユーザが認証されると、結果を利用状態データ5bに登録し、入出力形式変換後の処理要求と利用状態データ5bとを併せて処理要求を形成し、アプリケーション機能19に渡す。
制御部21によってユーザが認証された場合、アプリケーション機能19は、過去にユーザから処理要求を受けており、受け付けた処理要求に対応する処理がユーザに対して実行されていたことになる。
したがって、アプリケーション機能19は、制御部21によってユーザが認証された場合、受け付けた処理要求に基づいて過去の処理を継続し、過去の処理が終了すると次の処理要求の待ち状態となる。
一方、制御部21は、制御部21によってユーザが認証されない場合、アプリケーションによる認証要求と入出力形式変換後の処理要求をアプリケーション機能19に渡す。
アプリケーション機能19は、制御部21によってユーザが認証されない場合、アプリケーションによる認証要求を制御部21から受け付け、アプリケーションによる認証処理を実行する。
このように、アプリケーションによる認証処理が実行される場合、アプリケーション機能19は、過去にユーザから処理要求を受けてなく、現在受け付けた処理要求に対応する処理がユーザに対して未だ実行されていないことになる。
したがって、アプリケーション機能19は、新たに処理要求に応じた処理を開始し、処理が終了すると次の処理要求の待ち状態になる。
なお、上記の例では、アプリケーションによる認証要求と入出力形式変換後の処理要求とが一度に制御部21からアプリケーション機能19に提供されている。しかしながら、アプリケーションによる認証要求と入出力形式変換後の処理要求とは、別個に制御部21からアプリケーション機能19に提供されてもよい。この場合、アプリケーションによる認証要求に基づいて認証処理が行われた後、制御部21からアプリケーション機能19に入出力形式変換後の処理要求が提供される。
アプリケーション機能19は、処理の実行によって得られる実行データを制御部21に返す。
制御部21は、処理の状態データを利用状態データ5bに格納し、実行データを端末の種類とともに最適化部8に渡す。
最適化部8は、制御部21から受け付けた実行データを端末31の種類に応じた形式に変換し、制御部21に返す。
制御部21は、最適化部8から受け付けた変換後の実行データを端末31に提供する。
端末31は、シームレスシステム18から受け付けた実行データを表示する。
以上説明した本実施の形態においては、ユーザが中断されていた処理をその後容易に引き継ぐことができる。
なお、本実施の形態で説明した各構成要素は、自由に組み合わせてもよく、また複数の要素に分割してもよい。
また、本実施の形態に係る制御部21、最適化部8は、ハードウェアにより実現するとしてもよい。
(第3の実施の形態)
本実施の形態においては、複数の端末間で、ある特定のサービスのみについてシームレス作業環境を提供するシームレスシステムについて説明する。
本実施の形態に係るシームレスシステムの構成は、上記図1と同様とする。
本実施の形態においては、ある特定のサービスのみについてシームレス作業を実現することを目的とする。したがって、本実施の形態に係るシームレスシステムは、ネットワークを介してこの特定のサービスのみと送受信可能に接続されているか、あるいはこの特定のサービスのみをローカルサービスとして保持している。
本実施の形態に係るシームレスシステムでは、提供されるサービスが単数であるため、サービスIDと状態データの管理を省略可能である。
本実施の形態に係るシームレスシステムの詳細動作を、図17〜19を用いて説明する。
なお、この図17〜19では、ユーザ12の端末31によるサービス41の利用が中断され、中断前と異なる端末32で同じサービス41が再び利用される場合を示している。
また、図17〜19については、コンテンツを配信するサービス41を実現する処理の実行が要求されたとして説明を行う。
図20は、ユーザプロファイルデータの内容の遷移状態の例を示す図である。
図17は、端末31の接続からサービス開始までの動作例を示すシーケンス図である。
まず、ユーザ12は、端末31の利用を開始し、端末31を操作してシームレスシステムに接続する。
接続要求を受けた端末接続部は、ユーザ認証処理を行い、接続を要求したユーザ12を特定する。
接続が完了すると、ユーザ12は、端末31を通じて、サービス利用開始要求をシームレスシステムに提供する。サービス利用開始要求は、端末接続部を経由してサービス管理部に提供される。
サービス管理部の開始部は、ユーザ12が利用開始を要求したサービス41によって提供されるコンテンツを取得する。
サービス管理部の開始部は、サービス41を利用するにあたって端末31が保持しなければならない属性データがサービス41から提供された場合に、この属性データを端末31に中継すると共に、ユーザプロファイルデータに登録する。サービス管理部の開始部は、例えば、セッションIDを属性データとしてユーザプロファイルデータに記録する。
この時点でのユーザプロファイルデータの内容は、図20の状態Uとなる。この状態Uでは、項目「サービス属性」の値としてセッションIDが記録される。
端末接続部は、サービス管理部の開始部から提供されるコンテンツを最適化部に提供し、コンテンツを端末31の表示スペックに整合した形態に変換し、端末31に対して変換後のコンテンツを提供する。
端末31では、サービス41からシームレスシステム経由で受け付けたコンテンツを表示する。ユーザ12は、その表示に対して操作を行い、必要に応じて次の画面を要求する。
図18は、ユーザ12が利用中のサービス41を中断する場合の動作例を示すシーケンス図である。
まず、ユーザ12の操作する端末31から中断要求が端末接続部を経由してサービス管理部に提供される。端末31は、中断要求に端末31に保持されていた各種の属性データ(端末属性)を付加し、サービス管理部に提供する。
サービス管理部の中断部は、中断要求に付加された端末属性をユーザプロファイルデータに登録する。なお、端末属性をユーザプロファイルデータで管理することは必須ではない。
この時点でのユーザプロファイルデータの内容は、図20の状態Uとなる。
サービス管理部の中断部は、中断要求を受け付けると、サービス41の中断処理を行う。
次に、サービス管理部の中断部は、中断したサービス41の実行状態に関するデータをユーザプロファイルデータに記録し、中断処理を完了する。
この時点でのユーザプロファイルデータの内容は、図20の状態Uとなる。
サービス41の中断処理が終了した後、ユーザ12はシームレスシステムとサービスを提供するサーバとの間の接続を解除する要求を送信し、端末接続部は、接続を解除する。なお、端末31の電源が切られるなど接続解除要求がシームレスシステムに提供されることなく端末31の利用が終了する場合もある。
図19は、ユーザ12が端末32を利用してサービス41の再開を要求する場合の動作例を示すシーケンス図である。
まず、ユーザ12は端末32を操作して端末接続部に接続要求を提供する。すると、端末接続部はユーザの認証を行う。端末接続部は、サービス41が中断中か否かを端末32に提供するとしてもよい。例えば、ユーザプロファイルデータに属性データが残っている場合、サービス41が中断中と判断される。
次に、ユーザ12は端末32を操作して中断中のサービス41の利用再開を要求すると、利用再開要求が端末接続部を経由してサービス管理部に提供される。
サービス管理部の再開部は、利用再開要求に応じて、ユーザプロファイルデータに登録されている各種の属性データを利用してサービス41にアクセスし、中断直前に表示されたコンテンツの続きとなるコンテンツを取得する。
サービス管理部の再開部は、サービス41からサービス属性が送られてきた場合には、サービス属性をユーザプロファイルデータに記録する。
サービス管理部の再開部は、再開後のコンテンツを端末接続部に提供する。
端末接続部は、最適化部を経由してコンテンツの表示形態の最適化を行い、変換後のコンテンツを端末32に提供する。
以上説明した本実施の形態においては、特定のサービスについてユーザの操作する端末が切り替わった場合に、先の端末での作業状態を後の端末で引き継ぐことができ、サービスの継続を実現できる。これにより、ユーザの作業効率を向上させることができる。
また、本実施の形態においては、上記第1の実施の形態の場合よりも管理項目を削減でき、作業再開のための処理を簡素化できる。
(第4の実施の形態)
本実施の形態においては、複数のサービスの組み合わせを所定の規則にしたがってシーケンシャルに利用する場合に、中断されたサービスからの作業再開を実現する環境を提供するシームレスシステムについて説明する。
本実施の形態では、例えば、ホテルの予約サービスを利用し、ホテルの予約が完了した後に航空券の予約サービスを利用する場合に、航空券の予約サービスが中断されると、ホテルの予約結果を維持し、航空券の予約から作業を再開可能となる。
本実施の形態に係るシームレスシステムの構成としては、上記図1に示すシームレスシステムから中断部を削除した構成が適用される。
本実施の形態に係るシームレスシステムは、シーケンシャルに利用される複数のサービスのうち、中断されたサービスを識別できればよいため、ユーザIDとサービスIDとを管理する。
図21に、本実施の形態に係るユーザプロファイルデータの一例を示す。
本実施の形態に係るシームレスシステムの詳細動作を、図22及び図23を用いて説明する。
なお、この図22及び図23では、ユーザ12の端末31によるサービスの利用が中断され、中断前と異なる端末32により中断されたサービスが再び利用される場合を示している。
図22は、端末31の接続からサービス中断までの動作例を示すシーケンス図である。
まず、ユーザ12は、端末31の利用を開始し、端末31を操作してシームレスシステム1に接続する。
接続要求を受けた端末接続部は、ユーザ認証処理を行い、接続を要求したユーザ12を特定する。
接続が完了すると、ユーザ12は、端末31を通じて、サービスIDとサービス利用開始要求をシームレスコンピュータに提供する。サービスIDとサービス利用開始要求は、端末接続部を経由してサービス管理部に提供される。
サービス管理部の開始部は、ユーザ12が利用開始を要求したサービスがどこにあるか検索・特定し、そのサービスによって提供されるコンテンツを取得する。
サービス管理部の開始部は、ユーザ12の利用しているサービスIDをユーザプロファイルデータに記録する。
上記図21では、この時点でのユーザプロファイルデータ5cの内容が表されている。
さらに、サービス管理部の開始部は、取得したコンテンツを端末接続部に提供する。
端末接続部は、サービス管理部の開始部から提供されたコンテンツを最適化部に提供し、コンテンツを端末31の表示スペックに整合した形態に変換し、端末31に対して変換後のコンテンツを提供する。
端末31では、受け付けたコンテンツを表示する。ユーザ12は、その表示に対して操作を行い、必要に応じて次の画面を要求する。
あるサービスから他のサービスに動作が移行した場合、上記動作が繰り返される。動作があるサービスから他のサービスに切り替わると、ユーザプロファイルデータ5cに切り替わった後のサービスのサービスIDが登録される。本実施の形態においては、ユーザの利用中のサービスを特定するサービスIDが常にユーザプロファイルデータ5cに記録される。
図23は、サービスの中断後、ユーザ12が端末32を利用してサービスの再開を要求する場合の動作例を示すシーケンス図である。
まず、ユーザ12は端末32を操作して端末接続部に接続要求を送信する。
端末接続部は、ユーザプロファイルデータ5cにサービスIDが登録されている場合、このサービスIDを端末32に提供するとしてもよい。
次に、ユーザ12は端末32を操作して中断中のサービスの利用再開を要求すると、利用再開要求が端末接続部を経由してサービス管理部に提供される。
サービス管理部の再開部は、利用再開要求に応じて、ユーザプロファイルデータ5cに登録されているサービスIDの示すサービスにアクセスし、中断直前に表示されたコンテンツの続きとなるコンテンツを取得する。
サービス管理部の再開部は、再開後のコンテンツを端末接続部6に提供する。
端末接続部は、最適化部を経由してコンテンツの表示形態の最適化を行い、変換後のコンテンツを端末32に提供する。
以上説明した本実施の形態においては、複数のサービスを利用する場合に、中断したサービスから作業を開始することができ、ユーザの作業効率を向上させることができる。
(第5の実施の形態)
本実施の形態では、ユーザの操作する端末とかかる端末に対してサービスを提供する処理との間を中継するシームレスシステムについて説明する。
図24は、本実施の形態に係るシームレスシステムの構成の例を示すブロック図である。
シームレスシステム50は、記録部5を具備する。記録部5に記録されているユーザプロファイルデータ58は、ユーザ管理データ58a、状態管理データ58bを含む。
シームレスシステム50は、記録媒体51に記録されているシームレスプログラム52を読み込み、実行することにより、端末接続部55、ユーザ管理部56、データ管理部57、サービス管理部59、書換部60、最適化部8としての機能を実現する。
シームレスプログラム50は、例えば1台のサーバコンピュータ上で動作してもよく、複数のコンピュータ上に分散された状態で連携しつつ動作してもよい。
端末群53の各端末531〜53nは、ネットワーク2経由でシームレスシステム50に接続されている。各端末531〜53nは、それぞれブラウザ541〜54nを具備する。
端末接続部55は、ユーザの操作する端末からの接続要求を受け付け、ユーザを識別し、ユーザ毎にサービスの開始・中断・再開・終了に関する接続管理を行い、サービスの実行データをユーザの操作する端末に提供する。
最適化部8は、端末の種別毎の入力・表示機能のスペックを認識し、サービスによって提供されるコンテンツの表示形態などを接続中の端末に最適化する。
なお、最適化部8については必須の構成要素ではない。例えば、端末の機能に合わせてコンテンツの表示形態などを変換する必要がない場合、最適化部8は省略可能である。
ユーザ管理部56はユーザのプロファイル情報を含むユーザ管理データ58aを管理する。ユーザ管理データ58aには、少なくともユーザを特定するためのユーザIDが含まれる。また、ユーザ管理データ58aには、パスワード又はユーザ特定用のデータ(証明書など)が含まれる。なお、ユーザ管理データ58aは、ユーザID及びパスワードに代えて、サービスの提供先を特定するための他のデータを管理するとしてもよい。以下の場合も同様である。
また、ユーザ管理データ58aは、ユーザのシームレスシステム50の利用状態を示すデータなどを含むとしてもよい。
図25は、ユーザ管理データ58aの具体例を示す図である。ユーザ管理データ58aは、項目「ユーザID」「パスワード」「システムステータス」から構成される。項目「システムステータス」には、ユーザについてシームレスシステム50を利用中か未使用かを表す値が配置される。すなわち、項目「システムステータス」に配置される値は、シームレスシステム50の利用状態を示すデータに相当する。
例えば、図25のユーザ管理データ58aから、ユーザ「A_taro」のパスワードは「A」であり、システムステータスが「利用中」であるため、ユーザ「A_taro」はシームレスシステム50を現在使用中であることが、認識可能である。
上記図24のデータ管理部57は、少なくともユーザ毎のサービスの利用状態を示すデータを含む状態管理データ58bを管理する。
図26は、状態管理データ58bの具体例を示す図である。状態管理データ58bは、項目「ユーザID」「URL」「作業ID」「リクエスト」「リクエスト実行データ」「サービスステータス」から構成される。なお、状態管理データ58bの管理項目に、Webページの識別情報などを加えてもよい。
項目「URL」には、サービスを提供する処理を特定するURLが配置される。この項目「URL」に配置されるURLは、処理識別データに相当する。
項目「サービスステータス」には、ユーザについてサービスの利用状態を示すデータが配置される。すなわち、項目「サービスステータス」には、項目「ユーザID」の示すユーザに対して、項目「URL」の示すサービスがどのような状態であるかを示すデータが配置される。
項目「リクエスト」には、例えば図27に示すような要求を示すデータ61が配置される。この要求を示すデータ61は、端末からシームレスシステム50に対して、ホスト「xxx」のサービス「/xxx.html」を利用するための要求が送られた場合に、シームレスシステム50のサービス管理部59からホスト「xxx」に対して送られる要求を示すデータの一例である。この例は、ホスト「xxx」に対して、サービス「/xxx.html」の実行を求めるHTTPリクエストデータを示した例である。なお、「ホスト」とは、図24のサービス41〜4nを提供するものである。
なお、この図27で示している例では、要求を示すデータ61としてホスト「xxx」に対して送られるHTTPリクエスト全体が状態管理データ58bで管理される場合を示しているが、URLのみが状態管理データ58bで管理されるとしてもよい。
項目「リクエスト実行データ」には、例えば図28に示すような、項目「リクエスト」に配置されている要求を示すデータに対するサービスの実行データ62が配置される。図28の例が示すサービスの実行データ62は、ホスト「xxx」からシームレスシステム50に対して、図27のリクエストを実行した結果として送られるデータの例である。
なお、この図28では、実行データ62としてHTTPレスポンス全体が状態管理データ58bで管理される場合を示しているが、実行データ62は状態管理データ58bで管理されなくてもよい。
項目「作業ID」には、項目「URL」の示すサービスが属する作業(サービスフロー)を示す作業ID(作業識別データ)が管理される。
ここで、作業とは、ある目的のためにユーザが要求した少なくとも一つの処理の流れである。
図29に、作業の例を示す。例えば、飛行機のチケット予約サービスを実行し、ホテル予約サービスを実行するという一連の流れを旅行予約作業とする。
例えば、上記図26の状態管理データ58bから、ユーザ「B_jiro」は、作業「T9876」に属するサービス「http://yyy/yyy.html」を終了しているが、作業「T9876」に属するサービス「http://zzz/zzz.html」を中断してることが、認識可能である。
上記図24のサービス管理部59は、ユーザによって利用が要求されたサービスをネットワーク2上のサービス群4又はローカル環境のサービス9の中から特定し、この特定したサービスによって提供されるコンテンツを取得する。なお、ローカルサービス9及びネットワークサービス群4の各サービスは、少なくとも一つ存在すればよい。
また、サービス管理部59は、開始・中断・再開・終了などのサービスの状態の制御を行い、サービスの状態を示すデータを含む状態管理データ58bをデータ管理部57経由で記録部5に記録する。
書換部60は、シームレスシステム50におけるユーザのサービス利用状態の管理、及びWebブラウザからシームレスシステム50への例えば作業の中断などの要求を、可能とするために、ネットワークサービス群4やローカルサービス9から得たコンテンツ中のハイパーリンク情報を書き換える。
例えば、書換部60は、ネットワークサービス群4やローカルサービス9へのアクセスがシームレスシステム50経由で行われるようにするために、ネットワークサービス群4やローカルサービス9からWebブラウザに提供されるコンテンツ中のハイパーリンク情報を書き換える。このように、コンテンツ中のハイパーリンク情報がシームレスシステム50を経由するように書き換えられることにより、端末とサービスの間で送受信されるコンテンツ又は要求がシームレスシステム50によって中継される。そして、シームレスシステム50を経由して端末がネットワークサービス群4やローカルサービス9へアクセスが行われるため、サービス管理部においてサービスの状態の制御を行うことが可能となり、状態管理データ58bにサービスの状態を管理するデータを記録することが可能となる。
図30は、サービスからWebブラウザに提供される実行データの第1の変換例を示すブロック図である。なお、図30では、シームレスシステム50が「server」という名前の場合を示している。
書換部60は、サービスから提供された変換前の実行データ77の<A>タグに含まれているハイパーリンク「/yyy」を抽出するとともに、ハイパーリンク「/yyy」の示すサービスを提供するホスト名「xxx」を識別する。なお、変換前の実行データ77において、ハイパーリンク情報はhref指定により指定されている。
次に、書換部60は、シームレスシステム50にリクエストを通知するためのURL「http://server/request」と識別したホスト名「xxx」と抽出したハイパーリンク「/yyy」とに基づいて、変換前の実行データ77に含まれている<A>タグの内容を<A HREF=http://server/request?url=http://xxx/yyy>と書き換え、書換後の実行データ77aを作成する。
この書換後の実行データ77aは、最適化部8、端末接続部6を経由して端末に送られる。端末を利用しているユーザが、この書換後の実行データ77aに含まれるハイパーリンクをクリックすることで次に利用したいサービスの利用要求を行うと、その要求はシームレスシステム50に対して通知されることになる。これは、もとのハイパーリンク情報を書き換えてシームレスシステムにリクエストが通知されるようにしたためである。仮にハイパーリンク情報を書き換えずに実行データを端末に送った場合、端末が実行データに含まれるハイパーリンクをクリックすると、シームレスシステム50ではなくホスト「xxx」にリクエストが通知されることとなり、シームレスシステム50でサービスの利用状態を示すデータを得ることができなくなる。
上記の例では、「http://server/request」の部分がシームレスシステム50へのリンク情報である。つまり、コンテンツに含まれる他の処理のアドレス情報(上記の例では「/yyy」)に基づいて、シームレスシステム50自身(自己)のリンク情報を含んだアドレス情報に書き換えているのである。ここで、ホスト名「xxx」の識別する場合には、実行データに対応する要求が機器からシームレスシステム50にされると、その要求には「http://server/request?url=http://xxx/○○○」という情報が含まれているためこのURL情報を一時的に保存(メモリなどにより)しておく。そして、実行データからハイパーリンク「/yyy」が抽出されるとこのURL情報からハイパーリンク「/yyy」の示すサービスを提供するホスト名「xxx」を識別するのである。
図31は、サービスからWebブラウザに提供される実行データの第2の変換例を示すブロック図である。
書換部60は、サービスから提供された変換前の実行データ77の<A>タグに含まれているハイパーリンク「/yyy」を抽出するとともに、ハイパーリンク「/yyy」の示すサービスを提供するホスト名「xxx」と作業ID「1234」を識別する。
次に、書換部60は、シームレスシステム50にリクエストを通知するためのURL「http://server/request」と識別したホスト名「xxx」と抽出したハイパーリンク「/yyy」と識別した作業ID(taskID)「12345」とに基づいて、変換前の実行データ77に含まれている<A>タグの内容を<A HREF=http://server/request?url=http://xxx/yyy&taskid=12345>と書き換え、書換後の実行データ77bを作成する。
図32は、サービスからWebブラウザに提供される実行データの第3の変換例を示すブロック図である。
書換部60は、一括して実行データ77中のURLの基本部分を指定する<BASE>タグを実行データ77に追加記入する。
これにより、サービスから提供された変換前の実行データ77中の各<A>タグの内容を書き換えなくても、シームレスシステム50経由でサービスにアクセスするように実行データ77中のハイパーリンクを変換できる。
図33は、サービスからWebブラウザに提供される実行データの第4の変換例を示すブロック図である。
書換部60は、変換前の実行データ77の<A>タグに含まれているハイパーリンク「/yyy」を抽出し、リンクIDとハイパーリンクとを関係付けたデータ78に基づいて抽出したハイパーリンク「/yyy」をリンクID「L1234」に変換する。なお、本実施の形態では、データ78は記録部5に記録されており、データ管理部57経由でアクセス可能とする。
次に、書換部60は、シームレスシステム50にリクエストを通知するためのURL「http://server/request」とリンクID「L1234」とに基づいて、変換前の実行データ77に含まれている<A>タグの内容を<A HREF=http://server/request?linkid=L1234>と書き換え、書換後の実行データ77dを作成する。
この書換後の実行データ77dが端末に送られた後に、ユーザによるハイパーリンククリックが行われることで新たなサービス利用の要求がなされた場合、サービス管理部59は、端末から端末接続部55経由でリンクIDを受け付けると、データ78に基づいてリンクIDをURLに変換し、このURLの示すサービスに要求を行う。
図34は、サービスからWebブラウザに提供される実行データの第5の変換例を示すブロック図である。
書換部60は、中断要求を行うためのハイパーリンク79を書換前の実行データ77に埋め込み、書換後の実行データ77eを作成する。
また、作業の継続性を記録するために、ハイパーリンク79には作業IDが付加されている。作業IDを付加した書き換えは、ユーザが複数の作業(例えば旅行予約作業と旅行先観光情報収集作業)を並行して実施している場合に、この複数の作業を区別するのに特に有効である。
実行データ77eには、中断要求を行うサスペンドタスク機能が組み込まれている。実行データ77eを表示するブラウザは、中断ボタンが押された場合に、作業ID「112233」の示す作業を中断する要求を、シームレスシステム50に提供する。
このような書換部60の処理により、シームレスシステム50を経由してサービスと端末との間で要求と実行データとが送受信される。
上記のようなシームレスシステム50の動作を、図35〜42を用いて説明する。図35〜42は、時系列にそって継続する一連の動作を表す。
図35及び図36は、ユーザがサービスの利用開始を要求してからコンテンツが表示されるまでの動作を示すシーケンス図である。
まず、ユーザは、端末の利用を開始し、端末を操作してシームレスシステム50に接続する。例えば、シームレスシステム50によって提供されるシームレスサービスを表すURL(アドレス)がユーザによって指定され、この指定されたアドレスに対する接続が要求され、シームレスシステム50への接続が行われる。
接続要求を受けた端末接続部55は、ユーザ認証を行い、接続要求を行っているユーザを認証する。
なお、ユーザ認証の方法には各種の手法が利用できる。例えば、端末接続部55は、接続要求時に端末から受け付けたユーザID及びパスワードが、ユーザ管理部56で管理されているユーザ管理データ58aのユーザID及びパスワードと一致していれば認証を完了する。また、端末接続部55は、電子証明書を用いてユーザの認証を行ってもよい。
次に、端末接続部55は、ユーザ管理部57を用いてユーザ管理データ58aにユーザが利用開始状態になったという情報を登録する。
接続が完了した後、ユーザは端末を操作し、利用したいサービスを指定し、シームレスシステム50に対してサービス利用開始要求を提供する。
サービス利用開始要求は、端末接続部55を経由してサービス管理部59に提供される。
サービス管理部59は、端末から受け付けた要求の内容をチェックする。
サービス管理部59は、受け付けた要求がサービス開始要求の場合、開始対象として指定されているサービスのサービス識別データを取り出す。サービス識別データとしては、例えばネットワークサービスのURLを用いる。また、URLに代えて、サービスを指定するためにシームレスシステム50によって管理されている特定のIDをサービス識別データとして用いてもよい。
次に、サービス管理部59は、データ管理部57を呼び出して端末からの要求を示す情報を状態管理データ58bに記録する。端末からの要求を示す情報としては、例えばURLがある。あるいは、端末からシームレスシステム50に送られたHTTPリクエストデータを用いてもよい。あるいは、端末からの要求を受けて、シームレスシステム50がネットワークサービス群4のサービスを呼び出すときに送るHTTPリクエストデータを用いてもよい。
サービス管理部59は、端末から指定された呼び出し対象のサービスのサービス識別データに基づいて、サービス提供を行っているネットワークサービスのサーバやローカルサービスのサーバに対してサービスを要求する。
例えば、サービス識別データがHTTPプロトコルの指定されたURLの場合、サービス管理部59は、HTTPサーバに対するHTTPリクエストを行う。そして、サービス管理部59は、そのリクエストの応答としてコンテンツを受け付け、データ管理部57を用いてコンテンツを状態管理データ58bに記録する。さらに、サービス管理部59は、利用ステータス等もデータ管理部57を用いて状態管理データ58bに記録する。例えば、端末から指定されたサービスの開始を示す情報が状態管理データ58bに記録される。
次に、書換部60は、コンテンツに中断・再開に関連する情報を埋め込む書換処理を行う。
例えば、ユーザがコンテンツ中のハイパーリンクをクリックする場合に、シームレスシステム50が中断・再開機能を提供するためには、ユーザがハイパーリンクをクリックする時点でシームレスシステム50が呼び出されることが必要となる。
そのために、コンテンツ中のハイパーリンクを書き換え、シームレスシステム50を経由して原コンテンツに指定されていたハイパーリンクを呼び出すように、ハイパーリンクの書き換えを行う。
すなわち、書換部60は、ユーザの操作する端末からシームレスシステム50を経由してサービスを提供する側がアクセスされるように、端末に提供されるコンテンツ中のハイパーリンクを書き換える。
端末接続部55は、書き換え後のコンテンツを書換部60から受け付ける。また、端末接続部55は、最適化部8を呼び出し、端末の表示機能や入力機能に合った形態にハイパーリンクの書き換え後のコンテンツを変換する。そして、端末接続部55は、変換後のコンテンツを端末に提供する。
端末では、提供されたコンテンツを表示する。
ユーザは、そのコンテンツの表示に対して操作を行い、場合によっては次の画面を要求する。
なお、最適化部8の実現手段としては様々な方法が考えられる。例えば、トランスコーディングミドルウェアなどを最適化部8に利用することも可能である。
図37及び図38は、コンテンツ表示後に継続してサービスが呼び出された場合の動作を示すシーケンス図である。提供されたコンテンツ中のハイパーリンクがクリックされ、次のコンテンツ(HTMLページ)が呼び出されるまでの動作がこの図37及び図38に相当する。
端末に表示されているコンテンツは、書換部60によって書き換えられたコンテンツである。そのため、次にユーザにクリックされるハイパーリンクは、原コンテンツに記述されたリンクではなく、シームレスシステム50を経由するように処理されたリンクである。したがって、ユーザは、一般的なHTTPサーバで提供されるネットワークサービスを利用する場合と同様にハイパーリンクをクリックするのみで、シームレスシステム50に対してサービス利用継続を要求することになる。これにより、シームレスシステム50は、端末とネットワークサービスとのやり取りを中継し、中継する時点でユーザの利用するサービスの中断・再開のための情報を取得することが可能となる。
まず、ユーザはハイパーリンクをクリックする。すると、端末から端末接続部55にサービス利用要求が提供される。サービス利用開始要求は、端末接続部55を経由してサービス管理部59に提供される。
サービス管理部59は、端末から受け付けた要求の内容をチェックする。
サービス管理部59は、端末から受け付けた要求がサービス利用要求の場合、サービス識別データを取り出す。この時点で取り出されるサービス識別データは、先の呼び出し時に書換部60によって書き換えられた情報である。この取り出されたサービス識別データは、原コンテンツで指定されていたURLを特定可能な情報である。
次に、サービス管理部59は、データ管理部57を呼び出して端末からの要求を記録する。
図37及び図38において、以降の処理は、上記図35及び図36の場合と同様である。すなわち、サービス管理部59からサービスを提供するネットワークサービスのサーバ又はローカルサービスのサーバに要求が提供され、コンテンツの記録やコンテンツの書き換え等の処理を行った後、コンテンツが端末に提供される。
図39は、上記図38の状態からサービスを中断する場合の動作を示すシーケンス図である。
ユーザは、サービスを中断する時点で、シームレスシステム50に対してサービスの中断要求を提供する。
サービス中断要求は、端末接続部55を経由してサービス管理部59に提供される。サービス管理部59は、端末から提供された要求の内容をチェックする。サービス管理部59は、要求がサービス中断要求の場合、データ管理部57を用いて状態管理データ58bのサービスステータスを中断状態とする。例えば、サービス管理部59は、現在利用中となっているステータスを中断状態に変更する。または、ユーザからの中断要求にサービスIDを含め、サービス管理部59は、中断要求のサービスIDに対応するサービスステータスを中断状態とする。
続いて、ユーザは、利用終了要求をシームレスシステム50に提供する。
利用終了要求は、端末接続部55を経由してサービス管理部59に提供される。サービス管理部59は、端末から提供された要求の内容をチェックする。サービス管理部59は、要求が利用終了要求の場合、ユーザ管理部56を用いてユーザ管理データ58aのシステムステータスを終了状態に更新し、サービスの利用を終了する。
図40から図42までは、上記図35から図39までの動作において中断されたサービスの利用を別の端末から再開する動作を示すシーケンス図である。
まず、ユーザは、上記図35から図39までにおいて用いた端末とは別の端末を用いて、シームレスシステム50に対して接続要求を提供する。すると、上記図35の場合と同様にユーザの認証処理が行われる。
次に、ユーザによって中断中のサービスの再開が要求される。例えば、サービス管理部59は、ユーザの認証後に、中断中のサービスを選択し、シームレスシステム50から端末に返却される画面に中断中のサービスの一覧を含める。ユーザの操作する端末は、中断中のサービスの一覧を表示し、その中からユーザに選択されたサービスについて利用再開を求める。
サービス利用再開要求は、端末から端末接続部55を経由してサービス管理部59に提供される。
サービス管理部59は、データ管理部57を用いてサービスの実行状態に関する状態管理データ58bを取得し、端末から受け付けた要求の内容をチェックする。
サービス管理部59は、受け付けた要求がサービス再開要求の場合、まず、再開対象のサービスの情報を取り出す。再開対象のサービスを特定する方法としては、端末からのサービス再開要求のパラメータとして、サービスを特定するためのサービス識別データを含める方法、中断中のステータスのサービスを再開対象とみなして再開する方法などがある。
次に、サービス管理部59は、取り出した再開対象のサービスの情報に基づいて、再開処理を実行する。
まず、サービス管理部59は、サービスの利用を再開したため、データ管理部57を用いて状態管理データ58bにおける再開対象のサービスのサービスステータスを更新する。
サービス管理部59は、再開処理を実行する。例えば、サービス管理部59は、中断前にネットワークサービスから得たコンテンツの全体(ネットワークサービスから得たHTTPレスポンスの全体)を記録しておき、再開時に記録されていたコンテンツを書換部60による書き換え、最適化部8による端末に合わせた表示最適化を行った後に端末に提供する。
また、例えば、サービス管理部59は、中断前にネットワークサービスに提供したHTTPリクエストを記録しておき、再開時に記録されていたHTTPリクエストをネットワークサービスに対して提供し、ネットワークサービスからコンテンツを取得し、書き換え及び最適化後に端末に提供する。
以上のように本実施の形態では、ある端末の作業を中断し、他の端末で作業を再開する場合に、作業を再開する端末において中断する直前の状態を再現できる。すなわち、Webブラウザを具備する複数の端末間で、サービスを中断・再開させることができる。
また、本実施の形態では、端末側環境として、一般的に流通しているWebブラウザ以外の特別なコンポーネントを追加することなく、ある端末で行っていた作業を他の端末で再開することができる。また、同一端末で時間を隔てて一時中断の後に作業を再開することもできる。したがって、ユーザは、容易かつ迅速に、シームレスシステム50によるシームレスサービスを受けることができる。
また、その機能をパーソナルコンピュータ、PDA、携帯電話など、さまざまな種別の端末に対応して利用することができ、OS(Operating System)が異なっていても利用可能である。
(第6の実施の形態)
図43は、本実施の形態に係るシームレスシステムの構成の例を示すブロック図である。
シームレスシステム63に具備される記録部5には、ユーザ管理データ67a、状態管理データ67bを含むユーザプロファイルデータ58が記録されている。
シームレスシステム63は、記録媒体64に記録されているシームレスプログラム65を読み込み、実行することにより、端末接続部55、状態受付部66、ユーザ管理部56、データ管理部57、サービス管理部68、付加部69、最適化部8としての機能を実現する。
端末群70の各端末701〜70nは、ネットワーク2経由でシームレスシステム63に接続されている。各端末701〜70nは、それぞれブラウザ711〜71nを具備する。
ブラウザ711〜71nは、一般的に流通しているブラウザであり、例えば市販のパーソナルコンピュータにインストールされているブラウザであってもよい。
一般的に流通しているブラウザは、プロキシサーバを設定する機能、クライアントサイドスクリプト機能、クライアントサイドスクリプトを利用してクライアントからサーバに情報を通知する機能、ハイパーリンクのクリック時にハイパーリンクのクリックイベントをアクセス先に通知し、アクセス先に対して情報をアップロードする機能を具備する。
端末からシームレスシステム63にアクセスする場合、ブラウザ711〜71nではプロキシサーバ機能の設定が行われ、シームレスシステム63がプロキシサーバとして設定される。すると、ネットワークサービスやローカルサービスのURLを指定したブラウザ711〜71nからのリクエストは、ブラウザ711〜71nの持つ機能により全て自動的にシームレスシステム63に提供される。
本実施の形態では、ブラウザのプロキシサーバ機能を利用することにより、端末とネットワークサービスの間のやり取りがシームレスシステム63によって中継される。
付加部69は、端末のブラウザの利用状態をシームレスシステム63が取得するための状態通知スクリプトをコンテンツに埋め込む処理を行う。ここで、状態通知スクリプトは、ブラウザに具備されるクライアントサイドスクリプト機能、クライアントサイドスクリプトを利用したクライアントからサーバへの情報通知機能とを用いて、端末の状態をシームレスシステム63に提供するスクリプトである。
コンテンツに状態通知スクリプトを埋め込む(シームレスシステム63が機器の状態情報を自己のシステムに通知する命令を埋め込む)ことにより、ブラウザにおいてユーザによりハイパーリンクがクリックされ、ブラウザの表示対象がクリック時に表示されているページから別のページへ遷移する場合、あるいはブラウザウィンドウを閉じる機能によリウィンドウが閉じられる場合などに、端末からシームレスシステム63に対して、ページが移ったことやウィンドウが閉じられたことなどを示す状態情報が提供される。
状態受付部66は、例えばブラウザにおいてハイパーリンクがクリックされた時又はウィンドウが閉ざされた時など、付加部69において付加された状態通知スクリプトが呼び出された場合に、シームレスシステム63に提供される状態情報を受け付ける。状態受付部66は、その状態情報をサービスステータスとして、データ管理部57を用いて状態管理データ67bに記録する。
以上のような構成を持つシームレスシステム63は、端末とネットワークサービスの間の全リクエストを中継している。このため、どのページが端末側に提供されたかを知ることができる。この全リクエストは図26ではURL(処理識別データに対応)として状態管理データ58bに記録される。
また、シームレスシステム63は、付加部69においてコンテンツに状態通知スクリプトの埋め込みを行うことにより、端末側でウィンドウが閉じたり、他のページに遷移したりすることにより表示されなくなった消失ページを端末側から受け付け、知ることができる。
そして、シームレスシステム63は、端末に提供された全ページと消失ページの差分をとることにより、どのページが端末に表示されているのかを知ることが可能である。
サービス管理部68は、ユーザの端末利用終了時にどのページが表示されていたのかを中断機能により判断し、記録する。また、サービス管理部68は、再開時に、再開機能により中断されたと判断されたページを再度表示する。
図44は、サービスからWebブラウザに提供される結果データの第1の変換例を示すブロック図である。
付加部69は、URL「http://xxx/xxx.html」のページ80を受け付ける。
すると、付加部69は、このページが遷移した場合又はページが閉じた場合にシームレスシステム63の状態受付部66をアクセスするとともにこのページのURL「http://xxx/xxx.html」を端末から状態受付部66に提供するための命令を含む状態通知スクリプトを、URL「http://xxx/xxx.html」のページ80に付加する。
そして付加後のページ80aが端末に提供される。
付加後のページ80aに記載されている「window.open(‘http://server/jyoutaiuketuke?url=http://xxx/xxx.html’)」は、ブラウザ上からこのページ80aが消失すると、URL「/server/jyoutaiuketuke」を読み出すとともに、この消失したページを示すURL「/xxx/xxx.html」を通知する旨の命令である。
図45は、サービスからWebブラウザに提供される結果データの第2の変換例を示すブロック図である。
付加部69は、URL「http://xxx/xxx.html」のページ80が遷移した場合又はページが閉じた場合にシームレスシステム63の状態受付部66をアクセスするとともにこのページを示すページIDを端末から状態受付部66に提供するための命令を含む状態通知スクリプトを、URL「http://xxx/xxx.html」のページ80に付加し、付加後のページ80bを作成する。シームレスシステム63は、受け付けたページIDから、どのページが遷移又は閉じたのか認識できる。
上記のようなシームレスシステム63の動作は、図46〜52で表される。図46〜52は、時系列にそって継続する一連の動作を表す。
図46及び図47は、ユーザがサービスの利用開始を要求してからコンテンツが表示されるまでの動作を示すシーケンス図である。
図48及び図49は、コンテンツ表示後に継続してサービスが呼び出され、この呼出に対するコンテンツが表示されるまでの動作を示すシーケンス図である。
図50は、上記図49の状態から作業を中断する場合の動作を示すシーケンス図である。
図51及び図52は、上記図46から図50までの動作において中断されたサービスの利用を別の端末から再開する動作を示すシーケンス図である。
本実施の形態では、上記第5の実施の形態の場合と異なり、ページ中の全ハイパーリンクを書き換えなくてもよい利点がある。
例えば、クライアントサイドスクリプトを用いて端末側でハイパーリンクが動的に生成される場合がある。このような場合、シームレスシステムを経由するように予めページのハイパーリンクを書き換えて端末に提供することは困難である。しかしながら、本実施の形態では、ブラウザのプロキシサーバ設定機能により、端末からのアクセスは一律にシームレスシステム63経由となる。このため、端末側でハイパーリンクが動的に生成されても、シームレスシステム63によるシームレスサービスを提供することができる。
また、本実施の形態では、複数のウィンドウで複数のページを表示する機能を有するブラウザを用いる場合であっても、シームレスシステム63が各ウィンドウについて状態を認識し、シームレスサービスを提供するため、複数の作業ウィンドウの状態を中断し、再開することができる。
(第7の実施の形態)
本実施の形態では、上記第5の実施の形態に係るシームレスシステム50と上記第6の実施の形態に係るシームレスシステム63とを組み合わせたシームレスシステムについて簡単に説明する。
図53は、本実施の形態に係るシームレスシステムの構成の例を示すブロック図である。
シームレスシステム72は、上記第5の実施の形態に係るシームレスシステム50と上記第6の実施の形態に係るシームレスシステム63の双方の機能を独立に具備するのみではなく、管理しているデータは同一にしている。
このため、ユーザは、例えば携帯電話などを用いて上記第5の実施の形態に対応する動作により作業を開始し、一旦この作業を中断し、その後にデスクトップ型パーソナルコンピュータを用いて上記第6の実施の形態に対応する動作により作業を再開することができる。
すなわち、例えば携帯電話などのように、端末が、プロキシサーバ設定機能、クライアントサイドスクリプト機能、クライアントサイドスクリプトを利用したクライアントからサーバへの情報通知機能を具備しない場合、上記第5の実施の形態に対応する動作によりシームレスサービスを提供できる。
一方、パーソナルコンピュータなどのように、端末が、プロキシサーバ設定機能、クライアントサイドスクリプト機能、クライアントサイドスクリプトを利用したクライアントからサーバへの情報通知機能を具備する場合、上記第6の実施の形態に対応する動作によりハイパーリンク動的生成ページに対して中断再開可能なシームレスサービスを提供できる。
Hereinafter, embodiments of the present invention will be described with reference to the drawings. In the following description, the same parts are denoted by the same reference numerals and description thereof is omitted.
(First embodiment)
The seamless system according to the present embodiment provides an environment that is connected to a network and realizes seamless work among a plurality of terminals.
In the present embodiment, seamless work for a plurality of services is realized between a plurality of terminals.
FIG. 1 is a block diagram illustrating a configuration example of a seamless system according to the present embodiment.
The seamless system 1 is communicably connected to the terminals 31 to 3n of the terminal group 3 via a network 2 such as the Internet. The seamless system 1 is connected to various services 41 to 4n of the network service group 4 via the network 2. Note that the network 2 is not the Internet, and may be another communication network such as a LAN or an intranet.
The seamless system 1 includes a recording unit 5, a terminal connection unit 6, a service management unit 7, and an optimization unit 8.
The seamless system 1 also provides the local service 9 based on the same functions as the various services 41 to 4n of the network service group 4. There is no network 2 between the seamless system 1 and the local service 9. Note that the presence of the local service 9 is not essential, and all the services may be configured as network services. Conversely, all services may be configured as local services.
The seamless system 1 implements functions as a terminal connection unit 6, a service management unit 7, and an optimization unit 8 by reading and executing the seamless program 11 recorded on the recording medium 10.
The seamless program 11 may operate, for example, on one server computer, or may operate while cooperating in a distributed state on a plurality of computers.
The services 41 to 4n and 9 are provided to the user by executing processing by an application, a processing process, an object, a program, or the like.
For example, the services 41 to 4n and 9 include a content distribution service, an application distribution service, a streaming service, an information search service, a document editing service, and various business support services.
In the recording unit 5, user profile data 5a having a role as usage state data is recorded.
FIG. 2 shows an example of the user profile data 5a. In this example, the user profile data 5 a has items “user ID”, “password”, “service ID”, “status data”, and “attribute data”. In the user profile data 5a of FIG. 2, the item “attribute data” is composed of two items “service attribute” and “terminal attribute”. The value of each item managed by the user profile data 5a is associated in units of lines.
The user ID is user identification data of a user who uses any of the services 41 to 4n and 9.
The password is used for user authentication processing together with the user ID.
The service ID (processing identification data) is data for identifying a service used by the user.
The status data indicates the usage status of the service by the user. The status data has values such as “start”, “interrupt”, and “play”.
The attribute data is data shared between the service and the terminal. For example, the attribute data is transmitted and received between the service and the terminal as cookie information.
The service attribute is attribute data held on the service side. Specific examples of the service attribute include a session ID, a bit rate, and data input by the user and provided to the service side.
The terminal attribute is attribute data held on the terminal side. Specific examples of terminal attributes include display image size, delivery time, and data input by the user and used on the terminal side.
The state data and the attribute data are used to realize service restart. In this embodiment, state data and attribute data are used. However, use of these data is not essential, and for example, only state data or only attribute data may be used.
The terminal connection unit 6 includes a data management unit 6a.
The terminal connection unit 6 uses any one of the terminals 31 to 3n, identifies the user who has requested connection based on the user ID and password, and starts, interrupts, resumes, and ends the service for each user. To manage connections. The terminal connection unit 6 may identify the user by other methods. For example, a method using an electronic certificate embedded in an IC card or the like, a method using biometric authentication technology such as fingerprint authentication, A method combining these methods may be used.
The data management unit 6a is shared with the user profile data 5a by the user ID of the received user, the received service ID, the status data indicating the usage status of the service by this user, and the terminal operated by this user and the service. Register attribute data.
The optimization unit 8 selects the specifications of the connected terminal from the input / display specifications for each of the various terminals 31 to 3n, such as the display form of the content provided by the service. Then, the optimization unit 8 converts the data provided to the connected terminal into the selected specification. Thereby, the optimization of the data corresponding to each terminal 31-3n is performed.
The optimization unit 8 may convert the data received from the connected terminal into the data format of the service of the data providing destination.
Various means can be used as means for realizing the optimization unit 8. For example, when the content provided from a certain service is data described in HTML (Hypertext Markup Language) or XML (Extensible Markup Language), translator software called XSLT can be used as the optimization unit 8. Thereby, an HTML or XML tag can be converted into another character string. For example, even if the content before conversion uses a data format that is assumed to be used on a personal computer, the content can be interpreted by browser software installed in a device other than a personal computer such as a mobile phone or a television. Can be converted to
In addition, transcoding middleware or the like can be used for the optimization unit 8.
The service management unit 7 includes a start unit 7a, an interruption unit 7b, and a resumption unit 7c.
The start unit 7a of the service management unit 7 specifies a process for realizing the service requested by the user from among the process for realizing the services 41 to 4n on the network 2 or the process for realizing the local service 9.
In order to specify the processing for realizing the services 41 to 4n, 9, for example, a URL (Universal Resource Locator) used for HTTP communication of a part of a character string included in processing request data provided from the terminal to the seamless system 1 is used. ), And a method for specifying processing on the network 2 by this URL is used.
In addition, the start unit 7a executes the specified process, and acquires execution data obtained by executing the specified process, such as content provided to the user by the content distribution service.
And the start part 7a performs control for providing the execution data until it receives the interruption request | requirement from the terminal which a user operates among the acquired execution data.
When the interruption unit 7b receives an interruption request from the terminal, the interruption unit 7b registers the state data indicating interruption and the user ID in association with the user profile data 5a, and associates the attribute data and the user ID with the user profile data. Register in 5a. For example, time data that has been distributed as stream content, data input by the user before being interrupted, and the like are registered in the user profile data 5a as attribute data.
When the resuming unit 7c receives a user ID and a resumption request, the resuming unit 7c acquires a service ID and state data related to the received user ID based on the user profile data 5a.
In addition, the resuming unit 7c selects a service ID whose status data indicates interruption among the acquired service IDs, acquires execution data after resumption of the service indicated by the selected service ID based on the attribute data, Provided to the calling terminal (corresponding to a resuming device for resuming work).
For example, the resuming unit 7c executes the process based on the attribute data indicating the execution stage of the process before the interruption, obtains the execution data restored to the stage before the interruption, and acquires the execution data after the restart.
For example, the resuming unit 7c may store the execution data immediately before the interruption in the user profile data 5a and provide the saved execution data to the transmission requesting terminal.
Note that the network service group 4 and the local service 9 in FIG. 1 are not essential components, and the seamless system 1 only needs to be able to use either one.
FIG. 3 is a flowchart showing an example of processing of the seamless system 1 according to the present embodiment.
In step R1, the terminal connection unit 6 receives a request from the terminal.
In step R2, the terminal connection unit 6 identifies the user ID and the type of request based on the received request.
In step R3, the terminal connection unit 6 switches the subsequent processing contents according to the type of request.
When it is not interruption and resumption, that is, when the type of request is start, in step R4, the terminal connection unit 6 specifies the service ID.
In step R5, the terminal connection unit 6 registers the user ID and service ID in the user profile data 5a.
In step R6, the start unit 7a acquires service execution data corresponding to the service ID.
In step R7, the terminal connection unit 6 converts the execution data acquired by the start unit 7a into an output form of the terminal using the optimization unit 8.
In step R8, the terminal connection unit 6 provides the converted execution data to the terminal.
If the request type is interruption, the interruption unit 7b identifies the service ID in step R9.
In step R10, the interruption unit 7b registers the status data indicating the interruption of the service corresponding to the service ID in the user profile data 5a.
When the request type is resumption, in step R11, the resuming unit 7c specifies a service ID that is associated with the user ID and whose status data indicates interruption based on the user profile data 5a.
In step R12, the resuming unit 7c acquires the execution data of the service with the specified service ID, and acquires the execution data of the service after the restart based on the attribute data.
In step R13, the terminal connection unit 6 converts the execution data of the restarted service acquired by the resuming unit 7c into the output form of the transmitting terminal of the resuming request using the optimizing unit 8.
In step R14, the terminal connection unit 6 provides the converted execution data of the service to the transmission requesting terminal. Note that FIG. 3 shows the operation corresponding to the request reception from the terminal each time in the process in which the seamless system operates continuously, and after waiting for the END, the state of waiting for the request from the terminal again. In response to the next request from the terminal, the flowchart of FIG. 3 is repeated. In addition, the type of request may be added as a type of request, and if the type of request is complete, the repetition of the flowchart of FIG. 3 may be terminated.
FIG. 4 is a flowchart showing an example of schematic processing of the seamless system 1 according to the present embodiment. FIG. 4 shows the flow of processing when a service start, interruption, or restart is requested.
In step S1, the terminal connection unit 6 receives a user ID and a service ID from a terminal operated by the user.
In step S2, the terminal connection unit 6 includes the user ID and service ID in the user profile data 5a and manages them.
In step S <b> 3, the start unit 7 a acquires service execution data corresponding to the service ID until an interruption request is received from the terminal.
In step S4, the terminal connection unit 6 converts the execution data acquired by the start unit 7a into an output form of the terminal using the optimization unit 8.
In step S5, the terminal connection unit 6 provides the converted execution data to the terminal.
In step S6, the terminal connection unit 6 receives an interruption request from the terminal.
In step S7, the interruption unit 7b registers status data indicating interruption of the service corresponding to the service ID in the user profile data 5a.
In step S8, the terminal connection unit 6 receives a restart request and a user ID.
In step S9, the resuming unit 7c acquires service execution data of the service ID associated with the user ID and indicating that the status data is interrupted based on the user profile data 5a. Get service execution data.
In step S10, the terminal connection unit 6 converts the execution data of the restarted service acquired by the resuming unit 7c into the output form of the calling terminal of the resuming request using the optimizing unit 8.
In step S11, the terminal connection unit 6 provides the execution data of the converted service to the transmission requesting terminal.
Detailed operation of the seamless system 1 as described above will be described with reference to FIGS.
5 to 7 show a case where the use of the service by the terminal 31 is interrupted and the same service is used again by the terminal 32 different from that before the interruption. 5 to 7 will be described on the assumption that execution of processing for realizing the service 41 for distributing content is requested.
FIG. 8 is a diagram illustrating an example of a transition state of the user profile data 5a.
FIG. 5 is a sequence diagram illustrating an operation example from connection of the terminal 31 to service start.
First, the user 12 starts using the terminal 31 and operates the terminal 31 to connect to the seamless system 1.
The terminal connection unit 6 that has received the connection request performs a user authentication process and identifies the user 12 who has requested the connection.
An arbitrary method can be applied to the user authentication process. For example, as user recognition processing, the user ID and password are managed by the user profile data 5a, the user ID and password are received from the terminal 31 at the time of the connection request, the received user ID and password, the user ID and password of the user profile data 5a, If they are consistent, authentication is completed.
Next, the terminal connection unit 6 registers state data indicating that the user 12 is in a use start state in the user profile data 5a. The contents of the user profile data 5a at this time are shown in the state T 1 It becomes.
When the connection is completed, the user 12 provides a service ID and a service use start request to the seamless system 1 through the terminal 31. The service ID and the service use start request are received by the service management unit 7 via the terminal connection unit 6. In FIG. 5, execution of the service 41 is requested by the user 12.
The start unit 7a of the service management unit 7 searches and specifies where the service 41 requested by the user 12 to start use is, and acquires the content provided by the service 41.
For example, when the service 41 is accompanied by a plurality of screen transitions or is a streaming service that continuously provides data that continuously changes over time, the start unit 7a of the service management unit 7 displays the first display content of the content. get.
The start unit 7a of the service management unit 7 records information indicating that the user 12 is using the service 41 in the user profile data 5a. For example, the service ID is recorded in the user profile data 5a. The contents of the user profile data 5a at this time are shown in the state T 2 It becomes.
Further, the start unit 7a of the service management unit 7 relays the attribute data to the terminal 31 when the attribute data that the terminal 31 must hold to use the service 41 is sent from the service 41. Register in the user profile data 5a.
For example, when a service displays a plurality of screens, a method of sharing a session ID between a terminal and a server that provides the service is generally used. When this method is used, a session ID is provided from a server providing a service to a terminal serving as a client. This session ID is recorded in the user profile data 5a as attribute data.
The contents of the user profile data 5a at this time are shown in the state T 3 It becomes. This state T 3 The session ID is recorded as the value of the item “service attribute”.
The terminal connection unit 6 provides the content provided from the start unit 7a of the service management unit 7 to the optimization unit 8, converts the content into a form consistent with the display specifications of the terminal 31, and converts the content to the terminal 31 after conversion. Provide content.
The terminal 31 displays the received content. The user 12 operates the display and requests the next screen depending on the case.
FIG. 6 is a sequence diagram showing an operation example when the service 41 being used by the user 12 is interrupted.
First, an interruption request is provided from the terminal 31 operated by the user 12 to the service management unit 7 via the terminal connection unit 6. The terminal 31 adds various attribute data (terminal attributes) held in the terminal 31 to the interruption request, and provides it to the service management unit 7. For example, the terminal attributes include the display size on the terminal 31 and the playback time of streaming.
The interruption unit 7b of the service management unit 7 registers the terminal attribute added to the interruption request in the user profile data 5a. It is not essential to manage the terminal attributes with the user profile data 5a.
The contents of the user profile data 5a at this time are shown in the state T in FIG. 4 It becomes.
When receiving the interruption request, the interruption unit 7b of the service management unit 7 performs the interruption process of the service 41. Examples of the interruption process of the service 41 include a streaming service reproduction stop process. Depending on the operation contents of the service 41, the interruption process of the service 41 may not be performed if there is no problem.
Next, the interruption unit 7b of the service management unit 7 records data relating to the execution state of the interrupted service 41 in the user profile data 5a. Data related to the execution state of the service includes, for example, playback time data of the streaming service, cookie information used before the interruption in the interrupted service, bit rate, data input by the user, and the like.
The contents of the user profile data 5a at this time are shown in the state T in FIG. 5 It becomes.
The interruption unit 7b of the service management unit 7 registers status data indicating that the service 41 has been interrupted by the user 12 in the user profile data 5a, and completes the interruption process. The content of the user profile data 5a at this time is the state T in FIG. 6 It becomes.
After the interruption process of the service 41 is completed, the terminal 31 operated by the user 12 provides the seamless system 1 with a request for releasing the connection between the seamless system 1 and the server providing the service, and the terminal connection unit 6 Then, state data indicating that the connection state has been canceled for the user 12 is registered in the user profile data 5a.
The contents of the user profile data 5a at this time are shown in the state T in FIG. 7 It becomes.
In addition, state T 7 The change to may be omitted. In this case, state data indicating a state in which the user's operation is interrupted while maintaining the connection without shifting to the connection release state is registered in the user profile data 5a.
In some cases, the use of the terminal 31 is terminated without providing a connection release request to the seamless system 1 such as when the terminal 31 is turned off. In this case, the contents of the user profile data 5a are not changed.
FIG. 7 is a sequence diagram illustrating an example of an operation when the user 12 requests to restart the service 41 using the terminal 32.
First, the user 12 operates the terminal 32 to provide a connection request to the terminal connection unit 6. Then, the terminal connection unit 6 authenticates the user by the same user authentication process as in FIG.
The terminal connection unit 6 registers state data indicating that the disconnected state of the user 12 is released in the user profile data 5a.
The contents of the user profile data 5a at this time are shown in the state T in FIG. 8 It becomes. This state T 8 In this case, the value of the item “status data” is changed from “suspend & disconnect” to “suspend”.
When the user profile data 5a indicates that there is a suspended service, the terminal connection unit 6 may provide the terminal 32 with data indicating which service is suspended. When one user 12 is allowed to have a plurality of interrupted services, the terminal connection unit 6 determines which service is interrupted so that the user 12 can determine which interrupted service to resume. Data indicating whether the service is in progress may be provided to the terminal 32, and processing for causing the user 12 to select a service for requesting resumption of use may be executed.
In addition, the terminal connection unit 6 may provide execution data of all suspended services in order to redisplay all suspended services in a separate window for a terminal capable of multi-window display. .
Next, when the user 12 operates the terminal 32 to request resumption of use of the suspended service, the use resumption request is provided to the service management unit 7 via the terminal connection unit 6.
In response to the use resumption request, the resuming unit 7c of the service management unit 7 selects a suspended service based on the status data of the user profile data 5a, and uses various attribute data registered in the user profile data 5a. Then, the service 41 is accessed, and the content that follows the content displayed immediately before the interruption is acquired.
When the resuming unit 7c of the service management unit 7 receives a service attribute from the service 41, it records the service attribute in the user profile data 5a.
The resuming unit 7c of the service management unit 7 records the status data indicating that the service 41 has been resumed in the user profile data 5a, and provides the resumed content to the terminal connection unit 6.
The content of the user profile data 5a at this time is the state T in FIG. 9 It becomes.
The terminal connection unit 6 optimizes the content display form by the optimization unit 8, and provides the converted content to the terminal 32. Thereby, even if the terminal 31 and the terminal 32 apply different input / output specifications, the execution of the service 41 can be taken over regardless of the difference in the specifications.
FIG. 9 is a block diagram illustrating a first service continuation example by the seamless system 1.
Between the communication software 13 of the terminal before interruption and the terminal connection unit 6 of the seamless system 1, a discrete event is transmitted / received in time and a service is provided.
The terminal connection unit 6 maintains a session used for communication between the communication software 13 of the terminal before interruption and the seamless system 1 even after service interruption.
Input data provided to the seamless system 1 from the communication software 13 of the terminal before the interruption is recorded by the seamless system 1.
When the service is interrupted and then restarted, the restart unit 7c of the seamless system 1 executes the service using the recorded input data, and the terminal connection unit 6 executes using the maintained session. The execution data of the received service is transmitted to the communication software 13 of the transmission terminal of the restart request.
When the execution data immediately before the interruption is registered in the user profile data 5a, the resuming unit 7c acquires the execution data immediately before the interruption, and the terminal connection unit 6 acquires the execution data immediately before the interruption. It may be provided to the transmission requesting terminal.
Thereby, the user can receive the service continuously only by reconnecting to the seamless system 1.
FIG. 10 is a block diagram showing a second service continuation example by the seamless system 1.
Pseudo session management is performed between the browser 14 of the terminal before the interruption and the seamless system 1. When communication is not performed between the browser 14 of the terminal before interruption and the seamless system 1 for a certain period of time, a session timeout occurs.
When the service is interrupted, the terminal connection unit 6 periodically generates a request for session refresh, prevents a session timeout, and maintains the session.
When the service is interrupted and then restarted, the terminal connection unit 6 uses the maintained session to connect to the browser 14 of the calling terminal of the restart request. Thereby, the user can continue using the interrupted service by the browser 14.
FIG. 11 is a block diagram showing a third service continuation example by the seamless system 1.
Between the playback software 15 of the terminal before the interruption and the terminal connection unit 6 of the seamless system 1, events that are temporally continuous are transmitted and received and a service is provided. Here, it is assumed that content for the streaming service is provided from the seamless system 1 to the reproduction software 15.
The terminal connection unit 6 maintains the session between the reproduction software 15 and the seamless system 1 even after service interruption.
The interruption unit 7b of the seamless system 1 records the reproduced points before interruption.
When the streaming service itself has an interruption function, the resuming unit 7c designates a point that has been played back to the streaming service and instructs resumption.
When the streaming service itself does not have an interruption function, the resuming unit 7c once accepts the content from the streaming service, acquires the portion after the played point, and the terminal connection unit 6 performs the processing after the played point. The part is transmitted to the reproduction software 15 of the calling terminal of the restart request.
As shown in FIGS. 12 to 14, the seamless system 1 maintains a session with the service server 4 s that provides a service with the seamless system 1 by the same method as in FIGS. 9 to 11. The service may be continued.
FIG. 15 is a block diagram illustrating an example in which the seamless system 1 according to the present embodiment is applied to a ubiquitous system.
In the ubiquitous system, the communication unit 17 is provided in various devices such as a television 161, a refrigerator 162, a microwave oven 163, a telephone 164, a car navigation device 165, and the like, and these various devices are terminals of a computer network system. Can be used as
By applying the seamless system 1 to such a ubiquitous system, even if the work is interrupted by a certain device, the work can be resumed appropriately, quickly and easily by another device. For example, the work performed on the television 161 can be continued by the telephone 164.
Further, even if the input form and the output form are different, input and output suitable for the device that the user is operating at that time can be performed.
In addition, various devices such as a desktop computer, a portable computer, a mobile phone, a game machine, a PDA (Personal Digital Assistant), and an audio device can be used as a ubiquitous system terminal.
In the present embodiment described above, even if the terminal operated by the user is switched, the service at the previous terminal can be taken over by the subsequent terminal, and the continuation of the service can be realized.
When a task interrupted at one terminal is resumed at another terminal, the input / output device (eg, keyboard, mouse, display, etc.) or display format of the terminal that interrupted the task and the input / output possessed by the terminal that resumes the task The device or display format is not necessarily the same. Even in such a case, in the present embodiment, the optimization unit 8 can provide data suitable for the terminal from the sequence system 1 to the terminal.
Note that each component described in this embodiment may be freely combined or divided into a plurality of elements.
Further, the terminal connection unit 6, the service management unit 7, and the optimization unit 8 according to the present embodiment may be realized by hardware.
In this embodiment, an example is described in which two types of data “service attribute” and “terminal attribute” as shown in FIG. 2 are managed as attribute data. Of these two types of data, Only one may be managed.
For example, when only the service attribute is used, information managed on the terminal side such as the display size on the terminal is lost, but the attribute value of the data provided from the service 41 to the terminal immediately before the interruption is the service attribute. Saved as For this reason, the processing of the service 41 can be resumed. Further, even if the terminal is forcibly disconnected from the network without performing the interruption process and the terminal attribute is not registered in the user profile data 5a, the minimum restart process can be performed.
For example, when only the terminal attribute is used, the information corresponding to the service attribute may be held in the terminal, and the processing of the service 41 is performed by registering the information corresponding to the service attribute from the terminal as the terminal attribute during the interruption process. Can be resumed.
Further, in the present embodiment, as shown in FIG. 2, the state data is managed in the user profile data 5a, but it is not essential to manage the state data. When the status data is not managed, in the restart process of FIG. 7, the service IDs corresponding to the user IDs received from the terminal are all restarted to resume the interrupted process without managing the status data. can do.
In the present embodiment, an example is shown in which information is recorded in user profile data, and a user ID is used as key information for subsequent use when processing is resumed. Information other than the user ID that can specify the information may be used. For example, by managing a device ID uniquely assigned to each device as a terminal using user profile data in the same manner as the user ID, the device ID is used as a role similar to the role played by the user ID in the present embodiment. Is possible. Further, for example, it is possible to use a service ID recorded in the user profile during the interruption process. The fact that information other than the user ID can be used as means for specifying information in the user profile data is the same in the following embodiments.
(Second Embodiment)
In the present embodiment, a modified example of the seamless system 1 according to the first embodiment will be described.
FIG. 16 is a block diagram illustrating an example of a configuration of a seamless system according to the present embodiment.
The terminal 31 includes an input unit 31 a that receives input from the user, an output unit 31 b that outputs processing execution data to the user, and a communication unit 17 that controls communication with the seamless system 18.
The seamless system 18 is communicably connected to the terminal 31 via the network 2, and is connected to an application function 19 (processing process or thread) that provides a service. The application function 19 may be on the same hardware as the seamless system 18 or on different hardware. The application function 19 and the seamless system 18 may be connected via the network 2.
The seamless system 18 includes a recording unit 5, a control unit 21, and an optimization unit 8.
The seamless system 18 implements functions as the control unit 21 and the optimization unit 8 by reading and executing the seamless program 23 recorded on the recording medium 22.
In the present embodiment, the seamless program 23 may operate, for example, on one server computer, or may operate in cooperation with being distributed on a plurality of computers.
The recording unit 5 records usage state data 5b.
The control unit 21 includes functions as the service management unit 7 and the terminal connection unit 6 according to the first embodiment.
The outline of the seamless system 18 will be described.
The terminal 31 provides the seamless system 18 with a processing request including the user ID of the user who operates the terminal 31 and the type of the terminal, and requests execution of processing in a format according to its type.
When the control unit 21 of the seamless system 18 receives the processing request from the terminal 31 and the type of the terminal, the control unit 21 passes the type of the terminal 31 and the processing request to the optimization unit 8.
The optimization unit 8 converts the processing request into the format of the seamless system 18 based on the type of the terminal 31 received from the control unit 21 and returns it to the control unit 21.
The control unit 21 refers to the usage state data 5b and executes user authentication processing based on the user ID included in the processing request.
When the user is not authenticated, the control unit 21 requests user authentication data from the terminal 31.
In response to a request for authentication data from the control unit 21, the terminal 31 provides user authentication data to the seamless system 18.
The control unit 21 of the seamless system 18 receives authentication data from the terminal 31.
The control unit 21 performs user authentication processing based on the authentication data.
When the user is authenticated, the control unit 21 registers the result in the usage state data 5b, forms a processing request by combining the processing request after the input / output format conversion and the usage state data 5b, and passes the processing request to the application function 19. .
When the control unit 21 authenticates the user, the application function 19 has received a processing request from the user in the past, and processing corresponding to the received processing request has been executed for the user.
Therefore, when the user is authenticated by the control unit 21, the application function 19 continues the past process based on the accepted process request, and waits for the next process request when the past process ends.
On the other hand, when the user is not authenticated by the control unit 21, the control unit 21 passes the authentication request by the application and the processing request after the input / output format conversion to the application function 19.
If the user is not authenticated by the control unit 21, the application function 19 receives an authentication request from the application from the control unit 21 and executes an authentication process by the application.
Thus, when the authentication process by the application is executed, the application function 19 has not received a process request from the user in the past, and the process corresponding to the currently accepted process request has not yet been executed for the user. become.
Therefore, the application function 19 newly starts processing according to the processing request, and when processing is completed, the application function 19 waits for the next processing request.
In the above example, the authentication request by the application and the processing request after the input / output format conversion are provided from the control unit 21 to the application function 19 at a time. However, the authentication request by the application and the processing request after the input / output format conversion may be separately provided from the control unit 21 to the application function 19. In this case, after the authentication process is performed based on the authentication request by the application, the control unit 21 provides the application function 19 with the process request after the input / output format conversion.
The application function 19 returns execution data obtained by executing the process to the control unit 21.
The control unit 21 stores the processing status data in the usage status data 5b, and passes the execution data to the optimization unit 8 together with the type of terminal.
The optimization unit 8 converts the execution data received from the control unit 21 into a format corresponding to the type of the terminal 31 and returns it to the control unit 21.
The control unit 21 provides the converted execution data received from the optimization unit 8 to the terminal 31.
The terminal 31 displays the execution data received from the seamless system 18.
In the present embodiment described above, the process for which the user has been interrupted can be easily taken over thereafter.
Note that each component described in this embodiment may be freely combined or divided into a plurality of elements.
In addition, the control unit 21 and the optimization unit 8 according to the present embodiment may be realized by hardware.
(Third embodiment)
In the present embodiment, a seamless system that provides a seamless work environment for only a specific service among a plurality of terminals will be described.
The configuration of the seamless system according to the present embodiment is the same as that in FIG.
The purpose of this embodiment is to realize seamless work for only a specific service. Therefore, the seamless system according to the present embodiment is connected so as to be able to transmit and receive only this specific service via the network, or holds only this specific service as a local service.
In the seamless system according to the present embodiment, since a single service is provided, management of the service ID and state data can be omitted.
Detailed operation of the seamless system according to the present embodiment will be described with reference to FIGS.
17 to 19 show a case where the use of the service 41 by the terminal 31 of the user 12 is interrupted and the same service 41 is used again by the terminal 32 different from that before the interruption.
17 to 19 will be described on the assumption that execution of processing for realizing the service 41 for distributing contents is requested.
FIG. 20 is a diagram illustrating an example of the transition state of the contents of the user profile data.
FIG. 17 is a sequence diagram illustrating an operation example from connection of the terminal 31 to service start.
First, the user 12 starts using the terminal 31 and operates the terminal 31 to connect to the seamless system.
Upon receiving the connection request, the terminal connection unit performs user authentication processing and identifies the user 12 who has requested connection.
When the connection is completed, the user 12 provides a service use start request to the seamless system through the terminal 31. The service use start request is provided to the service management unit via the terminal connection unit.
The start unit of the service management unit acquires content provided by the service 41 requested by the user 12 to start use.
When the attribute data that the terminal 31 must hold when using the service 41 is provided from the service 41, the start unit of the service management unit relays the attribute data to the terminal 31 and registers it in the user profile data To do. For example, the start unit of the service management unit records the session ID as attribute data in the user profile data.
The content of the user profile data at this point is the state U in FIG. 1 It becomes. This state U 1 The session ID is recorded as the value of the item “service attribute”.
The terminal connection unit provides the content provided from the start unit of the service management unit to the optimization unit, converts the content into a form consistent with the display specifications of the terminal 31, and provides the converted content to the terminal 31 To do.
The terminal 31 displays the content received from the service 41 via the seamless system. The user 12 operates the display and requests the next screen as necessary.
FIG. 18 is a sequence diagram illustrating an operation example when the service 41 being used by the user 12 is interrupted.
First, an interruption request is provided from the terminal 31 operated by the user 12 to the service management unit via the terminal connection unit. The terminal 31 adds various attribute data (terminal attributes) held in the terminal 31 to the interruption request and provides it to the service management unit.
The interruption unit of the service management unit registers the terminal attribute added to the interruption request in the user profile data. Note that it is not essential to manage terminal attributes with user profile data.
The content of the user profile data at this point is the state U in FIG. 2 It becomes.
When the interruption unit of the service management unit receives the interruption request, the interruption unit of the service 41 performs interruption processing.
Next, the interruption unit of the service management unit records data on the execution state of the interrupted service 41 in the user profile data, and completes the interruption process.
The content of the user profile data at this point is the state U in FIG. 3 It becomes.
After the interruption process of the service 41 is completed, the user 12 transmits a request for releasing the connection between the seamless system and the server that provides the service, and the terminal connection unit releases the connection. Note that use of the terminal 31 may end without providing a connection release request to the seamless system, such as when the terminal 31 is turned off.
FIG. 19 is a sequence diagram illustrating an operation example when the user 12 requests the restart of the service 41 using the terminal 32.
First, the user 12 operates the terminal 32 to provide a connection request to the terminal connection unit. Then, the terminal connection unit authenticates the user. The terminal connection unit may provide the terminal 32 with whether or not the service 41 is suspended. For example, when the attribute data remains in the user profile data, it is determined that the service 41 is interrupted.
Next, when the user 12 operates the terminal 32 to request resumption of use of the suspended service 41, the use resumption request is provided to the service management unit via the terminal connection unit.
In response to the use resumption request, the resuming unit of the service management unit accesses the service 41 using various attribute data registered in the user profile data, and selects content that is a continuation of the content displayed immediately before the interruption. get.
When the service attribute is sent from the service 41, the resuming unit of the service management unit records the service attribute in the user profile data.
The restart unit of the service management unit provides the resumed content to the terminal connection unit.
The terminal connection unit optimizes the display form of the content via the optimization unit, and provides the converted content to the terminal 32.
In the present embodiment described above, when the terminal operated by the user for a specific service is switched, the work state at the previous terminal can be taken over by the subsequent terminal, and the service can be continued. Thereby, a user's working efficiency can be improved.
Further, in the present embodiment, management items can be reduced as compared with the case of the first embodiment, and processing for resuming work can be simplified.
(Fourth embodiment)
In the present embodiment, a seamless system that provides an environment for resuming work from an interrupted service when a combination of a plurality of services is used sequentially according to a predetermined rule will be described.
In the present embodiment, for example, when the hotel reservation service is used and the air ticket reservation service is used after the hotel reservation is completed, if the air ticket reservation service is interrupted, the hotel reservation result is displayed. Maintaining and resuming work from airline ticket booking.
As a configuration of the seamless system according to the present embodiment, a configuration in which the interruption unit is deleted from the seamless system shown in FIG. 1 is applied.
The seamless system according to the present embodiment only needs to be able to identify an interrupted service among a plurality of services used sequentially, and therefore manages a user ID and a service ID.
FIG. 21 shows an example of user profile data according to the present embodiment.
Detailed operation of the seamless system according to the present embodiment will be described with reference to FIGS.
22 and 23 show a case where the use of the service by the terminal 31 of the user 12 is interrupted and the service interrupted by the terminal 32 different from that before the interruption is used again.
FIG. 22 is a sequence diagram illustrating an operation example from connection of the terminal 31 to service interruption.
First, the user 12 starts using the terminal 31 and operates the terminal 31 to connect to the seamless system 1.
Upon receiving the connection request, the terminal connection unit performs user authentication processing and identifies the user 12 who has requested connection.
When the connection is completed, the user 12 provides a service ID and a service use start request to the seamless computer through the terminal 31. The service ID and the service use start request are provided to the service management unit via the terminal connection unit.
The start unit of the service management unit searches and specifies where the service that the user 12 requested to start using is, and acquires content provided by the service.
The start unit of the service management unit records the service ID used by the user 12 in the user profile data.
FIG. 21 shows the contents of the user profile data 5c at this point.
Furthermore, the start unit of the service management unit provides the acquired content to the terminal connection unit.
The terminal connection unit provides the content provided from the start unit of the service management unit to the optimization unit, converts the content into a form consistent with the display specifications of the terminal 31, and provides the converted content to the terminal 31 To do.
The terminal 31 displays the received content. The user 12 operates the display and requests the next screen as necessary.
When the operation shifts from one service to another service, the above operation is repeated. When the service is switched from one service to another, the service ID of the service after switching to the user profile data 5c is registered. In the present embodiment, the service ID that identifies the service being used by the user is always recorded in the user profile data 5c.
FIG. 23 is a sequence diagram illustrating an operation example when the user 12 uses the terminal 32 to request a service restart after the service is interrupted.
First, the user 12 operates the terminal 32 to transmit a connection request to the terminal connection unit.
The terminal connection unit may provide the service ID to the terminal 32 when the service ID is registered in the user profile data 5c.
Next, when the user 12 operates the terminal 32 to request resumption of use of the suspended service, the use resumption request is provided to the service management unit via the terminal connection unit.
In response to the use resumption request, the resumption unit of the service management unit accesses the service indicated by the service ID registered in the user profile data 5c, and acquires content that is a continuation of the content displayed immediately before the interruption.
The resuming unit of the service management unit provides the resumed content to the terminal connection unit 6.
The terminal connection unit optimizes the display form of the content via the optimization unit, and provides the converted content to the terminal 32.
In the present embodiment described above, when a plurality of services are used, the work can be started from the interrupted service, and the user's work efficiency can be improved.
(Fifth embodiment)
In the present embodiment, a seamless system that relays between a terminal operated by a user and a process of providing a service to the terminal will be described.
FIG. 24 is a block diagram showing an example of the configuration of the seamless system according to the present embodiment.
The seamless system 50 includes a recording unit 5. The user profile data 58 recorded in the recording unit 5 includes user management data 58a and state management data 58b.
The seamless system 50 reads and executes the seamless program 52 recorded on the recording medium 51, thereby executing a terminal connection unit 55, a user management unit 56, a data management unit 57, a service management unit 59, a rewriting unit 60, and an optimization. The function as the unit 8 is realized.
The seamless program 50 may operate, for example, on one server computer or may operate in cooperation with being distributed on a plurality of computers.
The terminals 531 to 53n of the terminal group 53 are connected to the seamless system 50 via the network 2. Each terminal 531 to 53n includes a browser 541 to 54n, respectively.
The terminal connection unit 55 receives a connection request from a terminal operated by the user, identifies the user, performs connection management regarding the start / interruption / resumption / termination of the service for each user, and operates the service execution data by the user Provide to the terminal.
The optimization unit 8 recognizes the specifications of the input / display function for each type of terminal, and optimizes the display form of the content provided by the service for the connected terminal.
Note that the optimization unit 8 is not an essential component. For example, the optimization unit 8 can be omitted when it is not necessary to convert the display form of the content in accordance with the function of the terminal.
The user management unit 56 manages user management data 58a including user profile information. The user management data 58a includes at least a user ID for specifying a user. The user management data 58a includes a password or user specifying data (such as a certificate). Note that the user management data 58a may manage other data for specifying a service providing destination instead of the user ID and password. The same applies to the following cases.
Further, the user management data 58a may include data indicating the usage state of the user's seamless system 50.
FIG. 25 is a diagram showing a specific example of the user management data 58a. The user management data 58a includes items “user ID”, “password”, and “system status”. In the item “system status”, a value indicating whether the seamless system 50 is used or unused for the user is arranged. That is, the value arranged in the item “system status” corresponds to data indicating the usage state of the seamless system 50.
For example, from the user management data 58a of FIG. 25, since the password of the user “A_taro” is “A” and the system status is “in use”, the user “A_taro” is currently using the seamless system 50. Is recognizable.
The data management unit 57 in FIG. 24 manages the state management data 58b including data indicating at least the service usage state for each user.
FIG. 26 is a diagram illustrating a specific example of the state management data 58b. The state management data 58b includes items “user ID”, “URL”, “work ID”, “request”, “request execution data”, and “service status”. Note that Web page identification information or the like may be added to the management items of the state management data 58b.
In the item “URL”, a URL specifying a process for providing a service is arranged. The URL arranged in this item “URL” corresponds to process identification data.
In the item “service status”, data indicating the usage status of the service for the user is arranged. That is, in the item “service status”, data indicating the state of the service indicated by the item “URL” is arranged for the user indicated by the item “user ID”.
In the item “request”, for example, data 61 indicating a request as shown in FIG. 27 is arranged. The data 61 indicating this request is the service management unit 59 of the seamless system 50 when a request for using the service “/xxx.html” of the host “xxx” is sent from the terminal to the seamless system 50. 4 is an example of data indicating a request transmitted from the host to the host “xxx”. In this example, the HTTP request data for requesting the host “xxx” to execute the service “/xxx.html” is shown. The “host” provides the services 41 to 4n shown in FIG.
In the example shown in FIG. 27, the entire HTTP request sent to the host “xxx” as the request data 61 is managed by the state management data 58b, but only the URL is in the state. It may be managed by the management data 58b.
In the item “request execution data”, for example, service execution data 62 for data indicating a request arranged in the item “request” as shown in FIG. 28 is arranged. The service execution data 62 shown in the example of FIG. 28 is an example of data transmitted as a result of executing the request of FIG. 27 from the host “xxx” to the seamless system 50.
FIG. 28 shows a case where the entire HTTP response is managed by the state management data 58b as the execution data 62, but the execution data 62 may not be managed by the state management data 58b.
In the item “work ID”, a work ID (work identification data) indicating a work (service flow) to which the service indicated by the item “URL” belongs is managed.
Here, the work is at least one processing flow requested by the user for a certain purpose.
FIG. 29 shows an example of work. For example, a series of flow of executing an airplane ticket reservation service and executing a hotel reservation service is a travel reservation work.
For example, from the state management data 58b of FIG. 26, the user “B_jiro” has finished the service “http: //yyy/yyy.html” belonging to the work “T9876”, but the service belonging to the work “T9876”. It can be recognized that "http: //zzzz/zzzz.html" is interrupted.
The service management unit 59 in FIG. 24 identifies the service requested to be used by the user from the service group 4 on the network 2 or the service 9 in the local environment, and acquires the content provided by the identified service. . Note that it is sufficient that at least one of the local service 9 and the network service group 4 exists.
In addition, the service management unit 59 controls the service state such as start / interruption / resumption / termination, and records the state management data 58b including data indicating the service state in the recording unit 5 via the data management unit 57. .
The rewrite unit 60 manages the service usage status of the user in the seamless system 50, and makes requests from the Web browser to the seamless system 50, for example, interruption of work, from the network service group 4 and the local service 9. Rewrite the hyperlink information in the obtained content.
For example, the rewriting unit 60 includes content in the content provided from the network service group 4 or the local service 9 to the web browser so that the network service group 4 or the local service 9 is accessed via the seamless system 50. Rewrite hyperlink information. In this way, the hyperlink information in the content is rewritten so as to pass through the seamless system 50, whereby the content or request transmitted / received between the terminal and the service is relayed by the seamless system 50. Since the terminal accesses the network service group 4 and the local service 9 via the seamless system 50, the service management unit can control the service status, and the service status is stored in the status management data 58b. Can be recorded.
FIG. 30 is a block diagram illustrating a first conversion example of execution data provided from a service to a Web browser. FIG. 30 shows a case where the seamless system 50 is named “server”.
The rewrite unit 60 extracts the hyperlink “/ yyy” included in the <A> tag of the execution data 77 before conversion provided from the service, and provides the service indicated by the hyperlink “/ yyy”. The name “xxx” is identified. In the execution data 77 before conversion, the hyperlink information is designated by href designation.
Next, the rewriting unit 60, based on the URL “http: // server / request” for notifying the seamless system 50 of the request, the identified host name “xxx” and the extracted hyperlink “/ yyy”, The content of the <A> tag included in the execution data 77 before conversion is expressed as <A HREF = http: // server / request? url = http: // xxx / yyy> is rewritten, and execution data 77a after rewriting is created.
The rewritten execution data 77 a is sent to the terminal via the optimization unit 8 and the terminal connection unit 6. When the user using the terminal clicks on the hyperlink included in the rewritten execution data 77a and makes a use request for a service to be used next, the request is notified to the seamless system 50. It will be. This is because the request is notified to the seamless system by rewriting the original hyperlink information. If the execution data is sent to the terminal without rewriting the hyperlink information, when the terminal clicks on the hyperlink included in the execution data, the request is notified to the host “xxx” instead of the seamless system 50, and the seamless system At 50, data indicating the usage status of the service cannot be obtained.
In the above example, the “http: // server / request” portion is the link information to the seamless system 50. That is, the address information including the link information of the seamless system 50 itself (self) is rewritten based on the address information (“/ yyy” in the above example) of other processing included in the content. Here, when the host name “xxx” is identified, when a request corresponding to the execution data is made from the device to the seamless system 50, the request includes “http: // server / request? Url = http: // Since the information “/ xxx / xxx” is included, the URL information is temporarily saved (by a memory or the like). When the hyperlink “/ yyy” is extracted from the execution data, the host name “xxx” that provides the service indicated by the hyperlink “/ yyy” is identified from the URL information.
FIG. 31 is a block diagram illustrating a second conversion example of execution data provided from a service to a Web browser.
The rewrite unit 60 extracts the hyperlink “/ yyy” included in the <A> tag of the execution data 77 before conversion provided from the service, and provides the service indicated by the hyperlink “/ yyy”. The name “xxx” and the work ID “1234” are identified.
Next, the rewrite unit 60 identifies the host name “xxx” identified as the URL “http: // server / request” for notifying the seamless system 50 of the request and the work ID identified as the extracted hyperlink “/ yyy”. Based on (taskID) “12345”, the content of the <A> tag included in the execution data 77 before conversion is changed to <A HREF = http: // server / request? url = http: // xxx / yyy & taskid = 12345> is rewritten, and rewritten execution data 77b is created.
FIG. 32 is a block diagram illustrating a third conversion example of execution data provided from a service to a Web browser.
The rewriting unit 60 collectively fills in the execution data 77 with a <BASE> tag that designates the basic portion of the URL in the execution data 77 at once.
Thereby, the hyperlink in the execution data 77 can be converted so that the service is accessed via the seamless system 50 without rewriting the contents of each <A> tag in the execution data 77 before conversion provided by the service. .
FIG. 33 is a block diagram illustrating a fourth conversion example of execution data provided from a service to a Web browser.
The rewrite unit 60 extracts the hyperlink “/ yyy” included in the <A> tag of the execution data 77 before conversion, and extracts the hyperlink based on the data 78 that associates the link ID with the hyperlink. “/ Yyy” is converted into a link ID “L1234”. In the present embodiment, the data 78 is recorded in the recording unit 5 and can be accessed via the data management unit 57.
Next, the rewriting unit 60 is included in the execution data 77 before conversion based on the URL “http: // server / request” and the link ID “L1234” for notifying the seamless system 50 of the request. The content of the <A> tag is <A HREF = http: // server / request? Rewrite linkid = L1234> to create execution data 77d after rewriting.
After the rewritten execution data 77d is sent to the terminal, when a new service usage request is made by the user performing a hyperlink click, the service management unit 59 sends the terminal via the terminal connection unit 55. When the link ID is received, the link ID is converted into a URL based on the data 78, and a request is made to the service indicated by the URL.
FIG. 34 is a block diagram illustrating a fifth conversion example of execution data provided from a service to a Web browser.
The rewriting unit 60 embeds a hyperlink 79 for making a suspension request in the execution data 77 before rewriting, and creates execution data 77e after rewriting.
In order to record the continuity of work, a work ID is added to the hyperlink 79. Rewriting with a work ID is particularly effective for distinguishing between a plurality of tasks when the user is performing a plurality of tasks (for example, a travel reservation task and a travel destination tourist information collection task) in parallel. .
The execution data 77e incorporates a suspend task function for making a suspension request. The browser displaying the execution data 77e provides the seamless system 50 with a request to suspend the work indicated by the work ID “112233” when the suspend button is pressed.
By such processing of the rewriting unit 60, the request and execution data are transmitted and received between the service and the terminal via the seamless system 50.
The operation of the seamless system 50 as described above will be described with reference to FIGS. 35 to 42 show a series of operations that continue along the time series.
FIG. 35 and FIG. 36 are sequence diagrams showing operations from when a user requests to start using a service until content is displayed.
First, the user starts using the terminal and operates the terminal to connect to the seamless system 50. For example, a URL (address) representing a seamless service provided by the seamless system 50 is designated by the user, a connection to the designated address is requested, and the connection to the seamless system 50 is performed.
Upon receiving the connection request, the terminal connection unit 55 performs user authentication and authenticates the user who has made the connection request.
Various methods can be used as the user authentication method. For example, the terminal connection unit 55 completes the authentication if the user ID and password received from the terminal at the time of the connection request match the user ID and password of the user management data 58a managed by the user management unit 56. The terminal connection unit 55 may perform user authentication using an electronic certificate.
Next, the terminal connection unit 55 uses the user management unit 57 to register information indicating that the user has started to use the user management data 58a.
After the connection is completed, the user operates the terminal, designates a service to be used, and provides a service use start request to the seamless system 50.
The service use start request is provided to the service management unit 59 via the terminal connection unit 55.
The service management unit 59 checks the content of the request received from the terminal.
When the received request is a service start request, the service management unit 59 extracts service identification data of the service specified as the start target. For example, a network service URL is used as the service identification data. Further, instead of the URL, a specific ID managed by the seamless system 50 for designating a service may be used as the service identification data.
Next, the service management unit 59 calls the data management unit 57 and records information indicating a request from the terminal in the state management data 58b. An example of information indicating a request from a terminal is a URL. Alternatively, HTTP request data sent from the terminal to the seamless system 50 may be used. Alternatively, HTTP request data sent when the seamless system 50 calls a service of the network service group 4 in response to a request from the terminal may be used.
Based on the service identification data of the service to be called designated from the terminal, the service management unit 59 requests a service from the network service server or the local service server that provides the service.
For example, when the service identification data is a URL for which the HTTP protocol is specified, the service management unit 59 makes an HTTP request to the HTTP server. Then, the service management unit 59 receives the content as a response to the request, and records the content in the state management data 58b using the data management unit 57. Further, the service management unit 59 records the usage status and the like in the state management data 58 b using the data management unit 57. For example, information indicating the start of the service designated from the terminal is recorded in the state management data 58b.
Next, the rewriting unit 60 performs a rewriting process in which information related to suspension / resumption is embedded in the content.
For example, when the user clicks on a hyperlink in the content, in order for the seamless system 50 to provide a suspend / resume function, the seamless system 50 needs to be called when the user clicks on the hyperlink. .
Therefore, the hyperlink is rewritten so that the hyperlink in the content is rewritten and the hyperlink specified in the original content is called via the seamless system 50.
In other words, the rewriting unit 60 rewrites the hyperlink in the content provided to the terminal so that the service providing side is accessed via the seamless system 50 from the terminal operated by the user.
The terminal connection unit 55 receives the rewritten content from the rewriting unit 60. In addition, the terminal connection unit 55 calls the optimization unit 8 and converts the content after rewriting the hyperlink into a form suitable for the display function and input function of the terminal. Then, the terminal connection unit 55 provides the converted content to the terminal.
The terminal displays the provided content.
The user performs an operation on the display of the content, and in some cases, requests the next screen.
Various methods are conceivable as means for realizing the optimization unit 8. For example, transcoding middleware or the like can be used for the optimization unit 8.
FIG. 37 and FIG. 38 are sequence diagrams showing an operation when a service is continuously called after content display. The operation until the hyperlink in the provided content is clicked and the next content (HTML page) is called corresponds to FIG. 37 and FIG.
The content displayed on the terminal is the content rewritten by the rewriting unit 60. Therefore, the next hyperlink clicked by the user is not a link described in the original content but a link processed through the seamless system 50. Therefore, the user requests the seamless system 50 to continue using the service only by clicking on the hyperlink as in the case of using a network service provided by a general HTTP server. Thereby, the seamless system 50 can relay the exchange between the terminal and the network service, and can acquire information for suspending / resuming the service used by the user at the time of relaying.
First, the user clicks on a hyperlink. Then, a service use request is provided from the terminal to the terminal connection unit 55. The service use start request is provided to the service management unit 59 via the terminal connection unit 55.
The service management unit 59 checks the content of the request received from the terminal.
When the request received from the terminal is a service use request, the service management unit 59 extracts service identification data. The service identification data extracted at this time is information rewritten by the rewriting unit 60 at the time of the previous call. The extracted service identification data is information that can identify the URL specified in the original content.
Next, the service management unit 59 calls the data management unit 57 to record a request from the terminal.
In FIG. 37 and FIG. 38, the subsequent processing is the same as in the case of FIG. 35 and FIG. That is, a request is provided from the service management unit 59 to a network service server or a local service server that provides a service, and after performing processing such as content recording and content rewriting, the content is provided to the terminal.
FIG. 39 is a sequence diagram showing an operation when the service is interrupted from the state of FIG.
The user provides a service interruption request to the seamless system 50 when the service is interrupted.
The service interruption request is provided to the service management unit 59 via the terminal connection unit 55. The service management unit 59 checks the content of the request provided from the terminal. If the request is a service interruption request, the service management unit 59 uses the data management unit 57 to set the service status of the state management data 58b to the interruption state. For example, the service management unit 59 changes the currently used status to a suspended state. Alternatively, the service management unit 59 includes the service ID in the interruption request from the user, and sets the service status corresponding to the service ID of the interruption request to the interruption state.
Subsequently, the user provides a use termination request to the seamless system 50.
The use termination request is provided to the service management unit 59 via the terminal connection unit 55. The service management unit 59 checks the content of the request provided from the terminal. When the request is a usage termination request, the service management unit 59 updates the system status of the user management data 58a to the termination state using the user management unit 56, and terminates the use of the service.
FIGS. 40 to 42 are sequence diagrams showing an operation of resuming the use of the service interrupted in the operations of FIGS. 35 to 39 from another terminal.
First, the user provides a connection request to the seamless system 50 using a terminal different from the terminals used in FIGS. Then, the user authentication process is performed as in the case of FIG.
Next, the user is requested to resume the suspended service. For example, the service management unit 59 selects a suspended service after user authentication, and includes a list of suspended services on the screen returned from the seamless system 50 to the terminal. The terminal operated by the user displays a list of interrupted services, and requests the user to resume the use of the service selected by the user.
The service use resumption request is provided from the terminal to the service management unit 59 via the terminal connection unit 55.
The service management unit 59 uses the data management unit 57 to acquire the status management data 58b related to the service execution status, and checks the content of the request received from the terminal.
When the received request is a service restart request, the service management unit 59 first extracts information on the service to be restarted. As a method for specifying the service to be resumed, including service identification data for identifying the service as a parameter of a service resume request from the terminal, a method for resuming a service with a suspended status as a resume target, etc. There is.
Next, the service management unit 59 executes a restart process based on the extracted information on the service to be restarted.
First, since the use of the service has been resumed, the service management unit 59 uses the data management unit 57 to update the service status of the service to be resumed in the state management data 58b.
The service management unit 59 executes a restart process. For example, the service management unit 59 records the entire content obtained from the network service before the interruption (the entire HTTP response obtained from the network service), and rewrites the content recorded at the time of resumption by the rewriting unit 60. After the optimization unit 8 optimizes the display according to the terminal, it is provided to the terminal.
For example, the service management unit 59 records the HTTP request provided to the network service before the interruption, provides the HTTP request recorded at the time of restart to the network service, and acquires the content from the network service. Provided to the terminal after rewriting and optimization.
As described above, in the present embodiment, when the operation of a certain terminal is interrupted and the operation is resumed at another terminal, the state immediately before the interruption can be reproduced at the terminal that resumes the operation. That is, the service can be interrupted / resumed between a plurality of terminals equipped with a Web browser.
Further, in this embodiment, as a terminal-side environment, an operation performed on a certain terminal can be resumed on another terminal without adding a special component other than a commonly distributed Web browser. . It is also possible to resume work after a temporary interruption at the same terminal at intervals. Therefore, the user can receive seamless service by the seamless system 50 easily and quickly.
Further, the function can be used in correspondence with various types of terminals such as personal computers, PDAs, and mobile phones, and can be used even if the OS (Operating System) is different.
(Sixth embodiment)
FIG. 43 is a block diagram illustrating an example of a configuration of a seamless system according to the present embodiment.
In the recording unit 5 provided in the seamless system 63, user profile data 58 including user management data 67a and state management data 67b is recorded.
The seamless system 63 reads and executes the seamless program 65 recorded on the recording medium 64, whereby a terminal connection unit 55, a state reception unit 66, a user management unit 56, a data management unit 57, a service management unit 68, and an addition Functions as the unit 69 and the optimization unit 8 are realized.
Each terminal 701 to 70 n of the terminal group 70 is connected to the seamless system 63 via the network 2. Each of the terminals 701 to 70n includes browsers 711 to 71n, respectively.
The browsers 711 to 71n are generally distributed browsers, and may be browsers installed in commercially available personal computers, for example.
Generally distributed browsers have a function to set a proxy server, a client-side script function, a function to notify a client to a server using a client-side script, and a hyperlink click event when a hyperlink is clicked. A function of notifying the access destination and uploading information to the access destination is provided.
When accessing the seamless system 63 from a terminal, the proxy server function is set in the browsers 711 to 71n, and the seamless system 63 is set as a proxy server. Then, all the requests from the browsers 711 to 71n specifying the URL of the network service or local service are automatically provided to the seamless system 63 by the functions of the browsers 711 to 71n.
In this embodiment, the seamless system 63 relays the exchange between the terminal and the network service by using the proxy server function of the browser.
The adding unit 69 performs processing for embedding a status notification script for the seamless system 63 to acquire the usage status of the browser of the terminal in the content. Here, the status notification script is a script that provides the terminal system status to the seamless system 63 using the client side script function provided in the browser and the information notification function from the client to the server using the client side script. .
By embedding the status notification script in the content (the seamless system 63 embeds a command for notifying the device status information to its own system), the user clicks on the hyperlink in the browser, and the display target of the browser is displayed when clicked. When a transition is made from one page to another, or when a browser window is closed by a function that closes the browser window, the page is moved from the terminal to the seamless system 63, or the window is closed. Status information indicating is provided.
The state reception unit 66 is a state provided to the seamless system 63 when the state notification script added by the addition unit 69 is called, for example, when a hyperlink is clicked in the browser or a window is closed. Accept information. The state reception unit 66 records the state information as a service status in the state management data 67b using the data management unit 57.
The seamless system 63 having the above configuration relays all requests between the terminal and the network service. For this reason, it is possible to know which page is provided to the terminal side. In FIG. 26, all requests are recorded in the state management data 58b as URLs (corresponding to process identification data).
In addition, the seamless system 63 embeds a status notification script in the content in the adding unit 69, so that a lost page that is no longer displayed when the window is closed on the terminal side or transitions to another page is displayed on the terminal side. You can accept and know.
Then, the seamless system 63 can know which page is displayed on the terminal by taking the difference between all the pages provided to the terminal and the lost page.
The service management unit 68 uses the interruption function to determine and record which page was displayed when the user finished using the terminal. In addition, the service management unit 68 displays again the page determined to be interrupted by the restart function when restarting.
FIG. 44 is a block diagram illustrating a first conversion example of result data provided from a service to a Web browser.
The adding unit 69 receives the page 80 of the URL “http: //xxx/xxx.html”.
Then, the addition unit 69 accesses the state reception unit 66 of the seamless system 63 when the page is changed or the page is closed, and the URL “http: //xxx/xxx.html” of the page is received from the terminal. A state notification script including an instruction to be provided to the state reception unit 66 is added to the page 80 of the URL “http: //xxx/xxx.html”.
Then, the added page 80a is provided to the terminal.
“Window.open ('http: // server / jyutaiukeke? Url = http: //xxx/xxx.html')” described in the page 80a after the addition is displayed when the page 80a disappears from the browser. This is an instruction to read out the URL “/ server / jyoutaiukeke” and notify the URL “/xxx/xxx.html” indicating the lost page.
FIG. 45 is a block diagram illustrating a second conversion example of result data provided from a service to a Web browser.
The addition unit 69 accesses the state reception unit 66 of the seamless system 63 when the page 80 of the URL “http: //xxx/xxx.html” transitions or the page is closed, and sets a page ID indicating this page. A status notification script including an instruction to be provided from the terminal to the status reception unit 66 is added to the page 80 of the URL “http: //xxx/xxx.html”, and the added page 80b is created. The seamless system 63 can recognize which page has transitioned or closed from the received page ID.
The operation of the seamless system 63 as described above is represented in FIGS. 46 to 52 show a series of operations that continue along the time series.
46 and 47 are sequence diagrams showing operations from when the user requests to start using the service until the content is displayed.
FIG. 48 and FIG. 49 are sequence diagrams showing operations until a service is continuously called after content display and content for this call is displayed.
FIG. 50 is a sequence diagram showing an operation when the operation is interrupted from the state of FIG.
51 and 52 are sequence diagrams showing an operation of resuming use of the service interrupted in the operations of FIGS. 46 to 50 from another terminal.
Unlike the fifth embodiment, this embodiment has an advantage that it is not necessary to rewrite all hyperlinks in the page.
For example, a hyperlink may be dynamically generated on the terminal side using a client side script. In such a case, it is difficult to rewrite the hyperlink of the page in advance so as to pass through the seamless system and provide it to the terminal. However, in the present embodiment, access from the terminal is uniformly via the seamless system 63 by the proxy server setting function of the browser. For this reason, even if a hyperlink is dynamically generated on the terminal side, a seamless service by the seamless system 63 can be provided.
In this embodiment, even when a browser having a function of displaying a plurality of pages in a plurality of windows is used, the seamless system 63 recognizes the state of each window and provides a seamless service. The working window state can be suspended and resumed.
(Seventh embodiment)
In the present embodiment, a seamless system obtained by combining the seamless system 50 according to the fifth embodiment and the seamless system 63 according to the sixth embodiment will be briefly described.
FIG. 53 is a block diagram showing an example of the configuration of the seamless system according to the present embodiment.
The seamless system 72 not only has the functions of both the seamless system 50 according to the fifth embodiment and the seamless system 63 according to the sixth embodiment independently, but the managed data is the same. I have to.
For this reason, the user starts work by an operation corresponding to the fifth embodiment using a mobile phone or the like, for example, temporarily stops the work, and then uses the desktop personal computer to The operation can be resumed by the operation corresponding to the embodiment.
That is, when the terminal does not have a proxy server setting function, a client-side script function, and a client-to-server information notification function using a client-side script, such as a mobile phone, for example, the fifth embodiment is used. Seamless services can be provided by corresponding operations.
On the other hand, when the terminal has a proxy server setting function, a client-side script function, and a client-to-server information notification function using a client-side script, such as a personal computer, it corresponds to the sixth embodiment. By performing the operation, a seamless service that can be suspended and resumed for a hyperlink dynamically generated page can be provided.

Claims (27)

機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データとを対応付けた利用状態データを管理する管理部と、
前記処理識別データの示す処理の再開を実現するために用いられる再開実現データを前記利用状態データに登録する保存部と、
再開要求と前記ユーザ識別データを受け付けた場合に、前記利用状態データに基づいて、前記ユーザ識別データに対応する前記処理識別データと前記再開実現データとを取得し、前記再開実現データに基づいて得られる前記処理識別データの示す処理の実行結果を、前記再開要求の発信機器に提供する再開部と
を具備するシームレスシステム。
A management unit that manages usage state data in which user identification data received from a device is associated with processing identification data indicating processing requested to be executed by the device;
A storage unit that registers resumption realizing data used for realizing resumption of the process indicated by the process identification data in the usage state data;
When the resumption request and the user identification data are received, the processing identification data and the resumption realization data corresponding to the user identification data are obtained based on the usage state data, and obtained based on the resumption realization data. A seamless system comprising: a resuming unit that provides the execution result of the process indicated by the process identification data to the transmitting device of the resuming request.
請求項1記載のシームレスシステムにおいて、
前記再開実現データは、前記処理を再開する再開ポイントを示すデータを含み、
前記再開部は、前記再開ポイント以降の前記処理の実行結果を、前記再開要求の発信機器に提供する
ことを特徴とするシームレスシステム。
The seamless system according to claim 1,
The resumption realizing data includes data indicating a resumption point for resuming the processing,
The said restart part provides the execution result of the said process after the said restart point to the transmission apparatus of the said restart request | requirement, The seamless system characterized by the above-mentioned.
請求項1記載のシームレスシステムにおいて、
前記再開実現データは、前記機器と前記処理との間で共用される属性データを含み、
前記再開部は、前記属性データを用いて前記再開要求の発信機器と前記処理との関係を、前記機器において中断イベントが発生する前の前記機器と前記処理との関係とすることを特徴とするシームレスシステム。
The seamless system according to claim 1,
The restart realizing data includes attribute data shared between the device and the process,
The resuming unit uses the attribute data to set a relationship between the transmission requesting device of the resumption request and the processing as a relationship between the device and the processing before an interruption event occurs in the device. Seamless system.
請求項1記載のシームレスシステムにおいて、
前記保存部は、前記機器において中断イベントが発生した場合に前記処理を中断した旨を示す状態データを前記利用状態データに登録し、
前記再開部は、前記中断イベント発生後に前記再開要求と前記ユーザ識別データを受け付けた場合に、前記利用状態データの中から、前記ユーザ識別データに対応し前記状態データが中断を示す再開用の処理識別データと再開用の再開実現データとを取得し、前記再開用の再開実現データに基づいて得られる前記再開用の処理識別データの示す処理の実行結果を、前記再開要求の発信機器に提供する
ことを特徴とするシームレスシステム。
The seamless system according to claim 1,
The storage unit registers state data indicating that the processing is interrupted in the usage state data when an interruption event occurs in the device,
The resuming unit, when the resumption request and the user identification data are received after the occurrence of the interruption event, the resuming process in which the state data corresponds to the user identification data from the use state data and indicates the interruption The identification data and the resumption realizing data for resumption are acquired, and the execution result of the process indicated by the resuming process identification data obtained based on the resumption realizing data for resumption is provided to the transmission device of the resumption request A seamless system characterized by that.
請求項1記載のシームレスシステムにおいて、
前記機器と前記再開要求の発信機器と前記処理のうちの少なくとも一つから受け付けたコンテンツの形式を、提供先の形式に変換する最適化部をさらに具備する
ことを特徴とするシームレスシステム。
The seamless system according to claim 1,
A seamless system, further comprising: an optimization unit configured to convert a format of content received from at least one of the device, the transmission device of the restart request, and the processing into a format of a provision destination.
機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データとを対応付けた利用状態データを管理する管理部と、
再開要求と前記ユーザ識別データを受け付けた場合に、前記利用状態データに基づいて、前記ユーザ識別データに対応する前記処理識別データを取得し、前記処理識別データの示す処理の実行結果を、前記再開要求の発信機器に提供する再開部と
を具備するシームレスシステム。
A management unit that manages usage state data in which user identification data received from a device is associated with processing identification data indicating processing requested to be executed by the device;
When the resumption request and the user identification data are received, the process identification data corresponding to the user identification data is acquired based on the usage state data, and the execution result of the process indicated by the process identification data is obtained as the resumption A seamless system comprising a resuming unit that provides a requesting transmission device.
機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データとを対応付けた利用状態データを管理する管理部と、
前記機器において中断イベントが発生した場合に、前記処理識別データの示す処理を中断した旨を示す状態データを前記利用状態データに登録する保存部と、
再開要求と前記ユーザ識別データを受け付けた場合に、前記利用状態データの中から、前記ユーザ識別データに対応し前記状態データが中断を示す再開用の処理識別データを取得し、前記再開用の処理識別データの示す処理の実行結果を、前記再開要求の発信機器に提供する再開部と
を具備するシームレスシステム。
A management unit that manages usage state data in which user identification data received from a device is associated with processing identification data indicating processing requested to be executed by the device;
A storage unit that registers, in the usage state data, state data indicating that the processing indicated by the processing identification data is interrupted when an interruption event occurs in the device;
When the resumption request and the user identification data are received, the resumption process identification data corresponding to the user identification data corresponding to the user identification data is acquired from the use state data, and the resumption process is performed. A seamless system comprising: a resuming unit that provides an execution result of the process indicated by the identification data to the resuming request transmitting device.
機器から受け付けたユーザ識別データを利用状態データに登録する管理部と、
所定の処理の再開を実現するために用いられる再開実現データを、前記ユーザ識別データと対応付けて前記利用状態データに登録する保存部と、
再開要求と前記ユーザ識別データを受け付けた場合に、前記利用状態データに基づいて、前記ユーザ識別データに対応する前記再開実現データを取得し、前記再開実現データに基づいて得られる前記処理の実行結果を、前記再開要求の発信機器に提供する再開部と
を具備するシームレスシステム。
A management unit for registering user identification data received from the device in usage state data;
A storage unit for registering resumption realizing data used for realizing resumption of predetermined processing in the usage state data in association with the user identification data;
When the resumption request and the user identification data are received, the resumption realization data corresponding to the user identification data is acquired based on the usage state data, and the execution result of the processing obtained based on the resumption realization data And a resuming unit that provides the resuming request transmission device to the transmitting device.
請求項8記載のシームレスシステムにおいて、
前記再開実現データは、前記処理を再開する再開ポイントを示すデータを含み、
前記再開部は、前記再開ポイント以降の前記処理の実行結果を、前記再開要求の発信機器に提供する
ことを特徴とするシームレスシステム。
The seamless system according to claim 8, wherein
The resumption realizing data includes data indicating a resumption point for resuming the processing,
The said restart part provides the execution result of the said process after the said restart point to the transmission apparatus of the said restart request | requirement, The seamless system characterized by the above-mentioned.
請求項8記載のシームレスシステムにおいて、
前記再開実現データは、前記機器と前記処理との間で共用される属性データを含み、
前記再開部は、前記属性データを用いて前記再開要求の発信機器と前記処理との関係を、前記機器において中断イベントが発生する前の前記機器と前記処理との関係とする
ことを特徴とするシームレスシステム。
The seamless system according to claim 8, wherein
The restart realizing data includes attribute data shared between the device and the process,
The resuming unit uses the attribute data to set a relationship between the transmission requesting device of the resumption request and the processing as a relationship between the device and the processing before an interruption event occurs in the device. Seamless system.
機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データとを対応付けた利用状態データを管理する管理部と、
前記機器に提供されるコンテンツに他の処理のアドレス情報が含まれる場合に、前記アドレス情報に基づいて前記アドレス情報を自己のシステムのリンク情報を含んだアドレス情報に書き換える書換部と
を具備し、
前記管理部は、前記書換部に書き換えられたアドレス情報に基づいて前記処理識別データを受信すると受信情報を前記利用状態データとして保存し、前記機器から処理の再開要求と前記ユーザ識別データを受け付けると前記利用状態データに基づいて前記ユーザ識別データに対応する処理の再開を行う
ことを特徴とするシームレスシステム。
A management unit that manages usage state data in which user identification data received from a device is associated with processing identification data indicating processing requested to be executed by the device;
A rewriting unit that rewrites the address information to address information including link information of its own system based on the address information when the content provided to the device includes address information of another process;
When the management unit receives the process identification data based on the address information rewritten by the rewrite unit, the management unit stores the received information as the usage state data, and receives a process restart request and the user identification data from the device. A seamless system, wherein processing corresponding to the user identification data is resumed based on the usage state data.
機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データと前記処理の状態情報とを対応付けた利用状態データを管理する管理部と、
前記機器に提供されるコンテンツに前記機器の前記状態情報を自己のシステムに通知する命令を埋め込む付加部と
を具備し、
前記管理部は、前記機器から前記状態情報を受け付けた場合は前記利用状態データに登録し、再開要求と前記ユーザ識別データを受け付けた場合は前記利用状態データに基づいて、前記ユーザ識別データに対応する処理の再開を行う
ことを特徴とするシームレスシステム。
A management unit that manages usage status data in which user identification data received from a device, processing identification data indicating processing requested to be executed by the device, and status information of the processing are associated with each other;
An additional unit that embeds a command for notifying the system of the status information of the device in content provided to the device;
The management unit registers in the usage status data when the status information is received from the device, and responds to the user identification data based on the usage status data when the restart request and the user identification data are received. A seamless system characterized by resuming processing to be performed.
機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データと前記処理の状態情報とを対応付けた利用状態データを管理する管理部と、
前記機器に提供されるコンテンツに他の処理のアドレス情報が含まれる場合に、前記アドレス情報に基づいて前記アドレス情報を自己のシステムのリンク情報を含んだアドレス情報に書き換える書換部と、
前記機器に提供されるコンテンツに前記機器の前記状態情報を自己のシステムに通知する命令を埋め込む付加部と
を具備し、
前記管理部は、前記書換部に書き換えられたアドレス情報に基づいて前記処理識別データを受信すると受信情報を前記利用状態データとして保存し、前記機器から前記状態情報を受け付けた場合は前記利用状態データに登録し、前記機器から処理の再開要求と前記ユーザ識別データを受け付けると前記利用状態データに基づいて前記ユーザ識別データに対応する前記処理識別データと前記機器からの処理の再開を行うと共に、前記利用状態データに基づいて、前記ユーザ識別データに対応する処理の再開を行う
ことを特徴とするシームレスシステム。
A management unit that manages usage status data in which user identification data received from a device, processing identification data indicating processing requested to be executed by the device, and status information of the processing are associated with each other;
A rewriting unit that rewrites the address information to address information including link information of its own system based on the address information when the content provided to the device includes address information of other processing;
An additional unit that embeds a command for notifying the system of the status information of the device in content provided to the device;
When the management unit receives the processing identification data based on the address information rewritten by the rewriting unit, the management unit stores the received information as the usage state data. When the state information is received from the device, the management state data When the process restart request and the user identification data are received from the device, the process identification data corresponding to the user identification data and the process are restarted from the device based on the usage state data, and A seamless system characterized by resuming processing corresponding to the user identification data based on usage state data.
コンピュータを、
機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データとを対応付けた利用状態データを管理する手段、
前記処理識別データの示す処理の再開を実現するために用いられる再開実現データを前記利用状態データに登録する手段、
再開要求と前記ユーザ識別データを受け付けた場合に、前記利用状態データに基づいて、前記ユーザ識別データに対応する前記処理識別データと前記再開実現データとを取得し、前記再開実現データに基づいて得られる前記処理識別データの示す処理の実行結果を、前記再開要求の発信機器に提供する手段
として機能させるためのプログラムを記録する記録媒体。
Computer
Means for managing usage state data in which user identification data received from a device is associated with processing identification data indicating processing requested to be executed by the device;
Means for registering resumption realizing data used for realizing resumption of the process indicated by the process identification data in the use state data;
When the resumption request and the user identification data are received, the processing identification data and the resumption realization data corresponding to the user identification data are obtained based on the usage state data, and obtained based on the resumption realization data. The recording medium which records the program for functioning as a means to provide the execution result of the process which the said process identification data shows to the transmission apparatus of the said restart request | requirement.
コンピュータを、
機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データとを対応付けた利用状態データを管理する手段、
再開要求と前記ユーザ識別データを受け付けた場合に、前記利用状態データに基づいて、前記ユーザ識別データに対応する前記処理識別データを取得し、前記処理識別データの示す処理の実行結果を、前記再開要求の発信機器に提供する手段
として機能させるためのプログラムを記録する記録媒体。
Computer
Means for managing usage state data in which user identification data received from a device is associated with processing identification data indicating processing requested to be executed by the device;
When the resumption request and the user identification data are received, the process identification data corresponding to the user identification data is acquired based on the usage state data, and the execution result of the process indicated by the process identification data is obtained as the resumption A recording medium for recording a program for functioning as a means for providing to a request transmitting device.
コンピュータを、
機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データとを対応付けた利用状態データを管理する手段、
前記機器において中断イベントが発生した場合に、前記処理識別データの示す処理を中断した旨を示す状態データを前記利用状態データに登録する手段、
再開要求と前記ユーザ識別データを受け付けた場合に、前記利用状態データの中から、前記ユーザ識別データに対応し前記状態データが中断を示す再開用の処理識別データを取得し、前記再開用の処理識別データの示す処理の実行結果を、前記再開要求の発信機器に提供する手段
として機能させるためのプログラムを記録する記録媒体。
Computer
Means for managing usage state data in which user identification data received from a device is associated with processing identification data indicating processing requested to be executed by the device;
Means for registering status data indicating that processing indicated by the processing identification data has been interrupted in the usage status data when an interruption event occurs in the device;
When the resumption request and the user identification data are received, the resumption process identification data corresponding to the user identification data corresponding to the user identification data is acquired from the use state data, and the resumption process is performed. A recording medium for recording a program for causing an execution result of a process indicated by identification data to function as means for providing the restarting request transmitting device.
コンピュータを、
機器から受け付けたユーザ識別データを利用状態データに登録する手段、
所定の処理の再開を実現するために用いられる再開実現データを、前記ユーザ識別データと対応付けて前記利用状態データに登録する手段、
再開要求と前記ユーザ識別データを受け付けた場合に、前記利用状態データに基づいて、前記ユーザ識別データに対応する前記再開実現データを取得し、前記再開実現データに基づいて得られる前記処理の実行結果を、前記再開要求の発信機器に提供する手段
として機能させるためのプログラムを記録する記録媒体。
Computer
Means for registering user identification data received from the device in usage status data;
Means for registering resumption realizing data used for realizing resumption of predetermined processing in the usage state data in association with the user identification data;
When the resumption request and the user identification data are received, the resumption realization data corresponding to the user identification data is acquired based on the usage state data, and the execution result of the processing obtained based on the resumption realization data Is a recording medium for recording a program for functioning as a means for providing the request to the transmission device of the restart request.
コンピュータを動作させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体において、
前記プログラムは、
機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データと前記機器からの処理の実行要求を示す情報とを対応付けた利用状態データを管理させる管理手段、
前記機器に提供されるコンテンツに他の処理のアドレス情報が含まれる場合に、前記アドレス情報に基づいて前記アドレス情報を自己のシステムのリンク情報を含んだアドレス情報に書き換えさせる書換手段
を具備し、
前記管理手段は、前記書換手段により書き換えられたアドレス情報に基づいて前記機器から処理の実行要求を示す情報を受信すると受信情報を前記利用状態データとして保存させ、前記機器から処理の再開要求を受けると前記利用状態データに基づいて処理の再開を行う
ことを特徴とするプログラムを記録する記録媒体。
In a computer-readable recording medium recording a program for operating a computer,
The program is
A management unit that manages usage status data in which user identification data received from a device, process identification data indicating a process requested to be executed by the device, and information indicating a process execution request from the device are associated with each other;
In the case where the content provided to the device includes address information of other processing, rewriting means for rewriting the address information into address information including link information of its own system based on the address information,
When the management unit receives information indicating a process execution request from the device based on the address information rewritten by the rewrite unit, the management unit stores the received information as the usage state data and receives a process restart request from the device. And a recording medium for recording the program, wherein the processing is restarted based on the usage state data.
コンピュータを動作させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体において、
前記プログラムは、
機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データと前記処理の利用状態情報とを対応付けた利用状態データを管理させる管理手段、
前記機器に提供されるコンテンツに前記機器の前記利用状態情報を自己のシステムに通知する命令を埋め込む付加手段を具備し、
前記管理手段は、前記機器から前記利用状態情報を受け付けた場合は前記利用状態データに登録させ、再開要求と前記ユーザ識別データを受け付けた場合は前記利用状態データに基づいて、前記ユーザ識別データに対応する処理の再開を行うことを特徴とするプログラムを記録する記録媒体。
In a computer-readable recording medium recording a program for operating a computer,
The program is
Management means for managing usage status data in which user identification data received from a device, processing identification data indicating processing requested to be executed by the device, and usage status information of the processing are associated with each other;
Adding means for embedding a command for notifying the system of the usage status information of the device in the content provided to the device;
The management unit registers the usage status information in the usage status data when the usage status information is received from the device. The recording medium which records the program characterized by restarting a corresponding process.
コンピュータを動作させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体において、
前記プログラムは、
機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データと前記処理の状態情報とを対応付けた利用状態データを管理させる管理手段、
前記機器に提供されるコンテンツに他の処理のアドレス情報が含まれる場合に、前記アドレス情報に基づいて前記アドレス情報を自己のシステムのリンク情報を含んだアドレス情報に書き換えさせる書換手段、
前記機器に提供されるコンテンツに前記機器の前記状態情報を自己のシステムに通知する命令を埋め込みさせる付加手段
を具備し、
前記管理手段は、前記書換手段に書き換えられたアドレス情報に基づいて前記処理識別データを受信すると受信情報を前記利用状態データとして保存させ、前記機器から前記状態情報を受け付けた場合は前記利用状態データに登録させ、前記機器から処理の再開要求と前記ユーザ識別データを受け付けると前記利用状態データに基づいて、前記ユーザ識別データに対応する処理の再開を行う
ことを特徴とするプログラムを記録する記録媒体。
In a computer-readable recording medium recording a program for operating a computer,
The program is
Management means for managing usage status data in which user identification data received from a device, processing identification data indicating processing requested to be executed by the device, and status information of the processing are associated with each other;
Rewriting means for rewriting the address information to address information including link information of its own system based on the address information when the content provided to the device includes address information of other processing;
Adding means for embedding a command for notifying the system of the status information of the device in content provided to the device;
When the management means receives the processing identification data based on the address information rewritten by the rewriting means, the management means stores the received information as the usage status data, and when the status information is received from the device, the usage status data Recording a program for recording a program characterized in that when a process resumption request and the user identification data are received from the device, the process corresponding to the user identification data is resumed based on the usage state data .
機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データとを対応付けた利用状態データを管理し、
前記処理識別データの示す処理の再開を実現するために用いられる再開実現データを前記利用状態データに登録し、
再開要求と前記ユーザ識別データを受け付けた場合に、前記利用状態データに基づいて、前記ユーザ識別データに対応する前記処理識別データと前記再開実現データとを取得し、前記再開実現データに基づいて得られる前記処理識別データの示す処理の実行結果を、前記再開要求の発信機器に提供する
ことを特徴とするコンピュータシステムの処理継続方法。
Managing usage status data in which user identification data received from a device is associated with processing identification data indicating processing requested to be executed by the device;
Register resumption realizing data used to realize resumption of the process indicated by the process identification data in the use state data;
When the resumption request and the user identification data are received, the processing identification data and the resumption realization data corresponding to the user identification data are obtained based on the usage state data, and obtained based on the resumption realization data. A process continuation method of a computer system, characterized in that the execution result of the process indicated by the process identification data is provided to a transmission device of the restart request.
機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データとを対応付けた利用状態データを管理し、
再開要求と前記ユーザ識別データを受け付けた場合に、前記利用状態データに基づいて、前記ユーザ識別データに対応する前記処理識別データを取得し、前記処理識別データの示す処理の実行結果を、前記再開要求の発信機器に提供する
ことを特徴とするコンピュータシステムの処理継続方法。
Managing usage status data in which user identification data received from a device is associated with processing identification data indicating processing requested to be executed by the device;
When the resumption request and the user identification data are received, the process identification data corresponding to the user identification data is acquired based on the usage state data, and the execution result of the process indicated by the process identification data is obtained as the resumption A computer system processing continuation method, characterized in that the processing system is provided to a request transmitting device.
機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データとを対応付けた利用状態データを管理し、
前記機器において中断イベントが発生した場合に、前記処理識別データの示す処理を中断した旨を示す状態データを前記利用状態データに登録し、
再開要求と前記ユーザ識別データを受け付けた場合に、前記利用状態データの中から、前記ユーザ識別データに対応し前記状態データが中断を示す再開用の処理識別データを取得し、前記再開用の処理識別データの示す処理の実行結果を、前記再開要求の発信機器に提供する
ことを特徴とするコンピュータシステムの処理継続方法。
Managing usage status data in which user identification data received from a device is associated with processing identification data indicating processing requested to be executed by the device;
When an interruption event occurs in the device, the state data indicating that the process indicated by the process identification data is interrupted is registered in the usage state data,
When the resumption request and the user identification data are received, the resumption process identification data corresponding to the user identification data corresponding to the user identification data is acquired from the use state data, and the resumption process is performed. A process continuation method of a computer system, characterized in that an execution result of a process indicated by identification data is provided to a transmission device of the restart request.
機器から受け付けたユーザ識別データを利用状態データに登録し、
所定の処理の再開を実現するために用いられる再開実現データを、前記ユーザ識別データと対応付けて前記利用状態データに登録し、
再開要求と前記ユーザ識別データを受け付けた場合に、前記利用状態データに基づいて、前記ユーザ識別データに対応する前記再開実現データを取得し、前記再開実現データに基づいて得られる前記処理の実行結果を、前記再開要求の発信機器に提供する
ことを特徴とするコンピュータシステムの処理継続方法。
Register the user identification data received from the device in the usage status data,
Resumption realizing data used for realizing resumption of predetermined processing is registered in the usage state data in association with the user identification data;
When the resumption request and the user identification data are received, the resumption realization data corresponding to the user identification data is acquired based on the usage state data, and the execution result of the processing obtained based on the resumption realization data Is provided to the transmission device of the resumption request.
機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データと前記機器からの処理の実行要求を示す情報とを対応付けた利用状態データを管理し、
前記機器に提供されるコンテンツに他の処理のアドレス情報が含まれる場合に、前記アドレス情報に基づいて前記アドレス情報を自己のシステムのリンク情報を含んだアドレス情報に書き換え、
この書き換えられたアドレス情報に基づいて前記機器から処理の実行要求を示す情報を受信すると受信情報を前記利用状態データとして保存し、
前記機器から処理の再開要求を受けると前記利用状態データに基づいて処理の再開を行う
ことを特徴とするコンピュータシステムの処理継続方法。
Managing usage status data in which user identification data received from a device, processing identification data indicating processing requested to be executed from the device, and information indicating a processing execution request from the device are associated with each other;
When address information of other processing is included in the content provided to the device, the address information is rewritten to address information including link information of its own system based on the address information,
When receiving information indicating a processing execution request from the device based on the rewritten address information, the received information is stored as the usage state data,
A process continuation method for a computer system, comprising: resuming a process based on the usage state data when receiving a process resumption request from the device.
機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データと前記処理の利用状態情報とを対応付けた利用状態データを管理し、
前記機器に提供されるコンテンツに前記機器の前記利用状態情報を自己のシステムに通知する命令を埋め込み、
前記機器から前記利用状態情報を受け付けた場合は前記利用状態データに登録し、再開要求と前記ユーザ識別データを受け付けた場合は前記利用状態データに基づいて、前記ユーザ識別データに対応する処理の再開を行う
ことを特徴とするコンピュータシステムの処理継続方法。
Managing usage status data in which user identification data received from a device, processing identification data indicating processing requested to be executed by the device, and usage status information of the processing are associated with each other;
An instruction for notifying the system of the usage status information of the device is embedded in the content provided to the device,
When the usage status information is received from the device, it is registered in the usage status data. When a restart request and the user identification data are received, the processing corresponding to the user identification data is resumed based on the usage status data. A method for continuing processing of a computer system, characterized in that:
機器から受け付けたユーザ識別データと前記機器から実行を要求された処理を示す処理識別データと前記処理の状態情報とを対応付けた利用状態データを管理し、
前記機器に提供されるコンテンツに他の処理のアドレス情報が含まれる場合に、前記アドレス情報に基づいて前記アドレス情報を自己のシステムのリンク情報を含んだアドレス情報に書き換えるとともに、前記機器に提供されるコンテンツに前記機器の前記状態情報を自己のシステムに通知する命令を埋め込み、
書き換えられたアドレス情報に基づいて前記処理識別データを受信すると受信情報を前記利用状態データとして保存し、前記機器から前記状態情報を受け付けた場合は前記利用状態データに登録し、前記機器から処理の再開要求と前記ユーザ識別データを受け付けると前記利用状態データに基づいて、前記ユーザ識別データに対応する処理の再開を行う
ことを特徴とするコンピュータシステムの処理継続方法。
Managing usage status data in which user identification data received from a device, processing identification data indicating processing requested to be executed by the device, and status information of the processing are associated with each other;
When the content provided to the device includes address information for other processing, the address information is rewritten to address information including link information of its own system based on the address information and provided to the device. A command for notifying the system of the status information of the device in the content
When the process identification data is received based on the rewritten address information, the received information is stored as the usage status data. When the status information is received from the device, it is registered in the usage status data, and the processing status data is processed from the device. When a restart request and the user identification data are received, the process corresponding to the user identification data is restarted based on the usage state data.
JP2004517273A 2002-07-01 2003-06-25 Seamless ubiquitous system, recording medium, and computer processing continuation method Expired - Fee Related JP4302057B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2002192670 2002-07-01
JP2002192670 2002-07-01
PCT/JP2003/008054 WO2004003765A1 (en) 2002-07-01 2003-06-25 Seamless system, recording medium, computer system processing continuation method

Publications (2)

Publication Number Publication Date
JPWO2004003765A1 true JPWO2004003765A1 (en) 2005-10-27
JP4302057B2 JP4302057B2 (en) 2009-07-22

Family

ID=29996981

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004517273A Expired - Fee Related JP4302057B2 (en) 2002-07-01 2003-06-25 Seamless ubiquitous system, recording medium, and computer processing continuation method

Country Status (4)

Country Link
JP (1) JP4302057B2 (en)
CN (1) CN1666188A (en)
AU (1) AU2003246189A1 (en)
WO (1) WO2004003765A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018060550A (en) * 2013-06-09 2018-04-12 アップル インコーポレイテッド Device, method, and graphical user interface for enabling conversation persistence across two or more instances of digital assistant

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005250734A (en) * 2004-03-03 2005-09-15 Keiogijuku Generation method for ubiquitous environment information snapshot data, browsing method, generation device, browsing device, program, and data structure of ubiquitous environment information snapshot
JP4553150B2 (en) * 2004-03-19 2010-09-29 日本電気株式会社 Intermediate equipment that can perform new introduction and extraction seamlessly
JP4028853B2 (en) 2004-03-30 2007-12-26 株式会社日立製作所 Information service communication network system and session management server
US8332526B2 (en) 2005-05-25 2012-12-11 Microsoft Corporation Data communication protocol including negotiation and command compounding
JP5279247B2 (en) * 2007-12-05 2013-09-04 キヤノン株式会社 Client, server, control method therefor, and computer program
US9331955B2 (en) 2011-06-29 2016-05-03 Microsoft Technology Licensing, Llc Transporting operations of arbitrary size over remote direct memory access
US8856582B2 (en) 2011-06-30 2014-10-07 Microsoft Corporation Transparent failover
US20130067095A1 (en) 2011-09-09 2013-03-14 Microsoft Corporation Smb2 scaleout
US8788579B2 (en) * 2011-09-09 2014-07-22 Microsoft Corporation Clustered client failover
JP5550709B2 (en) * 2012-11-29 2014-07-16 エヌ・ティ・ティ・コミュニケーションズ株式会社 Screen display control device, screen display control method, and program
JP6492670B2 (en) * 2015-01-13 2019-04-03 富士ゼロックス株式会社 Relay device, relay system, and program
JP6565643B2 (en) * 2015-12-01 2019-08-28 コニカミノルタ株式会社 Image forming system, image forming apparatus, and program

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10222450A (en) * 1997-02-05 1998-08-21 Matsushita Joho Syst Kk Retrieval information recording device
EP1044420A1 (en) * 1997-11-28 2000-10-18 International Business Machines Corporation Processing extended transactions in a client-server system
JPH11265347A (en) * 1998-01-16 1999-09-28 Toshiba Corp Distributed network computing system, information switching device and method to be used for the system and computer readable storage medium storing information switching method program information
JP4477210B2 (en) * 2000-09-27 2010-06-09 インテレクチュアル ベンチャーズ ホールディング 56 エルエルシー Information providing system and recording medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018060550A (en) * 2013-06-09 2018-04-12 アップル インコーポレイテッド Device, method, and graphical user interface for enabling conversation persistence across two or more instances of digital assistant

Also Published As

Publication number Publication date
CN1666188A (en) 2005-09-07
JP4302057B2 (en) 2009-07-22
WO2004003765A1 (en) 2004-01-08
AU2003246189A1 (en) 2004-01-19

Similar Documents

Publication Publication Date Title
EP1811747B1 (en) Method and apparatus for storing and restoring state information of remote user interface
CN100518125C (en) Communication apparatus, system, method
JP4302057B2 (en) Seamless ubiquitous system, recording medium, and computer processing continuation method
JPWO2004070616A1 (en) Synchronous program
JP2003337631A (en) Portable terminal, method for starting up application, program and storage medium
JP2014075116A (en) Information processor, program and conference system
JP4734311B2 (en) Information processing system, confidential data management device, and program
JP5197351B2 (en) Information processing apparatus, information processing method, and program
JP3980013B2 (en) VIDEO DATA RECORDING SYSTEM, VIDEO DATA MANAGEMENT SERVER, VIDEO DATA RECORDING METHOD, PROGRAM, AND STORAGE MEDIUM CONTAINING THE PROGRAM
JP2015184827A (en) Browsing sharing server, browsing sharing system, browsing sharing method, and browsing sharing program
JP4346869B2 (en) Electronic device and information processing method
CN102004729A (en) Method and system for showing website webpage and website server
US20050198331A1 (en) Seamless system and recording medium, and computer system process continuing method
JP2002157219A (en) Method and system for dealing with internet terminal of existent online application, server device and recording medium
US20070130198A1 (en) Data management device, data management system and data management method
KR20050016686A (en) Seamless system, recording medium, and computer system processing continuation method
JP2005044153A (en) Object management program
JP2002132693A (en) Data communication method, data communication server, and data sharing program
JPH1155273A (en) Set information registering device and method therefor and medium for recording set information registration program
JP2011150423A (en) Web browser system and data update method
JP2003281005A (en) Calling server device and terminal device
JP2007259059A (en) Relay processing system, apparatus and program
JP6268972B2 (en) Information processing apparatus, program, information providing method, and information display system
JP2001160054A (en) Written matter file managing device
JP2002116972A (en) Information perusal method and system and storage medium storing program for information perusal

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080916

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081117

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: 20090331

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090421

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

Free format text: PAYMENT UNTIL: 20120501

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4302057

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20120501

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120501

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130501

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130501

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140501

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees