[go: up one dir, main page]

JP2004030640A - Kiosk system connected with computer network and method for constituting kiosk system - Google Patents

Kiosk system connected with computer network and method for constituting kiosk system Download PDF

Info

Publication number
JP2004030640A
JP2004030640A JP2003150102A JP2003150102A JP2004030640A JP 2004030640 A JP2004030640 A JP 2004030640A JP 2003150102 A JP2003150102 A JP 2003150102A JP 2003150102 A JP2003150102 A JP 2003150102A JP 2004030640 A JP2004030640 A JP 2004030640A
Authority
JP
Japan
Prior art keywords
kiosk
application
kiosk device
file
api
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.)
Pending
Application number
JP2003150102A
Other languages
Japanese (ja)
Inventor
Shuang Chen
チェン、シャン
Tetsunosuke Fujisaki
フジサキ、テツノスケ
Makoto Kobayashi
小林 真
Mitsuru Oshima
大島 満
Yoichi Yoshida
吉田 洋一
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US08/974,214 external-priority patent/US6195694B1/en
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2004030640A publication Critical patent/JP2004030640A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F19/00Complete banking systems; Coded card-freed arrangements adapted for dispensing or receiving monies or the like and posting such transactions to existing accounts, e.g. automatic teller machines
    • G07F19/20Automatic teller machines [ATMs]
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F17/00Coin-freed apparatus for hiring articles; Coin-freed facilities or services
    • G07F17/0014Coin-freed apparatus for hiring articles; Coin-freed facilities or services for vending, access and use of specific services not covered anywhere else in G07F17/00
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2805Home Audio Video Interoperability [HAVI] networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Automation & Control Theory (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Stored Programmes (AREA)
  • Control Of Vending Devices And Auxiliary Devices For Vending Devices (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a kiosk system connected with a computer network and a method for constituting the kiosk system. <P>SOLUTION: A server system 195 is connected with a plurality of kiosks 100 via a network 150, for example, the Internet, an intranet of a company or a government and an extra net. The kiosk has one or a plurality of input/output devices 130 ( for example, a display, a keyboard, a paper printer and a telephone set) and one or a plurality of driver programs 440 (local API) for each input/output device. A kiosk 160 has a browser 160 to be used in order that the kiosk obtains raw materials from a server. One or a plurality of files of files in a structure set include one or a plurality of integration control programs 620 and control the local API for systems on the kiosk by using the programs. Thus, the systems are controlled and constituted so that the kiosk executes their applications. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、コンピュータ・ネットワークに接続され、サーバがキオスクを構成することができるキオスクおよびサーバの分野に関する。
【0002】
【従来の技術】
一般にキオスクとは、ユーザまたは顧客による一般のアクセス、たとえば公共アクセスのための場所に配置され、それによってサービス提供者がそのユーザや顧客にサービスを提供することができるようにする機械である。一般に、このようなサービスは、サービス提供者が顧客に特定の援助を与えるエージェントを設けずに、顧客によって行われる「セルフサービス」である。したがって、サービスは、1)情報の入手、または2)特定の単純なトランザクション(たとえばチケットの購入、現金の入手、百貨店のフロア・マップの閲覧など)の遂行あるいはその両方を行うといったような、反復される単純な特定のタスクになる傾向がある。
【0003】
行われるタスクは、事前プログラムし、事前決定する必要があり、セルフサービスである必要がある。したがって、キオスクの設計は、柔軟性がなく、特定のユーザ向けにカスタマイズされた援助を提供しない。
【0004】
一般に、これらのトランザクションは、たとえば1つまたは複数のモニタ、カード読取装置、チケット・プリンタ、レーザ・プリンタ、現金自動支払機など、何らかの装置の使用を必要とする。これらの装置は、一般に、キオスクにおける柔軟性のない設計の事前定義されたタスク専用であり、したがって他に用途がない。
【0005】
キオスクの利点は、便利で信頼性が高いことである。キオスクは、作業を行うフルタイムの人間の操作者を必要とせず、したがって運転経費の節約になり、生産性が向上する。
【0006】
たとえば銀行のATM機、航空券販売機など、従来技術キオスクにはネットワークによって接続されているものがある。また、ショッピング・モール内の情報キオスクのように、スタンド・アロン・キオスクもある。
【0007】
従来技術には、銀行支店(エージェント)とユーザ/顧客との間に接続を設定しようと試みる銀行業アプリケーション向けのテレビ会議機能を備えたキオスクがある。これは、従来のタイプのキオスクにテレビ会議システムを付加するだけで行われる。
【0008】
また、従来技術には、インターネットとの統合キオスクもある。このキオスクは、キオスクの画面上にHTMLページを表示するブラウザ手段を有する。キオスクに表示される画面は、ユーザによって選択されたハイパーリンクによって制御される。これらのキオスクは、顧客/ユーザがハイパーリンクを呼び出す「ソフト」ボタンを選択することによってブラウズすることができる情報アクセスに適している。これらのキオスクは、電子メールのような特定の個人通信にも使用することができる。この種のシステムでは、画面は通常、(たとえばナビゲーション・ボタンを有する)ユーザ・インタフェースを提示するように特別に設計され、キオスクはさらに、キオスク作成者によって定義されたHTMLページ(URL)のみにアクセス可能になるように、顧客が訪れることができるURLを制限するフィルタとして機能する。
【0009】
ほとんどの従来技術のキオスクは柔軟性がない。従来技術のキオスクは、一般にプログラミングが特別に設計され、(通常はCやC++などの高水準コンピュータ・プログラミング言語で)作成され、特定の用途(アプリケーション)向けにキオスクに設置されるため、変更や再構成を容易にしかも低コストで迅速に行うことができない。変更する場合は、キオスクでのプログラムの再コード化、再コンパイル、再インストール、および再試験が必要になる。既存のキオスクに変更を加えるのは困難であり、更新を必要とする範囲に多くのキオスクがある場合は特に困難である。
【0010】
従来技術のキオスクは、アプリケーションに基づく効果的な「対面」サービス、すなわち、サービスまたはトランザクションを実行するためにユーザまたは顧客に助言や手引きを与えるエージェントを必要とするサービスを提供することができない。顧客サービスのための効果的な「対面」環境は、映像/音声だけでなく、同期化された画面共用(たとえばエージェントがデータを入力している間にユーザ/顧客がデータを見るなど)と遠隔装置制御(たとえばエージェントがキオスクのユーザ/顧客のために受領書を印刷することができるなど)も必要する。従来技術は、キオスクの同期化画面共用や遠隔装置制御を実現しない。
【0011】
従来技術の中には、電話によるエージェントからのユーザ援助を提供するものもあるが、エージェントは一般にキオスクの画面を直接見ることはできない。したがって、エージェントはキオスクに問題があった場合にその問題についてのユーザの説明に依存せざるを得ない。エージェントは、キオスクの画面を直接見て問題にアクセスすることができない。さらに、エージェントはキオスクの問題を修正するためにキオスクのプログラム/機能を遠隔地から変更することができない。銀行業アプリケーションにおけるキオスクの中には、銀行エージェントがキオスクの画面の内容を見ることができるようにするものもあることに留意されたい。しかし、この内容は、キオスク上に画面の内容を表示させるアプリケーションではなく、エージェントのワークステーション上で稼働している別個のアプリケーションによって表示される。
【0012】
【発明が解決しようとする課題】
従来技術の中には、キオスクの機能としてテレビ会議機能を備えるものもある。しかし、テレビ会議は顧客に他の当事者との音声/映像接続は提供するが、このアーキテクチャは音声/映像通信とキオスク画面の内容との間に一貫した統合がないため、市場ではまだ成功していない。顧客がキオスク画面上の項目の1つに問題があるときに、エージェントは顧客がキオスク上で持っている情報と同じ情報をエージェントの画面上で持つことができない。たとえば、キオスクの画面上のフィールド内にあいまいな値または誤った値があっても、テレビ会議中にエージェントにはその誤った値が見えない。さらに、エージェントは顧客の画面上の場所を指示することができず、顧客の画面を制御することもできない。さらに、エージェントは、キオスクがまだ事前プログラムされていないという一般情報をキオスクを介して顧客に提供することができない。また、たとえば、顧客がそのキオスク設計では入手することができない情報を必要とする場合、エージェントは音声またはカメラ映像によって情報を提供することができるに過ぎず、顧客のキオスク画面上で、または他のキオスク装置を介して情報を提供することはできない。
【0013】
従来技術の中には、限定された特定のアプリケーション、すなわち限定された情報ブラウズのみを行うことができる単純なインターネット/ブラウザ・ベースのキオスクを開示しているものもある。この種のキオスクは、キオスク制御機能や顧客と人間のエージェントとの間の協同がないため、柔軟性のある用途を持つ有効な顧客サービス環境を提供することができない。
【0014】
したがって、本発明は、請求の範囲で規定されているキオスクとサーバを提供する。
【0015】
【課題を解決するための手段】
本明細書に記載の手法は、「対面」エージェント対顧客サービスまたはトランザクションあるいはその両方およびインターネット(TCP/IP)、公共電話網(PSTN)、統合サービス・ディジタル網(ISDN)など複数の通信ネットワークへの公共アクセスの提供を含む、様々な用途向けの柔軟性があり、再構成可能で協同的なキオスク・アーキテクチャの利点を得て、公共の至る所に配置される、構成可能で直接アクセス可能なネットワーク・インタフェースを提供する。したがって、このネットワーク・サーバ・システムは、異なる用途(アプリケーション)のための異なる方法でネットワーク上の遠隔キオスクまたはキオスク装置を再構成するために、特に異なるアプリケーション用に異なる方法で使用される様々な入出力装置をサポートするために、(場合によっては1つまたは複数のネットワーク・サーバで作成、開発、および記憶される)きわめて多くのアプリケーションを配布することができる。
【0016】
したがって、好ましい実施形態では、キオスク・システムは1つまたは複数のネットワーク、たとえばインターネット、企業または政府のイントラネットなどに接続することができる。キオスクは、1つまたは複数の入力/出力装置(たとえば表示装置、キーボード、ペーパー・プリンタ、電話など)と、各入力/出力装置のための1つまたは複数のドライバ・プログラム(ローカルAPI)を有する。表示装置は、キオスクのユーザに1つまたは複数のグラフィカル・ユーザ・インタフェースとビデオ画像を提示するために使用される。インタフェースのうちのいくつかはアプリケーション固有のものである。(アプリケーションとは、キオスクがそのために構成または再構成される用途である。)キオスクは、ネットワーク上の1つまたは複数のサーバから、(構成セットにおける)1つまたは複数のアプリケーション・ファイルを取り出すブラウザを有する。アプリケーション・ファイル(構成セット)は、キオスクのブラウザによって(アプリケーションによって決定される)シーケンスで提示される1組のHTMLファイルを含む。これらのHTMLファイルのうちの1つまたは複数のHTMLファイルは、キオスク上の装置のうちの1つまたは複数の装置のローカルAPIを制御するために使用される組込み(制御)プログラムを含む。ファイルのうちの1つまたは複数のファイルは、他のHTMLファイル、(画像や音声のような)マルチメディア構成要素ファイル、または他のHTMLファイル、マルチメディア構成要素ファイル、組込みプログラムまたは他のアプリケーション・ファイルへのハイパーリンクあるいはそれらの組合せも含むことができる。キオスクにおける選択機能(たとえば音声、ソフト・ボタン、ハイパーリンクなど)によってサーバから第1のアプリケーション・ファイルが選択される。この選択項目(選択機能)に関連づけられたアプリケーション・ファイル(構成セット)が、キオスクをそれに応じて構成する。したがって、キオスクは、アプリケーション・ファイルによって定義された様々なアプリケーションを実行するように構成および再構成することができる。
【0017】
ある種の好ましい実施形態では、アプリケーション・ファイルのうちの1つまたは複数のアプリケーションが1つまたは複数の所定の選択リンク(たとえばハイパーリンク)を有する。ブラウザがアプリケーション・ファイルを(たとえば1ファイルずつ)レンダリングまたは解釈するにつれて、所定の選択リンクがグラフィカル・ユーザ・インタフェース上でユーザに対して追加の選択項目として提示される。ユーザは、ゼロ個または1個以上の他の組込み制御プログラムを含む1つまたは複数の他の構成セット、HTMLファイルなどを選択し、呼び出すことができる。したがって、これらの追加の選択項目を使用して、ブラウザによってHTMLファイルの内容が提示されるシーケンス、および実際にはシーケンス内のファイルを変更して、キオスクを異なる方法で再構成し、ユーザからの情報の入手またはユーザへの情報の提供あるいはその両方を行うことができる。シーケンス内のHTMLファイルの内容のレンダリングによってキオスクが構成され、それによって、対話式画面の1つまたは複数の画面シーケンスと、必要な場合は、キオスクを特定の選択されたアプリケーション用に再構成するために組合わされる(組込みプログラムによって制御される)装置アクションのシーケンスとが提供されるようになる。これらの実施形態では、ユーザ(またはキオスクまたはサーバ内の他の機能)は、キオスク上の異なる選択機能を選択することによって他のアプリケーションのためにキオスクを再構成することができる。
【0018】
ある種の好ましい実施形態では、アプリケーションの一部が、エージェントと顧客がキオスクおよびサーバを介してネットワークで協同することができるようにするウェブ・ページ共用機能を含む。好ましい一実施形態は、「軽量」クライアント・アーキテクチャ、すなわちキオスク上にアプリケーション固有のソフトウェアがないクライアント・アーキテクチャを実施する。
【0019】
例示のみを目的として以下の図面を参照しながら、本発明の様々な好ましい実施形態について以下に詳述する。
【発明の実施の形態】
キオスク100の好ましい一実施形態のブロック図である図1を参照すると、キオスク100は、適切な周知のネットワーク・インタフェース155を有するコンピュータ110(たとえばPC350やPC750のようなIBMパーソナル・コンピュータ)を含む。ネットワーク150は、任意の周知のローカル・エリア・ネットワーク(LAN)またはワイド・エリア・ネットワーク(WAN)とすることができる。好ましい実施形態では、ネットワーク150はインターネットである。しかし、電話網、ケーブル網、ISDN網などによって実施可能な、企業ネットワークのようなイントラネットワーク、政府ネットワーク、教育ネットワーク、企業間のエクストラネットワーク、および1つまたは複数の小売業者によって使用されるネットワークを含む、他の汎用ネットワーク150も考えられる。コンピュータ110は、キオスク100の一部として装備された1つまたは複数の入力または出力あるいはその両方の装置(下部参照)130を有する。典型的には、コンピュータ110は、周知の、1つまたは複数のメイン・メモリと、(ハード・ディスク・ドライブ、CDROMなどのような)1つまたは複数の記憶装置110Mと、1つまたは複数の中央処理装置(CPU)110Cとを有する。さらに、コンピュータ110は、保守のための任意選択のハードウェア・キーボード135およびマウス134を有する。ユーザは、これらの様々な(周辺130)入力または出力あるいはその両方の装置(まとめて130と番号を付す)にアクセスして、コンピュータ110およびネットワーク150を介して、ネットワーク150に接続された他のクライアントまたはサーバ195あるいはその両方との間で情報を伝送する。これらの入力/出力装置130の例としては、画面105を備えたタッチ・センシティブ端末103、プリンタ109、任意の周知の汎用情報読取装置111(たとえば磁気カード、クレジット・カード、またはスマート・カードを読み取るカード読取装置121)、スキャナ(たとえばレーザ・スキャナ)112、任意の周知の汎用情報書出装置113(プリンタ、チケット・プリンタ、媒体プリンタ(たとえばディスケット・ドライブ)、計算書プリンタ、または受領書プリンタ)、(たとえばステッカーやコンピュータ・ディスクを提供する)ディスペンサ、または有形の媒体113Aに入った情報をユーザに提供するその他の任意の装置130がある。その他の入力/出力装置130としては、現金自動支払機、スキャナ、ディポーザ、ペン入力装置136、カード発行機、発券機、CRT、キーボード、タッチ・センシティブ・スクリーン、プログラム制御可能カメラ、1つまたは複数の人間感知器(たとえば赤外線)、1つまたは複数のライト、CD−ROMプレーヤ、音声入力/出力装置(たとえばマイクロフォン133、スピーカ132、または電話機107、およびメモリ113Bのうちの任意の1つまたは複数の装置が含まれる。キオスク100は、電話107やテレビ会議システム114、たとえばPictureTel PCS−100デスクトップISDNテレビ会議システムなどの周知の通信装置を備えることができる(PictureTelはPictureTel社の商標である)。テレビ会議システムは、カメラ131や、スピーカ132、マイクロフォン133、適切なネットワーク・インタフェース155を介した1つまたは複数のISDN接続または別個のネットワーク接続を含む。他のネットワーク151、たとえば電話107、スピーカ132、マイクロフォンを介した在来型電話システム(POTS)電話網122またはISDN回線123あるいはその両方への接続も行うことができる。周知のインタフェースを使用してネットワーク(150、151)に他の周辺装置130を独立して接続することもできる。
【0020】
コンピュータのCPU110Cは、制御プロセスおよびライブラリ125と、ある種の好ましい実施形態では1つまたは複数の協同プロセスとを含む、ソフトウェア・プログラムを実行する。制御プロセス125は、1つまたは組込み制御関数/プログラム620と1つまたは複数の制御機構640の2つの部分を有する。(以下の図5、図6から図10を参照。)組込み制御プログラム/関数620は、内容固有のプロセス(たとえば銀行業務、レンタカー業、商品購入など)であるが、それぞれの入力/出力装置(またはそのサブセット)130に付随する非内容固有の制御機構640を使用してローカル・アプリケーション・プログラム・インタフェース680(API)を制御する。したがって、入力/出力装置130は、アプリケーションの内容に固有の方法で制御される。代替実施形態では、制御機構は、ネットワーク150からコンピュータ110に直接ロードすることができる。
【0021】
協同プロセス170は、APIと、キオスク100から協同セッションを確立する機能を実行する。この協同プロセスについては、1996年9月27日出願のフィン(Fin)等の「Internet Web Page Sharing」という名称の米国特許出願第08/722287号に記載されており、参照によりその全体が本明細書に組み込まれる(欧州特許出願97307536.0号、公告番号833260を参照)。コンピュータはさらにネットワーク150との対話に必要なプログラムを実行し、これにはウェブ・ブラウザ・プログラム160、たとえばNetscape Navigatorブラウザが含まれる。(Netscape Navigatorは、Netscape Communications Corporataionの商標である。)
【0022】
図2は、囲われた空間または一部囲われた空間200内にあるキオスク100を示す、本発明の代替実施形態を示すブロック図である。囲われた空間200は、一人または複数のユーザと共にキオスク100が置かれる任意のタイプの空間、たとえば、部屋、小ボックス、またはその他の任意の個室または準個室空間とすることができる。この実施形態では、コンピュータ110は、コンピュータ110がスペース200内にユーザのための環境を作り出すために制御する1つまたは複数の周知の環境周辺機器130に接続される。たとえば、環境周辺機器としては、空間の照明205、追加情報(たとえば販売情報)または環境要素(たとえば風景の可変表示や仮想世界)あるいはその両方を伝える空間200内の表示装置210、空間200に出入りするセキュリティ・アクセス215などがある。さらに、(部分的に)囲われた空間は、上述の周辺機器130と類似の他の環境周辺機器130、たとえば、音声、テレビ会議なども有することができる。仮想世界の例は周知である。
【0023】
システム100および200の好ましい実施形態では、ユーザが(選択機能を使用して)、キオスクをそのために構成させるアプリケーション、たとえば銀行業務を選択し、ブラウザ160がインターネット(汎用ネットワーク)150上の1つまたは複数のウェブ・サーバ195と対話して1つまたは複数の構成セット175を取り出す。任意選択により、サーバ195とキオスク(100、200)内のブラウザ160との間でデータ通信が開始する。次に、ブラウザ160によってアプリケーション・ファイル175が1ファイルずつ実行され、1)任意選択により、それぞれのアプリケーションと共に使用する入力/出力装置のうちの1つまたは複数の入力/出力装置(たとえばタッチ・センシティブ端末103や表示装置)130を制御するドライバ・プログラム(ローカルAPI680)を呼び出し、2)任意選択により、一連の入力/出力装置130アクションを、たとえば、端末/表示装置103上に表示される一連のウェブ・ページとして行わせ、3)任意選択により、入力装置130からのユーザ入力をサーバ195に伝え、4)任意選択により、ユーザ入力に応じて、ブラウザ160によってさらに実行するためのアプリケーション・ファイル175の他のアプリケーション・ファイル175を選択する。このように、ユーザは第1の選択機能を使用して第1のアプリケーション(およびそれに付随するサーバ195上の構成セット(アプリケーション・ファイル)175を選択することができ、そのアプリケーションがキオスクを第1の特定の選択されたアプリケーションに合わせて再構成する。第2のアプリケーションを選択することによって、再びキオスクが第2のアプリケーション等々用に再構成される。後の構成のための選択機能は、前の構成でユーザに提供される。
【0024】
アプリケーションとは、キオスクがそのために構成される任意の用途である。たとえば、アプリケーションには、金融、ビジネス、情報(ニュース、広告)、通信(電子メール、ウェブ・アクセス、テレビ会議)、小売業、マーケティング、サービス(たとえば行政プログラム)の分野における用途
(構成)が含まれる。アプリケーション所有者は、そのアプリケーションを実現するようにキオスクを構成することになる任意の個人、組織、または企業である。たとえば、銀行または投資信託会社は、1つまたは複数の金融業アプリケーションを使用してキオスクを構成する。このような金融業アプリケーションの例としては、ユーザへの金融情報の提供、口座の開設、現金支払い、勘定支払い、ローンの申込み、預金、およびエージェントから受ける支援などがある。サービス所有者の一例は、自動車レンタル/リースなどを行うようにキオスクを構成するレンタカー会社である。
【0025】
他の好ましい実施形態では、キオスク(100、200)は、ユーザによってではなくサーバ195によって再構成される。たとえば、キオスクを、ショッピング・モールのような公共の空間に設置することができる。ブラウザは、ネットワーク150上に配置された1つまたは複数のサーバ195またはデフォルト・サーバまたはプロキシ・サーバ195Aからキオスク100に、構成セット(アプリケーション・ファイル)175を、最初にまたは定期的に取り出すようにすることができる(またはサーバが「プッシュ」するようにすることもできる)。したがって、システム設計者は、サーバ195の遠隔設置場所からキオスクの構成を制御することができる。たとえば、モール内のキオスクを最初に、モールの地図の表示、バックグラウンド・ミュージックの再生、アナウンス、または天気情報またはニュースや株式市況のようなその他の一般情報の提供を行うように構成することができる。アプリケーション・ファイル175は、入力/出力装置130のうちの1つまたは複数の装置に、選択機能105A、たとえばタッチ・スクリーン、アイコン、ハイパーテキスト・リンク、グラフィカル・ユーザ・インタフェース上のソフト・ボタン、ハードワイヤード・ボタン、(無線周波識別タグのような)リモート・センサ、またはテレビ会議システム用の音声入力式メッセージ機能などの選択機能105Aを有するように、またはそのような選択機能105Aとなるように指示することもできる。選択機能105Aは、ユーザが、キオスクをユーザのアプリケーションに合わせて再構成させる選択を行うことができるようにする機能である。これらの選択機能105Aによって、ユーザはキオスク100/200を再構成したり、サーバ195がキオスクに提供させるその他の情報にアクセスしたりすることができる。
【0026】
選択機能105Aまたは表示されるその他の情報は、キオスクの所有者/運営者にとって収入源ともなり得る。たとえば、キオスクは、キオスクが提供する通知は有料で行われる広告になり得る。アプリケーション提供者(たとえば銀行投資信託会社、モーゲージ会社、金貸業者、仲介業(株式、不動産)、レンタル会社(自動車、機器)、サービス提供者、および小売業者)なら、キオスク100/200上に、ユーザがキオスクを自分の用途に合わせて構成するために選択する選択機能105Aを所有するために料金を支払うであろう。料金の金額は、キオスクの設置場所、キオスク上の選択機能/情報の位置/場所(たとえばグラフィカル・ユーザ・インタフェース)、選択機能105Aのサイズ、キオスクによって選択機能105A/情報が提供される時間および期間などに基づいて決めることができる。選択機能105A/情報は、様々なクラスの顧客/クライアントを対象にするために、異なる時刻に変更したり定期的に表示したりすることができる。たとえば、グランド・セントラル駅に置かれたキオスクは、ラッシュ・アワーには通勤者向け情報を表示させ、昼食時間の直前にはレストラン予約のための選択機能105Aを有するように再構成される。
【0027】
キオスク100/200は、アプリケーション提供者がサーバ195を介してユーザ固有の構成になるよう再構成することができる。たとえば、旅行代理店がスミス氏のユーザ・プロファイルを有するとする。スミス氏は、公共の場所または勤務先にあるキオスク100/200上の選択機能105Aを選択する。キオスクはその旅行代理店のアプリケーション用に再構成された後は、たとえば、入力/出力装置130の1つを使用して個人識別コードを入力するかまたはクレジット・カードを通すことによって、(アプリケーション・ファイルのうちの1つによる指示に従って)スミス氏に対して個人情報を求めることができる。次に、スミス氏の個人情報はキオスク100/200によってサーバ195に渡され、スミス氏に関するプロファイルにアクセスする。プロファイル内の情報を使用して、サーバ195によってアプリケーション・ファイル175のうちの1つまたは複数のファイルが送られ、キオスクが特にスミス氏のために再構成される。たとえば、中米への休暇パッケージ旅行のみをキオスク上で提供することができる。他の実施形態では、アプリケーション・ファイル175のうちの1つまたは複数のファイルによって、ユーザがGUI(後出の300)を編成できるようにすることができる。
【0028】
キオスク100/200の他の好ましい構成では、一人または複数のキオスク・ユーザとアプリケーション提供者の1つまたは複数のエージェントとの間に協同セッションがセットアップされる。協同は、キオスク上に常駐するかまたはサーバ195によってアプリケーション・ファイル175として提供される協同プロセス170によってセットアップされる(フィン(Fin)等の特許出願を参照)。
【0029】
キオスク(100、200)の他の好ましい構成では、サーバ195がキオスクに、キオスクの監視または保守に使用されるアプリケーション・ファイル175を提供する。たとえば、このような実施形態では組込み制御プログラム620のうちの1つまたは複数の組込み制御プログラムが、「デッドマン」タイマー状況、誤り検査プロトコルなどを使用してどの入力/出力装置が動作しているかを判断することによって、入力/出力装置130のうちの1つまたは複数の装置の動作状況を監視する。この情報はサーバ195に返される。他のアプリケーション・ファイル175を使用して、所与のキオスクにどの入力/出力装置130が設置されているか、または動作可能であるかを問い合わせる。このようにして、サーバ195は、設置または動作可能入力/出力装置130を使用可能にし、設置されていないかまたは故障している装置を使用可能にしない(構成しない)ために、他のどのアプリケーション・ファイル175をキオスクに送るかを判断することができる。したがって、入力/出力装置130の任意の汎用の組合せを含むキオスクをサーバの遠隔に設置することができ、サーバは所与の用途のためにキオスクを動作可能にする適切かつ動作可能なアプリケーションを提供する。アプリケーション・ファイル175を使用して、入力/出力装置のうちの1つまたは複数の装置から情報を入手し、装置の操作方法を判断することもできる。
【0030】
図3に、キオスク100/200の画面表示装置105上に表示されるグラフィカル・ユーザ・インタフェース(GUI)300の一例を示す。GUI300は、選択機能105Aを介してキオスクのユーザに主アクセス・インタフェースを提供する。選択機能105Aの例としては、銀行301、保険業302、汎用ソフト・ボタン303、およびピザ・レストラン304用のアプリケーションを示すアイコン画像301〜304がある。GUI300は、1つまたは複数の選択項目(典型的には325)を有するメニュー320の形の選択機能105Aも表示することができる。選択機能105Aの他の例は、GUI300またはメニュー320あるいはその両方の一部とすることができるハイパーリンク350である。GUI300のその他の領域340は、情報またはその他のデータを入力するために使用することができる。これらの情報フィールド340を使用して、GUI300を納税申告用紙、ローン申込書、モーゲージ申込書、預金入金票などの書式370として提示することができる。GUI300は、周知の技法を使用してブラウザ160によりウェブ・ページとして表示することができる。このウェブ・ページは、入力/出力装置130を介してユーザに提示されるマルチメディア(音声、映像)態様を有することができる。
【0031】
図4に、ユーザがユーザ・インタフェースを介して対話して選択機能105Aを選択し、選択機能105Aがそれに対応する構成セットであるアプリケーション・ファイル175をサーバ195からクライアント(キオスク100、200)にダウンロードして特定の機能を実行し、周辺装置130の特定のサブセット451(たとえば107、109、111、113、114など)を制御する仕組みを示す。ローカルAPI440は、1つまたは複数の周辺装置130を直接制御するソフトウェア機能インタフェースである。たとえば、カード読取装置130のローカルAPI440は、初期設定、始動、カードからのデータの読取り、カードの排出を行い、機能をオフにする処理を含む。
【0032】
(キオスク構成の)選択は、選択機能105Aによって行われる。選択機能105Aの例としては以下のものがある。
a)ユーザが画面上の画像アイコン、またはボタンのような他の選択装置に明示的に触れる。
b)現在実行中のプログラムが、ユーザの動作に基づいて選択を呼び出す必要があることを判断し、たとえば、ユーザが同じ間違いを続けて2回犯した場合、ヘルプ・プログラムを呼び出す。
c)現在実行中のプログラム内の論理が、次の選択(キオスク構成)を判断する。たとえば、ユーザがモーゲージの事前資格審査申込書を作成し、銀行がそれを承認した後は、現行アプリケーションがユーザに不動産情報を必要とするかどうかを尋ねることができる。ユーザが肯定の応答をした場合、キオスクの構成は、不動産業者アプリケーションの構成に変更される。
【0033】
一実施形態では、選択105Aが行われると、ブラウザ160がネットワーク・インタフェース155を介してHTTPでサーバ195に、その選択機能105Aに対応する最初のアプリケーション・ファイル175(ファイル500からなる)を求める要求を送る。(アプリケーション・ファイル/構成セット175内のファイル500の説明については図5も参照されたい。)次に、サーバ195は、アプリケーション・ファイル175をブラウザ160に提供する。アプリケーション・ファイルを構成するファイル500がブラウザ160に到着した後、ファイル500のHTMLの内容が1行ずつ実行される。ブラウザが実行している現行アプリケーション・ファイルのファイル500に次のアプリケーション・ファイルのファイル500が関連づけられている(たとえばハイパーリンクされている)場合、この次のアプリケーション・ファイルのファイル500もブラウザに送られる。このようにして、ブラウザ160は各ファイル500を、構成セット175内のHTMLテキストの命令によって定義されている順序で1行ずつ、1構成セット175ずつ実行する。このようにしてアプリケーション・ファイル/構成セット175内のファイル500を実行することによって、(装置130に関連づけられている)ローカルAPI440または、ローカルAPIのサブセット441が呼び出されて、選択された装置のサブセット451を制御し、キオスク(100/200)が再構成される。各アプリケーション・ファイル/ファイル(175、500)内の論理またはユーザ・アクションあるいはその両方によって、どのアプリケーション・ファイル/ファイル(175、500)が実行されるかを変更したり、アプリケーション・ファイルのうちの一部のアプリケーション・ファイルを実行するかどうかを変更したりすることができることに留意されたい。
【0034】
アプリケーション・ファイル175を実行することによって、ブラウザ160は装置130のうちの1つまたは複数の装置を選択し、制御する。キオスクの構成は、アプリケーション・ファイルの実行中に選択された装置451(たとえば装置のサブセット451)と、装置のサブセット451がどのように制御されるかによって定義される。たとえば、銀行業務の構成では、アプリケーション・ファイル175の実行によって、API441のサブセットが呼び出され、たとえばカード読取装置111とプリンタ109(装置サブセット451)が選択されて制御され、それぞれ、銀行カードの読取りとトランザクション記録の印刷が行われる。同じ銀行業務の構成で、アプリケーション・ファイルのうちの1つまたは複数のアプリケーション・ファイル(またはアプリケーション・ファイル内の行あるいはその両方)175を実行すると装置130の選択や制御は行われないが、データの記憶、サーバ195へのデータまたはメッセージの返送などを含む他のアクションが行われる。ピザを注文する他の構成では、アプリケーション・ファイルの実行によってAPI441の異なるサブセットが呼び出され、同じ装置サブセット451(すなわちカード読取装置111とプリンタ109)を選択し、制御してそれぞれ、クレジット・カードの読取りおよび代価請求が行われ、選択されたピザのトッピングを示す購入レシートが印刷される。
【0035】
構成によっては、アプリケーション・ファイル175の実行によって1つまたは複数の装置130は選択されないことに留意されたい。そのような場合、デフォルトの装置が使用される。たとえば、テキスト行を表示させるファイル500内の行が、デフォルトにより表示装置103に宛てて送られる。
【0036】
また、ブラウザ160は他のローカル・プログラムまたはライブラリあるいはその両方を使用してアプリケーション・ファイルの実行と対話するローカル実行可能モジュールの特別なセットにアクセスすることができることにも留意されたい(図6参照)。
【0037】
図5は、少なくとも1つの組込み制御プログラム620を与える、1つまたは複数のHTMLファイルおよびそれに関連づけられたハイパーテキスト構成要素ファイルを含む、アプリケーション・ファイル(構成セット)175のセットを示すブロック図である。ウェブ・ベースのアプリケーション・ファイル175はすべて、少なくとも1つの組込み制御プログラム620を与えるHTMLベースのファイルである。アプリケーション・ファイル175は、任意選択により、HTMLベースであるかどうかを問わず他のハイパーテキスト構成要素ファイルも含む。典型的には、HTMLファイルは、テキスト525、画像またはグラフィクス528、(画像528、アプレット505、スクリプト515、またはその他の組込み制御関数(プログラム)620として実施された)アニメーション、(1つの組込み制御関数620として)音声、(1つの組込み制御関数620として)映像、およびその他のハイパーリンクといった組込み構成要素ファイルである標準HTML(HTML3.0など)、などを示すタグを含んで構成されている。これらのタグは周知である。好ましい一実施形態では、ブラウザ160はNetscape Navigator v3.0である。組込みプログラムは、Java(登録商標)ScriptまたはJava(登録商標)アプレット、またはプラグインを使用する他の任意の組込みプログラムあるいはそれらの組合せを使用して実施することができる(Java(登録商標)はSun Microsystems Inc.の商標である)。図5に示すように、HTMLファイル500は、タグ505を使用してJava(登録商標)アプレットを組み込み、タグ515を使用してJava(登録商標)Script関数を組み込ませ、タグ520を使用してブラウザのプラグイン機能を呼び出す他の任意のプログラムを組み込ませている。標準HTMLタグの詳細は、「Netscape HTML3.0 Source Book」に記載されており、参照によりその全体が本明細書に組み込まれる。これらの組込み制御関数520のうちのいくつかは、コンピュータに読み込まれると組込み制御関数/プログラム620とされる。
【0038】
図5は、キオスク100を構成する典型的なアプリケーションの組込み制御プログラム620の実行で呼び出されるシステムの構成要素を示すブロック図である。
【0039】
ブラウザ160内には、機能として、HTMLファイル内のHTMLタグを解釈または認識するインタプリタ610がある。インタプリタ610は、タグのタイプとタグの内容に応じて各HTMLタグごとに関数を実行するためにHTMLタグ実行プログラム611を呼び出す。実行によって、ローカル・キオスク・プログラム(ローカル周辺API440を含む)に対するAPI呼び出し680が呼び出されない場合、ブラウザは、必要であれば標準関数のライブラリ617を使用して各HTMLタグ615を実行する。これらの非API制御関数615の例としては、テキストの表示、画像の表示などがある。これらは周知であり、従来技術のブラウザに含まれている。
【0040】
しかし、実行プログラム611が、ローカル・キオスクAPI680の1つを呼び出す組込み制御関数620に遭遇した場合、実行プログラム611はブラウザ160内部のセキュリティ・マネージャ625を呼び出して、API呼び出しが許可されているかどうかを判断する。後で詳述するように、キオスク制御機構640、またはその機構の一部640Aが、ブラウザが入っているディレクトリのサブディレクトリに入れられている。こうすることにより、実行プログラム611が組込み制御関数620に遭遇するとセキュリティ・マネージャ625は制御機構640(以下の640A)を見つけ、API制御関数621がその制御機構640/640Aをブラウザ・プロセス160にロードする。たとえば、これらの組込み制御関数620は、1つまたは複数のローカルAPI関数680/440(すなわちAPI441の選択されたサブセット)を呼び出して装置451の所与のサブセットを動作させるアプレットを含むことができる。たとえば、装置がカード読取装置の場合、組込み制御関数620は制御機構640を使用して適切なAPI440を呼び出し、カード読取り装置を開き、カードからデータを読み取り、カードを排出し、カード読み取り装置を閉じる。
【0041】
周知のブラウザ160は、ローカルAPI680を実行するためにネットワーク150からの組込み制御関数620を実行しないことに留意されたい。実際には、これらのブラウザは、周知のネットワーク・セキュリティ上の理由のため、これらのAPI制御関数の実行を特に防止する。たとえば、アプリケーション・ファイル175がネットワークを通過している間に変更された場合、アプリケーション・ファイル内の被害を受けた制御関数の実行によって、クライアント機、すなわちキオスク(100、200)で予測不可能で有害な結果が生じる可能性がある。
【0042】
Java(登録商標)は、バイト・コード伝送および検証、仮想計算機による誤り検査など、様々な特別な手段を使用してネットワーク・セキュリティ問題を克服するように設計されていることは周知である。さらに、Java(登録商標)がウェブ・ベースのアプリケーション内のアプレットとして使用されている場合、すなわちHTMLファイルに組み込まれている場合、ブラウザは通常、そのJava(登録商標)アプレットが、ブラウザに組み込まれている標準Java(登録商標)ライブラリ内のJava(登録商標)プログラム以外のクライアント機上のどのローカルJava(登録商標)プログラムにもアクセスしないように厳しく防止する。その理由は、アプレットが管理されていない環境から送られてくるため、すなわち、ネットワーク全体のどのサーバからでも送られてくる可能性があるために、単にアプレットがクライアント機に与える可能性のある被害を防止するためである。
【0043】
「Java(登録商標) Now」(クリス・ジャムサ(Kris Jamsa)著、Jamsa Presss、1996年刊、ISBN 1−884133−30−4、p4)という書物に記載されているように、「セキュリティ問題に対処するため、Java(登録商標)開発者はプログラマがJava(登録商標)アプレットを使用してコンピュータ・ウィルスを作成できないようにし、アプレットがユーザのシステムに関する情報(ユーザのシステム上のファイルなど)をサーバに転送し戻すことができないようにしなければならなかった。たとえば、競争相手のウェブ・サイトを閲覧している間に、その競争相手のJava(登録商標)アプレットに自分のハード・ディスクを読まれたとしたら嫌であろう。そのようなセキュリティを設けるために、Java(登録商標)開発者はアプレットが行うことができる操作を制限することにした。たとえば、Java(登録商標)アプレットはユーザのシステム上のファイルを読み書きすることができない。このようにすることで、アプレットはユーザ・のディスクにウィルスを記憶したり、ユーザのディスクに記憶されている情報を読み取ったりすることができない」。また、次のようにも記載されている。「Java(登録商標)は、プログラマにスタンド・アロン型プログラムを作成させる。Java(登録商標)のスタンド・アロン型プログラムは、プログラマがC++を使用して作成することができるプログラムと類似している。そのようなスタンド・アロン型プログラムは、Java(登録商標)がアプレットによる実行を制限するファイルの読み書きと操作の実行を行うことができる。それに対してJava(登録商標)アプレットは、ブラウザ内でしか実行されない...」。これは、Java(登録商標)アプレットは、ブラウザ・プロセス160の外部の関数を操作しない設計になっていることを意味する。
【0044】
標準ブラウザの動作中、ブラウザのセキュリティ・マネージャ625がこれらのセキュリティ規則に違反がないか監視する。標準Java(登録商標)ライブラリ内にないプログラムへのアクセスを要求するアプレットが見つかると、ブラウザは、単にセキュリティ違反エラーを報告し、そのアプレットの実行を停止する。
【0045】
一実施形態では、アプリケーション・ファイル175がキオスクを構成することができるようにするために、キオスク固有制御機構640の一部640Aがブラウザ160に付加され、キオスク固有制御機構640の他の一部640Bがアプリケーション・プログラミング・インタフェース(API)680(440を含む)に付加される。したがって、キオスク固有制御機構640は、ブラウザ機構640AとAPI機構640Bの2つの部分に分けられる。この実施形態では、ブラウザ機構640AとAPI機構640Bは、プロセス間通信(IPC)640Iを介して連絡する。IPC640Iインタフェースは、ブラウザ機構640AとAPI機構640Bが、直接間接呼び出しではなくメッセージ受渡しを使用して連絡することができるようにする。(IPCは周知であり、その一例は、Windows(登録商標)オペレーティング・システムにおけるダイナミック・データ交換(DDE)の使用である。Windows(登録商標)はMicrosoft Corporationの商標である。)
【0046】
ブラウザ機構640Aは、どのアプリケーション・ファイル175内のAPI制御関数620もブラウザ160内のインタプリタ610によって認識されるように、ブラウザ・サブディレクトリに入れられる。API機構640Bは、ブラウザ機構640Aからメッセージを受け取り、そのメッセージに従って440を含む様々な関数を独立して制御する。このようにして、ブラウザからのアプレットは、1つまたは複数の装置およびローカル機能を制御することができるようになるが、それはブラウザ機構640Aを有する関数のみである。したがって、キオスク内の他の関数は、ネットワークを介したアプリケーション・ファイル175によるアクセスからは安全に保護されたままである。したがって、キオスクは構成可能ではあるが、安全に保護される。さらに、API機構640BはデバイスAPI440をブラウザからは独立して操作するため、API機構640Bに渡された装置制御関数(所与の装置を制御するために使用されるAPI制御関数620のサブセット)は、そのアプリケーション・ファイルが後でブラウザ160で除去または変更された場合であっても、装置のそのサブセット451についてのみ実行される。これによって、装置動作を持続的な方法で行うことができる。すなわちAPI関数(640、440)が開始された後は、アプリケーション・ファイル175がブラウザ160によって変更/除去されるかどうかに関係なく、その関数を完了することができる。この実行持続性によって、キオスクとのある種のユーザ対話をより効率的にすることができる。たとえば、アプリケーション・ファイル175は、カード発行機に新しいカードを発行するように指示することができる。次に、ユーザ/ブラウザは、カード発行機が磁気ストライプにデータを書き込んで新しいカードの打出しをしている間に別のアプリケーション・ファイルに移ることができる。
【0047】
ブラウザ機構640Aは、1)ブラウザ自体の標準ディレクトリ/ライブラリ内に入れられ、2)アプリケーション・ファイル175が、1つまたは複数のローカルAPI関数に関するメッセージ(たとえば関数名および関連パラメータ)を渡すネーム・サーバ機構を使用したメッセージ受渡し(図7および図9とその説明を参照)か、またはローカルAPI関数の直接呼び出し(図8および図10とその説明を参照)のいずれかによって、ローカルAPI680のうちの1つまたは複数のローカルAPI680を呼び出すことができるようにする構造を有する。
【0048】
好ましい一実施形態では、ブラウザ機構640Aは、アプリケーション・ファイル500にとって既知のJava(登録商標) API(「Java(登録商標)ラッパ」と呼ぶ場合もある)を含み、(たとえばプロセス間通信またはネーム・サーバを使用して)通信を行うか、またはローカルAPI680を直接呼び出すためのネイティブ言語(たとえばC++)でプログラムされた関数をさらに含む。
【0049】
API機構640Bは、1)様々なローカル機能モジュール(たとえばブラウザ制御モジュール、協同機能モジュール、装置制御モジュール、システム監視モジュールなど)に直接アクセスし、2)ネーム・サーバ機構を使用するかまたは関連する関数モジュールを直接呼び出すことによって1つまたは複数のAPI関数680から成るセットを呼び出すことができる構造を有し、3)API640Aとのメッセージ・ベースの通信を可能にするIPCを有する。(API関数680は、キオスク内の所与の装置または機能を特に制御するように作成され、アプリケーション・ファイル175によってアクセス可能であっても可能でなくてもよいことに留意されたい。)
【0050】
このキオスク制御機構を使用する一応用例は、アプリケーションがキオスクの構成方法を決定する前に、システム・セットアップおよび状況を問い合わせることである。アプリケーション・ファイル175内で、アプレットCallAPI.classを使用してAPI関数640「query_status」を呼び出すことができる。たとえば、

