JP2007188125A - Communication apparatus, data sharing system, data sharing device, and computer program - Google Patents
Communication apparatus, data sharing system, data sharing device, and computer program Download PDFInfo
- Publication number
- JP2007188125A JP2007188125A JP2006003251A JP2006003251A JP2007188125A JP 2007188125 A JP2007188125 A JP 2007188125A JP 2006003251 A JP2006003251 A JP 2006003251A JP 2006003251 A JP2006003251 A JP 2006003251A JP 2007188125 A JP2007188125 A JP 2007188125A
- Authority
- JP
- Japan
- Prior art keywords
- data
- transfer request
- browser
- communication
- sharing
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B11/00—Measuring arrangements characterised by the use of optical techniques
- G01B11/14—Measuring arrangements characterised by the use of optical techniques for measuring distance or clearance between spaced objects or spaced apertures
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C15/00—Surveying instruments or accessories not provided for in groups G01C1/00 - G01C13/00
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Arrangements For Transmission Of Measured Signals (AREA)
Abstract
Description
本発明は、データを共有し、そのデータをユーザが共同で利用するための技術に関し、特に、複数の装置でネットワーク上のデータを共有し共同で利用するための通信装置、データ共有システム、データ共有装置、及びコンピュータプログラムに関する。 The present invention relates to a technology for sharing data and allowing users to use the data jointly, and in particular, a communication device, a data sharing system, and data for sharing data on a network with a plurality of devices and using them together. The present invention relates to a sharing device and a computer program.
通信技術の発展と普及とに伴い、多種多様な情報が実際の距離に関係なく伝送されるようになった。例えば、パーソナルコンピュータ及び最近の携帯電話機等の情報端末は、いわゆるインターネットを介して世界中のサーバにアクセスできる。それらのユーザは、家庭内など好きな場所にいながらにしてさまざまなウェブページを閲覧することができる。また、離れた場所にいる複数のユーザが、情報端末を用いてリアルタイムにコミュニケーションをとることも可能となった。 With the development and popularization of communication technology, a wide variety of information has been transmitted regardless of the actual distance. For example, information terminals such as personal computers and recent mobile phones can access servers all over the world via the so-called Internet. Those users can browse various web pages while staying at a favorite place such as home. In addition, it has become possible for a plurality of users at remote locations to communicate in real time using an information terminal.
離れた場所にいるユーザ同士がコミュニケーションをとる際、双方のユーザが同じ情報を共有して同じ情報を閲覧するようにすると、円滑なコミュニケーションを図ることができて便利である。後掲の特許文献1及び特許文献2には、ネットワーク上で公開されているウェブページを閲覧するためのブラウザをそれぞれ持つ端末同士が、ウェブページのデータを共有するための技術が開示されている。 When users in remote places communicate with each other, it is convenient that both users share the same information and browse the same information, thereby enabling smooth communication. Patent Document 1 and Patent Document 2 described later disclose technologies for sharing data of web pages between terminals each having a browser for browsing web pages published on a network. .
特許文献1に記載のシステムは、ネットワークを介して接続された複数の端末を含む。この技術においては、一方の端末のブラウザに対して操作が行なわれると、当該端末が他方の端末に対し、ネットワーク上でのデータの場所を表すURL(Uniform Resource Locator)と、閲覧中のデータに関しブラウザに対して行なわれた操作の情報とを送信する。他方の端末は、これらの情報にしたがい動作し、URLにより表される場所にあるデータを取得し、そのデータを操作の情報により表される操作にしたがって表示する。そのため、双方の端末においてブラウザに対する操作の状態は同一に保たれ、双方の端末のブラウザは、同じURLにあるデータを取得し表示することができる。 The system described in Patent Document 1 includes a plurality of terminals connected via a network. In this technology, when an operation is performed on the browser of one terminal, the terminal has a URL (Uniform Resource Locator) indicating the location of data on the network and the data being browsed. Information on operations performed on the browser is transmitted. The other terminal operates in accordance with these pieces of information, acquires data at a location represented by the URL, and displays the data according to the operation represented by the operation information. Therefore, the operation state for the browsers in both terminals is kept the same, and the browsers in both terminals can acquire and display data at the same URL.
特許文献2に記載のシステムは、それぞれネットワークに接続された複数の端末と、ネットワークに接続され、データ共有を行なうためのキャッシュを持つコラボレーションサーバとを含む。ある端末のブラウザに対する操作が行なわれると、その端末は、行なわれた操作内容の反映を行なう。この際の操作がデータの取得を求めるものであれば、その端末はコラボレーションサーバを介して共有用のページを取得する。この際の操作が、データの取得を要する動作以外の動作(例えば、スクロールバーの移動、フォーカス選択の移動など)を求めるものであれば、端末は、コラボレーションサーバを介して、共有用のページへその操作内容の反映を行なう。このようにしてある端末により操作内容の反映が行われると、共有相手の端末は、その情報を取得して自端末のブラウザに反映させる。 The system described in Patent Literature 2 includes a plurality of terminals each connected to a network, and a collaboration server connected to the network and having a cache for data sharing. When an operation is performed on the browser of a certain terminal, the terminal reflects the contents of the performed operation. If the operation at this time requires data acquisition, the terminal acquires a page for sharing via the collaboration server. If the operation at this time requires an operation other than the operation that requires data acquisition (for example, movement of a scroll bar, movement of focus selection, etc.), the terminal goes to a page for sharing via the collaboration server. The contents of the operation are reflected. When the operation content is reflected by a certain terminal in this way, the sharing partner's terminal acquires the information and reflects it in the browser of its own terminal.
コラボレーションサーバは、端末からページの取得要求があった場合には、ネットワークを介して取得したデータとブラウザへの操作情報とを一つにまとめて共有用のページを作成し、共有用のページを端末に送信するとともに、共有用のページをコラボレーションサーバのキャッシュに保存する。コラボレーションサーバは、ブラウザ操作により端末から共有用のページへ内容変更の要求があった場合には、キャッシュに保存されている共有用のページの内容を変更する。また、共有相手の端末は、共有用のページの内容に変化があった場合に、その情報を取得して自端末のブラウザに反映させる。このようにして、端末はコラボレーションサーバのキャッシュに蓄積された共有用のページを共有することで、相手と同じ操作状態でデータを共有できる。例えば、端末は自端末のブラウザを操作した際に操作結果を共有用のページに反映させ、又は共有用のページの内容に変化があった場合に、変化した情報を取得して自端末のページに反映させる。 When there is a page acquisition request from the terminal, the collaboration server creates a shared page by combining the data acquired via the network and the operation information to the browser into a single page. In addition to sending to the terminal, the shared page is stored in the collaboration server cache. The collaboration server changes the content of the sharing page stored in the cache when a request for changing the content from the terminal to the sharing page is made by a browser operation. Further, when there is a change in the content of the sharing page, the sharing partner's terminal acquires the information and reflects it in the browser of the own terminal. In this way, the terminal can share the data in the same operation state as the other party by sharing the page for sharing stored in the cache of the collaboration server. For example, when the terminal operates the browser of its own terminal, the operation result is reflected in the sharing page, or when the content of the sharing page changes, the changed information is acquired and the page of the own terminal is acquired. To reflect.
特許文献1に開示された技術では、データのある場所(URL)について情報を共有し、それぞれの端末がURLを指定してウェブサーバにアクセスしデータを取得する。そのため、ウェブサーバに対するあるアクセスとその次のアクセスとの間に、指定されたURLにあるデータが変更された場合には、データ共有を行なったことにはならない。 In the technology disclosed in Patent Document 1, information is shared about a location (URL) where data exists, and each terminal designates the URL to access a web server and acquire data. Therefore, if the data at the specified URL is changed between a certain access to the web server and the next access, data sharing is not performed.
特許文献2に開示された技術では、データ共有を行なうためのキャッシュ機能を備えたサーバを利用し、端末はキャッシュにある同じデータを共有する。そのため、アクセスごとに異なるデータを取得する問題は解決できる。ただし、この技術において端末間で共有されるデータは、コラボレーションサーバにより作成される共有用のページである。この共有用のページは操作情報を含んでいる。操作情報は、端末で行なわれる操作の状況に応じて変化するため共有用のページは、端末で行なわれる操作の状況に応じて変化する、再利用できないデータとなる。また、コラボレーションサーバのキャッシュ機能は、現在共有の対象となっている共有用のページを保存するためのものである。そのため、以下のような問題が生じる。 In the technology disclosed in Patent Document 2, a server having a cache function for data sharing is used, and terminals share the same data in the cache. Therefore, the problem of acquiring different data for each access can be solved. However, data shared between terminals in this technology is a sharing page created by the collaboration server. This sharing page includes operation information. Since the operation information changes according to the status of the operation performed on the terminal, the sharing page is data that changes according to the status of the operation performed on the terminal and cannot be reused. The collaboration server's cache function is for storing a shared page that is currently being shared. Therefore, the following problems arise.
すなわち、第1に、端末は、共有の対象となるデータを過去に取得したことがあっても、過去に取得したそのデータを再利用できない。端末は、共有の対象となるデータが指定されるたびに、共有用のページをコラボレーションサーバに要求して、コラボレーションサーバからデータを取得しなければならない。コラボレーションサーバは、共有の対象となるデータが端末において指定されるたびに、いちいちウェブサーバから該当するデータを取得し、共有用のページを作成した上で端末に送信しなければならない。したがって、端末がデータにアクセスするたびに、コラボレーションサーバとウェブサーバとの間、及びコラボレーションサーバと各端末との間での通信が発生し、端末から当該データへのアクセスは、その分非効率的なものになる。 That is, first, even if the terminal has acquired data to be shared in the past, the terminal cannot reuse the data acquired in the past. Each time the data to be shared is specified, the terminal must request a page for sharing from the collaboration server and acquire the data from the collaboration server. Each time the data to be shared is specified in the terminal, the collaboration server must acquire the corresponding data from the web server, create a sharing page, and transmit it to the terminal. Therefore, every time a terminal accesses data, communication occurs between the collaboration server and the web server, and between the collaboration server and each terminal, and access from the terminal to the data is inefficiently correspondingly. It will be something.
第2に、この技術では、端末のみでデータ共有を行なえず、共有用のページを保存するためのキャッシュ機能を備えた別のコラボレーションサーバが必要となる。さらに、コラボレーションサーバのキャッシュ機能は、データ共有以外の用途に使用することが困難である。コラボレーションサーバのキャッシュ機能は、現在共有を行なっている共有用のページを保存するためのものであるため、一度ウェブサーバにアクセスして取得したデータをキャッシュに保存し、保存しておいたデータを端末に提供するプロキシ機能はない。コラボレーションサーバのキャッシュを用いて、上記のようなプロキシ機能を実現しようとすると、データの共有に参加している端末以外のものから、キャッシュへのアクセスを受けることになり、端末からのアクセスごとにキャッシュの中身が書換わってしまうおそれがある。キャッシュの中身である共有用のページが書換わってしまうと、キャッシュを用いたデータの共有が成立しなくなる。 Second, in this technology, data cannot be shared only by the terminal, and another collaboration server having a cache function for storing a shared page is required. Furthermore, it is difficult to use the cache function of the collaboration server for purposes other than data sharing. The collaboration server's cache function is for saving the shared page that is currently shared, so the data acquired by accessing the web server is saved in the cache, and the saved data is saved. There is no proxy function provided to the terminal. If you try to implement the proxy function as described above using the collaboration server cache, you will receive access to the cache from devices other than those participating in data sharing. There is a risk that the contents of the cache will be rewritten. If the shared page that is the contents of the cache is rewritten, data sharing using the cache will not be established.
それゆえに、本発明の目的は、複数のブラウザ間でデータの共有を簡便に行なうことができ、他の装置との間で共有の対象となるデータが変化する場合においても、確実にかつ効率的にデータの共有を行なうことを可能とする通信装置を提供することである。 Therefore, an object of the present invention is to easily share data among a plurality of browsers, and reliably and efficiently even when data to be shared with other devices changes. It is another object of the present invention to provide a communication device that enables data sharing.
本発明の第1の局面に係る通信装置は、サーバ及び他の装置と通信するための通信手段と、データの転送要求が与えられると、通信手段を用いてサーバより当該データの転送要求に対応するデータを取得するためのデータ取得手段と、データの閲覧に関する所定の操作入力を受付けるための入力手段と、入力手段が受付けた操作入力に応じてデータの転送要求をデータ取得手段に与えるとともに、データ取得手段により取得されるデータを閲覧可能に出力するためのブラウザと、データ取得手段により取得されたデータを保持するためのデータ保持手段と、データ取得手段がブラウザより与えられた転送要求に応じてデータを取得すると、データを取得する動作を他の装置に実行させるための制御情報を、通信手段を用いて他の装置へ送信するための制御情報送信手段と、通信手段を用いて他の装置よりデータの転送要求を受信するための転送要求受信手段と、制御情報送信手段が制御情報を送信した後に転送要求受信手段が転送要求を受信すると、データ保持手段に保持されているデータを、通信手段を用いて他の装置へ提供するためのデータ提供手段とを含む。 The communication device according to the first aspect of the present invention responds to the data transfer request from the server using the communication unit when the communication unit for communicating with the server and the other device and the data transfer request are given. A data acquisition means for acquiring data, an input means for receiving a predetermined operation input related to data browsing, and a data transfer request to the data acquisition means according to the operation input received by the input means; A browser for outputting the data acquired by the data acquisition means in a viewable manner, a data holding means for holding the data acquired by the data acquisition means, and the data acquisition means in response to a transfer request given by the browser When the data is acquired, the control information for causing the other device to execute the data acquisition operation is transmitted to the other device using the communication means. Control information transmitting means, a transfer request receiving means for receiving a data transfer request from another device using a communication means, and a transfer request receiving means requesting a transfer after the control information transmitting means transmits control information. The data providing means for providing the data held in the data holding means to another device using the communication means.
好ましくは、通信装置はさらに、制御情報送信手段が制御情報を送信したという条件が充足されていない状態で転送要求受信手段がデータの転送要求を受信したという条件が充足されると、データ取得手段に当該転送要求を与えるための手段と、与えるための手段より与えられた転送要求に対応するデータをデータ取得手段が取得すると、通信手段を用いて当該データを他の装置へ提供するための手段とを含む。 Preferably, the communication device further includes a data acquisition unit when a condition that the transfer request receiving unit receives the data transfer request in a state where the condition that the control information transmitting unit transmits the control information is not satisfied is satisfied. Means for providing the transfer request to the device, and means for providing the data to another apparatus using the communication means when the data acquisition means acquires data corresponding to the transfer request given by the means for giving Including.
本発明の第2の局面に係る通信装置は、サーバ及び他の装置との間でデータの授受を行なう通信装置であって、サーバ及び他の装置と通信するための通信手段と、データの転送要求が与えられると、通信手段を用いてサーバよりデータを取得し、ブラウザに与えるためのデータ取得手段と、データの閲覧に関する所定の操作入力を受付けるための入力手段と、入力手段が受付けた入力操作に応じてデータの転送要求をデータ取得手段に与えるとともに、データ取得手段により取得されるデータを閲覧可能に出力するためのブラウザと、データ取得手段により取得されるデータにフラグを付して保持するためのフラグ付データ保持手段とを含む。フラグは、第1の値又は第2の値に設定される。通信装置はさらに、データ取得手段がブラウザより与えられた転送要求に応答して取得したデータをフラグ付データ保持手段が保持すると、当該データに付されたフラグを第1の値に設定するための手段と、フラグが第1の値に設定されると、当該フラグに対応するデータを取得する動作を他の装置に実行させるための制御情報を、通信手段を用いて他の装置へ送信するための制御情報送信手段と、通信手段を用いて他の装置よりデータの転送要求を受信するための転送要求受信手段と、転送要求受信手段が受信した転送要求に対応するデータであって、第1の値に設定されたフラグとともにフラグ付データ保持手段に保持されているデータを、通信手段を用いて他の装置に提供して、当該データに付されているフラグを第2の値に設定するためのデータ提供手段とを含む。 A communication device according to a second aspect of the present invention is a communication device that exchanges data with a server and other devices, and communication means for communicating with the server and other devices, and data transfer When a request is given, data is acquired from the server using communication means and is given to the browser; input means for accepting a predetermined operation input related to data browsing; and input accepted by the input means A data transfer request is given to the data acquisition means according to the operation, a browser for outputting the data acquired by the data acquisition means in a viewable manner, and a flag attached to the data acquired by the data acquisition means And flagged data holding means. The flag is set to the first value or the second value. The communication device further sets the flag attached to the data to the first value when the data holding means holds the data acquired in response to the transfer request given from the browser by the data acquisition means. When the means and the flag are set to the first value, the control information for causing the other apparatus to execute the operation of acquiring the data corresponding to the flag is transmitted to the other apparatus using the communication means. Control information transmitting means, transfer request receiving means for receiving a data transfer request from another device using the communication means, and data corresponding to the transfer request received by the transfer request receiving means, The data held in the flagged data holding means together with the flag set to the value is provided to another device using the communication means, and the flag attached to the data is set to the second value. And a data providing means of the eye.
好ましくは、通信装置はさらに、転送要求受信手段が受信した転送要求に対応するデータがフラグ付データ保持手段に保持されておりかつ当該データとともに保持されているフラグが第1の値に設定されているという条件が充足されていなければ、当該転送要求をデータ取得手段に与えるための手段と、データ取得手段が与えるための手段より与えられた転送要求に対応するデータを取得すると、当該データを、通信手段を用いて他の装置へ提供するための手段とを含む。 Preferably, the communication device further has data corresponding to the transfer request received by the transfer request receiving means held in the flagged data holding means, and the flag held together with the data is set to the first value. If the condition that the transfer request is not satisfied, when the data corresponding to the transfer request given by the means for giving the transfer request to the data acquisition means and the means for giving by the data acquisition means is acquired, the data is Means for providing to other devices using communication means.
本発明の第3の局面に係る通信装置は、サーバ及び複数存在する他の装置との間でデータの授受を行なう通信装置であって、サーバ及び他の装置の各々と通信するための通信手段と、データの転送要求が与えられると、通信手段を用いてサーバよりデータを取得するためのデータ取得手段と、データ取得手段で取得したデータに他の装置ごとに設けられたフラグを付して保持するための複数フラグ付データ保持手段とを含む。フラグの各々は、第1の値又は第2の値に設定される。通信装置はさらに、通信手段を用いて他の装置よりデータの転送要求を受信するための転送要求受信手段と、転送要求受信手段が他の装置のうち第1の装置から転送要求を受信したときに、当該転送要求に対応するデータが当該第1の装置に対応する第1の値に設定されたフラグとともに複数フラグ付データ保持手段に保持されていなければ、当該転送要求をデータ取得手段に与えるため手段と、データ取得手段が与えるための手段より与えられた転送要求に対応するデータを取得すると、当該データを、通信手段を用いて第1の装置へ提供するための第1のデータ提供手段と、データ取得手段が与えるための手段により与えられた転送要求に対応するデータを取得し、当該データを複数フラグ付データ保持手段が保持すると、当該データに付されたフラグであって他の装置のうち第1の装置と異なる第2の装置に対応するフラグを、第1の値に設定するための手段と、フラグが第1の値に設定されると、当該データを取得する動作を他の装置に実行させるための制御情報を、通信手段を用いて第2の装置へ送信するための制御情報送信手段と、転送要求受信手段が受信した転送要求に対応するデータであって、転送要求の送信元の装置に対応する第1の値に設定されたフラグとともに複数フラグ付データ保持手段に保持されているデータを、通信手段を用いて転送要求の送信元である他の装置に提供して、当該データに付されている当該他の装置のフラグを第2の値に設定するための第2のデータ提供手段とを含む。 A communication device according to a third aspect of the present invention is a communication device that exchanges data with a server and a plurality of other devices, and communication means for communicating with each of the server and the other devices. When a data transfer request is given, a data acquisition means for acquiring data from the server using the communication means, and a flag provided for each other device is attached to the data acquired by the data acquisition means Data holding means with a plurality of flags for holding. Each of the flags is set to a first value or a second value. The communication apparatus further includes a transfer request receiving means for receiving a data transfer request from another apparatus using the communication means, and the transfer request receiving means receives the transfer request from the first apparatus among the other apparatuses. If the data corresponding to the transfer request is not held in the multi-flagged data holding means together with the flag set to the first value corresponding to the first device, the transfer request is given to the data acquisition means. And a first data providing means for providing the data to the first device using the communication means when the data corresponding to the transfer request given by the means provided by the data obtaining means is obtained. When the data corresponding to the transfer request given by the means for giving by the data obtaining means is obtained and the data holding means with a plurality of flags holds the data, And a means for setting a flag corresponding to a second device different from the first device among the other devices, and the flag is set to the first value The control information transmitting means for transmitting the control information for causing the other apparatus to execute the operation for acquiring the data to the second apparatus using the communication means, and the transfer request received by the transfer request receiving means. The corresponding data that is held in the data holding means with a plurality of flags together with the flag set to the first value corresponding to the device that has sent the transfer request is transmitted using the communication means. Second data providing means for providing to the other original device and setting the flag of the other device attached to the data to the second value.
好ましくは、通信装置はさらに、データの閲覧に関する所定の操作入力を受付けるための入力手段と、入力手段が受付けた操作入力に応じてデータの転送要求をデータ取得手段に与えるとともに、データ取得手段により取得されるデータを閲覧可能に出力するためのブラウザと、データ取得手段がブラウザにより与えられた転送要求に対応するデータを取得し、当該データを複数フラグ付データ保持手段が保持すると、当該データに付された他の装置の各々に対応するフラグを、第1の値に設定するための手段とを含む。 Preferably, the communication device further includes an input unit for receiving a predetermined operation input related to browsing of data, a data transfer request to the data acquisition unit according to the operation input received by the input unit, and the data acquisition unit A browser for outputting the acquired data so that it can be browsed, and when the data acquisition means acquires data corresponding to the transfer request given by the browser and the data holding means with a plurality of flags holds the data, Means for setting a flag corresponding to each of the other attached devices to a first value.
本発明の第4の局面に係る通信装置は、他の装置と通信するための通信手段と、データを閲覧可能に表示するためのブラウザと、通信手段を用い、データの取得指示を他の装置より受信するためのデータ取得指示受信手段と、通信手段を用い、取得指示に基づき他の装置に転送要求を送信して他の装置よりデータを受信するためのデータ受信手段とを含む。ブラウザは、データ受信手段が取得したデータに基づき出力を更新する。 A communication apparatus according to a fourth aspect of the present invention uses a communication means for communicating with another apparatus, a browser for displaying data in a viewable manner, and the communication means, and sends an instruction to acquire data to the other apparatus. A data acquisition instruction receiving means for receiving the data, and a data receiving means for transmitting a transfer request to another apparatus based on the acquisition instruction and receiving data from the other apparatus using the communication means. The browser updates the output based on the data acquired by the data receiving means.
本発明の第5の局面に係るコンピュータプログラムは、コンピュータにより実行されると、当該コンピュータを第1の局面〜第4の局面に係るいずれかの通信装置として動作させる。 When the computer program according to the fifth aspect of the present invention is executed by a computer, the computer program causes the computer to operate as any one of communication apparatuses according to the first to fourth aspects.
本発明の第6の局面に係るデータ共有システムは、本発明の第1の局面〜第3の局面に係るいずれかの通信装置を有する第1の通信装置と、本発明の第4の局面に係る通信装置を有する第2の通信装置とを含む。第1の通信装置の通信手段は、サーバ及び第2の通信装置の通信手段と通信し、第2の通信装置の通信手段は、第1の通信装置の通信手段と通信する。 A data sharing system according to a sixth aspect of the present invention includes a first communication device having any one of the communication devices according to the first to third aspects of the present invention, and a fourth aspect of the present invention. And a second communication device having such a communication device. The communication means of the first communication device communicates with the communication means of the server and the second communication device, and the communication means of the second communication device communicates with the communication means of the first communication device.
本発明の第7の局面に係るデータ共有装置は、データを閲覧可能に表示するための所定のブラウザと共に用いられ、ブラウザにより行なわれる閲覧対象のデータの表示が、予め定められた共有相手となる端末装置においても行なわれるよう、共有相手となる端末装置との間でデータを共有するためのデータ共有装置である。ブラウザは、閲覧対象のデータを取得する動作の実行時に、当該閲覧対象のデータの転送要求を発行する。データ共有装置は、ブラウザにより閲覧対象のデータの転送要求が発行されたことに応答して、当該閲覧対象のデータを取得するための取得手段と、取得手段により取得された閲覧対象のデータをブラウザに供給して、当該閲覧対象のデータをブラウザに表示させるための供給手段と、取得手段により取得された閲覧対象のデータを予め定められたキャッシュに格納するための格納手段と、供給手段により閲覧対象のデータがブラウザに供給されたときに、当該閲覧対象のデータのキャッシュからの取得を、共有相手となる端末装置に対し要求するためのデータ取得要求手段とを含む。 The data sharing apparatus according to the seventh aspect of the present invention is used together with a predetermined browser for displaying data in a viewable manner, and the display of the data to be browsed performed by the browser is a predetermined sharing partner. This is a data sharing device for sharing data with a terminal device that is a sharing partner, as is also done in the terminal device. The browser issues a transfer request for the data to be browsed when executing the operation of acquiring the data to be browsed. In response to the browser requesting the transfer of data to be browsed, the data sharing device includes an acquisition unit for acquiring the browsing target data, and the browsing target data acquired by the acquisition unit in the browser Supply means for displaying the browsing object data on the browser, storage means for storing the browsing object data acquired by the acquisition means in a predetermined cache, and browsing by the supply means Data acquisition requesting means for requesting the terminal device serving as a sharing partner to acquire the data to be browsed from the cache when the target data is supplied to the browser.
[第1の実施の形態]
以下、図面を参照しつつ本発明の一実施の形態について説明する。なお、以下の説明に用いる図面では、同一の部品に同一の符号を付してある。それらの名称及び機能も同一である。したがって、それらについての詳細な説明は繰返さない。
[First Embodiment]
Hereinafter, an embodiment of the present invention will be described with reference to the drawings. In the drawings used for the following description, the same parts are denoted by the same reference numerals. Their names and functions are also the same. Therefore, detailed description thereof will not be repeated.
図1に、本実施の形態に係るデータ共有システムの概略構成を示す。図1を参照して、データ共有システム100は、ネットワーク102を介してデータを提供するためのサーバ104と、それぞれネットワーク102に接続され、サーバ104より提供されるデータを共有し、当該データを互いに他と同様の態様で閲覧可能に表示するための端末装置110及び112を含む。サーバ104は、具体的には一般的なウェブサーバであり、ウェブページ等のデータを保持し、ネットワーク102を介して所定の転送要求を受信したことに応答して、その転送要求に対応するデータを要求元に返信する。より具体的には、ネットワーク102を介して所定のHTTP(Hyper Text Transfer Protocol)リクエストを受信したことに応答して、その転送要求に対応するデータを返信する。
FIG. 1 shows a schematic configuration of a data sharing system according to the present embodiment. Referring to FIG. 1, a
端末装置110及び112には、主体的にデータ共有のための処理を行ないデータの共有を開始する装置であるか、開始する側の装置に対するデータ共有の相手となる装置であるかという観点から、2種類の装置に分類される。すなわち、共有の対象となるデータの管理を行ない、データの共有に要する処理を開始する側(以下、「開始側」と呼ぶ。)の端末装置110と、当該端末装置に対する共有相手となる側(以下、「相手側」と呼ぶ。)の端末装置112とである。本明細書では、前者の端末装置110を「開始側共有端末装置」と呼び、後者の端末装置112を「相手側共有端末装置」と呼ぶ。なお、端末装置が開始側/相手側のいずれに属するかは固定されることはないが、以下の説明では、端末装置110が開始側であり端末装置112が相手側であるものとする。
From the viewpoint of whether the
開始側端末装置110は、ネットワーク102を介してサーバ104に転送要求を送信し、サーバ104から返信されるデータを閲覧可能な態様で表示するとともに当該返信されるデータを相手側共有端末装置112と共有する。相手側共有端末装置112は、ネットワーク102を介して開始側共有端末装置110との間でデータを共有し、共有しているデータを取得し閲覧可能な態様で表示する。
The initiating
開始側共有端末装置110は、ネットワーク102を介して通信を行なうためのインタフェースとなる通信部120と、ユーザによる操作を受けて、その操作に対応する操作情報を発行するための入力部122と、入力部122により発行される操作情報にしたがってデータを取得し表示するためのブラウザ126と、ブラウザ126によるデータの取得を仲介するとともに、取得したデータ及びユーザによる操作を相手側共有端末装置112との間で共有する処理を行なうための開始側共有制御部124と、開始側共有制御部124に接続され、ブラウザ126が開始側共有制御部124を介して取得したデータを蓄積するためのキャッシュ128とを含む。
The initiating shared
相手側共有端末装置112は、開始側共有端末装置110の通信部120、入力部122、及びブラウザ126と同一の機能を持つ通信部130、入力部132、及びブラウザ136と、ブラウザ136によるデータの取得を仲介するとともに、取得したデータ及びユーザによる操作を共有する処理を実行するための相手側共有制御部134とを含む。なお、相手側共有端末装置112は、開始側共有端末装置110と同様のキャッシュを含んでもよいが、本実施の形態に係るデータ共有システム100において、データ及び操作の共有を行なう場合、相手側共有端末装置112のキャッシュは使用されない。
The partner shared
ブラウザ126及び136はいずれも、具体的には一般的なウェブブラウザである。すなわち、ユーザによる操作にしたがい、ネットワーク102上で提供されているデータの転送を要求するためにHTTPリクエストを発行し、当該発行したHTTPリクエストに対応するHTTPレスポンスを受け、当該HTTPレスポンスに含まれるデータを閲覧可能に表示する。ただし、ブラウザに対する操作の内容は、入力部122又は132からブラウザ126又は136に直接に与えられ、さらに開始側共有制御部124又は相手側共有制御部134にも与えられる。開始側共有制御部124及び相手側共有制御部134は、与えられる操作情報に基づき、ブラウザ126及び136を制御し、データ及び操作の共有を行なう。以下、ブラウザ126及び136をそれぞれ、「開始側のブラウザ126」及び「相手側のブラウザ136」と呼ぶことがある。
The
ユーザによるブラウザに対する操作は次の二つに分類することができる。すなわち、ブラウザ126又は136のデータを更新する操作と、データを更新する操作に含まれない操作である。具体的には、URLなどデータのアドレスを指定する操作、他のデータへのハイパーリンクが設定されたオブジェクトをクリックする操作、データ取得履歴を利用して別のデータへ更新するための「進む」「戻る」ボタンを押す操作、データを再取得するリロード(再読込)ボタンを押す操作、及びフォームデータを送信するボタンを押す操作が前者の操作に該当する。現在保持しているデータに基づいて表示を更新する操作などは、後者の操作に該当する。具体的には、表示をスクロールする操作、同一データ内の別の位置へのハイパーリンクが設定されたオブジェクトをクリックする操作、及びブラウザの表示領域を拡大/縮小する操作が、後者の操作に該当する。
User operations on the browser can be classified into the following two types. That is, an operation that updates data of the
開始側共有端末装置110及び相手側共有端末装置112は、双方が同一の情報を同一の状態で表示するよう、データ及びその表示に関する操作を共有する。図2に、ブラウザ126及び136における表示の遷移例を示す。図2を参照して、開始側共有端末装置110又は相手側共有端末装置112において、ユーザがデータを更新する操作を行なったものとする。この操作に応答して、開始側共有端末装置110及び相手側共有端末装置112はデータを共有する。例えば、開始側共有端末装置110があるデータを取得し、開始側のブラウザ126が表示画面150を表示すると、相手側共有端末装置112も、画面150の表示に用いられたデータと同じデータを取得する。相手側のブラウザ136は画面150と同じ画面152を表示する。
The initiating shared
さらに、開始側共有端末装置110及び相手側共有端末装置112の一方において、データを更新する操作に含まれない操作を行なうと、まず操作を受付けた装置の表示にその操作が反映され、続いて、他方の装置の表示に同じ操作が反映される。例えば、開始側共有端末装置110のユーザが、画面150上のスクロールバー154Aを画面の下方向に移動させる操作を行なったものとする。この操作はまず開始側のブラウザ126で反映される。すなわち、開始側のブラウザ126の表示は、画面150から画面160に変更される。画面160においては、スクロールバー154Aの表示位置が移動し、それに伴い画面上でのデータの表示も変更される。続く操作の共有により、相手側のブラウザ136においても操作が反映される。すなわち、相手側のブラウザ136の表示は画面152から、開始側のブラウザ126の表示している画面160と同じ画面162に変更される。画面162上のスクロールバー154Bの位置は画面160上のスクロールバー154Aの位置と同じ位置となる。
Furthermore, when one of the initiating shared
開始側共有端末装置110と相手側共有端末装置112とは、互いにユーザの入力に応答してブラウザの制御情報を作成する。さらに一方の装置のブラウザに対し行なわれた制御が他方の装置のブラウザにおいても行なわれるように、制御情報を相互にやり取りする。制御情報は、例えば、ブラウザの表示画面のスクロール、進む、戻る、及び履歴表示等の操作に対応する処理を制御するための情報、並びに取得すべきデータの位置を表すURL及びURLにより示される位置に対応するデータの転送を受けるようブラウザを制御するための情報である。
The initiating shared
開始側共有端末装置110及び相手側共有端末装置112が同じ表示を行なうためには、双方が同じデータを得ることが必要となる。ところが、サーバ104により提供されるデータは、同一のURLにより識別されるデータであっても、アクセスするタイミング等により変化することがある。
In order for the initiating shared
そこで、本実施の形態に係るデータ共有システム100は、キャッシュ128を用いて、データの共有を行なう。一般的なウェブブラウザにおいては、キャッシュを用いてデータへのアクセス速度を向上させることが行なわれている。すなわち、ウェブブラウザがネットワークにアクセスしてデータを取得し表示した際に、取得したデータをキャッシュに格納しておく。同じデータを再度表示しようとした際には、ウェブブラウザはキャッシュから該当するデータを取得して表示する。これによりブラウザは、ネットワーク102へアクセスすることなく、同じデータを繰返し表示することができる。
Therefore, the
本実施の形態に係るデータ共有システム100においてキャッシュ128は、開始側のブラウザ126に対しては、一般的なキャッシュとしての機能を持つ。ただしキャッシュ128は、相手側のブラウザ136に対しては、共有されるべきデータの唯一の転送元として機能する。すなわち、データの取得を要する処理を求める操作が行なわれると、開始側共有端末装置110が、サーバ104又はキャッシュ128から、相手側共有端末装置112に先立ってデータを取得し、開始側のブラウザ126に転送する。さらに、取得したデータをキャッシュ128に格納することにより、開始側のブラウザ126に転送されたデータと同じデータを準備する。そして、キャッシュ128に格納されたデータの転送を相手側のブラウザ136が受けるようにする。
In the
〈構成〉
図3に、図1に示すキャッシュ128内のデータの概略構成を示す。図3を参照して、キャッシュ128は、複数のキャッシュデータ170A,170B,…,170Nを含む。キャッシュデータ170A,170B,…,170Nの各々は、そのキャッシュデータを識別するための名称172と、データ174とを含む。名称172は、ネットワーク102を介してデータ174を取得した際に用いられたURLに対応する。開始側共有制御部124がキャッシュ128からデータを取得する際には、名称172を参照して、取得すべきデータを選択する。
<Constitution>
FIG. 3 shows a schematic configuration of data in the
図4に、開始側共有制御部124及び相手側共有制御部134が作成する制御情報の例を示す。図4を参照して、制御情報には2種の情報が存在する。一方の制御情報180Aは、データを更新する操作に含まれない操作に対応する動作を、ブラウザに命令するための操作制御情報である。他方の制御情報180Bは、データを更新する操作に対応し、データの取得を命令するためのデータ取得制御情報である。
FIG. 4 shows an example of control information created by the start-side
操作制御情報180Aは、この制御情報がデータを更新する操作に含まれない操作に対応する動作をブラウザに要求するものであることを表すパラメタである操作制御要求を格納するフィールド182と、操作の内容184とを含む。
The
データ取得制御情報180Bは、この制御情報がデータの取得を要求するものであることを表すパラメタであるデータ取得制御要求を格納するフィールド186と、取得対象のデータに対応するURL188とを含む。本実施の形態に係るデータ取得制御情報180Bはさらに、データを取得する際の転送元がネットワーク102上のサーバ104であるか、キャッシュであるかの別を表す転送元指定情報190を含む。転送元指定情報190は、転送元がサーバであることを表す第1の値と、転送元がキャッシュであることを表す第2の値とのいずれかをとる。開始側共有端末装置110が相手側共有端末装置112に対してデータ共有制御情報180Bを送信する際には、開始側共有制御部124が転送元指定情報190の値を第2の値に設定する。それ以外の場合には、転送元指定情報190の値は、開始側共有制御部124又は相手側共有制御部134により設定される。
The data
本実施の形態に係る開始側共有端末装置110は、実質的には、一般的なコンピュータと同様のプログラム実行のためのハードウェアと、そのハードウェアにより実行されるコンピュータプログラム(以下単に「プログラム」と呼ぶ。)と、そのハードウェアに格納されるデータとにより実現される。図5に、このコンピュータシステム200の内部構成を示す。
The initiating shared
図5を参照して、このコンピュータシステム200は、コンピュータ210と、キーボード212と、マウス214と、モニタ216とを含む。コンピュータ210は、CD−ROM(コンパクトディスク読出専用メモリ)ドライブ222及びFD(フレキシブルディスク)ドライブ226と、CPU(中央処理装置)228と、キーボード212と、マウス214と、モニタ216、CD−ROMドライブ222、FDドライブ226、CPU228に接続されたバス230と、バス230に接続され、ブートアッププログラム等を記憶する読出専用メモリ(ROM)232と、バス230に接続され、プログラム命令、システムプログラム、及び作業データ等を記憶するランダムアクセスメモリ(RAM)234と、プログラム及びデータを記憶するハードディスク236と、図1に示すネットワーク102への接続を提供するネットワークアダプタボード238とを含む。
With reference to FIG. 5, the
コンピュータシステム200に開始側共有端末装置110としての動作を行なわせるためのプログラムは、CD−ROMドライブ222若しくはFDドライブ226に挿入されるCD−ROM220若しくはFD224に記憶され、さらにハードディスク236に転送される。又は、プログラムはネットワーク102(図1参照)を通じてコンピュータ210に送信されハードディスク236に記憶されてもよい。プログラムは実行の際にRAM234にロードされる。CD−ROM220から、FD224から、若しくはネットワーク102を介して、直接にRAM234にプログラムをロードしてもよい。
A program for causing the
このプログラムは、コンピュータ210に本実施の形態に係る開始側共有端末装置110として動作を行なわせる複数の命令を含む。この動作を行なわせるのに必要な基本的機能のいくつかはコンピュータ210上で動作するオペレーティングシステム(OS)若しくはサードパーティのプログラム、又はコンピュータ210にインストールされる各種ツールキットのモジュールにより提供される。したがってこのプログラムは開始側共有端末装置110の動作をコンピュータ210に実行させるのに必要な機能全てを必ずしも含まなくてよい。このプログラムは、命令のうち、所望の結果が得られるように制御されたやり方で適切な機能又は「ツール」を呼出すことにより、上記した開始側共有端末装置110としての動作を実行する命令のみを含んでいればよい。コンピュータシステム200の動作は周知であるので、ここでは繰返さない。
This program includes a plurality of instructions for causing
図6に、開始側共有端末装置110の機能をコンピュータに実現させるためのプログラムの制御構造を示す。図6を参照して、開始側共有端末処理260が開始されると、ステップ262において、ユーザによる操作の有無を判定する。入力部122(図1参照)により操作情報が発行されたならば、ステップ264に進む。さもなければステップ274に進む。ステップ264では、操作情報に基づき、ユーザによる操作がデータを更新する操作であるかそれ以外のものであるかを判定する。データの取得を伴う動作を求める操作であれば、ステップ270に進む。それ以外のものであればステップ272に進む。この判定は、ブラウザ126において実行される。
FIG. 6 shows a control structure of a program for causing a computer to realize the functions of the initiating shared
ステップ270では、相手側共有端末装置112(図1参照)との間でのデータの共有を実現するための開始側データ共有処理を行ない、ステップ262に戻る。開始側データ共有処理の詳細については、図7を用いて後述する。
In
ステップ272では、新たなデータの取得を伴わない動作を求める操作の共有を行なうための操作共有処理を行ない、ステップ262に戻る。操作共有処理の詳細については、図8を用いて後述する。
In
ステップ262からステップ274に処理が移行すると、ステップ274において、相手側共有端末装置112から制御情報を受信したか否かを判定する。制御情報を受信したならばステップ276に移行する。さもなければステップ262に戻る。
When the processing shifts from
ステップ276では、受信した制御情報を解析する。続くステップ278では、受信した制御情報が操作制御情報180Aであるか、データ取得制御情報180Bであるかを判定する。制御情報がデータ取得制御情報180Bであれば、ステップ270の開始側データ共有処理に移行する。操作制御情報180Aであれば、操作制御情報180Aにより表される操作の内容を開始側のブラウザ126において反映するための操作制御情報反映処理をステップ280において行ない、ステップ262に戻る。操作制御情報反映処理の詳細については、図9を用いて後述する。
In
図7に、図6のステップ270において行なわれる開始側データ共有処理の制御構造を示す。図7を参照して、ステップ270の開始側データ共有処理が開始されると、ステップ302において、開始側のブラウザ126がこのデータ取得制御情報180Bにしたがい転送要求を発行し、開始側共有制御部124がこれを受付ける。なお、図6のステップ262で受付けた操作が、リロード(再読込)ボタンを押す操作など、サーバ104からのデータ取得を指定した操作である場合には、転送要求において、データの転送を禁止するための記述を付加する。例えば、HTTPリクエストで転送要求を行なう際に、ヘッダに、キャッシュ128からのデータの転送を禁止するための記述「Pragma:no−cache」が付加される。
FIG. 7 shows a control structure of the start side data sharing process performed in
ステップ304では、転送要求により指定された転送元からデータを取得する。すなわち、転送元としてサーバ104が指定されていたならば、ステップ302で受付けた転送要求を、当該転送要求に基づきネットワーク102を介してサーバ104に送信し、サーバ104からデータを受信する。転送元としてキャッシュが指定されていたならば、該当するデータをキャッシュ128(図1参照)から読出す。
In
ステップ306では、ステップ304で取得したデータを開始側のブラウザ126に供給し、当該データを開始側のブラウザ126の表示に反映させる。ステップ308では、ステップ304で受信したデータをキャッシュ128に格納し、開始側のブラウザ126において反映されているデータとキャッシュ128内のデータとを同期させる。
In
続くステップ310では、データ取得制御情報180Bを準備し、その転送元指定情報190を、キャッシュ128を表す第2の値に設定する。ステップ312では、ステップ310で準備したデータ取得制御情報180Bを相手側共有端末装置112(図1参照)に送信する。ステップ316では、相手側共有端末装置112から転送要求が送信されてくるのを待ち、転送要求を受信するとステップ318に進む。なお、相手側共有端末装置112から転送要求を受信した場合、当該転送要求においては、図12を用いて後述するとおり、キャッシュ128からのデータの転送を指定する情報が付加されている。
In the
ステップ318では、ステップ316で受信した転送要求にしたがい、転送の対象となるデータをキャッシュ128から取得する。ステップ320では、ステップ318で取得したデータを相手側共有端末装置112に送信し、処理を終了する。
In
図8に、図6のステップ272において実行される操作共有処理の制御構造を示す。図8を参照して、ステップ272の操作共有処理が開始されると、ステップ344において、操作が自己のブラウザに反映されるのを待ち、そのブラウザの動作に関しブラウザから情報を得る。操作が反映されるとステップ346に進む。ステップ346では、ステップ274で得た情報をもとに操作制御情報180Aを作成し、共有関係にある他の装置に対して操作制御情報180A送信し、処理を終了する。
FIG. 8 shows a control structure of the operation sharing process executed in
図9に、図6のステップ280において実行される操作制御反映処理の制御構造を示す。図9を参照して、ステップ280の操作制御情報反映処理が開始されると、ステップ360において、他の装置から受信した操作制御情報180Aをもとに、ブラウザに対し操作情報を模した情報を生成し、ブラウザに対し発行する。ステップ362では、操作制御情報180Aにより指定された制御内容の操作がブラウザに反映されるのを待つ。操作が反映されると処理を終了する。
FIG. 9 shows a control structure of the operation control reflection process executed in
本実施の形態に係る相手側共有端末装置112(図1参照)は、開始側共有端末装置110に係るコンピュータシステム200(図5参照)と同様のプログラム実行のためのハードウェアと、そのハードウェアにより実行されるプログラムと、そのハードウェアに格納されるデータとにより実現される。相手側共有端末装置112の機能を実現するコンピュータの内部構造は図5に示すコンピュータシステム200と同様であり、その動作は周知であるので、これらについての説明は、ここでは繰返さない。
The counterpart shared terminal apparatus 112 (see FIG. 1) according to the present embodiment includes hardware for executing the same program as the computer system 200 (see FIG. 5) according to the start shared
図10に、相手側共有端末装置112の機能をコンピュータに実現させるための制御構造を示す。図10を参照して、相手側共有端末処理380の制御構造は、図6に示す開始側共有端末処理260の制御構造に類似する。図10において、図6と同じステップには同じ参照符号を付してある。ただし、相手側共有端末処理380では、開始側共有端末処理260のステップ270における開始側データ共有処理に替えて、ステップ388の処理を行なう。ステップ388では、開始側共有端末装置110との間で共有されるデータを取得し自己のブラウザに反映させるための相手側データ取得処理を行なう。また、相手側共有端末処理380では、開始側共有端末処理264での判定結果が得られれば、ステップ386へ進む。ステップ386では、開始側共有端末装置110との間でのデータの共有を実現するための相手側データ共有処理を行ない、ステップ388に進む。
FIG. 10 shows a control structure for causing a computer to realize the functions of the counterpart shared
図11に、図10のステップ386において実行される相手側データ共有処理の制御構造を示す。図11を参照して、ステップ386での相手側データ共有処理が開始されると、ステップ424で、転送要求をもとにデータ取得制御情報180Bを作成し開始側共有端末装置110に送信する。このデータ取得制御情報180Bに対し、開始側共有端末装置110が開始側データ共有処理(図7参照)を行なって、データ取得制御情報180Bを送信してくる。ステップ426では、開始側共有端末装置110からデータ取得制御情報180Bが送信されてくるのを待つ。データ取得制御情報180Bを受信すると、相手側データ共有処理386を終了し、図10のステップ388に示す相手側データ取得処理に移行する。
FIG. 11 shows a control structure of the counterpart data sharing process executed in
図10に示すステップ388の相手側データ取得処理は、開始側共有端末110からデータ取得制御情報180Bが与えられた場合に実行される。このデータ取得制御情報180Bは、図7に示す開始側データ共有処理のステップ312において送信されたものである。したがって、このデータ取得制御情報180Bの転送元指定情報190は、第2の値に設定されている。
The counterpart data acquisition process in
図12に、図10のステップ388において実行される相手側データ取得処理の制御構造を示す。図12を参照して、この処理が開始されると、ステップ442において、相手側共有制御部134(図1参照)が、受信したデータ取得制御情報180Bにしたがい転送要求を発行する。データ取得制御情報180Bにおいて、データの転送元としてキャッシュが指定されているため、相手側共有制御部134は、この転送要求を開始側共有端末装置110にこれを送信する。この転送要求は、開始側共有端末装置110のキャッシュ128からのデータの転送を要求する旨の情報を含む。
FIG. 12 shows a control structure of the counterpart data acquisition process executed in
この転送要求を開始側共有端末装置110が図7に示すステップ316において受信し、ステップ318及び320の処理を行なう。これにより、開始側共有端末装置110は、相手側共有端末装置112に対しキャッシュ128内のデータを送信してくる。
The initiating shared
ステップ444では、開始側共有端末装置110から送信されてきたデータを取得する。ステップ446では、ステップ444で受信したデータを相手側のブラウザ136に与え、相手側のブラウザ136の表示に当該データを反映させて処理を終了する。
In
〈動作〉
本実施の形態に係るデータ共有システム100(図1参照)は、大別して2種類の動作を実行する。一方の動作は、データ共有を行ない、開始側のブラウザ126と相手側のブラウザ136とに同一のデータを反映させる動作であり、他方の動作は、ユーザの操作を共有し、ブラウザ126及び136の表示状態を同一に保つ動作である。いずれの動作も、開始側共有端末装置110のユーザ又は相手側共有端末装置112のユーザによる操作に応答して開始される。
<Operation>
The data sharing system 100 (see FIG. 1) according to the present embodiment roughly executes two types of operations. One operation is to perform data sharing and reflect the same data to the initiating
以下にまず、データ共有を行なうための動作について説明する。図13に、開始側共有端末装置110に対してユーザが操作を行なう場合における、サーバ104にあるデータを新たに取得し共有する処理のシーケンスを示す。図13を参照して、開始側共有端末装置110のユーザが入力部122に対して、データの取得を要する操作を行なう。入力部122(図1参照)は、その操作に対応する操作情報460を発生する。
First, the operation for data sharing will be described. FIG. 13 shows a sequence of processing for newly acquiring and sharing data in the
ここで、開始側共有端末装置110は、以下の処理462を行なってサーバ104に対して転送要求464を送信する。すなわち、開始側のブラウザ126が、与えられた操作情報にしたがい動作する。この場合、操作に基づき取得すべきデータのURLを特定し、そのデータに関する転送要求464を発行する。この際、受付けた操作がサーバ104からのデータ取得を指定した操作であれば、ブラウザにより、転送要求に、キャッシュ128からのデータの転送を禁止するための記述が付加される。開始側共有制御部124は、まず転送要求をもとに、取得すべきデータのURLを特定する。転送要求に対応するデータがキャッシュ128内にない場合、又は、上記記述によりキャッシュからのデータの転送が禁止されている場合、この転送要求を、通信部120を介してサーバ104に対して送信する。
Here, the initiating shared
サーバ104は、転送要求464を受信すると、その転送要求により指定されたURLのデータを取得する処理466を行ない、取得したデータ468を転送の要求元である開始側共有端末装置110に送信する。開始側共有制御部124は、通信部120を介してデータ468を受信する。
Upon receiving the
転送要求に対応するデータがキャッシュ128内にあり、かつキャッシュからのデータの転送が禁止する記述が転送要求にない場合、サーバ104からデータ468を得る代わりに、処理462において次の処理を行なう。すなわち、開始側共有制御部124は、この転送要求に基づき、キャッシュ128から、その転送要求により指定されたURLのデータ468を取得する。
If the data corresponding to the transfer request is in the
以上のようにして、開始側共有制御部124がデータ468を取得すると、そのデータ468を開始側のブラウザ126に与えて、開始側のブラウザ126の表示にデータ468を反映させる。開始側共有制御部124はさらに、データ468をキャッシュ128に格納する。キャッシュ128内のキャッシュデータ170A,170B,…,170N(図3参照)のうち上記の指定されたURLに対応する名称172を持つものにおいて、そのキャッシュデータ内のデータ174は、開始側のブラウザ126において表示されているデータと同一のデータとなる。
As described above, when the start-side
続いて、開始側共有制御部124は、データの取得を相手側のブラウザ136(図1参照)に実行させるためのデータ取得制御情報476を作成する処理474を行なう。作成されるデータ取得制御情報476のURL188は、処理462において転送要求をもとに特定されたURLと同じである。ただし、開始側共有制御部124は、キャッシュ128を転送元に指定するために、転送元指定情報190を第2の値に設定する。開始側共有制御部124は、作成したデータ取得制御情報476を、通信部120を介して相手側共有端末装置112に対して送信する。
Subsequently, the start-side
相手側共有制御部134(図1参照)は、通信部130を介してデータ取得制御情報476を受信すると、以下の処理478を実行する。すなわち、相手側共有制御部134は、受信したデータ取得制御情報476にしたがい、データ取得制御情報476のURL188(図4参照)に対応するデータに関する転送要求480を発行する処理を行なう。この転送要求において指定されるURLは、転送要求464により指定されるURLと同じである。しかし、データ取得制御情報476においては転送元としてキャッシュ128が指定されているため、発行される転送要求480においても、転送元としてキャッシュ128が指定される。相手側共有制御部134はこの転送要求480を、通信部130を介して開始側共有端末装置110に対し送信する。
Upon receiving the data
開始側共有制御部124は、通信部120を介して相手側共有端末装置112から転送要求480を受信すると、以下の処理482を実行する。すなわち開始側共有制御部124は、当該転送要求に基づいてデータの転送元を特定する。転送要求480においては、転送元としてキャッシュ128が指定されている。そのため、開始側共有制御部124は、キャッシュ128(図3参照)から該当するデータ484を取得する。この際、開始側共有制御部124は、キャッシュデータ170A,170B,…,170Nの中から、転送要求480により指定されたURLに対応する名称172を持つものを選び、当該キャッシュデータにおけるデータ174を取得する。転送要求480により指定されるURLは、転送要求464により指定されるURLと同じであるため、この際取得されるデータ484は、サーバ104が処理466において開始側共有端末装置110に送信したデータ468となる。取得したデータ484は、相手側共有端末装置112に送信される。
When the start-side
相手側共有制御部134が、通信部130(図1参照)を介してこのデータ484を受信すると、当該データ484を相手側のブラウザ136に与えて、当該データ484を相手側のブラウザ136の表示に反映させる。相手側のブラウザ136の表示に反映されるデータ484は、開始側のブラウザ126において表示に反映されたデータ468と同じものである。したがって、開始側のブラウザ126の表示に反映されたデータと同じデータが、相手側のブラウザ136の表示に反映される。
When the partner-side
図14に、相手側共有端末装置112に対してユーザが操作を行なった場合におけるデータ共有の処理のシーケンスを示す。なお、図14において図13と同じ処理及び情報には同じ参照符号を付してある。図14を参照して、相手側共有端末装置112のユーザが入力部132(図1参照)に対して、データを更新するための操作を行なう。入力部132はその操作に対応する操作情報500を発生し、相手側のブラウザ136に与える。相手側共有装置112は、以下の処理502を行なう。すなわち、まず相手側のブラウザ136が操作情報500に応答して、転送要求を発行する。相手側共有制御部134は、この転送要求をもとに、データ取得制御情報504を作成し、通信部130を介して開始側共有端末装置110に送信する。
FIG. 14 shows a sequence of data sharing processing when the user performs an operation on partner-side shared
この場合、開始側共有端末装置110は、処理462において、このデータ取得制御情報504に基づき、転送要求を作成し、これをサーバ104に送信する。これ以降、開始側共有端末装置110は、図13に示す処理と同様の処理を実行する。したがって、開始側のブラウザ126の表示に反映されたデータと同じデータが、相手側のブラウザ136の表示に反映される。
In this case, the start-side shared
続いて、操作の共有を実現する動作について説明する。図1に示す開始側共有端末装置110及び相手側共有端末装置112の一方において、ユーザがデータを更新する操作以外の操作を行なう。当該操作を受けた装置のブラウザ(ブラウザ126又はブラウザ136)は、その操作に応じて動作し、当該操作を受けた装置の共有制御部(開始側共有制御部124又は相手側共有制御部134)は、操作情報にしたがってブラウザが動作し操作が反映されると、そのブラウザの動作に関しブラウザから情報を得る。共有制御部は、得た情報をもとに操作制御情報180Aを作成し、共有関係にある他の装置に対して操作制御情報180Aを送信する。
Next, an operation for realizing operation sharing will be described. One of the start side shared
操作制御情報180Aを受信すると、操作制御情報180Aをもとに、ブラウザに対し操作情報を模した情報を生成し、ブラウザに与える。操作制御情報180Aにより指定された制御内容の操作がブラウザに反映されるのを待つ。操作が反映されると処理を終了する。
When the
以上のように、データの取得を伴う処理を要求する操作が開始側共有端末装置110及び相手側共有端末装置112のいずれの装置において行なわれた場合でも、その操作に対応するデータ取得制御情報が、開始側共有端末装置110に集約される。その結果、開始側共有端末装置110が相手側共有端末装置112に先立ってデータの取得を行なうことになる。この際、データをサーバ104から新たに取得するか、それともキャッシュ内に既に存在するデータを取得するかを選択できる。
As described above, even when an operation requesting a process involving data acquisition is performed in either the initiating shared
さらに、取得したデータを開始側のブラウザ126の表示に反映させるとともに、キャッシュ128に保持しておく。これにより、開始側のブラウザ126に反映させたデータがサーバ104から取得した新たなデータであっても、またキャッシュ128に格納されていたデータであっても、そのデータと同じデータがキャッシュ128内に準備されることになる。キャッシュ128へのデータ格納後に開始側共有端末装置110が相手側共有端末装置112に対しデータ取得制御情報を発行することにより、相手側共有端末装置112は、キャッシュ128内のデータを取得することが可能になる。
Further, the acquired data is reflected on the display of the
さらに、開始側共有端末装置110が、データ取得制御情報においてキャッシュ128を転送元として指定する。これにより、相手側共有端末装置112は、キャッシュ128からのデータの転送を要求することになる。開始側共有端末装置110は、この要求にしたがって、データの転送元としてキャッシュ128を選び、当該キャッシュ128内に格納されたデータを相手側共有端末装置112に送信する。したがって、開始側のブラウザ126の表示に反映されたデータと同じデータが、相手側のブラウザ136の表示に反映される。
Furthermore, the initiating shared
[第2の実施の形態]
第1の実施の形態では、開始側共有端末装置110と相手側共有端末装置112とが、データ取得制御情報において転送元指定情報を設定し、ブラウザに転送元の指定を行なわせて、開始側共有端末装置110と相手側共有端末装置112との間のデータの共有を実現した。しかし、本発明はこのような実施の形態には限定されない。
[Second Embodiment]
In the first embodiment, the initiating shared
以下に示す第2の実施の形態においては、データ取得制御情報は転送元指定情報を含まない。その代り、キャッシュに格納されるデータ自体に、転送元の指定に関する情報を付与する。そして、データの取得時に、当該付与する情報に基づいて転送元の選択を行なう。なお、第2の実施の形態では、後述のとおり、1台の開始側共有端末装置に対して、複数の相手側共有端末装置がネットワーク102を介して接続されていても適切にデータ共有を実現できる。前提として、相手側共有端末装置112の転送要求の送信先は、取得するデータのURLに関わらず、常に開始側共有端末装置110に設定される。これは、例えば相手側共有端末装置112のプロキシサーバとして、開始側共有端末装置110を設定することによって実現される。
In the second embodiment described below, the data acquisition control information does not include transfer source designation information. Instead, information relating to the designation of the transfer source is added to the data itself stored in the cache. Then, when acquiring data, the transfer source is selected based on the information to be given. In the second embodiment, as will be described later, even if a plurality of counterpart shared terminals are connected via the
第2の実施の形態に係るデータ共有システムは、第1の実施の形態に係るデータ共有システム100と同様に、開始側共有端末装置110及び相手側共有装置112を含む。これらの開始側共有端末装置110及び相手側共有装置112は、第1の実施の形態と同様のハードウェアと、そのハードウェアにより実行されるプログラムと、そのハードウェアに格納されるデータとにより実現される。しかし、本実施の形態に係るキャッシュのデータ構成は、第1の実施の形態に係るキャッシュのものと異なる。
Similar to the
図15に、本実施の形態に係るキャッシュのデータ構成を示す。図15を参照して、キャッシュ530は、キャッシュデータ532A,532B,…,532Nを格納する。これらのキャッシュデータ532A,532B,…,532Nはそれぞれ、図3に示すキャッシュデータ170A,170B,…,170Nと同様に、データを識別するための名称172とデータ174とを含む。さらに、キャッシュデータ532A,532B,…,532Nの各々に対して、相手側共有端末装置112へのデータを転送する際に転送元についての判別に用いるフラグを格納するための領域540が設けられている。この領域540には、相手側共有端末装置を表す値が格納される(以下、この状態を「フラグが立っている」と呼ぶ。)。又は何も格納されない(以下、この状態を「フラグが下りている」と呼ぶ。)。フラグは、当該データが、当該フラグの値により表されている相手側共有端末装置112と共有されるべきであることを表す。例えばキャッシュデータ532Aには、「共有相手A」という名前の相手側共有端末装置を表すフラグが立っている。これは、「www.○○○.co.jp」の名称で識別されるキャッシュデータ532Aがデータ共有の対象であることを表す。すなわち、このキャッシュデータ532Aに関する転送要求が与えられた場合には、要求されたキャッシュデータ532Aにおけるデータ174をキャッシュから取得して転送するべきであることを表す。また、例えばデータ532Bのフラグは下りている。これは、「www.△△△.co.jp」の名称で識別されるキャッシュデータ532Bがデータ共有の対象ではないことを表す。すなわち、このキャッシュデータ532Bに関する転送要求が開始側共有制御部124に与えられた場合には、開始側共有制御部124は、キャッシュ内からデータ532Bを取得して要求の発行元に転送しても、サーバ104からデータを取得して転送してキャッシュデータ532Bを取得したデータで更新してもよいことを表す。
FIG. 15 shows the data structure of the cache according to the present embodiment. Referring to FIG. 15,
なお、フラグは、立っている状態に対応する第1の値、又は下りている状態に対応する第2の値に設定される。相手側共有端末装置が1台であれば、フラグは立っている状態と下りている状態とを区別できればよい。この場合、1と0との2値で表してもよい。フラグが立っている状態にあるときに限り、フラグが立っている状態にあることを表す情報を付与し、下りている状態になると、その情報を消去するようにすることによっても、フラグが立っている状態と下りている状態とを表すことができる。相手側共有端末装置が複数の場合には、それぞれの相手側共有端末装置を表すフラグを設定する。これらのフラグの各々は、対応の相手側共有端末装置に関して、フラグが立っている状態にあるのか、下りている状態にあるのかを表す。この場合、相手側共有端末装置ごとに1と0との2値で状態を表したフラグをデータに付してもよい。また、データの送信がまだ行なわれていない相手側共有端末装置を表す情報をデータに付与し、その相手側共有端末装置に対するデータの送信が完了すると、その情報を消去するようにすることによっても、フラグが立っている状態と下りている状態とを表すことができる。 The flag is set to a first value corresponding to the standing state or a second value corresponding to the falling state. If there is one counterpart shared terminal device, it is sufficient that the flag can be distinguished from the standing state and the descending state. In this case, it may be expressed by a binary value of 1 and 0. Only when the flag is in a standing state, information indicating that the flag is in a standing state is added, and when it is in a descending state, the information can be deleted. It is possible to represent the state of being down and the state of being down. When there are a plurality of partner-side shared terminal devices, a flag representing each partner-side shared terminal device is set. Each of these flags indicates whether the flag is standing or descending with respect to the corresponding counterpart shared terminal apparatus. In this case, a flag representing the state by binary values of 1 and 0 may be attached to the data for each partner shared terminal device. It is also possible to give information indicating the other party shared terminal device to which data transmission has not yet been performed to the data and delete the information when the data transmission to the other party shared terminal device is completed. The state where the flag is standing and the state where it is descending can be expressed.
本実施の形態において開始側共有制御部124は、図4に示すデータ取得制御情報180Bに代る制御情報として、データ取得指示を作成し相手側共有端末装置112に対し送信する。図16に、データ取得指示の例を示す。データ取得指示550は、その制御情報が開始側共有端末装置110から相手側共有端末装置112に対してデータの取得を指示するものであることを表すパラメタを格納するフィールド552と、取得するデータのURL554とを含む。データ取得指示550は、第1の実施の形態に係るデータ取得制御要求情報180Bが有するような転送元指定情報を持たない。
In the present embodiment, the start side
第2の実施の形態において、開始側共有制御部124及び相手側共有制御部134がデータを更新する操作に含まれない操作に応じて実行する動作を実現するための処理の制御構造は、第1の実施の形態のものと同様である。開始側共有制御部124及び相手側136がデータを更新する操作に応じて実行する処理の構造は、第1の実施の形態に係る処理の制御構造とは異なる。以下、コンピュータに、第2の実施の形態に係る開始側共有端末装置としての機能を実現させるためのプログラムにおいて、開始側共有制御部124の動作を実現するための開始側共有端末処理の制御構造を説明する。
In the second embodiment, the control structure of the process for realizing the operation executed by the start side
開始側共有端末装置110の共有制御部124は、データの転送要求(HTTPリクエスト)が与えられるとサーバ104より転送要求(HTTPリクエスト)に対応するデータをHTTPレスポンスを用いて取得するためのデータ取得処理と、データを取得する動作を相手側共有端末装置112に実行させるための制御情報(データ取得指示)を送信するための制御情報送信処理と、相手側共有端末装置112よりデータの転送要求(HTTPリクエスト)を受信するための転送要求受信処理と、データ転送要求受信処理で受信した転送要求(HTTPリクエスト)に基づくデータをHTTPレスポンスを用いて相手側共有端末装置112に提供するデータ提供処理とを行なう。
When the data transfer request (HTTP request) is given, the sharing
図17に、入力部122(図1参照)がデータを更新する操作を受けたときの開始側共有装置110の処理600の構造をフローチャートで示す。図17を参照して、この処理600の実行が開始されると、まず、ステップ602において、ブラウザ126の表示するデータを更新する操作を受付ける。ブラウザ126は、受付けた操作に対応する動作を実行する。この場合データを更新する操作を受付けているため、ブラウザ126は、更新により新たに表示されるべきデータを取得するための転送要求(HTTPリクエスト)を発行する。この際、受付けた操作がサーバ104からのデータ取得を指定した操作であれば、ブラウザにより、転送要求のヘッダ内に、キャッシュからのデータの転送を禁止するための記述が付加される。ステップ604では、ステップ602で発行された転送要求(HTTPリクエスト)をもとに、取得すべきデータの名称を調べる。具体的には、取得すべきデータのネットワーク上での場所を表すURLを求める。
FIG. 17 is a flowchart showing the structure of the
ステップ606では、この時点でキャッシュ128に保持されているデータを、以降の処理に利用できるか否かを判定する。ステップ604で求めたURLに対応するデータがキャッシュ128に保持されていて、かつ、転送要求(HTTPリクエスト)にキャッシュからのデータの転送を禁止するための記述が付加されていない、という条件が充足されていれば、キャッシュ128に含まれているデータを利用できると判定し、ステップ614に進む。充足されていなければ、利用できないと判定し、ステップ608に進む。
In
ステップ608及びステップ610ではデータ取得処理を実行する。ステップ608では、ステップ604で求めたURLに基づき、ステップ602で発行された転送要求(HTTPリクエスト)を、通信部120を介してサーバ104に対して送信する。ステップ610ではサーバ104よりデータを取得する。具体的には、ステップ608で送信した転送要求(HTTPリクエスト)に対する応答(HTTPレスポンス)をサーバ104より受信する。続くステップ612では、取得したデータをキャッシュ128に格納する。
In
ステップ614では、キャッシュ128内のステップ604で求めたURLに対応するデータに、フラグを立てる。もし相手側共有端末装置112が複数台存在する場合には、相手側共有端末装置112の各々に対応するフラグを立てる。ステップ616では制御情報送信処理を実行する。すなわち、通信部120を介して相手側共有端末装置112に対し、取得されたデータに関するデータ取得指示550を送信する。もし相手側共有端末装置112が複数台存在する場合には、相手側共有端末装置112の各々に対してデータ取得指示550を送信する。ステップ618では、ブラウザ126における表示内容を、キャッシュ128内にある取得されたデータに基づいて更新し処理600を終了する。
In
以上、図17に示す処理600により、開始側共有端末装置110のブラウザ126が新しいデータに基づいて表示を更新した場合には、キャッシュ128にデータが保持され、さらにキャッシュ内のそのデータに対応してフラグが立つことになる。
As described above, when the
図18に、開始側共有端末装置110が、相手側共有端末装置112より転送要求(HTTPリクエスト)を受付けて、その転送要求(HTTPリクエスト)に応答する処理640の制御構造をフローチャートで示す。図18を参照して、処理640の実行が開始されると、ステップ642において転送要求受信処理を実行する。すなわち、転送要求(HTTPリクエスト)を受付ける。
FIG. 18 is a flowchart showing a control structure of processing 640 in which the initiating shared
ステップ644では、ステップ642で与えられた転送要求を解析する。具体的には、当該HTTPリクエストに含まれるURLを取出すとともに、HTTPリクエストの送信元を識別する。またこの際、HTTPリクエストのヘッダ内において、キャッシュからのデータの転送を禁止するための記述があるかを調べる。
In
ステップ646では、相手側の要求するデータを、キャッシュ128内で検索する。ステップ648では、キャッシュ128に含まれているデータを利用できるかを判定する。すなわち、ステップ644で取出したURLに対応するデータがステップ646でキャッシュ128で検索され、かつ、ステップ644でキャッシュからのデータの転送を禁止するための記述が検出されなかった、という条件が充足されていれば、キャッシュ128内のデータを利用できると判定し、ステップ650に進む。条件が充足されていなければ、利用できないと判定し、ステップ652に進む。
In
ステップ650では、ステップ646で検索されたキャッシュ128内のデータにフラグが立っているか否かを判定する。フラグが立っていなければ、判定結果はNOとなり、ステップ652に進む。立っていれば判定結果はYESとなり、ステップ670に進む。なお、相手側共有端末装置112が複数台存在する場合には、ステップ644で識別された、送信元の相手側共有端末装置のフラグが立っているか否かを判定する。
In
ステップ652及びステップ654では、図17に示すステップ608及びステップ610と同様のデータ取得処理を実行する。すなわち、ステップ652では、転送要求(HTTPリクエスト)をサーバ104に送信する。ステップ654では、転送要求(HTTPリクエスト)への応答(HTTPレスポンス)を受信することにより、サーバ104からデータを取得する。続くステップ656では、受信した取得対象のデータをキャッシュ128に格納する。
In
ステップ660では、ステップ654で取得したデータを相手側に返信することにより、転送要求に対応するデータを相手側に提供する。具体的には、ステップ654で取得されたデータを、転送要求の送信元に対して(HTTPレスポンスを用いて)送信する。
In
ステップ662では、ブラウザ126における表示内容を、ステップ654で取得したデータに基づいて更新する。続くステップ666では、ステップ660でのデータの送信先以外に、相手側共有端末装置があるか否かを判定する。ステップ660でのデータの送信先以外に相手側共有端末装置がある場合とは、例えば、1台の開始側共有端末装置110と2台以上の相手側共有端末装置112とでデータを共有しているような場合である。ステップ660でのデータの送信先以外に相手側共有端末装置があればステップ667に進む。なければ処理640を終了する。
In
ステップ667では、ステップ656でキャッシュ128に格納したデータに対応する、ステップ660でのデータの送信先以外の相手側共有端末装置のフラグを立てる。ステップ668では、ステップ667で立てたフラグに基づき、図17のステップ616と同様の制御情報送信処理を実行する。すなわち、転送要求を送信してきた相手側共有端末装置以外の相手側共有端末装置に対して、取得したデータに関するデータ取得指示550を送信し、処理640を終了する。これにより、転送要求を送信してきた相手側共有端末装置において行なわれた操作を、それ以外の相手側共有端末装置にも反映させることが可能となる。
In
ステップ670及び672において、データ提供処理が実行される。すなわち、ステップ670では、ステップ646によりキャッシュ128で検索されたデータを含むHTTPレスポンスを準備し、相手側共有端末装置112に対しこれを送信する。続くステップ672では、開始側共有制御部124は、キャッシュ128に保持されたデータに対応する、転送要求の送信元の相手側共有端末装置112のフラグを下ろし、処理640を終了する。相手側共有端末装置が複数存在する場合でも、ステップ672において下ろすフラグは、ステップ670でのデータの送信先に対応するもののみである。それ以外の相手側共有端末装置112に対応するフラグについては何もしない。このようにしておくと、複数台の相手側共有端末装置の各々に対し共有すべきデータを送信し終えたか否かが、フラグによって識別可能になる。
In
なお、図17のステップ606での判定において、利用可能との判定結果が得られたものの、当該キャッシュ128に格納されたデータにフラグが立っていることがあり得る。このような場合には、ステップ608に進んでサーバ104からデータを取得してもよい。
Note that in the determination in
この場合、ステップ612では、新たにサーバ104から取得した方のデータを、既に格納されフラグが立っている方のデータとは別に、キャッシュ128内に格納する。さらに、新たにサーバ104から取得した方のデータにも、フラグを立てる。このようにしておくと、同じURLに対応する古いデータと新しいデータとが、共にキャッシュ128内に存在することになる。この場合、同じURLに対応するデータのうち、取得日時が古いものを相手側に返信し、古いデータをキャッシュ128から削除する。これにより、相手側共有端末装置112がまだ取得していないデータがある場合でも、開始側共有端末装置110はサーバ104から新しくデータを取得し、その後古いデータと新しいデータをともに相手側共有端末装置112に提供することができる。
In this case, in
相手側共有装置112の共有制御部134は、データを取得する動作を指示する制御情報(データ取得指示)を開始側共有端末装置110より受信するためのデータ取得指示受信処理と、データを取得する動作を指示する制御情報(データ取得指示)に基づき開始側共有端末装置110に転送要求(HTTPリクエスト)を送信して開始側共有端末装置110よりHTTPレスポンスによりデータを受信するためのデータ受信処理とを行なう。以下、図19、図20を用いて、第2の実施の形態における相手側共有端末装置112の処理を示す。
The sharing
図19に、相手側共有端末装置112において、ユーザによる入力部132への操作に応じて、ブラウザ136の表示を更新する処理700の構造を示す。処理700の実行が開始されると、ステップ702において、ブラウザ136が入力部132を介してデータを更新する操作を受付け、その操作に基づき、転送要求(HTTPリクエスト)を発行する。ステップ704では、取得すべきデータの名称を調べる。具体的には、ステップ702の操作に基づいて、取得すべきデータのURLを求める。ステップ706では、ステップ702で発行された転送要求(HTTPリクエスト)を開始側共有端末装置110に送信する。ステップ708では、開始側データ共有端末装置110からデータを取得する。具体的には、通信部130を介してステップ706で送信した転送要求への応答(HTTPレスポンス)を開始側共有端末装置110より受信する。ステップ710では、ブラウザ136における表示内容を取得したデータに基づき更新し、処理700を終了する。
FIG. 19 shows the structure of a
なお、図19での処理は、プロキシサーバとして、開始側共有端末装置110を設定すれば、既存のブラウザ技術において行なうことが可能な処理である。すなわち、相手側共有端末装置112は、プロキシサーバとして開始側共有端末装置110を設定することにより、転送要求(HTTPリクエスト)の送信先を指定していることになる。
Note that the process in FIG. 19 is a process that can be performed in the existing browser technology if the start-side shared
図20に、相手側共有端末装置112が開始側共有端末装置110よりデータ取得指示550を受信した場合に実行される処理720の構造を示す。ステップ720の実行が開始されると、ステップ722においてデータ取得指示受信処理を実行する。すなわち、通信部130を介して開始側共有端末装置110よりデータ取得指示550を受信する。続くステップ724及びステップ726では、データ受信処理を実行する。すなわち、ステップ724では、ステップ722で受信したデータ取得指示550に基づき、通信部130を介して開始側共有端末装置110に対し、ステップ722で受信したデータ取得指示550において指定されたURL554を含む転送要求(HTTPリクエスト)を送信する。ステップ726では、相手側共有制御部134は、通信部130を介して転送要求への応答(HTTPレスポンス)を開始側共有端末装置110より受信する。ステップ728では、ブラウザ136における表示内容を、ステップ726で受信したデータに基づいて更新し、処理720を終了する。
FIG. 20 shows the structure of the
本実施の形態においても、開始側共有端末装置110及び相手側共有端末装置112のいずれにおいてデータの取得を伴う処理を要求する操作が行なわれた場合でも、その操作に対応する転送要求が、開始側共有端末装置110に集約される。したがって、開始側共有端末装置110が相手側共有端末装置112に先立ってデータの取得を行なう。さらに、取得したデータを開始側のブラウザ126の表示に反映させるとともに、キャッシュ530に保持しておく。これにより、開始側のブラウザ126に反映させたデータと同じデータがキャッシュ530内に準備される。この際に、当該データを共有する相手側端末装置を表すフラグを立てる。このフラグにより、どのデータが共有すべきデータであるかを識別できるようになる。キャッシュ530へのデータ格納後に開始側共有端末装置110が相手側共有端末装置112に対しデータ取得指示を発行することにより、相手側共有端末装置112は、キャッシュ530内のデータを取得することが可能になる。相手側共有端末装置112は、データの転送を開始側端末装置110に要求する。開始側共有端末装置110は、この要求に応答して、要求されたデータと同じデータをキャッシュ530内で検索し、そのフラグを確認する。共有すべきデータにはフラグが立っているため、データの転送元としてキャッシュ530を選び、当該キャッシュ530内に格納されたデータを相手側共有端末装置112に送信する。したがって、開始側のブラウザ126の表示に反映されたデータと同じデータが、相手側のブラウザ136の表示に反映される。さらに、この際に立っていたフラグを下ろす。
Also in the present embodiment, when an operation requesting a process involving data acquisition is performed in either the initiating shared
再度、データ共有の対象となるデータを開始側のブラウザ126に転送する際には、キャッシュ内の該当するデータにはフラグが立っていないため、サーバ104から取得し、キャッシュ内のデータを更新することができる。又は、キャッシュ内のデータをそのままブラウザ126に転送できる。逆に相手側のブラウザ136にデータを転送する際には、キャッシュ内の該当するデータにはフラグが立っているため、必ずキャッシュからデータを取得することになる。よって、確実にデータを共有できる。
When the data to be shared again is transferred to the initiating
なお、上記の実施の形態では、キャッシュ内のフラグは、当該データを転送する際の転送元を指定するためのものであったが、当該キャッシュ内のデータに関する利用権限の設定にこのフラグを用いることもできる。例えば、フラグの立っているデータに関する転送要求があった場合に、転送要求の発行元をフラグにより表される共有相手によって認証するようにし、認証された相手側端末装置にのみ当該データを転送するようにすることができる。これにより、予め定められた共有の相手以外の装置からネットワーク102を介して転送要求を受信した場合に、当該データを誤って当該共有の相手以外の装置に送信することを防止できる。したがって、データ共有システムのユーザがどのようなデータを共有しているかが秘匿され、ユーザのプライバシを保護できる。
In the above embodiment, the flag in the cache is for designating the transfer source when the data is transferred, but this flag is used for setting the use authority regarding the data in the cache. You can also. For example, when there is a transfer request related to flagged data, the issuer of the transfer request is authenticated by the sharing partner represented by the flag, and the data is transferred only to the authenticated partner terminal device Can be. Accordingly, when a transfer request is received from a device other than the predetermined sharing partner via the
さらに、開始側共有端末装置と相手側共有端末装置とがデータ共有を行っていない状態の時にも、キャッシュとフラグとを利用してデータの授受を行なうことが可能である。例えば、相手側共有端末装置から転送要求が与えられ、キャッシュ内に該当するデータがない場合に、その要求に基づきデータをネットワーク102経由で取得し相手側共有装置112に転送するとともに、フラグを立てずに当該データをキャッシュに格納する。このように、フラグとキャッシュを利用することにより、開始側共有端末装置110は、相手側共有端末装置112に対して、あたかもプロキシサーバとして動作することになる。
Furthermore, even when the initiating shared terminal device and the partner shared terminal device are not sharing data, it is possible to exchange data using the cache and the flag. For example, when a transfer request is given from the partner shared terminal device and there is no corresponding data in the cache, the data is acquired via the
上記の第1の実施の形態に係るデータ共有システム100において、開始側共有制御部124は、データ取得制御情報180Bを開始側のブラウザ126に与える際に、キャッシュ128内に対象のデータがあるか否かによって、転送元指定情報を設定したが、本発明はこのような実施の形態には限定されない。例えば、キャッシュ128内に対象のデータがあっても、そのデータが、キャッシュ内に格納されてから所定期間以上経過していれば、サーバから新たにデータを取得するよう、転送元指定情報を設定するようにしてもよい。また、キャッシュ内に対象のデータがある場合には、ユーザの指示に応じて適宜、開始側共有制御部124又は相手側共有制御部134により設定されてもよい。開始側共有制御部124が相手側共有制御部134を介して相手側のブラウザ136に対してデータ取得制御情報180Bを与える場合を除き、データ取得制御情報180Bに、必ずしも転送元指定情報190を含めなくてもよい。例えば、開始側共有制御部124が開始側のブラウザ126にデータを取得させるために制御情報を発行する場合には、データ取得制御要求186とURL188とからなるデータ取得制御情報を発行するようにしてもよい。このデータ取得制御情報に応じて、開始側のブラウザは、一般的なブラウザと同様の動作で転送要求を発行し、開始側共有制御部124は、その転送要求に基づき、一般的なブラウザにおけるデータ取得の動作と同様の動作で、サーバ又はキャッシュからデータを取得してブラウザに転送する。
In the
また、共有の対象となるデータとして、以前キャッシュしておいたデータを設定してもよい。この場合、一方のデータ共有端末装置が過去にキャッシュしておいたデータを取得して、共有するデータとして設定する。そしてそのデータを、上記第1又は第2の実施の形態に係る方法を用いて、共有相手となる端末装置と共有する。 Further, previously cached data may be set as data to be shared. In this case, data cached in the past by one data sharing terminal device is acquired and set as data to be shared. Then, the data is shared with the terminal device that is the sharing partner using the method according to the first or second embodiment.
上記の第1の実施の形態及び第2の実施の形態においては、開始側共有端末装置がキャッシュを備え、開始側共有端末装置のキャッシュのみを使用してデータの共有を行なっていた。しかし、本発明はこのような実施の形態には限定されない。データ共有システム内の少なくとも一つの装置がキャッシュを持ち、少なくとも一つの端末が開始側共有端末装置としての機能を備えていればよい。例えば、開始側共有端末装置に代り、相手側共有端末装置がキャッシュを持つようにしてもよい。この場合、開始側共有端末装置は、サーバ104から受信したデータを自己のブラウザに与えるとともに当該データを、相手側端末装置のキャッシュに格納することになる。
In the first embodiment and the second embodiment described above, the start-side shared terminal device includes a cache, and data is shared using only the cache of the start-side shared terminal device. However, the present invention is not limited to such an embodiment. It suffices that at least one device in the data sharing system has a cache, and at least one terminal has a function as a start-side shared terminal device. For example, instead of the start side shared terminal device, the other side shared terminal device may have a cache. In this case, the initiating shared terminal device gives the data received from the
また例えば、相手側共有端末装置と開始側共有端末装置との両方がキャッシュを持つようにしてもよい。この場合、相手側共有端末装置と開始側共有端末装置とのどちらを、共有対象のデータの蓄積に用いるか、事前に指定する必要がある。またこのような場合、ユーザからデータの取得を要する処理を求める操作を受けた方の装置が、そのデータの共有に関して開始側として動作し、自己のキャッシュにデータを格納するようにしてもよい。 Further, for example, both the partner shared terminal device and the start shared terminal device may have a cache. In this case, it is necessary to specify in advance which of the other party's shared terminal apparatus and the initiating side shared terminal apparatus is used for storing the data to be shared. In such a case, the apparatus that has received an operation requesting a process that requires data acquisition from the user may operate as a starter with respect to sharing of the data and store the data in its own cache.
なお、端末装置は、その時々によって共有開始側にも共有相手側にもなることができる。また、共有に参加する装置に対しユーザが操作を行なうと、その都度、操作を受けた端末装置が開始側として動作するようにしてもよい。この場合、データ共有システム内の各端末装置がキャッシュを備えていれば、操作を受けた端末装置のキャッシュが、その操作に対応して共有されるデータを保持するようにすればよい。過去に共有されたデータは、データ共有システム内の各端末装置のキャッシュ内に分散する。または、操作を受けた端末装置が特定の端末装置にデータを格納するようにし、指定された端末装置のキャッシュがその操作に対応して共有されるデータを保持するようにしてもよい。 Note that the terminal device can be a sharing start side or a sharing partner side from time to time. In addition, each time a user performs an operation on a device participating in sharing, the terminal device that has received the operation may operate as a start side. In this case, if each terminal device in the data sharing system includes a cache, the cache of the terminal device that has received the operation may hold data shared in accordance with the operation. Data shared in the past is distributed in the cache of each terminal device in the data sharing system. Alternatively, the terminal device that has received the operation may store data in a specific terminal device, and the cache of the designated terminal device may hold data that is shared corresponding to the operation.
上記実施の形態では、開始側のブラウザに対するユーザの操作は、共有制御部に与えられた。そして、共有制御部が、その操作内容を制御情報に変換して、ブラウザに与えることにより、ブラウザに実行すべき動作を指定した。しかし、本発明は、このような実施の形態には限定されない。例えばブラウザが、直接にユーザから操作を受けるようにしてもよい。この場合、データ及び動作の共有は、例えば以下のように行なわれる。すなわち、ブラウザは、ユーザによる操作を受けてその操作に対応する動作を実行する。ブラウザがデータの取得を要する動作を実行するのであれば、ブラウザは転送要求を発行する。共有制御部は、その転送要求に応答して、データ共有に関する上記一連の動作を実行する。ブラウザがそれ以外の動作を実行する場合には、共有制御部が、ブラウザに与えられた操作又はブラウザの実行した動作を解析し、ブラウザの動作に応じた制御情報を作成して、相手側に送信する。 In the above embodiment, the user operation on the browser on the start side is given to the sharing control unit. Then, the sharing control unit converts the operation content into control information and gives it to the browser, thereby designating the operation to be executed on the browser. However, the present invention is not limited to such an embodiment. For example, the browser may receive an operation directly from the user. In this case, sharing of data and operations is performed as follows, for example. That is, the browser receives an operation by the user and executes an operation corresponding to the operation. If the browser performs an operation that requires data acquisition, the browser issues a transfer request. In response to the transfer request, the sharing control unit executes the series of operations related to data sharing. When the browser performs other operations, the sharing control unit analyzes the operation given to the browser or the operation performed by the browser, creates control information according to the browser operation, and Send.
以上のように、キャッシュを利用することにより、ブラウザにより表示されるデータを、他のサーバ等を介することなく、共有相手となる他の装置との間で共有できる。サーバにおいて共有の対象となるデータが変化する場合においても、最新のデータを共有することが可能になる。また、キャッシュ内のデータを利用して、データへのアクセス速度の向上とデータの共有とを両立させることもできる。 As described above, by using the cache, the data displayed by the browser can be shared with other apparatuses as a sharing partner without using other servers. Even when the data to be shared in the server changes, the latest data can be shared. In addition, the data in the cache can be used to improve both the access speed to the data and the data sharing.
共有の対象に共有相手となる他の装置以外の装置からアクセスできないようにして、当該データが書換えられないようにすることができ、共有の対象である閲覧対象のデータと当該閲覧対象のデータの共有を行なうユーザのプライバシとを保護できる。また、キャッシュ内に、データ共有の対象以外のデータがあれば、そのデータへデータ共有以外の目的でアクセスできるようにして、キャッシュを利用して、プロキシ機能とデータ共有とを提供することができる。さらに、ユーザによる操作に関する情報を共有することにより、同じデータを、共有相手となる装置と同じ表示状態で表示できるようになる。 It is possible to prevent the data from being rewritten by making it impossible to access the sharing target from a device other than the other device that is the sharing partner, so that the data to be viewed and the data to be browsed can be shared. The privacy of the sharing user can be protected. In addition, if there is data other than the data sharing target in the cache, the proxy function and data sharing can be provided by using the cache so that the data can be accessed for purposes other than data sharing. . Furthermore, by sharing information related to user operations, the same data can be displayed in the same display state as the device that is the sharing partner.
また、他のサーバ等を介することなく、共有相手となる他の装置との間での通信によってデータの共有を直接的に行なうことが可能になる。 In addition, it is possible to directly share data by communication with another apparatus serving as a sharing partner without using another server or the like.
また、共有されるべきデータを、共有相手となる装置経由で取得し表示することにより、共有相手となる装置との間で、データを共有することができる。さらに、共有相手となる装置との間で、ユーザによる操作に関する情報を共有することにより、共有相手となる装置と同じ表示状態で同じデータを表示することが可能になる。 Further, by acquiring and displaying data to be shared via a device that is a sharing partner, the data can be shared with the device that is a sharing partner. Furthermore, by sharing information related to user operations with a sharing partner device, the same data can be displayed in the same display state as the sharing partner device.
上記各実施の形態に係るプログラムをコンピュータで実行することにより、上記各実施の形態の作用及び効果をコンピュータで実現できる。また、そのプログラムが記録した記録媒体から、そのプログラムをコンピュータで読取り実行することにより、上記各実施の形態の作用及び効果をコンピュータで実現できる。 By executing the program according to each of the above embodiments on a computer, the operation and effect of each of the above embodiments can be realized on the computer. Further, by reading and executing the program from the recording medium recorded with the program, the operation and effect of each of the above embodiments can be realized by the computer.
今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内でのすべての変更を含む。 The embodiment disclosed herein is merely an example, and the present invention is not limited to the above-described embodiment. The scope of the present invention is indicated by each claim in the claims after taking into account the description of the detailed description of the invention, and all modifications within the meaning and scope equivalent to the wording described therein are intended. Including.
100 データ共有システム、102 ネットワーク、104 サーバ、110 開始側共有端末装置、112 相手側共有端末装置、120,130 通信部、122,132 入力部、124 開始側共有制御部、134 相手側共有制御部、126,136 ブラウザ、128,530 キャッシュ、170A,…,N,532A,…,N キャッシュデータ、180A,180B 制御情報、210 コンピュータ、212 キーボード、214 マウス、216 モニタ、220 CD−ROM、222 CD−ROMドライブ、224 FD、226 FDドライブ、228 CPU、230 バス、232 ROM、234 RAM、236 ハードディスク、238 ネットワークアダプタボード、550 データ取得指示
DESCRIPTION OF
Claims (10)
データの転送要求が与えられると、前記通信手段を用いて前記サーバより当該データの転送要求に対応するデータを取得するためのデータ取得手段と、
データの閲覧に関する所定の操作入力を受付けるための入力手段と、
前記入力手段が受付けた操作入力に応じてデータの転送要求を前記データ取得手段に与えるとともに、前記データ取得手段により取得されるデータを閲覧可能に出力するためのブラウザと、
前記データ取得手段により取得されたデータを保持するためのデータ保持手段と、
前記データ取得手段がブラウザより与えられた転送要求に応じて前記データを取得すると、前記データを取得する動作を前記他の装置に実行させるための制御情報を、前記通信手段を用いて前記他の装置へ送信するための制御情報送信手段と、
前記通信手段を用いて前記他の装置よりデータの転送要求を受信するための転送要求受信手段と、
前記制御情報送信手段が前記制御情報を送信した後に前記転送要求受信手段が前記転送要求を受信すると、前記データ保持手段に保持されているデータを、前記通信手段を用いて前記他の装置へ提供するためのデータ提供手段とを含む、通信装置。 Communication means for communicating with the server and other devices;
When a data transfer request is given, a data acquisition unit for acquiring data corresponding to the data transfer request from the server using the communication unit;
An input means for accepting a predetermined operation input related to data browsing;
A browser for outputting a data transfer request to the data acquisition unit in response to an operation input received by the input unit, and outputting the data acquired by the data acquisition unit in a viewable manner,
Data holding means for holding data acquired by the data acquisition means;
When the data acquisition unit acquires the data in response to a transfer request given from a browser, control information for causing the other device to execute an operation of acquiring the data is transmitted using the communication unit. Control information transmitting means for transmitting to the device;
Transfer request receiving means for receiving a data transfer request from the other device using the communication means;
When the transfer request receiving unit receives the transfer request after the control information transmitting unit transmits the control information, the data held in the data holding unit is provided to the other device using the communication unit. And a data providing means.
前記制御情報送信手段が前記制御情報を送信したという条件が充足されていない状態で前記転送要求受信手段がデータの転送要求を受信したという条件が充足されると、前記データ取得手段に当該転送要求を与えるための手段と、
前記与えるための手段より与えられた前記転送要求に対応するデータを前記データ取得手段が取得すると、前記通信手段を用いて当該データを前記他の装置へ提供するための手段とを含む、請求項1に記載の通信装置。 further,
When the condition that the transfer request receiving means receives a data transfer request in a state where the condition that the control information transmitting means transmits the control information is not satisfied, the transfer request is sent to the data acquisition means. Means to give
And means for providing the data to the other device using the communication means when the data acquisition means acquires data corresponding to the transfer request given by the means for giving. The communication apparatus according to 1.
サーバ及び他の装置と通信するための通信手段と、
データの転送要求が与えられると、前記通信手段を用いて前記サーバよりデータを取得し、前記ブラウザに与えるためのデータ取得手段と、
データの閲覧に関する所定の操作入力を受付けるための入力手段と、
前記入力手段が受付けた入力操作に応じてデータの転送要求を前記データ取得手段に与えるとともに、前記データ取得手段により取得されるデータを閲覧可能に出力するためのブラウザと、
前記データ取得手段により取得されるデータにフラグを付して保持するためのフラグ付データ保持手段とを含み、
前記フラグは、第1の値又は第2の値に設定され、
前記通信装置はさらに、
前記データ取得手段が前記ブラウザより与えられた転送要求に応答して取得したデータを前記フラグ付データ保持手段が保持すると、当該データに付されたフラグを前記第1の値に設定するための手段と、
前記フラグが第1の値に設定されると、当該フラグに対応するデータを取得する動作を前記他の装置に実行させるための制御情報を、前記通信手段を用いて前記他の装置へ送信するための制御情報送信手段と、
前記通信手段を用いて前記他の装置よりデータの転送要求を受信するための転送要求受信手段と、
前記転送要求受信手段が受信した転送要求に対応するデータであって、前記第1の値に設定されたフラグとともに前記フラグ付データ保持手段に保持されているデータを、前記通信手段を用いて前記他の装置に提供して、当該データに付されているフラグを第2の値に設定するためのデータ提供手段とを含む、通信装置。 A communication device that exchanges data with a server and other devices,
Communication means for communicating with the server and other devices;
When a data transfer request is given, data is obtained from the server using the communication means, and is provided to the browser;
An input means for accepting a predetermined operation input related to data browsing;
A browser for outputting the data acquired by the data acquisition means so as to be viewable while giving a data transfer request to the data acquisition means according to the input operation accepted by the input means;
Including flagged data holding means for attaching and holding a flag to the data acquired by the data acquisition means,
The flag is set to a first value or a second value;
The communication device further includes:
Means for setting the flag attached to the data to the first value when the data holding means holds the data acquired by the data acquisition means in response to the transfer request given from the browser When,
When the flag is set to the first value, control information for causing the other device to execute an operation of acquiring data corresponding to the flag is transmitted to the other device using the communication unit. Control information transmitting means for,
Transfer request receiving means for receiving a data transfer request from the other device using the communication means;
The data corresponding to the transfer request received by the transfer request receiving means, the data held in the flagged data holding means together with the flag set to the first value, using the communication means A data providing means for providing to another device and setting a flag attached to the data to a second value;
前記転送要求受信手段が受信した転送要求に対応するデータが前記フラグ付データ保持手段に保持されておりかつ当該データとともに保持されているフラグが第1の値に設定されているという条件が充足されていなければ、当該転送要求を前記データ取得手段に与えるための手段と、
前記データ取得手段が前記与えるための手段より与えられた前記転送要求に対応するデータを取得すると、当該データを、前記通信手段を用いて前記他の装置へ提供するための手段とを含む、請求項3に記載の通信装置。 further,
The condition that the data corresponding to the transfer request received by the transfer request receiving means is held in the data holding means with flag and the flag held together with the data is set to the first value is satisfied. If not, means for giving the transfer request to the data acquisition means;
And means for providing the data to the other device using the communication means when the data acquisition means acquires the data corresponding to the transfer request given by the means for giving. Item 4. The communication device according to Item 3.
前記サーバ及び前記他の装置の各々と通信するための通信手段と、
データの転送要求が与えられると、前記通信手段を用いて前記サーバよりデータを取得するためのデータ取得手段と、
前記データ取得手段で取得したデータに前記他の装置ごとに設けられたフラグを付して保持するための複数フラグ付データ保持手段とを含み、
前記フラグの各々は、第1の値又は第2の値に設定され、
前記通信装置はさらに、
前記通信手段を用いて前記他の装置よりデータの転送要求を受信するための転送要求受信手段と、
前記転送要求受信手段が前記他の装置のうち第1の装置から前記転送要求を受信したときに、当該転送要求に対応するデータが当該第1の装置に対応する前記第1の値に設定されたフラグとともに前記複数フラグ付データ保持手段に保持されていなければ、当該転送要求を前記データ取得手段に与えるため手段と、
前記データ取得手段が前記与えるための手段より与えられた転送要求に対応するデータを取得すると、当該データを、前記通信手段を用いて前記第1の装置へ提供するための第1のデータ提供手段と、
前記データ取得手段が前記与えるための手段により与えられた転送要求に対応するデータを取得し、当該データを前記複数フラグ付データ保持手段が保持すると、当該データに付されたフラグであって前記他の装置のうち第1の装置と異なる第2の装置に対応するフラグを、第1の値に設定するための手段と、
前記フラグが第1の値に設定されると、当該データを取得する動作を前記他の装置に実行させるための制御情報を、前記通信手段を用いて前記第2の装置へ送信するための制御情報送信手段と、
前記転送要求受信手段が受信した転送要求に対応するデータであって、転送要求の送信元の装置に対応する前記第1の値に設定されたフラグとともに前記複数フラグ付データ保持手段に保持されているデータを、前記通信手段を用いて転送要求の送信元である他の装置に提供して、当該データに付されている当該他の装置のフラグを前記第2の値に設定するための第2のデータ提供手段とを含む、通信装置。 A communication device that exchanges data with a server and a plurality of other devices,
Communication means for communicating with each of the server and the other devices;
When a data transfer request is given, a data acquisition unit for acquiring data from the server using the communication unit;
A plurality of flagged data holding means for attaching and holding a flag provided for each of the other devices to the data acquired by the data acquisition means,
Each of the flags is set to a first value or a second value,
The communication device further includes:
Transfer request receiving means for receiving a data transfer request from the other device using the communication means;
When the transfer request receiving means receives the transfer request from the first device among the other devices, the data corresponding to the transfer request is set to the first value corresponding to the first device. Means for giving the transfer request to the data acquisition means if not held in the data holding means with a plurality of flags together with the flag,
When the data acquisition means acquires data corresponding to the transfer request given from the means for giving, the first data provision means for providing the data to the first device using the communication means When,
When the data acquisition means acquires data corresponding to the transfer request given by the giving means, and the data holding means with the plurality of flags holds the data, a flag attached to the data, the other Means for setting a flag corresponding to a second device different from the first device among the devices to a first value;
When the flag is set to the first value, control for transmitting the control information for causing the other device to execute the operation to acquire the data to the second device using the communication unit. Information transmission means;
The data corresponding to the transfer request received by the transfer request receiving means and held in the data holding means with a plurality of flags together with the flag set to the first value corresponding to the transmission request transmission source device. For providing the data to the other device that is the transmission source of the transfer request using the communication means, and setting the flag of the other device attached to the data to the second value. And a data providing means.
データの閲覧に関する所定の操作入力を受付けるための入力手段と、
前記入力手段が受付けた操作入力に応じてデータの前記転送要求を前記データ取得手段に与えるとともに、前記データ取得手段により取得されるデータを閲覧可能に出力するためのブラウザと、
前記データ取得手段が前記ブラウザにより与えられた前記転送要求に対応するデータを取得し、当該データを前記複数フラグ付データ保持手段が保持すると、当該データに付された前記他の装置の各々に対応するフラグを、第1の値に設定するための手段とを含む、請求項5に記載の通信装置。 further,
An input means for accepting a predetermined operation input related to data browsing;
A browser for outputting the data acquisition request to the data acquisition means in response to an operation input received by the input means, and outputting the data acquired by the data acquisition means in a viewable manner;
When the data acquisition means acquires data corresponding to the transfer request given by the browser, and the data is held by the multiple flagged data holding means, it corresponds to each of the other devices attached to the data The communication device according to claim 5, further comprising means for setting a flag to be set to a first value.
データを閲覧可能に表示するためのブラウザと、
前記通信手段を用い、データの取得指示を前記他の装置より受信するためのデータ取得指示受信手段と、
前記通信手段を用い、前記取得指示に基づき前記他の装置に転送要求を送信して前記他の装置よりデータを受信するためのデータ受信手段とを含み、
前記ブラウザは、前記データ受信手段が取得したデータに基づき出力を更新する、通信装置。 Communication means for communicating with other devices;
A browser for displaying the data in a viewable manner,
A data acquisition instruction receiving means for receiving a data acquisition instruction from the other device using the communication means;
Using the communication means, and a data receiving means for transmitting a transfer request to the other apparatus based on the acquisition instruction and receiving data from the other apparatus,
The communication apparatus, wherein the browser updates an output based on data acquired by the data receiving unit.
請求項7に記載の通信装置を有する第2の通信装置とを含み、
前記第1の通信装置の前記通信手段は、サーバ及び前記第2の通信装置の通信手段と通信し、
前記第2の通信装置の前記通信手段は、前記第1の通信装置の通信手段と通信する、データ共有システム。 A first communication device comprising the communication device according to any one of claims 1 to 6;
A second communication device comprising the communication device according to claim 7,
The communication means of the first communication device communicates with a server and communication means of the second communication device;
The data sharing system, wherein the communication means of the second communication device communicates with the communication means of the first communication device.
前記ブラウザは、前記閲覧対象のデータを取得する動作の実行時に、当該閲覧対象のデータの転送要求を発行し、
前記データ共有装置は、
前記ブラウザにより前記閲覧対象のデータの前記転送要求が発行されたことに応答して、当該閲覧対象のデータを取得するための取得手段と、
前記取得手段により取得された前記閲覧対象のデータを前記ブラウザに供給して、当該閲覧対象のデータを前記ブラウザに表示させるための供給手段と、
前記取得手段により取得された前記閲覧対象のデータを予め定められたキャッシュに格納するための格納手段と、
前記供給手段により前記閲覧対象のデータが前記ブラウザに供給されたときに、当該閲覧対象のデータの前記キャッシュからの取得を、前記共有相手となる端末装置に対し要求するためのデータ取得要求手段とを含む、データ共有装置。 It is used together with a predetermined browser for displaying data so that it can be browsed, and becomes the sharing partner so that the display of the data to be browsed performed by the browser is also performed on a predetermined terminal device serving as a sharing partner. A data sharing device for sharing data with a terminal device,
The browser issues a transfer request for the data to be browsed when executing the operation of acquiring the data to be browsed,
The data sharing device includes:
In response to the transfer request for the data to be browsed issued by the browser, obtaining means for obtaining the data to be browsed;
Supplying the browsing object data acquired by the acquiring means to the browser, and supplying means for displaying the browsing object data on the browser;
Storage means for storing the data to be browsed acquired by the acquisition means in a predetermined cache;
A data acquisition requesting unit for requesting the terminal device serving as a sharing partner to acquire the browsing target data from the cache when the browsing target data is supplied to the browser by the supply unit; A data sharing device.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006003251A JP4714586B2 (en) | 2006-01-11 | 2006-01-11 | Communication device, data sharing system, data sharing device, and computer program |
SE0700318A SE530198C2 (en) | 2006-01-11 | 2007-02-09 | Automatic collimation device for measuring device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006003251A JP4714586B2 (en) | 2006-01-11 | 2006-01-11 | Communication device, data sharing system, data sharing device, and computer program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007188125A true JP2007188125A (en) | 2007-07-26 |
JP4714586B2 JP4714586B2 (en) | 2011-06-29 |
Family
ID=38343279
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006003251A Expired - Fee Related JP4714586B2 (en) | 2006-01-11 | 2006-01-11 | Communication device, data sharing system, data sharing device, and computer program |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP4714586B2 (en) |
SE (1) | SE530198C2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014119836A (en) * | 2012-12-13 | 2014-06-30 | Kddi Corp | Page synchronization display method and system for synchronously displaying private page among multiple terminals |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001051932A (en) * | 1999-08-10 | 2001-02-23 | Internatl Business Mach Corp <Ibm> | Html file acquiring method, information terminal supporting device and storage medium storing software product for acquiring html file |
JP2001101052A (en) * | 1999-09-27 | 2001-04-13 | Internatl Business Mach Corp <Ibm> | Collaboration system, collaboration server, document file transferring method, storage medium and program transferring device |
JP2003122694A (en) * | 2001-10-12 | 2003-04-25 | M V P Kk | Browser with proxy server, and information copying system |
WO2004070616A1 (en) * | 2003-02-03 | 2004-08-19 | Mvp, Inc. | Synchronization program |
JP2005275528A (en) * | 2004-03-23 | 2005-10-06 | Ntt Docomo Tokai Inc | Information sharing device and information sharing method |
-
2006
- 2006-01-11 JP JP2006003251A patent/JP4714586B2/en not_active Expired - Fee Related
-
2007
- 2007-02-09 SE SE0700318A patent/SE530198C2/en unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001051932A (en) * | 1999-08-10 | 2001-02-23 | Internatl Business Mach Corp <Ibm> | Html file acquiring method, information terminal supporting device and storage medium storing software product for acquiring html file |
JP2001101052A (en) * | 1999-09-27 | 2001-04-13 | Internatl Business Mach Corp <Ibm> | Collaboration system, collaboration server, document file transferring method, storage medium and program transferring device |
JP2003122694A (en) * | 2001-10-12 | 2003-04-25 | M V P Kk | Browser with proxy server, and information copying system |
WO2004070616A1 (en) * | 2003-02-03 | 2004-08-19 | Mvp, Inc. | Synchronization program |
JP2005275528A (en) * | 2004-03-23 | 2005-10-06 | Ntt Docomo Tokai Inc | Information sharing device and information sharing method |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014119836A (en) * | 2012-12-13 | 2014-06-30 | Kddi Corp | Page synchronization display method and system for synchronously displaying private page among multiple terminals |
Also Published As
Publication number | Publication date |
---|---|
SE530198C2 (en) | 2008-03-25 |
JP4714586B2 (en) | 2011-06-29 |
SE0700318L (en) | 2007-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3594231B2 (en) | Information control system, information processing support server, information processing terminal, information processing method, and storage medium | |
JP4286789B2 (en) | Synchronous program | |
US20050108299A1 (en) | Real-time Web sharing system | |
US20030081000A1 (en) | Method, program and computer system for sharing annotation information added to digital contents | |
EP1939759A1 (en) | Method for providing content to a mobile device, gateway for providing content and mobile device | |
US9003424B1 (en) | Snapshot view of multi-dimensional virtual environment | |
WO2003091889A1 (en) | Collaboration server, collaboration system, session management method thereof, and program | |
US20090125481A1 (en) | Presenting Media Data Associated with Chat Content in Multi-Dimensional Virtual Environments | |
WO2004049180A1 (en) | Real-time web sharing system | |
JPH1125119A (en) | Hypertext reference system | |
US20020035603A1 (en) | Method for collaborative-browsing using transformation of URL | |
US8732591B1 (en) | Annotations of objects in multi-dimensional virtual environments | |
JP2011204158A (en) | Terminal apparatus, processing system, processing method and program | |
CA2758387A1 (en) | Automated content submission to a share site | |
JP4186164B2 (en) | Web sharing system, Web sharing method, Web sharing program, relay server, and WWW browser display device | |
JPH10283281A (en) | Device and method for home page automatic generation and electronic mail transmission | |
CN102004729A (en) | Method and system for showing website webpage and website server | |
JP2007503041A (en) | How to cache data assets | |
JP2004005074A (en) | Center server and computer device | |
JP4714586B2 (en) | Communication device, data sharing system, data sharing device, and computer program | |
JP2009053957A (en) | Information processor and its control method | |
JP2002215551A (en) | Data communication method, data communication management server, and data communication software | |
JP2004234380A (en) | Table display switching method, text data conversion program, and tagging program | |
KR20020036136A (en) | System for transmitting and receiving the data edited with wireless terminal or wired terminal and shared as a database | |
JP2008250468A (en) | Information processor and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080220 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100629 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100706 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100831 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110301 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110328 |
|
LAPS | Cancellation because of no payment of annual fees |