JP7102756B2 - 情報処理装置及びプログラム - Google Patents

情報処理装置及びプログラム Download PDF

Info

Publication number
JP7102756B2
JP7102756B2 JP2018017417A JP2018017417A JP7102756B2 JP 7102756 B2 JP7102756 B2 JP 7102756B2 JP 2018017417 A JP2018017417 A JP 2018017417A JP 2018017417 A JP2018017417 A JP 2018017417A JP 7102756 B2 JP7102756 B2 JP 7102756B2
Authority
JP
Japan
Prior art keywords
function
user
terminal device
setting
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018017417A
Other languages
English (en)
Other versions
JP2019133581A (ja
Inventor
賢吾 得地
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2018017417A priority Critical patent/JP7102756B2/ja
Priority to US16/048,367 priority patent/US11301265B2/en
Priority to CN201811024552.0A priority patent/CN110134030A/zh
Publication of JP2019133581A publication Critical patent/JP2019133581A/ja
Application granted granted Critical
Publication of JP7102756B2 publication Critical patent/JP7102756B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • 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/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25257Microcontroller

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • User Interface Of Digital Computer (AREA)
  • Selective Calling Equipment (AREA)

Description

本発明は、情報処理装置及びプログラムに関する。
特許文献1には、IoTデバイスが、IoTデバイスの第1セットの各々のコンテキストを表すデータを受信し、IoTデバイスの第2セットの各々の現在の状態を表すデータを受信し、受信したデータに基づいて、ターゲットIoTにおいて実行するための動作を判断することが記載されている。
特表2016-527638号公報
本発明の目的は、機能を実行する構成に対して複数の機能が設定された場合に発生し得る問題を、ユーザが認識できるようにすることにある。
請求項1に記載の発明は、ユーザが操作する端末装置に表示された機能設定画面上にて、機器と前記機器に実行させる機能とが前記ユーザによって指定されて、前記指定された前記機器と前記機能とを示す設定指示情報が前記端末装置から自装置に送信された場合、前記設定指示情報を受信して、前記機器に対する前記機能の設定を受け付け、前記機器と前記機能とを対応付けて機能管理テーブルに登録する設定部と、前記設定部が前記機能の設定を受け付けた場合において、前記機能とは異なる別の機能が前記機器に対応付けられて前記機能管理テーブルに既に登録されている場合、警告を示す情報を表示手段に表示させる警告処理部と、前記機能又は前記別の機能の何れか一方の機能を前記機器に実行させ、他方の機能を前記機器に実行させない制御部と、を有し、前記一方の機能は、第1端末装置を用いて第1ユーザによって指定されて前記機能管理テーブルに登録されており、前記他方の機能は、前記第1端末装置とは異なる第2端末装置を用いて前記第1ユーザとは異なる第2ユーザによって指定されて、前記機能管理テーブルに登録されており、前記制御部は、前記一方の機能を指定した前記第1ユーザの前記第1端末装置と、前記他方の機能を指定した前記第2ユーザの前記第2端末装置とに、前記一方の機能又は前記他方の機能の何れかを実行対象の機能として選択するための画面を表示させ、前記一方の機能と前記他方の機能のうち、前記画面上において前記第1ユーザ又は前記第2ユーザによって先に選択された機能を、前記機器に実行させる、情報処理装置である。
請求項に記載の発明は、前記機能が実行される期間が前記ユーザによって指定され、前記指定された前記期間を示す情報が、前記設定指示情報に含まれ、前記設定部は、前記期間を示す情報が含まれる前記設定指示情報を受信して、前記機器と前記機能と前記期間とを対応付けて前記機能管理テーブルに登録し、前記機能管理テーブルにおいて、前記機能に対応付けられている前記期間と、前記別の機能に対応付けられている、前記別の機能が実行される期間と、が少なくとも部分的に一致する場合、前記警告処理部は、前記警告を示す情報を前記表示手段に表示させる、ことを特徴とする請求項1に記載の情報処理装置である。
請求項に記載の発明は、前記機器と前記機能とが対応付けられて前記機能管理テーブルに登録される前に、前記警告処理部は、前記警告を示す情報を前記表示手段に表示させる、ことを特徴とする請求項1又は請求項2に記載の情報処理装置である。
請求項4に記載の発明は、前記機能及び前記別の機能は、1又は複数の機器を用いて実行可能な連携機能である、ことを特徴とする請求項1から請求項何れかに記載の情報処理装置である。
請求項に記載の発明は、コンピュータを、ユーザが操作する端末装置に表示された機能設定画面上にて、機器と前記機器に実行させる機能とが前記ユーザによって指定されて、前記指定された前記機器と前記機能とを示す設定指示情報が前記端末装置から自装置に送信された場合、前記設定指示情報を受信して、前記機器に対する前記機能の設定を受け付け、前記機器と前記機能とを対応付けて機能管理テーブルに登録する設定手段、前記設定手段が前記機能の設定を受け付けた場合において、前記機能とは異なる別の機能が前記機器に対応付けられて前記機能管理テーブルに既に登録されている場合、警告を示す情報を表示手段に表示させる警告処理手段、前記機能又は前記別の機能の何れか一方の機能を前記機器に実行させ、他方の機能を前記機器に実行させない制御手段、として機能させ、前記一方の機能は、第1端末装置を用いて第1ユーザによって指定されて前記機能管理テーブルに登録されており、前記他方の機能は、前記第1端末装置とは異なる第2端末装置を用いて前記第1ユーザとは異なる第2ユーザによって指定されて、前記機能管理テーブルに登録されており、前記制御手段は、前記一方の機能を指定した前記第1ユーザの前記第1端末装置と、前記他方の機能を指定した前記第2ユーザの前記第2端末装置とに、前記一方の機能又は前記他方の機能の何れかを実行対象の機能として選択するための画面を表示させ、前記一方の機能と前記他方の機能のうち、前記画面上において前記第1ユーザ又は前記第2ユーザによって先に選択された機能を、前記機器に実行させる、プログラムである。
請求項1,に記載の発明によれば、機能を実行する構成に対して複数の機能が設定された場合に発生し得る問題を、ユーザが認識できるようになる。
請求項に記載の発明によれば、既に設定されている別の機能と実行期間が少なくとも部分的に重複する機能が設定される場合に発生し得る問題を、ユーザが認識できるようになる。
請求項に記載の発明によれば、機能を実行する構成に対して複数の機能が設定された場合に発生し得る問題を、当該機能の設定完了前に、ユーザが認識できるようになる。
請求項1,5に記載の発明によれば、機能を実行する構成に対して複数の機能が設定された場合に、当該複数の機能の中の何れかの機能が実行される。
請求項4に記載の発明によれば、機能を実行する構成に対して複数の連携機能が設定された場合に発生し得る問題を、ユーザが認識できるようになる。
本発明の実施形態に係る情報処理システムの構成を示すブロック図である。 端末装置の構成を示すブロック図である。 中継装置の構成を示すブロック図である。 機能管理テーブルを示す図である。 連携機能の実行に用いられる機器を示す図である。 画面を示す図である。 画面を示す図である。 画面を示す図である。 画面を示す図である。 画面を示す図である。 連携機能の実行期間を示す図である。 連携機能の実行期間を示す図である。
図1を参照して、本発明の実施形態に係る情報処理システムについて説明する。図1には、本実施形態に係る情報処理システムの一例が示されている。
本実施形態に係る情報処理システムは、一例として、1又は複数の端末装置と、1又は複数の機器と、1又は複数の中継装置とを含む。図1に示す例では、情報処理システムは、端末装置10A,10Bと、機器12A,12Bと、中継装置14とを含む。これらの数は一例に過ぎず、これらの数以外の数の端末装置や機器や中継装置が、情報処理システムに含まれていてもよい。以下、端末装置10A,10Bを区別する必要がない場合には、これらを「端末装置10」と称することとする。同様に、機器12A,12Bを区別する必要がない場合には、これらを「機器12」と称することとする。各端末装置10、各機器12及び中継装置14は、ネットワーク等の通信経路Nを介して互いに通信する機能を有する。もちろん、各端末装置10、各機器12及び中継装置14は、通信経路Nを利用せずに、それぞれ異なる通信経路を介して他の装置と通信してもよいし、直接的に他の装置と通信してもよい。なお、サーバ等の他の装置が情報処理システムに含まれていてもよい。
端末装置10は、パーソナルコンピュータ(PC)、タブレットPC、スマートフォン、携帯電話、等の装置であり、他の装置と通信する機能を有する。端末装置10は、ウェアラブル端末(腕時計型端末、リストバンド型端末、眼鏡型端末、指輪型端末、コンタクトレンズ型端末、体内埋め込み型端末、ヒアラブル端末等)であってもよい。また、端末装置10は、表示装置としてフレキシブルディスプレイを有していてもよい。フレキシブルディスプレイとして、例えば、有機エレクトロルミネッセンス型のディスプレイ(フレキシブル有機ELディスプレイ)、電子ペーパー型のディスプレイ、フレキシブル液晶ディスプレイ、等が用いられる。これら以外の表示方式が採用されたフレキシブルディスプレイが用いられてもよい。フレキシブルディスプレイは、表示部分が柔軟に変形可能なディスプレイであり、例えば、曲げたり、折り畳んだり、巻いたり、捩ったり、伸ばしたりすることが可能なディスプレイである。端末装置10全体がフレキシブルディスプレイによって構成されていてもよいし、フレキシブルディスプレイとそれ以外の構成とが機能的又は物理的に分かれていてもよい。
機器12は機能を有する装置であり、例えば、画像形成機能(スキャン機能、プリント機能、コピー機能、ファクシミリ機能等)を備えた画像形成装置、PC、タブレットPC、スマートフォン、携帯電話、ロボット(人型ロボット、人以外の動物型ロボット、それら以外のロボット等)、プロジェクタ、液晶ディスプレイ等の表示装置、記録装置、再生装置、カメラ等の撮像装置、冷蔵庫、炊飯器、電子レンジ、コーヒーメーカー、掃除機、洗濯機、空調機、照明装置、時計、監視カメラ、自動車、二輪車、航空機(例えば無人航空機(いわゆるドローン))、ゲーム機、各種のセンシング機器(例えば温度センサ、湿度センサ、電圧センサ、電流センサ等)等の装置である。機器12は、ユーザに対してアウトプットを出力する機器(例えば画像形成装置やPC等)であってもよいし、ユーザに対してアウトプットを出力しない機器(例えばセンシング機器)であってもよい。また、後述する連携機能を実行する複数の機器の中のすべての機器が、ユーザに対してアウトプットを出力する機器であってもよいし、一部の機器がユーザに対してアウトプットを出力する機器であり、他の機器がユーザに対してアウトプットを出力しない機器であってもよいし、すべての機器がユーザに対してアウトプットを出力しない機器であってもよい。機器12の概念の範疇には機器全般が含まれてもよい。例えば、情報機器、映像機器、音響機器、その他の機器も、本実施形態に係る機器の範疇に含まれてもよい。また、機器12は、他の装置と通信する機能を有する。
中継装置14は、各機器12の動作を制御する装置である。また、中継装置14は、他の装置と通信する機能を有する。中継装置14は、例えば、インターネット等を利用することで、各種の情報を取得してもよい。中継装置14は、サーバとして機能してもよいし、データやユーザ情報の管理等を行ってもよい。中継装置14は、いわゆるスマートスピーカ(無線通信機能とスピーカ機能を有する機器)であってもよいし、通信機能を有するがスピーカ機能を有していない機器であってもよい。中継装置14は、屋内(例えば、部屋の床、天井、テーブル等)に設置されてもよいし、屋外に設置されてもよい。また、中継装置14は、移動可能な機器(例えば自走式の機器)であってもよい。なお、機器12自体が中継装置14として機能してもよい。
以下、図2を参照して、端末装置10の構成について詳しく説明する。
通信部16は通信インターフェースであり、他の装置にデータを送信する機能、及び、他の装置からデータを受信する機能を有する。通信部16は、無線通信機能を有する通信インターフェースであってもよいし、有線通信機能を有する通信インターフェースであってもよい。通信部16は、例えば、1又は複数の種類の通信方式に対応しており、通信相手に適した通信方式(つまり、通信相手が対応している通信方式)に従って通信相手と通信してもよい。通信方式は、例えば、赤外線通信、可視光通信、Wi-Fi(登録商標)通信、近接無線通信(例えばNFC(Near Field Communication)等)、等である。近接無線通信としては、Felica(登録商標)、Bluetooth(ブルートゥース)(登録商標)、RFID(Radio Frequency Identifier)等が用いられる。もちろん、別の方式の無線通信が近接無線通信として用いられてもよい。通信部16は、通信相手に応じて通信方式や周波数帯域を切り替えてもよいし、周囲の環境に応じて通信方式や周波数帯域を切り替えてもよい。
UI部18はユーザインターフェース部であり、表示部と操作部を含む。表示部は、例えば液晶ディスプレイ等の表示装置である。表示部は、フレキシブルディスプレイであってもよい。操作部は、例えばタッチパネルやキーボード等の入力装置である。表示部と操作部を兼ねたユーザインターフェース(例えば、タッチ式のディスプレイや、ディスプレイ上に電子的にキーボード等を表示する装置等を含む)であってもよい。また、UI部18は、マイク等の集音部やスピーカ等の音声発生部を含んでいてもよい。この場合、音声入力によって情報が端末装置10に入力されてもよいし、音声によって情報が発せられてもよい。
記憶部20はハードディスクやメモリ(例えばSSD等)等の記憶装置である。記憶部20には、例えば、各種のデータ、各種のプログラム(例えば、OS(Operating System)、各種のアプリケーションプログラム(アプリケーションソフトウェア)等)、各機器12のアドレスを示す情報(機器アドレス情報)、中継装置14のアドレスを示す情報(中継装置アドレス情報)、等が記憶されている。その他、機器に実行させる機能に関する情報が、記憶部20に記憶されてもよい。各データや各情報や各プログラム等は、別々の記憶装置に記憶されてもよいし、1つの記憶装置に記憶されてもよい。
制御部22は、端末装置10の各部の動作を制御する機能を有する。例えば、制御部22は、各種のプログラムの実行、通信部16による通信の制御、UI部18を用いた情報の通知(例えば情報の表示や音声出力等)の制御、UI部18を用いて端末装置10に入力された情報の受け付け、等を行う。
以下、図3を参照して、中継装置14の構成について詳しく説明する。
通信部24は通信インターフェースであり、他の装置にデータを送信する機能、及び、他の装置からデータを受信する機能を有する。通信部24は、無線通信機能を有する通信インターフェースであってもよいし、有線通信機能を有する通信インターフェースであってもよい。通信部24は、例えば、1又は複数の種類の通信方式に対応しており、通信相手に適した通信方式に従って通信相手と通信してもよい。通信方式は、例えば、赤外線通信、可視光通信、Wi-Fi通信、近接無線通信等である。通信部24は、通信相手に応じて通信方式や周波数帯域を切り替えてもよいし、周囲の環境に応じて通信方式や周波数帯域を切り替えてもよい。
記憶部26はハードディスクやメモリ(例えばSSD等)の記憶装置である。記憶部26には、例えば、機能管理情報、各種のデータ、各種のプログラム(例えば、OSや各種のアプリケーションプログラム等)、各端末装置10のアドレスを示す情報(端末アドレス情報)、各機器12のアドレスを示す情報(機器アドレス情報)、中継装置14を利用するユーザを識別するための情報(ユーザ識別情報)、等が記憶されている。これらは別々の記憶装置に記憶されてもよいし、1つの記憶装置に記憶されてもよい。
以下、機能管理情報について詳しく説明する。機能管理情報は、構成(例えば、ハードウェアとしての機器、ソフトウェア、対象等)を用いることで実行可能な機能を管理するための情報である。構成としての対象は、機能が適用されるファイル(データ)や物理的な物体等である。機能は、単独機能であってもよいし、連携機能であってもよい。単独機能は、例えば、1つの構成を用いることで実行可能な1つの機能である。連携機能は、複数の構成を用いることで実行可能な機能である。例えば、連携機能は、複数の構成を連携させることで実行可能な機能である。また、連携機能は、1つの機器や1つのソフトウェアが有する複数の機能を用いることで実行可能な機能であってもよい。また、端末装置10や中継装置14も、連携機能を実行する機器として用いられてもよいし、端末装置10や中継装置14が有する機能も連携機能の一部として用いられてもよい。
機器の全体、機器の特定の部分、ソフトウェアの特定の機能、複数の機能を含む集合機能等が、構成として用いられてもよい。例えば、機器の部分毎に機能が割り当てられている場合、連携機能は、その部分を用いる機能であってもよい。また、ソフトウェアが複数の機能を有している場合、連携機能は、その複数の機能の中の一部の機能を用いる機能であってもよい。集合機能は、複数の機能によって構成されており、当該複数の機能が同時又は順次に実行されることで、当該集合機能による処理が実行される。また、連携機能は、ハードウェアのみを用いる機能であってもよいし、ソフトウェアのみを用いる機能であってもよいし、ハードウェアとソフトウェアの両方を用いる機能であってもよい。
機能管理情報は、例えば、機能に用いられる構成(各構成を識別するための構成識別情報)と、当該機能に関する機能情報との対応付けを示す情報である。例えば、単独機能の実行に用いられる単独の構成と、当該単独機能に関する機能情報とが互いに対応付けられて、機能管理情報に登録されている。また、連携機能の実行に用いられる複数の構成の組み合わせ(各構成を識別するための構成識別情報の組み合わせ)と、当該連携機能に関する機能情報とが互いに対応付けられて、機能管理情報に登録されている。
構成が機器である場合、構成識別情報は、当該機器を識別するための情報(機器識別情報)である。構成がソフトウェアである場合、構成識別情報は、当該ソフトウェアを識別するための情報(ソフトウェア識別情報)である。構成が対象である場合、構成識別情報は、当該対象を識別するための情報(対象識別情報)である。機器を識別するための構成識別情報は、当該機器が有する機能を示す情報を含んでもよい。同様に、ソフトウェアを識別するための構成識別情報は、当該ソフトウェアが有する機能を示す情報を含んでもよい。
機器識別情報は、例えば、機器の名称、機器ID、機器の種類を示す情報、機器の型番号、機器を管理するための情報(例えば資産管理情報等)、機器が設置されている位置を示す情報(機器の位置情報)、機器に紐付く画像(機器画像)、機器アドレス情報、等である。機器画像は、例えば、機器を表す外観画像である。外観画像は、機器の外側(例えば機器の筐体)を表す画像であってもよいし、筐体を開けて内部が外から見える状態(例えば内部構造)を表す画像であってもよいし、梱包用のシート等によって機器が覆われている状態を表す画像であってもよい。機器画像は、機器をカメラ等の撮影装置によって撮影することで生成された画像(機器の外観を表す画像や内部を表す画像等)であってもよいし、機器を模式的に表す画像(例えばアイコン等)であってもよい。機器画像は、静止画像であってもよいし、動画像であってもよい。機器画像のデータは、記憶部26に記憶されていてもよいし、端末装置10や機器12等の他の装置に記憶されていてもよい。
ソフトウェア識別情報は、例えば、ソフトウェアの名称、ソフトウェアID、ソフトウェアの種類を示す情報、ソフトウェアの型番号、ソフトウェアを管理するための情報、ソフトウェアに紐付く画像(ソフトウェア画像)、等である。ソフトウェア画像は、例えば、ソフトウェアの機能を表す画像(例えばアイコン等)である。ソフトウェア画像は、静止画像であってもよいし、動画像であってもよい。ソフトウェア画像のデータは、記憶部20に記憶されていてもよいし、端末装置10や機器12等の他の装置に記憶されていてもよい。
対象識別情報は、例えば、対象の名称、対象ID、対象の種類を示す情報、対象に紐付く画像(対象画像)、等である。例えば、対象がファイル(データ)である場合、そのファイル(例えば画像ファイルや文書ファイル等)の名称等が、対照識別情報として用いられる。また、対象が物理的な物体(例えば商品等)である場合、その物体の名称等が、対象識別情報として用いられる。対象画像は、物理的な対象をカメラ等の撮影装置によって撮影することで生成された画像(静止画像や動画像)であってもよいし、対象を模式的に表す画像(例えばアイコン等)であってもよい。対象画像のデータは、記憶部26に記憶されていてもよいし、端末装置10や機器12等の他の装置に記憶されていてもよい。
機能情報は、例えば、機能の名称やID等の識別情報と、当該機能の内容を示す内容情報とを含む。単独機能に関する機能情報は、単独機能の識別情報と、当該単独機能の内容を示す内容情報とを含む。連携機能に関する機能情報は、連携機能の識別情報と、当該連携機能の内容を示す内容情報とを含む。
なお、連携機能は、互いに異なる複数の構成を連携させることで実行可能な機能であってもよいし、同一の構成を連携させることで実行可能な機能であってもよい。連携機能は、連携前には利用できなかった機能であってもよい。例えば、プリント機能を有する機器(プリンタ)とスキャン機能を有する機器(スキャナ)とを連携させることで、連携機能としてのコピー機能が実行可能となる。すなわち、プリント機能とスキャン機能とを連携させることで、コピー機能が実行可能となる。この場合、連携機能としてのコピー機能と、プリント機能及びスキャン機能の組み合わせと、が対応付けられている。
連携機能の概念の範疇には、複数の機器や複数のソフトウェアを連携させることで新たな機能の実行が可能となる合体機能が含まれてもよい。例えば、複数のディスプレイを組み合わせることで、合体機能としての拡張表示機能が実現されてもよい。別の例として、テレビとレコーダーとを組み合わせることで、合体機能としての録画機能が実現されてもよい。その録画機能は、テレビに表示されている画像を録画する機能であってもよい。また、複数のカメラを組み合わせることで、合体機能としての撮影領域拡張機能が実現されてもよい。この拡張機能は、例えば各カメラの撮影領域を繋ぎ合わせて撮影する機能である。また、電話と翻訳機や翻訳ソフトとを組み合わせることで、合体機能としての翻訳通話機能(電話を介した会話が翻訳される機能)が実現されてもよい。このように、連携機能の概念の範疇には、互いに同一の種類の複数の機器や複数のソフトウェアを連携させることで実現可能となる機能や、互いに異なる種類の複数の機器や複数のソフトウェアを連携させることで実現可能となる機能が含まれてもよい。
制御部28は、中継装置14の各部の動作を制御する機能を有する。例えば、制御部28は、各種のプログラムの実行、通信部24による通信の制御、等を行う。また、制御部28は、機能管理情報に設定されている内容に従って、機器12等の構成を制御する機能を有する。また、制御部28は、設定部30と警告処理部32とを含む。
設定部30は、機能(単独機能や連携機能)を構成に設定する機能を有する。また、設定部30は、当該構成を識別するための構成識別情報と当該機能に関する機能情報とを互い対応付けて機能管理情報に登録する。例えば、ユーザが端末装置10を用いて、構成に対する機能の設定指示を与えた場合、その設定指示を示す情報が端末装置10から中継装置14に送信される。設定部30は、その設定指示に従って機能を構成に設定する。設定部30は、構成に設定された各機能をユーザ毎に管理してもよい。
警告処理部32は、構成に対する機能の設定指示が与えられた場合(例えば、設定部30がその設定指示を受け付けた場合)において、当該構成に対して別の機能が既に設定されている場合、警告処理を実行する機能を有する。例えば、当該機能と当該別の機能が、当該構成を用いて互いに矛盾する処理(相反する処理)を実行するための機能である場合、警告処理部32は警告処理を実行する。警告処理部32は、例えば、矛盾した処理が実行される旨を示す警告情報を作成し、当該警告情報を、当該機能の設定指示を与えた端末装置10に送信する。当該端末装置10には、当該警告情報が表示される。また、当該警告情報が、音声として当該端末装置10や中継装置14や他のスピーカ等から発せられてもよい。
また、中継装置14は、UI部を含んでいてもよい。この場合、制御部28は、当該UI部を用いた情報の通知(例えば情報の表示や音声出力等)の制御、及び、当該UI部を用いて中継装置14に入力された情報の受け付けを行う。
なお、設定部30と警告処理部32が端末装置10に設けられて、設定部30と警告処理部32による処理は、端末装置10によって行われてもよい。例えば、端末装置10は、中継装置14を介さずに直接的に機器12と通信することで、機能を当該機器12に設定してもよい。もちろん、端末装置10は、中継装置14やサーバ等の装置を介して機器12と通信することで、機能を当該機器12に設定してもよい。また、機能管理情報は、端末装置10の記憶部20に記憶されていてもよい。また、設定部30と警告処理部32が機器12に設けられ、機器管理情報が機器12に記憶されていてもよい。
本実施形態では、端末装置10が情報処理装置として機能してもよいし、中継装置14が情報処理装置として機能してもよい。もちろん、機器12が情報処理装置として機能してもよい。
以下、本実施形態に係る情報処理システムについて更に詳しく説明する。
図4を参照して、機能管理情報について詳しく説明する。図4には、機能管理情報としての機能管理テーブルの一例が示されている。機能管理テーブルにおいては、一例として、ユーザIDと、機能IDと、構成(機器、ソフトウェア、対象)を示す情報と、機能(単独機能や連携機能)の内容を示す情報とが互いに対応付けられている。ユーザIDは、ユーザ識別情報の一例である。例えば、中継装置14が提供するサービスを利用するためのユーザアカウント情報(例えば、機能の設定や実行を利用するためのユーザアカウント情報)が、ユーザIDとして用いられる。機器の全体又は部分が構成として用いられてもよい。また、ソフトウェアの特定の機能が構成として用いられてもよい。なお、構成は、下位概念のレベルの情報(例えば、当該構成の固有名称(例えば、具体的な製品名、商品名、型番、Webサイト名、URL等))によって特定されている。もちろん、構成は、上位概念のレベルの情報(例えば、当該構成の普通名称や一般名称等)によって特定されてもよい。以下、各機能について詳しく説明する。
例えば、ユーザAには、機能1,2が対応付けられている。つまり、ユーザAによって機能1,2の設定指示が与えられ、機能1,2が構成に設定されて機能管理テーブルに登録されている。
機能1は、機器としての開閉センサAと、機器としての照明装置Bと、を連携させることで実行可能な連携機能である。開閉センサAは、扉の開及び閉を検知するセンサである。機能1の内容は、「開閉センサAが扉の開きを検知した場合、照明装置Bを点灯させる。」という機能である。詳しく説明すると、開閉センサAが扉の開きを検知した場合、その検知結果を示す情報が、開閉センサAから中継装置14に送信される。中継装置14の制御部28は、その検知結果を示す情報を受けた場合、点灯指示を示す情報を照明装置Bに送信することで照明装置Bを点灯させる。例えば、開閉センサA及び照明装置Bのそれぞれの機器アドレス情報が、中継装置14の記憶部26に記憶されており、中継装置14の制御部28は、それぞれの機器アドレス情報を用いて情報の送受信を行う。もちろん、ユーザAに紐付く端末装置10が、中継装置14を介して、又は、中継装置14を介さずに、このような制御をおこなってもよい。また、開閉センサAと照明装置Bが、中継装置14を介さずに互いに直接的に通信することで、上記の動作を行ってもよい。
機能2は、機器としてのスキャナCと、OCR(Optical character recognition)ソフトウェアD及び帳票作成ソフトウェアEと、機能2が適用される対象としての領収書及び会計ファイルFと、を連携させることで実行可能な連携機能である。機能2の内容は、「領収書がスキャナCによってスキャンされた場合、それによって生成された領収書の内容を、会計ファイルFに追加する。」という機能である。詳しく説明すると、スキャナCによって領収書が読み取られると画像が生成され、OCRソフトウェアDによって、当該画像から文字列が抽出され、帳票作成ソフトウェアEによって、その文字列が会計ファイルFに追加される。更に詳しく説明すると、その画像が生成されると、その画像のデータが、スキャナCから中継装置14に送信される。中継装置14は、OCRソフトウェアDを用いた処理と帳票作成ソフトウェアEを用いた処理を制御する。中継装置14は、その画像のデータを、OCRソフトウェアDと帳票作成ソフトウェアEがインストールされている装置(例えばサーバや端末装置10や機器12等)に送信し、その装置にOCRソフトウェアDと帳票作成ソフトウェアEによる処理を実行させる。その装置は、会計ファイルFをその格納場所(例えばサーバや端末装置10等)から取得して、OCRソフトウェアDと帳票作成ソフトウェアEによる処理を実行する。もちろん、中継装置14にOCRソフトウェアDと帳票作成ソフトウェアEがインストールされている場合、中継装置14がOCRソフトウェアDと帳票作成ソフトウェアEによる処理を実行してもよい。OCRソフトウェアDによる処理と帳票作成ソフトウェアEによる処理が、それぞれ異なる装置によって実行されてもよい。機能1と同様に、ユーザAに紐付く端末装置10やスキャナCが、上記の制御を行ってもよい。
ユーザBには、機能3,4が対応付けられている。つまり、ユーザBによって、機能3,4の設定指示が与えられ、機能3,4が構成に設定されて機能管理テーブルに登録されている。
機能3は、ソフトウェアとしてのWebブラウザG、インターネット上のショッピングサイトH及び購入指示と、対象としてのブランドバッグJと、を連携させることで実行可能な連携機能である。その機能3の内容は、「WebブラウザGが起動し、ショッピングサイトHにブランドバッグJが出品された場合、ブランドバッグJを購入する。」という機能である。例えば、WebブラウザGが中継装置14にインストールされている場合、中継装置14によって機能3が実行される。WebブラウザGが、ユーザBに紐付く端末装置10にインストールされている場合、当該端末装置10によって機能3が実行されてもよい。WebブラウザGは、ショッピングサイトHを監視し、ショッピングサイトにブランドバッグJが出品された場合、ブランドバッグJの購入処理を実行する。
機能4は、プレゼンテーション用ソフトウェアKと、対象としての画像及びプレゼンテーション用ファイルと、を連携させることで実行可能な連携機能である。機能4の内容は、「画像とプレゼンテーション用ファイルがユーザによって選択された場合、プレゼンテーション用ソフトウェアKによって、当該画像をプレゼンテーション用ファイルに追加する。」という機能である。例えば、プレゼンテーション用ソフトウェアKが中継装置14にインストールされている場合、中継装置14によって機能4が実行される。例えば、ユーザBが、ユーザBに紐付く端末装置10を用いて、画像とプレゼンテーション用ファイルを選択して中継装置14への送信指示を与えた場合、その画像のデータとそのプレゼンテーション用ファイルが、ユーザBに紐付く端末装置10から中継装置14に送信され、中継装置14にて機能4が実行される。また、プレゼンテーション用ソフトウェアKが、ユーザBに紐付く端末装置10にインストールされている場合、その端末装置10によって機能4が実行されてもよい。
ユーザCには、機能5,6が対応付けられている。つまり、ユーザCによって、機能5,6の設定指示が与えられ、機能5,6が構成に設定されて機能管理テーブルに登録されている。
機能5は、文書作成ソフトウェアL及び帳票作成ソフトウェアMと、対象としての文書ファイル及び会計ファイルと、を連携させることで実行可能な連携機能である。機能5の内容は、「文書ファイルと会計ファイルがユーザによって選択された場合、文書作成ソフトウェアLと帳票作成ソフトウェアMによって、当該文書ファイルの内容を当該会計ファイルに追加する。」という機能である。例えば、文書作成ソフトウェアLと帳票作成ソフトウェアMが中継装置14にインストールされている場合、中継装置14によって機能5が実行される。例えば、ユーザCが、ユーザCに紐付く端末装置10を用いて、文書ファイルと会計ファイルを選択して中継装置14への送信指示を与えた場合、その文書ファイルとその会計ファイルが、ユーザCに紐付く端末装置10から中継装置14に送信され、中継装置14にて機能5が実行される。また、文書作成ソフトウェアLと帳票作成ソフトウェアMが、ユーザBに紐付く端末装置10にインストールされている場合、その端末装置10によって機能5が実行されてもよい。
機能6は、機器としての電話機Nと、文書作成ソフトウェアPと、を連携させることで実行可能な連携機能である。機能6の内容は、「電話機Nを用いた会話の内容を、文書作成ソフトウェアPによって文書として保存する。」という機能である。詳しく説明すると、電話機Nを用いた会話の内容を示す情報が、当該電話機Nから中継装置14に送信される。文書作成ソフトウェアPが中継装置14にインストールされている場合、中継装置14によって機能6が実行される。ユーザCに紐付く端末装置10に文書作成ソフトウェアPがインストールされている場合、会話の内容を示す情報が中継装置14からその端末装置10に送信され、その端末装置10によって機能6が実行されてもよい。もちろん、中継装置14を介さずに、ユーザCに紐付く端末装置10や電話機Nによって上記の制御が行われてもよい。
ユーザDには、機能7が対応付けられている。つまり、ユーザDによって、機能7の設定指示が与えられ、機能7が構成に設定されて機能管理テーブルに登録されている。
機能7は、機器としての開閉センサA及び防犯カメラQと、通知ソフトウェアRと、を連携させることで実行可能な連携機能である。機能7の内容は、「開閉センサAが扉の開きを検知した場合、防犯カメラQが撮影し、通知ソフトウェアRによってユーザCに検知結果を通知する。」という機能である。詳しく説明すると、開閉センサAが扉の開きを検知した場合、その検知結果を示す情報が、開閉センサAから中継装置14に送信される。中継装置14の制御部28は、その検知結果を示す情報を受けた場合、撮影指示を示す情報を防犯カメラQに送信する。防犯カメラQは、その撮影指示に従って撮影する。その撮影によって得られた画像データ(例えば静止画像データや動画像データ)は、通知ソフトウェアRによって、防犯カメラQから中継装置14を介してユーザCに紐付く端末装置10に送信される。もちろん、中継装置14を介さずに、ユーザCに紐付く端末装置10によって上記の制御が行われてもよい。
図4に示されている機能は一例に過ぎず、これら以外の機能(単独機能や連携機能)が機能管理テーブルに登録されていてもよい。例えば、連携機能は、IoT(Internet of Things)機器を用いて実行可能な機能であってもよい。また、コネクテッドホーム(IoT技術を用いて、家電等の機器同士をネットワークによって接続するシステム)にて連携機能が用いられてもよい。この場合、特定のサーバを介して機器同士が接続してもよいし、特定のサーバを介さずに機器同士が接続してもよい。
また、複数の構成は、IFTTT(イフト)を介して連携することで連携機能を実行してもよい。つまり、連携機能の内容が、ある構成にてトリガーとなる事象が発生した場合に、他の構成がアクション(処理)を実行するというものであってもよい。例えば、上記の機能1は、開閉センサAが扉の開きを検知したことがトリガーとなって、照明装置Bを点灯させるというアクションを実行する機能である。また、機能3は、ブランドバッグJが出品されたことがトリガーとなって、当該ブランドバッグJを購入するというアクションを実行する機能である。また、ある構成によるアクションが別のトリガーとなって、更に別の構成がアクションを実行する機能も、本実施形態に係る連携機能の範疇に含まれてもよい。また、複数のWebサービスを連携させる機能や、API(Application Programming Interface)を利用して複数のシステムやサービス等を連携させるAPI連携が、本実施形態に係る連携機能の範疇に含まれてもよい。
なお、設定された機能を実行する機器は、中継装置14によって制御されてもよいし、端末装置10(例えば、当該機能を設定したユーザに紐付く端末装置10)によって制御されてもよい。中継装置14によって機器が制御される場合、中継装置14は、当該機器の動作を制御するための制御信号を当該機器に送信することで当該機器を制御する。端末装置10によって当該機器が制御される場合、端末装置10は、当該制御信号を、当該機器に対して直接送信し、又は、中継装置14を介して当該機器に送信することで、当該機器を制御する。中継装置14が、他の中継装置に制御信号を送信し、当該他の中継装置が機器を制御してもよい。中継装置14からサーバに制御信号が送信され、サーバが機器を制御してもよい。
また、設定された機能を実行するソフトウェアは、中継装置14にインストールされていてもよいし、端末装置10(例えば、当該機能を設定したユーザに紐付く端末装置10)にインストールされていてもよいし、サーバ等の他の装置にインストールされていてもよい。
また、設定された機能の対象となるファイルは、中継装置14に記憶されていてもよいし、端末装置10(例えば、当該機能を設定したユーザに紐付く端末装置10)に記憶されていてもよいし、サーバ等の他の装置に記憶されていてもよい。
機器として、機器の部分が用いられてもよい。例えば、機器が複数の機能を有し、機器の部分毎に機能が割り当てられている場合、機器の部分を用いることで実行可能な連携機能が定義されてもよい。具体例を挙げて説明すると、複合機の本体部にプリント機能が割り当てられており、複合機の読取部(例えば、原稿カバーや原稿ガラスや自動原稿給紙装置に対応する部分)にスキャン機能が割り当てられており、複合機の後処理装置に後処理機能(例えばステープル止め機能等)が割り当てられているものとする。機能2にてスキャン機能を用いるのであれば、複合機の読取部が、機能2に要する構成として設定されてもよい。また、ソフトウェアとして、RPA(Robotics Process Automation)等のようにブロック単位でまとまった集合機能が用いられてもよい。
例えば、構成に機能を設定するための機能設定ソフトウェアが端末装置10にインストールされて、記憶部20に記憶されている。ユーザがUI部18を用いて機能設定ソフトウェアの実行指示を与えた場合、端末装置10の制御部22は、機能設定ソフトウェアを実行する。これにより、UI部18には、機能設定画面(例えば連携機能を設定するための画面)が表示される。その機能設定画面上にて、ユーザによって、構成(機器、ソフトウェア、対象)と、その構成に実行させる機能が指定される。ユーザによって指定された構成と機能を示す情報は、端末装置10から中継装置14に送信される。中継装置14の設定部30は、ユーザによって指定された構成に、ユーザによって指定された機能を設定し、その構成とその機能とを互いに対応付けて機能管理テーブルに登録する。
例えば、構成を用いて実行可能な単独機能を示す情報と、1又は複数の構成を用いて実行可能な連携機能を示す情報が予め作成されており、これらの情報が、端末装置10や中継装置14やサーバ等に記憶されている。例えば、機器12が有する機能(つまり、機器12によって実行可能な単独機能)を示す情報と、ソフトウェアが有する機能(つまり、ソフトウェアによって実行可能な単独機能)を示す情報が予め作成されており、これらの情報が、端末装置10や中継装置14やサーバ等に記憶されている。また、1又は複数の機器12を用いて実行可能な連携機能を示す情報、1又は複数のソフトウェアを用いて実行可能な連携機能を示す情報、及び、1又は複数の機器12と1又は複数のソフトウェアとを用いて実行可能な連携機能を示す情報が予め作成されており、これらの情報が、端末装置10や中継装置14やサーバ等に記憶されている。また、1又は複数の対象と、それ以外の構成(1又は複数の機器12や、1又は複数のソフトウェア)とを用いて実行可能な連携機能を示す情報が予め作成されており、その情報が、端末装置10や中継装置14やサーバ等に記憶されている。中継装置14の設定部30は、これらの情報を参照することで、ユーザによって指定された1又は複数の構成によって、ユーザによって指定された機能(単独機能や連携機能)を実行することが可能か否かを判断する。その実行が可能な場合、設定部30は、ユーザによって指定された1又は複数の構成に、ユーザによって指定された機能(単独機能や連携機能)を設定し、当該1又は複数の構成と当該機能とを互いに対応付けて機能管理テーブルに登録する。その実行が不可能な場合、設定部30は、ユーザによって指定された機能を機能管理テーブルに登録しない。
中継装置14の制御部28は、機能管理テーブルを参照することで、その機能管理テーブルに登録されている機能の実行を制御する。その制御は、上述した通りである。上述したように、その制御は端末装置10や機器12やサーバ等によって行われてもよい。
以下、本実施形態に係る情報処理システムによる処理について具体例を挙げて説明する。
図5には、連携機能に用いられる機器が示されている。例えば、扉34の周囲には、扉34の開閉を検知する開閉センサ36が設けられている。また、照明装置38が設けられている。「扉34の開きが開閉センサ36によって検知された場合、照明装置38を点灯させる」という連携機能が、ユーザAによって既に設定されているものとする。その連携機能は、図4に示されている機能管理テーブルに、ユーザAに紐付く機能1として登録されている。
以下、上記の機能1が既に設定されている状態で、別のユーザBが、「扉34の開きが開閉センサ36によって検知された場合、照明装置38を消灯させる」という連携機能を設定しようとする場合の処理について説明する。
図6には、機能設定画面の一例が示されている。例えば、ユーザBが、端末装置10のUI部18を用いて機能設定ソフトウェアの実行指示を与えた場合、端末装置10の制御部22は、機能設定ソフトウェアを実行する。これにより、UI部18には、機能設定画面40が表示される。機能設定画面40は、機能(単独機能や連携機能)を設定するための画面である。この機能設定画面40上にて、ユーザによって、1又は複数の構成と、当該1又は複数の構成によって実行される機能とが指定される。図6に示す例では、構成としての機器として、開閉センサAと照明装置Bが指定されており、それらを用いて実行される連携機能として、「扉の開きを検知した場合、照明装置を消灯する」という機能が指定されている。ここでは連携機能が指定されているが、単独機能が指定されてもよい。
端末装置10の制御部22は、情報処理システムに含まれる機器群の一覧をプルダウン方式等に従って機能設定画面40に表示させ、ユーザBは、その一覧の中から、連携機能に用いられる機器を選択してもよい。ユーザBは、直接的に、連携機能に用いられる機器を示す情報を機能設定画面40に入力してもよい。同様に、制御部22は、ソフトウェア群の一覧をプルダウン方式等に従って機能設定画面40に表示させ、ユーザBは、その一覧の中から、連携機能に用いられるソフトウェアを選択してもよい。ユーザBは、直接的に、連携機能に用いられるソフトウェアを示す情報を機能設定画面40に入力してもよい。当該ソフトウェア群は、例えば、ユーザBに紐付く端末装置10にインストールされているソフトウェアや、中継装置14にインストールされているソフトウェアや、各機器12にインストールされているソフトウェアや、サーバ等の他の装置にインストールされているソフトウェア等を含む。また、制御部22は、対象群(例えばファイル群や商品群等)の一覧をプルダウン方式等に従って機能設定画面40に表示させ、ユーザBは、その一覧の中から、連携機能が適用される対象(例えばファイルや商品等)を選択してもよい。ユーザBは、直接的に、連携機能が適用される対象を示す情報を機能設定画面40に入力してもよい。
連携機能に用いられる複数の機器がユーザBによって指定された場合、制御部22は、当該複数の機器を用いて実行可能な連携機能群の一覧をプルダウン方式等に従って機能設定画面40に表示させてもよい。この場合、ユーザBは、その一覧から連携機能を選択してもよい。図6に示す例では、開閉センサAと照明装置BがユーザBによって指定された場合、開閉センサと照明装置とを用いて実行可能な連携機能の一覧が機能設定画面40に表示される。上述したように、1又は複数の構成を用いて実行可能な連携機能を示す情報が予め作成されて、端末装置10や中継装置14や他の装置に記憶されている。制御部22は、その情報を参照することで、開閉センサと照明装置とを用いて実行可能な連携機能の一覧を検索し、その一覧を機能設定画面40に表示させる。もちろん、ユーザBは、直接的に、連携機能を示す情報を機能設定画面40に入力してもよい。
ユーザBが、機能設定画面40上で機能の設定を指示した場合(例えば「はい」ボタンを押した場合)、端末装置10は、機能の設定指示情報を中継装置14に送信する。その設定指示情報は、ユーザBのユーザ識別情報(例えばユーザアカウント情報)、ユーザBによって指定された構成を示す情報、及び、ユーザBによって指定された機能を示す情報を含む。図6に示す例では、構成と機能を示す情報として、開閉センサAと照明装置Bを示す情報と、「扉の開きを検知した場合、照明装置を消灯する」という内容の連携機能を示す情報が、設定指示情報に含まれて端末装置10から中継装置14に送信される。
中継装置14の設定部30は、上記の設定指示情報を受け付ける。中継装置14の警告処理部32は、その設定指示情報に従った機能の設定が完了する前に(例えば、機能管理テーブルに当該機能が登録される前に)、図4に示されている機能管理テーブルを参照することで、当該設定指示情報が示す構成に対して別の機能が既に設定されているか否かを判断する。更に、当該構成に対して別の機能が既に設定されている場合、警告処理部32は、当該設定指示情報が示す機能と当該別の機能が、当該構成を用いて互いに矛盾する処理(相反する処理)を実行する機能であるか否かを判断する。
開閉センサAと照明装置Bとを用いて実行される連携機能が、機能1としてユーザAによって既に設定されており、その機能1は、ユーザBによって新たに設定されようとしている連携機能と矛盾する機能(相反する機能)である。具体的には、機能1は、「扉の開きが開閉センサAによって検知された場合、照明装置Bを点灯させる」という連携機能であるのに対して、ユーザBが設定しようとしている機能は、「扉の開きが開閉センサAによって検知された場合、照明装置Bを消灯させる」という連携機能である。つまり、機能1が実行されるためのトリガー条件(実行条件)と、ユーザBが設定しようとしている機能のトリガー条件とが同じ条件であり、その同じトリガー条件の下で、両機能は互いに矛盾する処理(相反する処理)を実行することになる。この場合、警告処理部32は、矛盾した処理が実行される旨を示す警告情報を作成し、その警告情報を、ユーザBに紐付く端末装置10に送信する。当該端末装置10のUI部18には、その警告情報が表示される。また、その警告情報が音声として発せられてもよい。
図7には、警告情報の一例が示されている。ユーザBに紐付く端末装置10のUI部18には画面42が表示され、端末装置10の制御部22は、その画面42に警告情報を表示させる。例えば、同じトリガー条件(扉の開きが検知されたという条件)の下で矛盾した動作が発生するといった趣旨のメッセージが、警告情報として画面42に表示される。このように、機能1と矛盾する機能の設定完了前に、警告情報が表示される。
以上のように、本実施形態によれば、別の機能が既に設定されている構成に対して、当該別の機能と矛盾する機能(相反する機能)が新たに設定されようとしている場合に、警告がユーザに通知される。こうすることで、ユーザは、機能の設定完了前に、構成に対して複数の機能が設定された場合に発生し得る問題を認識することができる。
なお、上記の例では、構成としての複数の機器に連携機能が設定されているが、ソフトウェアや対象(ファイルや商品等)が構成として指定されてもよいし、構成に対して単独機能が設定されてもよい。
以下、変形例について説明する。
(変形例1)
変形例1では、設定指示情報が示す機能と矛盾する別の機能が同一の構成に対して既に設定されている場合、中継装置14の設定部30は、既に設定されている当該別の機能の設定を解除し、設定指示情報が示す当該機能を当該構成に設定する。つまり、設定部30は、当該構成に対して当該機能を上書き設定する。これにより、既に設定されていた当該別の機能は実行されずに、後から設定された当該機能が実行される。
上記の例では、設定部30は、開閉センサAと照明装置Bに対して既に設定されていた機能1を解除すると共に、ユーザBによって指定された連携機能(「扉の開きを検知した場合、照明装置Bを消灯させる」という機能)を、開閉センサAと照明装置Bに対して設定する。この場合、設定部30は、ユーザBによって指定された連携機能を機能管理テーブルに登録する。また、設定部30は、機能1を機能管理テーブルから削除し、又は、機能管理テーブルにおいて、実行が禁止された機能であることを示す情報(フラグ等)を機能1に紐付ける。こうすることで、開閉センサAと照明装置Bによって、機能1が実行されずに、ユーザBによって設定された連携機能が実行される。
例えば、図6に示されている機能設定画面40上にて、ユーザBが「はい」ボタンを押した場合、ユーザBに紐付く端末装置10の制御部22は、機能の上書き設定を指示するための画面をUI部18に表示させる。図8には、その画面44が示されている。画面44には、機能の上書き設定を行うか否かをユーザに問い合わせるメッセージが表示される。画面44上にて、ユーザが「はい」ボタンを押した場合、端末装置10は、上書き指示を示す情報を中継装置14に送信する。中継装置14の設定部30は、その上書き指示を受けると、ユーザBによって指定された連携機能を開閉センサAと照明装置Bに上書き設定する。
また、ユーザBに紐付く端末装置10の制御部22は、上書き設定の完了を通知するための画面をUI部18に表示させる。図9には、その画面46が示されている。画面46には、上書き設定が完了した旨を示すメッセージが表示される。
変形例1によれば、構成に対して別の機能が既に設定されている場合であっても、後から設定された機能を実行することができる。
また、中継装置14の制御部28は、解除された機能1を設定したユーザAに紐付く端末装置10に対して、機能1が上書きされて解除された旨を示す情報を送信する。例えば、ユーザAに紐付く端末装置10の端末アドレス情報は中継装置14の記憶部26に記憶されており、制御部28は、その端末アドレス情報を用いて、ユーザAに紐付く端末装置10に、機能1が上書きされて解除された旨を示す情報を送信する。ユーザAに紐付く端末装置10のUI部18には、その情報が表示される。こうすることで、解除された機能を設定したユーザは、自身が設定した機能が解除されたことを認識することができる。また、中継装置14が提供するサービス(アプリケーション)の掲示板上に、上記の情報が表示されてもよい。
中継装置14の制御部28は、機能が上書きされて解除された旨を示す情報を、予め定められた権限を有するユーザ(例えば管理者)に紐付く端末装置10に通知してもよい。
なお、解除権限を有するユーザが上書き設定の指示(つまり、既に設定されている機能の解除の指示と、新たな機能の設定の指示)を与えた場合に、中継装置14の設定部30は、機能の上書き設定を行ってもよい。例えば、中継装置14の記憶部26には、解除権限を有するユーザのユーザ識別情報(例えばユーザアカウント情報)が記憶されている。設定部30は、上書き設定を指示したユーザのユーザ識別情報が、解除権限を有するユーザのユーザ識別情報として記憶部26に記憶されている場合、機能の上書き設定を行い、そうでない場合、機能の上書き設定を行わない。上記の例で説明すると、ユーザBのユーザ識別情報が、解除権限を有するユーザのユーザ識別情報として記憶部26に記憶されている場合、設定部30は、機能の上書き設定を行う。
(変形例2)
変形例2では、設定指示情報が示す機能と矛盾する別の機能が同一の構成に対して既に設定されている場合であっても、中継装置14の設定部30は、当該機能を当該構成に設定する。
上記の例を用いて説明すると、開閉センサAと照明装置Bに対して機能1が設定されている場合であっても、設定部30は、ユーザBによって指定された連携機能を開閉センサAと照明装置Bに設定する。つまり、設定部30は、ユーザBによって指定された連携機能を機能管理テーブルに新たに登録する。これにより、機能1と、ユーザBによって指定されて機能1と矛盾する連携機能の両方が、機能管理テーブルに登録される。
トリガー条件が発生した場合、つまり、開閉センサAによって扉の開きが検知された場合、中継装置14の制御部28は、機能1、又は、ユーザBによって指定された連携機能の何れか一方の機能を実行する。制御部28は、先に設定された機能1を実行してもよいし、後から設定されたユーザBの連携機能を実行してもよい。
また、制御部28は、トリガー条件が発生した時点、又は、ユーザBによって指定された連携機能の登録時に、実行対象の機能をユーザに問い合わせてもよい。制御部28は、その問い合わせを示す情報を、先に機能1を設定したユーザAに紐付く端末装置10、又は、後から連携機能を設定したユーザBに紐付く端末装置10に送信する。もちろん、制御部28は、ユーザAに紐付く端末装置10とユーザBに紐付く端末装置10の両方に、問い合わせを示す情報を送信してもよい。その情報を受けた端末装置10のUI部18には、例えば図10に示されている画面48が表示される。画面48の情報は、問い合わせを示す情報に含まれる情報である。その画面48には、同一の機器に対して設定されている互いに矛盾する複数の連携機能を示す情報が表示される。上記の例では、ユーザAによって設定された機能1を示す情報と、ユーザBによって設定された連携機能を示す情報が、画面48に表示される。
画面48上にて、ユーザA又はユーザBの何れかが機能を選択して実行ボタンを押した場合、中継装置14の制御部28は、選択された機能を実行対象の機能として識別し、トリガー条件が発生した場合に、当該選択された機能を実行する。例えば、制御部28は、画面48上で先に選択された機能を実行対象の機能として識別し、トリガー条件が発生した場合に、当該先に選択された機能を実行する。
(変形例3)
変形例3では、機能の実行条件として、機能が実行される期間(以下、「実行期間」と称する)が設定され、その実行期間中に機能が実行される。同一の構成に対して互いに矛盾する複数の機能が設定されている場合において、各機能の実行期間が少なくとも部分的に重複する場合、中継装置14の警告処理部32は警告処理を実行する。実行期間は、例えば、日付、日時、時刻、曜日等によって指定される。
以下、図11を参照して、変形例3について詳しく説明する。図11には、連携機能A,Bの実行期間の一例が示されている。連携機能A,Bは同一の構成に設定された連携機能であり、互いに矛盾する機能である。例えば、構成として、開閉センサAと照明装置Bが用いられるものとする。また、連携機能Aは、上記の機能1と同様に、「開閉センサAによって扉の開きが検知された場合、照明装置Bを点灯させる」機能であり、連携機能Bは、それと矛盾し、「開閉センサAによって扉の開きが検知された場合、照明装置Bを消灯させる」機能であるものとする。
連携機能Aの実行期間は、時点t1から時点t3であり、連携機能Bの実行期間は、時点t2から時点t4である。これらの実行期間は、例えば、連携機能を設定したユーザによって指定される。
連携機能Aの実行期間と連携機能Bの実行期間は、時点t2から時点t3の間において互いに重複している。つまり、時点t2から時点t3の期間においては、照明装置Bに対して互いに矛盾した連携機能A,Bが設定されていることになる。この場合、警告処理部32は警告処理を実行する。
例えば、連携機能Aが既に設定されて機能管理テーブルに登録されている場合において、連携機能Bの設定指示が後から与えられた場合、警告処理部32は、連携機能Bの設定を指示したユーザに紐付く端末装置10に対して警告情報を送信する。これにより、その端末装置10のUI部18に警告情報が表示される。例えば、図7に示されている警告情報が表示される。この場合、設定部30は、開閉センサAと照明装置Bに対して連携機能Bを設定しない。つまり、設定部30は、連携機能Bを機能管理テーブルに登録しない。こうすることで、連携機能Bの設定を指示したユーザは、連携機能Bの設定完了前に、構成に対して複数の機能が設定された場合に発生し得る問題を認識することができる。
別の例として、設定部30は、変形例2と同様に、連携機能A,Bの両方を開閉センサAと照明装置Bに設定してもよい。つまり、設定部30は、連携機能A,Bの両方を機能管理テーブルに登録する。この場合、中継装置14の制御部28は、実行期間が重複しない期間では、連携機能Aと連携機能Bのそれぞれを実行し、実行期間が重複する期間では、連携機能A又は連携機能Bの何れか一方の機能を実行する。もちろん、制御部28は、実行期間が重複する期間では、連記機能A,Bの何れも実行しなくてもよい。こうすることで、設定された機能を実行しつつ、複数の機能が設定したときに発生し得る問題の発生を防止することができる。
具体的には、時点t1から時点t2の間の期間は、連携機能Aの実行期間に含まれる期間であり、また、連携機能Bの実行期間に重複しない期間である。この場合、制御部28は、時点t1から時点t2の間の期間では、連携機能Aを実行する。同様に、時点t3から時点t4の間の期間は、連携機能Bの実行期間に含まれる期間であり、また、連携機能Aの実行期間に重複しない期間である。この場合、制御部28は、時点t3から時点t4の間の期間では、連携機能Bを実行する。これらの期間に対して、時点t2から時点t3の間の期間では、連携機能A,Bの実行期間が互いに重複するため、制御部28は、連携機能A,Bの何れか一方の機能を実行する。実行される機能は、連携機能Bの設定時にユーザによって指定されてもよいし、時点t2にユーザによって指定されてもよい。制御部28は、時点t2から時点t3の間の期間では、連携機能A,Bの何れも実行しなくてもよい。
図12には、更に別の例が示されている。符号50,52,54はそれぞれ連携機能を示している。連携機能50は、例えば、機器Aの検知結果がトリガーとなって照明装置を点灯させるという機能である。連携機能52は、機器Aの検知結果がトリガーとなって機器Bを動作させ、機器Bの検知結果がトリガーとなって機器Cを動作させ、機器Cの検知結果がトリガーとなって照明装置を点灯させ、その点灯がトリガーとなって機器Eを動作させ、機器Eの検知結果がトリガーとなって機器Fを動作させる機能である。連携機能54は、機器Dの検知結果がトリガーとなって照明装置を消灯させる機能である。
連携機能50,52,54の実行期間は設定されていないが、各機器の検知結果によっては、同じ時点t5にて、連携機能50における照明装置の点灯、連携機能52における照明装置の点灯、及び、連携機能52における照明装置の消灯が実行される可能性はある。照明装置の点灯と消灯は互いに矛盾する動作であるため、連携機能50,52と連携機能54は互いに矛盾する動作を実行する機能であるといえる。また、連携機能50では、機器Aの検知結果がトリガーとなって照明装置が点灯し、連携機能52では、機器Cの検知結果がトリガーとなって照明装置が点灯するため、連携機能50,52も、互いに矛盾する動作を実行する可能性がある。従って、連携機能50,52,54の中の何れか1つの機能が既に設定されている場合において、他の2つの連携機能の中の少なくとも1つの機能の設定指示が与えられた場合、警告処理部32は警告処理を実行する。こうすることで、互いに矛盾する複数の機能が同一の構成に対して設定されることを防止することができる。
上記の端末装置10及び中継装置14のそれぞれは、一例としてハードウェアとソフトウェアとの協働により実現される。具体的には、端末装置10及び中継装置14のそれぞれは、図示しないCPU等の1又は複数のプロセッサを備えている。当該1又は複数のプロセッサが、図示しない記憶装置に記憶されたプログラムを読み出して実行することにより、端末装置10及び中継装置14のそれぞれの各部の機能が実現される。上記プログラムは、CDやDVD等の記録媒体を経由して、又は、ネットワーク等の通信経路を経由して、記憶装置に記憶される。別の例として、端末装置10及び中継装置14のそれぞれの各部は、例えばプロセッサや電子回路やASIC(Application Specific Integrated Circuit)等のハードウェア資源により実現されてもよい。その実現においてメモリ等のデバイスが利用されてもよい。更に別の例として、端末装置10及び中継装置14のそれぞれの各部は、DSP(Digital Signal Processor)やFPGA(Field Programmable Gate Array)等によって実現されてもよい。
10A,10B 端末装置、12A,12B 機器、14 中継装置、28 制御部、30 設定部、32 警告処理部。

Claims (5)

  1. ユーザが操作する端末装置に表示された機能設定画面上にて、機器と前記機器に実行させる機能とが前記ユーザによって指定されて、前記指定された前記機器と前記機能とを示す設定指示情報が前記端末装置から自装置に送信された場合、前記設定指示情報を受信して、前記機器に対する前記機能の設定を受け付け、前記機器と前記機能とを対応付けて機能管理テーブルに登録する設定部と、
    前記設定部が前記機能の設定を受け付けた場合において、前記機能とは異なる別の機能が前記機器に対応付けられて前記機能管理テーブルに既に登録されている場合、警告を示す情報を表示手段に表示させる警告処理部と、
    前記機能又は前記別の機能の何れか一方の機能を前記機器に実行させ、他方の機能を前記機器に実行させない制御部と、
    を有し、
    前記一方の機能は、第1端末装置を用いて第1ユーザによって指定されて前記機能管理テーブルに登録されており、
    前記他方の機能は、前記第1端末装置とは異なる第2端末装置を用いて前記第1ユーザとは異なる第2ユーザによって指定されて、前記機能管理テーブルに登録されており、
    前記制御部は、前記一方の機能を指定した前記第1ユーザの前記第1端末装置と、前記他方の機能を指定した前記第2ユーザの前記第2端末装置とに、前記一方の機能又は前記他方の機能の何れかを実行対象の機能として選択するための画面を表示させ、前記一方の機能と前記他方の機能のうち、前記画面上において前記第1ユーザ又は前記第2ユーザによって先に選択された機能を、前記機器に実行させる、
    情報処理装置。
  2. 前記機能が実行される期間が前記ユーザによって指定され、
    前記指定された前記期間を示す情報が、前記設定指示情報に含まれ、
    前記設定部は、前記期間を示す情報が含まれる前記設定指示情報を受信して、前記機器と前記機能と前記期間とを対応付けて前記機能管理テーブルに登録し、
    前記機能管理テーブルにおいて、前記機能に対応付けられている前記期間と、前記別の機能に対応付けられている、前記別の機能が実行される期間と、が少なくとも部分的に一致する場合、前記警告処理部は、前記警告を示す情報を前記表示手段に表示させる、
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記機器と前記機能とが対応付けられて前記機能管理テーブルに登録される前に、前記警告処理部は、前記警告を示す情報を前記表示手段に表示させる
    ことを特徴とする請求項1又は請求項2に記載の情報処理装置。
  4. 前記機能及び前記別の機能は、1又は複数の機器を用いて実行可能な連携機能である、
    ことを特徴とする請求項1から請求項何れかに記載の情報処理装置。
  5. コンピュータを、
    ユーザが操作する端末装置に表示された機能設定画面上にて、機器と前記機器に実行させる機能とが前記ユーザによって指定されて、前記指定された前記機器と前記機能とを示す設定指示情報が前記端末装置から自装置に送信された場合、前記設定指示情報を受信して、前記機器に対する前記機能の設定を受け付け、前記機器と前記機能とを対応付けて機能管理テーブルに登録する設定手段、
    前記設定手段が前記機能の設定を受け付けた場合において、前記機能とは異なる別の機能が前記機器に対応付けられて前記機能管理テーブルに既に登録されている場合、警告を示す情報を表示手段に表示させる警告処理手段、
    前記機能又は前記別の機能の何れか一方の機能を前記機器に実行させ、他方の機能を前記機器に実行させない制御手段、
    として機能させ、
    前記一方の機能は、第1端末装置を用いて第1ユーザによって指定されて前記機能管理テーブルに登録されており、
    前記他方の機能は、前記第1端末装置とは異なる第2端末装置を用いて前記第1ユーザとは異なる第2ユーザによって指定されて、前記機能管理テーブルに登録されており、
    前記制御手段は、前記一方の機能を指定した前記第1ユーザの前記第1端末装置と、前記他方の機能を指定した前記第2ユーザの前記第2端末装置とに、前記一方の機能又は前記他方の機能の何れかを実行対象の機能として選択するための画面を表示させ、前記一方の機能と前記他方の機能のうち、前記画面上において前記第1ユーザ又は前記第2ユーザによって先に選択された機能を、前記機器に実行させる、
    プログラム。
JP2018017417A 2018-02-02 2018-02-02 情報処理装置及びプログラム Active JP7102756B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018017417A JP7102756B2 (ja) 2018-02-02 2018-02-02 情報処理装置及びプログラム
US16/048,367 US11301265B2 (en) 2018-02-02 2018-07-30 Determining conflicting processes in first and second functions before setting of the first and second functions in a function management table is complete
CN201811024552.0A CN110134030A (zh) 2018-02-02 2018-09-04 信息处理装置、存储介质以及信息处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018017417A JP7102756B2 (ja) 2018-02-02 2018-02-02 情報処理装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2019133581A JP2019133581A (ja) 2019-08-08
JP7102756B2 true JP7102756B2 (ja) 2022-07-20

Family

ID=67476755

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018017417A Active JP7102756B2 (ja) 2018-02-02 2018-02-02 情報処理装置及びプログラム

Country Status (3)

Country Link
US (1) US11301265B2 (ja)
JP (1) JP7102756B2 (ja)
CN (1) CN110134030A (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004056466A (ja) 2002-07-19 2004-02-19 Sanyo Electric Co Ltd ホームゲートウェイ装置およびプログラム
JP2004248043A (ja) 2003-02-14 2004-09-02 Mitsubishi Electric Corp ホームネットワークシステムとこれに用いる通信アダプタ及びホームコントローラ
JP2010021809A (ja) 2008-07-10 2010-01-28 Sony Computer Entertainment Inc 情報処理装置、その制御方法、プログラム及び情報記憶媒体
JP2015155991A (ja) 2014-02-21 2015-08-27 株式会社リコー 転写装置、画像形成装置、転写制御方法及び転写制御プログラム
US20170017231A1 (en) 2014-04-10 2017-01-19 Panasonic Intellectual Property Manegement Co., Ltd. Device cooperation control system, device control apparatus, device, method for controlling devices of device cooperation control system, and program thereof

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5902352A (en) * 1995-03-06 1999-05-11 Intel Corporation Method and apparatus for task scheduling across multiple execution sessions
US5748468A (en) * 1995-05-04 1998-05-05 Microsoft Corporation Prioritized co-processor resource manager and method
US6636901B2 (en) * 1998-01-30 2003-10-21 Object Technology Licensing Corp. Object-oriented resource lock and entry register
JP4847168B2 (ja) * 2005-06-28 2011-12-28 キヤノン株式会社 アプリケーション管理システム、アプリケーション管理方法およびプログラム
US9081605B2 (en) * 2007-03-27 2015-07-14 Nec Corporation Conflicting sub-process identification method, apparatus and computer program
CN101329638B (zh) * 2007-06-18 2011-11-09 国际商业机器公司 程序代码的并行性的分析方法和***
US8531469B2 (en) * 2007-06-28 2013-09-10 Apple Inc. Media synchronization via image queue
US20090288031A1 (en) * 2008-05-16 2009-11-19 Microsoft Corporation Time block planning
US8024732B2 (en) * 2008-07-28 2011-09-20 Microsoft Corporation State separation for application changes
US8539479B2 (en) * 2010-04-30 2013-09-17 Sap Ag System and method for application function consolidation
US9413827B2 (en) 2013-02-25 2016-08-09 Qualcomm Incorporated Context aware actions among heterogeneous internet of things (IOT) devices
US9226121B2 (en) 2013-08-02 2015-12-29 Whatsapp Inc. Voice communications with real-time status notifications
US10324754B2 (en) * 2013-11-07 2019-06-18 International Business Machines Corporation Managing virtual machine patterns
JP6239990B2 (ja) * 2014-01-22 2017-11-29 クラリオン株式会社 接続装置、プログラムおよび接続方法
US10275279B2 (en) * 2015-07-09 2019-04-30 International Business Machines Corporation Increasing the efficiency of scheduled and unscheduled computing tasks
US10601876B1 (en) * 2019-11-27 2020-03-24 Cyberark Software Ltd. Detecting and actively resolving security policy conflicts

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004056466A (ja) 2002-07-19 2004-02-19 Sanyo Electric Co Ltd ホームゲートウェイ装置およびプログラム
JP2004248043A (ja) 2003-02-14 2004-09-02 Mitsubishi Electric Corp ホームネットワークシステムとこれに用いる通信アダプタ及びホームコントローラ
JP2010021809A (ja) 2008-07-10 2010-01-28 Sony Computer Entertainment Inc 情報処理装置、その制御方法、プログラム及び情報記憶媒体
JP2015155991A (ja) 2014-02-21 2015-08-27 株式会社リコー 転写装置、画像形成装置、転写制御方法及び転写制御プログラム
US20170017231A1 (en) 2014-04-10 2017-01-19 Panasonic Intellectual Property Manegement Co., Ltd. Device cooperation control system, device control apparatus, device, method for controlling devices of device cooperation control system, and program thereof

Also Published As

Publication number Publication date
US11301265B2 (en) 2022-04-12
JP2019133581A (ja) 2019-08-08
US20190243667A1 (en) 2019-08-08
CN110134030A (zh) 2019-08-16

Similar Documents

Publication Publication Date Title
JP7091856B2 (ja) 情報処理装置及びプログラム
JP7130987B2 (ja) 情報処理装置及びプログラム
JP2019144650A (ja) 情報処理装置及びプログラム
JP7147158B2 (ja) 情報処理装置、プログラム及び制御方法
JP6965704B2 (ja) 情報処理装置、プログラム及び制御方法
JP7099092B2 (ja) 情報処理装置及びプログラム
JP7159607B2 (ja) 情報処理装置、情報処理システム及びプログラム
JP7214963B2 (ja) 情報処理装置及びプログラム
US20210266232A1 (en) Information processing apparatus and non-transitory computer readable medium storing program
JP7102756B2 (ja) 情報処理装置及びプログラム
JP7070117B2 (ja) 情報処理装置及びプログラム
JP7009956B2 (ja) 情報処理装置、プログラム及び制御方法
JP7119447B2 (ja) 情報処理装置及びプログラム
US11099710B2 (en) Information processing apparatus and non-transitory computer readable medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210121

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220119

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220607

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220620

R150 Certificate of patent or registration of utility model

Ref document number: 7102756

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150