Figure 2004030640
このアプレットを以下のようにHTMLファイルに組み込む。
Figure 2004030640
このアプレットがブラウザによって実行されると、まず、kioskAppInterfaceというクラスをインスタンス化する。このファイルおよび関連するDLLは、ブラウザ標準ライブラリに入れられる。次に、send_APImessage()というkioskAppInterfaceクラス(640A)のメソッドを使用して、APIメッセージ”query_status”(640A)を送る。このメソッドは、プロセス間通信機能640Iを呼び出して、API機構640Bにメッセージを送る。次に、AIP機構640Bは、関連するローカルAPI関数680を呼び出してシステム状況データを入手し、そのデータをプロセス間通信機能640Iを介して640Aに送り返す。アプレットは、メソッドget_APImessage()をコマンド”status”と共に使用して、640Bから送り返されたデータを入手し、そのデータをsysStatusというクラス内のデータ構造に格納する。
【0051】
640Aと640Bとの間のAPIメッセージ受渡しには、ネーム・サーバ機能機構(以下の図7を参照)を使用することができる。一般に、640Bがメッセージを入手すると、(640B内の)ネーム・サーバ機能がそのメッセージを解析し、対応するローカル機能API680を呼び出す。この例では、システム監視関数APIを呼び出してシステム状況データを入手する。これは、以下のように例示することができる。
640B内のネーム・サーバ機能において、
Figure 2004030640
上述のように”sysStatus”クラス・データ構造で入手されたデータの例を以下に示す。
Figure 2004030640
このメッセージは、キオスク上に5個の装置があり、カードを必要とするカード発行機以外はすべて動作していることを示している。
【0052】
キオスクの現況に従って、アプリケーション・ファイル175は、レーザ・プリンタ、受領書プリンタ、およびカード読み取り機(装置サブセット451)を選択して使用することができると同時に、状況データが示すようにカード読み取り機のカード供給機構にカードが入っていないため、カード発行機の使用を回避する(このような状況では、カードは他の手段で作成し、キオスクのユーザに郵送される)。
【0053】
ある種の好ましい実施形態では、このような技法を使用して、キオスクにどの装置が備えられているか、それらの装置が正常に機能しているかどうかを判断する。このようにして、サーバは、キオスクがどの装置を備えているかやどの装置が動作可能かに基づいて、キオスクを構成するための特定のアプリケーション・ファイル175を供給することができる。したがって、それぞれのアプリケーション構成のためにサーバでアプリケーション・ファイルを適切に選択することにより、任意の数の異なるキオスク設計や動作状況を構成することができる。たとえば、銀行業務アプリケーションでは、高品質の銀行取引明細書を印刷するためにレーザ・プリンタを備えたキオスクにはレーザ・プリンタ制御を含むアプリケーション・ファイルとして構成されるファイル500が送られるのに対し、それと同じタスク(銀行取引明細書)のために(使用可能かつ動作可能な)受領書プリンタしか持っていないキオスクには、受領書プリンタ制御を含むアプリケーション・ファイルとして構成される他のファイル500が送られる。このようにして、誤動作するレーザ・プリンタを備えたキオスクや、レーザ・プリンタのないより低コストのキオスクでも、銀行アプリケーション用に適切に構成することができる。
【0054】
他の実施形態では、1つまたは複数のサーバがアプリケーション・ファイルで要求を送ることによって状況情報を要求することができる。この情報を使用して、サービスの提供を必要とするキオスクまたはそれらのキオスク上の装置あるいはその両方を判断することができる。たとえば、必要な場合にサービス技術員を派遣してカード発行機にカードを追加することができる。
【0055】
他の実施形態では、キオスクまたは装置のサービス履歴で使用するために状況情報を要求することができる。さらに、他のマーケティング情報、たとえば、特定の設置場所でどのクラスの顧客によってどの構成が最も要求されるかという情報を入手することもできる。
【0056】
好ましい一実施形態では、キオスクは、他のアプリケーションのバックグラウンドで実行されるブラウザ・ウィンドウ(システム監視アプリケーション・ウィンドウ)を有することができる。このシステム監視アプリケーション・ウィンドウは、1つまたは複数のサーバと通信する1つまたは複数のアプレットを含む1つまたは複数のHTMLファイルを含むことができる。(サーバとのJava(登録商標)アプレット通信のための機構は周知である。)このシステム監視アプリケーション・ウィンドウは、キオスクに電源投入されると常に開始することができ、キオスクが動作中である限り稼働し続ける。このようにして、1つまたは複数のサーバが、アプレットとの通信を介して随時、キオスクのシステム状況情報を入手することができる。
【0057】
本明細書に記載の手法によって得られる可能性の中には以下のものがある。
1)「軽量クライアント」キオスク。キオスクに事前インストールする必要があるアプリケーション固有ソフトウェアがないため、コスト効果の高いキオスクの構築と維持を行うことができる。したがって、サーバ上で1つのアプリケーション(アプリケーション・ファイル500)を作成し、それをそのサーバに接続されているネットワーク上の多数の「軽量」キオスクが使用することができる。ネットワーク上の「軽量」キオスクのいずれのためにもアプリケーション固有のソフトウェアを作成する必要がない。実際には、ネットワークは、アプリケーション固有ソフトウェアをまったく持たない1つまたは複数の標準(したがってより安価な)「軽量」キオスクで構成することができる。(たとえば、キオスク製造業者は、どの用途にも使用され、どの用途からも独立した1つまたは複数の標準キオスクを製造することができる。)アプリケーション・ファイル500をサーバで作成、更新、保守することができ、キオスク内のどのプログラミングにも変更を加えることなく、ネットワーク上の1つまたは複数のキオスクを再構成するために使用することができる。この「軽量クライアント」キオスクは、いつでもどこでも汎用公共アクセスを提供するためのキオスクの大量配備を可能にし、たとえばインターネットまたは電話網あるいはその両方を介して通信することができる「キオスク電話」を可能にする。
【0058】
2)キオスクが再構成可能であるため、サーバで多数の多様なアプリケーションを開発することができ、そのキオスクを介して配布することができる。したがって、アプリケーション提供者はネットワーク上にあるどのキオスクでも共用することができる。これらのアプリケーションは、特定の時点や特定の状況、たとえばユーザ要求または所与の環境条件(雨が降り出した時に傘店が広告を出すなど)のために、キオスクに供給することができる。
【0059】
3)キオスクはインターネットおよびウェブのオープン・スタンダード技術に基づくことができるため、情報や媒体が豊富で、技術に富むインターネットおよびワールド・ワイド・ウェブの利点を利用することができる。
【0060】
ユーザがこのキオスク100をどのように使用できるかを示すいくつかの非限定的な例を以下に示す。
1.遊休時におけるキオスクの画面によって、様々な画像、ビデオ・クリップ、音声、グラフィクス・パターンおよびテキストを動的に表示する。画面の内容はすべてHTMLファイルから制御され、これらのHTMLファイルはキオスクの要求またはサーバのプッシュに基づいて更新される。サーバ提供者は、この異なる種類の画面「スペース」およびその表示時間に対して異なる料金を支払うことができる。朝と夕方の通勤時間には、主にヘッドライン・ニュースと金融市場の変化を表示し、昼食時間には多くのレストランの宣伝を表示する。週末には、百貨店の特売広告を表示することもできる。この内容は、そばを通る人々を常に、画面にタッチするように誘う。
2.ユーザは画面を見て歩み寄り、画面にタッチする。画面はただちに次の画面に切り替わり、アプリケーションのカテゴリを示す多くの画像アイコンとテキストを表示する。
3.ユーザがピザ注文アイコンにタッチすると、ユーザがピザの種類を選択することができる画面が提示される。画面は、ユーザに対してピザの配達場所と時間の入力を促し、ユーザは画面上のタッチ・キーパッドを介して情報を入力することができる。HTML内に組み込まれた制御プログラム620がこのデータを取り込む。次に、画面はユーザに対して自分のクレジット・カードを挿入して支払いを認めるように促す。制御プログラムは、カード読み取り機を開き、クレジット・カード情報を取り込む。次に、制御プログラムは関連するキオスクAPI関数を使用してキオスク上で通信機能を呼び出し、(たとえばモデムを介して)クレジット・カード会社と(たとえばファクス伝送を介して)ピザ店とにアクセスする。これらの機能が完了した後、画面は顧客に注文のための情報を確認する。その他の一般小売業トランザクションも同様にして行うことができる。
4.ユーザは、電話アイコンにタッチして電話を掛けることもできる。画面上に電話アプリケーションHTMLファイルが電話キーパッドと共に表示される。ユーザが番号を入力した後、組込み制御プログラムが関連API関数640Aを呼び出し、電話呼出しを開始する。これは、キオスクのネットワーク接続(122、123、150)、アプリケーション・ファイル500、およびユーザ選択105Aに応じて、公衆電話網(PSTN)、統合サービス・ディジタル網(ISDN)、またはインターネット電話を介した従来の電話呼出しとすることができる。電話が接続されると、ユーザはキオスクに備えられた送受話器またはスピーカフォンを使用することができる(欧州特許出願第789470号に対応する、1996年2月6日出願の「Multipoint Simultaneous Voice and Data Services Using a Media Splitter Gateway Architecture」という名称のホルテンシウス(Hortensius)等の米国特許出願第08/595897号を参照されたい。これは、参照によりその全体が本明細書に組み込まれる)。
【0061】
他の好ましい実施形態では、ユーザは相手方が同じ機能を備えていればアプリケーション共用機能を使用してテレビ電話呼出しまたはテレビ会議呼出しも選択することができる。その場合、HTMLアプリケーションに組み込まれた制御プログラム620が関連API関数640Aを呼び出して、キオスクのテレビ会議機能を開始する。ユーザはキオスクに備えられたタッチ・スクリーンと電子ペンを使用して会話を容易にすることができる(前述のフィン等の「Internet Web Page Sharing」特許出願に記載されている)。
5.ユーザはファクス機能を選択することもできる。画面は、ユーザに対して指示を出して、ファクス番号を入力し、クレジット・カードを挿入してファクスする文書を適切な装置(文書スロットなど)に入れ、準備が整ったら画面上のOKボタンにタッチするように促す。ボタンにタッチすると、組込み制御プログラム620がキオスク上で関連装置制御API関数640Aを呼び出し、スキャナを動作させ、文書を走査して文書を返し、ネットワーク、たとえばPSTNやインターネットを介して文書を電子送信する。
6.ユーザは、電子メール機能を選択することもできる。画面は、電子メール用のHTMLアプリケーションを表示する。組込み制御プログラム620が関連API関数640Aを呼び出すか、またはブラウザを介してメール・サーバおよびディレクトリ・サーバと直接通信し、ユーザを識別し、既存の電子メール・メッセージの取出しまたは新規メッセージの送信を行う。
7.ユーザは、フロッピィ・ディスケットなどの媒体上の電子ファイルを転送する105Aを選択することもできる。画面は、ユーザに対して特定のプロセスに従うように、たとえばフロッピィをスロットに挿入するように促す。組込み制御プログラム620が関連API関数640Aを呼び出し、ディスケットを読み取り、ユーザが選択したファイルの読み取りまたは書込みを行い、それを、たとえば誰かの電子メール・アドレスに送信するなど、ユーザの指示に従って転送する。
8.ユーザは、弁護士、医師、会計士、不動産業者、融資ブローカー、投資顧問業者、保険業者など、広範なサービス提供者(たとえばサーバ上のアプリケーション所有者)の中からサービスを選択することができる。画面は、HTMLファイル内の対応するアプリケーションを表示し、要求されたサービスを供給する(ユーザ選択に基づき、このサービスは、英語、スペイン語、中国語、日本語、フランス語、イタリア語など、任意の自然言語で提示することができる。)
9.サービス提供者のアプリケーションによっては、映像、音声、共用画面、および遠隔装置制御機能を使用して、リアルタイム協同セッションも開始することができる(前述したフィン等の特許を参照)。組込み制御プログラムが関連API関数620を呼び出し、映像、音声、およびデータ通信を処理する。
10.ユーザは、情報の検索を選択することができる。画面がユーザにどのような情報が必要かを入力するように促し、組込制御プログラムがそのデータを取り込み、情報のタイプの応じて照会を送る。照会は、インタフェースを介して、周知の検索エンジン、アプリケーション・サーバ上のデータベース、および他のネットワーク・サーバ上のデータベースを使用して送ることができる。
11.ユーザは、カスタマイズされたアプリケーション・サーバを選択することができる。たとえば、ユーザが(たとえば磁気カードまたはスマート・カード上でアクセスされた情報から)識別されると、アプリケーション・ファイルは、ユーザのためにカスタマイズされた情報やキオスク構成を提供する。
12.ユーザは、キオスク100によって最初に提供される構成ではないキオスク100の構成を選択することができる。キオスクの第1の構成と対話することによって、他のアプリケーション・ファイル175の参照によってキオスクを第2の構成に再構成することができる。たとえば、第1の構成が、第2の構成のためのアプリケーション・ファイル175にアクセスするユーザ入力(アイコンまたはハイパーリンク)を備えることができる。
13.ユーザは、サーバが「学習」アプリケーション・ファイル175を提供する、ネットワークに接続された1つまたは複数のキオスクにアクセスすることができる一人または複数の学生または受講者とすることができる。
14.ユーザは、キオスクから「電子」製品を選択することができる。たとえば、音楽、ビデオ、コンピュータ・ソフトウェア、またはその他のマルチメディア情報あるいはそれらの組合せを有するコンパクト・ディスク(CD)を、適切なディスペンサから販売することができる。あるいは、適切なキオスク装置によって空の媒体(たとえばテープ、ディスケット、書込み可能CDなど)に書き込み、ネットワークを介してユーザに伝送可能な「電子」情報を無形の形態で提供することもできる。たとえば、最新のオペラ録音を、工場で「カット」されたCDを送らずに、CDで提供することができる。
【0062】
キオスク装置との間で情報の入出力を行うために使用される、ある種のキオスク制御機構640の他の例を以下に示す。一般的入力状況で、アプリケーション・ファイル500は、API関数640「hardkey_input」を呼び出すために使用されるCllAPI.classというアプレットを有する。たとえば、以下の通りである。
【0063】
Figure 2004030640
【0064】
このアプレットを以下のようにHTMLファイルに組み込む。
【0065】
Figure 2004030640
【0066】
このアプレットは、ブラウザによって実行されると、まず、kioskAppInterfaceというクラスをインスタンス化する。このファイルおよび関連DLLは、ブラウザ標準ライブラリに入れられる。次に、send_APImessage()というkioskAppInterfaceクラス(640A)のメソッドを使用して、APIメッセージ「hardkey_input」(640A)を送る。このメソッドは、プロセス間通信機能640Iを呼び出して、メッセージをAPI機構640Bに送る。次に、API機構640Bが関連ローカルAPI関数680を呼び出し、キオスクに備えられたハードウェア・キーからのキー入力を取り込み、それをプロセス間通信機能640Iを介して640Aに送り返す。このアプレットは、コマンド「input」と共にget_AIPmessage()を使用して、640Bから送られたデータを入手し、InputDataというクラス内のデータ構造に格納する。
【0067】
640B内のネーム・サーバ機能において、
Figure 2004030640
【0068】
アプリケーション・ファイル500が、「ソフト・キー」入力を呼び出す組込みアプレットを有する場合も、同様のAPIメッセージが640Aと640Bの間で受渡しされ、異なるAPI関数680を使用して画面上にソフトキー・パッド・ウィンドウを「ポップアップ」表示し、ユーザ入力を取り込むことに留意されたい。このようなソフト・キー入力のためのAPI関数680は周知である。
【0069】
同様にして、アプリケーション・ファイル500が、出力装置、たとえばレーザ・プリンタ上でのファイルのプリントを呼び出す場合、組込みアプレットを有する場合、上記のコードはローカルAPI関数680のLaser_print(FileName)に指示して、レーザ・プリンタを制御し、ファイル「FileName」をプリントさせる。
【0070】
図7に、ICP640Iおよびネーム・サーバ機能640Bを使用するキオスク制御機構640の一実施形態を示す。この場合、アプリケーション・ファイル(175、500)によって、(主としてメッセージ受渡しのための)汎用通信API関数640Aの小さな固定セットが使用される。これらの通信API関数は、640Aと60Bとの間でメッセージの通信または受渡しを行う。メッセージの実行は、640B内のネーム・サーバ機能によって行われる。サーバ機能640Bは、IPC640Iサーバとしての機能する。ネーム・サーバ機能は、様々な事前定義メッセージを認識する。たとえば、一実施形態では、通信APIのセットは、send_mesage(message)とget_message(message)の2つの関数を有する。しかし、複数の「message」がある。640B内のネーム・サーバ機能は、これらの各事前定義メッセージが入ったリストを融資、各事前定義メッセージは、それぞれの事前定義メッセージを実行するために適切なローカルAPI関数680を呼び出すことができる1組の論理に関連づけられている。
【0071】
この実施形態では、新しい事前定義メッセージと、新しい機能を実行するのに必要な論理とを与えることによって、新しい装置やそれらの新しい装置によって実行される新しい機能を追加することができる。このようにして、アプリケーション・ファイル(175、500)は、与えられた通信API関数において新しいメッセージ識別子を使用するだけで、それらの新しい機能を実行することができる。これには、典型的には、アプリケーション・ファイル500内で「ASCII」または「text」メッセージ識別子を変更するだけでよい。新しい機能を使用するために、新しい組込みプログラムのコード化とコンパイルを行ったり、既存のプログラムを修正したりする必要はない。したがって、キオスク提供者が必要な論理をネーム・サーバ640Bにすでに組み込んでいるため、アプリケーション所有者(したがってサーバ上のアプリケーション・ファイル)が新しい機能を実行するためにしなければならないことはわずかしかない。
【0072】
図8は、ブラウザ機構640Aにおけるマッピング・ローカルAPIのためのIPC640Iを使用するキオスク制御機構640の代替実施形態を示すブロック図である。この例では、多くのキオスク制御関数620またはすべてのキオスク制御関数620が、ブラウザ機構640Aでアプリケーション・ファイル500から対応するマッピング・ローカルAPIを直接呼び出すことによって実行される。各マッピング・ローカルAPI640Aは、IPC640Iを介してAPI機構640Bと連絡し、API機構640Bが適切なローカルAPI関数680を呼び出す。ここでは、マッピング・ローカルAPI640Aは、Java(登録商標) APIプログラムである。1つまたは複数のローカルAPI680のために特に作成された1つのJava(登録商標) APIプログラムがある。ネーム・サーバの場合とは異なり、Java(登録商標) APIプログラムのうちの少なくとも1つのAPIプログラムが、ローカルAPI680のうちの1つまたは複数のローカルAPI680を制御する論理を持っていなければならない。これらのJava(登録商標) APIプログラム640は事前定義され、アプリケーション・ファイル500にとって既知である。
【0073】
この実施形態では、ブラウザ機構640A内に新しいマッピング・ローカルAPI(640A)をそれらに対応するAPI機構640Bと共に設けることによって、新しい装置やそれらの装置によって実行される新規機能を追加することができる。この実施形態では、アプリケーション・ファイル500は、これらの各新規機能を直接呼び出しで実行する必要がある。したがって、新規機能を実行するための論理の一部または全部を、アプリケーション・ファイル500に定義する必要がある。たとえば、サーバでアプリケーション・ファイル500を作成するアプリケーション・プログラマは、たとえば新しいJava(登録商標)アプレットを作成することによってこの新しい論理をコード化する必要がある。
【0074】
図9に、キオスク制御機構640の他の実施形態を示す。この実施形態では、IPC640Iがなく、したがってAPI機構640Bはブラウザ機構640Aにマージされる。しかし、ネーム・サーバ機能(やはりマージされる)は使用され、通信APIのセットと組み合わされて、ブラウザ機構(640B、640)になる。この実施形態では、(アプレットを含む)アプリケーション・ファイル500がブラウザ160によって「除去(ドロップ)」され、ローカル機能680が終了するため、持続性が失われる。この実施形態は、持続性が不要な場合、たとえば、ブラウザによって制御される画面以外に必要なキオスク装置がない場合に有用である。
【0075】
図10に、キオスク制御機構640の他の実施形態を示す。この実施形態には、IPC640IとAPI機構640Bがまったくない。この場合は、アプレットがAPI関数(640、640A)を直接呼び出し、API関数がローカルAPI関数680を直接呼び出す。ここでは、API関数640はJava(登録商標) APIプログラムである。1つまたは複数の各ローカルAPI680のために特に作成された1つのJava(登録商標) APIプログラムがある。ネーム・サーバの場合とは異なり、Java(登録商標) APIプログラムのうちの少なくとも1つのJava(登録商標) APIプログラムが、ローカルAPI680のうちの1つまたは複数のローカルAPIプログラムを制御する論理を持っていなければならない。これらのJava(登録商標) APIプログラム640は事前定義され、アプリケーション・ファイル500にとって既知である。この実施形態でも持続性は失われる。
【0076】
図11は、キオスクによって行われる実行プロセス700のフローチャートである。
【0077】
まず、ブラウザ160がアプリケーション・ファイル175から(HTML)ファイル500を入手する705。次に、ブラウザ160は、アプリケーション・ファイル500のタグと内容を解釈する710。ブラウザ160がローカルAPI呼び出しに遭遇しない場合715、ブラウザは関連する周知の処置を行って720、タグを実行する。ブラウザがローカルAPI呼び出しに遭遇した場合715、ブラウザは関連API関数(640または640A)を呼び出す725。
【0078】
好ましい一実施形態では、ブラウザ機構640Aはプロセス間通信機能640Iを介してAPI機構640Bにメッセージを伝える730。あるいは、前述のようにメッセージ・サーバが使用される。API機構640Bはメッセージを受け取り、関連ローカル機能680を呼び出す735。API機構640Bは、プロセス間通信機能640Iを介してブラウザ機構640Aにローカル機能の実行結果についてのメッセージを伝える740。
【0079】
ブラウザは、画面入力、組込み制御プログラム論理、または外部ブラウザ制御機能660を介して制御され、次のHTMLファイルを要求する。このようにして、ブラウザをローカル・キオスク装置として扱うことができる。したがって、ブラウザを制御して、ローカルAPI660を使用して周知のブラウザ・インタフェース(API681)にアクセスすることによって、ネットワークを介して1つまたは複数のサーバから任意の特定のHTMLファイルをロードすることができる。ローカルAPI660は、組込み制御プログラム620がブラウザ・イン681にアクセスすることができるようにするように作成される(上記参照)。
【0080】
図12は、ネットワーク上の1つまたは複数のサーバで実行されるサーバ・プロセス800のフローチャートである。サーバが、ネットワークを介して1つまたは複数のキオスクから要求を受け取る810。この要求では、アプリケーション・ファイル175のうちのどのアプリケーション・ファイル175がキオスクによって選択/アクセスされるかが識別される。この要求は、アプリケーション・ファイルの要求/アクセスを行っているキオスク100の設置場所も含む。サーバは、要求を受け取ると、要求されたアプリケーション・ファイル175をキオスクに送る820。アプリケーション・ファイル175は、サーバ上の論理によって事前作成または動的に生成することができる。
【0081】
他の実施形態では、キオスクはプロキシ・サーバ195Aに要求を送る810。プロキシ・サーバ195Aは、典型的にはサーバ195よりもキオスクの近くに配置される。あるいは、プロキシ・サーバ195Aは、キオスク100/200ないのコンピュータ上に配置することもできる。たとえば、サーバ195は第1の都市、たとえば本社の所在地に配置され、プロキシ・サーバ195Aは異なる都市にあるキオスクに接続されたLAN上に配置することができる。プロキシ・サーバ195Aは、事前定義されたスケジュールに従ってキオスクが必要とする多くのアプリケーション・ファイル175またはすべてのアプリケーション・ファイル175を求める要求をネットワーク150を介してサーバに送ることができる。このようにして、キオスクは、アプリケーション・ファイルを必要とするとき、プロキシ・サーバ195A上のアプリケーション・ファイル175に、より高速に、より高い信頼性をもってアクセスすることができる。さらに、プロキシ・サーバは、ネットワーク上の「オフ・ピーク」時間中にサーバ195に対してアプリケーション・ファイル175を要求することができる。
【0082】
他の実施形態では、サーバ(195、195A)を使用して、サーバ195によって識別された1つまたは複数のキオスクに情報を「プッシュ」することができる。たとえば、ステップ810で、サーバ195で要求が開始される。この開始810は、様々な理由で行われるようにすることができる。たとえば、アプリケーションを更新するには、新しいアプリケーション・ファイル175を使用して1つまたは複数のキオスクを再構成する必要がある。あるいは、毎日特定の時刻に新しい構成の提供、すなわち毎日午後5時に異なる情報源からのニュースの提供を必要とする場合がある。サーバは、キオスクの定期「点検」を「プッシュ」して、どのキオスクが保守を必要としているかを判断することもできる。
【0083】
この実施形態の好ましい一実施態様は、キオスクで稼働する「サーバ・プッシュ機能」685を使用する。サーバ・プッシュ機能685は、ネットワーク150に接続され、サーバ195からメッセージを受け取ることができる。サーバ・プッシュ機能685は、ブラウザ・インタフェース681にもアクセスすることができる。サーバ195は、ブラウザにサーバ195に対して特定のアプリケーション・ファイル500を要求させる要求を、サーバ・プッシュ機能685に送る。
【0084】
図13は、組込み制御プログラムがJava(登録商標)の代わりにActiveX技法を使用する場合の機構を示すブロック図である。ActiveX制御オブジェクトは、C++やVisual Basic、Java(登録商標)などの様々なプログラミング言語を使用して実現可能である。ActiveXオブジェクトは、HTMLファイルに組み込むことができる。たとえば以下の通りである。
【0085】
Figure 2004030640
【0086】
この場合、ブラウザはActiveX使用可能でなければならない。すなわち、ActiveX技法をサポートしていなければならない。一実施形態では、ブラウザはMicrosoft Internet Explorerである。
【0087】
アプリケーション・ファイル500がブラウザ160に到着すると、HTMLファイルがそのタグと内容に基づいて解釈される910。前述のJava(登録商標)の場合と同様に、ブラウザは前述のように非API制御関数を実行する920。ブラウザによって実行されたAPI制御関数930がAPI940を直接呼び出す。Java(登録商標)の場合と同様に、APIの最初の部分940Aがプロセス間通信機能940Iを介してAPIの第2の部分(たとえば640B)と連絡し940B、この第2の部分がローカルAPI680を呼び出す。
【0088】
ActiveXと前述のJava(登録商標)の場合との相違は、ActiveXは、C++やVisual Basicなどの非ネットワーク言語で作成されたオブジェクトを含むことができることである。これらの言語のオブジェクトは、実行可能コードでブラウザにダウンロードされる。したがって、このようなオブジェクトは、同じ言語で作成されたプログラムが行えることはどのようなことでも行うことができるが、Java(登録商標)アプレットが持っているようなセキュリティ上の制限を持たない。したがって、組込み制御プログラム620を、非Java(登録商標)言語を使用してActiveX制御プログラムとして作成した場合、API関数940はキオスク内の任意のどこにでも入れることができる。ActiveXオブジェクトでJava(登録商標)を使用する場合は、やはり前述の機構を使用しなければならない。
【0089】
図14から図17で、前述の番号が付いたボックスは前述と同様の機能を有する。
【0090】
図14に、IPCおよびネーム・サーバ機能を使用するキオスク制御機構940の一実施形態を示す。ブラウザ機構940Aは、ブラウザ・ディレクトリに入れる必要がなく、キオスクのメモリ内の任意の場所、たとえばキオスクのシステム・ディレクトリに入れることができるネイティブ言語APIである。しかし、ブラウザ機構940Aのパス(すなわち場所)は、アプリケーション・ファイル500にわかっていなければならない。
【0091】
図15は、IPC640Iをマッピング・ローカルAPIと共に使用するキオスク制御機構940の他の実施形態を示すブロック図である。図8と同様、ローカルAPI680のうちの1つまたは複数のローカルAPI680のための少なくとも1つのブラウザ機構940がある。
【0092】
図16に、IPC640Iのないキオスク制御機構940の他の実施形態を示す。この場合、ブラウザ機構940Aは図14で前述したように配置することができる。
【0093】
図17に、制御をJava(登録商標)で実施しない場合にActiveX制御を使用するキオスク制御機構の他の実施形態を示す。この実施形態では、そのような組込みActiveX制御がローカルAPI680を直接呼び出すことができるため、940はまったく不要である。この場合、実行の持続性は失われる。
【0094】
図18に、いわゆるプラグイン技法を使用する他のキオスク制御機構を示す。この場合、好ましい実施形態はNetscape Navigator v3.0またはそれ以降のブラウザを使用する。
【0095】
ここでは、制御機構1040は、ブラウザ機構(プラグイン・モジュールおよびそれに付随するJava(登録商標)ラッパ)1040Aを含み、このブラウザ機構にアプリケーション・ファイル/ファイル(175、500)内のキオスク制御プログラム(620)がアクセスする。プラグイン・モジュール1040Aは、アクセスされると、ブラウザ160の一部として実行される。実行プラグイン・モジュール1040Aは、プロセス間通信機能1040Iを呼び出す。このプロセス間通信機能(IPC)1040Iは、前述のIPC(640I、940I)と同じものとすることができる。IPC1040Iは、API機構1040Bと連絡してローカルAPI680を呼び出す。API機構1040Bは、前述の機構(640B、940B)と同じものとすることができる。
【0096】
この実施形態では、ブラウザ機構1040Aはプラグイン技法(ザン・オリファント(Zan Oliphant)の「Programming Netscape Plug−ins」(Sams.net、1996年刊、ISBN1−57521−098−3)を参照)によって実施される。プラグイン技法は、ネイティブ・コード・モジュールを使用する。すなわち、CまたはC++あるいは同様のプログラミング言語を使用して実施され、さらに、より好ましい実施形態ではJava(登録商標)ラッパでも実施される。プラグイン1040Aは、ブラウザ160によって指定された特別なプラグイン・ディレクトリに入れられる。HTMLインタプリタ610が、マルチパーパス・インターネット・メール・エクステンション(MIME)タイプとも呼ばれる組込みファイル内の固有ファイル名拡張子によってそれぞれのプラグイン1040Aを識別する組込みファイル(620)に遭遇すると、プラグイン1040Aはブラウザ160に動的にロードされる。
【0097】
組込みキオスク制御プログラム(620)は、1)Java(登録商標)Script関数、2)Java(登録商標)アプレット、または3)固有拡張子を持つMIMEファイルに含まれる事前定義された1組の制御スクリプトとすることができる。
【0098】
ブラウザ160がプラグイン・モジュール1040Aをロードすると、プラグイン1040AはHTML文書に使用可能になる。すなわち、プラグイン内の関数(プラグイン関数)が組込みプログラム(620)、たとえば呼び出すJava(登録商標)Script関数またはJava(登録商標)アプレット関数に使用可能になる。これを行う際、キオスクのローカルAPI680を1つまたは複数の対応するプラグイン1040Aを介して所与の組込みプログラム620によって制御することができる。言い換えると、プラグイン・モジュール1040AはIPC関数1040Iを呼び出して、対応するAPI機構1040Bを介してキオスクのローカルAPI680を呼び出す。
【0099】
非限定的な3つの例を以下に示す。
【0100】
例1は、組込みキオスク制御プログラム1030としてJava(登録商標)Script関数を、メッセージ受渡機能を備えるプラグイン・モジュール1040Aと共に使用する。
【0101】
制御プログラム1030を有するアプリケーション・ファイル175は、以下の通りである。
【0102】
Figure 2004030640
【0103】
Java(登録商標)アプレット「MYAPPLET.Java」には以下のようなコードが含まれる。
【0104】
Figure 2004030640
【0105】
Java(登録商標)ラッパ・ファイルPluginWrapper.javaには、以下のコードが含まれる。
【0106】
Figure 2004030640
【0107】
上記の組込み制御プログラム1030に関連づけられたプラグイン・モジュール1040Aは、とえばC++などのネイティブ言語コードで実施されたメソッドSendMsg()を提供する。
【0108】
例2は、メッセージ受渡し機能を備えるプラグイン・モジュール1040Aと共に、組込みキオスク制御プログラム1030としてJava(登録商標)アプレットを直接使用する。
【0109】
制御プログラム1030を有するアプリケーション・ファイル175は以下の通りである。
【0110】
Figure 2004030640
【0111】
Java(登録商標)アプレット「MYAPPLET.Java」には以下のようなコードが含まれる。
【0112】
Figure 2004030640
【0113】
Java(登録商標)ラッパ・ファイルPluginWrapper.javaには以下のコードが含まれる。
Figure 2004030640
【0114】
例1と同じように、上記のプラグイン組込み制御プログラム1030に関連づけられたプラグイン・モジュール1040Aが、たとえばC++などのネイティブ言語で実施されたメソッドSendMsg()を提供する。
【0115】
例3は、1組の事前定義制御スクリプトと、キオスク・ローカルAPI680を制御する対応するプラグイン・モジュール1040Aとを含み、それらのスクリプトを実行してキオスクのローカルAPI680を制御する組込みファイル1030を使用する。
【0116】
組込みファイル1030を有するアプリケーション・ファイル175は、以下のようになる。
【0117】
Figure 2004030640
【0118】
プラグイン・モジュール104Aは以下のコードから成ることができる。
Figure 2004030640
Figure 2004030640
上記の3つのプラグイン関数は、Netscapeブラウザ160が備える標準プラグインAPIを実施する。ここでは、ブラウザ160が備える他のプラグインAPIは使用されない。
【0119】
<embed>タグがHTMLインタプリタ610によって解釈されると、MSGPASS.METというファイル1030がローカル・ディスクにダウンロードされ、それに対応するプラグイン・モジュール1040Aがまだブラウザ160にロードされていない場合、そのプラグイン・モジュール1040Aがロードされる。ブラウザ160は、NPP_NewというプラグインAPIを自動的に呼び出してプラグイン・インスタンスを作成し、ダウンロードされたファイルの名前を持つプラグインAPIであるNPPStreamAsFile()を呼び出して、そのファイルを実行する。必要であれば、ブラウザ160はNPP_Destroy()というプラグインAPIを呼び出してプラグイン・インスタンスを破棄する。
【0120】
組込みファイル内の事前定義スクリプトを解釈して実行するためにクラスKioskIPCと関数InterpretFile()を、C++などのネイティブ言語を使用して実施することができる。この意味で、関数InterpretFile()スクリプトが、妥当なパフォーマンスでスクリプトを解釈して必要な関数を実行することができるように実施されている限り、スクリプトをどのようなものにすることができるかについて制限がない。一例は以下の通りである。
【0121】
組込みファイル内では、スクリプトは以下のようになる。
【0122】
Figure 2004030640
【0123】
Figure 2004030640
【0124】
プラグイン・モジュール1040Aは、その機能の特定の対話式制御を実現するために、ブラウザ160ウィンドウ内にいくつかのボタンを作成することもできる。たとえば、「PrintCurrentPage」というメッセージを送るSendMsg()関数を呼び出すために、「Print(プリント)」というボタンを作成し、タッチまたはクリックされるのを待つことができる。<embed>タグは、プラグイン・モジュール1040Aの実施態様に従ってプラグイン・モジュール1040Aを制御するための1組の事前定義パラメータも含むことができる。<embed>タグの使用方法とプラグイン・モジュールの実施方法については、「HTML Publishing for Netscape」(スチュアート・ハリス(Stuart Harris)およびゲイル・キダー(Gayle Kidder)著、ISBN1−56604−288−7)およびザン・オリファント(Zan Olphant)による上記の書物を参照されたい。
【0125】
以下に本発明をまとめて示す。
(1)ネットワークに接続され、コンピュータを含むキオスク装置であって、
少なくとも1つの複数の入力/出力装置または周辺装置と、
前記入力/出力装置または周辺装置を駆動する少なくとも1つのローカル・キオスクAPIを格納する手段と、
前記ネットワークを介して、キオスク装置が実行するアプリケーションに関連づけられ、組込み構成要素ファイルと、組込み制御関数とから構成され、ハイパーリンクされたHTMLファイルを含んで構成されるアプリケーション・ファイルを取り出すブラウザ手段と、
前記アプリケーション・ファイルを受け取って、組込み制御関数の検出に応答して前記ブラウザ手段に組込まれるブラウザ機構と、前記入力/出力装置または周辺装置を選択的に機能させるAPI制御機構と、プロセス間通信を使用して前記ブラウザ機構から前記API機構へと組込み制御関数を渡すキオスク固有制御手段とを含み、
前記API機構が前記ローカル・キオスクAPIを選択的に機能させて前記入力/出力装置または周辺装置を駆動させ、所定のアプリケーションを実行する
キオスク装置。
(2) 前記入力/出力装置または周辺装置が、プリンタと、媒体読取装置と、媒体記録装置と、媒体ディスペンサと、キャッシュ・ディスペンサと、スキャナと、ディポーザと、電子ペンと、カード発行機と、勘定書印刷機と、プリンタと、チケット発行機と、CRTと、キーボードと、タッチ・センシティブ・スクリーンと、カメラと、人間感知器と、電話機と、照明と、マイクロフォンと、スピーカと、CD−ROMプレーヤと、マウスと、メモリとのうちのいずれか1つまたは複数の装置から選択される、(1)に記載のキオスク装置。
(3) 前記ブラウザ手段が前記アプリケーションの一部としてウェブ・ページを提示する表示装置をさらに含み、前記組込み制御関数がJava(登録商標)アプレットまたはActiveXまたはプラグイン制御を可能とする(1)または(2)に記載のキオスク装置。
(4) 前記ウェブ・ページが、ハイパーリンクと、1つまたは複数の追加のアプリケーション・ファイルを要求するハイパーリンクと、アイコンと、メニューと、テキスト入力フィールドと、データ入力フィールドと、広告と、通知と、ニュース・ブロードキャストと、天気ブロードキャストと、一般情報のステートメントとのうちのいずれか1つまたは複数の視覚的表示機能を提供する、(3)に記載のキオスク装置。
(5) 前記キオスク装置が実行するアプリケーションが、1つまたは複数の選択機能によって選択可能とされる、(1)ないし(4)のいずれか一項に記載のキオスク装置。
(6) 前記キオスク装置が実行するアプリケーションが、前記選択機能とは独立に送信されるアプリケーション・ファイルによって再構成される、(5)に記載のキオスク装置。
(7) 前記選択機能が1つまたは複数の期間の間に前記キオスク装置の端末/表示装置に表示されるグラフィカル・ユーザ・インタフェースとして与えられる、(5)または(6)に記載のキオスク装置。
(8) 前記アプリケーションが、ユーザの選好に従ってカスタマイズされるグラフィカル・ユーザ・インタフェースを編成する、(5)ないし(7)のいずれか一項に記載のキオスク装置。
(9) 前記アプリケーションが、前記ネットワークに接続されたコンピュータによって選択される、(5)ないし(8)のいずれか一項に記載のキオスク装置。
(10) 前記アプリケーションが、遠隔装置制御、遠隔メッセージ表示、ファイル転送、およびエージェント/クライアント協同のうちのいずれか1つの機能を含む、(5)ないし(9)のいずれか一項に記載のキオスク装置。
(11) 前記キオスク装置のうちの1つまたは複数のキオスク装置は、動作状況を判断するシステム監視プログラムをさらに格納する、請求項(1)ないし(10)のいずれか一項に記載のキオスク装置。
(12) 前記システム監視プログラムにより与えられる前記動作状況を使用して、入力/出力装置または周辺装置に必要な保守、前記入力/出力装置または周辺装置の保守履歴、前記キオスク装置を構成するために使用するアプリケーション・ファイルと、ユーザに関するマーケティング情報とのうちのいずれか1つまたは複数を判断する、(11)に記載のキオスク装置。
(13) 前記取り出し手段がシステム監視のためのアプリケーション・ファイルを受け取り、それぞれのローカル・キオスクAPIの動作状況を判断する、(11)または(12)のいずれか一項に記載のキオスク装置。
(14) 前記HTMLファイルは、ゼロ個または1個以上のハイパーテキスト構成要素ファイルを含む、請求項(1)ないし(13)のいずれか一項に記載のキオスク装置。
(15) 前記アプリケーションがユーザに合わせてカスタマイズされたカスタマイズ・アプリケーションである、(1)ないし(14)のいずれか一項に記載のキオスク装置。
(16) 前記アプリケーション・ファイルがインターネットへのアクセス機能を付与する、請求項(1)ないし(15)のいずれか一項に記載のキオスク装置。
(17) 前記インターネットへの前記アクセスが、1つまたは複数の指定されたサーバを介して第1のユーザと第2のユーザとの間に通信リンクを提供する、請求項(16)に記載のキオスク装置。
(18) 前記アプリケーション・ファイルが、電話呼出しと、電子メール送受信と、遠隔会議と、ファクス伝送と、トレーニング・セッションと、ネットワーク上の情報検索と、ウェブ・ベースの協同とのうちのいずれか1つまたは複数の機能を実行させる、(1)ないし(17)のいずれか一項に記載のキオスク装置。
(19) 前記入力/出力装置または周辺装置がプリンタを含む、前記アプリケーション・ファイルが前記プリンタを、受領書、勘定書、ウェブ・ページ、クーポン、チケット、パス、および書式のうちのいずれか1つを印刷するように構成する、(2)に記載のキオスク装置。
(20) 前記入力/出力装置または周辺装置が、前記アプリケーション・ファイルによって公衆電話になるように構成されたマイクロフォン、スピーカ、および電話機のうちのいずれか1つまたは複数から選択される、(2)に記載のキオスク装置。
(21) 前記入力/出力装置または周辺装置が、前記アプリケーション・ファイルによってテレビ会議端末になるように構成されたマイクロフォン、スピーカ、およびテレビ会議システムから選択される、(2)に記載のキオスク装置。
(22) 前記入力/出力装置または周辺装置が、前記アプリケーション・ファイルによって、ユーザ、キオスク装置の周囲の眺め、および文書のうちのいずれか1つまたは複数の写真を撮影するように構成されたカメラから選択される、(2)に記載のキオスク装置。
(23) 前記入力/出力装置または周辺装置が、記憶媒体に書き込む媒体書込装置を含み、前記アプリケーション・ファイルが前記媒体書込装置を、音楽、ソフトウェア、テキスト、グラフィクス、教材、およびマルチメディア情報のうちのいずれか1つを書き込む、(2)に記載のキオスク装置。
(24) 前記入力/出力装置または周辺装置が、記録媒体の読取りが可能な媒体読取装置を含み、前記媒体読取装置が前記アプリケーション・ファイルにより、前記記録媒体上に記録された情報を入力するように制御される、(2)に記載のキオスク装置。
(25) ネットワークに接続され、少なくとも1つの入力/出力装置または周辺装置および付随するローカル・キオスクAPIを有するコンピュータを含むキオスク装置の制御方法であって、前記制御方法は、前記コンピュータに対して、組込み構成要素ファイルと組込み制御関数とを含むハイパーリンクされたHTMLファイルを含んで構成され、アプリケーション・ファイルとして参照される構成セットへと前記ネットワークを介してブラウザ手段によりアクセスさせ、前記構成セットを受け取って前記コンピュータの格納手段に格納させるステップと、
コンピュータにおいて、前記アプリケーション・ファイルを解釈し、組込み制御関数の検出に応答して前記ブラウザ手段にブラウザ機構を組込み、プロセス間通信を使用してAPI機構を呼び出し、前記アプリケーション・ファイルに含まれる前記組込み制御関数を、プロセス間通信を使用してAPI機構へと渡すステップと、
前記API機構により前記ローカル・キオスクAPIを選択的に機能させ、前記複数の入力/出力装置または周辺装置を前記アプリケーション・ファイルに関連づけて駆動制御させるステップと
を実行させる方法。
(26) 少なくとも1つの入力/出力装置または周辺装置と、
前記入力/出力装置または周辺装置を駆動するローカル・キオスクAPIを格納する手段と、
前記キオスク装置が実行するアプリケーションと関連づけられ、組込み構成要素ファイルと組込み制御関数とから構成されHTMLファイルを含むアプリケーション・ファイルである構成セットを、1つまたは複数のネットワーク接続を介して前記ネットワークからコンピュータを使用して取り出すブラウザ手段と、
ブラウザ機構とAPI機構と前記ブラウザ機構と前記API機構との間のプロセス間通信を可能とする手段とを含むキオスク固有制御手段とを含み、
前記コンピュータは、前記組込み制御関数の検出に応答して前記ブラウザ機構と前記API機構とを介して前記組込み制御関数によりローカル・キオスクAPIを選択的に起動させて前記ローカル・キオスクAPIにより前記入力/出力装置または周辺装置を制御して、前記コンピュータに対して前記アプリケーションを実行させる、
キオスク装置。
(27) 前記入力/出力装置または周辺装置が、プリンタと、媒体読取装置と、媒体記録器と、媒体ディスペンサと、キャッシュ・ディスペンサと、スキャナと、ディポーザと、電子ペンと、カード発行機と、勘定書印刷機と、プリンタと、発券機と、CRTと、キーボードと、タッチ・センシティブ・スクリーンと、カメラと、人間感知器と、電話機と、照明と、マイクロフォンと、スピーカと、CD−ROMプレーヤと、マウスと、メモリとのうちのいずれか1つまたは複数から選択される、(26)に記載のキオスク装置。
(28) 表示装置をさらに含み、前記取り出し手段が前記表示装置上に前記アプリケーションの一部としてウェブ・ページを提示する、(26)に記載のキオスク装置。
(29) 前記ウェブ・ページが、融資申込書、個人情報報告書、申込書、納税申告書、ローン申込書、モーゲージ申込書、サービス要求、教育用書式、官公庁書式、購入要求書、預金入金票のうちのいずれか1つを含む書式を提示する、(28)に記載のキオスク装置。
(30) 前記ウェブ・ページが、ハイパーリンクと、1つまたは複数の第2のアプリケーション・ファイルを要求するハイパーリンクと、アイコンと、メニューと、テキスト入力フィールドと、データ入力フィールドと、広告と、通知と、ニュース・ブロードキャストと、天気ブロードキャストと、一般情報のステートメントとのうちのいずれか1つまたは複数の視覚的表示機能を提供する、(28)に記載のキオスク装置。
(31) 前記組込み制御関数は、Java(登録商標)アプレットまたはActiveXまたはプラグイン制御を可能とし、前記アプリケーションのうちの1つまたは複数のアプリケーションが、選択機能とは独立して前記アプリケーション・ファイルのうちの1つまたは複数のアプリケーション・ファイルによって再構成される、(26)に記載のキオスク装置。
(32) 前記アプリケーションのうちの1つまたは複数のアプリケーションが選択可能とされ、前記アプリケーションは、前記アプリケーションに関連づけられた1つまたは複数の選択機能によって選択される、(26)に記載のキオスク装置。
(33) 前記選択機能が、タッチ・スクリーン、アイコン、ハイパーテキスト・リンク、表示装置上のソフト・ボタン、センサ、ボタン、音声、および音声コントロールのうちの1つまたは複数から選択される、(32)に記載のキオスク装置。
(34) 前記選択機能のうちの1つまたは複数の選択機能が料金を徴収して提供される、(32)に記載のキオスク装置。
(35) 前記料金が、グラフィカル・ユーザ・インタフェース上の前記選択機能の場所、選択機能のサイズ、選択機能の表示時間の長さ、前記キオスクの場所、前記アプリケーションのうちの1つまたは複数のアプリケーション、および対象顧客のグループのうちのいずれか1つに依存する、(34)に記載のキオスク装置。
(36) 前記選択機能が前記キオスク装置の前記コンピュータの端末/表示装置に1つまたは複数の期間中にグラフィカル・ユーザ・インタフェースとして表示される、(32)に記載のキオスク装置。
(37) 前記選択可能なアプリケーションが前記グラフィカル・ユーザ・インタフェースを前記ユーザの選好に従ってカスタマイズされるように編成する、(32)に記載のキオスク装置。
(38) 前記アプリケーションが前記ネットワークに接続されたコンピュータを介して選択される、(32)に記載のキオスク装置。
(39) 前記アプリケーションが、遠隔装置制御、遠隔メッセージ表示、ファイル転送、およびエージェント/クライアント協同のうちのいずれか1つの機能を含む、(32)に記載のキオスク装置。
(40) 前記コンピュータは、前記ローカル・キオスク機能のうちの1つまたは複数の動作状況を判断するシステム監視プログラムをさらに含む、(26)に記載のキオスク装置。
(41) 前記システム監視プログラムにより与えられる前記動作状況を使用して、入力/出力装置または周辺装置に必要な保守、前記入力/出力装置または周辺装置の保守履歴、前記キオスク装置を構成するために使用するアプリケーション・ファイルと、ユーザに関するマーケティング情報とのうちのいずれか1つまたは複数を判断する、(40)に記載のキオスク装置。
(42) 前記取り出し手段がシステム監視のためのアプリケーション・ファイルを受け取り、それぞれのローカル・キオスクAPIの動作状況を判断する、(40)または(41)のいずれか一項に記載のキオスク装置。
(43) 前記ネットワークが、インターネット、ワールド・ワイド・ウェブ、イントラネット、電話ネットワーク、ケーブル・ネットワーク、ISDNネットワーク、企業ネットワーク、行政ネットワーク、教育ネットワーク、および1つまたは複数の小売業者によって使用されるネットワークのうちの1つまたは複数のネットワークとすることができる、(26)に記載のキオスク装置。
(44) 前記HTMLファイルは、ゼロ個または1個以上のハイパーテキスト構成要素ファイルを含む、(26)に記載のキオスク装置。
(45) 前記アプリケーションが金融アプリケーションである、(26)に記載のキオスク装置。
(46) 前記金融アプリケーションが、ユーザへの金融情報提供、口座開設、現金支払い、勘定支払い、ローンの申込み、預金、モーゲージ支払い、金融に関する助言、固定資産取引、およびエージェントからの支援のうちのいずれか1つまたは複数の機能を含む、(45)に記載のキオスク装置。
(47) 前記アプリケーションがユーザに合わせてカスタマイズされたカスタマイズ・アプリケーションである、(26)に記載のキオスク装置。
(48) 前記アプリケーション・ファイルがインターネットへのアクセスを提供する機能を与える、(26)に記載のキオスク装置。
(49) インターネットへの前記アクセスが、1つまたは複数の指定されたサーバを介して一人または複数の第2のユーザ間に通信リンクを提供する、(48)に記載のキオスク装置。
(50) 前記通信リンクが、音声、ビデオ、電子メール、データ、およびウェブ・ページ共用のうちのいずれか1つまたは複数を通信する、(49)に記載のキオスク装置。
(51) 前記アプリケーションが通信アプリケーションである、(26)に記載のキオスク装置。
(52) 前記通信アプリケーションが、電話呼出し、電子メール送受信、遠隔会議、ファクス伝送、トレーニング・セッション、前記ネットワーク上の情報検索、およびウェブ・ベースの協同のうちのいずれか1つまたは複数の機能を付与する、請求項51に記載のキオスク装置。
(53) 前記アプリケーションがサービス・アプリケーションである、(26)に記載のキオスク装置。
(54) 前記サービス・アプリケーションが、広告、サービス料金、およびサービス要求のうちのいずれか1つまたは複数の機能を含む、(53)に記載のキオスク装置。
(55) 前記アプリケーション・ファイルが有形媒体で情報を提供する機能を前記キオスク装置に対して付与する、(26)に記載のキオスク装置。
(56) 前記アプリケーションが、前記表示装置を、スケジュール、メニュー、座席配置、地図、1つまたは複数のソフト・キー、書式、広告、および製品の画像のうちのいずれか1つまたは複数を含むマルチメディア情報を含むウェブ・ページを提示するように機能させる、(26)に記載のキオスク装置。
(57) 前記入力/出力装置または周辺装置がプリンタを含み、前記アプリケーションが、前記プリンタを、受領書、勘定書、ウェブ・ページ、クーポン、チケット、パス、および書式のうちのいずれか1つを印刷するように機能させる、(26)に記載のキオスク装置。
(58) 前記入力/出力装置または周辺装置が、前記アプリケーション・ファイルによって公衆電話になるように構成されたマイクロフォン、スピーカ、および電話機を含む、(26)に記載のキオスク装置。
(59) 前記入力/出力装置または周辺装置が、前記アプリケーション・ファイルによってテレビ会議端末になるように構成されたマイクロフォン、スピーカ、およびテレビ会議システムを含む、(26)に記載のキオスク装置。
(60) 前記入力/出力装置または周辺装置が、前記アプリケーション・ファイルによって、ユーザ、キオスク装置の周囲の眺め、および文書のうちのいずれか1つまたは複数の写真を撮影するように構成されたカメラを含む、(26)に記載のキオスク装置。
(61) 前記入力/出力装置または周辺装置が記憶媒体に書き込む媒体書込装置を含み、前記アプリケーション・ファイルが前記媒体書込装置を、音楽、ソフトウェア、テキスト、グラフィクス、教材、およびマルチメディア情報のうちのいずれか1つを書き込む機能を与える、(26)に記載のキオスク装置。
(62) 前記入力/出力装置または周辺装置が、記録媒体の読取りが可能な媒体読取装置を含み、前記媒体読取装置が前記アプリケーション・ファイルによって、前記記録媒体上に記録された情報を入力する機能が付与される、(26)に記載のキオスク装置。
(63) 前記記録媒体が、電子カード上のメモリ、コンピュータ・ディスケット、磁気テープ、CD−ROM、およびメモリ記憶装置のうちのいずれか1つである、(62)に記載のキオスク装置。
【図面の簡単な説明】
【図1】キオスクの好ましい一実施形態を示すブロック図である。
【図2】キオスクの他の好ましい実施形態を示すブロック図である。
【図3】キオスクにおいて使用されるグラフィカル・ユーザ・インタフェースの例を示すブロック図である。
【図4】ユーザによって選択され、キオスクを構成するために実行される構成セット(アプリケーション・ファイル)を示すブロック図である。
【図5】少なくとも1つの組込み制御プログラムを含む、1つまたは複数のHTMLファイルおよび付随するハイパーテキスト構成要素ファイルを含む1組のアプリケーション・ファイル(構成セット)を示すブロック図である。
【図6】アプリケーション・ファイルおよびローカルAPIプログラムと対話してキオスクを構成する制御プログラム/関数を実行するキオスクの好ましい一実施形態を示すブロック図である。
【図7】キオスク制御機構の様々な好ましい代替実施形態を示すブロック図である。
【図8】キオスク制御機構の様々な好ましい代替実施形態を示すブロック図である。
【図9】キオスク制御機構の様々な好ましい代替実施形態を示すブロック図である。
【図10】キオスク制御機構の様々な好ましい代替実施形態を示すブロック図である。
【図11】API制御機能を備えた1つのアプリケーション・ファイルを実行する際に行われるステップを示すフローチャートである。
【図12】典型的なサーバで行われるステップを示すフローチャートである。
【図13】ActiveXを使用する好ましいキオスク・ソフトウェア・アーキテクチャを示すブロック図である。
【図14】ActiveXを使用するキオスク制御機構の様々な好ましい代替実施形態を示すブロック図である。
【図15】ActiveXを使用するキオスク制御機構の様々な好ましい代替実施形態を示すブロック図である。
【図16】ActiveXを使用するキオスク制御機構の様々な好ましい代替実施形態を示すブロック図である。
【図17】ActiveXを使用するキオスク制御機構の様々な好ましい代替実施形態を示すブロック図である。
【図18】プラグインを使用する代替キオスク制御実施形態を示すブロック図である。
【符号の説明】
100…キオスク装置
103…タッチ・センシティブ端末
109…プリンタ
105…表示画面
110…コンピュータ
111、112、130…汎用情報読取装置(入力装置または周辺装置)
113、130…汎用情報書出装置(出力装置または周辺装置)
122…電話網
123…ISDN
125…制御プロセスおよびライブラリ
155…ネットワーク・インタフェース
520、620…組込み制御関数
640…キオスク固有制御機構
640A…ブラウザ機構
640I…プロセス間通信手段
640B…API機構
680…ローカル・アプリケーション・プログラム・インタフェース(ローカル・キオスクAPI)[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to the field of kiosks and servers that are connected to a computer network and that can constitute a kiosk.
[0002]
[Prior art]
Generally, a kiosk is a machine that is located at a location for general access by a user or customer, for example, public access, thereby allowing a service provider to provide services to that user or customer. Generally, such services are "self-service" performed by the customer without the service provider having an agent to provide the customer with specific assistance. Thus, the service may be repetitive, such as 1) obtaining information, or 2) performing certain simple transactions (eg, buying tickets, obtaining cash, viewing department store floor maps, etc.). Tends to be a simple specific task.
[0003]
The tasks performed need to be pre-programmed and pre-determined and need to be self-service. Thus, the kiosk design is inflexible and does not provide customized assistance for a particular user.
[0004]
Generally, these transactions require the use of some device, for example, one or more monitors, card readers, ticket printers, laser printers, cash machines, and the like. These devices are generally dedicated to predefined tasks for inflexible designs in kiosks and therefore have no other use.
[0005]
The advantage of a kiosk is that it is convenient and reliable. The kiosk does not require a full-time human operator to perform the work, thus saving operating costs and increasing productivity.
[0006]
Some prior art kiosks, such as bank ATM machines and air ticket vending machines, are connected by a network. There are also stand-alone kiosks, just like information kiosks in shopping malls.
[0007]
The prior art includes kiosks with video conferencing capabilities for banking applications that attempt to set up a connection between a bank branch (agent) and a user / customer. This is done simply by adding a video conferencing system to a traditional type of kiosk.
[0008]
The prior art also has an integrated kiosk with the Internet. This kiosk has browser means for displaying an HTML page on the screen of the kiosk. The screen displayed on the kiosk is controlled by the hyperlink selected by the user. These kiosks are suitable for information access that customers / users can browse by selecting a "soft" button that invokes a hyperlink. These kiosks can also be used for certain personal communications, such as email. In this type of system, the screen is typically specially designed to present a user interface (e.g., having navigation buttons), and the kiosk further only accesses HTML pages (URLs) defined by the kiosk creator. Acts as a filter that limits the URLs that customers can visit, as possible.
[0009]
Most prior art kiosks are inflexible. Prior art kiosks are generally designed specifically for programming, created (usually in a high-level computer programming language such as C or C ++), and installed on a kiosk for a particular application, thus requiring modification or Reconfiguration cannot be easily and quickly performed at low cost. Any changes will require recoding, recompiling, reinstalling, and retesting the program at the kiosk. It is difficult to make changes to existing kiosks, especially if there are many kiosks in the area that need updating.
[0010]
Prior art kiosks cannot provide an effective "face-to-face" service based on an application, that is, a service that requires an agent to advise or guide a user or customer to perform a service or transaction. An effective “face-to-face” environment for customer service is not only video / audio, but also synchronized screen sharing (eg, user / customer viewing data while agent is entering data) and remote Device control is also required (eg, an agent can print a receipt for the kiosk user / customer). The prior art does not implement kiosk synchronization screen sharing or remote device control.
[0011]
While some prior art offers user assistance from agents over the phone, agents generally cannot directly view the screen of a kiosk. Thus, if there is a problem with the kiosk, the agent must rely on the user's description of the problem. Agents cannot access the problem by looking directly at the kiosk screen. In addition, agents cannot remotely change the kiosk's program / function to correct the kiosk problem. Note that some kiosks in banking applications allow banking agents to view the contents of the kiosk screen. However, this content is displayed by a separate application running on the agent's workstation, rather than the application displaying the screen content on the kiosk.
[0012]
[Problems to be solved by the invention]
Some conventional technologies include a video conference function as a kiosk function. However, while video conferencing provides customers with audio / video connections to other parties, this architecture is still a success in the marketplace because of the lack of consistent integration between audio / video communications and the content of the kiosk screen. Absent. When a customer has a problem with one of the items on the kiosk screen, the agent cannot have the same information on the agent screen as the customer has on the kiosk. For example, an ambiguous or incorrect value in a field on the screen of a kiosk may not be visible to agents during a video conference. Further, the agent cannot indicate the location on the customer's screen and cannot control the customer's screen. Further, the agent cannot provide general information to the customer via the kiosk that the kiosk has not yet been pre-programmed. Also, for example, if the customer needs information that is not available in the kiosk design, the agent can only provide the information by audio or camera video, and can be provided on the customer's kiosk screen or other Information cannot be provided via a kiosk device.
[0013]
Some prior art discloses a simple Internet / browser-based kiosk that can only perform limited specific applications, ie, limited information browsing. This type of kiosk cannot provide an effective customer service environment with flexible uses because of the lack of kiosk control and cooperation between the customer and the human agent.
[0014]
Accordingly, the present invention provides a kiosk and a server as defined in the claims.
[0015]
[Means for Solving the Problems]
The techniques described herein may be used for "face-to-face" agent-to-customer service and / or transactions and multiple communication networks such as the Internet (TCP / IP), Public Telephone Network (PSTN), Integrated Services Digital Network (ISDN). Configurable, directly accessible network located throughout the public, taking advantage of a flexible, reconfigurable, collaborative kiosk architecture for a variety of applications, including providing public access to・ Provide an interface. Thus, this network server system can be used to reconfigure remote kiosks or kiosk devices on a network in different ways for different applications, especially for different applications used in different ways for different applications. Numerous applications (possibly created, developed, and stored on one or more network servers) can be distributed to support output devices.
[0016]
Thus, in a preferred embodiment, the kiosk system may be connected to one or more networks, such as the Internet, a corporate or government intranet, or the like. The kiosk has one or more input / output devices (eg, display, keyboard, paper printer, phone, etc.) and one or more driver programs (local API) for each input / output device. . The display device is used to present one or more graphical user interfaces and video images to a kiosk user. Some of the interfaces are application specific. (An application is an application for which a kiosk is configured or reconfigured.) A kiosk is a browser that retrieves one or more application files (in a configuration set) from one or more servers on a network. Having. An application file (configuration set) contains a set of HTML files that are presented in sequence (determined by the application) by the kiosk browser. One or more of these HTML files includes a built-in (control) program used to control the local API of one or more of the devices on the kiosk. One or more of the files may be other HTML files, multimedia component files (such as images or sounds), or other HTML files, multimedia component files, embedded programs or other application programs. It can also include hyperlinks to files or a combination thereof. The first application file is selected from the server by a selection function at the kiosk (eg, voice, soft button, hyperlink, etc.). The application file (configuration set) associated with this selection item (selection function) configures the kiosk accordingly. Thus, the kiosk can be configured and reconfigured to execute various applications defined by the application files.
[0017]
In certain preferred embodiments, one or more of the application files has one or more predetermined selection links (eg, hyperlinks). As the browser renders or interprets the application files (e.g., one file at a time), predetermined selection links are presented to the user as additional selections on a graphical user interface. The user can select and call one or more other configuration sets, HTML files, etc., including zero or one or more other embedded control programs. Thus, using these additional selections, the sequence in which the content of the HTML file is presented by the browser, and in fact the files in the sequence, may be modified to reconstruct the kiosk in a different way and to provide It can obtain information and / or provide information to a user. Rendering the kiosk by rendering the contents of the HTML files in the sequence, thereby reconfiguring one or more screen sequences of interactive screens and, if necessary, the kiosk for a particular selected application. And a sequence of device actions (controlled by a built-in program). In these embodiments, the user (or kiosk or other function in the server) can reconfigure the kiosk for other applications by selecting different selection functions on the kiosk.
[0018]
In certain preferred embodiments, some of the applications include web page sharing features that allow agents and customers to collaborate on the network via kiosks and servers. One preferred embodiment implements a "lightweight" client architecture, that is, a client architecture without application specific software on the kiosk.
[0019]
Various preferred embodiments of the present invention are described in detail below, by way of example only, with reference to the following figures.
BEST MODE FOR CARRYING OUT THE INVENTION
Referring to FIG. 1, which is a block diagram of one preferred embodiment of the kiosk 100, the kiosk 100 includes a computer 110 (eg, an IBM personal computer such as a PC 350 or PC 750) having a suitable well-known network interface 155. Network 150 may be any known local area network (LAN) or wide area network (WAN). In the preferred embodiment, network 150 is the Internet. However, intranets, such as enterprise networks, government networks, education networks, extra business-to-business networks, and networks used by one or more retailers can be implemented by telephone networks, cable networks, ISDN networks, and the like. Other general purpose networks 150 are also contemplated, including. The computer 110 has one or more input and / or output devices (see below) 130 equipped as part of the kiosk 100. Typically, computer 110 includes one or more main memories, one or more storage devices 110M (such as a hard disk drive, a CDROM, etc.), as is well known, and one or more A central processing unit (CPU) 110C. In addition, the computer 110 has an optional hardware keyboard 135 and mouse 134 for maintenance. The user may access these various (peripheral 130) input and / or output devices (collectively numbered 130) to access other devices connected to network 150 via computer 110 and network 150. It transmits information to and / or from the client and / or server 195. Examples of these input / output devices 130 are a touch-sensitive terminal 103 with a screen 105, a printer 109, and any well-known general-purpose information reader 111 (e.g., reading a magnetic card, credit card, or smart card). Card reader 121), scanner (eg, laser scanner) 112, any well-known general-purpose information writer 113 (printer, ticket printer, media printer (eg, diskette drive), statement printer, or receipt printer) , (Eg, providing a sticker or a computer disk), or any other device 130 that provides the user with information contained in the tangible medium 113A. Other input / output devices 130 include a cash dispenser, scanner, deposer, pen input device 136, card issuer, ticketing machine, CRT, keyboard, touch-sensitive screen, program-controllable camera, one or more Human detector (eg, infrared), one or more lights, CD-ROM player, audio input / output device (eg, microphone 133, speaker 132, or telephone 107, and any one or more of memory 113B) The kiosk 100 may include well-known communication devices such as a telephone 107 and a video conferencing system 114, such as a PictureTel PCS-100 desktop ISDN videoconferencing system (PictureTel is a product of PictureTel, Inc.). The video conferencing system includes a camera 131, a speaker 132, a microphone 133, one or more ISDN connections or a separate network connection via a suitable network interface 155. Other networks 151, such as Connections can also be made to a conventional telephone system (POTS) telephone network 122 and / or an ISDN line 123 via a telephone 107, a speaker 132, and a microphone, using well-known interfaces to the network (150, 151). The other peripheral devices 130 can also be connected independently.
[0020]
Computer's CPU 110C executes a software program that includes control processes and libraries 125 and, in certain preferred embodiments, one or more cooperating processes. The control process 125 has two parts: one or more built-in control functions / programs 620 and one or more control mechanisms 640. (See FIGS. 5 and 6 to 10 below.) The embedded control program / function 620 is a content-specific process (eg, banking, car rental, product purchase, etc.). (Or a subset thereof) 130 using a non-content specific control mechanism 640 to control the local application program interface 680 (API). Thus, the input / output device 130 is controlled in a manner specific to the content of the application. In an alternative embodiment, the control mechanism can be loaded directly from the network 150 to the computer 110.
[0021]
The collaboration process 170 performs the function of establishing a collaboration session from the kiosk 100 with the API. This cooperative process is described in U.S. patent application Ser. No. 08 / 722,287, filed Sep. 27, 1996, entitled "Internet Web Page Sharing," which is hereby incorporated by reference in its entirety. (See European Patent Application No. 97307536.0, publication no. 833260). The computer also executes the necessary programs for interacting with network 150, including a web browser program 160, such as a Netscape Navigator browser. (Netscape Navigator is a trademark of Netscape Communications Corporation.)
[0022]
FIG. 2 is a block diagram illustrating an alternative embodiment of the present invention showing the kiosk 100 in an enclosed space or a partially enclosed space 200. The enclosed space 200 can be any type of space in which the kiosk 100 is placed with one or more users, for example, a room, small box, or any other private or quasi-private room. In this embodiment, computer 110 is connected to one or more well-known environmental peripherals 130 that computer 110 controls to create an environment for a user in space 200. For example, environmental peripherals include lighting 205 of the space, a display 210 in the space 200 that conveys additional information (eg, sales information) and / or environmental elements (eg, variable display of scenery and virtual world), entering and exiting space 200 Security access 215. Further, the (partially) enclosed space may also have other environmental peripherals 130 similar to the peripherals 130 described above, for example, audio, video conferencing, and the like. Examples of virtual worlds are well known.
[0023]
In a preferred embodiment of the systems 100 and 200, the user selects (using the select function) an application that configures the kiosk therefor, such as banking, and the browser 160 is configured to access one or more of the Internet (universal network) 150. Interact with multiple web servers 195 to retrieve one or more configuration sets 175. Optionally, data communication between the server 195 and the browser 160 in the kiosk (100, 200) starts. The application files 175 are then executed one file at a time by the browser 160 and 1) optionally, one or more of the input / output devices (e.g., touch-sensitive) of the input / output devices used with the respective application. Calls a driver program (local API 680) that controls the terminal 103 or display device 130; 2) optionally, a series of input / output device 130 actions, eg, a series of actions displayed on the terminal / display device 103; 3) Optionally, communicate user input from input device 130 to server 195; 4) Optionally, respond to user input to application file 175 for further execution by browser 160 Other applications • Select the file 175. In this way, the user can use the first selection function to select the first application (and its associated configuration set (application file) 175 on the server 195), which application can use the kiosk for the first time. The kiosk is reconfigured for the second application, etc. again by selecting a second application. The selection function for later configuration is The configuration is provided to the user.
[0024]
An application is any application for which a kiosk is configured. For example, applications include applications in the fields of finance, business, information (news, advertising), communications (email, web access, video conferencing), retail, marketing, and services (eg, government programs).
(Configuration) is included. An application owner is any individual, organization, or company that will configure a kiosk to implement the application. For example, a bank or mutual fund company configures a kiosk using one or more financial applications. Examples of such financial applications include providing financial information to a user, opening an account, paying cash, paying an account, applying for a loan, depositing, and receiving assistance from an agent. An example of a service owner is a rental car company that configures kiosks to do car rental / lease and the like.
[0025]
In another preferred embodiment, the kiosk (100, 200) is reconfigured by the server 195 rather than by the user. For example, a kiosk can be installed in a public space such as a shopping mall. The browser may retrieve the configuration set (application file) 175 from the one or more servers 195 or default or proxy server 195A located on the network 150 to the kiosk 100 first or periodically. (Or let the server "push"). Therefore, the system designer can control the configuration of the kiosk from a remote location of the server 195. For example, a kiosk in a mall may be configured to initially display a map of the mall, play background music, announce, or provide weather information or other general information such as news or stock quotes. it can. The application file 175 may include a selection function 105A, such as a touch screen, icons, hypertext links, soft buttons on a graphical user interface, a hard drive, on one or more of the input / output devices 130. Indicate to have or be to be a selection function 105A, such as a wired button, a remote sensor (such as a radio frequency identification tag), or a voice-activated message function for a video conferencing system. You can also. The selection function 105A is a function that allows the user to make a selection to reconfigure the kiosk according to the user's application. These selection functions 105A allow the user to reconfigure the kiosk 100/200 and access other information that the server 195 provides to the kiosk.
[0026]
The selection function 105A or other information displayed may also be a source of revenue for the kiosk owner / operator. For example, a kiosk may be a paid ad for notifications provided by the kiosk. Application providers (e.g., bank mutual funds, mortgage companies, money lenders, intermediaries (stocks, real estate), rental companies (automobiles, equipment), service providers, and retailers) can use the kiosk 100/200 on A user would pay for owning the selection function 105A, which the user selects to configure the kiosk for his application. The amount of the fee depends on the location of the kiosk, the location / location of the selected function / information on the kiosk (eg, graphical user interface), the size of the selected function 105A, the time and period during which the kiosk provides the selected function 105A / information. It can be determined based on such factors. The selection function 105A / information can be changed at different times or displayed periodically to target different classes of customers / clients. For example, a kiosk located at Grand Central Station may be reconfigured to display information for commuters during rush hour and to have a selection function 105A for restaurant reservation just before lunch time.
[0027]
The kiosk 100/200 can be reconfigured by the application provider via the server 195 to a user-specific configuration. For example, suppose the travel agency has a user profile for Mr. Smith. Smith selects the select function 105A on the kiosk 100/200 at a public place or office. Once the kiosk has been reconfigured for its travel agent application, the user can enter a personal identification code using one of the input / output devices 130 or by passing through a credit card, for example. Smith can be asked for personal information (following instructions from one of the files). Next, Mr. Smith's personal information is passed by kiosk 100/200 to server 195 to access his profile. Using the information in the profile, one or more of the application files 175 are sent by the server 195 and the kiosk is reconfigured specifically for Mr. Smith. For example, only a vacation package trip to Central America could be offered on a kiosk. In other embodiments, one or more of the application files 175 may allow a user to organize a GUI (300 below).
[0028]
In another preferred configuration of kiosk 100/200, a cooperative session is set up between one or more kiosk users and one or more agents of the application provider. The collaboration is set up by a collaboration process 170 that resides on the kiosk or is provided by server 195 as an application file 175 (see Fin et al., Patent application).
[0029]
In another preferred configuration of the kiosk (100, 200), the server 195 provides the kiosk with application files 175 used for monitoring or maintaining the kiosk. For example, in such an embodiment, one or more of the embedded control programs 620 may determine which input / output device is operating using a "deadman" timer status, error checking protocol, or the like. By making the determination, the operating status of one or more of the input / output devices 130 is monitored. This information is returned to server 195. Other application files 175 are used to query which input / output devices 130 are installed or operational at a given kiosk. In this way, the server 195 may enable the installed or operable input / output device 130 and not (unconfigure) any other application to enable the non-installed or faulty device. Determine whether to send file 175 to kiosk. Thus, a kiosk containing any general-purpose combination of input / output devices 130 can be located remote from the server, and the server provides suitable and operable applications that enable the kiosk for a given application. I do. The application file 175 may also be used to obtain information from one or more of the input / output devices to determine how to operate the device.
[0030]
FIG. 3 shows an example of a graphical user interface (GUI) 300 displayed on the screen display device 105 of the kiosk 100/200. GUI 300 provides the kiosk user with a primary access interface via selection function 105A. Examples of the selection function 105A include icon images 301 to 304 indicating applications for the bank 301, the insurance business 302, the general-purpose software button 303, and the pizza restaurant 304. The GUI 300 may also display a selection function 105A in the form of a menu 320 having one or more selection items (typically 325). Another example of a selection function 105A is a hyperlink 350, which can be part of the GUI 300 and / or the menu 320. Other area 340 of GUI 300 can be used to enter information or other data. Using these information fields 340, the GUI 300 can be presented as a form 370 such as a tax return, loan application, mortgage application, deposit slip, and the like. GUI 300 may be displayed as a web page by browser 160 using well-known techniques. This web page may have a multimedia (audio, video) aspect that is presented to the user via the input / output device 130.
[0031]
In FIG. 4, the user interacts via the user interface to select the selection function 105A, and the selection function 105A downloads an application file 175, which is a corresponding configuration set, from the server 195 to the client (kiosk 100, 200). A specific function is performed to control a specific subset 451 (for example, 107, 109, 111, 113, 114, etc.) of the peripheral device 130. Local API 440 is a software function interface that directly controls one or more peripheral devices 130. For example, the local API 440 of the card reader 130 includes processing for initializing, starting, reading data from the card, ejecting the card, and turning off the function.
[0032]
The selection (of the kiosk configuration) is made by the selection function 105A. Examples of the selection function 105A include the following.
a) The user explicitly touches an image icon or other selection device such as a button on the screen.
b) The currently running program determines that the selection needs to be invoked based on the user's actions, for example, if the user makes the same mistake twice in a row, invokes the help program.
c) The logic in the currently executing program determines the next selection (kiosk configuration). For example, after a user creates a pre-qualification application for a mortgage and the bank approves it, the current application may ask the user if it requires real estate information. If the user responds positively, the configuration of the kiosk is changed to the configuration of the real estate agent application.
[0033]
In one embodiment, when the selection 105A is made, the browser 160 requests the server 195 via HTTP via the network interface 155 for the first application file 175 (comprising the file 500) corresponding to the selection function 105A. Send. (See also FIG. 5 for a description of file 500 in application file / configuration set 175.) Next, server 195 provides application file 175 to browser 160. After the file 500 constituting the application file arrives at the browser 160, the HTML content of the file 500 is executed line by line. If the file 500 of the next application file is associated (eg, hyperlinked) with the file 500 of the current application file that the browser is running, the file 500 of the next application file is also sent to the browser. Can be In this way, the browser 160 executes each file 500 one line at a time and one configuration set 175 at a time in the order defined by the HTML text instructions in the configuration set 175. By executing the file 500 in the application file / configuration set 175 in this manner, the local API 440 (associated with the device 130) or a subset 441 of the local API is invoked and the selected subset of the device is 451 to reconfigure the kiosk (100/200). The logic and / or user actions within each application file / file (175, 500) can change which application file / file (175, 500) is executed, Note that some application files may or may not be executed.
[0034]
By executing the application file 175, the browser 160 selects and controls one or more of the devices 130. The configuration of the kiosk is defined by the device 451 selected during execution of the application file (eg, a device subset 451) and how the device subset 451 is controlled. For example, in a banking configuration, the execution of the application file 175 invokes a subset of the API 441 and, for example, selects and controls the card reader 111 and the printer 109 (device subset 451) to read and read the bank card, respectively. The transaction record is printed. In the same banking configuration, execution of one or more of the application files (or lines in the application file) 175 will not select or control device 130, but will Other actions are performed, including storing the data or returning the data or message to the server 195. In another arrangement for ordering a pizza, execution of the application file invokes a different subset of the API 441 to select and control the same device subset 451 (ie, card reader 111 and printer 109), respectively, for the credit card. A read and price request is made and a purchase receipt indicating the selected pizza topping is printed.
[0035]
Note that in some configurations, execution of application file 175 does not select one or more devices 130. In such a case, the default device is used. For example, a line in the file 500 for displaying a text line is sent to the display device 103 by default.
[0036]
It should also be noted that the browser 160 can access a special set of local executable modules that interact with the execution of the application file using other local programs and / or libraries (see FIG. 6). ).
[0037]
FIG. 5 is a block diagram illustrating a set of application files (configuration sets) 175 that provide at least one embedded control program 620, including one or more HTML files and their associated hypertext component files. . All web-based application files 175 are HTML-based files that provide at least one embedded control program 620. Application files 175 optionally also include other hypertext component files, whether HTML-based or not. Typically, the HTML file contains text 525, images or graphics 528, animations (implemented as images 528, applets 505, scripts 515, or other built-in control functions (programs) 620), (one built-in control function). It includes tags indicating standard HTML (such as HTML 3.0), which is an embedded component file such as audio (as 620), video (as one embedded control function 620), and other hyperlinks. These tags are well known. In one preferred embodiment, browser 160 is Netscape Navigator v3.0. The embedded program may be implemented using JavaScript or a Java applet, or any other embedded program that uses a plug-in, or a combination thereof. Sun Microsystems Inc.). As shown in FIG. 5, the HTML file 500 incorporates a Java ™ applet using a tag 505, incorporates a Java ™ Script function using a tag 515, and uses a tag 520 to implement a Javascript function. It incorporates any other program that calls the browser's plug-in function. Details of standard HTML tags are described in "Netscape HTML 3.0 Source Book", which is incorporated herein by reference in its entirety. Some of these built-in control functions 520 are read as built-in control functions / programs 620 when read into a computer.
[0038]
FIG. 5 is a block diagram illustrating components of a system that is called upon execution of embedded control program 620 of a typical application that configures kiosk 100.
[0039]
Within the browser 160, as a function, there is an interpreter 610 that interprets or recognizes HTML tags in HTML files. The interpreter 610 calls the HTML tag execution program 611 to execute a function for each HTML tag according to the type of the tag and the content of the tag. If the execution does not result in an API call 680 for the local kiosk program (including the local peripheral API 440), the browser executes each HTML tag 615 using a library of standard functions 617 if necessary. Examples of these non-API control functions 615 include text display, image display, and the like. These are well known and are included in prior art browsers.
[0040]
However, if the executable 611 encounters a built-in control function 620 that calls one of the local kiosk APIs 680, the executable 611 calls the security manager 625 inside the browser 160 to determine whether the API call is authorized. to decide. As will be described in greater detail below, the kiosk control mechanism 640, or a portion 640A of that mechanism, is located in a subdirectory of the directory containing the browser. In this way, when the execution program 611 encounters the built-in control function 620, the security manager 625 finds the control mechanism 640 (640A below) and the API control function 621 loads the control mechanism 640 / 640A into the browser process 160. I do. For example, these built-in control functions 620 may include an applet that calls one or more local API functions 680/440 (ie, a selected subset of API 441) to operate a given subset of devices 451. For example, if the device is a card reader, the built-in control function 620 uses the control mechanism 640 to call the appropriate API 440, open the card reader, read data from the card, eject the card, and close the card reader. .
[0041]
Note that the well-known browser 160 does not execute the built-in control functions 620 from the network 150 to execute the local API 680. In practice, these browsers specifically prevent the execution of these API control functions for well-known network security reasons. For example, if the application file 175 is modified while transiting the network, execution of the damaged control function in the application file will cause the client machine, ie, the kiosk (100, 200) to become unpredictable. Adverse consequences can occur.
[0042]
It is well known that Java is designed to overcome network security issues using various special measures, such as byte code transmission and verification, virtual machine error checking, and the like. Further, if Java is used as an applet in a web-based application, ie, embedded in an HTML file, the browser will typically include the Java applet in the browser. Strictly prevent access to any local Java (registered trademark) program on the client machine other than the Java (registered trademark) program in the standard Java (registered trademark) library. The reason for this is that the applet is sent from an unmanaged environment, that is, it can be sent from any server in the entire network, so the applet may simply damage the client machine. This is to prevent
[0043]
As described in the book "Java (Registered Trademark) Now" (by Kris Jamsa, James Press, 1996, ISBN 1-88133-30-4, p4), "addressing security issues" In order to do this, Java developers prevent programmers from creating computer viruses using the Java applet, and the applet stores information about the user's system (such as files on the user's system) on a server. For example, while browsing a competitor's web site, the competitor's Java applet reads his hard disk. If you don't like that security To provide, Java developers have decided to limit the operations that applets can perform, for example, Java applets cannot read or write files on the user's system. By doing so, the applet cannot store the virus on the user's disk or read information stored on the user's disk. " It is also described as follows. "Java allows a programmer to create a stand-alone program. A Java stand-alone program is similar to a program that a programmer can create using C ++. Such a stand-alone program can read and write files and execute operations that Java® restricts execution by an applet, whereas Java ™ applet can be used in a browser. Is only executed ... ". This means that the Java applet is designed not to operate functions outside the browser process 160.
[0044]
During operation of a standard browser, the browser security manager 625 monitors for violations of these security rules. If it finds an applet requesting access to a program that is not in the standard Java library, the browser simply reports a security breach error and stops running the applet.
[0045]
In one embodiment, a portion 640A of the kiosk-specific control 640 is added to the browser 160 to allow the application file 175 to configure the kiosk, and another portion 640B of the kiosk-specific control 640 is provided. Is added to the application programming interface (API) 680 (including 440). Therefore, the kiosk-specific control mechanism 640 is divided into two parts, a browser mechanism 640A and an API mechanism 640B. In this embodiment, the browser mechanism 640A and the API mechanism 640B communicate via an inter-process communication (IPC) 640I. The IPC 640I interface allows the browser mechanism 640A and the API mechanism 640B to communicate using message passing rather than direct indirect calls. (IPC is well known, one example is the use of Dynamic Data Exchange (DDE) in the Windows operating system. Windows is a trademark of Microsoft Corporation.)
[0046]
Browser mechanism 640A is placed in a browser subdirectory so that API control functions 620 in any application files 175 are recognized by interpreter 610 in browser 160. The API mechanism 640B receives a message from the browser mechanism 640A and independently controls various functions including 440 according to the message. In this way, an applet from a browser can control one or more devices and local functions, but only functions with a browser mechanism 640A. Thus, other functions in the kiosk remain secure from access by the application file 175 over the network. Thus, the kiosk is configurable but secure. Further, because the API mechanism 640B operates the device API 440 independently of the browser, the device control functions passed to the API mechanism 640B (a subset of the API control functions 620 used to control a given device) are: , Only if that application file is later removed or modified in browser 160, for that subset 451 of devices. This allows the device operation to be performed in a sustainable manner. That is, after the API function (640, 440) has been initiated, it can be completed regardless of whether the application file 175 is modified / removed by the browser 160. This execution persistence can make certain user interactions with the kiosk more efficient. For example, the application file 175 can instruct the card issuer to issue a new card. The user / browser can then move to another application file while the card issuer writes data to the magnetic stripe and launches a new card.
[0047]
The browser mechanism 640A is a name server that 1) resides in the browser's own standard directory / library and 2) the application file 175 passes messages (eg, function names and associated parameters) for one or more local API functions. One of the local APIs 680, either by passing messages using the mechanism (see FIGS. 7 and 9 and its description), or by directly invoking the local API function (see FIGS. 8 and 10 and its description). It has a structure that allows one or more local APIs 680 to be called.
[0048]
In a preferred embodiment, browser mechanism 640A includes a Java API (sometimes referred to as a "Java wrapper") known to application file 500 (e.g., inter-process communication or name It further includes functions programmed in a native language (eg, C ++) to communicate or call the local API 680 directly (using a server).
[0049]
The API mechanism 640B 1) directly accesses various local function modules (eg, a browser control module, a cooperative function module, a device control module, a system monitoring module, etc.), and 2) uses a name server mechanism or an associated function module. Has a structure that allows a set of one or more API functions 680 to be invoked by directly invoking, and 3) has an IPC that enables message-based communication with the API 640A. (Note that API function 680 is created to specifically control a given device or function within the kiosk and may or may not be accessible by application file 175.)
[0050]
One application that uses this kiosk control mechanism is that the application queries the system setup and status before the application determines how to configure the kiosk. In the application file 175, the applet CallAPI. The class can be used to call the API function 640 "query_status". For example,
Figure 2004030640
Embed this applet in an HTML file as follows.
Figure 2004030640
When this applet is executed by the browser, first, a class called kioskAppInterface is instantiated. This file and the associated DLL are placed in the browser standard library. Next, an API message "query_status" (640A) is sent using a method of the kioskAppInterface class (640A) called send_APImessage (). This method calls the inter-process communication function 640I and sends a message to the API mechanism 640B. Next, AIP mechanism 640B invokes the relevant local API function 680 to obtain system status data and sends that data back to 640A via inter-process communication function 640I. The applet uses the method get_APImessage () with the command "status" to obtain the data returned from the 640B and stores the data in a data structure in a class called sysStatus.
[0051]
The API message passing between 640A and 640B can use a name server facility (see FIG. 7 below). Generally, when 640B obtains a message, the name server function (within 640B) parses the message and calls the corresponding local function API 680. In this example, the system monitoring function API is called to obtain system status data. This can be illustrated as follows.
In the name server function in the 640B,
Figure 2004030640
An example of data obtained in the "sysStatus" class data structure as described above is shown below.
Figure 2004030640
This message indicates that there are five devices on the kiosk and all are working except the card issuer that needs the card.
[0052]
According to the current state of the kiosk, the application file 175 allows the selection and use of laser printers, receipt printers and card readers (device subset 451), while at the same time the card reader as indicated by the status data. Avoid using a card issuer because there is no card in the card supply (in such a situation, the card is created by other means and mailed to the kiosk user).
[0053]
In certain preferred embodiments, such techniques are used to determine what devices are included in the kiosk and whether those devices are functioning properly. In this way, the server can provide a particular application file 175 for configuring the kiosk based on which devices the kiosk has and which devices are operational. Thus, any number of different kiosk designs and operating situations can be configured by appropriately selecting the application files at the server for each application configuration. For example, in a banking application, a kiosk equipped with a laser printer for printing high quality bank statements is sent a file 500 configured as an application file containing laser printer controls, A kiosk that has only a receipt printer (available and operable) for the same task (bank statement) will receive another file 500 that is configured as an application file containing receipt printer controls. Can be In this way, a kiosk with a malfunctioning laser printer, or a lower cost kiosk without a laser printer, can be properly configured for banking applications.
[0054]
In other embodiments, one or more servers may request status information by sending a request in an application file. This information can be used to determine which kiosks and / or devices on those kiosks require service. For example, if necessary, a service technician can be dispatched to add a card to the card issuing machine.
[0055]
In other embodiments, status information may be requested for use in a kiosk or device service history. In addition, other marketing information may be obtained, for example, which configuration is most required by which class of customer at a particular installation location.
[0056]
In one preferred embodiment, the kiosk may have a browser window (system monitoring application window) running in the background of other applications. The system monitoring application window can include one or more HTML files that include one or more applets that communicate with one or more servers. (Mechanisms for Java applet communication with the server are well known.) This system monitoring application window can be started whenever the kiosk is powered on, as long as the kiosk is running. Keep running. In this way, one or more servers can obtain kiosk system status information at any time via communication with the applet.
[0057]
Among the possibilities provided by the approach described here are:
1) A "light client" kiosk. Because there is no application-specific software that needs to be pre-installed on the kiosk, a cost-effective kiosk can be built and maintained. Thus, one application (application file 500) can be created on a server and used by multiple "lightweight" kiosks on the network connected to that server. There is no need to create application-specific software for any of the "lightweight" kiosks on the network. In practice, the network can be made up of one or more standard (and thus cheaper) "lightweight" kiosks without any application-specific software. (For example, a kiosk manufacturer may manufacture one or more standard kiosks that are used for and independent of any application.) Creating, updating, and maintaining application files 500 on a server And can be used to reconfigure one or more kiosks on the network without changing any programming in the kiosk. This "light client" kiosk enables mass deployment of kiosks to provide universal public access anytime, anywhere, for example, "kiosk phones" that can communicate via the Internet and / or the telephone network .
[0058]
2) Since the kiosk is reconfigurable, many different applications can be developed on the server and distributed through the kiosk. Thus, the application provider can share any kiosk on the network. These applications can be provided to the kiosk for a particular point in time or for a particular situation, such as a user request or a given environmental condition (such as an umbrella advertising when it rains).
[0059]
3) The kiosks can be based on open standard technologies of the Internet and the Web, so that they can take advantage of the rich information and media, and the rich Internet and the World Wide Web.
[0060]
Some non-limiting examples showing how a user can use this kiosk 100 are provided below.
1. The idle kiosk screen dynamically displays various images, video clips, audio, graphics patterns and text. All screen content is controlled from HTML files, which are updated based on kiosk requests or server pushes. The server provider may pay different fees for this different type of screen "space" and its display time. In the morning and evening commutes, we mainly show headline news and changes in the financial markets, and at lunchtime we show advertisements for many restaurants. On weekends, you can also display special ads for department stores. This content always invites people passing by to touch the screen.
2. The user looks at the screen, walks up, and touches the screen. The screen switches immediately to the next screen, displaying a number of image icons and text indicating the category of the application.
3. When the user touches the pizza order icon, a screen on which the user can select the type of pizza is presented. The screen prompts the user for a pizza delivery location and time, and the user can enter information via the on-screen touch keypad. The control program 620 incorporated in the HTML captures this data. Next, the screen prompts the user to insert his credit card and authorize the payment. The control program opens the card reader and captures the credit card information. The control program then invokes the communication function on the kiosk using the relevant kiosk API function to access the credit card company (eg, via a modem) and the pizza store (eg, via a fax transmission). After these functions are completed, the screen confirms the customer with the information for ordering. Other general retail transactions can be performed in a similar manner.
4. The user can also place a call by touching the phone icon. The phone application HTML file is displayed on the screen along with the phone keypad. After the user enters the number, the embedded control program calls the associated API function 640A to initiate a telephone call. This can be via a public telephone network (PSTN), an integrated services digital network (ISDN), or an Internet telephone, depending on the kiosk's network connection (122, 123, 150), the application file 500, and the user selection 105A. It can be a conventional telephone call. Once the telephone is connected, the user can use the handset or speakerphone provided in the kiosk (“Multipoint Simultaneous Voice and Data” filed February 6, 1996, corresponding to European Patent Application No. 789470). See US Patent Application No. 08/595897 to Hortensius et al., Entitled "Services Using a Media Splitter Gateway Architecture," which is incorporated herein by reference in its entirety).
[0061]
In another preferred embodiment, the user can also select a videophone or videoconference call using the application sharing feature if the other party has the same functionality. In that case, the control program 620 embedded in the HTML application calls the relevant API function 640A to start the kiosk video conference function. Users can use the touch screen and electronic pen provided on the kiosk to facilitate conversations (as described in the aforementioned "Internet Web Page Sharing" patent application, such as Fins).
5. The user can also select the fax function. The screen prompts the user to enter a fax number, insert a credit card, insert the document to be faxed into an appropriate device (such as a document slot), and press the OK button on the screen when ready. Prompt to touch. Upon touching the button, the embedded control program 620 calls the associated device control API function 640A on the kiosk, activates the scanner, scans the document, returns the document, and electronically sends the document over a network, such as a PSTN or the Internet. .
6. The user can also select the e-mail function. The screen displays an HTML application for e-mail. The embedded control program 620 calls the associated API function 640A or communicates directly with the mail server and directory server via a browser to identify the user, retrieve an existing email message or send a new message. .
7. The user may also select 105A to transfer an electronic file on a medium such as a floppy diskette. The screen prompts the user to follow a particular process, for example, to insert a floppy into the slot. The embedded control program 620 calls the associated API function 640A, reads the diskette, reads or writes the file selected by the user, and forwards it according to the user's instructions, such as sending it to someone's email address.
8. The user can select a service from a wide range of service providers (eg, application owners on a server) such as lawyers, doctors, accountants, real estate agents, loan brokers, investment advisors, insurers, and the like. The screen displays the corresponding application in the HTML file and provides the requested service (based on user selection, this service can be any English, Spanish, Chinese, Japanese, French, Italian, etc. Can be presented in natural language.)
9. Depending on the service provider's application, real-time collaborative sessions may also be initiated using video, audio, shared screen, and remote device control functions (see Finn et al., Supra). The embedded control program calls the associated API function 620 to handle video, audio, and data communications.
10. The user can choose to search for information. The screen prompts the user to enter what information is needed, and the embedded control program captures the data and sends a query depending on the type of information. Queries can be sent through the interface using well-known search engines, databases on application servers, and databases on other network servers.
11. The user can select a customized application server. For example, once a user is identified (eg, from information accessed on a magnetic card or smart card), the application file provides customized information and kiosk configuration for the user.
12. The user can select a configuration for the kiosk 100 that is not the configuration initially provided by the kiosk 100. By interacting with the kiosk's first configuration, the kiosk can be reconfigured to a second configuration by reference to other application files 175. For example, a first configuration can include a user input (icon or hyperlink) accessing an application file 175 for a second configuration.
13. The user may be one or more students or students who have access to one or more kiosks connected to the network, where the server provides the "learning" application file 175.
14. The user can select an “electronic” product from the kiosk. For example, a compact disc (CD) containing music, video, computer software, or other multimedia information or a combination thereof can be sold from a suitable dispenser. Alternatively, a suitable kiosk device can write to a blank medium (eg, tape, diskette, writable CD, etc.) and provide the user with “electronic” information in intangible form that can be transmitted over a network. For example, an up-to-date opera recording may be provided on a CD without sending a "cut" CD at the factory.
[0062]
Other examples of certain kiosk control mechanisms 640 used to input and output information to and from a kiosk device are shown below. In a typical input situation, the application file 500 may include a CAPI API.xml file used to call the API function 640 "hardkey_input". It has an applet called class. For example:
[0063]
Figure 2004030640
[0064]
Embed this applet in an HTML file as follows.
[0065]
Figure 2004030640
[0066]
When this applet is executed by the browser, it first instantiates a class called kioskAppInterface. This file and the associated DLL are placed in the browser standard library. Next, an API message “hardkey_input” (640A) is sent using a method of the kioskAppInterface class (640A) called send_APImessage (). This method calls the inter-process communication function 640I and sends a message to the API mechanism 640B. Next, the API mechanism 640B calls the associated local API function 680, captures the key input from the hardware key provided on the kiosk, and sends it back to 640A via the inter-process communication function 640I. This applet uses get_AIPmessage () with the command “input” to get the data sent from 640B and stores it in a data structure in a class called InputData.
[0067]
In the name server function in the 640B,
Figure 2004030640
[0068]
If the application file 500 has a built-in applet that invokes a "soft key" input, a similar API message is passed between 640A and 640B and the soft key pad is displayed on the screen using a different API function 680. Note that the window "pops up" and captures user input. API functions 680 for such soft key entry are well known.
[0069]
Similarly, if the application file 500 calls for printing a file on an output device, eg, a laser printer, or has a built-in applet, the above code directs the Local API function 680, Laser_print (FileName). , And controls the laser printer to print the file “FileName”.
[0070]
FIG. 7 illustrates one embodiment of a kiosk control mechanism 640 that uses the ICP 640I and the name server function 640B. In this case, the application file (175, 500) uses a small fixed set of general purpose communication API functions 640A (primarily for message passing). These communication API functions communicate or pass messages between 640A and 60B. Execution of the message is performed by the name server function in 640B. The server function 640B functions as an IPC 640I server. The name server function recognizes various predefined messages. For example, in one embodiment, the set of communication APIs has two functions: send_message (message) and get_message (message). However, there are multiple “messages”. The name server function in 640B finances a list containing each of these predefined messages, and each predefined message can call the appropriate local API function 680 to execute the respective predefined message1. Associated with a set of logic.
[0071]
In this embodiment, new devices and new functions performed by those new devices can be added by providing new predefined messages and the logic necessary to perform the new functions. In this way, the application files (175, 500) can perform their new functions simply by using the new message identifier in a given communication API function. This typically requires only changing the "ASCII" or "text" message identifier in the application file 500. You do not need to code and compile new embedded programs or modify existing programs to use the new features. Thus, since the kiosk provider has already incorporated the necessary logic into the name server 640B, there is little that the application owner (and thus the application files on the server) need to do to perform the new function.
[0072]
FIG. 8 is a block diagram illustrating an alternative embodiment of a kiosk control mechanism 640 that uses IPC 640I for a mapping local API in a browser mechanism 640A. In this example, many or all kiosk control functions 620 are executed by directly calling the corresponding mapping local API from application file 500 at browser mechanism 640A. Each mapping local API 640A communicates with the API mechanism 640B via the IPC 640I, which calls the appropriate local API function 680. Here, the mapping local API 640A is a Java (registered trademark) API program. There is one Java API program specifically created for one or more local APIs 680. Unlike the name server, at least one of the Java API programs must have logic to control one or more of the local APIs 680. These Java API programs 640 are predefined and known to the application file 500.
[0073]
In this embodiment, new devices and new functions performed by those devices can be added by providing new mapping local APIs (640A) in the browser mechanism 640A with their corresponding API mechanisms 640B. In this embodiment, the application file 500 needs to execute each of these new functions by direct invocation. Therefore, some or all of the logic for executing the new function needs to be defined in the application file 500. For example, an application programmer creating an application file 500 at the server will need to code this new logic, for example, by creating a new Java applet.
[0074]
FIG. 9 shows another embodiment of the kiosk control mechanism 640. In this embodiment, there is no IPC 640I, and thus the API mechanism 640B is merged into the browser mechanism 640A. However, the name server function (also merged) is used and combined with a set of communication APIs into a browser mechanism (640B, 640). In this embodiment, application files 500 (including applets) are "dropped" by browser 160 and local functions 680 are terminated, thus losing persistence. This embodiment is useful when persistence is not required, for example, when there is no required kiosk device other than the screen controlled by the browser.
[0075]
FIG. 10 shows another embodiment of the kiosk control mechanism 640. In this embodiment, there is no IPC 640I and no API mechanism 640B. In this case, the applet directly calls the API function (640, 640A), and the API function directly calls the local API function 680. Here, the API function 640 is a Java (registered trademark) API program. There is one Java API program specifically created for each one or more local APIs 680. Unlike the name server, at least one of the Java API programs has logic to control one or more of the local APIs 680. Must be. These Java API programs 640 are predefined and known to the application file 500. In this embodiment too, persistence is lost.
[0076]
FIG. 11 is a flowchart of an execution process 700 performed by a kiosk.
[0077]
First, the browser 160 obtains 705 the (HTML) file 500 from the application file 175. Next, browser 160 interprets 710 the tags and contents of application file 500. If the browser 160 does not encounter a local API call 715, the browser performs the relevant well-known actions 720, executing the tag. If the browser encounters a local API call 715, the browser calls 725 the associated API function (640 or 640A).
[0078]
In one preferred embodiment, browser mechanism 640A communicates 730 a message to API mechanism 640B via inter-process communication function 640I. Alternatively, a message server is used as described above. The API mechanism 640B receives the message and calls 735 the associated local function 680. The API mechanism 640B transmits 740 a message about the execution result of the local function to the browser mechanism 640A via the inter-process communication function 640I.
[0079]
The browser is controlled via screen input, embedded control program logic, or an external browser control function 660 to request the next HTML file. In this way, the browser can be treated as a local kiosk device. Thus, by controlling the browser and accessing the well-known browser interface (API 681) using the local API 660, it is possible to load any particular HTML file from one or more servers over the network. it can. Local API 660 is created to allow embedded control program 620 to access browser-in 681 (see above).
[0080]
FIG. 12 is a flowchart of a server process 800 executed on one or more servers on a network. The server receives 810 a request from one or more kiosks via a network. The request identifies which of the application files 175 is selected / accessed by the kiosk. The request also includes the location of the kiosk 100 that is requesting / accessing the application file. Upon receiving the request, the server sends 820 the requested application file 175 to the kiosk. The application file 175 can be pre-created or dynamically generated by logic on the server.
[0081]
In another embodiment, the kiosk sends 810 a request to proxy server 195A. Proxy server 195A is typically located closer to the kiosk than server 195. Alternatively, the proxy server 195A can be located on a computer without the kiosk 100/200. For example, server 195 may be located at a first city, for example, the location of a head office, and proxy server 195A may be located on a LAN connected to a kiosk in a different city. The proxy server 195A may send a request over the network 150 to the server for many or all application files 175 needed by the kiosk according to a predefined schedule. In this way, the kiosk can access the application file 175 on the proxy server 195A faster and more reliably when it needs the application file. Further, the proxy server may request the application file 175 from the server 195 during "off-peak" hours on the network.
[0082]
In other embodiments, the server (195, 195A) can be used to "push" information to one or more kiosks identified by the server 195. For example, at step 810, a request is initiated at server 195. This initiation 810 can be made for various reasons. For example, updating an application requires reconfiguring one or more kiosks using the new application file 175. Alternatively, it may be necessary to provide a new configuration at a specific time each day, i.e., provide news from a different source at 5 pm every day. The server can also "push" the periodic "checks" of the kiosk to determine which kiosk needs maintenance.
[0083]
One preferred implementation of this embodiment uses a "server push feature" 685 running on a kiosk. The server push function 685 is connected to the network 150 and can receive a message from the server 195. The server push function 685 can also access the browser interface 681. The server 195 sends a request to the server push function 685 to cause the browser to request the server 195 for a specific application file 500.
[0084]
FIG. 13 is a block diagram showing a mechanism in a case where the embedded control program uses the ActiveX technique instead of Java (registered trademark). The ActiveX control object can be realized using various programming languages such as C ++, Visual Basic, and Java (registered trademark). An ActiveX object can be embedded in an HTML file. For example:
[0085]
Figure 2004030640
[0086]
In this case, the browser must be ActiveX-enabled. That is, it must support the ActiveX technique. In one embodiment, the browser is a Microsoft Internet Explorer.
[0087]
When the application file 500 arrives at the browser 160, the HTML file is interpreted 910 based on its tags and content. As with Java, described above, the browser executes 920 non-API control functions as described above. The API control function 930 executed by the browser directly calls the API 940. As in the case of Java, the first part 940A of the API communicates with the second part of the API (eg, 640B) 940B via the inter-process communication function 940I, and this second part connects the local API 680. call.
[0088]
The difference between ActiveX and the above-mentioned case of Java (registered trademark) is that ActiveX can include objects created in a non-network language such as C ++ or Visual Basic. Objects in these languages are downloaded to the browser in executable code. Thus, such an object can do whatever a program written in the same language can do, but does not have the security restrictions that Java ™ applets have. Thus, if the embedded control program 620 was created as an ActiveX control program using a non-Java language, the API function 940 could be placed anywhere within the kiosk. In the case of using Java (registered trademark) in an ActiveX object, the above-described mechanism must also be used.
[0089]
14 to 17, the boxes with the above numbers have the same functions as those described above.
[0090]
FIG. 14 illustrates one embodiment of a kiosk control mechanism 940 that uses the IPC and name server functions. Browser mechanism 940A is a native language API that does not need to be in the browser directory but can be located anywhere in the kiosk's memory, for example, in the kiosk's system directory. However, the path (ie, location) of the browser mechanism 940A must be known to the application file 500.
[0091]
FIG. 15 is a block diagram illustrating another embodiment of a kiosk control mechanism 940 that uses IPC 640I with a mapping local API. As in FIG. 8, there is at least one browser mechanism 940 for one or more of the local APIs 680.
[0092]
FIG. 16 shows another embodiment of the kiosk control mechanism 940 without the IPC 640I. In this case, the browser mechanism 940A can be arranged as described above with reference to FIG.
[0093]
FIG. 17 shows another embodiment of a kiosk control mechanism that uses ActiveX control when the control is not performed in Java (registered trademark). In this embodiment, 940 is not required at all since such a built-in ActiveX control can directly call the local API 680. In this case, the persistence of execution is lost.
[0094]
FIG. 18 illustrates another kiosk control mechanism using a so-called plug-in technique. In this case, the preferred embodiment uses a Netscape Navigator v3.0 or later browser.
[0095]
Here, the control mechanism 1040 includes a browser mechanism (plug-in module and its associated Java (registered trademark) wrapper) 1040A, and the kiosk control program (application file / file (175, 500)) in the browser mechanism includes 620) is accessed. When accessed, plug-in module 1040A executes as part of browser 160. The execution plug-in module 1040A calls the inter-process communication function 1040I. This inter-process communication function (IPC) 1040I can be the same as the above-mentioned IPC (640I, 940I). The IPC 1040I contacts the API mechanism 1040B and calls the local API 680. The API mechanism 1040B can be the same as the aforementioned mechanisms (640B, 940B).
[0096]
In this embodiment, the browser mechanism 1040A is implemented by a plug-in technique (see Zan Oliphant's "Programming Netscape Plug-ins" (Sams.net, 1996, ISBN1-57521-098-3)). You. Plug-in techniques use native code modules. That is, it is implemented using C or C ++ or a similar programming language, and in a more preferred embodiment is also implemented in a Java wrapper. Plug-in 1040A is placed in a special plug-in directory specified by browser 160. When the HTML interpreter 610 encounters an embedded file (620) that identifies each plug-in 1040A by a unique file name extension in the embedded file, also known as a multi-purpose Internet mail extension (MIME) type, the plug-in 1040A Dynamically loaded into browser 160.
[0097]
The built-in kiosk control program (620) is a set of predefined control scripts included in 1) a Java script function, 2) a Java applet, or 3) a MIME file with a unique extension. It can be.
[0098]
When browser 160 loads plug-in module 1040A, plug-in 1040A becomes available for HTML documents. That is, the function (plug-in function) in the plug-in can be used for the embedded program (620), for example, a Java (registered trademark) Script function or a Java (registered trademark) applet function to be called. In doing so, the kiosk's local API 680 may be controlled by a given embedded program 620 via one or more corresponding plug-ins 1040A. In other words, the plug-in module 1040A calls the IPC function 1040I and calls the kiosk's local API 680 via the corresponding API mechanism 1040B.
[0099]
Three non-limiting examples are shown below.
[0100]
Example 1 uses a JavaScript function as the embedded kiosk control program 1030 together with a plug-in module 1040A having a message passing function.
[0101]
The application file 175 having the control program 1030 is as follows.
[0102]
Figure 2004030640
[0103]
The Java ™ applet “MYAPPLET.Java” includes the following codes.
[0104]
Figure 2004030640
[0105]
Java® wrapper file PluginWrapper. Java includes the following codes.
[0106]
Figure 2004030640
[0107]
The plug-in module 1040A associated with the embedded control program 1030 provides a method SendMsg () implemented in native language code such as C ++.
[0108]
Example 2 uses a Java applet directly as the embedded kiosk control program 1030 with a plug-in module 1040A having a message passing function.
[0109]
The application file 175 having the control program 1030 is as follows.
[0110]
Figure 2004030640
[0111]
The Java ™ applet “MYAPPLET.Java” includes the following codes.
[0112]
Figure 2004030640
[0113]
Java® wrapper file PluginWrapper. Java includes the following codes.
Figure 2004030640
[0114]
As in Example 1, the plug-in module 1040A associated with the plug-in embedded control program 1030 above provides a method SendMsg () implemented in a native language such as C ++.
[0115]
Example 3 includes a set of predefined control scripts and a corresponding plug-in module 1040A that controls the kiosk local API 680, and uses an embedded file 1030 that executes those scripts to control the kiosk local API 680. I do.
[0116]
The application file 175 having the embedded file 1030 is as follows.
[0117]
Figure 2004030640
[0118]
The plug-in module 104A can consist of the following code.
Figure 2004030640
Figure 2004030640
The above three plug-in functions implement the standard plug-in API provided in the Netscape browser 160. Here, other plug-in APIs provided in the browser 160 are not used.
[0119]
When the <embed> tag is interpreted by the HTML interpreter 610, the MSGPASS. If the file 1030 called MET is downloaded to the local disk and the corresponding plug-in module 1040A is not yet loaded in the browser 160, the plug-in module 1040A is loaded. The browser 160 automatically calls a plug-in API called NPP_New to create a plug-in instance, calls NPPStreamAsFile (), which is a plug-in API having the name of the downloaded file, and executes the file. If necessary, the browser 160 calls a plug-in API called NPP_Destroy () to destroy the plug-in instance.
[0120]
The class KioskIPC and the function InterpretFile () can be implemented using a native language such as C ++ to interpret and execute the predefined script in the embedded file. In this sense, as long as the function InterpretFile () script is implemented to be able to interpret the script with reasonable performance and execute the required functions, it is important to understand what the script can look like. There are no restrictions. An example is as follows.
[0121]
In the include file, the script looks like this:
[0122]
Figure 2004030640
[0123]
Figure 2004030640
[0124]
The plug-in module 1040A may also create a number of buttons in the browser 160 window to provide specific interactive control of its functions. For example, to call the SendMsg () function that sends a message “PrintCurrentPage”, a button “Print” can be created and waited for a touch or click. The <embed> tag may also include a set of predefined parameters for controlling the plug-in module 1040A according to an embodiment of the plug-in module 1040A. For information on how to use the <embed> tag and how to implement a plug-in module, see "HTML Publishing for Netscape" (Stuart Harris and Gayle Kidder, ISBN1-5664-288-7). And Zan Olphant, supra.
[0125]
The present invention will be described below.
(1) A kiosk device connected to a network and including a computer,
At least one plurality of input / output or peripheral devices;
Means for storing at least one local kiosk API for driving said input / output device or peripheral device;
Browser means for retrieving, via the network, an application file associated with the application executed by the kiosk device, comprising an embedded component file and an embedded control function, and including an hyperlinked HTML file; ,
A browser mechanism incorporated in the browser means for receiving the application file and detecting the embedded control function, an API control mechanism for selectively operating the input / output device or the peripheral device, and an inter-process communication. Kiosk-specific control means for using the browser mechanism to pass a built-in control function from the browser mechanism to the API mechanism;
The API mechanism selectively activates the local kiosk API to drive the input / output device or peripheral device and execute a predetermined application.
Kiosk device.
(2) The input / output device or the peripheral device is a printer, a medium reading device, a medium recording device, a medium dispenser, a cash dispenser, a scanner, a disposer, an electronic pen, a card issuing machine, Bill Printer, Printer, Ticket Issuer, CRT, Keyboard, Touch Sensitive Screen, Camera, Human Detector, Telephone, Lighting, Microphone, Speaker, CD-ROM The kiosk device according to (1), wherein the kiosk device is selected from one or more of a player, a mouse, and a memory.
(3) the browser means further includes a display device for presenting a web page as a part of the application, and the built-in control function enables Java (registered trademark) Applet or ActiveX or plug-in control (1) or The kiosk device according to (2).
(4) the web page includes a hyperlink, a hyperlink requesting one or more additional application files, an icon, a menu, a text entry field, a data entry field, an advertisement, and a notification. The kiosk device according to (3), wherein the kiosk device provides a visual display function of one or more of a news broadcast, a weather broadcast, and a statement of general information.
(5) The kiosk device according to any one of (1) to (4), wherein the application executed by the kiosk device is selectable by one or more selection functions.
(6) The kiosk device according to (5), wherein the application executed by the kiosk device is reconfigured by an application file transmitted independently of the selection function.
(7) The kiosk device according to (5) or (6), wherein the selection function is provided as a graphical user interface displayed on a terminal / display device of the kiosk device during one or more periods.
(8) The kiosk device according to any one of (5) to (7), wherein the application organizes a graphical user interface that is customized according to user preferences.
(9) The kiosk device according to any one of (5) to (8), wherein the application is selected by a computer connected to the network.
(10) The kiosk according to any one of (5) to (9), wherein the application includes a function of any one of remote device control, remote message display, file transfer, and agent / client cooperation. apparatus.
(11) The kiosk device according to any one of (1) to (10), wherein one or more of the kiosk devices further stores a system monitoring program for determining an operation state. .
(12) To use the operation status provided by the system monitoring program to configure necessary maintenance for an input / output device or a peripheral device, maintenance history of the input / output device or a peripheral device, and configure the kiosk device. The kiosk device according to (11), wherein one or more of an application file to be used and marketing information about the user are determined.
(13) The kiosk device according to any one of (11) and (12), wherein the retrieval unit receives an application file for system monitoring, and determines an operation status of each local kiosk API.
(14) The kiosk device according to any one of (1) to (13), wherein the HTML file includes zero or one or more hypertext component files.
(15) The kiosk device according to any one of (1) to (14), wherein the application is a customization application customized for a user.
(16) The kiosk device according to any one of (1) to (15), wherein the application file provides a function of accessing the Internet.
17. The method of claim 16, wherein the access to the Internet provides a communication link between a first user and a second user via one or more designated servers. Kiosk device.
(18) The application file is one of a telephone call, an e-mail transmission / reception, a teleconference, a fax transmission, a training session, an information search on a network, and a web-based collaboration. The kiosk device according to any one of (1) to (17), which performs one or more functions.
(19) The input / output device or the peripheral device includes a printer, the application file specifies the printer as one of a receipt, a bill, a web page, a coupon, a ticket, a pass, and a form. 2. The kiosk device according to (2), wherein the kiosk device is configured to print.
(20) The input / output device or peripheral device is selected from any one or more of a microphone, a speaker, and a telephone configured to be a payphone by the application file; (2) A kiosk device according to claim 1.
(21) The kiosk device according to (2), wherein the input / output device or the peripheral device is selected from a microphone, a speaker, and a video conference system configured to be a video conference terminal according to the application file.
(22) A camera, wherein the input / output device or the peripheral device is configured to take a photograph of any one or more of a user, a view around the kiosk device, and a document according to the application file. The kiosk device according to (2), which is selected from:
(23) The input / output device or the peripheral device includes a medium writing device for writing to a storage medium, and the application file stores the medium writing device for music, software, text, graphics, educational materials, and multimedia information. The kiosk device according to (2), wherein any one of the above is written.
(24) The input / output device or the peripheral device includes a medium reading device capable of reading a recording medium, and the medium reading device inputs information recorded on the recording medium by the application file. The kiosk device according to (2), wherein the kiosk device is controlled by:
(25) A method of controlling a kiosk device that is connected to a network and includes a computer having at least one input / output device or peripheral device and an associated local kiosk API, the control method comprising: Receiving a configuration set comprising a hyperlinked HTML file containing a built-in component file and a built-in control function, wherein the configuration set referred to as an application file is accessed by the browser means via the network; Storing the data in storage means of the computer,
A computer that interprets the application file, embeds a browser mechanism in the browser means in response to detection of the embedded control function, calls an API mechanism using inter-process communication, and executes the embedded program included in the application file. Passing a control function to the API mechanism using inter-process communication;
Selectively actuating the local kiosk API by the API mechanism to drive and control the plurality of input / output devices or peripheral devices in association with the application file;
How to make it work.
(26) at least one input / output device or peripheral device;
Means for storing a local kiosk API for driving said input / output device or peripheral device;
A configuration set associated with an application executed by the kiosk device, the configuration set being an application file including an HTML file and including an embedded component file and an embedded control function is transferred from the network via one or more network connections to a computer. Browser means to retrieve using
A kiosk-specific control means including a browser mechanism, an API mechanism, and means for enabling inter-process communication between the browser mechanism and the API mechanism;
The computer selectively activates a local kiosk API by the built-in control function via the browser mechanism and the API mechanism in response to the detection of the built-in control function, and executes the input / output by the local kiosk API. Controlling an output device or a peripheral device to cause the computer to execute the application,
Kiosk device.
(27) The input / output device or the peripheral device includes a printer, a medium reading device, a medium recorder, a medium dispenser, a cash dispenser, a scanner, a disposer, an electronic pen, a card issuing machine, Bill printer, printer, ticket machine, CRT, keyboard, touch-sensitive screen, camera, human sensor, telephone, lighting, microphone, speaker, CD-ROM player. The kiosk device according to (26), wherein the kiosk device is selected from any one or more of: a mouse; and a memory.
(28) The kiosk device according to (26), further comprising a display device, wherein the retrieval unit presents a web page on the display device as part of the application.
(29) The web page is a loan application, a personal information report, an application, a tax return, a loan application, a mortgage application, a service request, an educational form, a government office form, a purchase request form, and a deposit receipt. The kiosk device according to (28), wherein the kiosk device presents a form including any one of the following.
(30) the web page includes a hyperlink, a hyperlink requesting one or more second application files, an icon, a menu, a text entry field, a data entry field, an advertisement, The kiosk device of (28), wherein the kiosk device provides one or more of the following: a notification, a news broadcast, a weather broadcast, and a statement of general information.
(31) The built-in control function enables Java (registered trademark) applet or ActiveX or plug-in control, and one or more of the applications can execute the control of the application file independently of the selection function. The kiosk device of claim 26, wherein the kiosk device is reconfigured by one or more of the application files.
(32) The kiosk device according to (26), wherein one or more of the applications is selectable, and the application is selected by one or more selection functions associated with the application. .
(33) The selection function is selected from one or more of a touch screen, an icon, a hypertext link, a soft button on a display device, a sensor, a button, a sound, and a sound control. 2. The kiosk device according to 1.).
(34) The kiosk device according to (32), wherein one or more of the selection functions are provided by collecting a fee.
(35) The fee is one or more of the following: a location of the selected function on a graphical user interface, a size of the selected function, a length of time for displaying the selected function, a location of the kiosk, and the application. And the kiosk device of (34), wherein the kiosk device relies on any one of a group of target customers.
(36) The kiosk device of (32), wherein the selection function is displayed as a graphical user interface during one or more periods on a terminal / display device of the computer of the kiosk device.
(37) The kiosk device of (32), wherein the selectable application organizes the graphical user interface to be customized according to the preferences of the user.
(38) The kiosk device according to (32), wherein the application is selected via a computer connected to the network.
(39) The kiosk device according to (32), wherein the application includes a function of one of remote device control, remote message display, file transfer, and agent / client cooperation.
(40) The kiosk device according to (26), wherein the computer further includes a system monitoring program that determines an operation status of one or more of the local kiosk functions.
(41) Using the operation status provided by the system monitoring program to configure necessary maintenance for an input / output device or a peripheral device, maintenance history of the input / output device or a peripheral device, and configure the kiosk device. The kiosk device according to (40), wherein one or more of an application file to be used and marketing information about the user are determined.
(42) The kiosk device according to any one of (40) or (41), wherein the retrieval unit receives an application file for system monitoring, and determines an operation status of each local kiosk API.
(43) The network is the Internet, the World Wide Web, an intranet, a telephone network, a cable network, an ISDN network, a corporate network, a government network, an education network, and a network used by one or more retailers. The kiosk device of claim 26, wherein the kiosk device may be one or more of the networks.
(44) The kiosk device according to (26), wherein the HTML file includes zero or one or more hypertext component files.
(45) The kiosk device according to (26), wherein the application is a financial application.
(46) The financial application is any one of providing financial information to a user, opening an account, paying cash, paying an account, applying for a loan, depositing, mortgage payment, financial advice, fixed asset transaction, and assistance from an agent. The kiosk device of claim 45, wherein the kiosk device includes one or more functions.
(47) The kiosk device according to (26), wherein the application is a customization application customized for a user.
(48) The kiosk device according to (26), wherein the application file provides a function of providing access to the Internet.
(49) The kiosk device of (48), wherein the access to the Internet provides a communication link between one or more second users via one or more designated servers.
(50) The kiosk device of (49), wherein the communication link communicates one or more of voice, video, email, data, and web page sharing.
(51) The kiosk device according to (26), wherein the application is a communication application.
(52) The communication application performs one or more of the following functions: telephone call, e-mail transmission / reception, teleconference, fax transmission, training session, information retrieval on the network, and web-based collaboration. 52. The kiosk device of claim 51, wherein the kiosk device is provided.
(53) The kiosk device according to (26), wherein the application is a service application.
(54) The kiosk device according to (53), wherein the service application includes one or more functions of an advertisement, a service fee, and a service request.
(55) The kiosk device according to (26), wherein the application file provides a function of providing information on a tangible medium to the kiosk device.
(56) The application may be configured to display the display device with a multi-screen including one or more of a schedule, a menu, a seat arrangement, a map, one or more soft keys, a format, an advertisement, and a product image. The kiosk device of claim 26, wherein the kiosk device is operable to present a web page containing media information.
(57) The input / output device or peripheral device includes a printer, and the application stores the printer in one of a receipt, a bill, a web page, a coupon, a ticket, a pass, and a form. The kiosk device of (26), wherein the kiosk device is operative to print.
(58) The kiosk device according to (26), wherein the input / output device or peripheral device includes a microphone, a speaker, and a telephone configured to be a public telephone by the application file.
(59) The kiosk device according to (26), wherein the input / output device or the peripheral device includes a microphone, a speaker, and a video conference system configured to be a video conference terminal by the application file.
(60) A camera, wherein the input / output device or the peripheral device is configured to take a photograph of any one or more of a user, a view around the kiosk device, and a document according to the application file. The kiosk device according to (26), comprising:
(61) The input / output device or the peripheral device includes a medium writing device for writing to a storage medium, and the application file stores the medium writing device for music, software, text, graphics, educational materials, and multimedia information. The kiosk device according to (26), which has a function of writing any one of them.
(62) The input / output device or the peripheral device includes a medium reading device capable of reading a recording medium, and the medium reading device inputs information recorded on the recording medium by the application file. The kiosk device according to (26), wherein
(63) The kiosk device according to (62), wherein the recording medium is any one of a memory on an electronic card, a computer diskette, a magnetic tape, a CD-ROM, and a memory storage device.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating one preferred embodiment of a kiosk.
FIG. 2 is a block diagram illustrating another preferred embodiment of the kiosk.
FIG. 3 is a block diagram illustrating an example of a graphical user interface used in a kiosk.
FIG. 4 is a block diagram illustrating a configuration set (application files) selected by a user and executed to configure a kiosk.
FIG. 5 is a block diagram illustrating a set of application files (configuration sets) including one or more HTML files including at least one embedded control program and accompanying hypertext component files.
FIG. 6 is a block diagram illustrating one preferred embodiment of a kiosk that interacts with application files and local API programs to execute control programs / functions that make up the kiosk.
FIG. 7 is a block diagram illustrating various preferred alternative embodiments of the kiosk control mechanism.
FIG. 8 is a block diagram illustrating various preferred alternative embodiments of the kiosk control mechanism.
FIG. 9 is a block diagram illustrating various preferred alternative embodiments of the kiosk control mechanism.
FIG. 10 is a block diagram illustrating various preferred alternative embodiments of the kiosk control mechanism.
FIG. 11 is a flowchart showing steps performed when executing one application file having an API control function.
FIG. 12 is a flowchart illustrating steps performed by a typical server.
FIG. 13 is a block diagram illustrating a preferred kiosk software architecture using ActiveX.
FIG. 14 is a block diagram illustrating various preferred alternative embodiments of a kiosk control mechanism using ActiveX.
FIG. 15 is a block diagram illustrating various preferred alternative embodiments of a kiosk control mechanism using ActiveX.
FIG. 16 is a block diagram illustrating various preferred alternative embodiments of a kiosk control mechanism using ActiveX.
FIG. 17 is a block diagram illustrating various preferred alternative embodiments of a kiosk control mechanism using ActiveX.
FIG. 18 is a block diagram illustrating an alternative kiosk control embodiment using a plug-in.
[Explanation of symbols]
100 ... Kiosk device
103 ... Touch-sensitive terminal
109 ... Printer
105 ... Display screen
110 ... Computer
111, 112, 130: General-purpose information reading device (input device or peripheral device)
113, 130: General-purpose information writing device (output device or peripheral device)
122 ... Telephone network
123 ... ISDN
125 ... Control process and library
155 ... Network interface
520, 620 ... Built-in control function
640 ... Kiosk specific control mechanism
640A… Browser mechanism
640I ... Inter-process communication means
640B… API mechanism
680: Local application program interface (local kiosk API)

