JP2015001784A - 情報処理システム、情報処理装置、及び情報処理プログラム - Google Patents

情報処理システム、情報処理装置、及び情報処理プログラム Download PDF

Info

Publication number
JP2015001784A
JP2015001784A JP2013124989A JP2013124989A JP2015001784A JP 2015001784 A JP2015001784 A JP 2015001784A JP 2013124989 A JP2013124989 A JP 2013124989A JP 2013124989 A JP2013124989 A JP 2013124989A JP 2015001784 A JP2015001784 A JP 2015001784A
Authority
JP
Japan
Prior art keywords
service
request
unit
home
terminal
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.)
Ceased
Application number
JP2013124989A
Other languages
English (en)
Inventor
西口 直樹
Naoki Nishiguchi
直樹 西口
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2013124989A priority Critical patent/JP2015001784A/ja
Priority to US14/256,318 priority patent/US20140372528A1/en
Publication of JP2015001784A publication Critical patent/JP2015001784A/ja
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】適切なサービス提供を実現する。【解決手段】第1の端末からネットワーク上の1以上のコンピュータを介して第2の端末の処理を実行する情報処理システムにおいて、前記第2の端末は、前記第1の端末からの依頼を前記コンピュータから取得し、取得した前記依頼に対応する処理シーケンスを構築し、構築した前記処理シーケンスに対応する処理結果を前記コンピュータに出力するアクセス代行部と、前記処理シーケンスに対応する処理を実行する実行部とを有する。【選択図】図1

Description

