JP2015114892A - サービス提供システム及びサービス提供方法 - Google Patents
サービス提供システム及びサービス提供方法 Download PDFInfo
- Publication number
- JP2015114892A JP2015114892A JP2013257093A JP2013257093A JP2015114892A JP 2015114892 A JP2015114892 A JP 2015114892A JP 2013257093 A JP2013257093 A JP 2013257093A JP 2013257093 A JP2013257093 A JP 2013257093A JP 2015114892 A JP2015114892 A JP 2015114892A
- Authority
- JP
- Japan
- Prior art keywords
- application
- service providing
- unit
- notification
- application service
- 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
Links
Images
Landscapes
- Computer And Data Communications (AREA)
Abstract
【課題】連携する電子機器のアプリケーション及びサービス提供システムのアプリケーションの開発を容易化できるサービス提供システム及びサービス提供方法を提供することを課題とする。【解決手段】電子機器に搭載されているアプリケーションと連携してサービスを提供するサービス提供システムであって、アプリケーションと連携して処理を行うアプリサービス提供手段と、アプリケーション及びアプリサービス提供手段からの要求を受け付ける要求受付手段と、アプリケーション及びアプリサービス提供手段が要求受付手段を介して共通に利用する記憶手段と、アプリサービス提供手段への通知対象として登録されている事象が記憶手段において発生したときに、要求受付手段を介してアプリサービス提供手段に通知を行う通知手段とを有することにより、上記課題を解決する。【選択図】 図1
Description
本発明はサービス提供システム及びサービス提供方法に関する。
従来、画像形成装置に関するアプリケーションプログラムの機能をクラウドサービスに代表されるようなWebアプリケーションやサーバ側のアプリケーションによって提供する情報処理システムが知られている(例えば特許文献1参照)。
画像形成装置等のデバイス装置のアプリケーションの機能をWebアプリケーションやサーバ装置側のアプリケーションによって提供するサービス提供システムはデバイス装置のアプリケーションとサービス提供システムのアプリケーションとが直接通信する。しかしながら、デバイス装置のアプリケーションとサービス提供システムのアプリケーションとが直接通信する情報処理システムでは、デバイス装置のアプリケーションとサービス提供システムのアプリケーションとが密に依存する構成となる場合が多い。
したがって、従来の情報処理システムはデバイス装置のアプリケーションとサービス提供システムのアプリケーションとを開発する場合、独自でプロトコルを策定するなどの知識が必要となり、アプリケーション開発を困難にしていた。
本発明の実施の形態は、上記の点に鑑みなされたものであり、連携する電子機器のアプリケーション及びサービス提供システムのアプリケーションの開発を容易化できるサービス提供システム及びサービス提供方法を提供することを目的とする。
上記目的を達成するために本願請求項1の情報処理装置は、電子機器に搭載されているアプリケーションと連携してサービスを提供するサービス提供システムであって、前記アプリケーションと連携して処理を行うアプリサービス提供手段と、前記アプリケーション及び前記アプリサービス提供手段からの要求を受け付ける要求受付手段と、前記アプリケーション及び前記アプリサービス提供手段が前記要求受付手段を介して共通に利用する記憶手段と、前記アプリサービス提供手段への通知対象として登録されている事象が前記記憶手段において発生したときに、前記要求受付手段を介して前記アプリサービス提供手段に通知を行う通知手段とを有することを特徴とする。
本発明の実施の形態によれば、連携する電子機器のアプリケーション及びサービス提供システムのアプリケーションの開発を容易化できる。
以下、本発明の実施形態について図面を参照しながら説明する。
[第1の実施形態]
<システム構成>
図1は第1の実施形態に係る情報処理システムの一例の構成図である。図1の情報処理システム1は、デバイス装置11、端末装置12、オンラインストレージ13、サービス提供システム20が、インターネット等のネットワークN1を介して接続されている構成である。
[第1の実施形態]
<システム構成>
図1は第1の実施形態に係る情報処理システムの一例の構成図である。図1の情報処理システム1は、デバイス装置11、端末装置12、オンラインストレージ13、サービス提供システム20が、インターネット等のネットワークN1を介して接続されている構成である。
また、サービス提供システム20はアクセス制御装置21、ポータルサービス提供装置22、アプリサービス提供装置23、共通サービス提供装置24、ストレージサービス提供装置25が、ネットワークN2を介して接続されている構成である。ネットワークN2はLAN等のネットワークである。サービス提供システム20は例えばクラウドサービスの形態であってもよい。
デバイス装置11はサービス提供システム20と連携して処理を行う複合機などの電子機器である。例えばデバイス装置11は複合機、コピー機、スキャナ、プリンタ、レーザプリンタ、プロジェクタ、電子黒板などの画像形成に係る処理を行う電子機器である。
端末装置12はユーザにより操作され、サービス提供システム20のポータルサービス提供装置22にアクセス(接続)してユーザから受け付けた後述の連携設定やプロファイル設定などの設定を要求する。なお、端末装置12は、スマートフォンや携帯電話、タブレット端末、PCなど、ユーザの操作によりサービス提供システム20のポータルサービス提供装置22にアクセスして要求を行うことができる装置であればよい。
オンラインストレージ13はファイルを保存する装置である。オンラインストレージ13は、ベンダーにより提供されるファイル保存用の装置であってもよい。なお、図1ではデバイス装置11、端末装置12及びオンラインストレージ13がそれぞれ一つである例を示しているが複数であってもよい。
また、ネットワークN2はアクセス制御装置21を介してネットワークN1に接続されている。ネットワークN2は、アクセス制御装置21によってセキュリティが保護されている。
アクセス制御装置21はデバイス装置11や端末装置12からのポータルサービス提供装置22、共通サービス提供装置24、ストレージサービス提供装置25などへのアクセスを制御する。ネットワークN2にはアクセス制御装置21の他、ポータルサービス提供装置22、アプリサービス提供装置23、共通サービス提供装置24、ストレージサービス提供装置25が接続されている。
ポータルサービス提供装置22はアプリサービス提供装置23を利用して端末装置12にポータルサービスを提供する。アプリサービス提供装置23は共通サービス提供装置24及びストレージサービス提供装置25を利用してアプリサービスを提供する。
共通サービス提供装置24はアプリサービス提供装置23、デバイス装置11に搭載されたアプリケーションに共通サービスを提供する。また、ストレージサービス提供装置25はアプリサービス提供装置23、デバイス装置11に搭載されたアプリケーションにストレージサービスを提供する。
なお、アクセス制御装置21、ポータルサービス提供装置22、アプリサービス提供装置23、共通サービス提供装置24、ストレージサービス提供装置25は、一台以上の情報処理装置によって実現される。また、アクセス制御装置21、ポータルサービス提供装置22、アプリサービス提供装置23、共通サービス提供装置24、ストレージサービス提供装置25は一台の情報処理装置に統合して実現してもよいし、複数の情報処理装置に分散して実現してもよい。ネットワークN2側のサービスの一部はネットワークN2以外にあってもよい。図1のサービス提供システム20の構成は一例であって、他の構成で実現してもよい。
<ハードウェア構成>
図1の端末装置12、オンラインストレージ13、サービス提供システム20は例えば図2に示すようなハードウェア構成のコンピュータ等により実現される。図2は、本実施形態に係るコンピュータの一例のハードウェア構成図である。
図1の端末装置12、オンラインストレージ13、サービス提供システム20は例えば図2に示すようなハードウェア構成のコンピュータ等により実現される。図2は、本実施形態に係るコンピュータの一例のハードウェア構成図である。
図2に示したコンピュータ500は、入力装置501、表示装置502、外部I/F503、RAM504、ROM505、CPU506、通信I/F507、及びHDD508などを備え、それぞれがバスBで相互に接続されている。なお、入力装置501及び表示装置502は必要なときに接続して利用する形態であってもよい。
入力装置501はキーボードやマウスなどを含み、ユーザが各操作信号を入力するのに用いられる。表示装置502はディスプレイなどを含み、コンピュータ500による処理結果を表示する。
通信I/F507は、コンピュータ500をネットワークN1やN2に接続するインタフェースである。これにより、コンピュータ500は通信I/F507を介してデータ通信を行うことができる。
HDD508はプログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータは、例えばコンピュータ500全体を制御する基本ソフトウェアであるOSや、OS上において各種機能を提供するアプリケーションなどである。
外部I/F503は、外部装置とのインタフェースである。外部装置には、記録媒体503aなどがある。これにより、コンピュータ500は外部I/F503を介して記録媒体503aの読み取り及び/又は書き込みを行うことができる。記録媒体503aにはフレキシブルディスク、CD、DVD、SDメモリカード、USBメモリなどがある。
ROM505は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリ(記憶装置)である。ROM505には、コンピュータ500の起動時に実行されるBIOS、OS設定、及びネットワーク設定などのプログラムやデータが格納されている。RAM504は、プログラムやデータを一時保持する揮発性の半導体メモリである。
CPU506は、ROM505やHDD508などの記憶装置からプログラムやデータをRAM504上に読み出し、処理を実行することで、コンピュータ500全体の制御や機能を実現する演算装置である。
本実施形態に係る端末装置12、オンラインストレージ13、サービス提供システム20は、上記したコンピュータ500のハードウェア構成により後述するような各種処理を実現できる。なお、図1に示したデバイス装置11は例えば図2のハードウェア構成にデバイス特有の処理部を有する構成であればよいため、ハードウェア構成についての説明を省略する。
<ソフトウェア構成>
《サービス提供システム》
第1の実施形態に係るサービス提供システム20は例えば図3に示す処理ブロックにより実現される。図3は第1の実施形態に係るサービス提供システムの一例の処理ブロック図である。
《サービス提供システム》
第1の実施形態に係るサービス提供システム20は例えば図3に示す処理ブロックにより実現される。図3は第1の実施形態に係るサービス提供システムの一例の処理ブロック図である。
サービス提供システム20はプログラムを実行することにより、ポータルサービス部51、アプリサービス部52、共通サービス部53、ストレージサービス部54、プラットフォームAPI(Application Programming Interface)55を実現している。また、共通サービス部53は通知サービス部61、ジョブ実行部62を有する。ストレージサービス部54は、データストレージ部71、ファイルストレージ部72を有する。
ポータルサービス部51は例えばポータルサービスを提供するアプリケーションにより実現される。ポータルサービス部51は端末装置12から後述の連携設定やプロファイル設定などのポータルサービスの要求を受け付ける。ポータルサービスの要求を受け付けたポータルサービス部51はアプリサービス提供装置23を利用して端末装置12にポータルサービスを提供する。
アプリサービス部52は例えばアプリサービスを提供するアプリケーションにより実現される。アプリサービス部52はポータルサービス部51から連携設定やプロファイル設定などの要求を受け付ける。また、アプリサービス部52はプラットフォームAPI55を介して共通サービス部53又はストレージサービス部54に後述の通知(callback)登録やジョブ実行、プロファイル情報保存、データ取得などの要求を行う。
また、アプリサービス部52はプラットフォームAPI55を介して共通サービス部53から後述の通知(callback)を受け付ける。さらに、アプリサービス部52はオンラインストレージ13に対して認可要求やファイル転送なども行う。
共通サービス部53及びストレージサービス部54はプラットフォームAPI55を介してサービスを提供する。共通サービス部53は共通サービスを提供するプログラムにより実現される。また、ストレージサービス部54はストレージサービスを提供するプログラムにより実現される。
例えばデバイス装置11に搭載されたデバイスアプリ部31はプラットフォームAPI55を介してストレージサービス部54にプロファイル情報の取得やファイル登録などの要求を行う。
このように、共通サービス部53及びストレージサービス部54はプラットフォームAPI55を介してサービスの提供を行うAPI提供領域に存在する。通知サービス部61は通知登録された内容に基づき、データなどの追加/変更/削除といったイベントに合わせて通知を行う。なお、通知サービス部61は、デバイス装置11のデバイスアプリ部31とアプリサービス部52とが直接通信しなくなったことにより即時性が失われることを後述のように防いでいる。
ジョブ実行部62はジョブ実行の要求に基づき、ジョブを実行する。データストレージ部71はデバイス装置11のデバイスアプリ部31とサービス提供システム20のアプリサービス部52との間でやり取りしたいデータを保存する。ファイルストレージ部72はデバイス装置11のデバイスアプリ部31とサービス提供システム20のアプリサービス部52との間でやり取りしたいファイルを保存する。
本実施形態に係るサービス提供システム20はAPI提供領域に共通サービス部53及びストレージサービス部54を有するプラットフォームが存在する。プラットフォームはデバイスアプリ部31とアプリサービス部52との間でデータ及びファイルを交換できるストレージサービス部54を用意している。また、プラットフォームはストレージサービス部54のデータ及びファイルの状態変化をアプリサービス部52に通知する通知サービス部61を用意している。
このように、本実施形態に係るサービス提供システム20はデバイス装置11のデバイスアプリ部31とアプリサービス部52とが直接アクセスしないようなプラットフォームを実装している。
本実施形態のサービス提供システム20はデバイス装置11のデバイスアプリ部31とアプリサービス部52とが直接通信しないような仕組みのプラットフォームを用意することでデバイスアプリ部31とアプリサービス部52との依存を疎にしている。
したがって、本実施形態のデバイスアプリ部31とアプリサービス部52との開発はプラットフォームAPI55の知識があればよく、デバイスアプリ部31とアプリサービス部52との開発が容易となる。
また、本実施形態のサービス提供システム20はストレージサービス部54がデータストレージ部71とファイルストレージ部72とを分離しているため、容量(データ量)が少なく応答性能への要求が高いデータストレージ部71のデータ交換性能に対応しやすくなる。
したがって、本実施形態のサービス提供システム20はデバイスアプリ部31とアプリサービス部52とのデータ交換の応答性能の劣化を防止できる。
<処理の詳細>
まず、本実施形態のサービス提供システム20の理解を容易とするため、デバイス装置11のデバイスアプリ部31とアプリサービス部52とが直接通信する仕組みについて説明する。
まず、本実施形態のサービス提供システム20の理解を容易とするため、デバイス装置11のデバイスアプリ部31とアプリサービス部52とが直接通信する仕組みについて説明する。
図4はデバイス装置のデバイスアプリ部とアプリサービス部とが直接通信する仕組みの一例について説明する図である。なお、図4では説明に不要な部分についての図示を省略している。
図4ではデバイス装置11のデバイスアプリ部31がアプリサービス部52に対してプロファイル情報の取得やファイル登録などの要求を行う。アプリサービス部52は独自に管理するDB56にプロファイル情報を保存する。また、アプリサービス部52は共通サービス部53又はストレージサービス部54にファイル保存/取得やジョブ実行などの要求を行う。
このように、図4ではデバイス装置11のデバイスアプリ部31とアプリサービス部52とが直接通信する仕組みであるため、デバイスアプリ部31とアプリサービス部52とが密に依存する。例えばデバイスアプリ部31とアプリサービス部52とが直接通信する構成では独自のプロトコルが利用される場合もある。
デバイスアプリ部31及びアプリサービス部52をサードベンダなどの外部の開発者が開発した場合は、デバイスアプリ部31とアプリサービス部52との通信のプロトコルをサービス提供システム20を運用する企業で制御できない場合があった。
また、図4のデバイスアプリ部31とアプリサービス部52とが2つになると、サービス提供システム20は図5に示すようになる。図5はデバイス装置のデバイスアプリ部とアプリサービス部とが直接通信する仕組みの他の例について説明する図である。なお、図5では説明に不要な部分についての図示を省略している。
図5ではデバイス装置11のデバイスアプリ部31Aがアプリサービス部52Aに対してプロファイル情報の取得やファイル登録などの要求を行う。また、図5ではデバイス装置11のデバイスアプリ部31Bがアプリサービス部52Bに対してプロファイル情報の取得やファイル登録などの要求を行う。
このように、図5ではデバイス装置11のデバイスアプリ部31Aとアプリサービス部52Aとが直接通信する仕組みであるため、デバイスアプリ部31Aとアプリサービス部52Aとが密に依存する。また、図5ではデバイス装置11のデバイスアプリ部31Bとアプリサービス部52Bとが直接通信する仕組みであるため、デバイスアプリ部31Bとアプリサービス部52Bとが密に依存する。
例えばデバイスアプリ部31Aとアプリサービス部52Aとが直接通信に利用する独自のプロトコルと、デバイスアプリ部31Bとアプリサービス部52Bとが直接通信に利用する独自のプロトコルとは、異なる場合もある。
このように、デバイスアプリ部31とアプリサービス部52とが2つになると、デバイスアプリ部31とアプリサービス部52との依存関係はより複雑になる。
そこで、本実施形態のサービス提供システム20はデバイス装置11のデバイスアプリ部31とアプリサービス部52とが直接通信しない図6の仕組みのプラットフォームを用意して、デバイスアプリ部31とアプリサービス部52との依存を疎にしている。
図6はデバイス装置のデバイスアプリ部とアプリサービス部とが直接通信しない仕組みの一例について説明する図である。なお、図6では説明に不要な部分についての図示を省略している。
図6ではデバイス装置11のデバイスアプリ部31がプラットフォームAPI55を介してプロファイル情報の取得やファイル登録などの要求を行う。つまり、デバイスアプリ部31はアプリサービス部52と直接通信を行わないため、アプリサービス部52との依存関係が疎となる。
アプリサービス部52はポータルサービス部51から連携設定やプロファイル設定などの要求を受け付ける。アプリサービス部52はプラットフォームAPI55を介してプロファイル情報の保存をデータストレージ部71に要求する。アプリサービス部52はプラットフォームAPI55を介してジョブデータやデータの取得をファイルストレージ部72に要求する。
また、アプリサービス部52はプラットフォームAPI55を介して通知サービス部61に後述の通知(callback)登録を要求する。アプリサービス部52は通知登録に基づき、プラットフォームAPI55を介して共通サービス部53から後述の通知を受け付ける。通知を受け付けることにより、アプリサービス部52はデバイスアプリ部31がプラットフォームAPI55を介して行うデータなどの追加/変更/削除といったイベントを監視できる。また、アプリサービス部52はプラットフォームAPI55を介してジョブ実行部62にジョブ実行の要求を行う。
このように本実施形態のサービス提供システム20は図6の仕組みのプラットフォームを用意することで、デバイスアプリ部31とアプリサービス部52とをプラットフォームAPI55により分断している。サービス提供システム20はデバイスアプリ部31及びアプリサービス部52のそれぞれに対して規定のAPI仕様を提供することで、デバイスアプリ部31及びアプリサービス部52との通信手段を標準化している。
《スキャン画像をオンラインストレージ13に保存》
図7は、本実施形態に係るサービス提供システムの処理手順を表した一例のシーケンス図である。図7はサービス提供システム20の処理手順の一例としてスキャン画像をオンラインストレージ13に保存する処理手順を表している。
図7は、本実施形態に係るサービス提供システムの処理手順を表した一例のシーケンス図である。図7はサービス提供システム20の処理手順の一例としてスキャン画像をオンラインストレージ13に保存する処理手順を表している。
ステップS1において、アプリサービス部52は通知サービス部61に対して連携設定に基づく通知登録を行う。通知登録には、例えばアプリ名、対象イベント、通知先などの情報が含まれる。
ステップS2において、アプリサービス部52はポータルサービス部51からスキャン設定(プロファイル設定)の要求を受け付ける。ステップS3において、アプリサービス部52はアプリ名と対応付けてスキャン設定をデータストレージ部71に保存させる。
ステップS4において、デバイスアプリ部31はデータストレージ部71からアプリ名に対応付いたスキャン設定を取得する。ステップS5において、デバイスアプリ部31は取得したスキャン設定に基づき、デバイス装置11にスキャンを実行させる。
ステップS6において、デバイスアプリ部31はアプリ名とファイル名とを指定してスキャン画像のファイルをファイルストレージ部72に登録させる。ファイルが登録されたファイルストレージ部72はステップS7において、アプリ名、イベントタイプ、ファイル名を指定したイベント発行を通知サービス部61に通知する。
ステップS8において、通知サービス部61はステップS1で通知登録された内容とステップS7で通知されたイベント発行の内容とに基づき、イベントチェックを行う。通知サービス部61は、ステップS1で通知登録されたアプリ名、対象イベントの内容と、ステップS7で通知されたイベント発行のアプリ名、イベントタイプの内容とが合致するときに、ステップS1で通知登録された通知先にイベント発行を通知する。ステップS9のイベント発行の通知にはイベントタイプとファイル名とが含まれる。
イベント発行が通知されると、アプリサービス部52はアプリ名とイベント発行の通知に含まれるファイル名とを指定してスキャン画像のファイルをファイルストレージ部72から取得する。
また、ステップS11において、アプリサービス部52はアプリ名を指定してデータストレージ部71からスキャン設定を取得する。ステップS12において、アプリサービス部52は取得したスキャン設定に基づき、スキャン画像のファイルを例えばオンラインストレージ13に保存させるファイル送信処理を行う。
図7のシーケンス図に示したサービス提供システム20の処理によれば、デバイスアプリ部31とアプリサービス部52とが直接通信しなくても、デバイスアプリ部31とアプリサービス部52とが連携して処理を行うことができる。
《通知サービス部に通知登録する内容》
図8は通知サービス部に通知登録される内容の一例について説明する図である。図8に示すように、通知サービス部61には複数のトリガ(triggers)を登録することができる。トリガはアプリサービス部52への通知対象として登録される事象の情報の一例である。
図8は通知サービス部に通知登録される内容の一例について説明する図である。図8に示すように、通知サービス部61には複数のトリガ(triggers)を登録することができる。トリガはアプリサービス部52への通知対象として登録される事象の情報の一例である。
各トリガはトリガID(Trigger_id)が付与されると共に、対象(Target)と、発生イベント(Event)と、行動(Action)とが関連付けられてパラメータにより定義される。対象は対象となるリソースのIDを定義する。発生イベントはファイル種別やイベント種別(生成/更新/削除)を定義する。発生イベントには拡張パラメータを定義するようにしてもよい。行動は対象に発生イベントが生じたときに行う処理を定義する。例えば行動が通知である場合には通知先やリトライ回数、リトライ間隔などが定義される。
通知サービス部61は図8のようなパラメータにより定義されるトリガにより例えば以下のような通知を行うことができる。図9は通知サービス部の処理の一例について説明する図である。
ステップS21において、アプリサービス部52は例えば図9の右側に図示しているトリガ(Trigger1)の通知登録を行う。トリガ(Trigger1)は対象(Target)として記憶場所を表す
「folder_id:xxx」
が定義されている。
「folder_id:xxx」
が定義されている。
また、発生イベント(Event)として
「data_type:File」
「event_type:create」
「ex_param:file_type:image/jpeg」
が定義されている。
「data_type:File」
「event_type:create」
「ex_param:file_type:image/jpeg」
が定義されている。
また、行動(Action)として
「callback」
が定義されている。
「callback」
が定義されている。
ステップS22において、デバイスアプリ部31は「folder_id:xxx」のフォルダへのファイルのアップロードをファイルストレージ部72に要求し、ファイルをファイルストレージ部72に登録させる。
ファイルストレージ部72は、デバイスアプリ部31のアプリ名、イベントタイプとしての「create」及びファイル名を指定したイベント発行を通知サービス部61に通知する。
通知サービス部61はステップS21で通知登録されたトリガ(Trigger1)の内容とファイルストレージ部72から通知されたイベント発行の内容とに基づき、イベントチェックを行う。図9ではファイルストレージ部72から通知されたイベント発行の内容がトリガ(Trigger1)の内容と合致している。
したがって、通知サービス部61はステップS23において、ステップS21で通知登録されたトリガ(Trigger1)の行動(Action)に定義されたcallbackに基づき、アプリサービス部52にイベント発行を通知できる。
図10は通知サービス部の処理の他の例について説明する図である。ステップS30において、アプリサービス部52は例えば図10の右側に図示しているトリガ(Trigger1)の通知登録を行う。
トリガ(Trigger1)は対象(Target)として
「folder_id:xxx_mfp_input」
が定義されている。
「folder_id:xxx_mfp_input」
が定義されている。
また、発生イベント(Event)として
「data_type:File」
「event_type:create」
「ex_param:file_type:image/jpeg」
が定義されている。
「data_type:File」
「event_type:create」
「ex_param:file_type:image/jpeg」
が定義されている。
また、行動(Action)として
「callback
callback_url:http://xxxxxx/mfpinput」
が定義されている。
「callback
callback_url:http://xxxxxx/mfpinput」
が定義されている。
ステップS31において、アプリサービス部52は例えば図10の右側に図示しているトリガ(Trigger2)の通知登録を行う。
トリガ(Trigger2)は対象(Target)として
「folder_id:yyy_conv_output」
が定義されている。
「folder_id:yyy_conv_output」
が定義されている。
また、発生イベント(Event)として
「data_type:File」
「event_type:create」
「ex_param:file_type:application/pdf」
が定義されている。
「data_type:File」
「event_type:create」
「ex_param:file_type:application/pdf」
が定義されている。
また、行動(Action)として
「callback
callback_url:http://xxxxxx/convoutput」
が定義されている。
「callback
callback_url:http://xxxxxx/convoutput」
が定義されている。
ステップS32において、デバイスアプリ部31は「folder_id:xxx_mfp_input」のフォルダへのファイルのアップロードをファイルストレージ部72に要求し、ファイルをファイルストレージ部72に登録させる。
ファイルストレージ部72は、デバイスアプリ部31のアプリ名、イベントタイプとしての「create」及びファイル名を指定したイベント発行を通知サービス部61に通知する。
通知サービス部61はステップS30で通知登録されたトリガ(Trigger1)の内容とファイルストレージ部72から通知されたイベント発行の内容とに基づき、イベントチェックを行う。図10ではファイルストレージ部72から通知されたイベント発行の内容がトリガ(Trigger1)の内容と合致している。
したがって、通知サービス部61はステップS33において、ステップS30で通知登録されたトリガ(Trigger1)の行動(Action)に定義されたcallbackに基づき、アプリサービス部52にイベント発行を通知できる。
そして、ステップS34において、アプリサービス部52はステップS33で通知されたイベント発行に基づき「http://xxxxxx/mfpinput」の処理を実行する。ステップS35において、アプリサービス部52は「folder_id:xxx_mfp_input」のフォルダへ登録されたファイルを取得する。
ステップS36において、アプリサービス部52は取得したファイルを用いるジョブを生成してジョブ実行部62にジョブ実行の要求を登録する。なお、ジョブにはジョブ実行の結果であるファイルの出力先として「folder_id:yyy_conv_output」を指定しておく。
ステップS37において、ジョブ実行部62はジョブ実行の要求に基づき、ファイルを用いるジョブ(例えばファイルのデータ変換処理など)を実行する。ステップS38において、ジョブ実行部62はジョブ実行の結果であるファイルを、指定された出力先であるフォルダ「folder_id:yyy_conv_output」に出力する。ファイルストレージ部72は、アプリ名、イベントタイプとしての「create」及びファイル名を指定したイベント発行を通知サービス部61に通知する。
通知サービス部61はステップS31で通知登録されたトリガ(Trigger2)の内容とファイルストレージ部72から通知されたイベント発行の内容とに基づき、イベントチェックを行う。図10ではファイルストレージ部72から通知されたイベント発行の内容がトリガ(Trigger2)の内容と合致しているものとする。
通知サービス部61はステップS39において、ステップS31で通知登録されたトリガ(Trigger2)の行動(Action)に定義されたcallbackに基づいてアプリサービス部52にイベント発行を通知できる。
そして、ステップS40において、アプリサービス部52はステップS39で通知されたイベント発行に基づき「http://xxxxxx/convoutput」の処理を実行する。
ステップS41において、アプリサービス部52は「folder_id:yyy_conv_output」のフォルダに出力されたジョブ実行の結果であるファイルを取得できる。
(まとめ)
第1の実施形態に係るサービス提供システム20によれば、デバイスアプリ部31とアプリサービス部52とが直接通信しないような仕組みのプラットフォームを用意することでデバイスアプリ部31とアプリサービス部52との依存を疎にしている。
第1の実施形態に係るサービス提供システム20によれば、デバイスアプリ部31とアプリサービス部52とが直接通信しないような仕組みのプラットフォームを用意することでデバイスアプリ部31とアプリサービス部52との依存を疎にしている。
したがって、本実施形態のデバイスアプリ部31とアプリサービス部52との開発はプラットフォームAPI55の知識があればよく、デバイスアプリ部31とアプリサービス部52との開発が容易となる。また、API提供領域に存在する共通サービス部53及びストレージサービス部54を有するプラットフォームをデバイス装置11のクラウド基盤などとして広く利用してもらうことが容易となる。
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
なお、プラットフォームAPI55は要求受付手段の一例である。データストレージ部71及びファイルストレージ部72は記憶手段の一例である。通知サービス部61は通知手段の一例である。イベントは事象の一例である。
1 情報処理システム
11 デバイス装置
12 端末装置
13 オンラインストレージ
20 サービス提供システム
21 アクセス制御装置
22 ポータルサービス提供装置
23 アプリサービス提供装置
24 共通サービス提供装置
25 ストレージサービス提供装置
31 デバイスアプリ部
51 ポータルサービス部
52 プリントサービス部
53 共通サービス部
54 ストレージサービス部
55 プラットフォームAPI
56 データベース(DB)
61 通知サービス部
62 ジョブ実行部
71 データストレージ部
72 ファイルストレージ部
500 コンピュータ
501 入力装置
502 表示装置
503 外部I/F
503a 記録媒体
504 RAM
505 ROM
506 CPU
507 通信I/F
508 HDD
B バス
N1〜N2 ネットワーク
11 デバイス装置
12 端末装置
13 オンラインストレージ
20 サービス提供システム
21 アクセス制御装置
22 ポータルサービス提供装置
23 アプリサービス提供装置
24 共通サービス提供装置
25 ストレージサービス提供装置
31 デバイスアプリ部
51 ポータルサービス部
52 プリントサービス部
53 共通サービス部
54 ストレージサービス部
55 プラットフォームAPI
56 データベース(DB)
61 通知サービス部
62 ジョブ実行部
71 データストレージ部
72 ファイルストレージ部
500 コンピュータ
501 入力装置
502 表示装置
503 外部I/F
503a 記録媒体
504 RAM
505 ROM
506 CPU
507 通信I/F
508 HDD
B バス
N1〜N2 ネットワーク
Claims (8)
- 電子機器に搭載されているアプリケーションと連携してサービスを提供するサービス提供システムであって、
前記アプリケーションと連携して処理を行うアプリサービス提供手段と、
前記アプリケーション及び前記アプリサービス提供手段からの要求を受け付ける要求受付手段と、
前記アプリケーション及び前記アプリサービス提供手段が前記要求受付手段を介して共通に利用する記憶手段と、
前記アプリサービス提供手段への通知対象として登録されている事象が前記記憶手段において発生したときに、前記要求受付手段を介して前記アプリサービス提供手段に通知を行う通知手段と
を有することを特徴とするサービス提供システム。 - 前記通知手段は、前記アプリサービス提供手段から前記要求受付手段を介して前記アプリサービス提供手段への通知対象とする事象の登録を受けること
を特徴とする請求項1記載のサービス提供システム。 - 前記通知手段は、前記アプリサービス提供手段への通知対象として、事象の発生を監視する前記記憶手段の記憶場所と、事象の種別と、通知を行う通知先とを関連付けて登録すること
を特徴とする請求項1又は2記載のサービス提供システム。 - 前記記憶手段は、前記アプリケーション及び前記アプリサービス提供手段が第1の情報をやり取りする第1の記憶手段と、
前記アプリケーション及び前記アプリサービス提供手段が第1の情報よりもデータ量が大きい第2の情報をやり取りする第2の記憶手段と、を有すること
を特徴とする請求項1乃至3何れか一項記載のサービス提供システム。 - 前記通知手段は、前記アプリサービス提供手段への通知対象として登録されている前記アプリケーションから前記記憶手段への情報の登録が前記記憶手段において発生したときに、前記要求受付手段を介して前記アプリサービス提供手段に通知を行うこと
を特徴とする請求項1乃至4何れか一項記載のサービス提供システム。 - 前記記憶手段に登録されている情報を用いて処理を行う処理実行手段を更に有し、
前記通知手段は前記アプリサービス提供手段への通知対象として登録されている前記処理実行手段から前記記憶手段への情報の登録が前記記憶手段において発生したとき、前記要求受付手段を介して前記アプリサービス提供手段に通知を行うこと
を特徴とする請求項1乃至5何れか一項記載のサービス提供システム。 - 前記要求受付手段は、API(Application Programming Interface)であること
を特徴とする請求項1乃至6何れか一項記載のサービス提供システム。 - 電子機器に搭載されているアプリケーションと連携してサービスを提供するサービス提供システムにおいて実行されるサービス提供方法であって、
前記アプリケーションと、前記アプリケーションと連携して処理を行うアプリサービス提供手段とが、前記アプリケーション及び前記アプリサービス提供手段からの要求を受け付ける要求受付手段を介して要求を行う要求ステップと、
前記アプリケーション及び前記アプリサービス提供手段が前記要求受付手段を介して共通に利用する記憶手段において、前記アプリサービス提供手段への通知対象として登録されている事象が発生したときに、前記要求受付手段を介して前記アプリサービス提供手段に通知を行う通知ステップと
を有することを特徴とするサービス提供方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013257093A JP2015114892A (ja) | 2013-12-12 | 2013-12-12 | サービス提供システム及びサービス提供方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013257093A JP2015114892A (ja) | 2013-12-12 | 2013-12-12 | サービス提供システム及びサービス提供方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015114892A true JP2015114892A (ja) | 2015-06-22 |
Family
ID=53528627
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013257093A Pending JP2015114892A (ja) | 2013-12-12 | 2013-12-12 | サービス提供システム及びサービス提供方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015114892A (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005349768A (ja) * | 2004-06-11 | 2005-12-22 | Canon Inc | 印刷装置及び印刷方法 |
JP2012008797A (ja) * | 2010-06-24 | 2012-01-12 | Canon Inc | 印刷システム、印刷制御方法、及びコンピュータプログラム |
WO2013090476A1 (en) * | 2011-12-12 | 2013-06-20 | Microsoft Corporation | Lightweight framework for web applications |
-
2013
- 2013-12-12 JP JP2013257093A patent/JP2015114892A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005349768A (ja) * | 2004-06-11 | 2005-12-22 | Canon Inc | 印刷装置及び印刷方法 |
JP2012008797A (ja) * | 2010-06-24 | 2012-01-12 | Canon Inc | 印刷システム、印刷制御方法、及びコンピュータプログラム |
WO2013090476A1 (en) * | 2011-12-12 | 2013-06-20 | Microsoft Corporation | Lightweight framework for web applications |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20160259933A1 (en) | Information processing system, information processing apparatus, and information processing method | |
US10936261B2 (en) | Printing method and system using cloud | |
JP6064592B2 (ja) | 印刷システム、印刷方法、画像形成装置及び制御デバイス | |
JP2014033437A (ja) | 出力システム、操作端末及びプログラム | |
JP6357780B2 (ja) | ネットワークシステム及び情報通知方法 | |
JP2015133060A (ja) | 情報処理システム及び電源制御方法 | |
JP2015168251A (ja) | 電子機器、及び情報処理システム | |
JP2014016897A (ja) | サービス提供システム、情報蓄積装置、情報処理装置、方法及びプログラム | |
JP6044143B2 (ja) | サービス提供システム及びサービス提供方法 | |
JP6668610B2 (ja) | プログラム、情報処理装置、情報処理システム、及び情報処理方法 | |
JP2014016896A (ja) | サービス提供システム、情報蓄積装置、情報処理装置、方法及びプログラム | |
JP2015122054A (ja) | 情報処理装置、情報処理方法、及びプログラム | |
JP2014178893A (ja) | 連携処理装置、プログラム及びソフトウェア更新方法 | |
JP2014059697A (ja) | 出力制御装置、プログラム及び出力システム | |
KR20190088292A (ko) | 복수의 플랫폼을 지원하는 화상 형성 장치에서 동일 또는 유사한 서비스를 제공하는 앱들의 제어 | |
JP6318469B2 (ja) | サービス提供システム及びサービス提供方法 | |
JP2017062835A (ja) | 出力システム、アプリケーション及び情報処理装置 | |
US20160094659A1 (en) | Information processing system and information processing method | |
JP2016126604A (ja) | 端末装置、プログラム、情報処理システム及び出力方法 | |
JP2016218887A (ja) | 端末装置、プログラム及び出力システム | |
US11340880B2 (en) | Application management service including package file | |
JP6372181B2 (ja) | 出力システム、出力制御システム、プログラム及び出力方法 | |
JP2015114892A (ja) | サービス提供システム及びサービス提供方法 | |
JP2020042717A (ja) | 印刷ジョブ送信装置、印刷ジョブ送信プログラムおよび印刷システム | |
JP6687067B2 (ja) | サービス提供システム及びサービス提供方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161122 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20171016 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171024 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20180417 |