Claims (63)

ネットワークに接続され、コンピュータを含むキオスク装置であって、
少なくとも1つの複数の入力/出力装置または周辺装置と、
前記入力/出力装置または周辺装置を駆動する少なくとも1つのローカル・キオスクAPIを格納する手段と、
前記ネットワークを介して、キオスク装置が実行するアプリケーションに関連づけられ、組込み構成要素ファイルと、組込み制御関数とから構成され、ハイパーリンクされたHTMLファイルを含んで構成されるアプリケーション・ファイルを取り出すブラウザ手段と、
前記アプリケーション・ファイルを受け取って、組込み制御関数の検出に応答して前記ブラウザ手段に組込まれるブラウザ機構と、前記入力/出力装置または周辺装置を選択的に機能させるAPI制御機構と、プロセス間通信を使用して前記ブラウザ機構から前記API機構へと組込み制御関数を渡すキオスク固有制御手段とを含み、
前記API機構が前記ローカル・キオスクAPIを選択的に機能させて前記入力/出力装置または周辺装置を駆動させ、所定のアプリケーションを実行する
キオスク装置。
A kiosk device connected to a network and including a computer,
At least one plurality of input / output or peripheral devices;
Means for storing at least one local kiosk API for driving said input / output device or peripheral device;
Browser means for retrieving, via the network, an application file associated with the application executed by the kiosk device, comprising an embedded component file and an embedded control function, and including an hyperlinked HTML file; ,
A browser mechanism incorporated in the browser means for receiving the application file and detecting the embedded control function, an API control mechanism for selectively operating the input / output device or the peripheral device, and an inter-process communication. Kiosk-specific control means for using the browser mechanism to pass a built-in control function from the browser mechanism to the API mechanism;
A kiosk device wherein the API mechanism selectively activates the local kiosk API to drive the input / output device or peripheral device to execute a predetermined application.
前記入力/出力装置または周辺装置が、プリンタと、媒体読取装置と、媒体記録装置と、媒体ディスペンサと、キャッシュ・ディスペンサと、スキャナと、ディポーザと、電子ペンと、カード発行機と、勘定書印刷機と、プリンタと、チケット発行機と、CRTと、キーボードと、タッチ・センシティブ・スクリーンと、カメラと、人間感知器と、電話機と、照明と、マイクロフォンと、スピーカと、CD−ROMプレーヤと、マウスと、メモリとのうちのいずれか1つまたは複数の装置から選択される、請求項1に記載のキオスク装置。The input / output device or peripheral device is a printer, a medium reading device, a medium recording device, a medium dispenser, a cash dispenser, a scanner, a disposer, an electronic pen, a card issuing machine, and a bill printing. Machine, printer, ticketing machine, CRT, keyboard, touch-sensitive screen, camera, human detector, telephone, lighting, microphone, speaker, CD-ROM player, 2. The kiosk device of claim 1, wherein the kiosk device is selected from any one or more of a mouse and a memory. 前記ブラウザ手段が前記アプリケーションの一部としてウェブ・ページを提示する表示装置をさらに含み、前記組込み制御関数がJava(登録商標)アプレットまたはActiveXまたはプラグイン制御を可能とする請求項1または2に記載のキオスク装置。3. The method according to claim 1, wherein said browser means further comprises a display device for presenting a web page as part of said application, and wherein said built-in control function enables a Java applet or ActiveX or plug-in control. Kiosk equipment. 前記ウェブ・ページが、ハイパーリンクと、1つまたは複数の追加のアプリケーション・ファイルを要求するハイパーリンクと、アイコンと、メニューと、テキスト入力フィールドと、データ入力フィールドと、広告と、通知と、ニュース・ブロードキャストと、天気ブロードキャストと、一般情報のステートメントとのうちのいずれか1つまたは複数の視覚的表示機能を提供する、請求項3に記載のキオスク装置。The web page includes a hyperlink, a hyperlink requesting one or more additional application files, an icon, a menu, a text entry field, a data entry field, an advertisement, a notification, and news. The kiosk device of claim 3, wherein the kiosk device provides a visual display function of one or more of a broadcast, a weather broadcast, and a statement of general information. 前記キオスク装置が実行するアプリケーションが、1つまたは複数の選択機能によって選択可能とされる、請求項1ないし4のいずれか一項に記載のキオスク装置。The kiosk device according to claim 1, wherein the application executed by the kiosk device is selectable by one or more selection functions. 前記キオスク装置が実行するアプリケーションが、前記選択機能とは独立に送信されるアプリケーション・ファイルによって再構成される、請求項5に記載のキオスク装置。The kiosk device according to claim 5, wherein the application executed by the kiosk device is reconfigured by an application file transmitted independently of the selection function. 前記選択機能が1つまたは複数の期間の間に前記キオスク装置の端末/表示装置に表示されるグラフィカル・ユーザ・インタフェースとして与えられる、請求項5または6に記載のキオスク装置。7. The kiosk device according to claim 5, wherein the selection function is provided as a graphical user interface displayed on a terminal / display device of the kiosk device during one or more time periods. 前記アプリケーションが、ユーザの選好に従ってカスタマイズされるグラフィカル・ユーザ・インタフェースを編成する、請求項5ないし7のいずれか一項に記載のキオスク装置。The kiosk device of any one of claims 5 to 7, wherein the application organizes a graphical user interface that is customized according to user preferences. 前記アプリケーションが、前記ネットワークに接続されたコンピュータによって選択される、請求項5ないし8のいずれか一項に記載のキオスク装置。The kiosk device according to any one of claims 5 to 8, wherein the application is selected by a computer connected to the network. 前記アプリケーションが、遠隔装置制御、遠隔メッセージ表示、ファイル転送、およびエージェント/クライアント協同のうちのいずれか1つの機能を含む、請求項5ないし9のいずれか一項に記載のキオスク装置。The kiosk device according to any one of claims 5 to 9, wherein the application includes a function of one of remote device control, remote message display, file transfer, and agent / client cooperation. 前記キオスク装置のうちの1つまたは複数のキオスク装置は、動作状況を判断するシステム監視プログラムをさらに格納する、請求項1ないし10のいずれか一項に記載のキオスク装置。The kiosk device according to claim 1, wherein one or more of the kiosk devices further stores a system monitoring program for determining an operation status. 前記システム監視プログラムにより与えられる前記動作状況を使用して、前記入力/出力装置または周辺装置に必要な保守、前記入力/出力装置または周辺装置の保守履歴、前記キオスク装置を構成するために使用するアプリケーション・ファイルと、ユーザに関するマーケティング情報とのうちのいずれか1つまたは複数を判断する、請求項11に記載のキオスク装置。The operation status provided by the system monitoring program is used to perform maintenance required for the input / output device or the peripheral device, maintenance history of the input / output device or the peripheral device, and to configure the kiosk device. The kiosk device of claim 11, wherein the kiosk device determines one or more of an application file and marketing information about the user. 前記取り出し手段がシステム監視のためのアプリケーション・ファイルを受け取り、それぞれのローカル・キオスクAPIの動作状況を判断する、請求項11または12のいずれか一項に記載のキオスク装置。13. The kiosk device according to claim 11, wherein the retrieval unit receives an application file for system monitoring, and determines an operation status of each local kiosk API. 前記HTMLファイルは、ゼロ個または1個以上のハイパーテキスト構成要素ファイルを含む、請求項1ないし13のいずれか一項に記載のキオスク装置。14. The kiosk device according to any one of claims 1 to 13, wherein the HTML file includes zero or more hypertext component files. 前記アプリケーションがユーザに合わせてカスタマイズされたカスタマイズ・アプリケーションである、請求項1ないし14のいずれか一項に記載のキオスク装置。15. The kiosk device according to any one of claims 1 to 14, wherein the application is a customization application customized for a user. 前記アプリケーション・ファイルがインターネットへのアクセス機能を付与する、請求項1ないし15のいずれか一項に記載のキオスク装置。The kiosk device according to any one of claims 1 to 15, wherein the application file provides a function of accessing the Internet. 前記インターネットへの前記アクセスが、1つまたは複数の指定されたサーバを介して第1のユーザと第2のユーザとの間に通信リンクを提供する、請求項16に記載のキオスク装置。17. The kiosk device of claim 16, wherein the access to the Internet provides a communication link between a first user and a second user via one or more designated servers. 前記アプリケーション・ファイルが、電話呼出しと、電子メール送受信と、遠隔会議と、ファクス伝送と、トレーニング・セッションと、ネットワーク上の情報検索と、ウェブ・ベースの協同とのうちのいずれか1つまたは複数の機能を実行させる、請求項1ないし17のいずれか一項に記載のキオスク装置。The application file may include one or more of a telephone call, e-mail transmission and reception, teleconference, fax transmission, training session, information retrieval on a network, and web-based collaboration. The kiosk device according to any one of claims 1 to 17, which performs the function of (1). 前記入力/出力装置または周辺装置がプリンタを含む、前記アプリケーション・ファイルが前記プリンタを、受領書、勘定書、ウェブ・ページ、クーポン、チケット、パス、および書式のうちのいずれか1つを印刷するように構成する、請求項2に記載のキオスク装置。Wherein the input / output device or peripheral device includes a printer, the application file prints the printer, and any one of a receipt, a bill, a web page, a coupon, a ticket, a pass, and a form. 3. The kiosk device of claim 2, wherein the kiosk device is configured as follows. 前記入力/出力装置または周辺装置が、前記アプリケーション・ファイルによって公衆電話になるように構成されたマイクロフォン、スピーカ、および電話機のうちのいずれか1つまたは複数から選択される、請求項2に記載のキオスク装置。3. The input / output device or peripheral device of claim 2, wherein the input / output device or peripheral device is selected from any one or more of a microphone, a speaker, and a telephone configured to be a payphone by the application file. Kiosk device. 前記入力/出力装置または周辺装置が、前記アプリケーション・ファイルによってテレビ会議端末になるように構成されたマイクロフォン、スピーカ、およびテレビ会議システムから選択される、請求項2に記載のキオスク装置。3. The kiosk device according to claim 2, wherein the input / output device or peripheral device is selected from a microphone, a speaker, and a video conference system configured to be a video conference terminal by the application file. 前記入力/出力装置または周辺装置が、前記アプリケーション・ファイルによって、ユーザ、キオスク装置の周囲の眺め、および文書のうちのいずれか1つまたは複数の写真を撮影するように構成されたカメラから選択される、請求項2に記載のキオスク装置。The input / output device or peripheral device is selected by the application file from a camera configured to take a picture of any one or more of a user, a view around the kiosk device, and a document. 3. The kiosk device of claim 2, wherein 前記入力/出力装置または周辺装置が、記憶媒体に書き込む媒体書込装置を含み、前記アプリケーション・ファイルが前記媒体書込装置を、音楽、ソフトウェア、テキスト、グラフィクス、教材、およびマルチメディア情報のうちのいずれか1つを書き込む、請求項2に記載のキオスク装置。The input / output device or peripheral device includes a media writer for writing to a storage medium, and the application file stores the media writer for music, software, text, graphics, educational materials, and multimedia information. 3. The kiosk device according to claim 2, wherein any one is written. 前記入力/出力装置または周辺装置が、記録媒体の読取りが可能な媒体読取装置を含み、前記媒体読取装置が前記アプリケーション・ファイルにより、前記記録媒体上に記録された情報を入力するように制御される、請求項2に記載のキオスク装置。The input / output device or the peripheral device includes a medium reading device capable of reading a recording medium, and the medium reading device is controlled by the application file to input information recorded on the recording medium. 3. The kiosk device of claim 2, wherein ネットワークに接続され、少なくとも1つの入力/出力装置または周辺装置および付随するローカル・キオスクAPIを有するコンピュータを含むキオスク装置の制御方法であって、前記制御方法は、前記コンピュータに対して、
組込み構成要素ファイルと組込み制御関数とを含むハイパーリンクされたHTMLファイルを含んで構成され、アプリケーション・ファイルとして参照される構成セットへと前記ネットワークを介してブラウザ手段によりアクセスさせ、前記構成セットを受け取って前記コンピュータの格納手段に格納させるステップと、
コンピュータにおいて、前記アプリケーション・ファイルを解釈し、組込み制御関数の検出に応答して前記ブラウザ手段にブラウザ機構を組込み、プロセス間通信を使用してAPI機構を呼び出し、前記アプリケーション・ファイルに含まれる前記組込み制御関数を、プロセス間通信を使用してAPI機構へと渡すステップと、
前記API機構により前記ローカル・キオスクAPIを選択的に機能させ、前記複数の入力/出力装置または周辺装置を前記アプリケーション・ファイルに関連づけて駆動制御させるステップと
を実行させる方法。
A method for controlling a kiosk device that is connected to a network and includes a computer having at least one input / output device or peripheral device and an associated local kiosk API, the control method comprising:
Receiving a configuration set including a hyperlinked HTML file including a built-in component file and a built-in control function, and accessing the configuration set referred to as an application file through the network by the browser means; Storing in the storage means of the computer by
A computer that interprets the application file, embeds a browser mechanism in the browser means in response to detection of the embedded control function, calls an API mechanism using inter-process communication, and executes the embedded program included in the application file. Passing a control function to the API mechanism using inter-process communication;
Selectively functioning said local kiosk API by said API mechanism to drive and control said plurality of input / output devices or peripheral devices in association with said application file.
少なくとも1つの入力/出力装置または周辺装置と、
前記入力/出力装置または周辺装置を駆動するローカル・キオスクAPIを格納する手段と、
前記キオスク装置が実行するアプリケーションと関連づけられ、組込み構成要素ファイルと組込み制御関数とから構成されHTMLファイルを含むアプリケーション・ファイルである構成セットを、1つまたは複数のネットワーク接続を介して前記ネットワークからコンピュータを使用して取り出すブラウザ手段と、
ブラウザ機構とAPI機構と前記ブラウザ機構と前記API機構との間のプロセス間通信を可能とする手段とを含むキオスク固有制御手段とを含み、
前記コンピュータは、前記組込み制御関数の検出に応答して前記ブラウザ機構と前記API機構とを介して前記組込み制御関数によりローカル・キオスクAPIを選択的に起動させて前記ローカル・キオスクAPIにより前記入力/出力装置または周辺装置を制御して、前記コンピュータに対して前記アプリケーションを実行させる、
キオスク装置。
At least one input / output device or peripheral device;
Means for storing a local kiosk API for driving said input / output device or peripheral device;
A configuration set associated with an application executed by the kiosk device, the configuration set being an application file including an HTML file and including an embedded component file and an embedded control function is transferred from the network via one or more network connections to a computer. Browser means to retrieve using
A kiosk-specific control means including a browser mechanism, an API mechanism, and means for enabling inter-process communication between the browser mechanism and the API mechanism;
The computer selectively activates a local kiosk API by the built-in control function via the browser mechanism and the API mechanism in response to the detection of the built-in control function, and executes the input / output by the local kiosk API. Controlling an output device or a peripheral device to cause the computer to execute the application,
Kiosk device.
前記入力/出力装置または周辺装置が、プリンタと、媒体読取装置と、媒体記録器と、媒体ディスペンサと、キャッシュ・ディスペンサと、スキャナと、ディポーザと、電子ペンと、カード発行機と、勘定書印刷機と、プリンタと、発券機と、CRTと、キーボードと、タッチ・センシティブ・スクリーンと、カメラと、人間感知器と、電話機と、照明と、マイクロフォンと、スピーカと、CD−ROMプレーヤと、マウスと、メモリとのうちのいずれか1つまたは複数から選択される、請求項26に記載のキオスク装置。The input / output device or peripheral device is a printer, a media reader, a media recorder, a media dispenser, a cash dispenser, a scanner, a disposer, an electronic pen, a card issuing machine, and a bill printing device. Machine, printer, ticket machine, CRT, keyboard, touch-sensitive screen, camera, human detector, telephone, lighting, microphone, speaker, CD-ROM player, mouse 27. The kiosk device of claim 26, wherein the kiosk device is selected from any one or more of: 表示装置をさらに含み、前記取り出し手段が前記表示装置上に前記アプリケーションの一部としてウェブ・ページを提示する、請求項26に記載のキオスク装置。27. The kiosk device of claim 26, further comprising a display device, wherein the retrieval means presents a web page on the display device as part of the application. 前記ウェブ・ページが、融資申込書、個人情報報告書、申込書、納税申告書、ローン申込書、モーゲージ申込書、サービス要求、教育用書式、官公庁書式、購入要求書、預金入金票のうちのいずれか1つを含む書式を提示する、請求項28に記載のキオスク装置。The web page contains a loan application, a personal information report, an application, a tax return, a loan application, a mortgage application, a service request, an educational form, a government office form, a purchase request, and a deposit receipt. 29. The kiosk device of claim 28, wherein the kiosk device presents a form including any one of the following. 前記ウェブ・ページが、ハイパーリンクと、1つまたは複数の第2のアプリケーション・ファイルを要求するハイパーリンクと、アイコンと、メニューと、テキスト入力フィールドと、データ入力フィールドと、広告と、通知と、ニュース・ブロードキャストと、天気ブロードキャストと、一般情報のステートメントとのうちのいずれか1つまたは複数の視覚的表示機能を提供する、請求項28に記載のキオスク装置。The web page includes a hyperlink, a hyperlink requesting one or more second application files, an icon, a menu, a text entry field, a data entry field, an advertisement, a notification, 29. The kiosk device of claim 28, wherein the kiosk device provides a visual display function of one or more of a news broadcast, a weather broadcast, and a statement of general information. 前記組込み制御関数は、Java(登録商標)アプレットまたはActiveXまたはプラグイン制御を可能とし、前記アプリケーションのうちの1つまたは複数のアプリケーションが、選択機能とは独立して前記アプリケーション・ファイルのうちの1つまたは複数のアプリケーション・ファイルによって再構成される、請求項26に記載のキオスク装置。The built-in control function enables a Java ™ applet or ActiveX or plug-in control, wherein one or more of the applications is configured to execute one of the application files independently of a selection function. 27. The kiosk device of claim 26, wherein the kiosk device is reconfigured by one or more application files. 前記アプリケーションのうちの1つまたは複数のアプリケーションが選択可能とされ、前記アプリケーションは、前記アプリケーションに関連づけられた1つまたは複数の選択機能によって選択される、請求項26に記載のキオスク装置。27. The kiosk device of claim 26, wherein one or more of the applications is selectable, and wherein the application is selected by one or more selection functions associated with the application. 前記選択機能が、タッチ・スクリーン、アイコン、ハイパーテキスト・リンク、表示装置上のソフト・ボタン、センサ、ボタン、音声、および音声コントロールのうちの1つまたは複数から選択される、請求項32に記載のキオスク装置。33. The selection function is selected from one or more of a touch screen, an icon, a hypertext link, a soft button on a display, a sensor, a button, a voice, and a voice control. Kiosk equipment. 前記選択機能のうちの1つまたは複数の選択機能が料金を徴収して提供される、請求項32に記載のキオスク装置。33. The kiosk device of claim 32, wherein one or more of the selection functions is provided at a fee. 前記料金が、グラフィカル・ユーザ・インタフェース上の前記選択機能の場所、選択機能のサイズ、選択機能の表示時間の長さ、前記キオスクの場所、前記アプリケーションのうちの1つまたは複数のアプリケーション、および対象顧客のグループのうちのいずれか1つに依存する、請求項34に記載のキオスク装置。The fee is the location of the selected function on a graphical user interface, the size of the selected function, the length of time the selected function is displayed, the location of the kiosk, one or more of the applications, and the target 35. The kiosk device of claim 34, wherein the kiosk device relies on any one of a group of customers. 前記選択機能が前記キオスク装置の前記コンピュータの端末/表示装置に1つまたは複数の期間中にグラフィカル・ユーザ・インタフェースとして表示される、請求項32に記載のキオスク装置。33. The kiosk device of claim 32, wherein the selection function is displayed as a graphical user interface on one or more of the computer terminals / display devices of the kiosk device. 前記選択可能なアプリケーションが前記グラフィカル・ユーザ・インタフェースを前記ユーザの選好に従ってカスタマイズされるように編成する、請求項32に記載のキオスク装置。33. The kiosk device of claim 32, wherein the selectable application organizes the graphical user interface to be customized according to the preferences of the user. 前記アプリケーションが前記ネットワークに接続されたコンピュータを介して選択される、請求項32に記載のキオスク装置。33. The kiosk device of claim 32, wherein the application is selected via a computer connected to the network. 前記アプリケーションが、遠隔装置制御、遠隔メッセージ表示、ファイル転送、およびエージェント/クライアント協同のうちのいずれか1つの機能を含む、請求項32に記載のキオスク装置。33. The kiosk device of claim 32, wherein the application includes any one of remote device control, remote message display, file transfer, and agent / client cooperation. 前記コンピュータは、前記ローカル・キオスク機能のうちの1つまたは複数の動作状況を判断するシステム監視プログラムをさらに含む、請求項26に記載のキオスク装置。27. The kiosk device of claim 26, wherein the computer further comprises a system monitoring program that determines an operating status of one or more of the local kiosk functions. 前記システム監視プログラムにより与えられる前記動作状況を使用して、1つまたは複数の入力/出力装置または周辺装置に必要な保守、前記入力/出力装置または周辺装置の保守履歴、前記キオスク装置を構成するために使用するアプリケーション・ファイルと、ユーザに関するマーケティング情報とのうちのいずれか1つまたは複数を判断する、請求項40に記載のキオスク装置。The operation status provided by the system monitoring program is used to configure maintenance required for one or more input / output devices or peripheral devices, maintenance history of the input / output devices or peripheral devices, and the kiosk device. 41. The kiosk device of claim 40, wherein the kiosk device determines one or more of an application file to use for and marketing information about the user. 前記取り出し手段がシステム監視のためのアプリケーション・ファイルを受け取り、それぞれのローカル・キオスクAPIの動作状況を判断する、請求項40または41のいずれか一項に記載のキオスク装置。42. The kiosk device according to claim 40, wherein the retrieval unit receives an application file for system monitoring, and determines an operation status of each local kiosk API. 前記ネットワークが、インターネット、ワールド・ワイド・ウェブ、イントラネット、電話ネットワーク、ケーブル・ネットワーク、ISDNネットワーク、企業ネットワーク、行政ネットワーク、教育ネットワーク、および1つまたは複数の小売業者によって使用されるネットワークのうちの1つまたは複数のネットワークとすることができる、請求項26に記載のキオスク装置。The network is one of the Internet, the World Wide Web, an intranet, a telephone network, a cable network, an ISDN network, a corporate network, a government network, an education network, and a network used by one or more retailers. 27. The kiosk device of claim 26, which can be one or more networks. 前記HTMLファイルは、ゼロ個または1個以上のハイパーテキスト構成要素ファイルを含む、請求項26に記載のキオスク装置。27. The kiosk device of claim 26, wherein the HTML file includes zero or more hypertext component files. 前記アプリケーションが金融アプリケーションである、請求項26に記載のキオスク装置。27. The kiosk device of claim 26, wherein the application is a financial application. 前記金融アプリケーションが、ユーザへの金融情報提供、口座開設、現金支払い、勘定支払い、ローンの申込み、預金、モーゲージ支払い、金融に関する助言、固定資産取引、およびエージェントからの支援のうちのいずれか1つまたは複数の機能を含む、請求項45に記載のキオスク装置。The financial application provides one of financial information to a user, account opening, cash payment, account payment, loan application, deposit, mortgage payment, financial advice, fixed asset transaction, and assistance from an agent. 46. The kiosk device of claim 45, wherein the kiosk device includes a plurality of functions. 前記アプリケーションがユーザに合わせてカスタマイズされたカスタマイズ・アプリケーションである、請求項26に記載のキオスク装置。27. The kiosk device of claim 26, wherein the application is a customized application customized for a user. 前記アプリケーション・ファイルがインターネットへのアクセスを提供する機能を与える、請求項26に記載のキオスク装置。27. The kiosk device of claim 26, wherein the application file provides a function of providing access to the Internet. インターネットへの前記アクセスが、1つまたは複数の指定されたサーバを介して一人または複数の第2のユーザ間に通信リンクを提供する、請求項48に記載のキオスク装置。49. The kiosk device of claim 48, wherein said access to the Internet provides a communication link between one or more second users via one or more designated servers. 前記通信リンクが、音声、ビデオ、電子メール、データ、およびウェブ・ページ共用のうちのいずれか1つまたは複数を通信する、請求項49に記載のキオスク装置。50. The kiosk device of claim 49, wherein the communication link communicates one or more of voice, video, email, data, and web page sharing. 前記アプリケーションが通信アプリケーションである、請求項26に記載のキオスク装置。The kiosk device according to claim 26, wherein the application is a communication application. 前記通信アプリケーションが、電話呼出し、電子メール送受信、遠隔会議、ファクス伝送、トレーニング・セッション、前記ネットワーク上の情報検索、およびウェブ・ベースの協同のうちのいずれか1つまたは複数の機能を付与する、請求項51に記載のキオスク装置。The communication application provides one or more of the following functions: telephone calling, e-mail transmission / reception, teleconference, fax transmission, training session, information retrieval on the network, and web-based collaboration. The kiosk device according to claim 51. 前記アプリケーションがサービス・アプリケーションである、請求項26に記載のキオスク装置。27. The kiosk device of claim 26, wherein the application is a service application. 前記サービス・アプリケーションが、広告、サービス料金、およびサービス要求のうちのいずれか1つまたは複数の機能を含む、請求項53に記載のキオスク装置。54. The kiosk device of claim 53, wherein the service application includes any one or more of an advertisement, a service fee, and a service request. 前記アプリケーション・ファイルが有形媒体で情報を提供する機能を前記キオスク装置に対して付与する、請求項26に記載のキオスク装置。27. The kiosk device of claim 26, wherein the application file provides the kiosk device with the ability to provide information on a tangible medium. 前記アプリケーションが、前記表示装置を、スケジュール、メニュー、座席配置、地図、1つまたは複数のソフト・キー、書式、広告、および製品の画像のうちのいずれか1つまたは複数を含むマルチメディア情報を含むウェブ・ページを提示するように機能させる、請求項26に記載のキオスク装置。The application displays the display device with multimedia information including any one or more of schedules, menus, seating arrangements, maps, one or more soft keys, forms, advertisements, and product images. 27. The kiosk device of claim 26, wherein the kiosk device is operative to present a web page that includes the web page. 前記入力/出力装置または周辺装置がプリンタを含み、前記アプリケーションが、前記プリンタを、受領書、勘定書、ウェブ・ページ、クーポン、チケット、パス、および書式のうちのいずれか1つを印刷するように機能させる、請求項26に記載のキオスク装置。The input / output device or peripheral device includes a printer, and the application causes the printer to print any one of a receipt, a bill, a web page, a coupon, a ticket, a pass, and a form. 27. The kiosk device of claim 26, wherein the kiosk device functions. 前記入力/出力装置または周辺装置が、前記アプリケーション・ファイルによって公衆電話になるように構成されたマイクロフォン、スピーカ、および電話機を含む、請求項26に記載のキオスク装置。27. The kiosk device of claim 26, wherein the input / output device or peripheral device comprises a microphone, speaker, and telephone configured to be a payphone by the application file. 前記入力/出力装置または周辺装置が、前記アプリケーション・ファイルによってテレビ会議端末になるように構成されたマイクロフォン、スピーカ、およびテレビ会議システムを含む、請求項26に記載のキオスク装置。27. The kiosk device according to claim 26, wherein the input / output device or peripheral device includes a microphone, a speaker, and a video conference system configured to be a video conference terminal by the application file. 前記入力/出力装置または周辺装置が、前記アプリケーション・ファイルによって、ユーザ、キオスク装置の周囲の眺め、および文書のうちのいずれか1つまたは複数の写真を撮影するように構成されたカメラを含む、請求項26に記載のキオスク装置。The input / output device or peripheral device includes a camera configured to take a picture of any one or more of a user, a kiosk device, and a document according to the application file; The kiosk device according to claim 26. 前記入力/出力装置または周辺装置が記憶媒体に書き込む媒体書込装置を含み、前記アプリケーション・ファイルが前記媒体書込装置を、音楽、ソフトウェア、テキスト、グラフィクス、教材、およびマルチメディア情報のうちのいずれか1つを書き込む機能を与える、請求項26に記載のキオスク装置。The input / output device or peripheral device includes a media writer for writing to a storage medium, and the application file stores the media writer on any of music, software, text, graphics, educational materials, and multimedia information. 27. The kiosk device of claim 26, providing a function of writing one. 前記入力/出力装置または周辺装置が、記録媒体の読取りが可能な媒体読取装置を含み、前記媒体読取装置が前記アプリケーション・ファイルによって、前記記録媒体上に記録された情報を入力する機能が付与される、請求項26に記載のキオスク装置。The input / output device or the peripheral device includes a medium reading device capable of reading a recording medium, and the medium reading device is provided with a function of inputting information recorded on the recording medium by the application file. 27. The kiosk device according to claim 26. 前記記録媒体が、電子カード上のメモリ、コンピュータ・ディスケット、磁気テープ、CD−ROM、およびメモリ記憶装置のうちのいずれか1つである、請求項62に記載のキオスク装置。63. The kiosk device of claim 62, wherein the recording medium is one of a memory on an electronic card, a computer diskette, a magnetic tape, a CD-ROM, and a memory storage device.
JP2003150102A 1997-03-13 2003-05-28 Kiosk system connected with computer network and method for constituting kiosk system Pending JP2004030640A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US4041497P 1997-03-13 1997-03-13
US97421697A 1997-11-19 1997-11-19
US08/974,214 US6195694B1 (en) 1997-03-13 1997-11-19 Server for reconfiguring control of a subset of devices on one or more kiosks

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP10539335A Division JP2000510626A (en) 1997-03-13 1998-03-02 Kiosk and server connected to computer network