本発明は、情報処理システム、情報処理装置、及び情報処理プログラムに関する。
インターネット等の通信ネットワーク上に存在するコンピュータ資源を利用する形態としてクラウドコンピューティング(以下、「クラウド」を略称する)がある。クラウドとは、例えば契約により処理の委託等を行うことで、1又は複数の情報処理装置(コンピュータ)を用いて目的の処理を実行するシステムである。
また、クラウドは、複数の端末からのアクセスが可能であり、ファイル等をクラウドに置き、様々な端末からアクセス可能とすることで、情報を共有化するクラウドサービスが普及してきている。
しかしながら、プライベートな情報をクラウド上に置くことで、プライバシーやセキュリティの観点から抵抗を抱くユーザが少なくない。そこで、例えば外部から他人が直接アクセスできない端末(以下、「宅内端末」という)に情報を置き、クラウドを経由して宅内端末へアクセスするというサービスが存在する(例えば、特許文献1〜3参照)。
特開2009−245328号公報 特開2002−141953号公報 特開2000−148642号公報
しかしながら、例えば新たなサービスを宅内端末に追加した場合には、宅外から使用可能とするためにクラウド側や宅内端末等に修正が必要となる。例えば、宅内サービスは、サービスを依頼する端末(以下、「依頼端末」という)が宅内にある場合には、宅内端末に直接アクセスして蓄積された情報を利用できる。一方、依頼端末が宅外にある場合には、クラウドから直接宅内サービスをアクセスすることはできず、クラウドと宅内サービス間の仲介を行うサービスを専用に用意しなければならない。また、クラウド側にも、新たな宅内サービス用の処理を受け付けるサービスや、その処理を宅内端末に依頼する手法が必要となる。
更に、宅内サービスの結果を依頼端末に通知するためのサービスも必要となる。そして、依頼端末についても、宅内サービスへのアクセスの仕方と、宅外からの利用時のアクセスの仕方が異なるのであれば、宅外用のアクセスを可能にするアプリケーション(以下、単に「アプリ」と略称する)が必要となる。このように、宅内サービスを宅外から利用可能とするためには、多くの箇所に修正が必要となり容易に適切なサービスを提供することができない。
1つの側面では、本発明は、適切なサービス提供を実現することを目的とする。
一態様における情報処理システムは、第1の端末からネットワーク上の1以上のコンピュータを介して第2の端末の処理を実行する情報処理システムにおいて、前記第2の端末は、前記第1の端末からの依頼を前記コンピュータから取得し、取得した前記依頼に対応する処理シーケンスを構築し、構築した前記処理シーケンスに対応する処理結果を前記コンピュータに出力するアクセス代行部と、前記処理シーケンスに対応する処理を実行する実行部とを有する。
適切なサービス提供を実現することができる。
情報処理システムの構成例を示す図である。 依頼端末のハードウェア構成例を示す図である。 宅内端末のハードウェア構成例を示す図である。 宅内利用時のサービス提供例を示すシーケンス図である。 ネットワーク監視部の処理の一例を示すフローチャートである。 ネットワーク監視におけるデータ例を示す図である。 Pushクライアントの処理の一例を示すフローチャートである。 Pushサービスの処理の一例を示すフローチャートである。 処理受付部の処理の一例を示すフローチャートである。 宅内利用時のデータ例を示す図である。 宅外利用時のサービス提供例を示すシーケンス図である。 クラウドPushクライアントの処理の一例を示すフローチャートである。 宅内Pushクライアントの接続制御処理の一例を示すフローチャートである。 作成したクライアントの処理の一例を示すフローチャートである。 アクセス中継部の処理の一例を示すフローチャートである。 S167の処理の一例を示すフローチャートである。 シーケンスとレスポンスの一例を示す図である。 サービス構築部の処理の一例を示すフローチャートである。 S195の処理の一例を示すフローチャートである。 サービス利用シーケンスの一例を示す図である。 構築サービスインスタンスの一例を示す図である。 クラウドPushサービスの処理の一例を示すフローチャートである。 宅内Pushサービスの処理の一例を示すフローチャートである。 クラウド処理受付部の処理の一例を示すフローチャートである。 サービス登録部の処理の一例を示すフローチャートである。 登録サービスのデータ例を示す図である。 サービス実行部の処理の一例を示すフローチャートである。 リクエストのデータ例を示す図である。 サービス利用時のデータの具体例を示す図である。 サービス利用時の依頼端末の画面例を示す図である。
以下、添付図面を参照しながら実施例について詳細に説明する。
<情報処理システムの構成例>
図1は、情報処理システムの構成例を示す図である。図1に示す情報処理システム10は、依頼端末(第1の端末)11と、情報処理装置の一例である宅内端末(第2の端末)12と、クラウド13とを有する。なお、図1の例に示す情報処理システム10は、宅内端末12が提供するサービスをクラウド13経由で依頼端末11が利用するシステム(ホームクラウドシステム)である。図1の例において、依頼端末11と、宅内端末12と、クラウド13とは、例えばインターネットやLocal Area Network(LAN)等の通信ネットワーク14により、データの送受信が可能な状態で接続されている。
依頼端末11は、宅内端末12による宅内サービス等を利用する端末である。なお、図1の例では、複数の依頼端末11−1,11−2を示しているが、数についてはこれに限定されるものではない。図1の例において、依頼端末11−1は、宅内エリア15内にある依頼端末を示している。宅内エリア15内では、依頼端末11−1は、クラウド13を介さず直接宅内端末12と通信を行うことができ、宅内端末12が実行するサービス(以下、「宅内サービス」という)を利用することができる。宅内サービスとは、例えば他の端末等からアクセスさせたくないプライベートな情報を用いたサービス等であるが、これに限定されるものではない。
依頼端末11−1は、宅内エリア15内で宅内サービスを利用する場合に、例えば依頼端末11−1と宅内端末12とにおける赤外線通信を用いることができる。また、依頼端末11−1は、例えばWi−Fi(登録商標)、Bluetooth(登録商標)等に対応する中継機器(例えば、アクセスポイント等)を経由した近距離通信等を用いることができる。
また、依頼端末11−2は、宅内エリア15外(以下、「宅外エリア」という)で、クラウド13を経由して宅内端末12による宅内サービスを利用する端末である。
依頼端末11は、例えばタブレット端末やスマートフォン、携帯電話等の移動可能な通信端末等である。したがって、1台の依頼端末11は、移動により依頼端末11−1にも依頼端末11−2にもなり得る。
宅内端末12は、依頼端末11に対して宅内サービスを提供する端末である。宅内端末12は、例えば権限のない第三者(他人)がアクセスすることができない端末であり、例えばPersonal Computer(PC)やサーバ等からなるが、これに限定されるものではない。例えば、宅内端末12は、ユーザの家に設置されたプライベートPCでもよく、また企業内で社員のみが使用可能な企業内サーバ等でもよい。
クラウド13は、例えば通信ネットワーク14上に構成される1以上の情報処理装置(コンピュータ)等である。クラウド13は、例えば図1に示す依頼端末11−2のように、宅外エリアから宅内サービスを利用する際に、依頼端末11−2と宅内端末12との中継を行う。通信ネットワーク14は、無線でも有線でもよく、これらを組み合わせたものでもよい。
本実施形態において、情報処理システム10は、宅内端末12における宅内サービスへのアクセスを代行する機能を有し、宅外エリアからのアクセス時には、アクセス代行が宅内サービスへのアクセスを行う。また、情報処理システム10は、アクセス代行によるアクセス結果に基づいてクラウド13上に宅内サービスを再現する。これにより、宅外エリアにある依頼端末11−2からクラウド13上のサービスを利用して宅内サービスを利用することができる。
なお、今までの宅内サービスでは、クラウド13及び宅内端末12に対して、宅内サービス専用のモジュールを追加する必要があったが、本実施形態では、宅内端末12に宅内サービスのアクセスを代行するためのアクセスシーケンスを登録するだけでよい。本実施形態では、宅内端末12の宅内サービスをインストールすることに加えて、サービス利用シーケンスを登録することで、宅内だけでなく宅外からもサービスを利用できるようになる。更に、本実施形態では、宅内端末12内に蓄積された全ての情報をクラウド13上に再現するものではなく、依頼端末11から依頼のあったもののみを対象にしているため、セキュリティを向上させた適切なサービス提供を実現することができる。
次に、上述した依頼端末11、宅内端末12、及びクラウド13のそれぞれの機能構成例について図を用いて説明する。
<依頼端末11の機能構成例>
図1に示す依頼端末11は、ネットワーク監視部21と、アクセス部22と、サービス取得部の一例としてのPushクライアント23とを有する。
ネットワーク監視部21は、例えばネットワークの接続状態を常時監視し、接続状態が変更された場合に、その接続状態が宅内であるか宅外であるかを判定して、判定結果に基づき接続先を決定する。また、ネットワーク監視部21は、アクセス部22やPushクライアント23から接続先を要求された場合に、決定した接続先の情報を返す。また、ネットワーク監視部21は、例えばGlobal Positioning System(GPS)等により位置情報を取得する機能を有し、取得した現在の位置情報から宅内であるか宅外であるかを判定して、判定結果に基づき接続先を決定してもよい。
アクセス部22は、後述するクラウド13のクラウド処理受付部52に対して、又は宅内端末12の処理受付部32に対して、処理依頼を行う。なお、接続先の情報は、ネットワーク監視部21から取得する。
また、アクセス部22は、Pushクライアント23からのアクセス許可通知を受けて、宅内端末12又はクラウド13に対して宅内サービスの利用を行う。例えば、依頼端末11が宅内エリア15にある場合には、宅内端末12に直接アクセスを行い、依頼端末11が宅外エリアにある場合には、クラウド13にアクセスを行う。アクセス部22における上述した各処理は、例えば所定のアプリケーション(アクセスアプリ)を用いて実現することができるが、これに限定されるものではない。
Pushクライアント23は、例えば依頼先からPush配信等によりサービスを取得する。Pushクライアント23は、依頼端末11が宅内エリア15内にいる場合に、宅内端末12から宅内サービスの提供を受け、また宅外にいる場合にはクラウド13から宅内サービスの提供を受ける。また、Pushクライアント23は、所定の通信が確立した場合には、アクセス部22に対してアクセス許可通知を行う。
<宅内端末12の機能構成例>
図1に示す宅内端末12は、サービス提供部の一例としてのPushサービス31と、処理受付部32と、実行部の一例としての宅内サービス実行部33と、アクセス代行部34とを有する。
宅内端末12は、宅内エリア15にある依頼端末11−1に対して、例えばPushサービス31、処理受付部32、及び宅内サービス実行部33を用いて宅内サービスを提供する。また、宅内端末12は、宅外にある依頼端末11−2に対して、Pushサービス31、処理受付部32、宅内サービス実行部33、及びアクセス代行部34を用いてクラウド13を介した宅内サービスを提供する。
Pushサービス31は、依頼端末11−1に対して、サービスアクセス通知をPush(送信)する。これにより、依頼端末11−1は、非同期に宅内サービスにアクセスを行うことができる。上述した非同期とは、例えば依頼端末11−1が、処理を依頼した後、処理終了まで待つのではなく、宅内端末12での処理が終了した段階でPush配信等により非同期に結果(サービス提供)を受けることをいう。
処理受付部32は、依頼端末11−1からの処理依頼を受け付ける。また、処理受付部32は、受け付けたことを依頼端末11−1に出力する。処理受付部32は、依頼された処理(例えば、サービスアクセス等)をPushサービス31に依頼する。
なお、処理受付部32は、無線LAN等のアクセスポイント(以下、「AP」という)を経由して宅内エリア15内にある依頼端末11−1と直接通信(アクセス)することができる。
宅内サービス実行部33は、宅内エリア15にある依頼端末11−1からの処理依頼内容やクラウド13を介して得られる依頼端末11−2からの処理依頼内容に基づいて、対応する宅内サービスを実行し、その結果を処理依頼のあった依頼端末11に出力する。
アクセス代行部34は、依頼端末11が宅外にある場合に、クラウド13を介して得られる処理依頼内容に基づいて、対応する宅内サービスを実行し、その結果をクラウド13に出力する。アクセス代行部34は、アクセス中継部41と、サービス構築部42と、クラウド通信部の一例としてのクラウドPushクライアント43と、宅内通信部の一例としての宅内Pushクライアント44と、記憶部45とを有する。また、記憶部45は、サービス利用シーケンス45−1と、構築サービスインスタンス45−2とを有する。
アクセス中継部41は、例えばサービス利用シーケンス45−1に従い、依頼端末11からの処理依頼を宅内の処理受付部32へと通知する。アクセス中継部41は、依頼端末11から宅内サービスに対する情報の登録等の双方向の情報のやりとりを宅内サービス実行部33に通知する。
サービス構築部42は、サービス利用シーケンス45−1に従い、宅内サービス実行部33へのアクセスを行い、その結果を用いて一時的なサービスを構築し、クラウド13のサービス登録部に通知する。アクセス中継部41及びサービス構築部42で得られたデータ(レスポンス)は、構築サービスインスタンス45−2に保存される。
クラウドPushクライアント43は、後述するクラウド13の宅内Pushサービス55に接続する。クラウドPushクライアント43は、宅内Pushサービス55からの依頼を受け付けて宅内Pushクライアント44を生成する。
宅内Pushクライアント44は、Pushサービス31に接続する。これにより、依頼端末11−2が、宅内サービスを非同期アクセスするための準備が整うことになる。また、宅内Pushクライアント44は、サービス構築部42に対してサービスアクセス通知を行う。
記憶部45は、宅内端末12における各種処理で用いられるデータを記憶する。なお、記憶部45に記憶されるデータは、サービス利用シーケンス45−1や構築サービスインスタンス45−2に限定されるものではなく、例えばクラウド13や依頼端末11等の各装置を識別して所定の端末等を接続したり、データの送受信を行うためのアドレス情報や、ユーザ情報、処理結果等の情報を記憶してもよい。
サービス利用シーケンス45−1は、例えば構築シーケンスと中継シーケンスとを有する。構築シーケンスは、例えばパス(アドレス情報)、メソッド、リクエスト、レスポンス、アクセス必要フラグ等の情報を有する。また、中継シーケンスは、例えばアクセス先(例えば、宅内端末12、クラウド13等)、パス、メソッド、リクエスト等の情報を有する。なお、サービス利用シーケンス45−1の情報は、これに限定されるものではない。また、構築サービスインスタンス45−2には、例えば受付IDとクラウド受付IDとの関係を示す情報やサービス利用時のレスポンス情報等を有する。なお、構築サービスインスタンス45−2の情報は、これに限定されるものではない。
<クラウド13の機能構成例>
図1に示すクラウド13は、クラウドサービス提供部の一例としてのクラウドPushサービス51と、クラウド処理受付部52と、サービス実行部53と、登録部の一例としてのサービス登録部54と、宅内サービス提供部の一例としての宅内Pushサービス55と、記憶部56とを有する。記憶部56は、登録サービス56−1と、リクエスト56−2とを有する。
クラウドPushサービス51は、宅外にある依頼端末11−2に対してサービスアクセス通知を行う。また、クラウドPushサービス51は、接続通知を宅内Pushサービス55に依頼する。これにより、宅内Pushサービス55は、アクセス代行部34へ接続通知を行う。
クラウド処理受付部52は、依頼端末11からの依頼を受信し、依頼内容に対応する処理を行う。例えば、クラウド処理受付部52は、受信した依頼内容に対応する処理依頼通知を宅内Pushサービス55へ依頼する。
サービス実行部53は、依頼端末11のアクセス部22からクラウド13に構築された宅内サービスへのアクセス時に処理を行い、アクセス部22からのアクセスが終了すると、宅内Pushサービス55にアクセス終了通知を依頼する。また、サービス実行部53は、クラウド13でサービスを提供するために、登録サービスにクラウド受付IDをキーとするサービス用の領域を作成する。サービス実行部53は、1又は複数のサービスを実行することができる。
サービス登録部54は、宅内端末12のサービス構築部42から依頼されたサービス登録を行う。サービス登録部54は、例えば宅内端末12における宅内サービスの処理結果等を登録する。また、サービス登録部54は、登録が完了すると、クラウドPushサービス51にサービスアクセス通知を依頼する。
宅内Pushサービス55は、宅内端末12のクラウドPushクライアント43へ、依頼端末11の接続通知を行う。また、宅内Pushサービス55は、依頼端末11からの処理依頼を宅内端末12のクラウドPushクライアント43へ通知する。
また、宅内Pushサービス55は、宅内端末12のクラウドPushクライアント43にアクセス終了を通知する。また、宅内Pushサービス55は、宅内端末12のクラウドPushクライアント43に依頼端末11の切断通知を行う。
記憶部56は、クラウド13が行う各種処理を実行するために必要なデータを記憶する。なお、記憶部56に記憶されるデータは、登録サービス56−1やリクエスト56−2に限定されるものではなく、例えば宅内端末12や依頼端末11を識別して所定の端末等を接続したり、データの送受信を行うためのアドレス情報や、ユーザ情報、処理結果等の情報を記憶してもよい。
登録サービス56−1は、例えばサービス単位や登録単位に所定の情報を記憶する。サービス単位では、例えばクラウド受付ID(サービス識別子)、デバイスID、クラウドID、サービスID、URL等の情報を記憶するが、これに限定されるものではない。
また、登録単位では、パス、メソッド、レスポンス、終了フラグ等の情報を記憶するが、これに限定されるものではない。また、リクエスト56−2は、例えばアクセス単位の依頼内容であり、例えばパス、メソッド、レスポンス等の情報を有するが、これに限定されるものではない。
本実施形態において、依頼端末11のアクセス先である宅内端末12及びクラウド13は、アクセス先のアドレス情報(例えば、URL)が異なる。そのため、依頼端末11は、宅外と宅内の何れにアクセスするかを決定し、その結果に基づいてアクセス先のURLを切り替える必要がある。
例えば、アクセス先の判断については、依頼端末11が宅内エリア15にいるか、宅外エリアにいるかを判断する。宅内か宅外かの判断は、例えばWiFiのExtended Service Set Identifier(ESSID)や、通信ネットワーク14上に構成されるゲートウェイのMedia Access Control(MAC)アドレス等を用いて判断する。例えばESSIDやMACアドレスが、宅内端末12が使用する情報である場合には、宅内であると判断し、それ以外の場合には宅外と判断することができるが、判断手法については、これに限定されるものではない。このような方法を用いて、宅内又は宅外を判定することで、アクセス先のURLを設定することができる。
なお、宅内と宅外のURLは、例えばホスト名とパスとを変えることで設定することができる。例えば、パスは、クラウド13では宅内端末12を特定するためにクラウドIDを使用し、パスの先頭にクラウドIDを追加する。これにより、クラウド13では、パスの先頭のクラウドIDを利用して、宅内端末の特定が可能となる。なお、パス以外に引数を追加することでもクラウドIDを渡すことは可能である。また、本実施形態では、URL生成時に、ホスト名やパス以外に、http等のスキームを変えてもよい。
<ハードウェア構成例>
次に、上述した依頼端末11及び宅内端末12のハードウェア構成例について説明する。
<依頼端末11のハードウェア構成例>
図2は、依頼端末のハードウェア構成例を示す図である。図2に示す依頼端末11は、マイクロホン(以下、「マイク」という)61と、スピーカ62と、ディスプレイ63と、無線部64と、短距離通信部65と、操作部66と、位置情報取得部67と、メモリ装置68と、Central Processing Unit(CPU)69とを有する。
マイク61は、ユーザが発した音声や、その他の音を入力する。スピーカ62は、通話相手先の音声を出力したり、着信音等の音を出力する。ディスプレイ63は、時刻情報や通信圏外であるか否かに係る情報や、文字データ、画像データ等の各種情報を表示する。なお、ディスプレイ63としては、例えばLiquid Crystal Display(LCD)等があるが、これに限定されるものではない。
無線部64は、アンテナ等を用いて、基地局や通信ネットワーク14から送信された電波信号(通信データ)を受信したり、通信データを送信する送受信部である。
短距離通信部65は、宅内端末12や他の依頼端末11との短距離通信(ローカル通信)を行う。例えば、短距離通信部65は、赤外線通信を用いて、宅内端末12や依頼端末11間で直接短距離通信を行う。また、短距離通信部65は、無線ルータ等の中継機器やAPを介して宅内端末12や他の依頼端末11との短距離通信を行う。
操作部66は、各種機能における設定、サービス提供を受けるための依頼の作成、電話番号の登録、発呼及び着呼にユーザによって押下される入力手段である。
位置情報取得部67は、例えばGPS機能等を用いて位置情報を取得する。なお、位置情報取得部67における位置取得は、上述したGPS機能に限定されるものではなく、例えば通信する基地局や中継装置等の位置を基準に位置情報を取得してもよい。
メモリ装置68は、依頼端末11における各種情報を記憶するための記憶手段であり、情報の書き込みや読み出し等を行うことができる。メモリ装置68は、例えばRead Only Memory(ROM)やRandom Access Memory(RAM)等である。ここで、ROMには、本実施形態におけるサービスを受けるための処理を実行するためのプログラム等が記憶されている。また、RAMには、上述したサービスを受けるための各種データ等が記憶されている。
CPU69は、Operating System(OS)等の制御プログラム及びメモリ装置68に格納されている実行プログラムに基づいて、各種演算や各ハードウェア構成部とのデータの入出力等、依頼端末11における各処理を制御する。なお、CPU69は、メモリ装置68に予め格納されたプログラムやアプリ等に基づいて処理が行われる。具体的には、CPU69は、例えばネットワーク監視部21によるネットワーク監視、アクセス部22によるアクセス処理、Pushクライアント23によるサービス取得等の処理を行う。なお、CPU69における処理内容は、これに限定されるものではない。CPU69により実行された内容は、必要に応じてメモリ装置68等に記憶される。
上述したハードウェア構成により、本実施形態の依頼端末11におけるサービス提供処理を実行することができる。また、実行プログラムをインストールすることにより、コンピュータ等で依頼端末11におけるサービス提供処理を容易に実現することが可能となる。
<宅内端末12のハードウェア構成例>
図3は、宅内端末のハードウェア構成例を示す図である。図3に示す宅内端末12は、入力装置71と、出力装置72と、ドライブ装置73と、補助記憶装置74と、主記憶装置75と、CPU76と、ネットワーク接続装置77とを有し、これらはシステムバスBで相互に接続されている。
入力装置71は、ユーザ等が操作するキーボード及びマウス等のポインティングデバイスや、マイク等の音声入力デバイスを有しており、ユーザ等からのプログラムの実行指示、各種操作情報、ソフトウェア等を起動するための情報等の入力を受け付ける。
出力装置72は、本実施形態における処理を行うためのコンピュータ本体(宅内端末12)を操作するのに必要な各種ウィンドウやデータ等を表示するディスプレイを有し、CPU76が有する制御プログラムによりプログラムの実行経過や結果等を表示する。
ここで、本実施形態においてコンピュータ本体にインストールされる実行プログラムは、例えば、Universal Serial Bus(USB)メモリやCD−ROM、DVD等の可搬型の記録媒体78等により提供される。
プログラムを記録した記録媒体78は、ドライブ装置73にセット可能であり、CPU76からの制御信号に基づき、記録媒体78に含まれる実行プログラムが、記録媒体78からドライブ装置73を介して補助記憶装置74にインストールされる。
補助記憶装置74は、例えばHard Disk Drive(HDD)やSolid State Drive(SSD)等のストレージ手段等である。補助記憶装置74は、CPU76からの制御信号に基づき、本実施形態における実行プログラムや、コンピュータに設けられた制御プログラム等を記憶し、必要に応じて入出力を行う。補助記憶装置74は、CPU76からの制御信号等に基づいて、記憶された各情報から必要な情報を読み出したり、書き込むことができる。
主記憶装置75は、CPU76により補助記憶装置74から読み出された実行プログラム等を格納する。主記憶装置75は、ROMやRAM等である。補助記憶装置74及び主記憶装置75は、例えば上述した記憶手段45に対応している。
CPU76は、OS等の制御プログラム、及び主記憶装置75に格納されている実行プログラムに基づいて、各種演算や各ハードウェア構成部とのデータの入出力等、コンピュータ全体の処理を制御して各処理を実現する。プログラムの実行中に必要な各種情報等は、補助記憶装置74から取得することができ、また実行結果等を格納することもできる。
具体的には、CPU76は、例えば入力装置71から得られるプログラムの実行指示等に基づき、補助記憶装置74にインストールされたプログラムを実行させることにより、主記憶装置75上でプログラムに対応する処理を行う。
例えば、CPU76は、サービス提供プログラムを実行させることで、上述したPushサービス31によるサービス提供、処理受付部32による処理の受付、宅内サービス実行部33によるサービスの実行、アクセス代行部34におけるアクセス代行等の処理を行う。なお、CPU76における処理内容は、これに限定されるものではない。CPU76により実行された内容は、必要に応じて補助記憶装置74等に記憶される。
ネットワーク接続装置77は、通信ネットワーク14を介して依頼端末11やクラウド13との通信を行う。ネットワーク接続装置77は、CPU76からの制御信号に基づき、通信ネットワーク14等と接続することにより、実行プログラムやソフトウェア、設定情報等を、通信ネットワーク14に接続されている外部装置等から取得する。また、ネットワーク接続装置77は、プログラムを実行することで得られた実行結果又は本実施形態における実行プログラム自体を外部装置等に提供することができる。
上述したようなハードウェア構成により、本実施形態におけるスケジュール管理処理を実行することができる。また、上述した各機能を実行させることができる実行プログラム(サービス提供プログラム)をコンピュータにインストールすることにより、汎用のPC等のコンピュータで本実施形態におけるサービス提供処理を容易に実現することができる。また、クラウド13が汎用PCやサーバ等である場合には、上述した宅内端末12と同様のハードウェア構成を適用することができる。
<依頼端末11における宅内利用時のサービス提供例>
次に、上述した依頼端末11における宅内利用時のサービス提供例について、シーケンス図を用いて説明する。図4は、宅内利用時のサービス提供例を示すシーケンス図である。図4の例では、宅内エリア15内にある依頼端末11−1と、宅内端末12とを有する。図4に示す依頼端末11−1は、ネットワーク監視部21と、アクセス部22と、Pushクライアント23とを有する。また、図4に示す宅内端末12は、Pushサービス31と、処理受付部32と、宅内サービス実行部33とを有する。
図4の例において、Pushクライアント23は、宅内端末12にアクセスする前に、ネットワーク監視部21に接続先の取得要求を行う(S01)。図4の例では、Pushクライアント23は、ネットワーク監視部21から宅内である旨の回答を取得する(S02)。なお、S02の処理では、Pushクライアント23は、ネットワーク監視部21から宅内の接続に対応して、予め設定された宅内端末12の接続先情報を取得してもよい。
次に、Pushクライアント23は、宅内端末12のPushサービス31に対して接続を行う(S03)。この接続は、双方向のアクセスが可能なものであり、Pushサービス31からPushクライアント23へ任意のタイミングで通信を行うことができる。例えば、通信は、例えばIPアドレス及びポート番号等を組み合わせたネットワークアドレス(例えば、Socket)やWebSocket等により実現することができるが、これに限定されるものではない。
次に、アクセス部22は、ネットワーク監視部21に接続先取得要求を行い(S04)、ネットワーク監視部21から宅内エリア15内である旨の回答を取得する(S05)。なお、S05の処理では、アクセス部22は、ネットワーク監視部21から宅内の接続に対応して、予め設定された宅内端末12の接続先情報を取得してもよい。次に、アクセス部22は、宅内端末12の処理受付部32に対して、処理依頼を行う(S06)。
処理受付部32は、例えばアクセス部22からの処理を受け付けたことを即座にアクセス部22に返答する(S07)。そして、処理受付部32は、サービスアクセス通知をPushサービス31に依頼する(S08)。
Pushサービス31は、Pushクライアント23に対して、サービスアクセス通知をPush(送信)する(S09)。Pushクライアント23は、Pushサービス31からサービスアクセス通知を受け、アクセス部22にアクセス許可通知を行う(S10)。
アクセス許可通知を受けたアクセス部22は、宅内端末12の宅内サービス実行部33にアクセスを行う(S11)。なお、S11の処理では、図4に示すように、サービスの内容等に応じて、アクセス部22と宅内サービス実行部33との間で、1又は複数回のデータの送受信を行う。
上述したように、依頼端末11−1は、宅内端末12からのPush送信を用いて非同期に宅内サービス実行部33へとアクセスを行うことができる。なお、上述したS10の処理におけるPushクライアント23からアクセス部22へのアクセス許可通知は、アクセス部22とPushクライアント23とが同じアプリとして構成されている場合には、所定の関数による呼び出しが可能である。また、別アプリとして構成されている場合には、例えばプロセス間通信等を用いて通知を行うことができる。更に、SocketやPIPE、WebSocket、Android(登録商標)のIntentを用いてアクセス許可通知を行うことが可能である。Intentとは、例えば配列や文字列、整数型等を別アプリケーションに通知したり、他のActivityを呼び出すことができる機能である。
次に、宅内端末12におけるサービスの終了後、Pushクライアント23は、Pushサービス31に対して切断指示を行い(S12)、処理を終了する。
なお、上述したS04の処理では、Pushクライアント23とアクセス部22からネットワーク監視部21へと接続先の取得依頼を行うが、アクセス部22の宅内サービス実行部33へのアクセス時のアドレス(例えば、URL等)は、Push通知にて通知される。そのため、宅内サービス実行部33へのアクセス前には、ネットワーク監視部21への接続先の取得依頼は行わない。
<ネットワーク監視部21の処理の一例>
次に、上述したネットワーク監視部21の処理の一例について、フローチャートを用いて具体的に説明する。図5は、ネットワーク監視部の処理の一例を示すフローチャートである。なお、図5の例におけるネットワーク監視処理を行う場合には、予め宅内Service Set Identifier(SSID)、宅内端末接続先、クラウド接続先の情報が設定されている。
図5の例において、ネットワーク監視部21は、ネットワーク接続状態の監視を開始し(S21)、最初は他の装置と接続しておらず接続先は空いているため、宅内端末接続先及びクラウド接続先を、初期状態として「空」に設定する(S22)。次に、ネットワーク監視部21は、依頼端末11が他の装置とネットワーク接続したか否かを判断する(S23)。
ネットワーク監視部21は、他の装置とネットワーク接続した場合(S23において、YES)、その装置のアドレス情報が予め設定した宅内無線AP(例えば、Wi−Fi)のSSIDか否かを判断する(S24)。SSIDとは、例えばIEEE802.11シリーズの無線LANにおけるAPの識別子である。この識別子を確認することで、依頼端末11が宅内エリア15内にいるか否かを判断し、その結果に応じて宅内端末12にアクセスするかクラウド13にアクセスするかの設定を行う。
なお、本実施形態では、上述したSSID以外の判断基準を用いてもよい。例えば、依頼端末11がGPS機能を有している場合には、GPS機能を用いて依頼端末11の位置情報を取得し、その位置情報が予め設定された宅内エリア15内であるか否かを判断することで、アクセス先を切り替えることができる。
ネットワーク監視部21は、ネットワーク接続したアドレス情報が宅内無線APのSSIDである場合(S24において、YES)、接続先を宅内端末12に設定する(S25)。また、ネットワーク監視部21は、宅内無線APのSSIDでない場合(S24において、NO)、接続先をクラウド13に設定する(S26)。
また、ネットワーク監視部21は、S23の処理において、ネットワーク接続でない場合(S23において、NO)、ネットワークを切断した否かを判断する(S27)。ネットワーク監視部21は、ネットワークを切断した場合(S27において、YES)、宅内端末接続先及びクラウド接続先を「空」に設定する(S28)。
ネットワーク監視部21は、S27の処理において、ネットワークを切断しない場合(S27において、NO)、依頼端末11が動作中であるか否かを判断する(S29)。また、ネットワーク監視部21は、上述したS25、S26、又はS28の処理後にも、S29の処理を行う。
S29の処理では、例えば依頼端末11のシャットダウン等によりネットワーク監視処理を終了するため、依頼端末11の動作中は、処理を繰り返すことになる。
ネットワーク監視部21は、S29の処理において依頼端末11が動作中である場合(S29において、YES)、S23の処理に戻る。また、ネットワーク監視部21は、依頼端末11が動作中でない場合(S29において、NO)、ネットワーク接続状態の監視を終了し(S30)、処理を終了する。
上述の処理により、ネットワーク監視部21は、接続状態が変更された場合に、その接続状態が宅内であるか宅外であるかを判定して、判定結果に基づき接続先を設定することができる。したがって、ネットワーク監視部21は、アクセス部22やPushクライアント23から現在の接続先の取得依頼があった場合に、上述した監視により取得している接続先を回答することができる。なお、ネットワーク監視部21は、アクセス部22やPushクライアント23から接続先の取得要求があった時点で、上述した処理を行い、その結果を回答してもよい。
<ネットワーク監視におけるデータ例>
次に、上述したネットワーク監視におけるデータ例について、図を用いて説明する。図6は、ネットワーク監視におけるデータ例を示す図である。図6(A)は、接続先を決定するための情報の一例を示し、図6(B)は、上述したSSIDの値による接続先情報を示している。
図6(A)の例では、「項目」とその項目に対応する「設定値」とを有する。例えば「宅内SSID」には、「MyHome、MyHome2」が設定され、「宅内端末接続先」には、「192.168.1.2:8080」が設定され、「クラウド接続先」には、「cloudhost/2」が設定されている。宅内SSIDとは、例えば宅内エリア15内で通信できる上述した宅内無線AP(例えば、Wi−Fi等)のSSIDである。
なお、本実施形態では、1つの項目に複数の設定を行ってもよく、例えば「宅内SSID」には、MyHome、MyHome2の2つが設定されている。
また、図6(B)の例では、図6(A)の設定の場合に、ネットワーク接続時の「SSID」の値に対して、「接続先」がどのように決定されるかを示している。「SSID」が「MyHome」、「MyHome2」のときには、接続先は、「192.168.1.2:8080」に決定され、「public」のときには、「cloudhost/2」に決定される。つまり、SSIDが、「MyHome」、「MyHome2」の場合には、宅内端末12を接続先に設定し、それ以外のSSIDの場合には、クラウド13を接続先に設定することを示している。
これにより、依頼端末11が宅内端末12から本実施形態における宅内サービスの提供を受けるときの接続先を適切に設定することができる。なお、上述した設定値は、例えばネットワーク監視部21が有する内部メモリ等に記憶されておいてもよく、依頼端末11に設けられる記憶部等に記憶されていてもよい。なお、接続先の設定例では、例えば依頼端末11がGPS機能等により取得した位置情報を用いて、その位置情報が、予め設定された宅内エリア内にある場合に宅内端末12を接続先に設定し、宅内エリア内にない場合にクラウド13を接続先に設定してもよい。
<Pushクライアント23の処理の一例>
次に、上述したPushクライアント23の処理の一例について、フローチャートを用いて説明する。図7は、Pushクライアントの処理の一例を示すフローチャートである。図7の例において、Pushクライアント23は、ネットワーク監視部21に接続先の取得依頼を行って現在の接続先を取得する(S41)。図7の例では、宅内エリア15内にある依頼端末11の例を示しているため、ネットワーク監視部21からは宅内端末12の接続先の情報を取得する。したがって、Pushクライアント23は、宅内端末12のPushサービス31に接続する(S42)。
次に、Pushクライアント23は、Pushサービス31からPush通知を受信し(S43)、受信した内容が、サービスアクセス通知か否かを判断する(S44)。Pushクライアント23は、サービスアクセス通知である場合(S44において、YES)、アクセス部22にアクセス許可通知を通知する(S45)。また、Pushクライアント23は、S44の処理において、サービスアクセス通知でない場合(S44において、NO)、又はS45の処理後、処理を終了するか否かを判断する(S46)。なお、S46の処理では、Pushクライアント23は、例えばユーザによるシャットダウンやPushサービス31との接続の切断等の場合に、Pushクライアントとしての処理を終了すると判断する。Pushクライアント23は、基本的に終了せずに、Push通知を待ち受けするものである。
Pushクライアント23は、処理を終了しない場合(S46において、NO)、S43の処理に戻る。また、Pushクライアント23は、処理を終了する場合(S46において、YES)、Pushサービス31から切断し(S47)、処理を終了する。ネットワーク接続の切り替わりによって、Pushクライアント23が終了する場合、別のネットワークへの接続時に再度Pushクライアント23を開始するように構成することで、宅内端末12とクラウド13への接続先切り替えを実現できる。
<Pushサービス31の処理の一例>
次に、上述した宅内端末12におけるPushサービス31の処理の一例について、フローチャートを用いて説明する。図8は、Pushサービスの処理の一例を示すフローチャートである。図8の例において、Pushサービス31は、サービス提供に関する依頼を受信し(S51)、その受信した依頼がPushクライアント23からの接続依頼であるか否かを判断する(S52)。
Pushサービス31は、受信した依頼がPushクライアント23からの接続依頼である場合(S52において、YES)、依頼端末11との接続を確立し、依頼端末11を識別するための端末IDを用いて依頼端末11を登録する(S53)。なお、端末IDは、S51における依頼の受信時に取得することができる。
また、Pushサービス31は、S52の処理において、受信した依頼が依頼端末11からの接続依頼でない場合(S52において、NO)、次に、その受信した依頼がPushクライアント23からの切断依頼か否かを判断する(S54)。
Pushサービス31は、受信した依頼がPushクライアント23からの切断依頼である場合(S54において、YES)、対応する端末IDの依頼端末11の登録を削除する(S55)。
また、Pushサービス31は、受信した依頼がPushクライアント23からの切断依頼でない場合(S54において、NO)、端末IDから対象の依頼端末11を取得する(S56)。次に、Pushサービス31は、受信した依頼が処理受付部32からのサービスアクセス通知依頼か否かを判断し(S57)、サービスアクセス通知依頼である場合(S57において、YES)、対象の依頼端末11にサービスアクセス通知を行う(S58)。S57の処理において、Pushサービス31は、サービスアクセス通知依頼でない場合(S57において、NO)、そのまま処理を終了する。なお、この場合、Pushサービス31は、エラーメッセージ等を出力して処理を終了してもよい。
<処理受付部32の処理の一例>
次に、処理受付部32の処理の一例について、フローチャートを用いて説明する。図9は、処理受付部の処理の一例を示すフローチャートである。図9の例において、処理受付部32は、アクセス部22からの依頼を受信し(S61)、受信した依頼内容から端末IDとサービスIDを取得する(S62)。次に、処理受付部32は、受付IDを生成し(S63)、その受付IDをレスポンスとして依頼端末11のアクセス部22に送信する(S64)。
次に、処理受付部32は、依頼端末11から所定のサービスへアクセスさせるためのURLを生成し、Pushサービス31にサービスアクセス通知を依頼する(S65)。なお、S65の処理において、処理受付部32は、所定のサービスへアクセスするための情報としてURLを用いずに他のアドレス情報を設定してもよい。また、処理受付部32は、例えばPushサービス31に端末ID、サービスID、受付ID、及びURL等を引数にサービスアクセス通知を依頼するが、これに限定されるものではない。
<宅内利用時のデータ例>
次に、上述したサービス提供の宅内利用時におけるデータ例について、図を用いて説明する。図10は、宅内利用時のデータ例を示す図である。図10(A)は、本実施形態で提供されるサービスに用いられる各項目に対する設定情報(値)の一例を示している。また、図10(B)は、宅内利用時のサービスの一例を示す図である。
図10(A)の例では、項目と、その項目に対する値とを有するが、これに限定されるものではない。図10(A)の例では、「端末ID(device_id)」に1が設定され、「サービスID(service_id)」に4が設定され、「受付ID(acceptance_id)」に6が設定されているが、これに限定されるものではない。
本実施形態では、この値を用いて、例えば図10(B)に示すように、依頼元と依頼先とでやりとりが行われ、データ内容を送信し、結果としてレスポンスを受け取り、所定のサービスが実行される。
図10(B)の例において、依頼元"Pushクライアント23"から要求される依頼先の"ws://192.168.1.2:8080/PushService"は、WebSocketによる接続を示す。また、データは、全てJavaScript Object Notation(JSON)形式でやりとりされた例を示しているが、これに限定されるものではない。図10(B)の例では、依頼端末11から検索キーワード("打合せ")を用いて宅内端末12に検索を行い、その結果として7つのファイルリストを取得する。更に、図10(B)の例では、取得した7つのファイルリストから文書(document)のみに絞り込み、3つの文書ファイルリストを取得し、ユーザの指示等により、そのうちの2つのファイルを選択している。なお、宅内サービスの提供例については、上記の内容に限定されるものではない。
<依頼端末11における宅外利用時のサービス提供例>
次に、上述した依頼端末11における宅外利用時のサービス提供例について、シーケンス図を用いて説明する。図11は、宅外利用時のサービス利用例を示すシーケンス図である。図11の例では、宅外エリアにある依頼端末11−2と、宅内端末12と、クラウド13とを有する。
依頼端末11−2は、ネットワーク監視部21と、アクセス部22と、Pushクライアント23とを有する。宅内端末12は、クラウドPushクライアント43と、アクセス中継部41と、サービス構築部42と、宅内Pushクライアント44と、Pushサービス31と、処理受付部32と、宅内サービス実行部33とを有する。なお、アクセス中継部41、サービス構築部42、クラウドPushクライアント43、及び宅内Pushクライアント44は、アクセス代行部34に含まれる。クラウド13は、クラウドPushサービス51と、クラウド処理受付部52と、サービス実行部53と、サービス登録部54と、宅内Pushサービス55とを有する。
図11の例において、Pushクライアント23は、宅内端末12にアクセスする(図11の例では、クラウド13にアクセスして宅内端末12のサービスを利用する)前に、ネットワーク監視部21に接続先の取得依頼を行う(S71)。図11の例では、Pushクライアント23は、ネットワーク監視部21から宅外である旨の回答(例えば、クラウド13の接続先情報)を取得する(S72)。なお、S72の処理では、Pushクライアント23は、ネットワーク監視部21から宅外の接続に対応して、予め設定されたクラウド13の接続先情報を取得してもよい。
次に、依頼端末11のPushクライアント23は、クラウド13のクラウドPushサービス51に接続する(S73)。クラウドPushサービス51は、宅内Pushサービス55に、端末接続通知を依頼する(S74)。なお、この段階で、事前に宅内端末12のクラウドPushクライアント43は、クラウド13の宅内Pushサービス55に接続されている(S75)。
宅内Pushサービス55は、クラウドPushクライアント43へ接続通知を行う(S76)。クラウドPushクライアント43は、宅内Pushクライアント44を生成し(S77)、宅内Pushクライアント44は、Pushサービス31に接続する(S78)。これにより、依頼端末11が、宅内サービスを非同期アクセスするための準備が整ったことになる。
次に、アクセス部22は、ネットワーク監視部21に接続先の取得要求を行い(S79)、図11の例ではネットワーク監視部21から宅外である旨の回答を取得する(S80)。なお、S80の処理では、アクセス部22は、ネットワーク監視部21から宅外の接続に対応して、予め設定されたクラウド13の接続先情報を取得してもよい。次に、アクセス部22は、クラウド13のクラウド処理受付部52に対して、処理依頼を行う(S81)。
クラウド処理受付部52は、アクセス部22からの処理を受け付けたことを即座にアクセス部22に返答する(S82)。次に、クラウド処理受付部52は、宅内Pushサービス55に処理依頼の通知を依頼する(S83)。宅内Pushサービス55は、処理依頼を宅内端末12のクラウドPushクライアント43へ通知する(S84)。
クラウドPushクライアント43は、アクセス中継部41に処理依頼を出力する(S85)。アクセス中継部41は、取得した処理依頼を処理受付部32に出力する(S86)。処理受付部32は、アクセス中継部41からの処理を受け付けたことを即座にアクセス中継に返答する(S87)。次に、処理受付部32は、Pushサービス31にサービスアクセス通知を依頼する(S88)。
Pushサービス31は、宅内Pushクライアント44にサービスアクセス通知を行う(S89)。宅内Pushクライアント44は、サービス構築部42にサービスアクセス通知を行う(S90)。サービス構築部42は、宅内サービス実行部33にアクセスし(S91)、宅内サービス実行部33からの返答を得る(S92)。また、サービス構築部42は、そのサービスをクラウド13に構築するために、クラウド13のサービス登録部54にサービスの登録を行う(S93)。
クラウド13のサービス登録部54は、サービス構築部42から取得したサービスをサービス実行部53に登録し、登録完了に伴い、サービス実行部53に登録されたサービスの開始要求を行う(S94)。また、サービス登録部54は、クラウドPushサービス51にサービスアクセス通知を依頼する(S95)。
クラウドPushサービス51は、依頼端末11−2のPushクライアント23にサービスアクセス通知を行う(S96)。Pushクライアント23は、アクセス部22にアクセス許可通知を行う(S97)。
ここで、アクセス部22は、クラウド13に構築されたサービス実行部53のサービス(宅内サービス)にアクセスを行う(S98)。なお、S98の処理では、1又は複数のサービスを利用することができるため、アクセス部22とサービス実行部53との間で1又は複数回のデータの送受信が行われる。
ここで、所定のサービスに対するアクセスが終了すると、サービス実行部53は、宅内Pushサービス55にアクセス終了通知を依頼する(S99)。次に、宅内Pushサービス55は、クラウドPushクライアント43にアクセス終了を通知し(S100)、クラウドPushクライアント43は、アクセス中継部41にアクセス終了通知を行う(S101)。
アクセス中継部41は、依頼端末11によるサービス利用により宅内サービスへの影響がある場合に、クラウド13に構築されたサービス(サービス実行部53)と宅内サービス実行部33とのアクセスを行い、クラウド13で実行された内容を宅内サービス実行部33に反映する(S102)。なお、S102の処理では、サービスから情報を取得するだけでなく、サービスへの新たな登録や更新等がある場合には、その情報をクラウド13のサービスから取得し、宅内サービス実行部33に登録する。なお、アクセス中継部41は、サービスから情報を参照するだけの場合には、上述したS102の処理を行わなくてもよい。
次に、アクセス中継部41は、サービス登録部54にサービスの削除を依頼する(S103)。サービス登録部54は、サービスを削除する(S104)。これにより、クラウド13内に登録サービスが保持され続けることがなく、不正アクセスや情報漏洩等を防止することができる。
ここで、図11に示すシーケンスには、依頼端末11がサービス利用後に通信を切断する例も示している。この場合、依頼端末11のPushクライアント23は、クラウドPushサービス51との接続を切断する(S111)。クラウドPushサービス51は、切断通知を宅内Pushサービス55に依頼する(S112)。次に、宅内Pushサービス55は、宅内端末12のクラウドPushクライアント43に切断通知を行う(S113)。
次に、クラウドPushクライアント43は、宅内Pushクライアント44に切断を通知する(S114)。次に、宅内Pushクライアント44は、Pushサービス31から切断し、自身を終了させる(S115)。
上述した図11の処理により、依頼端末11が宅外にいる場合には、クラウド13を用いるだけで、依頼端末11及び宅内端末のPushサービス31、処理受付部32、及び宅内サービス実行部33の処理(図11の斜線部分)の処理は変わらずに、クラウド側で処理することができる。また、上述の例では、クラウド13上にシーケンスに基づいて宅内サービスを実行した結果のみが構築されるだけであり、宅内端末12の記憶された情報の全てがクラウド13上に構築されることがない。また、上述の例では、サービス提供の終了時点でサービスが削除されるため、不正アクセスや情報漏洩等を防止し、セキュリティを向上させた適切なサービス提供を実現することができる。
次に、宅外利用時における各構成の具体例について説明するが、以下の説明では、上述した宅内利用時と同様の処理を行う構成についての説明は省略する。
<クラウドPushクライアント43の処理の一例>
次に、宅内端末12のアクセス代行部34に含まれる上述したクラウドPushクライアント43の処理の一例について、フローチャートを用いて説明する。図12は、クラウドPushクライアントの処理の一例を示すフローチャートである。
図12の例において、クラウドPushクライアント43は、クラウド13の宅内Pushサービス55に接続し(S121)、Push通知を受信する待ち受け状態となる。そして、宅内Pushサービス55からPush通知を受信する(S122)。次に、クラウドPushクライアント43は、受信した通知が接続通知か否かを判断し(S123)、接続通知である場合(S123において、YES)、宅内Pushクライアント44に接続を依頼する(S124)。
また、クラウドPushクライアント43は、受信した通知が接続通知でない場合(S123において、NO)、その受信した通知が切断通知か否かを判断する(S125)。クラウドPushクライアント43は、切断通知である場合(S125において、YES)、宅内Pushクライアント44に切断を依頼する(S126)。
また、クラウドPushクライアント43は、切断通知でない場合(S125において、NO)、その受信した通知が処理依頼か否かを判断する(S127)。クラウドPushクライアント43は、処理依頼である場合(S127において、YES)、アクセス中継部41に処理依頼を通知する(S128)。
また、クラウドPushクライアント43は、処理依頼でない場合(S127において、NO)、アクセス終了か否かを判断(S129)し、アクセス終了の場合(S129において、YES)、アクセス中継部41にアクセス終了を通知する(S130)。
また、クラウドPushクライアント43は、S124、S126、S128、或いはS130の処理後、又は、S129の処理において、アクセス終了でない場合(S129において、NO)、処理終了か否かを判断する(S131)。クラウドPushクライアント43は、処理終了でない場合(S131において、NO)、S122の処理に戻る。また、クラウドPushクライアント43は、処理終了である場合(S131において、YES)、クラウドPushクライアント43の処理を終了する。
<宅内Pushクライアント44の処理の一例>
次に、宅内端末12のアクセス代行部34に含まれる上述した宅内Pushクライアント44の処理の一例についてフローチャートを用いて説明する。図13は、宅内Pushクライアントの接続制御処理の一例を示すフローチャートである。
図13の例において、宅内Pushクライアント44は、クラウドPushクライアント43からの依頼を受信し(S141)、その依頼がPushサービス31への接続依頼か否かを判断する(S142)。宅内Pushクライアント44は、接続依頼である場合(S142において、YES)、Pushサービス31に接続するクライアントを作成し(S143)、クラウドID及び端末IDを、その作成したクライアントに対応付けて保持する(S144)。つまり、S143の処理では、宅内Pushクライアント44は、例えばクラウドID及び端末ID毎にアクセスを代行するためのクライアントが作成される。
また、宅内Pushクライアント44は、S142の処理において、接続依頼でない場合(S142において、NO)、Pushサービス31の切断依頼か否かを判断する(S145)。宅内Pushクライアント44は、切断依頼である場合(S145において、YES)、対象のクライアントを取得し(S146)、そのクライアントをPushサービス31から切断する(S147)。
また、宅内Pushクライアント44は、切断依頼でない場合(S145において、NO)、そのまま処理を終了してもよく、またエラーメッセージを出力してもよい。
ここで、図14は、作成したクライアントの処理の一例を示すフローチャートである。図14の例において、宅内Pushクライアント44で作成されたクライアントは、Pushサービス31に接続し(S151)、Push通知を受信する待ち受け状態となる。そして、処理受付部32からPush通知を受信する(S152)。次に、クライアントは、受信した通知がサービスアクセス通知か否かを判断し(S153)、サービスアクセス通知である場合(S153において、YES)、サービス構築部42にサービスアクセス通知を通知する(S154)。
また、クライアントは、S154の処理後、又は、サービスアクセス通知でない場合(S153において、NO)、処理終了か否かを判断し(S155)、処理終了でない場合(S155において、NO)、S152の処理に戻る。また、クライアントは、処理終了である場合(S155において、YES)、クライアントの処理を終了する。
なお、上述したS155の終了チェック処理は、例えば切断等によりクライアントが終了されたか否かをチェックするものである。上述した図14の例では、通知受信後にS155の処理を行っているが、通知受信待ちのときに切断されることもあるため、終了チェックのタイミングは、上述した内容に限定されるものではない。
上述した図13に示す接続制御は、接続通知のときに、宅内Pushクライアント44を生成し、切断通知のときに、宅内Pushクライアント44を切断させるというものである。切断されたときは、クライアントが自ら終了するため、接続制御では切断をさせるのみである。なお、接続時に、クラウドID及び端末IDをクライアントに保持するようにしている。したがって、図14の例に示すクライアントの処理では、サービス構築部42にサービスアクセス通知を行うときに、クラウドIDと端末IDとを追加して通知を行っている。
<アクセス中継部41の処理の一例>
次に、宅内端末12のアクセス代行部34に含まれる上述したアクセス中継部41の処理の一例について、フローチャートを用いて説明する。図15は、アクセス中継部の処理の一例を示すフローチャートである。
図15の例において、アクセス中継部41は、クラウドPushクライアント43からの依頼を受信し(S161)、その受信が処理依頼か否かを判断する(S162)。アクセス中継部41は、受信が処理依頼である場合(S162において、YES)、処理受付部32に処理を依頼する(S163)。
また、アクセス中継部41は、処理受付部32からの結果を受け、クラウド受付IDと受付IDとを対応付けて構築サービスインスタンス45−2等に保存する(S164)。この保存された情報は、サービス構築部42において、受付IDからクラウド受付IDへ変換する際に使用される。
また、アクセス中継部41は、S162の処理において、処理依頼でない場合(S162において、NO)、アクセス終了通知か否かを判断する(S165)。アクセス中継部41は、アクセス終了通知である場合(S165において、YES)、サービス利用シーケンス45−1を検索し、アクセス終了用シーケンスがあるか否かを判断する(S166)。S166の処理では、アクセス中継部41は、例えばサービスID等に対応する中継シーケンスが存在するか否かを判断する。
アクセス中継部41は、アクセス終了用シーケンスがある場合(S166において、YES)、そのシーケンスに従い、クラウド13や宅内サービス実行部33にアクセスする(S167)。なお、S167の処理の具体例については、後述する。また、アクセス中継部41は、アクセス終了用シーケンスがない場合(S166において、NO)、サービスIDに対応する中継シーケンスが存在しないため、シーケンスに従ったアクセスは行わない。
次に、アクセス中継部41は、S167の処理後、又は、S166の処理において、アクセス終了用シーケンスがない場合(S166において、NO)、サービス終了処理として、サービス登録部54にクラウド受付IDのサービス削除を依頼する(S168)。次に、アクセス中継部41は、クラウド受付IDに対応する構築サービスインスタンス45−2を削除する(S169)。なお、S169の処理では、構築サービスインスタンス45−2に含まれる受付IDとクラウド受付IDとの組や、アクセス中継部41やサービス構築部42においてサービスへアクセスしたときのレスポンス等を削除する。
また、アクセス中継部41は、S164、S169の処理後、又は、上述したS165の処理において、アクセス終了しない場合(S165において、NO)、処理を終了する。
<S167の処理の具体例>
次に、上述したS167の処理の具体例について説明する。図16は、S167の処理の一例を示すフローチャートである。図16の例において、アクセス中継部41は、アクセス部22から得られるサービスIDから中継シーケンスを取得する(S171)。そして、アクセス中継部41は、次のシーケンスを取得する(S172)。
上述した中継シーケンスは、例えばアクセス先、パス、メソッド、及びリクエスト等を有するが、これに限定されるものではない。アクセス先は、例えば宅内端末12又はクラウド13の何れかの情報である。パスは、例えばURLのパス名である。メソッドは、例えばHTTPのメソッドであるGET、POST、PUT、DELETE等である。リクエストは、例えばPOST、PUT時に、HTTPリクエストのボディ部に設定する内容である。なお、上述したメソッドは、HTTPのメソッド以外にも、拡張することが可能である。本実施形態では、例えばファイルのアップロードやダウンロード等のように、単純なPOSTやGETではないようなアクセスをメソッドとして定義することが可能である。
また、上述したパスやリクエストは、サービスへのアクセスにより動的に生成される可能性があるため、それらを動的に生成する仕組みを有する。そのため、アクセス中継部41やサービス構築部42は、サービスへアクセスした結果のレスポンスを構築サービスインスタンス45−2に保存する。また、パスやリクエストは、既に保存されたレスポンスから構成することもできる。
次に、アクセス中継部41は、シーケンスのアクセス先がクラウド13か否かを判断し(S173)、クラウド13である場合(S173において、YES)、クラウド受付IDとパスからサービスアクセス用URLを作成する(S174)。また、アクセス中継部41は、クラウド13でない場合(S173において、NO)、パスから宅内サービスアクセス用URLを作成する(S175)。
S174又はS175の処理後、アクセス中継部41は、シーケンス内のメソッドがPOST又はPUTか否かを判断し(S176)、POST又はPUTである場合(S176において、YES)、対応する依頼内容(リクエスト)を構築する(S177)。また、アクセス中継部41は、メソッドがPOST又はPUTでない場合(S176において、NO)、例えばGETやDELETE等の場合であるため、リクエストの構築は行わない。
次に、アクセス中継部41は、S174の処理で作成したサービスアクセス用URL、又は、S175の処理で作成した宅内サービスアクセス用URLにアクセスしてレスポンスを取得し(S178)、そのレスポンスを保存する(S179)。
次に、アクセス中継部41は、シーケンスが最後か否かを判断し(S180)、シーケンスが最後でない場合(S180において、NO)、S172の処理に戻る。また、シーケンスが最後である場合(S180において、YES)、処理を終了する。
なお、上述の処理では、クラウド13に登録するサービスの識別子として、クラウド受付IDを使用しているが、これに限定されるものではない。例えば、クラウド13に登録するときに、サービス登録部54により所定のIDを発行するようにすることで、他の識別子を使用してもよい。
<シーケンスとレスポンスの一例>
ここで、図17は、シーケンスとレスポンスの一例を示す図である。図17(A)は、シーケンスの一例を示し、図17(B)は、図17(A)に示すシーケンスにより実際にアクセスした結果のレスポンスの一例を示している。
図17(A)に示すリクエストのシーケンス番号1,2は、シーケンス内にパス、メソッドを含み、シーケンス番号3は、シーケンス内にパス、メソッド、リクエストを含むが、シーケンス内に含まれる情報は、これに限定されるものではない。図17(B)に示すレスポンスのシーケンス番号1,2は、シーケンス内にアクセス先とレスポンスとを含み、シーケンス番号3は、シーケンス内にアクセス先、リクエスト、レスポンスを含むが、シーケンス内に含まれる情報は、これに限定されるものではない。
図17(A)の例では、シーケンス番号1〜3の3つのシーケンスが順番に実行され、シーケンス番号2、3は、その前のシーケンスを用いて得られたレスポンスの結果を使用する。シーケンス番号2、3におけるパスの「1.id」と、シーケンス番号3のリクエストの「2.data」がそれに対応する。上述した「1.id」は、シーケンス1のレスポンスのidの値を使用することを意味する。また、上述した「2.data」は、シーケンス2のレスポンスのdataの値を使用することを意味する。なお、図17の例では、リクエストとレスポンスにJSONを使用する例を示している。そのため、idやdataは、JSONにおけるキーとなる。
例えば、図17(A)に示すシーケンス番号1によるアクセスの結果、レスポンスとして図17(B)に示す{"id":4}が返答されたとする。この場合には、シーケンス番号2のパスは、「/service2/4」となり、上述した「1.id」がidの値である4に置き換えられる。次に、上述したように置き換えられた情報でアクセスを行い、その結果として{"data":"hoge"}を取得する。
また、シーケンス番号3のパスは、シーケンス番号2と同様に「1.id」を置き換え、「/service3/4」となり、リクエストは、シーケンス2のレスポンスのdataの値と置き換えられ、「{"data":"hoge"}」となり、これをPOSTする。その結果、「{"ret":"success"}」をレスポンスとして得ることができる。
<サービス構築部42の処理例>
次に、サービス構築部42の処理例についてフローチャートを用いて説明する。図18は、サービス構築部の処理の一例を示すフローチャートである。図18の例において、サービス構築部42は、宅内Pushクライアント44からの依頼を取得し(S191)、取得した依頼がサービスアクセス通知か否かを判断する(S192)。
サービス構築部42は、取得した依頼がサービスアクセス通知である場合(S192において、YES)、受付IDを構築サービスインスタンス45−2によりクラウド受付IDに変換する(S193)。なお、受付IDは、例えばサービス構築部42がサービスアクセス通知と共に宅内Pushクライアント44から取得される情報である。また、サービス構築部42は、受付ID以外にもクラウドID、端末ID、サービスID、及びURL等を宅内Pushクライアント44から取得することができる。
次に、サービス構築部42は、クラウド受付IDを識別情報として、サービス登録部54にクラウド受付IDのサービス登録開始を依頼する(S194)。次に、サービス構築部42は、シーケンスに従い、宅内サービス実行部23にアクセスし、サービス登録部54にサービスとして登録する(S195)。この場合、サービス構築部42は、サービス登録部54に対してクラウドID、端末ID、サービスID、及びクラウド受付ID等を通知する。なお、S195の処理の具体例については、後述する。
次に、サービス構築部42は、宅内Pushクライアント44から通知されたURLをサービス登録したアクセス先に変更してサービス登録部54に終了を通知する(S196)。例えば、URLが「http://192.168.0.2/service」である場合に、「http://cloudhost/2/3/service」と変更する。上述の例では、サービス構築部42は、ホスト名をクラウド13のホスト名「cloudhost」に変更し、更にクラウドID及びクラウド受付IDをパスに含める。上述の例では、クラウドIDが「2」で、クラウド受付IDが「3」である。
このようにURLを変更することで、クラウド13でのサービスが固有のURLとなり、かつ、クラウドIDをパスに含めることで、サービス実行部53にて、クラウドIDを取得することができる。
また、サービス構築部42は、上述したS192の処理において、サービスアクセス通知でない場合(S192において、NO)、そのまま処理を終了する。
<S195の処理の具体例>
次に、上述したS195の処理の具体例について説明する。図19は、S195の処理の一例を示すフローチャートである。図19の例において、サービス構築部42は、サービスIDから構築シーケンスを取得する(S201)。そして、次のシーケンスを取得する(S202)。なお、サービス構築部42は、上述したサービスIDに対応する構築シーケンスをサービス利用シーケンス45−1から取得し、シーケンスを順に実行していく。
ここで、構築シーケンスは、例えばパス、メソッド、リクエスト、レスポンス、及びアクセス必要フラグ等を有するが、これに限定されるものではない。上述したパスは、例えばURLのパス名を示す。メソッドは、例えばHTTPのメソッドであるGET、POST、PUT、DELETE等であり、リクエストは、例えばPOST、PUT時にHTTPリクエストのボディ部に設定する内容である。レスポンスは、例えばPOSTやPUTのアクセスがあった場合の返答内容を示し、アクセス必要フラグは宅内サービスにアクセスの必要があるか否かを示す。また、メソッドは、上述した中継シーケンスと同様、HTTPのメソッド以外にも拡張可能である。更に、上述したパスやリクエスト、レスポンスは、上述した中継シーケンスと同様、保存したレスポンスから構成することが可能である。
次に、サービス構築部42は、取得したシーケンスから宅内サービス実行部33へのアクセスが必要か否かを判断する(S203)。S203の処理において、サービス構築部42は、例えば上述した構築シーケンスに含まれるアクセス必要フラグをチェックすることで、アクセスが必要であるか否かを判断することができるが、これに限定されるものではない。
サービス構築部42は、アクセスが必要でない場合(S203において、NO)、シーケンスのパスとレスポンスを用いて、パス、レスポンスを構築し(S204)、サービス登録部54にパス、メソッド、レスポンスの情報を登録する(S205)。このとき、サービス構築部42は、既に保存されているレスポンスを使用することが可能である。
また、サービス構築部42は、S203の処理において、アクセスが必要である場合(S203において、YES)、メソッドが、POST又はPUTか否かを判断する(S206)。
サービス構築部42は、メソッドがPOST又はPUTである場合(S206において、YES)、宅内サービス実行部33に対する依頼内容(リクエスト)を構築する(S207)。また、サービス構築部42は、メソッドがPOST又はPUTでない場合(S206において、NO)、例えばGETやDELETE等の場合であるため、リクエストの構築は行わない。次に、サービス構築部42は、パスを構築し、そのパスから、宅内サービス実行部33における宅内サービスのアクセス先を決定し、宅内サービス実行部33にアクセスしてレスポンスを取得する(S208)。次に、サービス構築部42は、取得したレスポンスをシーケンスの番号と関連付けて記憶部等に保存する(S209)。
次に、サービス構築部42は、サービス登録部54にパス、メソッド、レスポンスを登録する(S210)。
次に、サービス構築部42は、S205又はS210の処理後、シーケンスが最後か否かを判断し(S211)、最後でない場合(S211において、NO)、S202の処理に戻る。また、サービス構築部42は、シーケンスが最後である場合(S211において、YES)、処理を終了する。
<サービス利用シーケンス45−1及び構築サービスインスタンス45−2の一例>
ここで、上述したサービス利用シーケンス45−1及び構築サービスインスタンス45−2の一例について説明する。
図20は、サービス利用シーケンスの一例を示す図である。図20(A)は、宅内端末12のサービス利用シーケンス45−1が有する構築シーケンスの一例を示し、図20(B)は、宅内端末12のサービス利用シーケンス45−1が有する中継シーケンスの一例を示している。
また、図21は、構築サービスインスタンスの一例を示す図である。図21(A)は、受付IDとクラウド受付IDとの対応関係とを示し、図21(B)は、サービス構築のレスポンス例を示し、図21(C)は、アクセス中継のレスポンス例を示している。
サービス構築部42は、図20(A)に示すような構築シーケンスを用いて宅内サービス実行部23にアクセスしてサービスを実行し、図21(B)に示すようなデータ内容(レスポンス)を取得する。また、サービス中継部41は、図20(B)に示すような中継シーケンスを用いてサービスを実行し、図21(C)の示すようなデータ内容(レスポンス)を取得する。
なお、図20(B)に示す中継シーケンスのシーケンス番号(No.)2のリクエスト(依頼内容)に記載された"{1.*}"の意味は、シーケンス番号1のアクセスのレスポンスの全てという意味である。そのため、図20(B)に示す中継シーケンスのシーケンス番号2のリクエストは、シーケンス番号1に対するレスポンスがそのまま使用される。
また、図20(A)に示す構築シーケンスと図20(B)中継シーケンスのレスポンスの参照について、それぞれのシーケンスのレスポンスしか参照しない記載としているが、例えばシーケンス番号を構築シーケンスと中継シーケンスとで通し番号にすることで、中継シーケンスから構築シーケンスのレスポンスを参照可能とすることができる。
例えば、図20(B)の例に示す中継シーケンス番号の100番台を構築シーケンスのレスポンスとして管理することができる。
更に、上述の例では、パス及びメソッドを用いて、サービスへのアクセスを特定したが、例えばPOSTのようにパス及びメソッドは同じでリクエストの内容によってレスポンスが変わるような場合がある。そのような場合、本実施形態では、リクエストの中身まで含めてアクセスを特定するようにサービス構築部42やサービス中継部41、サービス登録部54、サービス実行部53を変更することで対応可能である。
構築サービスインスタンス45−2では、図21(A)に示すように、クラウド受付IDと受付IDとが対応付けられて管理される。また、図21(B)及び図21(C)の例では、シーケンス番号毎にレスポンスのデータ内容が示されている。
図21(C)に示すアクセス中継においてシーケンス番号が100番台のデータは、上述したように構築シーケンスのレスポンスを示している。
なお、図20,図21のデータ例では、依頼端末11から宅内端末12に所定のキーワード(例えば、"打合せ")を用いてファイル検索を行い、その結果を取得するサービス利用例を示している。また、依頼端末11は、キーワードの検索の結果として得られた7つのファイルのリストのうち、3つの文書ファイル(document)又は4つの画像ファイル(image)のリストを表示させ、その中から複数のファイルを選択するサービス利用例を示している。なお、本実施形態を用いたサービス利用形態については、これに限定されるものではない。
<クラウドPushサービス51の処理の一例>
次に、クラウド13が有するクラウドPushサービス51の処理の一例について、フローチャート用いて説明する。図22は、クラウドPushサービスの処理の一例を示すフローチャートである。図22の例において、クラウドPushサービス51は、依頼端末11から依頼を受信し(S221)、Pushクライアント23からの接続依頼か否かを判断する(S222)。
クラウドPushサービス51は、Pushクライアント23からの接続依頼である場合(S222において、YES)、Pushクライアント23との接続を確立し、その確立したPushクライアント23に対応する依頼端末11の端末IDを登録する(S223)。そして、クラウドPushサービス51は、宅内Pushサービス55に接続依頼を通知する(S224)。
また、クラウドPushサービス51は、S222の処理において、Pushクライアント23からの接続依頼でない場合(S222において、NO)、Pushクライアント23からの切断依頼か否かを判断する(S225)。クラウドPushサービス51は、切断依頼である場合(S225において、YES)、端末IDのPushクライアント23の登録を削除し(S226)、宅内Pushサービス55に切断依頼を通知する(S227)。
また、クラウドPushサービス51は、S225の処理において、切断依頼でない場合(S225において、NO)、端末IDから対象のPushクライアント23を取得し(S228)、サービス登録部54からのサービスアクセス通知依頼か否かを判断する(S229)。クラウドPushサービス51は、サービスアクセス通知依頼である場合(S229において、YES)、Pushクライアント23にサービスアクセス通知を行う(S230)。クラウドPushサービス51は、S224、S227、S230の処理後、処理を終了する。また、クラウドPushサービス51は、サービスアクセス通知依頼でない場合(S229において、NO)、何もしなくてもよく、エラーメッセージを出力してもよい。
上述した図22に示す処理の一例は、いわゆるクラウド13を用いたPushサービスであるが、上述した宅内利用時のPushサービスと比較すると、例えばクラウド13の場合は、依頼端末11からの接続時に、宅内Pushサービス55に接続依頼を通知する点が異なる。また、例えば依頼端末11からの切断により、宅内Pushサービス55に切断依頼を通知する点が異なる。
<宅内Pushサービス55の処理の一例>
次に、上述した宅内Pushサービス55の処理の一例について、フローチャートを用いて説明する。図23は、宅内Pushサービスの処理の一例を示すフローチャートである。図23の例において、宅内Pushサービス55は、依頼を受信し(S241)、その依頼が宅内端末12のクラウドPushクライアント43からの接続依頼であるか否かを判断する(S242)。
宅内Pushサービス55は、クラウドPushクライアント43からの接続依頼である場合(S242において、YES)、クラウドPushクライアント43との接続を確立し、確立した依頼端末11のクライアントIDを登録する(S243)。
また、宅内Pushサービス55は、クラウドPushクライアント43からの接続依頼でない場合(S242において、NO)、クライアントIDから対象のクラウドPushクライアント43を取得し(S244)、接続依頼か否かを判断する(S245)。宅内Pushサービス55は、接続依頼である場合(S245において、YES)、対象のクラウドPushクライアント43に接続通知を行う(S246)。また、宅内Pushサービス55は、接続依頼でない場合(S245において、NO)、切断依頼か否かを判断する(S247)。宅内Pushサービス55は、切断依頼である場合(S247において、YES)、クラウドPushクライアント43に切断通知を行う(S248)。
また、宅内Pushサービス55は、切断依頼でない場合(S247において、NO)、アクセス終了通知依頼か否かを判断する(S249)。宅内Pushサービス55は、アクセス通知依頼である場合(S249において、YES)、クラウドPushクライアント43にアクセス終了通知を行う(S250)。また、宅内Pushサービス55は、アクセス終了通知でない場合(S249において、NO)、処理依頼か否かを判断し(S251)、処理依頼である場合(S251において、YES)、クラウドPushクライアント43に処理依頼通知を行う(S252)。
宅内Pushサービス55は、S243、S246、S248、S250、及びS252の処理後、又は、S251の処理において、処理依頼でない場合(S251において、NO)、処理を終了する。
上述したように、図23に示す処理では、クラウドPushクライアント43からの接続のときは、クライアントとの接続を確立し、クライアントIDと関連付けてその接続を管理する。クラウドPushサービス55からは、接続依頼と切断依頼を受信する。この場合は、クラウドIDにてクラウドPushクライアント43を取得し、そのクラウドPushクライアント43に対して、接続通知又は切断通知を行う。
サービス実行部53からのアクセス終了依頼の場合には、クライアントIDによりクラウドPushクライアント43を取得し、そのクラウドPushクライアント43に対して、アクセス終了通知を行う。また、クラウド処理受付部52からの処理依頼の場合には、クライアントIDにてクラウドPushクライアント43を取得し、そのクラウドPushクライアント43に対して、処理依頼通知を行う。
<クラウド処理受付部52の処理の一例>
次に、クラウド処理受付部52の処理の一例について、フローチャートを用いて説明する。図24は、クラウド処理受付部の処理の一例を示すフローチャートである。図24の例において、クラウド処理受付部52は、依頼端末11からの依頼内容を受信し(S261)、受信したリクエストからクラウドID、端末ID、サービスID等を取得する(S262)。上述したクラウドIDは、宅内の処理受付ではない場合に取得するが、例えばURL等により指定された情報等を取得することができる。
次に、クラウド処理受付部52は、クラウド受付IDを生成し(S263)、生成したクラウド受付IDをレスポンスとして依頼端末11に返信する(S264)。次に、クラウド処理受付部52は、例えばクラウド受付ID、クラウドID、端末ID、サービスIDを引数にして、宅内Pushサービス55に処理依頼通知を行う(S265)。
<サービス登録部54の処理の一例>
次に、サービス登録部54の処理の一例についてフローチャートを用いて説明する。図25は、サービス登録部の処理の一例を示すフローチャートである。図25の例において、サービス登録部54は、宅内端末12のサービス構築部42又はアクセス中継部41から依頼を受信する(S271)。本実施形態では、例えばサービス構築部42から登録開始、登録、登録終了の依頼を受信し、アクセス中継部41から登録削除の依頼を受信するが、これに限定されるものではない。
サービス登録部54は、受信した依頼が登録開始依頼か否かを判断し(S272)、登録開始依頼である場合(S272において、YES)、依頼に対応するサービスを作成する(S273)。S273の処理では、サービス実行部53でサービスを提供するために、例えば登録サービス56−1にクラウド受付IDをキーとするサービス用の領域を作成する。次に、サービス登録部54は、サービスの情報として、クラウドID、サービスID、クラウド受付IDを対応付けて保存する(S274)。
また、S272の処理において、サービス登録部54は、受信した依頼が登録開始依頼でない場合(S272において、NO)、登録依頼か否かを判断する(S275)。サービス登録部54は、受信した依頼が登録依頼である場合(S275において、YES)、クラウド受付IDを用いて登録サービス56−1から対象のサービスを取得する(S276)。次に、サービス登録部54は、取得したサービスに依頼内容を保存する(S277)。依頼内容が複数ある場合には、サービス登録部54は、そのサービスに依頼内容を追加する。
また、サービス登録部54は、受信した依頼が登録依頼でない場合(S275において、NO)、登録終了依頼か否かを判断する(S278)。サービス登録部54は、受信した依頼が登録終了依頼である場合(S278において、YES)、登録されたサービスのアドレス情報の一例であるURLを保存し(S279)、対象のサービスを開始する(S280)。サービスの開始は、例えばサービス実行部53にアクセスがあった場合に、そのサービスへのアクセスを許可したことを意味する。また、サービス登録部54は、クラウドPushサービス51にサービスアクセス通知を依頼する(S281)。
また、S278の処理において、サービス登録部54は、登録終了依頼でない場合(S278において、NO)、登録削除依頼か否かを判断し(S282)、登録削除依頼である場合(S282において、YES)、対象のサービスを削除する(S283)。S283の処理では、サービス登録部54は、例えばクラウド受付IDに基づいて登録サービス56−1を参照して対象のサービスを取得し、そのサービスの情報を削除する。また、サービス登録部54は、クラウド受付IDを用いてリクエスト56−2を参照してサービス用の情報を取得し、それらを削除する。
サービス登録部54は、S274、S277、S281、S283の処理後、又は、S282において、登録削除依頼でない場合(S282において、NO)、処理を終了する。なお、S282の処理において、サービス登録部54は、受信した依頼が登録削除依頼でない場合にエラーメッセージ等を出力してもよい。
<登録サービス56−1のデータ例>
ここで、上述した登録サービス56−1のデータ例について、図を用いて説明する。図26は、登録サービスのデータ例を示す図である。図26(A)は、サービス単位のデータ例を示し、図26(B)は、登録単位のデータ例を示している。
登録サービス56−1に保存する内容は、図26(A)に示すサービス単位の情報としては、例えばクラウド受付ID、デバイスID、クラウドID、サービスID、URL等があるが、これに限定されるものではない。サービス登録部54は、図26(A)に示す各項目を管理することで各サービスをクラウド13に登録する。
また、図26(B)に示す登録単位の情報としては、例えば依頼内容であるパス、メソッド、レスポンス、終了フラグ等があるが、これに限定されるものではない。図26(B)の例では、依頼端末11からのキーワード検索を、クラウド13を介して宅内端末12で実行し、得られたファイルのリストを生成し、その結果から文書ファイルと画像ファイルとを分類してリストを返すというサービスを示している。
宅内サービスのアクセスは、「/search」によりファイルリスト取得のためのidを得る。「/search」では、{"keyword":"打合せ"}をPOSTして、レスポンスを得る。また、「/select」によりリストを取得する。そして、ファイルリストからファイルを選択し、そのリストを「/finish」にPOSTする。これがサービス利用終了となる。
また、図26(B)に示す終了フラグは、例えばサービス構築部42からの依頼内容に含まれ、終了フラグが真(TRUE)の場合、サービスの終了と判断することができる。また、サービス登録部54は、登録終了時に図26(A)に示すようにURLを保存する。
<サービス実行部53の処理の一例>
次に、上述したサービス実行部53の処理の一例について、フローチャートを用いて説明する。図27は、サービス実行部の処理の一例を示すフローチャートである。サービス実行部53は、依頼端末11のアクセス部22、又は宅内端末12のアクセス中継部41からアクセスされて動作する。
図27の例において、サービス実行部53は、依頼を受信すると(S291)、その依頼内容からパス、メソッドを取得する(S292)。なお、S292の処理において、リクエストのパスにクラウドID及びクラウド受付IDの情報が含まれる場合、サービス実行部53は、それらの情報を除いた情報をパスとする。
次に、サービス実行部53は、サービスが存在するか否かを判断し(S293)、サービスが存在する場合(S293において、YES)、対象のサービスを取得し(S294)、パス、メソッドに対応するレスポンスを取得する(S295)。S295の処理では、サービス実行部53は、クラウド受付IDにて登録サービス56−1からサービスを取得し、そのパスとメソッドをキーに、レスポンスを取得する。
また、本実施形態において、依頼が宅内端末12のアクセス中継部41からの場合、サービス実行部53は、リクエスト56−2に保存された情報からレスポンスを取得してもよい。
次に、サービス実行部53は、メソッドがPOST又はPUTであるか否かを判断する(S296)。サービス実行部53は、メソッドがPOST又はPUTである場合(S296において、YES)、依頼内容をパスに関連付けて、クラウド受付IDの依頼内容として、リクエスト56−2に保存する(S297)。また、サービス実行部53は、メソッドがPOST又はPUTでない場合(S297において、NO)、例えばGETやDELETE等の場合であるため、依頼内容をパスに関連付けて保存する処理は行わない。
次に、サービス実行部53は、S295の処理により取得したレスポンスを送信し(S298)、受信した依頼が最後の依頼が否かを判断する(S299)。S299の処理では、サービス実行部53は、依頼内容に含まれる終了フラグが真(例えば、TRUE)か否かで判断することができるが、これに限定されるものではない。
サービス実行部53は、最後の依頼でない場合(S299において、NO)、S291の処理に戻り、次の依頼を受信する。また、サービス実行部53は、最後の依頼である場合(S299において、YES)、宅内Pushサービス55に、アクセス終了通知を依頼する(S300)。
また、サービス実行部53は、上述したS293の処理において、サービスが存在しない場合(S293において、NO)、処理を終了する。この場合、サービス実行部53は、エラーとして依頼のあった依頼端末11又は宅内端末12にその旨の通知を行ってもよい。また、サービス実行部53は、例えば上述したS295の処理において、パス、メソッドに対応するレスポンスを取得できなかった場合にもエラーとしてリクエストのあった依頼端末11又は宅内端末12に通知してもよい。
<リクエスト56−2のデータ例>
次に、上述した依頼内容(リクエスト)のデータ例について、図を用いて説明する。図28は、リクエストのデータ例を示す図である。図28(A)は、サービス単位のリクエストデータ例を示し、図28(B)は、アクセス単位のリクエストデータ例を示している。
図28(A)の例に示すリクエストデータには、クラウド受付IDと、クラウドIDとが対応付けられている。また、図28(B)の例に示すリクエストデータには、パスと、メソッドと、レスポンスとが対応付けられている。ここで、保存されたリクエスト56−2は、宅内端末12のアクセス中継部41から取得されることになるため、メソッドはGET固定となり、レスポンスはリクエストの保存先となる。サービス実行部53は、取得したレスポンスをリクエストのあった依頼端末11又は宅内端末12に送信する。
<サービス利用の具体例>
次に、上述した本実施形態における情報処理システム10を用いたサービス利用の具体例について説明する。なお、以下の説明では、宅外にある依頼端末11−2からクラウド13を介して宅内端末12による宅内サービスを利用する例について説明する。
図29は、サービス利用時のデータの具体例を示す図である。図30は、サービス利用時の依頼端末の画面例を示す図である。
図29(A)は宅内端末12の宅内サービス実行部33へのアクセスデータの一例を示し、図29(B)は依頼端末11−2におけるアクセス部22のアクセスデータの一例を示し、図29(C)はアクセス中継データの一例を示している。また、図30(A)〜(D)は、サービス利用時の画面遷移を示している。
図30(A)に示す依頼端末11−2の画面80には、宅内サービスの利用例として、検索キーワードを入力する入力領域81と、検索処理を実行する検索ボタン82とを有している。なお、画面80は、例えばブラウザ画面等であるが、これに限定されるものではなく、専用のアプリケーションにより表示されている画面であってもよい。
本実施形態では、例えば図30(A)に示す画面80の入力領域81に対し、ユーザにより検索キーワード(例えば、"打合せ")が入力され、検索ボタン82が押下されると、入力領域81に入力されたキーワード"打合せ"に基づいて、クラウド13を経由して宅内端末12にて検索を行い(図29(A))、その結果をクラウド13に保存し、クラウド13にて依頼端末11へのサービスを提供する。検索キーワードは、例えばクラウド処理受付部52に渡される。なお、依頼端末11が宅内エリア15にある場合には、直接宅内端末12へアクセスして検索を行う。
図29(A)は、例えば図30(A)において、ユーザ等の指示により検索ボタン82が押された後に、宅内端末12のサービス構築部42が宅内サービス実行部33をアクセスする内容を示している。
図30(B)の例では、画面80に検索結果により得られたファイルを表示させる表示領域83と、表示領域83に対して所定の条件に当てはまるファイルのみを抽出するためのボタン等を表示するボタン表示領域84とを有する。図30(B)の例では、ボタン表示領域84に文書ファイルのみを表示する文書ボタン、画像ファイルのみを表示する画像ボタン、選択完了を示す選択完了ボタンを有するがこれに限定されるものではない。図30(B)は、例えば図29(B)のシーケンス番号2のアクセスの結果から構成した画面80である。
依頼端末11は、表示領域83に表示された7つのファイル(3つの文書ファイル及び4つの画像ファイル)に対して、文書ファイルを選択すると、その依頼がクラウド13に送られて、宅内端末12に対する処理がなされる。そして、依頼端末11には、図30(C)に示すようにクラウド13側から文書ファイルに対応する3つの文書ファイルのみが表示される((図29(B)のシーケンス番号3)。
更に、依頼端末11は、表示領域83に表示されているチェックボックスにより出力したいファイルをユーザに選択させ、「選択完了ボタン」を押下することで、選択されたファイルを取得することができる。図30(D)には、「打合せ1.doc」及び「打合せ3.doc」のファイルを選択したことを示している。図29(B)のシーケンス番号4がファイル選択結果の通知例である。選択結果の通知を受けて、クラウド13のサービス実行部53は、アクセス終了と判断し、宅内Pushサービス55、クラウドPushクライアント43を経由して、アクセス中継部41にアクセス終了を伝える。そして、アクセス中継部41は、図29(C)のシーケンスを実行する。
上述したように本実施形態によれば、適切なサービス提供を実現することができる。例えば、本実施形態によれば、宅内サービスを追加した場合、宅内で利用できるだけでなく、クラウドには修正を加えることなく、宅外からも宅内サービスが利用可能となる。また、サービスへのアクセスシーケンスを再現する一時的なサービスをクラウドに構築するため、宅内と宅外で、依頼端末からのアクセスの仕方を変える必要がないため、利便性を向上させたデータ提供を実現できる。
また、本実施形態によれば、宅内サービスへのアクセスを代行し、アクセス結果やアクセスの種類をクラウドに登録し、登録内容に従ってサービスを提供することで、宅内サービスそのものをクラウドに再現することができる。また、本実施形態によれば、宅内サービスがインタラクティブであってもクラウドに再現可能となる。
以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、上記変形例以外にも種々の変形及び変更が可能である。
なお、以上の実施例に関し、更に以下の付記を開示する。
(付記1)
第1の端末からネットワーク上の1以上のコンピュータを介して第2の端末の処理を実行する情報処理システムにおいて、
前記第2の端末は、
前記第1の端末からの依頼を前記コンピュータから取得し、取得した前記依頼に対応する処理シーケンスを構築し、構築した前記処理シーケンスに対応する処理結果を前記コンピュータに出力するアクセス代行部と、
前記処理シーケンスに対応する処理を実行する実行部とを有することを特徴とする情報処理システム。
(付記2)
前記アクセス代行部により得られる処理結果を登録する登録部と、
前記登録部により登録された内容に対応するサービスを前記第1の端末に提供するサービス提供部とを有することを特徴とする付記1に記載の情報処理システム。
(付記3)
前記第1の端末は、
前記ネットワークの接続時に得られる接続先情報を監視するネットワーク監視部と有し、
前記ネットワーク監視部は、前記接続先情報を用いて前記第2の端末にアクセスするか、又は前記コンピュータを介して前記第2の端末にアクセスするかを設定することを特徴とする付記1又は2に記載の情報処理システム。
(付記4)
前記第1の端末は、前記第2の端末と非同期にアクセスを行うことを特徴とする付記1乃至3の何れか1項に記載の情報処理システム。
(付記5)
ネットワーク上の1以上のコンピュータを介して第1の端末からの依頼を取得し、取得した前記依頼に対応する処理シーケンスを構築し、構築した前記処理シーケンスに対応する処理結果を前記コンピュータに出力するアクセス代行部と、
前記処理シーケンスに対応する処理を実行する実行部とを有することを特徴とする情報処理装置。
(付記6)
ネットワーク上の1以上のコンピュータを介して第1の端末からの依頼を取得し、
取得した前記依頼に対応する処理シーケンスを構築し、
構築した前記処理シーケンスに対応する処理を実行し、
実行した前記処理の結果を前記コンピュータに出力する、処理をコンピュータに実行させるための情報処理プログラム。
(付記7)
情報処理装置が、
ネットワーク上の1以上のコンピュータを介して第1の端末からの依頼を取得し、
取得した前記依頼に対応する処理シーケンスを構築し、
構築した前記処理シーケンスに対応する処理を実行し、
実行した前記処理の結果を前記コンピュータに出力することを特徴とする情報処理方法。
10 情報処理システム
11 依頼端末(第1の端末)
12 宅内端末(第2の端末)
13 クラウド
14 通信ネットワーク
15 宅内エリア
21 ネットワーク監視部
22 アクセス部
23 Pushクライアント(サービス取得部)
31 Pushサービス(サービス提供部)
32 処理受付部
33 宅内サービス実行部(実行部)
34 アクセス代行部
41 アクセス中継部
42 サービス構築部
43 クラウドPushクライアント(クラウド通信部)
44 宅内Pushクライアント(宅内通信部)
45,56 記憶部
51 クラウドPushサービス(クラウドサービス提供部)
52 クラウド処理受付部
53 サービス実行部
54 サービス登録部(登録部)
55 宅内Pushサービス(宅内サービス提供部)
61 マイク
62 スピーカ
63 ディスプレイ
64 無線部
65 短距離通信部
66 操作部
67 位置情報取得部
68 メモリ装置
69,76 CPU
71 入力装置
72 出力装置
73 ドライブ装置
74 補助記憶装置
75 主記憶装置
77 ネットワーク接続装置
78 記録媒体
80 画面
81 入力領域
82 検索ボタン
83 表示領域
84 ボタン表示領域

Claims (5)

  1. 第1の端末からネットワーク上の1以上のコンピュータを介して第2の端末の処理を実行する情報処理システムにおいて、
    前記第2の端末は、
    前記第1の端末からの依頼を前記コンピュータから取得し、取得した前記依頼に対応する処理シーケンスを構築し、構築した前記処理シーケンスに対応する処理結果を前記コンピュータに出力するアクセス代行部と、
    前記処理シーケンスに対応する処理を実行する実行部とを有することを特徴とする情報処理システム。
  2. 前記アクセス代行部により得られる処理結果を登録する登録部と、
    前記登録部により登録された内容に対応するサービスを前記第1の端末に提供するサービス提供部とを有することを特徴とする請求項1に記載の情報処理システム。
  3. 前記第1の端末は、
    前記ネットワークの接続時に得られる接続先情報を監視するネットワーク監視部と有し、
    前記ネットワーク監視部は、前記接続先情報を用いて前記第2の端末にアクセスするか、又は前記コンピュータを介して前記第2の端末にアクセスするかを設定することを特徴とする請求項1又は2に記載の情報処理システム。
  4. ネットワーク上の1以上のコンピュータを介して第1の端末からの依頼を取得し、取得した前記依頼に対応する処理シーケンスを構築し、構築した前記処理シーケンスに対応する処理結果を前記コンピュータに出力するアクセス代行部と、
    前記処理シーケンスに対応する処理を実行する実行部とを有することを特徴とする情報処理装置。
  5. ネットワーク上の1以上のコンピュータを介して第1の端末からの依頼を取得し、
    取得した前記依頼に対応する処理シーケンスを構築し、
    構築した前記処理シーケンスに対応する処理を実行し、
    実行した前記処理の結果を前記コンピュータに出力する、処理をコンピュータに実行させるための情報処理プログラム。
JP2013124989A 2013-06-13 2013-06-13 情報処理システム、情報処理装置、及び情報処理プログラム Ceased JP2015001784A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013124989A JP2015001784A (ja) 2013-06-13 2013-06-13 情報処理システム、情報処理装置、及び情報処理プログラム
US14/256,318 US20140372528A1 (en) 2013-06-13 2014-04-18 Information processing system, information processing apparatus, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013124989A JP2015001784A (ja) 2013-06-13 2013-06-13 情報処理システム、情報処理装置、及び情報処理プログラム

Publications (1)

Publication Number Publication Date
JP2015001784A true JP2015001784A (ja) 2015-01-05

Family

ID=52020198

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013124989A Ceased JP2015001784A (ja) 2013-06-13 2013-06-13 情報処理システム、情報処理装置、及び情報処理プログラム

Country Status (2)

Country Link
US (1) US20140372528A1 (ja)
JP (1) JP2015001784A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017016482A (ja) * 2015-07-02 2017-01-19 キヤノン株式会社 通信装置およびその制御方法、通信システム
JP2020053899A (ja) * 2018-09-27 2020-04-02 株式会社ノーリツ 給湯システム、サーバおよびプログラム
US10644986B2 (en) 2016-02-04 2020-05-05 Mitsubishi Electric Corporation Master station device, slave station device, process delegation management method, and process execution method

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9426156B2 (en) * 2013-11-19 2016-08-23 Care Innovations, Llc System and method for facilitating federated user provisioning through a cloud-based system
US10547993B2 (en) * 2014-05-29 2020-01-28 Huawei Technologies Co., Ltd. Media content sharing method and apparatus
KR101969330B1 (ko) * 2014-11-27 2019-04-17 한국전자통신연구원 Sla 기반의 클라우드 서비스 에이전트
FR3103042A1 (fr) * 2019-11-12 2021-05-14 Orange Procédés de commande d’un réseau informatique de périphérie à accès multiple

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003141010A (ja) * 2001-11-06 2003-05-16 Nippon Telegr & Teleph Corp <Ntt> Sbcモデルにおける適応型画像制御方法及びシステム装置
JP2003186815A (ja) * 2001-12-20 2003-07-04 Nippon Telegr & Teleph Corp <Ntt> Sbcモデルを用いたコラボレーション方法及びシステム装置
US20040215717A1 (en) * 2002-11-06 2004-10-28 Nils Seifert Method for prefetching of structured data between a client device and a server device
JP2012247946A (ja) * 2011-05-26 2012-12-13 Nippon Telegr & Teleph Corp <Ntt> Web情報先読み方法および先読み代理サーバ装置
JP2013218387A (ja) * 2012-04-05 2013-10-24 Hitachi Ltd パケット通信装置および方法
JP2013250691A (ja) * 2012-05-31 2013-12-12 Hitachi Ltd 通信装置および方法

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030187925A1 (en) * 1998-12-08 2003-10-02 Inala Suman Kumar Software engine for enabling proxy chat-room interaction
US7630986B1 (en) * 1999-10-27 2009-12-08 Pinpoint, Incorporated Secure data interchange
US20020112076A1 (en) * 2000-01-31 2002-08-15 Rueda Jose Alejandro Internet protocol-based computer network service
US7711818B2 (en) * 2000-12-22 2010-05-04 Oracle International Corporation Support for multiple data stores
US7363339B2 (en) * 2000-12-22 2008-04-22 Oracle International Corporation Determining group membership
US7380008B2 (en) * 2000-12-22 2008-05-27 Oracle International Corporation Proxy system
US7085834B2 (en) * 2000-12-22 2006-08-01 Oracle International Corporation Determining a user's groups
JP4224958B2 (ja) * 2001-08-10 2009-02-18 富士ゼロックス株式会社 インターネット印刷方法、そのシステム、プロキシ装置及びプリントサーバ
JP4126928B2 (ja) * 2002-02-28 2008-07-30 日本電気株式会社 プロキシサーバ及びプロキシ制御プログラム
US7613703B2 (en) * 2004-09-30 2009-11-03 Microsoft Corporation Organizing resources into collections to facilitate more efficient and reliable resource access
US7483438B2 (en) * 2005-04-14 2009-01-27 Alcatel Lucent Systems and methods for managing network services between private networks
CN101496387B (zh) * 2006-03-06 2012-09-05 思科技术公司 用于移动无线网络中的接入认证的***和方法
JP4986689B2 (ja) * 2006-05-22 2012-07-25 キヤノン株式会社 情報処理装置、印刷システム、ジョブ処理方法及びプログラム
US9137209B1 (en) * 2008-12-10 2015-09-15 Amazon Technologies, Inc. Providing local secure network access to remote services
US8683547B2 (en) * 2009-10-28 2014-03-25 Liveops, Inc. System and method for implementing adaptive security zones
US20120246235A1 (en) * 2009-12-07 2012-09-27 Nec Corporation Attribute information sharing providing system, access information management device, access information proxy management device, method and program therefor
US8341099B2 (en) * 2010-03-12 2012-12-25 Microsoft Corporation Semantics update and adaptive interfaces in connection with information as a service
US8612646B2 (en) * 2010-07-14 2013-12-17 William G. Bartholomay Devices, systems, and methods for multiplexing one or more services at a customer premises
US9483313B2 (en) * 2010-10-19 2016-11-01 Microsoft Technology Licensing, Llc Availability management for reference data services
US9076152B2 (en) * 2010-10-20 2015-07-07 Microsoft Technology Licensing, Llc Semantic analysis of information
WO2012071384A2 (en) * 2010-11-22 2012-05-31 Michael Luna Optimization of resource polling intervals to satisfy mobile device requests
US9052861B1 (en) * 2011-03-27 2015-06-09 Hewlett-Packard Development Company, L.P. Secure connections between a proxy server and a base station device
US20120271903A1 (en) * 2011-04-19 2012-10-25 Michael Luna Shared resource and virtual resource management in a networked environment
US8769622B2 (en) * 2011-06-30 2014-07-01 International Business Machines Corporation Authentication and authorization methods for cloud computing security
KR101229858B1 (ko) * 2011-07-12 2013-02-15 어니컴 주식회사 웹을 통한 테스팅 자원 공유 방법 및 그 시스템
JP5773794B2 (ja) * 2011-08-05 2015-09-02 キヤノン株式会社 印刷システムおよび印刷制御方法
US8671455B1 (en) * 2011-09-22 2014-03-11 Symantec Corporation Systems and methods for detecting unintentional information disclosure
US9466086B2 (en) * 2011-09-22 2016-10-11 Genband Us Llc Methods, systems, and computer readable media for affecting user associations in over the top (OTT) service platforms
US8726264B1 (en) * 2011-11-02 2014-05-13 Amazon Technologies, Inc. Architecture for incremental deployment
WO2013066465A1 (en) * 2011-11-02 2013-05-10 Seven Networks, Inc. Strategically timed delivery of advertisements or electronic coupons to a mobile device in a mobile network
JP5921165B2 (ja) * 2011-11-29 2016-05-24 キヤノン株式会社 印刷システム、中継サーバ、印刷システムの制御方法、およびコンピュータプログラム
US8977755B2 (en) * 2011-12-06 2015-03-10 Seven Networks, Inc. Mobile device and method to utilize the failover mechanism for fault tolerance provided for mobile traffic management and network/device resource conservation
JP5925056B2 (ja) * 2012-05-31 2016-05-25 キヤノン株式会社 情報処理システム、印刷サーバー、情報処理装置、情報処理システムの制御方法、コンテンツ印刷システム
US9578130B1 (en) * 2012-06-20 2017-02-21 Amazon Technologies, Inc. Asynchronous and idempotent distributed lock interfaces
US9161258B2 (en) * 2012-10-24 2015-10-13 Seven Networks, Llc Optimized and selective management of policy deployment to mobile clients in a congested network to prevent further aggravation of network congestion
US20140157324A1 (en) * 2012-11-30 2014-06-05 Comcast Cable Communications, Llc Content Identification and Management
US9264413B2 (en) * 2012-12-06 2016-02-16 Qualcomm Incorporated Management of network devices utilizing an authorization token
US9660874B2 (en) * 2012-12-13 2017-05-23 Level 3 Communications, Llc Devices and methods supporting content delivery with delivery services having dynamically configurable log information

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003141010A (ja) * 2001-11-06 2003-05-16 Nippon Telegr & Teleph Corp <Ntt> Sbcモデルにおける適応型画像制御方法及びシステム装置
JP2003186815A (ja) * 2001-12-20 2003-07-04 Nippon Telegr & Teleph Corp <Ntt> Sbcモデルを用いたコラボレーション方法及びシステム装置
US20040215717A1 (en) * 2002-11-06 2004-10-28 Nils Seifert Method for prefetching of structured data between a client device and a server device
JP2012247946A (ja) * 2011-05-26 2012-12-13 Nippon Telegr & Teleph Corp <Ntt> Web情報先読み方法および先読み代理サーバ装置
JP2013218387A (ja) * 2012-04-05 2013-10-24 Hitachi Ltd パケット通信装置および方法
JP2013250691A (ja) * 2012-05-31 2013-12-12 Hitachi Ltd 通信装置および方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017016482A (ja) * 2015-07-02 2017-01-19 キヤノン株式会社 通信装置およびその制御方法、通信システム
US10644986B2 (en) 2016-02-04 2020-05-05 Mitsubishi Electric Corporation Master station device, slave station device, process delegation management method, and process execution method
JP2020053899A (ja) * 2018-09-27 2020-04-02 株式会社ノーリツ 給湯システム、サーバおよびプログラム

Also Published As

Publication number Publication date
US20140372528A1 (en) 2014-12-18

Similar Documents

Publication Publication Date Title
JP2015001784A (ja) 情報処理システム、情報処理装置、及び情報処理プログラム
JP2019204519A (ja) ポータル認証
KR101651029B1 (ko) 자동 서비스 발견 및 접속을 위한 방법 및 장치
CN112166591B (zh) 跨多个设备的数据同步
US8065361B2 (en) Apparatus and methods using a data hub server with servers to source and access informational content
KR101508675B1 (ko) 사용자 단말기, 오퍼레이터 서버, 원격 지원 방법, 및 사용자 단말기용 프로그램
US20110319056A1 (en) Remote access to a mobile device
KR20110041995A (ko) Cpns 서비스 제공을 위한 개인망 형성 장치 및 방법
JP6375705B2 (ja) 情報処理システム、端末装置及びプログラム
JP2012247859A (ja) 端末のリモートシステム、リモート操作方法
CN102932325B (zh) 识别装置用户的联系人的方法、***和服务器
US20160381114A1 (en) Method and system for replicating a communication application on an auxiliary computing device
WO2021036583A1 (zh) 基于区块链的清算方法、装置、设备及计算机存储介质
JP5632315B2 (ja) 端末のリモート操作システム、リモート操作方法
CN108737350B (zh) 一种信息处理方法及客户端
JP5954067B2 (ja) 通信制御方法、情報処理システムおよびプログラム
JP2012242898A (ja) 端末を設定する設定サーバ、設定共有方法及び設定共有プログラム
JP2015194969A (ja) 配信装置、配信方法および配信プログラム
JP2017010484A (ja) アプリケーション提供サーバ、アプリケーション設定端末、アプリケーション提供システム、アプリケーション提供方法及びアプリケーション提供サーバ用プログラム。
JP6498462B2 (ja) ユーザ情報登録サーバ、ユーザ情報登録方法及び、ユーザ情報登録プログラム
CN109213907A (zh) 用于推荐信息的方法与设备
US11489795B2 (en) Systems and methods for providing contact and information exchange and management thereof
JP6057930B2 (ja) 接続情報共有サーバ、接続情報共有方法、接続情報共有サーバ用プログラム
JP6042371B2 (ja) 端末データ管理サーバ、端末データ管理方法、及び、端末データ管理サーバ用プログラム
JP2020052672A (ja) 情報処理装置、情報処理方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160310

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170316

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170919

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171113

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180306

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20180731