JP2009053957A - Information processor and its control method - Google Patents
Information processor and its control method Download PDFInfo
- Publication number
- JP2009053957A JP2009053957A JP2007220348A JP2007220348A JP2009053957A JP 2009053957 A JP2009053957 A JP 2009053957A JP 2007220348 A JP2007220348 A JP 2007220348A JP 2007220348 A JP2007220348 A JP 2007220348A JP 2009053957 A JP2009053957 A JP 2009053957A
- Authority
- JP
- Japan
- Prior art keywords
- data
- information terminal
- content
- cooperation partner
- information
- 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.)
- Withdrawn
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
Description
本発明は情報処理装置及びその制御方法に関し、特に、情報処理装置におけるユーザインタフェースの制御技術に関する。 The present invention relates to an information processing apparatus and a control method thereof, and more particularly, to a user interface control technique in the information processing apparatus.
コンテンツブラウザ(ブラウザ)は、ネットワーク上の情報を閲覧する技術として急速に広まった。このブラウザは、現在では情報閲覧だけにとどまらず、サービスとユーザの仲立ちを行うためのユーザインタフェース(UI)を提供する場としても利用されている。 The content browser (browser) has rapidly spread as a technology for browsing information on the network. This browser is not only used for browsing information, but is also used as a place to provide a user interface (UI) for mediating services and users.
例えば、インターネットを介してピザの注文を行うサービスを考えると、次のような流れで進む。 For example, when considering a service for ordering pizzas via the Internet, the process proceeds as follows.
1.ユーザ(ピザの注文者)は、ユーザの端末からインターネットを介してサーバ(ピザの注文受けサービス)にアクセスする。
2.サーバはピザの注文を行うUIコンテンツをユーザ端末に送る。
3.ユーザ側のブラウザは、サーバから送られてきたUIコンテンツを解釈し、ユーザにUIを提供する。
4.ユーザはブラウザ上に実現されたUIを操作し、ピザの枚数、大きさ、送り先などの情報をフォーム入力等を用いて入力し、最後に注文データを送信する。
5.ユーザの注文データはサーバで受信され、これによりピザ業者がピザを焼き、ユーザに届けるサービスが開始される。
1. The user (pizza orderer) accesses the server (pizza order receiving service) from the user's terminal via the Internet.
2. The server sends UI content for ordering pizza to the user terminal.
3. The browser on the user side interprets the UI content sent from the server and provides the user with the UI.
4). The user operates the UI realized on the browser, inputs information such as the number of pizzas, the size, and the destination using form input or the like, and finally transmits order data.
5). The user's order data is received by the server, whereby a service is started in which the pizza bakers bake the pizza and deliver it to the user.
ブラウザをUIに利用することにより、サービス提供者はUI開発にかける工数を低減することができる。なぜなら、サービス提供者はUIコンテンツだけを作成(オーサリング)すればよく、その他のハードウェア(PC、携帯電話等)、ソフトウェア(ブラウザ)は、既存のものを利用することが可能だからである。 By using the browser for the UI, the service provider can reduce the man-hours required for UI development. This is because the service provider only needs to create (author) UI content, and other hardware (PC, mobile phone, etc.) and software (browser) can be used.
ところで、現在では、ユーザに提供されるUIを構成するUIコンポーネントと、ブラウザからサーバに送られるデータには、htmlのフォーム機能を利用しているものが多い。しかし、htmlのフォーム機能は記述能力(特にデータの構造化、データのチェック)が限られている。そのため次世代のフォーム記述言語仕様として、XForms (http://www.w3.org/TR/xforms/) が勧告された。 By the way, at present, the UI component that constitutes the UI provided to the user and the data sent from the browser to the server often use the html form function. However, html form functions have limited description capabilities (particularly data structuring and data checking). Therefore, XForms (http://www.w3.org/TR/xforms/) was recommended as the next-generation form description language specification.
現在のブラウザでは、UI操作を複数ブラウザで協調させるのは難しい。例えば、東京にいるAさんと大阪にいるBさんが、週末に行われるピザパーティで用いるピザを協調して注文することを考える。AさんとBさんは異なる場所(東京と大阪)でUIを操作することになるので、二つのUIは協調することが望ましい。例えば、Aさんがピザの枚数を変更した場合には、瞬時にBさんのブラウザの枚数部分が変更されることが望まれる。 With current browsers, it is difficult to coordinate UI operations among multiple browsers. For example, suppose that Mr. A in Tokyo and Mr. B in Osaka collaborate to order a pizza to be used at a weekend pizza party. Since Mr. A and Mr. B will operate the UI in different places (Tokyo and Osaka), it is desirable that the two UIs cooperate. For example, when Mr. A changes the number of pizzas, it is desirable that the number of parts of Mr. B's browser be changed instantly.
このようなブラウザ間のデータ共有は、データ管理サーバを別途設けることで実現可能である(特許文献1)。 Such data sharing between browsers can be realized by separately providing a data management server (Patent Document 1).
上述したようなブラウザ間のデータ共有は、特許文献1で開示されているようにデータ管理サーバを別途設けることで実現できるが、このようなケースのためにデータ管理サーバを用意することは、あまり現実的ではない。
Data sharing between browsers as described above can be realized by separately providing a data management server as disclosed in
これに対し、各ブラウザに Peer to Peer の通信機能を持たせることでもUI協調が可能である。この場合、特定のサーバが無くてもブラウザ同士が通信を行うことができるため、UI提供側の負担は小さくなる。しかし、UI協調をブラウザ単体で行えるようにすると、"いつUI連携を行うか"、"誰とUI連携を行うか"をユーザはブラウザに通知する必要が生じる。従来、このことを考慮した提案は存在しなかった。 On the other hand, UI cooperation is also possible by giving each browser a Peer to Peer communication function. In this case, since the browsers can communicate with each other without a specific server, the burden on the UI providing side is reduced. However, if UI cooperation can be performed by a single browser, the user needs to notify the browser of “when UI cooperation is performed” and “who is to perform UI cooperation”. In the past, there were no proposals that took this into account.
本発明の一側面によれば、連携相手先の情報端末と共通のユーザインタフェースを使用し、互いのユーザインタフェースを介して入力されたデータを共有する情報処理装置であって、ユーザインタフェースの構成及び動作を記述したコンテンツをロードするロード手段と、ロードした前記コンテンツをパーズして内部オブジェクトを生成するパーズ手段と、生成した前記内部オブジェクトに基づいてユーザインタフェースを提示する提示手段と、前記連携相手先の情報端末を特定する情報を取得する取得手段と、提示した前記ユーザインタフェースに対するユーザの操作に応じて、前記内部オブジェクトにおける当該操作に対応するデータを変更する第1変更手段と、前記第1変更手段が変更したデータが前記連携相手先の情報端末と共有する特定のデータである場合には、当該データを前記連携相手先の情報端末に送信する送信手段と、前記連携相手先の情報端末からデータを受信する受信手段と、前記受信手段が受信したデータが前記連携相手先の情報端末と共有する特定のデータである場合には、前記内部オブジェクトにおける対応するデータを該特定のデータに変更する第2変更手段とを有することを特徴とする情報処理装置が提供される。 According to one aspect of the present invention, there is provided an information processing apparatus that uses a common user interface with an information terminal of a cooperation partner and shares data input via the mutual user interface, the configuration of the user interface and Loading means for loading content describing an operation; parsing means for parsing the loaded content to generate an internal object; presentation means for presenting a user interface based on the generated internal object; and the cooperation partner Acquisition means for acquiring information identifying the information terminal; first change means for changing data corresponding to the operation in the internal object in accordance with a user operation on the presented user interface; and the first change The data changed by the means is shared with the information terminal of the cooperation partner When the data is specific data, the transmission means for transmitting the data to the information terminal of the cooperation partner, the reception means for receiving data from the information terminal of the cooperation partner, and the data received by the reception means are An information processing apparatus comprising: a second changing unit configured to change corresponding data in the internal object to the specific data when the specific data is shared with the information terminal of the cooperation partner. Provided.
本発明によれば、ブラウザで Peer to Peer のデータ共有を行う際に、ユーザあるいはコンテンツオーサによりデータ共有を行うタイミング、データ共有を行う相手を指定することが可能となる。 According to the present invention, when peer-to-peer data sharing is performed by a browser, it is possible to specify the timing of data sharing by the user or the content author and the partner to whom data sharing is performed.
以下、図面を参照して本発明の好適な実施形態について詳細に説明する。なお、本発明は以下の実施形態に限定されるものではなく、本発明の実施に有利な具体例を示すにすぎない。また、以下の実施形態の中で説明されている特徴の組み合わせの全てが本発明の課題解決手段として必須のものであるとは限らない。 DESCRIPTION OF EMBODIMENTS Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the drawings. In addition, this invention is not limited to the following embodiment, It shows only the specific example advantageous for implementation of this invention. In addition, not all combinations of features described in the following embodiments are indispensable as means for solving the problems of the present invention.
(実施形態1)
図1Aは、実施形態に係る情報処理装置のハードウェア構成図である。この情報処理装置1は、CPU4、ROM5、RAM6、ネットワークボード7、入出力装置8、外部記憶装置9を備える。そして、インターネット10を介して他の情報処理装置2とPeer to Peerの通信を行う機能を有する。また、ファイルサーバ3の外部記憶装置から、htmlファイル等のコンテンツデータを取得し、それをブラウザを介してユーザに提示する機能を有する。
(Embodiment 1)
FIG. 1A is a hardware configuration diagram of the information processing apparatus according to the embodiment. The
図1Bは、図1Aに示した情報処理装置の機能構成図である。この情報処理装置はブラウザ機能を有する。ブラウザは、ブラウザ外部に記述されたコンテンツを読み込み、そのコンテンツに記述された動作を行うソフトウェア、あるいはハードウェアである。 1B is a functional configuration diagram of the information processing apparatus illustrated in FIG. 1A. This information processing apparatus has a browser function. The browser is software or hardware that reads content described outside the browser and performs an operation described in the content.
情報処理装置は、コンテンツロード部101を備えている。ここでは、予め作成されたコンテンツをロードし、ブラウザ内部に取り込む。コンテンツはユーザインタフェースの構成及び動作を記述したもので、HTML, XHTML, VoiceXML のような既存の記述言語で書かれたものでもよく、もちろん、新規に定義された記述言語で書かれたものでもよい。
The information processing apparatus includes a
コンテンツパーズ部102は、ロードしたコンテンツを内部オブジェクトに変換する。例えば、DOMツリーのようなデータ構造の内部オブジェクトに変換し、ブラウザ内のメモリに格納する。内部オブジェクトには、ブラウザの動作に必要な全ての情報が含まれており、GUIや音声といったビュー情報やユーザ操作に対する振る舞い等が含まれる。
The
提示部108は、出力装置を介してブラウザの動作をユーザに提示する部分である。例えば、コンテンツに画面情報(画像ファイル、GUI等)を提示する旨が記述されていた場合は、提示部108はディスプレイなどの画像出力装置で実現される。また、音声情報を提示する場合は、提示部108はスピーカによって実現される。
The
ユーザ操作入力部107は、マウス、キーボード、マイクロホン等のユーザの操作、音声を取り込む部分である。ユーザは、提示部108とユーザ操作入力部107を用い、ブラウザの操作を行う。ユーザの操作は、内部オブジェクトに反映されてもよい。
The user
連携相手決定部103は、連携した動作を行う他のブラウザを決定する。例えば、ユーザが設定画面で、連携相手のブラウザ(IPアドレスとPort番号)を指定した場合、そのデータを利用することが最も単純な連携相手の決定方法である。
The cooperating
データ送信部105は、連携相手に対しデータを送信する部分である。また、データ受信部106は連携相手からデータを受信する部分である。
The
管理部104は、ブラウザの動作を実現するために重要な部分である。この部位の基本的な動作は、内部オブジェクトに従って提示部108とユーザ操作入力部107を制御することである。例えば、「あるAという画像をディスプレイに提示せよ」とコンテンツに記述してあった場合は、この通りに画像を提示するよう制御する。更に、「Aという画像がマウスによりクリックされたら、Bという画像を提示せよ」といったブラウザ動作(「XならばYせよ」といった振る舞い)が記述されていた場合は、このようなユーザ入力も加味した動作を実現しなければならない。
The
更に、管理部104では、内部オブジェクトにおける特定のデータが変更された場合に、連携相手決定部103で決定した連携相手に対し、データ送信部105を介して当該特定のデータの一部を送信する。また、データ受信部106を介し、連携相手から内部オブジェクトにおける特定のデータが送られてきた場合は、それを内部オブジェクトに反映する。どのようなデータを特定のデータとして連携相手に送信するかは、コンテンツに予め記述しておいてもよい。この部分の詳しい例は実施形態2以降で述べる。
Furthermore, when specific data in the internal object is changed, the
以上により、本提案のブラウザ装置は、連携相手を決定し、その相手と特定のデータを送受信することが可能となる。これにより、特定のデータが連携相手とミラーリングされるため、ユーザからは、特定のデータが共有されたかのように見えるようになる。 As described above, the proposed browser device can determine the cooperation partner and transmit / receive specific data to / from the partner. As a result, the specific data is mirrored with the partner, so that it appears to the user as if the specific data was shared.
(実施形態2)
ここでは、ユーザとサービスアプリケーションの仲立ちを行うUIとしてブラウザを利用した例を示す。図2は、本実施形態で用いる情報処理装置の機能構成図である。また、図3、4は本実施形態で用いる情報処理装置のフローチャートである。ここではこれらの図を用いて、複数のUIブラウザが協調してピザの注文を行う例を説明する。
(Embodiment 2)
Here, an example is shown in which a browser is used as a UI for mediating between a user and a service application. FIG. 2 is a functional configuration diagram of the information processing apparatus used in the present embodiment. 3 and 4 are flowcharts of the information processing apparatus used in this embodiment. Here, an example in which a plurality of UI browsers cooperate to place an order for pizza will be described using these drawings.
まず、本情報処理装置が立ち上がると、UIコンテンツロード部201はUIコンテンツをロードする(ステップS301)。UIコンテンツは、オーサによって予め作成されたUIのビューや動作が記述されたものである。UIコンテンツの例を図5に示す。このコンテンツ例501は、ピザの注文用UIコンテンツである。ここでは XForms という言語仕様を用いている。ただし、本発明のUIコンテンツは特定の言語仕様に限定されるものではない。
First, when the information processing apparatus starts up, the UI
UIコンテンツのロードが終了すると、UIコンテンツパーズ部202は、UIコンテンツをパーズ(parse)して内部オブジェクトを生成する(ステップS302)。UIコンテンツパーズ部202は、生成した内部オブジェクトをメモリに格納する。
When the loading of the UI content is completed, the UI
次に、UI連携相手決定部203は、UI連携相手の決定を行う(ステップS303)。UI連携を行うか、どの相手と連携するかは、UIブラウザの設定画面を介して行うことが可能である。図7は、UIブラウザ付属のUI連携設定画面701の例である。他のブラウザとUI連携を行うか否かを指示するチェックボックス702により、UI連携を行うかどうかを設定できる。また、UI連携を行う場合は、連携相手先の入力エリア703にIPアドレスとPort番号を指定することが可能である。このような設定を予め行っておき、そのデータにアクセスすることにより、UI連携相手決定部は、UI連携相手の決定を行うことが可能である。
Next, the UI cooperation
次に、UIコンテンツに記述された通りにUIを実行するため、UI実行のサブルーチンに入る(ステップS304)。 Next, the UI execution subroutine is entered to execute the UI as described in the UI content (step S304).
UI実行のサブルーチン(図4)に入ると、UI提示部208は、ユーザにUIを提示する(ステップS401)。図5のUIコンテンツをGUIとして提示したUIブラウザ601の例が図6である。コンテンツ例501の22行に対応して枚数入力用テキストボックス602、26行に対応してサイズ入力用リストボックス603、36行に対応してチャット用テキストエリア604、40行に対応して注文ボタン605がGUIとして表示されている。XFormsはビューを規定するものではないため、このようなGUIの提示はブラウザ依存である。
When the UI execution subroutine (FIG. 4) is entered, the
ユーザは、UIブラウザによって提示された内容を基に操作を行う。例えば、マウスやキーボードを操作し情報の設定を行う。また、UIブラウザはユーザの操作も監視する(ステップS402)。ユーザの操作は、ユーザ操作入力部207によりUIブラウザ内に取り込まれる。更に、UIデータ受信部206は、連携相手のUIブラウザからのデータ受信も監視する。
The user performs an operation based on the content presented by the UI browser. For example, information is set by operating a mouse or a keyboard. The UI browser also monitors user operations (step S402). User operations are taken into the UI browser by the user
ユーザ操作、連携相手からのデータ受信を感知すると、その内容が終了指示かどうかを判定する(ステップS403)。例えば、終了ボタン606が押された場合は、ユーザによる終了指示とみなす。この場合、「終了」という返り値と共にUI実行のサブルーチンを終了する。メインルーチン側では、この返り値を受けると(ステップS305)、処理を終了する。
When it is detected that the user operation or data reception from the cooperation partner is detected, it is determined whether or not the content is an end instruction (step S403). For example, when the
終了指示でなかった場合、バックエンドアプリとの通信指示であったかどうかを判定する(ステップS404)。バックエンドアプリとは、サービスを実際に実行する実体である。ピザ注文の例では、ピザを焼きそれを配達するサービスがこれに相当する。図6の例では、注文ボタン605が押されると、バックエンドアプリとの通信指示とみなす。これを検知すると、「バックエンドアプリとの通信」という返り値と共にUI実行のサブルーチンを終了する。メインルーチン側では、この返り値を受けると(ステップS306)、バックエンドアプリ通信部209を介し、バックエンドアプリと通信する(ステップS307)。ピザの例では、ピザ注文を担っているサーバに、図5の10-12行目に対応するデータ(枚数、サイズ、メモ)を送る。
If it is not an end instruction, it is determined whether or not it is an instruction to communicate with the back-end application (step S404). A back-end application is an entity that actually executes a service. In the example of the pizza order, this corresponds to a service for baking pizza and delivering it. In the example of FIG. 6, when the
これ以外のユーザ操作であった場合(ステップS405)、例えばユーザがピザの枚数に「2」を設定した場合、内部オブジェクトにおける対応するデータ(UIデータ)を変更する(ステップS408)(第1変更処理)。更に、変更したUIデータが特定のデータかどうかを判定する(ステップS409)。特定のデータであった場合、UIデータ送信部205を介し、UI連携相手に対して変更されたUIデータを送信する(ステップS410)。どういったUIデータを特定のデータとして連携相手に送るべきかは、ロードしたUIコンテンツによって判断することが可能である。例えば、図5のUIコンテンツでは、サーバに送るべきデータが10-12行に書かれている。このようにサーバに対して送信することになっているデータを連携相手に送るようにしてもよい。この例では、602、603、604の内容がユーザによって変更されると、連携相手にその更新データが送信されるようになる。
When the user operation is other than this (step S405), for example, when the user sets “2” to the number of pizzas, the corresponding data (UI data) in the internal object is changed (step S408) (first change) processing). Further, it is determined whether the changed UI data is specific data (step S409). If it is specific data, the UI
ユーザによるデータ受信ではなく、UI連携相手からのデータ受信であった場合(ステップS406)、UIデータ受信部206からデータを受信し、そのデータをUIデータと表示されているUIに反映する(ステップS407)(第2変更処理)。例えば、UI連携相手から "pizza_num = 2" というデータが送られてきた場合は、"pizza_num" に相当するUIデータの値を "2" に変更すると共に、枚数入力用テキストボックス602に"2"を設定する。
If it is not data reception by the user but data reception from the UI cooperation partner (step S406), the data is received from the UI
以上により、特定のUIデータをUIブラウザ間で共有することが可能となる。図8は、東京にいるAさんと、大阪にいるBさんのUIブラウザのある時点のビューの例である。801がAさんのUIブラウザ、802がBさんのUIブラウザである。各人異なるUIブラウザを用いているため、図示のようにビューは微妙に異なる場合もある。しかし、それぞれのUIブラウザで連携相手として互いのブラウザを指定することで、特定のUIデータが共有されるようになる。また、UIデータの共有により、チャット機能も容易に実現することが可能である。 As described above, specific UI data can be shared between UI browsers. FIG. 8 is an example of a view at a certain time of UI browsers of Mr. A in Tokyo and Mr. B in Osaka. 801 is Mr. A's UI browser and 802 is Mr. B's UI browser. Since each person uses a different UI browser, the view may differ slightly as shown. However, specific UI data can be shared by designating each browser as a partner for each UI browser. In addition, the chat function can be easily realized by sharing the UI data.
(実施形態3)
上記実施形態では、ブラウザの設定を用いて、連携を行うか、誰を連携相手とするかを取得していた。しかし、別の方法を用いて、これらの決定を行ってもよい。例えば、図11の(A)のケース1のように、それぞれのブラウザが異なるコンテンツをロードしている場合には、連携を行わない。逆に、(B)のケース2のにように、同じコンテンツをロードしているブラウザ(他の情報端末)と連携を行う。
(Embodiment 3)
In the above-described embodiment, the browser setting is used to acquire whether to perform cooperation or who is the cooperation partner. However, other methods may be used to make these determinations. For example, as in
これを行うには、あるコンテンツをロードした際に、そのコンテンツが持つID(IDについては実施形態4で示す)、あるいはそのコンテンツのURIを保持し、そのID又はURIを同じくするコンテンツをロードしているブラウザを検索する。検索の方法は公知の手法を使用してよい。例えば、図7のように設定画面で設定したブラウザ一覧から検索してもよい。あるいは、自分と同じサブネット内にブロードキャストして連携相手を検索してもよい。あるいは何らかのサーバに問い合わせを行ってもよい。検索あるいは問い合わせの結果、自分と同じコンテンツをロードしているブラウザが見つかった場合は、そのブラウザと連携を開始する。この方法については実施形態1、2と同様である。 To do this, when a certain content is loaded, the content's ID (ID is shown in Embodiment 4) or the content's URI is held, and the content with the same ID or URI is loaded. Search for a browser. A known method may be used as a search method. For example, you may search from the browser list set on the setting screen as shown in FIG. Or you may broadcast in the same subnet as yourself, and may search a cooperation partner. Alternatively, an inquiry may be made to some server. As a result of searching or inquiring, if a browser loaded with the same content as that of itself is found, cooperation with the browser is started. This method is the same as in the first and second embodiments.
(実施形態4)
上記実施形態に対してさらに、図11の(C)のケース3のように、共通コンテンツをリンクしたファイルをロードしているブラウザ(他の情報端末)と連携を行ってもよい。
(Embodiment 4)
Further, as in the
図9は、XForms のメタデータ参照により、外部のソースをリンクしているUIコンテンツ例501を示している。このコンテンツの8行目には、具体的な instance 記述の代わりに、外部ファイルへのURIが記述されている(902)。
FIG. 9 shows an
図10は、リンクされている外部ファイルの例である。外部ファイルでは、1001のように共有したいデータを記述する。この場合、リンクする側のコンテンツに記述されたリンクされるファイルへのURIがリンクされるファイルを示す名前として用いられる。例えば1001のファイルが "http://172.23.47.81:2061/pizza_order.html" として置かれていたとする。この場合は、"http://172.23.47.81:2061/pizza_order.html" をそのファイルの名前とする。また、1002のようにリンクされるファイル内に1003に示されるような固有のIDを振ることで、そのIDをリンクされるファイルの名前として用いることも可能である。
FIG. 10 shows an example of linked external files. In the external file, describe the data you want to share, such as 1001. In this case, the URI to the linked file described in the linked content is used as a name indicating the linked file. For example, assume that the
ブラウザは、自分がロードしているコンテンツがリンクしている外部ファイルの名前を調べ、これと同じ名前の外部ファイルをリンクしたコンテンツをロードしているブラウザがあるかどうか検索する。検索の方法は実施形態3で示した方法を用いてもよい。そのようなブラウザが見つかった場合、そのブラウザと連携を開始する。 The browser examines the name of the external file to which the content loaded by itself is linked, and searches whether there is a browser loaded with the content linked to the external file having the same name. As a search method, the method shown in the third embodiment may be used. If such a browser is found, it starts working with that browser.
データ共有を行うかどうかのスイッチとして、コンテンツに共通のファイルをリンクさせるというのは、プログラミングにおける include や MemoryMappedFile で用いられている直感的な手法である。また、これを用いると、共有したいデータは外部ファイルとしてリンクし、共有したくないデータはローカルのファイルに記述するといった細かい制御も可能となる。 Linking a common file to content as a switch for data sharing is an intuitive technique used in include and MemoryMappedFile in programming. In addition, when this is used, it is possible to perform fine control such that data to be shared is linked as an external file, and data not to be shared is described in a local file.
(実施形態5)
上記実施形態では、連携相手は一つのブラウザであった。しかし、連携相手を複数のブラウザとすることも可能である。また、実施形態4の方法を用いることで、あるデータ群はブラウザAと共有し、別のデータ群はブラウザBと共有するといったように、データによって共有相手を分けることも可能である。
(Embodiment 5)
In the embodiment described above, the cooperation partner is a single browser. However, it is possible to use a plurality of browsers as cooperation partners. In addition, by using the method of the fourth embodiment, it is possible to divide the sharing partner according to data, such that a certain data group is shared with the browser A and another data group is shared with the browser B.
(実施形態6)
本発明は、ブラウザ間での特定のデータ送受信プロトコルに限定されるものではない。用いられるプロトコルには、socket メッセージ、SOAP、SMTP等といったものが利用可能である。図12に、SOAPプロトコルを用いたブラウザ間での通信データの例を示す。ここでは、Datamodel instance の "order/memo" というデータを送っている様子を表している。
(Embodiment 6)
The present invention is not limited to a specific data transmission / reception protocol between browsers. Protocols used include socket messages, SOAP, SMTP, etc. FIG. 12 shows an example of communication data between browsers using the SOAP protocol. Here, the data model instance "order / memo" is being sent.
(他の実施形態)
以上、本発明の実施形態を詳述したが、本発明は、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
(Other embodiments)
As mentioned above, although embodiment of this invention was explained in full detail, this invention may be applied to the system comprised from several apparatuses, and may be applied to the apparatus which consists of one apparatus.
なお、本発明は、前述した実施形態の各機能を実現するプログラムを、システム又は装置に直接又は遠隔から供給し、そのシステム又は装置に含まれるコンピュータがその供給されたプログラムコードを読み出して実行することによっても達成される。 In the present invention, a program for realizing each function of the above-described embodiments is supplied directly or remotely to a system or apparatus, and a computer included in the system or apparatus reads and executes the supplied program code. Can also be achieved.
したがって、本発明の機能・処理をコンピュータで実現するために、そのコンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、上記機能・処理を実現するためのコンピュータプログラム自体も本発明の一つである。 Accordingly, since the functions and processes of the present invention are implemented by a computer, the program code itself installed in the computer also implements the present invention. That is, the computer program itself for realizing the functions and processes is also one aspect of the present invention.
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。 In this case, the program may be in any form as long as it has a program function, such as an object code, a program executed by an interpreter, or script data supplied to the OS.
プログラムを供給するためのコンピュータ読み取り可能な記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、記録媒体としては、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。 Examples of the computer-readable recording medium for supplying the program include a flexible disk, a hard disk, an optical disk, a magneto-optical disk, an MO, a CD-ROM, a CD-R, and a CD-RW. Examples of the recording medium include a magnetic tape, a non-volatile memory card, a ROM, a DVD (DVD-ROM, DVD-R), and the like.
また、プログラムは、クライアントコンピュータのブラウザを用いてインターネットのホームページからダウンロードしてもよい。すなわち、ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードしてもよい。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードする形態も考えられる。つまり、本発明の機能・処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明の構成要件となる場合がある。 The program may be downloaded from a homepage on the Internet using a browser on a client computer. That is, the computer program itself of the present invention or a compressed file including an automatic installation function may be downloaded from a home page to a recording medium such as a hard disk. Further, it is also possible to divide the program code constituting the program of the present invention into a plurality of files and download each file from a different home page. That is, a WWW server that allows a plurality of users to download a program file for realizing the functions and processing of the present invention on a computer may be a constituent requirement of the present invention.
また、本発明のプログラムを暗号化してコンピュータ読み取り可能なCD−ROM等のコンピュータ読み取り可能な記憶媒体に格納してユーザに配布してもよい。この場合、所定条件をクリアしたユーザにのみ、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報で暗号化されたプログラムを復号して実行し、プログラムをコンピュータにインストールしてもよい。 The program of the present invention may be encrypted and stored in a computer-readable storage medium such as a computer-readable CD-ROM and distributed to users. In this case, only the user who cleared the predetermined condition is allowed to download the key information to be decrypted from the homepage via the Internet, decrypt the program encrypted with the key information, execute it, and install the program on the computer May be.
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現されてもよい。なお、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部又は全部を行ってもよい。もちろん、この場合も、前述した実施形態の機能が実現され得る。 Further, the functions of the above-described embodiments may be realized by the computer executing the read program. Note that an OS or the like running on the computer may perform part or all of the actual processing based on the instructions of the program. Of course, also in this case, the functions of the above-described embodiments can be realized.
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行ってもよい。このようにして、前述した実施形態の機能が実現されることもある。 Furthermore, the program read from the recording medium may be written in a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer. Based on the instructions of the program, a CPU or the like provided in the function expansion board or function expansion unit may perform part or all of the actual processing. In this way, the functions of the above-described embodiments may be realized.
101 コンテンツロード部
102 コンテンツパーツ部
103 連携相手決定部
104 管理部
105 データ送信部
106 データ受信部
107 ユーザ操作入力部
108 提示部
101
Claims (8)
ユーザインタフェースの構成及び動作を記述したコンテンツをロードするロード手段と、
ロードした前記コンテンツをパーズして内部オブジェクトを生成するパーズ手段と、
生成した前記内部オブジェクトに基づいてユーザインタフェースを提示する提示手段と、
前記連携相手先の情報端末を特定する情報を取得する取得手段と、
提示した前記ユーザインタフェースに対するユーザの操作に応じて、前記内部オブジェクトにおける当該操作に対応するデータを変更する第1変更手段と、
前記第1変更手段が変更したデータが前記連携相手先の情報端末と共有する特定のデータである場合には、当該データを前記連携相手先の情報端末に送信する送信手段と、
前記連携相手先の情報端末からデータを受信する受信手段と、
前記受信手段が受信したデータが前記連携相手先の情報端末と共有する特定のデータである場合には、前記内部オブジェクトにおける対応するデータを該特定のデータに変更する第2変更手段と、
を有することを特徴とする情報処理装置。 An information processing apparatus that uses a common user interface with the information terminal of the cooperation partner and shares data input via each other's user interface,
Loading means for loading content describing the configuration and operation of the user interface;
A parsing means for parsing the loaded content to generate an internal object;
Presenting means for presenting a user interface based on the generated internal object;
Obtaining means for obtaining information for identifying the information terminal of the cooperation partner;
First changing means for changing data corresponding to the operation in the internal object in response to a user operation on the presented user interface;
When the data changed by the first changing means is specific data shared with the information terminal of the cooperation partner, a transmission means for transmitting the data to the information terminal of the cooperation partner;
Receiving means for receiving data from the information terminal of the cooperation partner;
If the data received by the receiving means is specific data shared with the information terminal of the cooperation partner, second changing means for changing the corresponding data in the internal object to the specific data;
An information processing apparatus comprising:
ユーザインタフェースの構成及び動作を記述したコンテンツをロードするロード工程と、
ロードした前記コンテンツをパーズして内部オブジェクトを生成するパーズ工程と、
生成した前記内部オブジェクトに基づいてユーザインタフェースを出力装置を介して提示する提示工程と、
前記連携相手先の情報端末を特定する情報を取得する取得工程と、
提示した前記ユーザインタフェースに対するユーザの操作に応じて、前記内部オブジェクトにおける当該操作に対応するデータを変更する第1変更工程と、
前記第1変更工程で変更したデータが前記連携相手先の情報端末と共有する特定のデータである場合には、当該データを前記連携相手先の情報端末に送信する送信工程と、
前記連携相手先の情報端末からデータを受信する受信工程と、
前記受信工程で受信したデータが前記連携相手先の情報端末と共有する特定のデータである場合には、前記内部オブジェクトにおける対応するデータを該特定のデータに変更する第2変更工程と、
を有することを特徴とする情報処理装置の制御方法。 A method of controlling an information processing apparatus for sharing data input via each other's user interface using a common user interface with an information terminal of a cooperation partner,
A loading process for loading content describing the configuration and operation of the user interface;
A parsing process for generating an internal object by parsing the loaded content;
A presentation step of presenting a user interface via an output device based on the generated internal object;
An acquisition step of acquiring information for identifying the information terminal of the cooperation partner;
A first changing step of changing data corresponding to the operation in the internal object according to a user operation on the presented user interface;
When the data changed in the first changing step is specific data shared with the information terminal of the cooperation partner, a transmission step of transmitting the data to the information terminal of the cooperation partner;
A receiving step of receiving data from the information terminal of the cooperation partner;
When the data received in the receiving step is specific data shared with the information terminal of the cooperation partner, a second changing step of changing the corresponding data in the internal object to the specific data;
A method for controlling an information processing apparatus, comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007220348A JP2009053957A (en) | 2007-08-27 | 2007-08-27 | Information processor and its control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007220348A JP2009053957A (en) | 2007-08-27 | 2007-08-27 | Information processor and its control method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009053957A true JP2009053957A (en) | 2009-03-12 |
Family
ID=40504979
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007220348A Withdrawn JP2009053957A (en) | 2007-08-27 | 2007-08-27 | Information processor and its control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009053957A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012113700A (en) * | 2010-11-04 | 2012-06-14 | Brother Ind Ltd | Terminal device, server, screen control method, screen transition method, and computer program |
US9350790B2 (en) | 2010-02-04 | 2016-05-24 | International Business Machines Corporation | Utilization of target browsers |
US9678814B2 (en) | 2011-10-04 | 2017-06-13 | International Business Machines Corporation | Implementing a java method |
JP2018142997A (en) * | 2018-05-17 | 2018-09-13 | 株式会社ニコン | Electronic apparatus |
-
2007
- 2007-08-27 JP JP2007220348A patent/JP2009053957A/en not_active Withdrawn
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9350790B2 (en) | 2010-02-04 | 2016-05-24 | International Business Machines Corporation | Utilization of target browsers |
US9473558B2 (en) | 2010-02-04 | 2016-10-18 | International Business Machines Corporation | Utilization of target browsers |
JP2012113700A (en) * | 2010-11-04 | 2012-06-14 | Brother Ind Ltd | Terminal device, server, screen control method, screen transition method, and computer program |
US9678814B2 (en) | 2011-10-04 | 2017-06-13 | International Business Machines Corporation | Implementing a java method |
US9973563B2 (en) | 2011-10-04 | 2018-05-15 | International Business Machines Corporation | Implementing a java method |
JP2018142997A (en) * | 2018-05-17 | 2018-09-13 | 株式会社ニコン | Electronic apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7526482B2 (en) | System and method for enabling components on arbitrary networks to communicate | |
KR20200075795A (en) | Methods for downloading an app and executing an app | |
JP4865581B2 (en) | Content distribution management device and content distribution system | |
US20030093572A1 (en) | Method and system for browser integration using a forwarding plug-in | |
EP2254302A2 (en) | Method and apparatus for restoring state information of remote user interface | |
KR102121358B1 (en) | Data transmission method and device | |
KR20110132186A (en) | Data upload method using shortcut | |
JP4541028B2 (en) | Remote operation control program using Web server | |
JP2009053957A (en) | Information processor and its control method | |
JP2015141473A (en) | Server system, method for controlling server system, and program | |
JP2004005074A (en) | Center server and computer device | |
JP5148709B2 (en) | Method and system for inter-device communication | |
JP2009009455A (en) | Service cooperation support system | |
JP5304473B2 (en) | Mobile terminal device function setting system, mobile terminal device, information terminal device, function setting method and program | |
US8239522B1 (en) | Dynamic variables for tracking wireless device website usage | |
JP4036335B2 (en) | Mobile phone terminal device and program providing system | |
JP2003303152A (en) | Content transmission system | |
JP2005055983A (en) | Service management method and apparatus, and control program | |
JP2010262548A (en) | Data provision method and server | |
JP2009271576A (en) | Client terminal equipment, thin client system, thin client server device, and client terminal equipment control method | |
KR20080083543A (en) | Network management system comprising image forming apparatus and method thereof | |
KR101157019B1 (en) | Control interface selection | |
CN108933755B (en) | Application server message sending, receiving and interacting method and device | |
JP4398192B2 (en) | Data processing method and data processing system | |
JP2005321995A (en) | Information processor, information processing method, recording medium and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20101102 |