Publications (1)

Publication Number Publication Date
JP2004030640A true JP2004030640A (en) 2004-01-29

Family

ID=27365717

Family Applications (3)

Application Number Title Priority Date Filing Date
JP10539335A Pending JP2000510626A (en) 1997-03-13 1998-03-02 Kiosk and server connected to computer network
JP2003150102A Pending JP2004030640A (en) 1997-03-13 2003-05-28 Kiosk system connected with computer network and method for constituting kiosk system
JP2003150123A Pending JP2004005688A (en) 1997-03-13 2003-05-28 Server and server operation method for kiosk device connected to computer network

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP10539335A Pending JP2000510626A (en) 1997-03-13 1998-03-02 Kiosk and server connected to computer network

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2003150123A Pending JP2004005688A (en) 1997-03-13 2003-05-28 Server and server operation method for kiosk device connected to computer network

Country Status (9)

Country Link
EP (1) EP0966712A1 (en)
JP (3) JP2000510626A (en)
KR (1) KR100368353B1 (en)
CN (1) CN1124010C (en)
AU (1) AU6629998A (en)
CA (1) CA2281725A1 (en)
IL (1) IL131357A (en)
PL (1) PL335521A1 (en)
WO (1) WO1998040826A2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016078294A (en) * 2014-10-15 2016-05-16 セイコーエプソン株式会社 Printer, printing system and control method of printer
US10250761B2 (en) 2005-05-20 2019-04-02 Ricoh Company, Ltd. Image handling apparatus, image processing system, image process controlling method, and image process controlling program product

