(57)【要約】【課題】異なる端末にそれぞれインストールされているアプリケーション間で連携して処理を行うことを図る。【解決手段】Ｗｅｂサーバ２は、ＡＰＩ登録情報を記憶するＡＰＩＤＢ２２と、端末１−１からのＡＰＩ登録要求に応じてＡＰＩ登録情報をＡＰＩＤＢ２２へ格納するクライアントＡＰＩ登録・ＵＲＬ生成部２１と、端末１−２からのＡＰＩ呼び出し要求に応じてＡＰＩＤＢ２２から該当するＡＰＩ登録情報を取得し、ＡＰＩ登録要求元の端末１−１に対してＡＰＩの呼び出しを行い、該呼び出したＡＰＩに対応するアプリケーションとＡＰＩ呼び出し要求元の端末１−２との間の情報の転送を行うクライアントＡＰＩアクセス部２５と、を備える。【選択図】図２
2015069547.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーション登録情報を記憶するアプリケーションデータベースと、
端末装置からのアプリケーション登録要求に応じてアプリケーション登録情報を前記アプリケーションデータベースへ格納するアプリケーション登録部と、
端末装置からのアプリケーション呼び出し要求に応じて前記アプリケーションデータベースから該当するアプリケーション登録情報を取得し、アプリケーション登録要求元の端末装置に対してアプリケーションの呼び出しを行い、該呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行う端末アプリケーションアクセス部と、
を備えたことを特徴とするサーバ装置。
【請求項２】
前記アプリケーション登録情報に対するアクセスＵＲＬを生成するＵＲＬ生成部を備えたことを特徴とする請求項１に記載のサーバ装置。
【請求項３】
前記端末装置からのアプリケーション登録要求時の通信コネクションを維持し、前記アプリケーションの呼び出しの際に該通信コネクションを利用することを特徴とする請求項１又は２に記載のサーバ装置。
【請求項４】
前記端末装置からのアプリケーション登録要求時の通信コネクションを切断し、前記アプリケーションの呼び出しの際に再度、通信コネクションを確立することを特徴とする請求項１又は２に記載のサーバ装置。
【請求項５】
アプリケーション登録情報を記憶し、該アプリケーション登録情報に基づいて呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行うサーバ装置と通信する端末装置であり、
前記サーバ装置に対して、自端末装置で有するアプリケーションの登録要求を行う端末アプリケーション登録部と、
前記サーバ装置からのアプリケーションの呼び出しに応じて該当するアプリケーションを実行させ、アプリケーションによる処理の応答を前記サーバ装置へ行う端末アプリケーション実行部と、
を備えたことを特徴とする端末装置。
【請求項６】
アプリケーション登録情報を記憶し、該アプリケーション登録情報に基づいて呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行うサーバ装置と通信する端末装置であり、
前記サーバ装置に対してアプリケーションの呼び出し要求を行い、前記サーバ装置を介して呼び出されたアプリケーションとの間で情報を送受する端末アプリケーション呼び出し部を備えたことを特徴とする端末装置。
【請求項７】
アプリケーション登録情報を記憶するアプリケーションデータベースを有するサーバ装置における通信方法であり、
端末装置からのアプリケーション登録要求に応じてアプリケーション登録情報を前記アプリケーションデータベースへ格納するアプリケーション登録ステップと、
端末装置からのアプリケーション呼び出し要求に応じて前記アプリケーションデータベースから該当するアプリケーション登録情報を取得し、アプリケーション登録要求元の端末装置に対してアプリケーションの呼び出しを行い、該呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行う端末アプリケーションアクセスステップと、
を含むことを特徴とする通信方法。
【請求項８】
アプリケーション登録情報を記憶し、該アプリケーション登録情報に基づいて呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行うサーバ装置と通信する端末装置における通信方法であり、
前記サーバ装置に対して、自端末装置で有するアプリケーションの登録要求を行う端末アプリケーション登録ステップと、
前記サーバ装置からのアプリケーションの呼び出しに応じて該当するアプリケーションを実行させ、アプリケーションによる処理の応答を前記サーバ装置へ行う端末アプリケーション実行ステップと、
を含むことを特徴とする通信方法。
【請求項９】
アプリケーション登録情報を記憶し、該アプリケーション登録情報に基づいて呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行うサーバ装置と通信する端末装置における通信方法であり、
前記サーバ装置に対してアプリケーションの呼び出し要求を行い、前記サーバ装置を介して呼び出されたアプリケーションとの間で情報を送受する端末アプリケーション呼び出しステップを含むことを特徴とする通信方法。
【請求項１０】
アプリケーション登録情報を記憶するアプリケーションデータベースを有するサーバ装置のコンピュータに、
端末装置からのアプリケーション登録要求に応じてアプリケーション登録情報を前記アプリケーションデータベースへ格納するアプリケーション登録ステップと、
端末装置からのアプリケーション呼び出し要求に応じて前記アプリケーションデータベースから該当するアプリケーション登録情報を取得し、アプリケーション登録要求元の端末装置に対してアプリケーションの呼び出しを行い、該呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行う端末アプリケーションアクセスステップと、
を実行させるためのコンピュータプログラム。
【請求項１１】
アプリケーション登録情報を記憶し、該アプリケーション登録情報に基づいて呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行うサーバ装置と通信する端末装置のコンピュータに、
前記サーバ装置に対して、自端末装置で有するアプリケーションの登録要求を行う端末アプリケーション登録ステップと、
前記サーバ装置からのアプリケーションの呼び出しに応じて該当するアプリケーションを実行させ、アプリケーションによる処理の応答を前記サーバ装置へ行う端末アプリケーション実行ステップと、
を実行させるためのコンピュータプログラム。
【請求項１２】
アプリケーション登録情報を記憶し、該アプリケーション登録情報に基づいて呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行うサーバ装置と通信する端末装置のコンピュータに、
前記サーバ装置に対してアプリケーションの呼び出し要求を行い、前記サーバ装置を介して呼び出されたアプリケーションとの間で情報を送受する端末アプリケーション呼び出しステップを実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションソフトウェア（以下、アプリケーションと称する）の利用に係るサーバ装置、端末装置、通信方法およびコンピュータプログラムに関する。
【背景技術】
【０００２】
近年、同じ携帯端末に具備される複数のアプリケーションの間で、処理を委託したり、あるアプリケーションから他のアプリケーションを呼び出したりする動作が一般に行われている。例えば、あるアプリケーションで写真を撮影、編集した後に、他のアプリケーションでさらに保存やブログ（blog）へのアップロードなどを行うことが挙げられる。
【０００３】
そのアプリケーション連携技術として例えば非特許文献１に記載の従来技術が知られている。この従来技術では、アプリケーションは、自身が他のアプリケーションから委託可能な処理形式をインストール時にオペレーティングシステム（OS）に登録しておく。そして、実際に処理が委託される段階になると、アプリケーションが自動的にＯＳを介して呼び出される。また、ＨＴＭＬ（Hyper Text Markup Language）５を活用したＷｅｂアプリケーションでは、「Web Activities」と呼ばれる機能（例えば非特許文献２参照）を用いることにより、Ｗｅｂアプリケーション間で連携することができる。これらアプリケーション連携技術では、連携する双方のアプリケーションが同一端末上にインストールされていることが必要である。
【０００４】
また、「Web API（Application Program Interface）」と呼ばれる技術が知られている。「Web API」によれば、端末は通信ネットワークを介してＷｅｂサーバにより提供されるアプリケーションにアクセス可能である。例えば、端末は、Ｗｅｂサーバの特定のＵＲＬ（Uniform Resource Locator）にアクセスすると、Ｗｅｂサーバにより提供されるショートメッセージサービス（SMS）やファクシミリ（FAX）サービス、電子メールサービス、写真変換サービス、無線ＬＡＮ情報による位置特定サービスなどを利用できる。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】“Intent”，インターネット＜ＵＲＬ：http://developer.android.com/reference/android/content/Intent.html＞
【非特許文献２】“Web Activities”，インターネット＜ＵＲＬ：https://developer.mozilla.org/ja/docs/WebAPI/Web_Activities＞
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、上述した従来のアプリケーション連携技術では、異なる端末にそれぞれインストールされているアプリケーション間で連携して処理を行うことは難しい。例えば、端末がＷｅｂサーバとして機能し「Web API」を利用すれば、端末間でのアプリケーション間の連携が可能である。しかしながら、通信ネットワークに設けられているＮＡＴ（Network Address Translation）やファイアウォール（Firewall）などによりＷｅｂサーバとして機能する端末から他の端末に対してアクセスすることができなかったり、Ｗｅｂアプリケーションが動作するブラウザにはＷｅｂサーバとして動作する機能が無かったりするために、現実的には困難である。
【０００７】
また、端末間の通信を中継するサーバもあるが、専用のプロトコルを用いて通信経路を確立するだけであり、宛先の解決やアプリケーションの呼び出しなどは無く、端末間でのアプリケーション間の連携はサポートされない。
【０００８】
また、端末からＷｅｂサーバを経由して他の端末にアクセスすることも行われているが、その機能は専用に作り込みされており、端末へのアプリケーションインストール時に該インストールされるアプリケーションの機能を登録するなど動的な機能の追加や端末間でのアプリケーション間の連携はサポートされない。
【０００９】
このため、通信ネットワークを介して、異なる端末にそれぞれインストールされているアプリケーション間で連携して処理を行うことができれば、リソースに余裕のある端末で優先的な処理を行ったり、電化機器の制御など特定の端末上で動く必要のあるアプリケーションで特定の処理を行ったりするなど、複数の端末の利用の幅が広がる。
【００１０】
本発明は、このような事情を考慮してなされたもので、異なる端末にそれぞれインストールされているアプリケーション間で連携して処理を行うことができるサーバ装置、端末装置、通信方法およびコンピュータプログラムを提供することを課題とする。
【課題を解決するための手段】
【００１１】
（１）本発明に係るサーバ装置は、アプリケーション登録情報を記憶するアプリケーションデータベースと、端末装置からのアプリケーション登録要求に応じてアプリケーション登録情報を前記アプリケーションデータベースへ格納するアプリケーション登録部と、端末装置からのアプリケーション呼び出し要求に応じて前記アプリケーションデータベースから該当するアプリケーション登録情報を取得し、アプリケーション登録要求元の端末装置に対してアプリケーションの呼び出しを行い、該呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行う端末アプリケーションアクセス部と、を備えたことを特徴とする。
【００１２】
（２）本発明に係るサーバ装置においては、上記（１）のサーバ装置において、前記アプリケーション登録情報に対するアクセスＵＲＬを生成するＵＲＬ生成部を備えたことを特徴とする。
【００１３】
（３）本発明に係るサーバ装置においては、上記（１）又は（２）のサーバ装置において、前記端末装置からのアプリケーション登録要求時の通信コネクションを維持し、前記アプリケーションの呼び出しの際に該通信コネクションを利用することを特徴とする。
【００１４】
（４）本発明に係るサーバ装置においては、上記（１）又は（２）のサーバ装置において、前記端末装置からのアプリケーション登録要求時の通信コネクションを切断し、前記アプリケーションの呼び出しの際に再度、通信コネクションを確立することを特徴とする。
【００１５】
（５）本発明に係る端末装置は、アプリケーション登録情報を記憶し、該アプリケーション登録情報に基づいて呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行うサーバ装置と通信する端末装置であり、前記サーバ装置に対して、自端末装置で有するアプリケーションの登録要求を行う端末アプリケーション登録部と、前記サーバ装置からのアプリケーションの呼び出しに応じて該当するアプリケーションを実行させ、アプリケーションによる処理の応答を前記サーバ装置へ行う端末アプリケーション実行部と、を備えたことを特徴とする。
【００１６】
（６）本発明に係る端末装置は、アプリケーション登録情報を記憶し、該アプリケーション登録情報に基づいて呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行うサーバ装置と通信する端末装置であり、前記サーバ装置に対してアプリケーションの呼び出し要求を行い、前記サーバ装置を介して呼び出されたアプリケーションとの間で情報を送受する端末アプリケーション呼び出し部を備えたことを特徴とする。
【００１７】
（７）本発明に係る通信方法は、アプリケーション登録情報を記憶するアプリケーションデータベースを有するサーバ装置における通信方法であり、端末装置からのアプリケーション登録要求に応じてアプリケーション登録情報を前記アプリケーションデータベースへ格納するアプリケーション登録ステップと、端末装置からのアプリケーション呼び出し要求に応じて前記アプリケーションデータベースから該当するアプリケーション登録情報を取得し、アプリケーション登録要求元の端末装置に対してアプリケーションの呼び出しを行い、該呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行う端末アプリケーションアクセスステップと、を含むことを特徴とする。
【００１８】
（８）本発明に係る通信方法は、アプリケーション登録情報を記憶し、該アプリケーション登録情報に基づいて呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行うサーバ装置と通信する端末装置における通信方法であり、前記サーバ装置に対して、自端末装置で有するアプリケーションの登録要求を行う端末アプリケーション登録ステップと、前記サーバ装置からのアプリケーションの呼び出しに応じて該当するアプリケーションを実行させ、アプリケーションによる処理の応答を前記サーバ装置へ行う端末アプリケーション実行ステップと、を含むことを特徴とする。
【００１９】
（９）本発明に係る通信方法は、アプリケーション登録情報を記憶し、該アプリケーション登録情報に基づいて呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行うサーバ装置と通信する端末装置における通信方法であり、前記サーバ装置に対してアプリケーションの呼び出し要求を行い、前記サーバ装置を介して呼び出されたアプリケーションとの間で情報を送受する端末アプリケーション呼び出しステップを含むことを特徴とする。
【００２０】
（１０）本発明に係るコンピュータプログラムは、アプリケーション登録情報を記憶するアプリケーションデータベースを有するサーバ装置のコンピュータに、端末装置からのアプリケーション登録要求に応じてアプリケーション登録情報を前記アプリケーションデータベースへ格納するアプリケーション登録ステップと、端末装置からのアプリケーション呼び出し要求に応じて前記アプリケーションデータベースから該当するアプリケーション登録情報を取得し、アプリケーション登録要求元の端末装置に対してアプリケーションの呼び出しを行い、該呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行う端末アプリケーションアクセスステップと、を実行させるためのコンピュータプログラムであることを特徴とする。
【００２１】
（１１）本発明に係るコンピュータプログラムは、アプリケーション登録情報を記憶し、該アプリケーション登録情報に基づいて呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行うサーバ装置と通信する端末装置のコンピュータに、前記サーバ装置に対して、自端末装置で有するアプリケーションの登録要求を行う端末アプリケーション登録ステップと、前記サーバ装置からのアプリケーションの呼び出しに応じて該当するアプリケーションを実行させ、アプリケーションによる処理の応答を前記サーバ装置へ行う端末アプリケーション実行ステップと、を実行させるためのコンピュータプログラムであることを特徴とする。
【００２２】
（１２）本発明に係るコンピュータプログラムは、アプリケーション登録情報を記憶し、該アプリケーション登録情報に基づいて呼び出したアプリケーションとアプリケーション呼び出し要求元の端末装置との間の情報の転送を行うサーバ装置と通信する端末装置のコンピュータに、前記サーバ装置に対してアプリケーションの呼び出し要求を行い、前記サーバ装置を介して呼び出されたアプリケーションとの間で情報を送受する端末アプリケーション呼び出しステップを実行させるためのコンピュータプログラムであることを特徴とする。
【発明の効果】
【００２３】
本発明によれば、異なる端末にそれぞれインストールされているアプリケーション間で連携して処理を行うことができるという効果が得られる。
【図面の簡単な説明】
【００２４】
【図１】本発明の一実施形態に係る通信システムの概略構成図である。
【図２】図１に示す端末１−１、１−２、Ｗｅｂサーバ２の構成図である。
【図３】本発明の一実施形態に係るＡＰＩ登録処理の流れを示すシーケンスチャートである。
【図４】本発明の一実施形態に係るＡＰＩ呼び出し処理の流れを示すシーケンスチャートである。
【図５】本発明の一実施形態に係る端末１−２の表示画面１００の構成例を示す図である。
【発明を実施するための形態】
【００２５】
以下、図面を参照し、本発明の実施形態について説明する。
図１は、本発明の一実施形態に係る通信システムの概略構成図である。図１において、端末１−１、１−２は無線回線により無線基地局３と接続する。無線基地局３としては、例えば、携帯電話網の基地局（例えば、３Ｇ回線の基地局）や無線ＬＡＮのアクセスポイント（Access Point：AP）などが挙げられる。無線ＬＡＮとしては、例えば、ＷｉＦｉ規格のものが挙げられる。端末１は、無線基地局３を介して、インターネット等のＩＰ（Internet Protocol）ネットワーク５に接続されるＷｅｂサーバ２との間で通信することができる。
【００２６】
無線基地局３とＷｅｂサーバ２間の通信経路上には、ＮＡＴやファイアウォール等のネットワーク機器４が存在している。このため、Ｗｅｂサーバ２から端末１−１、１−２へＴＣＰ（Transmission Control Protocol）接続を行うことは制限される。
【００２７】
端末１−１には、アプリケーション１０（Ａ）がインストールされている。端末１−２には、アプリケーション１０（Ｂ）がインストールされている。本実施形態では、ＡＰＩを利用してアプリケーション１０を呼び出し可能とする。このため、アプリケーション１０毎にＡＰＩが定義されている。例えば、アプリケーション１０（Ａ）を呼び出すためのＡＰＩ、アプリケーション１０（Ｂ）を呼び出すためのＡＰＩ、がそれぞれに定義されている。
【００２８】
図２は、図１に示す端末１−１、１−２、Ｗｅｂサーバ２の構成図である。端末１−１は、クライアントＡＰＩ登録部１１とクライアントＡＰＩ実行部１２を有する。端末１−２は、クライアントＡＰＩ呼び出し部１３とクライアントＡＰＩ処理問い合わせ部１４を有する。Ｗｅｂサーバ２は、クライアントＡＰＩ登録・ＵＲＬ生成部２１とＡＰＩデータベース（ＡＰＩＤＢ）２２とクライアントＡＰＩ列挙部２３とクライアントＡＰＩ待ち受け部２４とクライアントＡＰＩアクセス部２５を有する。
【００２９】
端末１−１において、クライアントＡＰＩ登録部１１は、自端末１−１にインストールされている各アプリケーション１０にそれぞれ対応するＡＰＩの登録要求を行う。クライアントＡＰＩ実行部１２は、Ｗｅｂサーバ２からのＡＰＩの呼び出しに応じて、該当するＡＰＩを呼び出す。このＡＰＩの呼び出しによって、該ＡＰＩに対応するアプリケーション１０が実行される。
【００３０】
端末１−２において、クライアントＡＰＩ呼び出し部１３は、Ｗｅｂサーバ２に対して、ＡＰＩの呼び出し要求を行う。クライアントＡＰＩ処理問い合わせ部１４は、Ｗｅｂサーバ２に対して、利用可能なＡＰＩの問い合わせを行う。
【００３１】
Ｗｅｂサーバ２において、クライアントＡＰＩ登録・ＵＲＬ生成部２１は、端末１−１からのＡＰＩ登録要求に応じて、該当するＡＰＩ登録情報をＡＰＩＤＢ２２に格納する。ＡＰＩ登録情報は、ＡＰＩおよびＡＰＩに対応するアプリケーション１０に関する情報であり、ＡＰＩ識別情報（ＡＰＩ名など）、アプリケーション名、アプリケーション１０のアイコン、アプリケーション１０が処理可能なデータ形式やファイル形式、データサイズ、ＡＰＩ登録要求元の端末１−１の端末名や通信ネットワークの種類などである。
【００３２】
また、クライアントＡＰＩ登録・ＵＲＬ生成部２１は、ＡＰＩ登録情報に対するアクセスＵＲＬを生成する。このアクセスＵＲＬは、通信ネットワークを介して、該当するＡＰＩ登録情報へアクセスするためのＵＲＬである。クライアントＡＰＩ登録・ＵＲＬ生成部２１は、生成したアクセスＵＲＬをＡＰＩＤＢ２２に格納する。
【００３３】
また、クライアントＡＰＩ登録・ＵＲＬ生成部２１は、端末１−１からのＡＰＩ登録要求時の通信コネクション４０の接続情報をＡＰＩＤＢ２２に格納する。通信コネクション４０として、例えば、ＴＣＰコネクション、ウェブソケット（WebSocket）のセッションなどが挙げられる。接続情報として、例えばＴＣＰコネクションのＩＰアドレスやポート番号、内部のソケット番号などが挙げられる。
【００３４】
また、クライアントＡＰＩ登録・ＵＲＬ生成部２１は、端末１−１からＡＰＩの登録解除の要求に応じて、該当するＡＰＩ登録情報、アクセスＵＲＬ、接続情報をＡＰＩＤＢ２２から削除する。
【００３５】
ＡＰＩＤＢ２２は、アプリケーション登録情報として、ＡＰＩ登録情報ごとにそれぞれ対応するアクセスＵＲＬと接続情報を関連付けて記憶する。なお、ＡＰＩＤＢ２２は、ＳＱＬなどのデータベースシステムを利用してもよく、又は、メモリ等の記憶装置に保持するものであってもよい。
【００３６】
クライアントＡＰＩ列挙部２３は、端末１−２からの利用可能なＡＰＩの問い合わせに応じて、該当するＡＰＩ登録情報、アクセスＵＲＬをＡＰＩＤＢ２２から取得して端末１−２へ返信する。
【００３７】
クライアントＡＰＩ待ち受け部２４は、ＡＰＩＤＢ２２に格納されているアクセスＵＲＬでアクセスの待ち受けを行う。クライアントＡＰＩ待ち受け部２４は、アクセスされたアクセスＵＲＬに応じて、該当するＡＰＩの呼び出しをクライアントＡＰＩアクセス部２５へ指示する。また、クライアントＡＰＩ待ち受け部２４は、クライアントＡＰＩアクセス部２５から受信したＡＰＩの応答を、該ＡＰＩの呼び出し要求元の端末１−２へ転送する。
【００３８】
クライアントＡＰＩアクセス部２５は、クライアントＡＰＩ待ち受け部２４から指示されたＡＰＩの呼び出しを、ＡＰＩＤＢ２２に格納されている該当する接続情報に基づく通信コネクション４０を使用して端末１−１へ行う。また、クライアントＡＰＩアクセス部２５は、ＡＰＩの呼び出しを行った端末１−１から受信したＡＰＩの応答をクライアントＡＰＩ待ち受け部２４へ転送する。
【００３９】
次に、図３、図４を参照して、本実施形態に係る通信システムの動作を説明する。まず図３を参照して、本実施形態に係るＡＰＩ登録処理を説明する。図３は、本実施形態に係るＡＰＩ登録処理の流れを示すシーケンスチャートである。
【００４０】
（ステップＳ１）
端末１−１のクライアントＡＰＩ登録部１１は、通信コネクション４０を使用して、Ｗｅｂサーバ２に対し、ＡＰＩ登録要求を行う。ＡＰＩ登録要求では、ＡＰＩおよびＡＰＩに対応するアプリケーション１０に関する情報として、ＡＰＩ識別情報（ＡＰＩ名など）、アプリケーション名、アプリケーション１０のアイコン、アプリケーション１０が処理可能なデータ形式やファイル形式（例えば、ファイルの拡張子やデータ種別（写真、音楽、テキストなど））、データサイズなどをＷｅｂサーバ２へ送信する。
【００４１】
（ステップＳ２）
Ｗｅｂサーバ２のクライアントＡＰＩ登録・ＵＲＬ生成部２１は、端末１−１からのＡＰＩ登録要求に応じて、該当するＡＰＩ登録情報に対するアクセスＵＲＬを生成する。アクセスＵＲＬの生成方法として、例えばＷｅｂサーバ２のＵＲＬを基に生成することが挙げられる。
【００４２】
（ステップＳ３）
クライアントＡＰＩ登録・ＵＲＬ生成部２１は、ＡＰＩ登録要求元の端末１−１間の通信コネクション４０を維持する。これは、ＡＰＩ呼び出し時に該通信コネクション４０を利用するためである。
【００４３】
なお、端末１−１は、一時的に通信コネクション４０を切断し、必要に応じて再度、通信コネクション４０を確立してもよい。また、端末１−１の電源を切るときなど、端末１−１で処理を継続できない場合には、端末１−１のクライアントＡＰＩ登録部１１は自己のＡＰＩ登録要求に関する登録解除をＷｅｂサーバ２へ要求する。
【００４４】
（ステップＳ４）
クライアントＡＰＩ登録・ＵＲＬ生成部２１は、端末１−１からのＡＰＩ登録要求に該当するＡＰＩ登録情報、アクセスＵＲＬ、接続情報をＡＰＩＤＢ２２に保持要求する。
【００４５】
（ステップＳ５）
ＡＰＩＤＢ２２は、クライアントＡＰＩ登録・ＵＲＬ生成部２１から保持要求されたＡＰＩ登録情報、アクセスＵＲＬ、接続情報を関連付けて格納する。
【００４６】
（ステップＳ６）
ＡＰＩＤＢ２２は、クライアントＡＰＩ登録・ＵＲＬ生成部２１へ、保持要求に対する応答を行う。このとき、ＡＰＩＤＢ２２に保持要求の情報と同じＡＰＩが既に登録されていた場合など、登録に失敗した場合には、クライアントＡＰＩ登録・ＵＲＬ生成部２１へエラーの応答を返す。
【００４７】
（ステップＳ７）
クライアントＡＰＩ登録・ＵＲＬ生成部２１は、クライアントＡＰＩ待ち受け部２４に対して、アクセスＵＲＬの更新ありを通知する。
【００４８】
（ステップＳ８）
クライアントＡＰＩ待ち受け部２４は、ＡＰＩＤＢ２２に対して、更新されたアクセスＵＲＬの取得要求を行う。この取得要求では、更新されたアクセスＵＲＬのみを取得してもよく、又は、定期的に全アクセスＵＲＬを取得してもよい。
【００４９】
（ステップＳ９）
ＡＰＩＤＢ２２は、アクセスＵＲＬの取得要求に応じて、クライアントＡＰＩ待ち受け部２４に対し、該当するアクセスＵＲＬおよびＡＰＩ情報（例えばＡＰＩ識別情報）を返す。
【００５０】
（ステップＳ１０）
クライアントＡＰＩ待ち受け部２４は、ＡＰＩＤＢ２２から取得したアクセスＵＲＬおよびＡＰＩ情報に基づいて、該当するアクセスＵＲＬへのアクセス（ＡＰＩの呼び出し要求）を待ち受ける。
【００５１】
（ステップＳ１１）
クライアントＡＰＩ登録・ＵＲＬ生成部２１は、通信コネクション４０を使用して、ＡＰＩ登録要求元の端末１−１に対し、ＡＰＩ登録要求の応答を行う。このＡＰＩ登録要求の応答では、ＡＰＩ登録の結果（成功または失敗）と、ＡＰＩ登録の成功の場合には該当するアクセスＵＲＬとを、ＡＰＩ登録要求元の端末１−１へ返す。
【００５２】
次に図４を参照して、本実施形態に係るＡＰＩ呼び出し処理を説明する。図４は、本実施形態に係るＡＰＩ呼び出し処理の流れを示すシーケンスチャートである。
【００５３】
（ステップＳ２１）
端末１−２のクライアントＡＰＩ処理問い合わせ部１４は、Ｗｅｂサーバ２に対して、利用可能なＡＰＩの問い合わせを行う。この問い合わせでは、処理対象のデータの情報（例えば、ファイル形式、データ種別（写真、音楽、テキストなど）等）をＷｅｂサーバ２へ送信する。
【００５４】
（ステップＳ２２）
Ｗｅｂサーバ２のクライアントＡＰＩ列挙部２３は、端末１−２からの利用可能なＡＰＩの問い合わせに応じて、ＡＰＩＤＢ２２に対し、処理対象のデータの情報を送り、該当するＡＰＩの問い合わせを行う。
【００５５】
（ステップＳ２３）
ＡＰＩＤＢ２２は、クライアントＡＰＩ列挙部２３に対し、ＡＰＩの問い合わせの結果として、該当するＡＰＩ登録情報、アクセスＵＲＬを返す。なお、ＡＰＩの問い合わせに該当するものが無い場合にはエラーを返す。
【００５６】
（ステップＳ２４）
クライアントＡＰＩ列挙部２３は、ＡＰＩＤＢ２２から取得したＡＰＩ登録情報、アクセスＵＲＬを、問い合わせ元の端末１−２へ返す。
【００５７】
（ステップＳ２５）
端末１−２のクライアントＡＰＩ処理問い合わせ部１４は、Ｗｅｂサーバ２から取得したＡＰＩ登録情報に基づいて、利用するＡＰＩを選択する。このＡＰＩの選択は、端末１−２が自動的に行ってもよく、又は、端末１−２の画面上に利用可能なＡＰＩの情報を表示しユーザにより選択が行われるようにしてもよい。また、適当なＡＰＩが無い場合には、ＡＰＩの呼び出しを中止してもよい。
【００５８】
（ステップＳ２６）
端末１−２のクライアントＡＰＩ処理問い合わせ部１４は、選択されたＡＰＩの呼び出しをクライアントＡＰＩ呼び出し部１３へ要求する。この要求では、Ｗｅｂサーバ２から取得した該当するアクセスＵＲＬをクライアントＡＰＩ呼び出し部１３へ送る。
【００５９】
（ステップＳ２７）
クライアントＡＰＩ呼び出し部１３は、クライアントＡＰＩ処理問い合わせ部１４から取得したアクセスＵＲＬへアクセスし、ＡＰＩ呼び出し要求を行う。このＡＰＩ呼び出し要求では、処理対象のデータなどをＷｅｂサーバ２へ送り、処理要求を行う。
【００６０】
（ステップＳ２８）
Ｗｅｂサーバ２のクライアントＡＰＩ待ち受け部２４は、端末１−２からのＡＰＩ呼び出し要求に応じて、アクセスされたアクセスＵＲＬに該当するＡＰＩの呼び出しをクライアントＡＰＩアクセス部２５へ指示する。この指示では、ＡＰＩ呼び出し要求元の端末１−２から受信した処理対象のデータなどをクライアントＡＰＩアクセス部２５へ送り、処理要求を行う。
【００６１】
（ステップＳ２９）
クライアントＡＰＩアクセス部２５は、クライアントＡＰＩ待ち受け部２４からのＡＰＩ呼び出し指示に応じて、ＡＰＩＤＢ２２に対し、呼び出すＡＰＩに該当する接続情報を要求する。
【００６２】
（ステップＳ３０）
ＡＰＩＤＢ２２は、クライアントＡＰＩアクセス部２５からの接続情報の要求に応じて、該当する接続情報をクライアントＡＰＩアクセス部２５へ返す。
【００６３】
（ステップＳ３１）
クライアントＡＰＩアクセス部２５は、ＡＰＩＤＢ２２から取得した接続情報に基づく通信コネクション４０を使用して、端末１−１に対し、クライアントＡＰＩ待ち受け部２４から指示されたＡＰＩの呼び出しを行う。
【００６４】
このとき、接続情報に基づく通信コネクション４０が切断されていた場合には、クライアントＡＰＩ待ち受け部２４に対し、ＡＰＩの呼び出しの失敗を返す。又は、定期的に接続されるIP Pushなどで端末１−１への通知が可能である場合には、ＡＰＩの呼び出しのための通信コネクション４０の再開を端末１−１へ通知する。これにより、端末１−１から通信コネクション４０の再開が行われた場合には、該通信コネクション４０を使用して、端末１−１に対し、クライアントＡＰＩ待ち受け部２４から指示されたＡＰＩの呼び出しを行う。なお、ＡＰＩの呼び出しが失敗した場合には、クライアントＡＰＩ待ち受け部２４からＡＰＩ呼び出し要求元の端末１−２へエラーを返す。
【００６５】
クライアントＡＰＩアクセス部２５は、端末１−１に対するＡＰＩの呼び出しが成功した場合には、クライアントＡＰＩ待ち受け部２４から取得した処理対象のデータなどを端末１−１へ送信し、処理要求を行う。
【００６６】
（ステップＳ３２）
端末１−１のクライアントＡＰＩ実行部１２は、Ｗｅｂサーバ２からのＡＰＩの呼び出しに応じて、該当するＡＰＩを呼び出す。そして、クライアントＡＰＩ実行部１２は、Ｗｅｂサーバ２から取得した処理対象のデータなどをＡＰＩへ渡し、処理を指示する。これにより、呼び出されたＡＰＩに対応するアプリケーション１０が実行され、処理対象のデータなどの処理が該アプリケーション１０により行われる。
【００６７】
（ステップＳ３３）
クライアントＡＰＩ実行部１２は、通信コネクション４０を使用して、アプリケーション１０によって処理された処理結果をＷｅｂサーバ２へ返す。該処理結果には、アプリケーション１０の処理の結果として得られたデータが含まれる。
【００６８】
（ステップＳ３４）
Ｗｅｂサーバ２のクライアントＡＰＩアクセス部２５は、端末１−１から取得した処理結果をクライアントＡＰＩ待ち受け部２４へ転送する。
【００６９】
（ステップＳ３５）
クライアントＡＰＩ待ち受け部２４は、クライアントＡＰＩアクセス部２５から取得した処理結果をＡＰＩ呼び出し要求元の端末１−２へ転送する。
【００７０】
なお、ステップＳ２１〜Ｓ２５までの処理は、利用するＡＰＩやアクセスＵＲＬが分かっている場合には省略してもよい。
【００７１】
図５は、本実施形態に係る端末１−２の表示画面１００の構成例を示す図である。図５において、表示画面１００には、例えば写真の共有先として利用可能なアプリケーション１０の情報（例えばアイコン）が表示されている。本実施形態によれば、図５に示されるように、自端末１−２にインストールされているアプリケーション１０（Ｂ）、（Ｃ）の各表示１１０だけではなく、他の端末１−１（他携帯端末や自宅ＰＣなど）にインストールされているアプリケーション１０（Ａ）、（Ｄ）の各表示１２０も、表示画面１００に表示されている。
【００７２】
端末１−２のユーザは、表示画面１００に表示されている表示１１０、１２０を操作することにより、各表示１１０、１２０に対応するアプリケーション１０の中から、例えば写真の共有先として利用するアプリケーション１０を選択することができる。つまり、自端末１−２にインストールされているアプリケーション１０（Ｂ）、（Ｃ）だけではなく、他の端末１−１（他携帯端末や自宅ＰＣなど）にインストールされているアプリケーション１０（Ａ）、（Ｄ）も、例えば写真の共有先として利用することができる。
【００７３】
上述した実施形態によれば、異なる端末にそれぞれインストールされているアプリケーション間で連携して処理を行うことができる。これにより、より計算力のある端末で処理したり、又は、特定の端末でしか取得できない情報を遠隔で扱ったり、又は、特定の端末でしか操作できないことを遠隔で操作したりすることができる。
【００７４】
また、端末上でＷｅｂサーバを構築する必要がないため、ブラウザなど既存のクライアントのみを考慮したプラットフォーム上でも実現可能である。また、端末がＷｅｂサーバとして接続を受け付ける必要がないため、ＮＡＴやファイアウォールが介在する通信環境下にあっても適用可能である。
【００７５】
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【００７６】
なお、アプリケーション１０としては、例えば、画像処理、写真撮影、センサ情報の提供、電子メール送信など、外部からの情報要求や操作要求、処理要求を受け入れることができる各種のアプリケーションを利用可能である。
【００７７】
また、Ｗｅｂサーバ２に対する利用可能なＡＰＩの問い合わせは、特定の機能を有するアプリケーション１０に対応するＡＰＩ群ごとであってもよく、又は、個々のアプリケーション１０に対応するＡＰＩごとであってもよい。
【００７８】
また、ＡＰＩの登録、呼び出しなどの処理は、専用のアプリケーションによって行われてもよく、又は、ＯＳやブラウザによって行われてもよい。
【００７９】
また、同一端末に対して、クライアントＡＰＩ登録部１１、クライアントＡＰＩ実行部１２、クライアントＡＰＩ呼び出し部１３およびクライアントＡＰＩ処理問い合わせ部１４を備えるようにしてもよい。
【００８０】
また、ＡＰＩの登録とＡＰＩの呼び出しの受け付けとをそれぞれ別個のＷｅｂサーバ２で行うようにしてもよい。
【００８１】
また、上述した端末１−１、１−２、Ｗｅｂサーバ２を実現するためのコンピュータプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するようにしてもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものであってもよい。
【００８２】
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、フラッシュメモリ等の書き込み可能な不揮発性メモリ、ＤＶＤ（Digital Versatile Disk）等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【００８３】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（例えばＤＲＡＭ（Dynamic Random Access Memory））のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【符号の説明】
【００８４】
１−１，１−２…端末（端末装置）、２…Ｗｅｂサーバ（サーバ装置）、１１…クライアントＡＰＩ登録部（端末アプリケーション登録部）、１２…クライアントＡＰＩ実行部（端末アプリケーション実行部）、１３…クライアントＡＰＩ呼び出し部（端末アプリケーション呼び出し部）、１４…クライアントＡＰＩ処理問い合わせ部、２１…クライアントＡＰＩ登録・ＵＲＬ生成部（アプリケーション登録部、ＵＲＬ生成部）、２２…ＡＰＩＤＢ（アプリケーションデータベース）、２３…クライアントＡＰＩ列挙部、２４…クライアントＡＰＩ待ち受け部、２５…クライアントＡＰＩアクセス部（端末アプリケーションアクセス部）、４０…通信コネクション
【図１】
2015069547.tif 000003
【図２】
2015069547.tif 000004
【図３】
2015069547.tif 000005
【図４】
2015069547.tif 000006
【図５】
2015069547.tif 000007