Families Citing this family (116)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0866611A1 (en) * 1997-03-21 1998-09-23 CANAL+ Société Anonyme Broadcast receiving system comprising a computer and a decoder
US6141684A (en) * 1997-09-12 2000-10-31 Nortel Networks Limited Multimedia public communication services distribution method and apparatus with distribution of configuration files
WO1999022508A1 (en) * 1997-10-24 1999-05-06 Mannesmann Ag Communication system, especially for processing and/or transmitting data and/or signals, method for using such a communication system and telecommunication booth
EP1038233A4 (en) * 1997-12-02 2001-11-07 Technologies Inc Cash MULTI-TRANSACTIONAL NETWORK ARCHITECTURE
ES2149697B1 (en) * 1998-07-14 2001-05-01 Garcia Jon Urresti TELE-SURVEY SYSTEM.
CA2291015C (en) * 1998-07-20 2005-03-22 Usa Technologies, Inc. Universal interactive advertising & payment system for public access electronic commerce & business related products and services
US6606602B1 (en) 1998-07-20 2003-08-12 Usa Technologies, Inc. Vending machine control system having access to the internet for the purposes of transacting e-mail, e-commerce, and e-business, and for conducting vending transactions
US6601039B1 (en) 1998-07-20 2003-07-29 Usa Technologies, Inc. Gas pump control system having access to the internet for the purposes of transacting e-mail, e-commerce, and e-business, and for conducting vending transactions
US6604086B1 (en) 1998-07-20 2003-08-05 Usa Technologies, Inc. Electronic commerce terminal connected to a vending machine operable as a telephone
US6615183B1 (en) 1998-07-20 2003-09-02 Usa Technologies, Inc. Method of warehousing user data entered at an electronic commerce terminal
US6601038B1 (en) 1998-07-20 2003-07-29 Usa Technologies, Inc. Delivery of goods and services resultant from an electronic commerce transaction by way of a pack and ship type company
US6806977B1 (en) 1998-12-31 2004-10-19 Automated Business Companies Multiple integrated machine system
FI114064B (en) * 1999-01-08 2004-07-30 Telia Ab Controlling Internet access to sponsors
EP1020822A1 (en) * 1999-01-13 2000-07-19 Sanyo Electric Co. Ltd Control apparatus for vending machine
GB9901301D0 (en) * 1999-01-21 1999-03-10 Ncr Int Inc Self-service terminal network
JP3408984B2 (en) 1999-01-28 2003-05-19 パナソニック コミュニケーションズ株式会社 Network facsimile machine
BR0008286A (en) * 1999-02-17 2001-11-20 Diebold Inc Method and system for connecting services to an automated bank transaction machine
CA2370589C (en) * 1999-05-03 2013-04-09 Streetspace, Inc. Method and system for providing personalized online services and advertisements in public spaces
AU4661500A (en) * 1999-06-10 2001-01-02 Cacheflow, Inc. Method and apparatus for dynamic proxy reflecting of streaming content
US6655284B1 (en) 1999-06-28 2003-12-02 Casio Computer Co., Ltd. Customer terminal apparatus and information distribution server
TW473696B (en) 1999-06-29 2002-01-21 Casio Computer Co Ltd Printing apparatus and printing method
FR2796238B1 (en) * 1999-07-06 2001-10-12 France Telecom PUBLIC TERMINAL FOR ACCESS TO A COMPUTER NETWORK
KR100351664B1 (en) * 1999-07-14 2002-09-11 가시오게산키 가부시키가이샤 Customer terminal apparatus, its system, and recording medium which records that program
US7185333B1 (en) * 1999-10-28 2007-02-27 Yahoo! Inc. Method and system for managing the resources of a toolbar application program
EP1096444A3 (en) * 1999-11-01 2003-07-23 Citicorp Development Center, Inc. Method and system for configuration of self-service financial transaction terminals for a common software release
WO2001037156A1 (en) * 1999-11-15 2001-05-25 Feals, Incorporated Company Real estate affairs support system and computer, and real estate business support method
JP2001202090A (en) * 1999-11-17 2001-07-27 Ricoh Co Ltd Visitor reception method and apparatus, and recording medium recording visitor reception program
US6912528B2 (en) * 2000-01-18 2005-06-28 Gregg S. Homer Rechargeable media distribution and play system
KR100699628B1 (en) * 2000-02-21 2007-03-23 엘지엔시스(주) Unmanned terminal providing Internet service and its Internet service providing method
EP1137234A1 (en) * 2000-03-24 2001-09-26 BRITISH TELECOMMUNICATIONS public limited company Internet access arrangement
US7009626B2 (en) * 2000-04-14 2006-03-07 Picsel Technologies Limited Systems and methods for generating visual representations of graphical data and digital document processing
ES2165319B1 (en) * 2000-04-26 2003-06-16 Segarra Antonio Lopez PUBLIC COMMUNICATION CABIN WITH INTERNET ACCESS FOR RECORDING AND SENDING OF AUDIO AND VIDEO MESSAGES.
WO2001099061A2 (en) * 2000-06-19 2001-12-27 Clark James R Retail entertainment/applications distribution system
GB2366654A (en) * 2000-09-12 2002-03-13 Appliance Studio Ltd Display with Internet connectivity
IT1316045B1 (en) * 2000-09-22 2003-03-26 Guislaine Freda STAND-ALONE MACHINE FOR SELLING COMPACT DISC CONTAINING BRANIMUSICAL CHOICES SELECTED BY THE USER AND SERVICES IN GENERAL.
KR20020034758A (en) * 2000-11-03 2002-05-09 박기석 Multimidia visitor's register
FR2816784B1 (en) * 2000-11-14 2003-02-07 Schlumberger Systems & Service METHOD FOR TRANSFERRING FILES BETWEEN SERVICE DEVICES AND A REMOTE MANAGEMENT SERVER
ES2169004B1 (en) * 2000-11-27 2003-11-16 Hergos Sist S Digitales Y Ergo ERGONOMIC TOURIST-THEMATIC INFORMATION POINT.
US7636757B2 (en) * 2000-12-15 2009-12-22 Canon Kabushiki Kaisha Printing over the internet
WO2002057975A1 (en) * 2001-01-19 2002-07-25 Fujitsu Limited Multifunctional information terminal
GB0101846D0 (en) 2001-01-24 2001-03-07 Ncr Int Inc Self-service terminal
KR100425555B1 (en) * 2001-02-12 2004-04-03 박종대 Method for advertizing using moving picture on kiosk
KR20020068649A (en) * 2001-02-21 2002-08-28 (주)싸이버뱅크 Wireless based thin client service system and method for transmission data decrease
JP2002297346A (en) * 2001-03-29 2002-10-11 Ricoh Co Ltd Sbc-adadtive printer output system and method, program for realizing the method, and recording medium for the recording program
US7280087B2 (en) 2001-04-23 2007-10-09 Gilbarco Inc. Multiple browser interface
US20020174206A1 (en) * 2001-05-21 2002-11-21 Moyer Alan L. Web-based file manipulating system
WO2003005146A2 (en) * 2001-07-06 2003-01-16 Giulio Dorrucci Information and advertisement system
GB2377595B (en) * 2001-07-06 2004-12-15 Livedevices Ltd Improvements relating to reduction of resource usage in TCP/IP Implementation
CN1338695A (en) * 2001-07-17 2002-03-06 天津南开戈德集团有限公司 Self-service network system and its operation method
US20030041030A1 (en) * 2001-08-14 2003-02-27 Carl Mansfield System and method for a home network telephone universal phonebook
JP2005507585A (en) * 2001-10-17 2005-03-17 プライムセレクションズ.コム・インコーポレイテッド Digital interactive network equipment and system
JP2003132235A (en) * 2001-10-23 2003-05-09 Kanji Murakami Structure of shopping store, and information exchange device and method
JP2003141020A (en) * 2001-10-31 2003-05-16 Toshiba Tec Corp Information storage output system and information storage output service
KR100469083B1 (en) * 2002-02-19 2005-02-02 주식회사 코베콤 System and Method for providing service in wireless network environment using customer relation management
EP1493247B1 (en) 2002-04-10 2007-06-20 Lg Electronics Inc. Method for controlling home automation system
ES2197815B1 (en) * 2002-05-17 2005-03-01 Manuel Becerril Gonzalez De La Mata SYSTEM OF DEVICES FOR ACCESS TO ADMINISTRATIONS, CLARIFICATION OF PROBLEMS AND RESOLUTION OF ACCESS TO INFORMATIC NETWORKS WITHOUT INFORMATIC KNOWLEDGE.
KR20030095571A (en) * 2002-06-12 2003-12-24 주식회사 코리아엠피에스 Method for providing multi-service and system therefor
KR100474912B1 (en) 2002-07-24 2005-03-10 엘지전자 주식회사 Dual internet protocol phone, communicating method using the same
KR20040033419A (en) * 2002-10-14 2004-04-28 (주)밸류게이츠인터내셔날 A/V switching method for high quality MPEG kiosk
DE10348094A1 (en) * 2003-10-16 2005-05-19 Deutsche Telekom Ag Multifunctional machine
KR100636143B1 (en) * 2004-06-02 2006-10-18 삼성전자주식회사 Automatic setting method and device of wireless network device
US8165900B2 (en) 2004-08-09 2012-04-24 Epic Systems Corporation Patient check-in/scheduling kiosk
EP1736947A1 (en) * 2005-06-09 2006-12-27 NCR International, Inc. Personalized security method for a self-service checkout system
US7839521B2 (en) 2005-08-09 2010-11-23 Global Print Systems, Inc. Methods and systems for print job management and printing
US7668974B2 (en) * 2005-11-01 2010-02-23 International Business Machines Corporation Method and system for local provisioning of device drivers for portable storage devices
US8345703B2 (en) 2006-10-03 2013-01-01 Alcatel Lucent Method and apparatus for reconfiguring IC architectures
US20080168402A1 (en) 2007-01-07 2008-07-10 Christopher Blumenberg Application Programming Interfaces for Gesture Operations
US8768720B2 (en) 2007-04-12 2014-07-01 Epic Systems Corporation Location limited check-in kiosk method and apparatus
JP2008305366A (en) * 2007-06-08 2008-12-18 Masazumi Fukuda Method for allowing any unspecified large number of general users (customers) to develop/resister/run (use) program at the same time any time
TR200903668T1 (en) * 2007-07-17 2009-08-21 Murat Özbi̇len Mümtaz "Interactive branch cab system."
WO2009025194A1 (en) * 2007-08-22 2009-02-26 Epos Card Co., Ltd. Ic card instant issue system
WO2009048613A1 (en) 2007-10-10 2009-04-16 Gilbarco Inc. System and method for controlling secure and non-secure content at dispenser or retail device
WO2009084220A1 (en) * 2007-12-28 2009-07-09 Atm Japan, Ltd. Automatic transaction device, automatic transaction device control program, recording medium and automatic transaction device control method
KR100983881B1 (en) * 2008-02-29 2010-09-27 (주)솔루젠 Network-based printing automation system
US8416196B2 (en) * 2008-03-04 2013-04-09 Apple Inc. Touch event model programming interface
US8645827B2 (en) 2008-03-04 2014-02-04 Apple Inc. Touch event model
US8566045B2 (en) 2009-03-16 2013-10-22 Apple Inc. Event recognition
US9684521B2 (en) 2010-01-26 2017-06-20 Apple Inc. Systems having discrete and continuous gesture recognizers
WO2010130038A1 (en) * 2009-05-14 2010-11-18 Joseph Denny Interactive multimedia advertising system
GB0909277D0 (en) 2009-05-29 2009-07-15 Design Multimedia Ltd I A control system and method for a user terminal
US8687777B1 (en) 2010-02-03 2014-04-01 Tal Lavian Systems and methods for visual presentation and selection of IVR menu
US8625756B1 (en) 2010-02-03 2014-01-07 Tal Lavian Systems and methods for visual presentation and selection of IVR menu
US8879698B1 (en) 2010-02-03 2014-11-04 Tal Lavian Device and method for providing enhanced telephony
US9001819B1 (en) 2010-02-18 2015-04-07 Zvi Or-Bach Systems and methods for visual presentation and selection of IVR menu
US8553859B1 (en) 2010-02-03 2013-10-08 Tal Lavian Device and method for providing enhanced telephony
US8548131B1 (en) 2010-02-03 2013-10-01 Tal Lavian Systems and methods for communicating with an interactive voice response system
US8594280B1 (en) 2010-02-03 2013-11-26 Zvi Or-Bach Systems and methods for visual presentation and selection of IVR menu
US8548135B1 (en) 2010-02-03 2013-10-01 Tal Lavian Systems and methods for visual presentation and selection of IVR menu
US8681951B1 (en) 2010-02-03 2014-03-25 Tal Lavian Systems and methods for visual presentation and selection of IVR menu
US8903073B2 (en) 2011-07-20 2014-12-02 Zvi Or-Bach Systems and methods for visual presentation and selection of IVR menu
US8537989B1 (en) 2010-02-03 2013-09-17 Tal Lavian Device and method for providing enhanced telephony
US8572303B2 (en) 2010-02-03 2013-10-29 Tal Lavian Portable universal communication device
JP5804678B2 (en) * 2010-07-16 2015-11-04 キヤノン株式会社 Information processing apparatus, Web browser control method, and program
JP2012190298A (en) * 2011-03-11 2012-10-04 Sony Corp Electronic apparatus, control method and program for electronic apparatus, and storage medium
CN102289895A (en) * 2011-06-21 2011-12-21 上海北大方正科技电脑系统有限公司 Terminal and method for processing network note
EP2570923A1 (en) * 2011-09-14 2013-03-20 Alcatel Lucent Kiosk system for providing information and services
KR101183365B1 (en) 2011-10-07 2012-09-14 한화에스앤씨주식회사 Apparatus for controlling kiosk using short range wireless communication
CN103282888B (en) * 2011-12-27 2017-03-08 华为技术有限公司 Data processing method, image processor GPU and primary nodal point equipment
US8731148B1 (en) 2012-03-02 2014-05-20 Tal Lavian Systems and methods for visual presentation and selection of IVR menu
US8867708B1 (en) 2012-03-02 2014-10-21 Tal Lavian Systems and methods for visual presentation and selection of IVR menu
CN102830947A (en) * 2012-08-13 2012-12-19 南京莱斯信息技术股份有限公司 Report printing control implemented based on report printing template format
US9882963B2 (en) * 2012-11-05 2018-01-30 Afl Telecommunications Llc Distributed test system architecture
US9733716B2 (en) 2013-06-09 2017-08-15 Apple Inc. Proxy gesture recognizer
CN103499952A (en) * 2013-09-13 2014-01-08 广州恩次元信息科技有限公司 Self-service terminal remote intelligent management system
KR20160129499A (en) 2015-04-30 2016-11-09 뉴21커뮤니티(주) Kiosk of sharing screen with mobile terminal device, and screen sharing system of kiosk
JP6493130B2 (en) 2015-09-30 2019-04-03 富士通株式会社 Information processing apparatus, method, and program
KR102402154B1 (en) 2018-04-30 2022-05-25 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. Service Kiosk Access
KR102274453B1 (en) * 2020-05-15 2021-07-07 주식회사 블랙펄 Installation place customized total kiosk service providing system
US12230406B2 (en) 2020-07-13 2025-02-18 Vignet Incorporated Increasing diversity and engagement in clinical trails through digital tools for health data collection
US12211594B1 (en) * 2021-02-25 2025-01-28 Vignet Incorporated Machine learning to predict patient engagement and retention in clinical trials and increase compliance with study aims
US11789837B1 (en) 2021-02-03 2023-10-17 Vignet Incorporated Adaptive data collection in clinical trials to increase the likelihood of on-time completion of a trial
US12248383B1 (en) 2021-02-25 2025-03-11 Vignet Incorporated Digital systems for managing health data collection in decentralized clinical trials
US12248384B1 (en) 2021-02-25 2025-03-11 Vignet Incorporated Accelerated clinical trials using patient-centered, adaptive digital health tools
KR102393609B1 (en) * 2022-02-28 2022-05-02 지철 A kiosk service system that provides a customized screen reflecting the user's preference according to the installation location
JP2024143187A (en) * 2023-03-30 2024-10-11 グローリー株式会社 Media processing device, media processing system, media processing method, and media processing program
KR102875036B1 (en) * 2023-11-27 2025-10-22 최유진 Kiosk devices and systems for the information vulnerable

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5572572A (en) * 1988-05-05 1996-11-05 Transaction Technology, Inc. Computer and telephone apparatus with user friendly interface and enhanced integrity features

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10250761B2 (en) 2005-05-20 2019-04-02 Ricoh Company, Ltd. Image handling apparatus, image processing system, image process controlling method, and image process controlling program product
US10694051B2 (en) 2005-05-20 2020-06-23 Ricoh Company, Ltd. Image handling apparatus for inputting scan settings for a scanner
JP2016078294A (en) * 2014-10-15 2016-05-16 セイコーエプソン株式会社 Printer, printing system and control method of printer

Also Published As

Publication number Publication date
CA2281725A1 (en) 1998-09-17
WO1998040826A2 (en) 1998-09-17
CN1250567A (en) 2000-04-12
WO1998040826A3 (en) 1998-12-23
JP2004005688A (en) 2004-01-08
EP0966712A1 (en) 1999-12-29
KR100368353B1 (en) 2003-01-24
JP2000510626A (en) 2000-08-15
IL131357A0 (en) 2001-01-28
AU6629998A (en) 1998-09-29
KR20000075844A (en) 2000-12-26
IL131357A (en) 2003-07-06
PL335521A1 (en) 2000-04-25
CN1124010C (en) 2003-10-08

Similar Documents

Publication Publication Date Title
KR100368353B1 (en) Kiosk and server connected to computer network
US6195694B1 (en) Server for reconfiguring control of a subset of devices on one or more kiosks
US7739144B2 (en) Self-service terminal
US9807200B2 (en) System and method providing user interactivity across a network
US7685537B2 (en) Computer interface method and apparatus with portable network organization system and targeted advertising
US6362840B1 (en) Method and system for graphic display of link actions
CZ20031172A3 (en) System and method for monitoring a plurality of financial service terminals with document-controlled interface
CN100458789C (en) Method for exchanging portlet configuration data and portal
CZ20031173A3 (en) System and method for providing safety to financial service terminals with document-controlled interface
US6988249B1 (en) Presentation service architectures for netcentric computing systems
KR100952089B1 (en) Method and system for scheduling trade lists in network-based trading facilities
US7113301B2 (en) System and method for automated access of a network page
MXPA99008367A (en) Kiosk and server connected to computer network
CZ319299A3 (en) Kiosk and server connected to computer network
HUP0000799A2 (en) Kiosk and server connected to computer network
AU2007219989A1 (en) Customizable kiosk software

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060131

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20060222

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060627