Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6615628B2 - Control method, control device, and program - Google Patents
[go: Go Back, main page]

JP6615628B2 - Control method, control device, and program - Google Patents

Control method, control device, and program Download PDF

Info

Publication number
JP6615628B2
JP6615628B2 JP2016017793A JP2016017793A JP6615628B2 JP 6615628 B2 JP6615628 B2 JP 6615628B2 JP 2016017793 A JP2016017793 A JP 2016017793A JP 2016017793 A JP2016017793 A JP 2016017793A JP 6615628 B2 JP6615628 B2 JP 6615628B2
Authority
JP
Japan
Prior art keywords
service
control
information
identifying
executed
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.)
Expired - Fee Related
Application number
JP2016017793A
Other languages
Japanese (ja)
Other versions
JP2016218993A (en
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.)
Panasonic Intellectual Property Corp of America
Original Assignee
Panasonic Intellectual Property Corp of America
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 Panasonic Intellectual Property Corp of America filed Critical Panasonic Intellectual Property Corp of America
Priority to CN201610261743.3A priority Critical patent/CN106168763B/en
Priority to EP16169193.6A priority patent/EP3096494B1/en
Priority to US15/156,337 priority patent/US10063386B2/en
Publication of JP2016218993A publication Critical patent/JP2016218993A/en
Application granted granted Critical
Publication of JP6615628B2 publication Critical patent/JP6615628B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Selective Calling Equipment (AREA)

Description

本発明は、ホームネットワークに接続された機器を制御するサービスの実行を制御する制御方法、制御装置、及びプログラムに関する。   The present invention relates to a control method, a control device, and a program for controlling execution of a service for controlling a device connected to a home network.

従来から、ホームネットワークに接続された機器を遠隔制御する複数のサービスを実行可能なホームコントローラが知られている。しかし、従来のホームコントローラでは、ホームネットワークに接続された機器を制御する複数のサービスによって、同一の機器に対して矛盾した制御(例えば同一機器に対する電源のON・OFF)が同時に行われるという課題があった。   Conventionally, home controllers capable of executing a plurality of services for remotely controlling devices connected to a home network are known. However, the conventional home controller has a problem in that contradictory control (for example, power ON / OFF of the same device) is simultaneously performed on the same device by a plurality of services that control the devices connected to the home network. there were.

この課題を解決するため、新たなサービスをインストールする際に、インストール済みのサービスに設定されている機器の制御条件と、新たにインストールするサービスに設定される機器の制御条件とを解析し、矛盾した制御条件を検出することで、同一の機器に対して矛盾した制御を行う可能性のあるサービスを検出することが知られている(特許文献1参照)。   To solve this problem, when installing a new service, the device control conditions set for the installed service and the device control conditions set for the newly installed service are analyzed, and a contradiction occurs. It is known that a service that may cause contradictory control to the same device is detected by detecting the control condition (see Patent Document 1).

特開2004−248043号公報JP 2004-248043 A

しかし、複数のサービスが同一の機器に対して矛盾した制御を行うことの検出には、さらなる改善が求められている。   However, further improvements are required to detect that multiple services perform contradictory controls on the same device.

本開示の一態様は、ネットワークに接続された機器を制御するサービスを2以上実行する制御装置における制御方法であって、実行された前記サービスを識別する情報、当該サービスにより制御された機器を識別する情報、及び当該制御の内容に関する情報に基づき、以上の前記機器の状態情報を管理し、同一の機器の前記状態情報に基づき、前記同一の機器に対する、第1のサービスによる第1の制御の実行と第2のサービスによる第2の制御の実行との繰り返しによって、前記第1のサービスによる前記第1の制御が所定回数以上実行されていることを検出し、前記繰り返しによって、前記第1のサービスによる前記第1の制御が所定回数以上実行されていることが検出された場合に、前記第1のサービスと前記第2のサービスの少なくとも一方を終了するための終了要求を発行する。 One aspect of the present disclosure is a control method in a control device that executes two or more services that control a device connected to a network, the information identifying the executed service, and the device controlled by the service information, and based on the information about the contents of the control, and manage the status information of one or more of the devices, based on the status information of the same device, against the same device, the first of the first service by repeating the execution of the second control by executing a second service control of said first of said first control by the service detects that it is running more than a predetermined number of times, by the repetition, the if the first control of the first service is detected to be running a predetermined number of times or more, small and the first service of the second service And also to issue a termination request to terminate one.

本開示によれば、複数のサービスによる実際の機器の制御内容に基づき、同一の機器に対する矛盾した制御の一形態である、繰り返し制御の検出及び解消が可能となる。   According to the present disclosure, it is possible to detect and eliminate repetitive control, which is a form of contradictory control for the same device, based on actual device control contents by a plurality of services.

実施の形態1におけるホームネットワークシステムの全体像を示す図である。1 is a diagram showing an overall image of a home network system in Embodiment 1. FIG. 実施の形態1におけるホームコントローラのハードウェア構成を示す図である。FIG. 3 is a diagram illustrating a hardware configuration of a home controller in the first embodiment. 実施の形態1におけるホームコントローラの機能構成を示す図である。3 is a diagram illustrating a functional configuration of a home controller in Embodiment 1. FIG. 状態監視テーブルの一例を示す図である。It is a figure which shows an example of a state monitoring table. 機器テーブルの一例を示す図である。It is a figure which shows an example of an apparatus table. サービステーブルの一例を示す図である。It is a figure which shows an example of a service table. 実施の形態1において状態監視テーブルに情報を登録する処理フローの一例を示す図である。6 is a diagram illustrating an example of a processing flow for registering information in a state monitoring table in the first embodiment. FIG. 実施の形態1において状態監視テーブルから情報を削除する処理フローの一例を示す図である。6 is a diagram illustrating an example of a processing flow for deleting information from a state monitoring table in the first embodiment. FIG. 実施の形態1において機器の状態変化を監視しサービスへ通知する処理フローの一例を示す図である。6 is a diagram illustrating an example of a processing flow for monitoring a change in the state of a device and notifying a service in Embodiment 1. FIG. ループ制御が発生していることを検出する処理フローの一例を示す図である。It is a figure which shows an example of the processing flow which detects that loop control has generate | occur | produced. ループ候補テーブルの一例を示す図である。It is a figure which shows an example of a loop candidate table. 実施の形態1においてループ制御を解消する処理フローの一例を示す図である。FIG. 10 is a diagram illustrating an example of a processing flow for canceling loop control in the first embodiment. 通知画面の一例を示す図である。It is a figure which shows an example of a notification screen. 通知画面の他の一例を示す図である。It is a figure which shows another example of a notification screen. 実施の形態1においてループ候補テーブルを初期化する処理フローの一例を示す図である。FIG. 10 is a diagram showing an example of a processing flow for initializing a loop candidate table in the first embodiment. 実施の形態2におけるホームネットワークシステムの全体像を示す図である。It is a figure which shows the whole image of the home network system in Embodiment 2. FIG. 実施の形態2におけるホームコントローラを含むホームネットワークシステムの機能構成を示す図である。6 is a diagram illustrating a functional configuration of a home network system including a home controller according to Embodiment 2. FIG. サービス管理テーブルの一例を示す図である。It is a figure which shows an example of a service management table. 実施の形態2においてサービス管理テーブルに情報を登録する処理フローの一例を示す図である。FIG. 10 is a diagram illustrating an example of a processing flow for registering information in a service management table in the second embodiment. 実施の形態2においてループ制御を解消する処理フローの一例を示す図である。FIG. 10 is a diagram illustrating an example of a processing flow for canceling loop control in the second embodiment. サービス管理テーブルの他の一例を示す図である。It is a figure which shows another example of a service management table.

(本発明の基礎となった知見)
サードパーティから提供されるサービスも含め、様々なサービスを利用してホームネットワークに接続された機器を制御する技術が検討されている。しかし、ユーザにとって様々なサービスを好みに合わせて利用したいというニーズがある一方で、サービスが制御対象とする機器の設定が、機器本体の純正リモコンによる操作や別サービスによる制御等他の手段により変更される可能性があるという問題もある。この問題に備え、各サービスは、制御対象の機器の状態を監視し、意図しない状態変化が発生した場合にサービスの終了や機器の再設定等の対応を行っている。
(Knowledge that became the basis of the present invention)
Techniques for controlling devices connected to a home network using various services including services provided by third parties are being studied. However, while there is a need for users to use various services according to their preferences, the settings of the devices that the services control are changed by other means such as operation with a genuine remote control of the device itself or control by another service There is also a problem that it may be done. In preparation for this problem, each service monitors the status of the device to be controlled, and responds such as termination of the service or resetting of the device when an unintended state change occurs.

機器の状態監視は、機器が各サービスに対して状態の変化を通知することで実現できる。状態変化の通知は、所謂イベント通知のようなもので、例えば、コールバック関数等を用いて実現される。複数のサービスが同一の機器を制御対象とする場合、当該機器の状態変化の通知を受けた各サービスは個々に対応を行う。このとき、各サービスが当該機器の再設定を行うと、複数のサービスにより当該機器の再設定が繰り返されるという所謂ループ制御(繰り返し制御)が発生する可能性がある。   Device status monitoring can be realized by the device notifying each service of a status change. The state change notification is a so-called event notification, and is realized using, for example, a callback function. When a plurality of services target the same device, each service that receives a notification of a change in the state of the device individually responds. At this time, if each service resets the device, so-called loop control (repetitive control) in which resetting of the device is repeated by a plurality of services may occur.

例えば、サービスAがエアコンを暖房25℃運転に設定した場合に、エアコンが暖房25℃運転を行う状態に変化したことの通知を受けて、サービスBがエアコンの電源をOFFにする再設定を行ったとする。この場合、サービスAは、エアコンが電源OFFの状態に変化したことの通知を受けて、再びエアコンを暖房25℃運転に設定する。このようにして、サービスAによるエアコンを暖房25℃運転に設定する制御とサービスBによるエアコンの電源をOFFにする制御とを繰り返すループ制御が発生する。   For example, when the service A sets the air conditioner to the heating 25 ° C. operation, the service B resets the air conditioner to be turned off in response to the notification that the air conditioner has changed to the heating 25 ° C. operation state. Suppose. In this case, the service A receives the notification that the air conditioner has changed to the power OFF state, and sets the air conditioner to the heating 25 ° C. operation again. In this way, a loop control is generated in which the control for setting the air conditioner by the service A to the heating 25 ° C. operation and the control for turning off the air conditioner by the service B are repeated.

このような課題に対し、上記特許文献1には、各制御プログラムの初期設定時に、各制御プログラムに設定された機器の制御条件をチェックし、矛盾した動作が発生するか否かを判定することが開示されている。そして、矛盾した動作が発生すると判定した場合には、ユーザに制御プログラムの優先度を設定させ、当該設定された優先度に基づいて実行する対象の制御プログラムを選択することで、矛盾した動作が発生するのを事前に回避することが開示されている。尚、特許文献1には、制御動作(機器の動作)を直接監視し、矛盾した動作が発生する場合にのみ、当該矛盾を解消するように制御してもよいことが開示されているが、具体的な実現方法については開示されていない。   In order to deal with such a problem, in Patent Document 1 described above, at the time of initial setting of each control program, the control conditions of the devices set in each control program are checked to determine whether or not contradictory operations occur. Is disclosed. If it is determined that the conflicting operation occurs, the user can set the priority of the control program and select the target control program to be executed based on the set priority. It is disclosed to avoid the occurrence in advance. Note that Patent Document 1 discloses that the control operation (device operation) may be directly monitored, and control may be performed so as to eliminate the contradiction only when an inconsistent operation occurs. A specific implementation method is not disclosed.

つまり、従来技術では、複数のサービスによる実際の機器の制御内容に基づき、同一の機器に対する矛盾した制御の検出と解消とを実現することに関して検討はされていなかった。   That is, in the prior art, no consideration has been given to realizing the detection and elimination of contradictory control for the same device based on the actual content of control of the device by a plurality of services.

本開示の目的は、複数のサービスによる実際の機器の制御内容に基づき、同一の機器に対する矛盾した制御の一形態である、繰り返し制御の検出及び解消が可能となる技術を提供することである。   An object of the present disclosure is to provide a technique capable of detecting and resolving repetitive control, which is a form of contradictory control for the same device, based on the actual content of control of the device by a plurality of services.

本開示の一態様による制御方法は、ネットワークに接続された機器を制御するサービスを2以上実行する制御装置における制御方法であって、実行された前記サービスを識別する情報、当該サービスにより制御された機器を識別する情報、及び当該制御の内容に関する情報に基づき、以上の前記機器の状態情報を管理し、同一の機器の前記状態情報に基づき、前記同一の機器に対する、第1のサービスによる第1の制御の実行と第2のサービスによる第2の制御の実行との繰り返しによって、前記第1のサービスによる前記第1の制御が所定回数以上実行されていることを検出し、前記繰り返しによって、前記第1のサービスによる前記第1の制御が所定回数以上実行されていることが検出された場合に、前記第1のサービスと前記第2のサービスの少なくとも一方を終了するための終了要求を発行する。 A control method according to an aspect of the present disclosure is a control method in a control device that executes two or more services that control devices connected to a network, and is information that identifies the executed services, controlled by the services information identifying the device, and based on the information about the contents of the control, and manage the status information of one or more of the devices, based on the status information of the same device, against the same device, the first service It is detected that the first control by the first service is executed a predetermined number of times or more by repeating the execution of the first control by the second service and the second control by the second service. Accordingly, the first of said first control by service when it is detected that is executed a predetermined number of times or more, the first service and the second Issues a termination request for terminating at least one of the-bis.

本構成によれば、サービスの実行によって実際に行われた機器の制御内容に基づき、第1のサービス及び第2のサービスの実行によって、同一機器に対する矛盾した制御の一形態である繰り返し制御が発生していることを検出することができる。   According to this configuration, repeated control, which is a form of contradictory control for the same device, is generated by executing the first service and the second service based on the control contents of the device actually performed by executing the service. Can be detected.

上記繰り返し制御の発生を検出した場合には、第1のサービス及び第2のサービスのうち少なくとも一方を終了するための終了要求を発行することで、当該少なくとも一方のサービスを終了させる。これにより、二個のサービスによって同時に同一機器に対する制御が行われることを解消することができる。その結果、上記繰り返し制御を解消することができる。   When the occurrence of the repetitive control is detected, at least one service is terminated by issuing a termination request for terminating at least one of the first service and the second service. Thereby, it is possible to eliminate the simultaneous control of the same device by two services. As a result, the repetitive control can be eliminated.

また、前記第1のサービス及び前記第2のサービスのうち、先に起動されたサービスに対して前記終了要求を発行することとしてもよい。   Moreover, it is good also as issuing the said completion | finish request | requirement with respect to the service started previously among the said 1st service and the said 2nd service.

第1のサービスの起動後、ユーザが第1のサービスよりも利用したいサービスとして第2のサービスを起動した場合に、第1のサービス及び第2のサービスによる制御の実行によって同一機器に対する繰り返し制御が発生したとする。本構成によれば、このような場合に、先行して起動された第1のサービスを終了させることにより、ユーザが利用したいと考える最近起動した第2のサービスを終了させることなく、上記繰り返し制御を解消することができる。   After the first service is started, when the user starts the second service as a service that the user wants to use more than the first service, the same device is repeatedly controlled by executing the control using the first service and the second service. Suppose that it occurred. According to this configuration, in such a case, by repeating the first service that was started in advance, the above-described repetitive control is performed without ending the recently started second service that the user wants to use. Can be eliminated.

また、前記第1のサービス及び前記第2のサービスのうち、後に起動されたサービスに対して前記終了要求を発行することとしてもよい。   Moreover, it is good also as issuing the said completion | finish request | requirement with respect to the service started later among the said 1st service and the said 2nd service.

第1のサービスの起動後に第2のサービスが起動された後、ユーザが引き続き第1のサービスを利用することを望んでいる場合に、第1のサービス及び第2のサービスによる制御の実行によって同一機器に対する繰り返し制御が発生したとする。本構成によれば、このような場合に、ユーザが引き続き利用することを望んでいる第1のサービスを終了させることなく、後に起動された第2のサービスを終了させて、当該繰り返し制御を解消することができる。   Same as the execution of control by the first service and the second service when the user wants to continue using the first service after the second service is started after the first service is started. Suppose that repeated control occurs on the device. According to this configuration, in such a case, the second service started later is terminated without terminating the first service that the user wants to continue using, and the repeated control is canceled. can do.

このため、ユーザは、望み通り、第1のサービスを引き続き利用しながら、後に起動された第2のサービスによる機器の制御内容を見直したり、今後起動するサービスを見直す等、繰り返し制御を発生させないための対処をとることができる。   For this reason, the user does not repeatedly generate control such as reviewing the control content of the device by the second service activated later or reviewing the service activated in the future while continuing to use the first service as desired. Can be dealt with.

また、前記第1のサービス及び前記第2のサービスのうち、予め設定されたサービス以外のサービスに対して前記終了要求を発行することとしてもよい。   In addition, the termination request may be issued to a service other than a preset service among the first service and the second service.

本構成によれば、第1(第2)のサービスを終了させたくない場合には、上記の予め設定されたサービスとして第1(第2)のサービスを予め設定しておくことができる。これにより、第1のサービス及び第2のサービスによる制御の実行によって同一機器に対する繰り返し制御が発生した場合でも、当該終了させたくない第1(第2)のサービスに対して終了要求が発行されることを回避することができる。   According to this configuration, when it is not desired to end the first (second) service, the first (second) service can be set in advance as the preset service. As a result, even if the same device is repeatedly controlled due to the execution of the control by the first service and the second service, a termination request is issued for the first (second) service that is not desired to be terminated. You can avoid that.

また、前記制御方法は、さらに、前記繰り返しの発生により前記終了要求が発行された旨をユーザに通知するための通知情報を発行することとしてもよい。   The control method may further issue notification information for notifying a user that the termination request has been issued due to the occurrence of the repetition.

本構成によれば、第1のサービス及び第2のサービスによる制御の実行によって、同一機器に対する繰り返し制御が発生したことにより、サービスが終了された旨をユーザに容易に確認させることができる。   According to this configuration, it is possible for the user to easily confirm that the service has been terminated due to repeated control of the same device due to execution of control by the first service and the second service.

また、前記通知情報は、さらに、前記繰り返しの発生の原因となったサービスを識別するための情報を含むこととしてもよい。   Further, the notification information may further include information for identifying the service that has caused the repetition.

本構成によれば、更に、同一機器に対する繰り返し制御の発生の原因となったサービスをユーザに容易に確認させることができる。   According to this configuration, it is further possible to allow the user to easily confirm the service that caused the repeated control for the same device.

また、前記通知情報は、さらに、前記繰り返しが発生している機器及び当該機器における制御内容を含むこととしてもよい。   Further, the notification information may further include a device in which the repetition occurs and a control content in the device.

本構成によれば、更に、繰り返し制御が行われた機器及び当該制御の内容をユーザに通知することができる。これにより、ユーザは、繰り返し制御の発生の原因となったサービスによる機器の制御の内容の見直しを行うことが容易となる。   According to this configuration, it is possible to notify the user of the device that has been repeatedly controlled and the content of the control. This makes it easy for the user to review the contents of device control by the service that caused the repeated control.

また、起動された前記サービスを識別する情報、当該サービスを起動したユーザを識別する情報、及び当該ユーザに関連づけられた端末を識別する情報を対応づけたサービス管理情報を更に管理し、前記通知情報は、前記終了要求が発行されたサービスを起動したユーザに関連づけられた端末に対して送信されることとしてもよい。   Further, the service management information in which the information identifying the activated service, the information identifying the user who activated the service, and the information identifying the terminal associated with the user is further managed, and the notification information May be transmitted to a terminal associated with the user who activated the service for which the termination request has been issued.

本構成によれば、終了要求が発行されたサービスを起動したユーザに対して、第1のサービス及び第2のサービスによる制御の実行によって同一機器に対する繰り返し制御が発生したことにより、当該終了要求が発行された旨が通知される。このため、他のユーザが利用するサービスに影響を与えることなく、終了要求が発行されたサービスを起動したユーザに、終了要求が発行されたサービスによる機器の制御の内容を見直させることができる。   According to this configuration, for the user who has started the service for which the termination request is issued, the termination request is generated because the same device is repeatedly controlled by executing the control using the first service and the second service. You will be notified that it has been issued. For this reason, without affecting the services used by other users, the user who started the service for which the termination request has been issued can review the contents of device control by the service for which the termination request has been issued.

また、前記状態情報として、実行された前記サービスを識別する情報、当該サービスにより制御された機器を識別する情報、当該制御の内容に関する情報、及び当該制御が実行された回数を対応づけた制御情報を管理し、所定時間が経過する度に、所定のサービスに対応する前記制御情報を削除することとしてもよい。   Further, as the status information, information for identifying the executed service, information for identifying a device controlled by the service, information on the content of the control, and control information in which the number of times the control is executed are associated with each other The control information corresponding to a predetermined service may be deleted every time a predetermined time elapses.

本構成によれば、所定のサービスに対応する制御情報が、所定時間以上、状態情報として管理されることを回避することができる。その結果、状態情報に基づき、当該所定のサービスによる制御の実行が原因で繰り返し制御が発生していると検出される機会を低減することができる。   According to this configuration, control information corresponding to a predetermined service can be prevented from being managed as state information for a predetermined time or longer. As a result, it is possible to reduce the chance that it is detected that repeated control has occurred due to execution of control by the predetermined service based on the state information.

また、前記状態情報として、実行された前記サービスを識別する情報、当該サービスにより制御された機器を識別する情報、当該制御の内容に関する情報、及び当該制御が実行された回数を対応づけた制御情報と、前記機器を識別する情報及び当該機器の状態を監視中の一以上の前記サービスを識別する情報を対応づけた状態監視情報と、を管理し、前記制御情報と前記状態監視情報とに基づき、前記繰り返しが前記所定回数以上発生していることを検出することとしてもよい。   Further, as the status information, information for identifying the executed service, information for identifying a device controlled by the service, information on the content of the control, and control information in which the number of times the control is executed are associated with each other And status monitoring information that associates information for identifying the device and information for identifying one or more of the services that are monitoring the status of the device, and based on the control information and the status monitoring information , It may be detected that the repetition has occurred more than the predetermined number of times.

本構成によれば、実行されたサービスによる機器の制御内容を示している制御情報に基づき、所定回数以上繰り返して制御が行われた機器を精度良く特定することができる。更に、状態監視情報に基づいて、当該特定した機器の状態が、第1のサービス及び第2のサービスによって現在も監視中であるか否かを精度良く判定することができる。   According to this configuration, it is possible to accurately identify a device that has been controlled repeatedly a predetermined number of times or more based on control information indicating the control content of the device by the executed service. Furthermore, based on the state monitoring information, it can be accurately determined whether or not the state of the identified device is still being monitored by the first service and the second service.

そして、状態監視情報に基づいて当該特定した機器の状態が第1のサービス及び第2のサービスによって現在も監視中であると判定した場合には、第1のサービス及び第2のサービスによって当該特定した機器の制御が現在所定回数以上繰り返して行われているものとして、上述の繰り返し制御が現在発生していることを精度良く検出することができる。   Then, when it is determined that the status of the identified device based on the status monitoring information is still being monitored by the first service and the second service, the identification is performed by the first service and the second service. It is possible to accurately detect that the above-described repetitive control is currently occurring, assuming that the control of the device thus performed is currently repeatedly performed a predetermined number of times or more.

また、前記サービスは、ネットワークを介して前記制御装置と接続されたサービス提供装置により提供されており、前記サービス提供装置から提供される前記サービスを終了するための終了要求を発行することに代えて、当該サービスによって前記機器を制御するための要求を拒否することとしてもよい。   In addition, the service is provided by a service providing apparatus connected to the control apparatus via a network, and instead of issuing a termination request for terminating the service provided from the service providing apparatus. The request for controlling the device by the service may be rejected.

本構成によれば、ネットワークを介してサービス提供装置から提供されるサービス(以下、ネットワークサービス)の実行によって実際に行われた機器の制御内容に基づき、第1のネットワークサービス及び第2のネットワークサービスの実行によって、同一機器に対する矛盾した制御の一形態である繰り返し制御が発生していることを検出することができる。   According to this configuration, the first network service and the second network service are based on the control contents of the devices actually performed by executing the service (hereinafter referred to as network service) provided from the service providing apparatus via the network. By executing this, it is possible to detect that repeated control, which is a form of contradictory control for the same device, has occurred.

また、本構成によれば、上記繰り返し制御の発生を検出した場合には、第1のネットワークサービス及び第2のネットワークサービスのうち少なくとも一方を終了するための終了要求を発行することに代えて、当該少なくとも一方のネットワークサービスによる機器を制御するための要求を拒否する。   Further, according to this configuration, when the occurrence of the repetitive control is detected, instead of issuing a termination request for terminating at least one of the first network service and the second network service, The request for controlling the device by the at least one network service is rejected.

これにより、サービス提供装置から提供される当該少なくとも一方のネットワークサービスを終了する権限を有していなくても、二個のネットワークサービスによって同時に同一機器に対する制御が行われることを解消することができる。その結果、上記繰り返し制御を解消することができる。   Thereby, even if the user does not have the authority to end the at least one network service provided from the service providing apparatus, it is possible to eliminate the simultaneous control of the same device by the two network services. As a result, the repetitive control can be eliminated.

また、本開示は、以上のような特徴的な処理を実行する制御方法だけでなく、制御方法に含まれる特徴的な処理を実行するための処理部を備える制御装置も開示する。また、このような制御方法に含まれる特徴的な各処理をコンピュータに実行させるコンピュータプログラムも開示する。このようなコンピュータプログラムを、CD−ROM等のコンピュータ読取可能な非一時的な記録媒体あるいはインターネット等の通信ネットワークを介して流通させることができるのは、言うまでもない。   The present disclosure also discloses a control device including a processing unit for executing a characteristic process included in the control method as well as a control method for executing the characteristic process as described above. Also disclosed is a computer program that causes a computer to execute characteristic processes included in such a control method. It goes without saying that such a computer program can be distributed via a computer-readable non-transitory recording medium such as a CD-ROM or a communication network such as the Internet.

尚、以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、構成要素、ステップ、ステップの順序等は、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また全ての実施の形態において、各々の内容を組み合わせることも出来る。   Note that each of the embodiments described below shows a specific example of the present disclosure. Numerical values, shapes, components, steps, order of steps, and the like shown in the following embodiments are merely examples, and are not intended to limit the present disclosure. In addition, among the constituent elements in the following embodiments, constituent elements that are not described in the independent claims indicating the highest concept are described as optional constituent elements. In all the embodiments, the contents can be combined.

(実施の形態1)
図1は、実施の形態1におけるホームネットワークシステムの全体像を示す図である。図1に示すように、ホームコントローラ100(制御装置)は、ホームネットワーク120(ネットワーク)を介してエアコン150a(機器)及び照明150b(機器)と接続されている。ホームコントローラ100は、更に、広域ネットワーク130を介して、アプリケーションサーバ140と接続されている。
(Embodiment 1)
FIG. 1 is a diagram showing an overall image of a home network system in the first embodiment. As shown in FIG. 1, a home controller 100 (control device) is connected to an air conditioner 150a (device) and a lighting 150b (device) via a home network 120 (network). The home controller 100 is further connected to the application server 140 via the wide area network 130.

アプリケーションサーバ140には、サードパーティから提供されるサービスも含め様々なサービスのプログラムが記憶されている。ホームコントローラ100は、アプリケーションサーバ140から当該プログラムをダウンロードし、当該プログラムを実行することでサービスを実行することができる。   The application server 140 stores programs for various services including services provided by third parties. The home controller 100 can execute the service by downloading the program from the application server 140 and executing the program.

尚、ホームネットワーク120に接続される機器150は、エアコン150aと照明150bに限るものではなく、冷蔵庫、洗濯機、分電盤、太陽光パネル等宅内の家電機器や設備機器であってもよい。また、ホームネットワーク120としては、有線LAN、無線LAN、特定省電力無線等の任意のネットワークを用いることができ、これらを組み合わせて機器150間で相互に通信できるようなネットワーク構成であってもよい。また、広域ネットワーク130は光ファイバ、無線、公衆電話回線等任意のネットワークを用いることができる。   The device 150 connected to the home network 120 is not limited to the air conditioner 150a and the lighting 150b, but may be home appliances or equipment such as a refrigerator, a washing machine, a distribution board, or a solar panel. Further, as the home network 120, any network such as a wired LAN, a wireless LAN, and a specific power-saving wireless can be used, and a network configuration that enables mutual communication between the devices 150 by combining these may be used. . The wide area network 130 can be any network such as an optical fiber, a radio, or a public telephone line.

図2を用いて、ホームコントローラ100のハードウェア構成について説明する。図2は、実施の形態1におけるホームコントローラ100のハードウェア構成を示す図である。ホームコントローラ100は、CPU等で構成された中央処理部101、RAM等で構成された主記憶部102(管理部)、ROMやHDD等で構成された二次記憶部103、表示部104、入力部105、ホームネットワーク通信部106、及び広域ネットワーク通信部107を備えている。   A hardware configuration of the home controller 100 will be described with reference to FIG. FIG. 2 is a diagram illustrating a hardware configuration of the home controller 100 according to the first embodiment. The home controller 100 includes a central processing unit 101 configured by a CPU, a main storage unit 102 (management unit) configured by a RAM, a secondary storage unit 103 configured by a ROM, an HDD, and the like, a display unit 104, an input Unit 105, home network communication unit 106, and wide area network communication unit 107.

中央処理部101は、二次記憶部103に予め記憶されているプログラムを実行することで、二次記憶部103にサービスのプログラムをダウンロードし、また、二次記憶部103に記憶したサービスのプログラムを主記憶部102にロードする。   The central processing unit 101 downloads a service program to the secondary storage unit 103 by executing a program stored in advance in the secondary storage unit 103, and also stores a service program stored in the secondary storage unit 103 Is loaded into the main storage unit 102.

主記憶部102には、後述する機器テーブルT1、サービステーブルT2、状態監視テーブル300及びループ候補テーブル900を記憶するための記憶領域が設けられている。つまり、主記憶部102は、機器テーブルT1、サービステーブルT2、状態監視テーブル300及びループ候補テーブル900を管理する。   The main storage unit 102 is provided with a storage area for storing a device table T1, a service table T2, a state monitoring table 300, and a loop candidate table 900, which will be described later. That is, the main storage unit 102 manages the device table T1, the service table T2, the state monitoring table 300, and the loop candidate table 900.

表示部104は、例えばLCDで構成され、中央処理部101がプログラムを実行することにより行った処理の結果を表示する。尚、表示部104は、ホームネットワーク120を介して接続されるタブレット端末やDTV等の表示装置で構成してもよい。入力部105は、例えばタッチパネルやハードウェアボタン等を備え、ユーザからの操作を受け付ける。   The display unit 104 is configured by an LCD, for example, and displays a result of processing performed by the central processing unit 101 executing a program. The display unit 104 may be configured with a display device such as a tablet terminal or a DTV connected via the home network 120. The input unit 105 includes, for example, a touch panel and hardware buttons, and receives an operation from the user.

ホームネットワーク通信部106は、ホームネットワーク120を介してエアコン150aと照明150bとの通信処理を行う。広域ネットワーク通信部107は、広域ネットワーク130を介してアプリケーションサーバ140と通信処理を行う。   The home network communication unit 106 performs communication processing between the air conditioner 150a and the lighting 150b via the home network 120. The wide area network communication unit 107 performs communication processing with the application server 140 via the wide area network 130.

図3は実施の形態1におけるホームコントローラ100の機能構成を示す図である。図3に示す機能構成は、図3に示す各ブロックとして機能させるためのプログラムを中央処理部101に実行させることにより実現できる。尚、図3に示す機能構成は、図3に示す各ブロックとして機能する専用回路を組み合わせることにより実現してもよい。   FIG. 3 is a diagram illustrating a functional configuration of the home controller 100 according to the first embodiment. The functional configuration shown in FIG. 3 can be realized by causing the central processing unit 101 to execute a program for causing each block shown in FIG. 3 to function. The functional configuration shown in FIG. 3 may be realized by combining dedicated circuits that function as the blocks shown in FIG.

サービス制御部210は、サービス管理部211(終了部)、サービス実行部212、競合判断部213(検出部)、状態監視部214、機器制御部215、及び表示生成部216として動作する。   The service control unit 210 operates as a service management unit 211 (end unit), a service execution unit 212, a competition determination unit 213 (detection unit), a state monitoring unit 214, a device control unit 215, and a display generation unit 216.

サービス管理部211は、ユーザ操作により入力部105からサービスの起動要求を受けると、当該起動要求されたサービスのプログラムを主記憶部102にロードした後、当該サービスの起動要求をサービス実行部212へ通知する。また、サービス管理部211は、後述するように、競合判断部213により特定されたループ制御の発生の原因となるサービスの中から終了させる対象のサービスを決定した後、当該終了させる対象のサービスの終了要求を発行し、当該終了要求をサービス実行部212へ通知する。   When the service management unit 211 receives a service activation request from the input unit 105 by a user operation, the service management unit 211 loads the service program requested to be activated into the main storage unit 102 and then sends the service activation request to the service execution unit 212. Notice. Further, as will be described later, the service management unit 211 determines a target service to be terminated from among the services that cause the occurrence of the loop control identified by the competition determination unit 213, and then determines the service to be terminated. An end request is issued, and the end request is notified to the service execution unit 212.

サービス実行部212は、サービス管理部211からサービスの起動要求を受けると、当該起動要求が示すサービスの起動処理を行う。サービスの起動処理とは、主記憶部102に記憶されている当該サービスのプログラムを中央処理部101に実行させて、当該サービスによる機器150の制御を実行可能にする処理である。   Upon receiving a service activation request from the service management unit 211, the service execution unit 212 performs service activation processing indicated by the activation request. The service activation process is a process that allows the central processing unit 101 to execute a program of the service stored in the main storage unit 102 so that the device 150 can be controlled by the service.

サービス実行部212は、サービスの起動処理後、当該サービスから機器150の制御要求を受け取ると、当該制御要求を機器制御部215へ出力する。これにより、サービス実行部212は、後述するように、当該制御要求が示す機器150の制御を機器制御部215に実行させる。以下、サービス実行部212が、サービスから機器150の制御要求を受け、当該制御要求が示す機器150の制御を機器制御部215に実行させることを、サービスを実行すると記載する。   When the service execution unit 212 receives a control request for the device 150 from the service after the service activation process, the service execution unit 212 outputs the control request to the device control unit 215. As a result, the service execution unit 212 causes the device control unit 215 to control the device 150 indicated by the control request, as will be described later. Hereinafter, it is described that a service is executed when the service execution unit 212 receives a control request for the device 150 from the service and causes the device control unit 215 to execute control of the device 150 indicated by the control request.

サービス実行部212は、サービス管理部211からサービスの終了要求を受けると、当該終了要求が示すサービスの終了処理を行う。サービスの終了処理とは、中央処理部101に当該サービスのプログラムの実行を終了させ、当該サービスを実行できないようにする処理である。   Upon receiving a service termination request from the service management unit 211, the service execution unit 212 performs a service termination process indicated by the termination request. The service end process is a process for causing the central processing unit 101 to end the execution of the program of the service so that the service cannot be executed.

実施の形態1では、サービス実行部212は、図3に示す、快適空調サービス200a、家中省エネサービス200b、及び快適調光サービス200cの3個のサービス200を実行可能となっている。   In the first embodiment, the service execution unit 212 can execute the three services 200 shown in FIG. 3, which are a comfortable air conditioning service 200a, a home energy saving service 200b, and a comfortable dimming service 200c.

快適空調サービス200aは、室内の温度変化によってエアコン150aの自動制御を行うサービスである。家中省エネサービス200bは宅内の消費電力を監視して消費電力を抑えるようにホームネットワーク120内に接続される機器150を自動制御するサービスである。快適調光サービス200cは室内の照度変化によって照明150bの自動制御を行うサービスである。サービス200a〜200cは、制御対象の機器150の状態変化の通知を受けると、当該機器150の再設定を行うサービスである。サービス200a〜200cは、同時に制御対象の機器150の制御を実行可能となっている。   The comfortable air conditioning service 200a is a service that automatically controls the air conditioner 150a according to a change in indoor temperature. The house energy saving service 200b is a service for automatically controlling the device 150 connected to the home network 120 so as to monitor the power consumption in the house and suppress the power consumption. The comfortable dimming service 200c is a service that automatically controls the lighting 150b according to a change in illuminance in the room. The services 200a to 200c are services for resetting the device 150 upon receiving a notification of a state change of the device 150 to be controlled. The services 200a to 200c can simultaneously control the device 150 to be controlled.

尚、サービス200a〜200cは、サービス実行部212が実行可能なサービスの一例であって、サービス実行部212が実行可能なサービスは、これらのサービス200a〜200cに限らず、サードパーティから提供される様々なサービスであってよい。また、サービス実行部212が同時に実行可能なサービスの数も、3個に限定されるものではない。以下では、サービス実行部212が実行可能なサービス200a〜200cを総称して、サービス200と記載する。   The services 200a to 200c are examples of services that can be executed by the service execution unit 212. The services that can be executed by the service execution unit 212 are not limited to these services 200a to 200c, but are provided from third parties. There may be various services. Also, the number of services that can be executed simultaneously by the service execution unit 212 is not limited to three. Hereinafter, the services 200a to 200c that can be executed by the service execution unit 212 are collectively referred to as the service 200.

競合判断部213は、後述の状態監視テーブル300及びループ候補テーブル900に登録されている情報(状態情報)に基づき、ループ制御(繰り返し制御)が発生していることを検出する処理を行う。ループ制御が発生しているとは、同一の機器150に対して、あるサービス200(第1のサービス)による制御(第1の制御)の実行と、他のサービス200(第2のサービス)による他の制御(第2の制御)の実行と、の繰り返しが所定回数以上行われていることを示す。   The contention determination unit 213 performs processing for detecting that loop control (repetitive control) has occurred based on information (state information) registered in a state monitoring table 300 and a loop candidate table 900 described later. The occurrence of loop control means that execution of control (first control) by a certain service 200 (first service) and execution of another service 200 (second service) for the same device 150 This indicates that the execution of other control (second control) and the repetition of the control is performed a predetermined number of times or more.

競合判断部213は、ループ制御が発生していることを検出した場合、当該ループ制御の発生の原因となるサービス200を特定する処理を行う。競合判断部213が行う処理の詳細については、図10のフローチャートを用いて後述する。   When the competition determination unit 213 detects that the loop control has occurred, the competition determination unit 213 performs a process of specifying the service 200 that causes the occurrence of the loop control. Details of the processing performed by the competition determination unit 213 will be described later with reference to the flowchart of FIG.

状態監視部214は、機器150の状態を監視し、機器150の状態変化の検知と、検知した状態変化をサービス200へ通知する処理を行う。状態監視部214が行う処理の詳細については図7及び図9のフローチャートを用いて後述する。   The state monitoring unit 214 monitors the state of the device 150, detects the state change of the device 150, and performs processing for notifying the service 200 of the detected state change. Details of the processing performed by the state monitoring unit 214 will be described later with reference to the flowcharts of FIGS.

機器制御部215は、サービス200から受け取った機器150の制御要求を解釈し、当該制御要求が示す制御を、例えばECHONET Lite等の機器制御プロトコルを用いて当該機器150に行わせるための制御コマンドを生成する。つまり、制御コマンドは、機器150に行わせる制御内容を示している。機器制御部215は、生成した制御コマンドを、ホームネットワーク通信部106を介して当該機器150へ送信する。これにより、当該機器150は、機器制御部215から受信した制御コマンドが示す制御内容に従った制御を行う。   The device control unit 215 interprets the control request for the device 150 received from the service 200 and sends a control command for causing the device 150 to perform the control indicated by the control request using a device control protocol such as ECHONET Lite. Generate. That is, the control command indicates the control content to be performed by the device 150. The device control unit 215 transmits the generated control command to the device 150 via the home network communication unit 106. Thereby, the device 150 performs control according to the control content indicated by the control command received from the device control unit 215.

表示生成部216は、競合判断部213によってループ制御の発生が検出されたことにより、サービス管理部211によってサービスの終了要求が発行された旨をユーザに通知するためのメッセージ(通知情報)を生成し、当該生成したメッセージを含む通知画面を生成する。当該メッセージ及び通知画面の詳細については、図13及び図14を用いて後述する。   The display generation unit 216 generates a message (notification information) for notifying the user that a service termination request has been issued by the service management unit 211 when the occurrence of loop control is detected by the conflict determination unit 213. Then, a notification screen including the generated message is generated. Details of the message and the notification screen will be described later with reference to FIGS. 13 and 14.

次に、上述の状態監視テーブル300について図4を用いて説明する。図4は、状態監視テーブル300の一例を示す図である。状態監視テーブル300は、ホームネットワーク120に接続されている機器150を識別する機器ID、及び、当該機器150の状態を監視するサービス200を識別するサービスIDを対応づけた状態監視情報を管理するためのテーブルである。   Next, the state monitoring table 300 will be described with reference to FIG. FIG. 4 is a diagram illustrating an example of the state monitoring table 300. The state monitoring table 300 manages state monitoring information in which a device ID that identifies the device 150 connected to the home network 120 and a service ID that identifies the service 200 that monitors the state of the device 150 are associated with each other. It is a table.

以下、状態監視テーブル300において管理される機器IDについて説明する。機器150が備えるROM等の不揮発性メモリーには、当該機器150の製造時や出荷時等に、機器150を識別するための情報として機器名と機器IDとが記憶される。機器IDは、例えばMACアドレス等、機器150を一意に特定する情報である。そして、機器150の動作開始時等に、不揮発性メモリーに記憶されている機器名及び機器IDが、機器150が備えるRAM等のメモリーにロードされる。   Hereinafter, device IDs managed in the state monitoring table 300 will be described. In a nonvolatile memory such as a ROM provided in the device 150, a device name and a device ID are stored as information for identifying the device 150 when the device 150 is manufactured or shipped. The device ID is information that uniquely identifies the device 150, such as a MAC address. Then, when the operation of the device 150 is started, the device name and device ID stored in the nonvolatile memory are loaded into a memory such as a RAM provided in the device 150.

尚、機器IDは、MACアドレスに限らず、ホームネットワーク120に接続されている機器150を一意に特定できる情報であればよい。例えば、機器IDは、ホームネットワーク120上で遠隔制御を行うための機器通信プロトコルで定義された機器固有の値(例えばECHONET Lite規格で機器150のプロパティ値として定義される識別番号や製造番号等)であってもよい。   The device ID is not limited to the MAC address, and may be information that can uniquely identify the device 150 connected to the home network 120. For example, the device ID is a device-specific value defined by a device communication protocol for performing remote control on the home network 120 (for example, an identification number or a manufacturing number defined as a property value of the device 150 in the ECHONET Lite standard). It may be.

または、ホームコントローラ100が、ホームネットワーク120に機器150が接続されていることを認識した時点で、当該認識した機器150の種類を示す機器名を生成し、当該認識した機器150を一意に特定できる情報(例えば、当該機器150を認識した日時等)を機器IDとして生成し、当該生成した機器名及び機器IDを当該機器150に送信してもよい。これに合わせて、機器150が受信した機器名及び機器IDを自身が備えるRAM等のメモリーに記憶するようにしてもよい。   Alternatively, when the home controller 100 recognizes that the device 150 is connected to the home network 120, a device name indicating the type of the recognized device 150 can be generated, and the recognized device 150 can be uniquely identified. Information (for example, date and time when the device 150 is recognized) may be generated as a device ID, and the generated device name and device ID may be transmitted to the device 150. In accordance with this, the device name and device ID received by the device 150 may be stored in a memory such as a RAM provided in the device 150.

図5は、機器テーブルT1の一例を示す図である。機器テーブルT1は、ホームネットワーク120に接続されている機器150の機器名及び機器IDを管理するためのテーブルである。ホームコントローラ100は、ホームネットワーク120に機器150が接続されていることを認識した時点で、当該機器150から機器名及び機器IDを取得し、機器テーブルT1に登録する。また、ホームコントローラ100は、当該機器150から機器名及び機器IDを取得できなかった場合、上述のように、機器名及び機器IDを生成し、当該生成した機器名及び機器IDを機器テーブルT1に登録するとともに、機器150へ送信する。   FIG. 5 is a diagram illustrating an example of the device table T1. The device table T1 is a table for managing the device name and device ID of the device 150 connected to the home network 120. When the home controller 100 recognizes that the device 150 is connected to the home network 120, the home controller 100 acquires the device name and device ID from the device 150 and registers them in the device table T1. If the home controller 100 cannot acquire the device name and device ID from the device 150, the home controller 100 generates the device name and device ID as described above, and stores the generated device name and device ID in the device table T1. While registering, it transmits to the device 150.

例えば、図5に示す機器テーブルT1には、エアコン150aの機器名として「エアコン」が登録され、エアコン150aの機器IDとして「aircon_0a12ab4cb611」が登録されている。以下の説明における機器名及び機器IDは、図5に示す機器名及び機器IDであるとする。   For example, in the device table T1 shown in FIG. 5, “air conditioner” is registered as the device name of the air conditioner 150a, and “aircon_0a12ab4cb611” is registered as the device ID of the air conditioner 150a. It is assumed that the device name and device ID in the following description are the device name and device ID shown in FIG.

次に、状態監視テーブル300において管理されるサービスIDについて説明する。サービス200のプログラムには、当該プログラムの開発時に、当該サービス200を識別するための情報として、当該サービス200の提供者や開発者等によって生成されたサービス名及びサービスIDが組み込まれる。サービスIDは、当該サービス200を一意に特定できる情報である。   Next, the service ID managed in the state monitoring table 300 will be described. In the program of the service 200, a service name and a service ID generated by a provider or developer of the service 200 are incorporated as information for identifying the service 200 when the program is developed. The service ID is information that can uniquely identify the service 200.

尚、サービス200のプログラムにサービスIDが組み込まれていない場合には、ホームコントローラ100がサービス200を起動した時点で、当該サービス200を一意に特定できる情報(例えば、当該サービス200を起動した日時等)を当該サービス200のサービスIDとして生成してもよい。   If the service ID is not incorporated in the program of the service 200, information that can uniquely identify the service 200 when the home controller 100 starts the service 200 (for example, the date and time when the service 200 is started) ) May be generated as the service ID of the service 200.

図6は、サービステーブルT2の一例を示す図である。サービステーブルT2は、ホームコントローラ100によって実行されるサービス200のサービス名及びサービスIDを管理するためのテーブルである。ホームコントローラ100は、サービス200を起動した時点で、当該サービス200のプログラムに組み込まれているサービス名及びサービスIDをサービステーブルT2に登録する。尚、ホームコントローラ100は、当該サービス200のプログラムにサービスIDが組み込まれていなかった場合には、上述のように、サービスIDを生成し、当該生成したサービスIDをサービステーブルT2に登録する。   FIG. 6 is a diagram illustrating an example of the service table T2. The service table T2 is a table for managing the service name and service ID of the service 200 executed by the home controller 100. When the home controller 100 starts the service 200, the home controller 100 registers the service name and service ID incorporated in the program of the service 200 in the service table T2. When the service ID is not incorporated in the program of the service 200, the home controller 100 generates a service ID as described above, and registers the generated service ID in the service table T2.

例えば、図6に示すサービステーブルT2には、快適空調サービス200aのサービス名として「快適空調サービス」が登録され、サービスIDとして「A」が登録されている。以下の説明におけるサービス名及びサービスIDは、図6に示すサービス名及びサービスIDであるとする。   For example, in the service table T2 shown in FIG. 6, “Comfort Air Conditioning Service” is registered as the service name of the Comfort Air Conditioning Service 200a, and “A” is registered as the service ID. The service name and service ID in the following description are assumed to be the service name and service ID shown in FIG.

次に、状態監視部214による状態監視テーブル300への情報の登録フローについて図7を用いて説明する。図7は、実施の形態1において状態監視テーブル300に情報を登録する処理フローの一例を示す図である。サービス実行部212によってサービス200の起動処理が行われると、当該サービス200は、サービス制御部210が提供する機器状態監視APIを呼び出す。機器状態監視APIは、所謂コールバック関数であり、当該APIを呼び出したサービス200が状態を監視する対象の機器150の機器IDと、当該サービス200のサービスIDと、を当該サービス200から受け取り、当該受け取った機器IDとサービスIDとをサービス制御部210に通知する。   Next, a registration flow of information in the state monitoring table 300 by the state monitoring unit 214 will be described with reference to FIG. FIG. 7 is a diagram illustrating an example of a processing flow for registering information in the state monitoring table 300 according to the first embodiment. When the service execution unit 212 starts the service 200, the service 200 calls a device state monitoring API provided by the service control unit 210. The device state monitoring API is a so-called callback function, and receives from the service 200 the device ID of the device 150 to be monitored by the service 200 that has called the API, and the service ID of the service 200. The service control unit 210 is notified of the received device ID and service ID.

状態監視部214は、機器状態監視APIによる機器IDとサービスIDの通知を受けると(ステップ400)、当該通知された機器IDが状態監視テーブル300に登録されているか否かを検索する(ステップ401)。   When receiving the notification of the device ID and the service ID by the device state monitoring API (step 400), the state monitoring unit 214 searches whether or not the notified device ID is registered in the state monitoring table 300 (step 401). ).

通知された機器IDが状態監視テーブル300に登録済の場合(ステップ402:YES)、状態監視部214は、登録済の当該機器IDに対応するサービスIDとして、ステップ400で通知されたサービスIDを追加する(ステップ404)。通知された機器IDが状態監視テーブル300に未登録の場合(ステップ402:NO)、状態監視部214は、通知された機器IDを状態監視テーブル300へ登録し(ステップ403)、登録した機器IDに対応するサービスIDとして、ステップ400で通知されたサービスIDを追加する(ステップ404)。   When the notified device ID is already registered in the state monitoring table 300 (step 402: YES), the state monitoring unit 214 uses the service ID notified in step 400 as the service ID corresponding to the registered device ID. Add (step 404). When the notified device ID is not registered in the state monitoring table 300 (step 402: NO), the state monitoring unit 214 registers the notified device ID in the state monitoring table 300 (step 403), and the registered device ID. The service ID notified in step 400 is added as the service ID corresponding to (step 404).

このようにして、状態監視部214は、機器150を識別する機器ID及び当該機器150の状態を監視中の一以上のサービス200を識別するサービスIDを対応付けた状態監視情報を、状態監視テーブル300に登録する。   In this manner, the state monitoring unit 214 stores state monitoring information in which a device ID for identifying the device 150 and a service ID for identifying one or more services 200 that are monitoring the state of the device 150 are associated with each other. Register with 300.

例えば、図4に示す状態監視テーブル300では、機器ID「aircon_0a12ab4cb611」と二個のサービスID「A」「B」とを対応付けた状態監視情報が登録されている。これは、機器ID「aircon_0a12ab4cb611」の機器150の制御を実行する、サービスID「A」によって識別されるサービス200の起動処理が行われた場合にステップ403が行われ、その後、同一の機器IDの機器150の制御を実行するサービスID「B」によって識別されるサービス200の起動処理が行われた場合にステップ404が行われた結果を示している。   For example, in the status monitoring table 300 illustrated in FIG. 4, status monitoring information in which the device ID “aircon — 0a12ab4cb611” is associated with the two service IDs “A” and “B” is registered. This is because step 403 is performed when the activation process of the service 200 identified by the service ID “A” is executed to control the device 150 with the device ID “aircon — 0a12ab4cb611”, and then the same device ID is set. The result of step 404 when the activation process of the service 200 identified by the service ID “B” for executing the control of the device 150 is performed is shown.

次に、状態監視部214による状態監視テーブル300からの情報の削除フローについて図8を用いて説明する。図8は、実施の形態1において状態監視テーブル300から情報を削除する処理フローの一例を示す図である。サービス実行部212によってサービス200の終了処理が行われると(ステップ600)、状態監視部214は、当該終了処理が行われたサービス200(以下、終了サービス200)が状態を監視していた機器150の機器IDを検索する(ステップ601)。具体的には、ステップ601において、状態監視部214は、状態監視テーブル300において、当該終了サービス200のサービスIDに対応付けられている機器IDを検索する。   Next, a flow of deleting information from the state monitoring table 300 by the state monitoring unit 214 will be described with reference to FIG. FIG. 8 is a diagram illustrating an example of a processing flow for deleting information from the state monitoring table 300 in the first embodiment. When the service execution unit 212 finishes the service 200 (step 600), the state monitoring unit 214 monitors the state of the service 200 (hereinafter referred to as the end service 200) on which the end process was performed. The device ID is searched (step 601). Specifically, in step 601, the state monitoring unit 214 searches the state monitoring table 300 for a device ID associated with the service ID of the end service 200.

次に、状態監視部214は、ステップ601で検索された機器IDで識別される機器150の状態を監視対象とするサービス200が、上記終了サービスのみであるか否かを判定する(ステップ602)。具体的には、ステップ602において、状態監視部214は、状態監視テーブル300においてステップ601で検索された機器IDに対応付けられたサービスIDが、終了サービス200のサービスIDのみであるか否かを判定する。   Next, the state monitoring unit 214 determines whether or not the service 200 whose monitoring target is the state of the device 150 identified by the device ID searched in step 601 is only the end service (step 602). . Specifically, in step 602, the state monitoring unit 214 determines whether or not the service ID associated with the device ID searched in step 601 in the state monitoring table 300 is only the service ID of the end service 200. judge.

ステップ601で検索されたサービスIDが終了サービス200のサービスIDのみである場合(ステップ602:YES)、状態監視部214は、当該機器ID及び当該終了サービス200のサービスIDを対応付けた状態監視情報を、状態監視テーブル300から削除する(ステップ603)。ステップ601で検索されたサービスIDが終了サービス200のサービスIDのみでない場合(ステップ602:NO)、状態監視部214は、当該機器IDに対応付けられたサービスIDから、終了サービス200のサービスIDのみを削除する(ステップ604)。   If the service ID searched in step 601 is only the service ID of the end service 200 (step 602: YES), the state monitoring unit 214 associates the device ID and the service ID of the end service 200 with each other. Are deleted from the state monitoring table 300 (step 603). When the service ID searched in step 601 is not only the service ID of the end service 200 (step 602: NO), the state monitoring unit 214 determines only the service ID of the end service 200 from the service ID associated with the device ID. Is deleted (step 604).

例えば、図4に示すように、状態監視テーブル300に状態監視情報が登録されているとする。つまり、機器ID「aircon_0a12ab4cb611」で識別される機器150の状態を、サービスID「A」及びサービスID「B」で識別される二個のサービスが監視中であるとする。また、機器ID「light_0b2c998a5c7a」で識別される機器150の状態を、サービスID「B」及びサービスID「C」で識別される二個のサービスが監視中であるとする。   For example, assume that state monitoring information is registered in the state monitoring table 300 as shown in FIG. That is, it is assumed that the two services identified by the service ID “A” and the service ID “B” are being monitored for the state of the device 150 identified by the device ID “aircon — 0a12ab4cb611”. Further, it is assumed that the two services identified by the service ID “B” and the service ID “C” are being monitored for the state of the device 150 identified by the device ID “light — 0b2c998a5c7a”.

ここで、サービスID「A」によって識別されるサービス200の終了処理が行われたとする。この場合、ステップ601では、サービスID「A」に対応する機器ID「aircon_0a12ab4cb611」が検索される。ステップ602では、当該機器IDに対応付けられたサービスID「A、B」が終了サービス200のサービスID「A」のみではないと判定される。その結果、ステップ604が行われ、機器ID「aircon_0a12ab4cb611」とサービスID「B」とを対応付けた状態監視情報が状態監視テーブル300に登録された状態となる。   Here, it is assumed that the termination process of the service 200 identified by the service ID “A” is performed. In this case, in step 601, the device ID “aircon — 0a12ab4cb611” corresponding to the service ID “A” is searched. In step 602, it is determined that the service ID “A, B” associated with the device ID is not only the service ID “A” of the end service 200. As a result, step 604 is performed, and the state monitoring information in which the device ID “aircon — 0a12ab4cb611” and the service ID “B” are associated is registered in the state monitoring table 300.

これにより、当該状態監視情報から、現在、機器ID「aircon_0a12ab4cb611」で識別される機器150の状態が、サービスID「B」で識別されるサービス200のみによって監視されていることを適切に把握できるようになる。   Accordingly, it is possible to appropriately grasp from the state monitoring information that the state of the device 150 identified by the device ID “aircon_0a12ab4cb611” is currently monitored only by the service 200 identified by the service ID “B”. become.

この後、サービスID「B」によって識別される家中省エネサービス200bの終了処理が行われたとする。この場合、ステップ601では、サービスID「B」に対応する二個の機器ID「aircon_0a12ab4cb611」、「light_0b2c998a5c7a」が検索される。このように、ステップ601において複数の機器IDが検索された場合は、当該検索された各機器IDについて、それぞれ、ステップ602以降の処理が行われる。   Thereafter, it is assumed that the termination process of the house energy saving service 200b identified by the service ID “B” is performed. In this case, in step 601, two device IDs “aircon — 0a12ab4cb611” and “light — 0b2c998a5c7a” corresponding to the service ID “B” are searched. As described above, when a plurality of device IDs are searched in step 601, the processing from step 602 onward is performed for each of the searched device IDs.

機器ID「aircon_0a12ab4cb611」について行われるステップ602では、当該機器IDに対応付けられたサービスIDが「B」のみになっているので、ステップ603が行われる。これにより、当該機器ID及び終了サービスのサービスID「B」を対応付けた状態監視情報が状態監視テーブル300から削除される。その結果、状態監視テーブル300には、機器ID「aircon_0a12ab4cb611」を含む状態監視情報が存在しなくなる。これにより、当該状態監視テーブル300から、現在、機器ID「aircon_0a12ab4cb611」で識別される機器150の状態を監視しているサービス200が存在しないことを適切に把握できるようになる。   In step 602 performed for the device ID “aircon — 0a12ab4cb611”, since the service ID associated with the device ID is only “B”, step 603 is performed. As a result, the state monitoring information in which the device ID and the service ID “B” of the end service are associated is deleted from the state monitoring table 300. As a result, the state monitoring table 300 no longer includes state monitoring information including the device ID “aircon — 0a12ab4cb611”. Accordingly, it is possible to appropriately grasp from the state monitoring table 300 that there is no service 200 that currently monitors the state of the device 150 identified by the device ID “aircon — 0a12ab4cb611”.

一方、機器ID「light_0b2c998a5c7a」について行われるステップ602では、当該機器IDに対応付けられたサービスIDが「C、B」であるので、当該機器IDに対応付けられたサービスIDが終了サービスのサービスID「B」のみではないと判定される。その結果、ステップ604が行われ、機器ID「light_0b2c998a5c7a」とサービスID「C」とを対応付けた状態監視情報が状態監視テーブル300に登録された状態となる。これにより、当該状態監視情報から、現在、機器ID「light_0b2c998a5c7a」で識別される機器150の状態が、サービスID「C」で識別されるサービス200のみによって監視されていることを適切に把握できるようになる。   On the other hand, in step 602 performed for the device ID “light — 0b2c998a5c7a”, since the service ID associated with the device ID is “C, B”, the service ID associated with the device ID is the service ID of the end service. It is determined that not only “B”. As a result, step 604 is performed, and the state monitoring information in which the device ID “light — 0b2c998a5c7a” and the service ID “C” are associated is registered in the state monitoring table 300. Accordingly, it is possible to appropriately grasp from the state monitoring information that the state of the device 150 identified by the device ID “light — 0b2c998a5c7a” is currently being monitored only by the service 200 identified by the service ID “C”. become.

次に、状態監視部214による機器150の状態変化の通知フローについて図9を用いて説明する。図9は、実施の形態1において機器150の状態変化を監視しサービス200へ通知する処理フローの一例を示す図である。ホームネットワーク120に接続されている機器150は、当該機器150本体の純正リモコンによる操作や、サービス200の実行等によって、当該機器150の再設定が行われると、当該機器150の状態が変化したことをサービス制御部210へ通知する。   Next, the notification flow of the state change of the device 150 by the state monitoring unit 214 will be described with reference to FIG. FIG. 9 is a diagram showing an example of a processing flow for monitoring the status change of the device 150 and notifying the service 200 in the first embodiment. When the device 150 connected to the home network 120 is reset by the operation of the genuine remote controller of the device 150 or the execution of the service 200, the state of the device 150 has changed. Is notified to the service control unit 210.

状態監視部214は、ホームネットワーク120に接続されている機器150の何れかから状態変化の通知を受けるまで受信待ちの状態となる(ステップ500:NO)。   The state monitoring unit 214 waits for reception until a state change notification is received from any of the devices 150 connected to the home network 120 (step 500: NO).

状態監視部214は、機器150から状態変化の通知を受けることで(ステップ500:YES)、当該機器150の状態が変化したことを検知する。この場合、状態監視部214は、状態監視テーブル300を参照し、当該機器150の機器IDに対応付けられたサービスIDを検索する。これにより、状態監視部214は、当該機器150の状態変化を通知する対象のサービス200のサービスIDを検索する(ステップ501)。   The state monitoring unit 214 receives a notification of a state change from the device 150 (step 500: YES), and detects that the state of the device 150 has changed. In this case, the state monitoring unit 214 refers to the state monitoring table 300 and searches for a service ID associated with the device ID of the device 150. As a result, the state monitoring unit 214 searches for the service ID of the service 200 to be notified of the state change of the device 150 (step 501).

通知対象のサービス200のサービスIDが状態監視テーブル300に存在した場合(ステップ502:YES)、状態監視部214は、当該サービスIDによって識別される通知対象のサービス200に対して、機器150の状態変化の通知を行う(ステップ503)。その後、状態監視部214は、ステップ500へ戻り、何れかの機器150から新たな状態変化の通知を受けるまで受信待ちの状態となる。通知対象のサービス200のサービスIDが状態監視テーブル300に存在しなかった場合(ステップ502:NO)、状態監視部214は、ステップ500へ戻り、何れかの機器150から新たな状態変化の通知を受けるまで受信待ちの状態となる。   When the service ID of the notification target service 200 exists in the state monitoring table 300 (step 502: YES), the state monitoring unit 214 determines the state of the device 150 with respect to the notification target service 200 identified by the service ID. The change is notified (step 503). Thereafter, the state monitoring unit 214 returns to step 500 and waits for reception until a new state change notification is received from any device 150. If the service ID of the service 200 to be notified does not exist in the state monitoring table 300 (step 502: NO), the state monitoring unit 214 returns to step 500 and notifies any of the devices 150 of a new state change. It will be in the state of waiting for reception until it receives.

尚、上述のように、機器150が主体となって状態の変化を通知することに代えて、状態監視部214が、状態監視テーブル300に登録されている機器IDによって識別される機器150に対し、定期的に状態変化があったか否かを問い合わせるようにしてもよい。これに合わせて、機器150が、当該問い合わせを受けた場合、前回問い合わせを受けた後に当該機器150の再設定があったときは、状態変化があったことを返信するようにしてもよい。   As described above, instead of notifying the change of the state mainly by the device 150, the state monitoring unit 214 notifies the device 150 identified by the device ID registered in the state monitoring table 300. Further, it may be inquired whether or not the state has changed periodically. In accordance with this, when the device 150 receives the inquiry, when the device 150 is reset after receiving the previous inquiry, it may be returned that the state has changed.

次に、競合判断部213が行う処理のフローについて図10を用いて説明する。図10は、ループ制御が発生していることを検出する処理フローの一例を示す図である。サービス実行部212が、起動中のサービス200から機器150の制御要求を受け取り、当該サービス200を実行したとする(ステップ801:YES)。この場合、競合判断部213は、ループ候補テーブル900に、当該制御要求に対応する制御情報が登録されているか否かを判定する(ステップ802)。   Next, the flow of processing performed by the competition determination unit 213 will be described with reference to FIG. FIG. 10 is a diagram illustrating an example of a processing flow for detecting the occurrence of loop control. It is assumed that the service execution unit 212 receives a control request for the device 150 from the active service 200 and executes the service 200 (step 801: YES). In this case, the competition determination unit 213 determines whether or not control information corresponding to the control request is registered in the loop candidate table 900 (step 802).

図11は、ループ候補テーブル900の一例を示す図である。ループ候補テーブル900は、制御要求を行うことで実行されたサービス200を識別するサービスID901、当該サービス200により制御された機器150の機器ID902、当該機器150の制御の内容を示す制御コマンド903、及び当該制御が実行された回数(以下、繰り返し回数)904を対応づけた制御情報を管理するためのテーブルである。   FIG. 11 is a diagram illustrating an example of the loop candidate table 900. The loop candidate table 900 includes a service ID 901 for identifying the service 200 executed by making the control request, a device ID 902 of the device 150 controlled by the service 200, a control command 903 indicating the control content of the device 150, and It is a table for managing control information in which the number of times that the control has been executed (hereinafter, the number of repetitions) 904 is associated.

ステップ801で受け取られた制御要求に対応する制御情報がループ候補テーブル900に登録済の場合(ステップ802:YES)、競合判断部213は、当該登録済の制御情報の繰返し回数904を1回インクリメントする(ステップ803)。これにより、競合判断部213は、当該登録済の制御情報を更新する。   If the control information corresponding to the control request received in step 801 has already been registered in the loop candidate table 900 (step 802: YES), the conflict determination unit 213 increments the number of repetitions 904 of the registered control information by one. (Step 803). Thereby, the competition determination unit 213 updates the registered control information.

例えば、サービス実行部212が、サービスID「A」の快適空調サービス200aから、機器ID「aircon_0a12ab4cb611」のエアコン150aを、暖房25℃運転にする制御を行わせる制御要求を過去に4回受け取っていたとする。つまり、当該制御要求に対応する制御情報(サービスID901「A」、機器ID902「aircon_0a12ab4cb611」、制御コマンド903「暖房25℃」、繰り返し回数904「4」)が、ループ候補テーブル900に登録済であるとする。この場合に、ステップ801において、サービス実行部212が同じ制御要求を再び受け取ったとする。   For example, the service execution unit 212 has received four control requests in the past from the comfortable air conditioning service 200a with the service ID “A” to control the air conditioner 150a with the device ID “aircon — 0a12ab4cb611” to be heated to 25 ° C. To do. That is, control information corresponding to the control request (service ID 901 “A”, device ID 902 “aircon — 0a12ab4cb611”, control command 903 “heating 25 ° C.”, repetition count 904 “4”) has been registered in the loop candidate table 900. And In this case, it is assumed that the service execution unit 212 receives the same control request again in step 801.

この場合、ステップ801で受け取られた制御要求に対応する制御情報がループ候補テーブル900に登録済であるので(ステップ802:YES)、ステップ803が行われる。つまり、競合判断部213によって、ループ候補テーブル900に登録済の当該制御要求に対応する制御情報が、図11に示すように、新たな制御情報(サービスID901「A」、機器ID902「aircon_0a12ab4cb611」、制御コマンド903「暖房25℃」、繰り返し回数904「5」)に更新される。   In this case, since the control information corresponding to the control request received in step 801 has already been registered in the loop candidate table 900 (step 802: YES), step 803 is performed. That is, the control information corresponding to the control request registered in the loop candidate table 900 by the conflict determination unit 213 is changed to new control information (service ID 901 “A”, device ID 902 “aircon_0a12ab4cb611”, Control command 903 “heating 25 ° C.”, repetition count 904 “5”).

一方、ステップ801で受け取られた制御要求に対応する制御情報が未登録の場合(ステップ802:NO)、競合判断部213は、ループ候補テーブル900に、当該制御要求に対応する制御情報(サービスID901、機器ID902、コマンド903、繰り返し回数904)を登録する(ステップ804)。尚、競合判断部213は、ステップ804で登録する制御情報の繰り返し回数904を1とする。   On the other hand, when the control information corresponding to the control request received in step 801 is not registered (step 802: NO), the contention determination unit 213 stores control information (service ID 901) corresponding to the control request in the loop candidate table 900. , Device ID 902, command 903, repetition count 904) are registered (step 804). Note that the competition determination unit 213 sets the repetition count 904 of the control information registered in step 804 to 1.

例えば、サービス実行部212が、サービスID「C」の快適調光サービス200cから、機器150の制御要求を受け取っていなかったとする。つまり、ループ候補テーブル900には、サービスID「C」を含む制御情報が何ら登録されていなかったとする。この場合に、ステップ801において、サービス実行部212が、サービスID「C」の快適調光サービス200cから、機器ID「light_0b2c998a5c7a」の照明150bをON(点灯)にする制御を行わせる制御要求を受け取ったとする。   For example, it is assumed that the service execution unit 212 has not received a control request for the device 150 from the comfortable dimming service 200c with the service ID “C”. That is, it is assumed that no control information including the service ID “C” is registered in the loop candidate table 900. In this case, in step 801, the service execution unit 212 receives a control request for performing control to turn on (turn on) the illumination 150b of the device ID “light — 0b2c998a5c7a” from the comfortable dimming service 200c of the service ID “C”. Suppose.

この場合、ステップ801で受け取られた制御要求に対応する制御情報がループ候補テーブル900に未登録であるので(ステップ802:NO)、ステップ804が行われる。つまり、競合判断部213によって、ループ候補テーブル900に、当該制御要求に対応する制御情報(サービスID901「C」、機器ID902「light_0b2c998a5c7a」、制御コマンド903「ON」、繰り返し回数904「1」)が登録される。   In this case, since the control information corresponding to the control request received in step 801 is not registered in the loop candidate table 900 (step 802: NO), step 804 is performed. In other words, the conflict determination unit 213 adds control information (service ID 901 “C”, device ID 902 “light — 0b2c998a5c7a”, control command 903 “ON”, number of repetitions 904 “1”) to the loop candidate table 900. be registered.

競合判断部213は、制御情報の登録又は更新後、当該制御情報に含まれる繰り返し回数904が予め定められた閾値(所定回数)に達しているか否かを判定する。繰り返し回数904が閾値に達していた場合(ステップ805:YES)、競合判断部213は、当該制御情報の機器ID902と同一の機器ID902を含み、且つ、当該制御情報のサービスID901とは別のサービスID901を含む制御情報(以下、判定対象の制御情報)が、ループ候補テーブル900に存在するか否かを判定する(ステップ806)。これにより、競合判断部213は、上記同一の機器ID902で識別される同一の機器150の制御を過去に行ったことのあるサービス200が2以上存在するか否かを判定する。   The competition determination unit 213 determines whether or not the number of repetitions 904 included in the control information has reached a predetermined threshold (predetermined number) after registration or update of the control information. When the number of repetitions 904 has reached the threshold (step 805: YES), the conflict determination unit 213 includes a device ID 902 that is the same as the device ID 902 of the control information and is a service different from the service ID 901 of the control information. It is determined whether or not control information including ID 901 (hereinafter, determination target control information) exists in the loop candidate table 900 (step 806). Thereby, the competition determination unit 213 determines whether or not there are two or more services 200 that have previously controlled the same device 150 identified by the same device ID 902.

例えば、図11に示すように、ループ候補テーブル900に制御情報が登録されているとする。また、上記閾値が5回であるとする。そして、ステップ801においてサービスID「A」で識別されるサービス200が実行され、ステップ805において、競合判断部213が、サービスID「A」に対応する制御情報に含まれる繰り返し回数904「5」が5回に達していると判定したとする。   For example, it is assumed that control information is registered in the loop candidate table 900 as shown in FIG. It is assumed that the threshold is 5 times. In step 801, the service 200 identified by the service ID “A” is executed. In step 805, the contention determination unit 213 sets the number of repetitions 904 “5” included in the control information corresponding to the service ID “A”. Suppose that it is determined that the number of times has been reached five times.

この場合、競合判断部213は、ステップ806において、図11の第1行目及び第2行目に示す二つの制御情報に基づき、当該制御情報の機器ID902「aircon_0a12ab4cb611」と同一の機器ID902を含み、且つ、当該制御情報のサービスID901「A」とは別のサービスID901「B」を含む判定対象の制御情報が存在すると判定する(ステップ806;YES)。これにより、競合判断部213は、機器ID902「aircon_0a12ab4cb611」で識別される機器150の制御を過去に行ったことのあるサービス200が、ステップ801で実行されたサービスID「A」で識別されるサービス200と、サービスID「B」で識別されるサービス200と、の二個存在すると判定する。   In this case, the conflict determination unit 213 includes, in step 806, the same device ID 902 as the device ID 902 “aircon_0a12ab4cb611” of the control information based on the two control information shown in the first and second rows of FIG. In addition, it is determined that there is control information to be determined that includes a service ID 901 “B” different from the service ID 901 “A” of the control information (step 806; YES). As a result, the competition determination unit 213 determines that the service 200 that has previously controlled the device 150 identified by the device ID 902 “aircon — 0a12ab4cb611” is identified by the service ID “A” executed in Step 801. 200 and the service 200 identified by the service ID “B” are determined to exist.

判定対象の制御情報がループ候補テーブル900に存在しなかった場合(ステップ806:NO)、2以上のサービス200によって上記同一機器150が制御されたことがないので、競合判断部213は、ステップ805で繰り返し回数904が閾値に達した制御情報に対応する、ステップ801で実行されたサービス200により、ループ制御は発生していないと判断する(ステップ809)。   If the control information to be determined does not exist in the loop candidate table 900 (step 806: NO), the competition determining unit 213 determines that the same device 150 has not been controlled by two or more services 200. In step 809, it is determined that the loop control has not occurred by the service 200 executed in step 801 corresponding to the control information in which the number of repetitions 904 has reached the threshold (step 809).

一方、判定対象の制御情報がループ候補テーブル900に存在していたとする(ステップ806:YES)。この場合、競合判断部213は、状態監視テーブル300を参照し、ステップ805で繰り返し回数904が閾値に達していると判定した制御情報のサービスID901によって特定(識別)されるサービス200(以下、ステップ805で特定したサービス200)と、判定対象の制御情報のサービスID901によって特定(識別)されるサービス200(以下、ステップ806で特定したサービス200)との両サービス200が、上記同一の機器ID902によって識別される機器150(以下、同一機器150)の状態を監視しているか否かを判定する(ステップ807)。これにより、競合判断部213は、ステップ805で特定したサービス200とステップ806で特定したサービス200との両サービス200によって、現在、上記同一機器150の制御が同時に行われている可能性があるか否かを判定する。   On the other hand, it is assumed that control information to be determined exists in the loop candidate table 900 (step 806: YES). In this case, the competition determination unit 213 refers to the state monitoring table 300, and the service 200 identified (identified) by the service ID 901 of the control information determined in step 805 that the repetition count 904 has reached the threshold (hereinafter, step The service 200 identified in step 805) and the service 200 identified (identified) by the service ID 901 of the control information to be determined (hereinafter, the service 200 identified in step 806) are identified by the same device ID 902. It is determined whether the status of the identified device 150 (hereinafter, the same device 150) is being monitored (step 807). Thereby, the contention determination unit 213 may control the same device 150 at the same time by both the service 200 specified in step 805 and the service 200 specified in step 806. Determine whether or not.

具体的には、ステップ807において、競合判断部213は、状態監視テーブル300を参照し、ステップ805で特定したサービス200のサービスIDを含む状態監視情報に上記同一の機器ID902が含まれ、且つ、ステップ806で特定したサービス200のサービスIDを含む状態監視情報にも上記同一の機器ID902が含まれている場合に、上記両サービス200が上記同一機器150の状態を監視していると判定する(ステップ807;YES)。   Specifically, in step 807, the contention determination unit 213 refers to the state monitoring table 300, and the state monitoring information including the service ID of the service 200 identified in step 805 includes the same device ID 902, and If the same device ID 902 is also included in the status monitoring information including the service ID of the service 200 identified in step 806, it is determined that both services 200 are monitoring the status of the same device 150 ( Step 807; YES).

一方、ステップ805で特定したサービス200のサービスIDを含む状態監視情報及びステップ806で特定したサービス200のサービスIDを含む状態監視情報のうち、少なくとも一方に、上記同一の機器ID902が含まれていなかった場合、競合判断部213は、上記両サービス200のうちの少なくとも一方が上記同一機器150の状態を監視していないと判定する(ステップ807;NO)。   On the other hand, at least one of the state monitoring information including the service ID of the service 200 specified in step 805 and the state monitoring information including the service ID of the service 200 specified in step 806 does not include the same device ID 902. In such a case, the competition determination unit 213 determines that at least one of the two services 200 is not monitoring the state of the same device 150 (step 807; NO).

例えば、図4に示すように、状態監視テーブル300に状態監視情報が登録されているとする。そして、ステップ806について上述した具体例と同様、上記同一の機器ID902が「aircon_0a12ab4cb611」であり、ステップ805で特定したサービス200のサービスIDが「A」であり、ステップ806で特定したサービス200のサービスIDが「B」であるとする。   For example, assume that state monitoring information is registered in the state monitoring table 300 as shown in FIG. As in the specific example described above for step 806, the same device ID 902 is “aircon — 0a12ab4cb611”, the service ID of the service 200 specified in step 805 is “A”, and the service 200 of the service 200 specified in step 806 Assume that the ID is “B”.

この場合、状態監視テーブル300には、ステップ805で特定したサービス200のサービスID「A」を含む状態監視情報(図4の1行目)に、上記同一の機器ID902「aircon_0a12ab4cb611」が含まれ、且つ、ステップ806で特定したサービス200のサービスID「B」を含む状態監視情報(図4の1行目)にも、上記同一の機器ID902「aircon_0a12ab4cb611」が含まれている。このため、競合判断部213は、上記両サービス200が上記同一機器150の状態を監視していると判定する。   In this case, the state monitoring table 300 includes the same device ID 902 “aircon — 0a12ab4cb611” in the state monitoring information (first line in FIG. 4) including the service ID “A” of the service 200 identified in step 805, Further, the same device ID 902 “aircon — 0a12ab4cb611” is also included in the state monitoring information (first line in FIG. 4) including the service ID “B” of the service 200 identified in step 806. For this reason, the competition determination unit 213 determines that both services 200 are monitoring the state of the same device 150.

競合判断部213が、上記両サービス200のうちの少なくとも一方が上記同一機器150の状態を監視していないと判定したとする(ステップ807:NO)。この場合、上記両サービス200によって上記同一機器150の制御が同時に行われている可能性は高くないと考えられる。したがって、この場合、競合判断部213は、ステップ805で繰り返し回数904が閾値に達した制御情報に対応する、ステップ801で行われた制御により、ループ制御は発生していないと判断する(ステップ809)。   Assume that the competition determination unit 213 determines that at least one of the two services 200 is not monitoring the state of the same device 150 (step 807: NO). In this case, it is unlikely that the same device 150 is simultaneously controlled by both services 200. Therefore, in this case, the contention determination unit 213 determines that no loop control has occurred due to the control performed in step 801 corresponding to the control information in which the number of repetitions 904 has reached the threshold value in step 805 (step 809). ).

一方、競合判断部213が、上記両サービス200が上記同一機器150の状態を監視していると判定したとする(ステップ807:YES)。この場合、上記両サービス200によって上記同一機器150の制御が同時に行われている可能性が高いと考えられる。したがって、この場合、競合判断部213は、ステップ805で特定したサービス200(第1のサービス)による上記同一機器150の制御(第1の制御)の実行と、ステップ806で特定したサービス200(第2のサービス)による上記同一機器150の制御(第2の制御)の実行と、の繰り返しが、上記閾値が示す回数以上行われるループ制御が発生していることを検出する。そして、競合判断部213は、ステップ805及びステップ806で特定した両サービス200を、ループ制御の発生の原因となるサービス200として特定する(ステップ808)。   On the other hand, it is assumed that the competition determination unit 213 determines that both services 200 are monitoring the state of the same device 150 (step 807: YES). In this case, it is highly likely that the same device 150 is simultaneously controlled by both services 200. Accordingly, in this case, the contention determination unit 213 executes the control (first control) of the same device 150 by the service 200 (first service) specified in Step 805 and the service 200 (first control) specified in Step 806. It is detected that the loop control in which the repetition of the control (second control) of the same device 150 by the second service) is performed more than the number of times indicated by the threshold value is detected. Then, the contention determination unit 213 identifies both services 200 identified in Steps 805 and 806 as the services 200 that cause the occurrence of loop control (Step 808).

例えば、ステップ801において、サービス実行部212が、サービスID「A」の快適空調サービス200aから、機器ID「aircon_0a12ab4cb611」のエアコン150aを、暖房25℃運転にする制御を行わせる制御要求を受け取ったとする。そして、ステップ805を実行する直前において、ループ候補テーブル900には、図11に示す制御情報が登録され、状態監視テーブル300には図4に示す状態監視情報が登録されていたとする。また、ステップ805で用いる閾値が5回であるとする。   For example, in step 801, the service execution unit 212 receives a control request for controlling the air conditioner 150a with the device ID “aircon — 0a12ab4cb611” to perform heating at 25 ° C. from the comfortable air conditioning service 200a with the service ID “A”. . Assume that the control information shown in FIG. 11 is registered in the loop candidate table 900 and the state monitoring information shown in FIG. 4 is registered in the state monitoring table 300 immediately before executing step 805. Further, it is assumed that the threshold used in step 805 is 5 times.

この場合、ステップ805において、ステップ801で受け取った制御要求に対応する制御情報(サービスID901「A」を含む制御情報)の繰り返し回数が「5」であるので、競合判断部213は閾値に達したと判定する。この場合、競合判断部213は、ステップ806において、当該制御情報の機器ID902「aircon_0a12ab4cb611」と同一の機器ID902を含み、且つ、当該制御情報のサービスID901「A」とは別のサービスID901「B」を含む判定対象の制御情報が、ループ候補テーブル900に存在すると判定する。   In this case, in step 805, since the number of repetitions of the control information (control information including service ID 901 “A”) corresponding to the control request received in step 801 is “5”, the contention determination unit 213 has reached the threshold value. Is determined. In this case, in step 806, the conflict determination unit 213 includes a device ID 902 that is the same as the device ID 902 “aircon_0a12ab4cb611” of the control information, and is different from the service ID 901 “A” of the control information. Is determined to exist in the loop candidate table 900.

そして、競合判断部213は、ステップ807において、状態監視テーブル300を参照し、ステップ805及びステップ806で特定した両サービス200が、機器ID「aircon_0a12ab4cb611」によって識別される同一の機器150の状態を監視していると判定する。   In step 807, the contention determination unit 213 refers to the state monitoring table 300, and monitors the state of the same device 150 in which both services 200 identified in step 805 and step 806 are identified by the device ID “aircon — 0a12ab4cb611”. It is determined that

この場合、競合判断部213は、ステップ808において、ステップ805で特定したサービス200による制御の実行とステップ806で特定したサービス200による制御の実行との繰り返しが5回以上行われるループ制御が発生していることを検出する。そして、競合判断部213は、ステップ805及びステップ806で特定した両サービス200を、ループ制御の発生の原因となるサービス200として特定する。   In this case, in step 808, the contention determination unit 213 performs loop control in which the execution of the control by the service 200 specified in step 805 and the execution of the control by the service 200 specified in step 806 are repeated five or more times. Detect that Then, the contention determination unit 213 identifies both services 200 identified in Steps 805 and 806 as the services 200 that cause the occurrence of loop control.

競合判断部213による処理を上記のように構成することにより、実行されたサービス200による機器150の制御内容を示している制御情報に基づき、閾値以上繰り返して制御が行われた機器150を精度良く特定することができる。更に、状態監視情報に基づいて、当該特定した機器150の状態が、2以上のサービスによって現在も監視中であるか否かを精度良く判定することができる。   By configuring the process by the contention determination unit 213 as described above, the device 150 that has been repeatedly controlled more than a threshold based on the control information indicating the control content of the device 150 by the executed service 200 is accurately detected. Can be identified. Furthermore, based on the state monitoring information, it can be accurately determined whether or not the state of the identified device 150 is still being monitored by two or more services.

そして、状態監視情報に基づいて当該特定した機器150の状態が2以上のサービス200によって現在も監視中であると判定した場合には、当該2以上のサービス200によって当該特定した機器150の制御が現在閾値以上繰り返して行われているものとして、上記ループ制御が現在発生していることを精度良く検出することができる。   If it is determined that the status of the identified device 150 is still being monitored by two or more services 200 based on the status monitoring information, control of the identified device 150 by the two or more services 200 is performed. It is possible to detect with high accuracy that the loop control is currently occurring, assuming that the control is repeatedly performed for the current threshold value or more.

次に、競合判断部213によってループ制御の発生が検出された場合に行われる処理について図12を用いて説明する。図12は、実施の形態1においてループ制御を解消する処理フローの一例を示す図である。   Next, processing performed when the occurrence of loop control is detected by the competition determination unit 213 will be described with reference to FIG. FIG. 12 is a diagram illustrating an example of a processing flow for canceling loop control in the first embodiment.

図10に示すフローに従って、競合判断部213により、ループ制御の発生の原因となるサービス200が特定された場合(ステップ1000)、サービス管理部211は、当該特定されたサービス200のうち、競合判断部213がステップ805で特定したサービス200を、終了させる対象のサービス200(以下、終了サービス200)として決定する。そして、サービス管理部211は、当該決定した終了サービス200の終了要求を発行し、当該終了要求をサービス実行部212へ通知する(ステップ1001)。サービス実行部212は、当該終了要求の通知を受けると、当該終了要求が示す終了サービス200の終了処理を実行する(ステップ1002)。   When the service 200 that causes the occurrence of the loop control is identified by the contention determination unit 213 according to the flow shown in FIG. 10 (step 1000), the service management unit 211 determines the contention among the specified services 200. The service 200 identified by the unit 213 in step 805 is determined as the service 200 to be terminated (hereinafter referred to as the termination service 200). Then, the service management unit 211 issues an end request for the determined end service 200 and notifies the service execution unit 212 of the end request (step 1001). Upon receiving the notification of the termination request, the service execution unit 212 executes termination processing of the termination service 200 indicated by the termination request (Step 1002).

尚、サービス実行部212によって終了サービス200の終了処理が実行されると、上述のように、状態監視部214は、図8に示す処理フローに従って、状態監視テーブル300に登録されている、終了サービス200のサービスIDを含む状態監視情報を削除する(ステップ603)、又は、当該状態監視情報から終了サービス200のサービスIDを削除する(ステップ604)。   When the termination process of the termination service 200 is executed by the service execution unit 212, as described above, the status monitoring unit 214 is registered in the status monitoring table 300 according to the processing flow shown in FIG. The status monitoring information including the service ID of 200 is deleted (step 603), or the service ID of the end service 200 is deleted from the status monitoring information (step 604).

その後、表示生成部216は、サービステーブルT2(図6)を参照して、ループ制御の発生が検出されたことにより、上記終了サービス200を終了した(上記終了サービス200の終了要求が発行された)旨をユーザに通知するためのメッセージ(通知情報)を生成(発行)する。そして、表示生成部216は、図13に示すような、当該生成したメッセージM1を含む通知画面W1を生成し、当該生成した通知画面W1を表示部104に表示させる(ステップ1003)。これにより、表示生成部216は、ループ制御の発生が検出されたことにより、上記終了サービス200を終了した旨をユーザに通知する。   Thereafter, the display generation unit 216 refers to the service table T2 (FIG. 6) and terminates the termination service 200 when the occurrence of loop control is detected (a termination request for the termination service 200 is issued). ) A message (notification information) for notifying the user is generated (issued). Then, the display generation unit 216 generates a notification screen W1 including the generated message M1 as shown in FIG. 13, and displays the generated notification screen W1 on the display unit 104 (step 1003). Thereby, the display generation unit 216 notifies the user that the termination service 200 has been terminated when the occurrence of loop control is detected.

尚、図13に示す通知画面W1は一例であって、ループ制御が行われたことにより、上記終了サービス200を終了した旨をユーザに通知するという効果を発揮する範囲内において適宜画面構成を変更してもよい。例えば、上記メッセージM1を含むダイアログ画面やポップアップ画面によって通知画面W1を構成し、当該通知画面W1を既に表示されている画面の上に重ねて表示部104に表示させてもよい。   Note that the notification screen W1 shown in FIG. 13 is an example, and the screen configuration is appropriately changed within a range in which the effect of notifying the user that the termination service 200 is terminated by performing loop control. May be. For example, the notification screen W1 may be configured by a dialog screen or a pop-up screen including the message M1, and the notification screen W1 may be displayed on the display unit 104 so as to overlap the already displayed screen.

また、ステップ1001(図12)において、サービス管理部211が、終了サービス200の終了要求をサービス実行部212へ通知する前に、ループ候補テーブル900(図11)に登録されている当該終了サービス200に対応する制御情報を主記憶部102に退避するようにしてもよい。   Further, in step 1001 (FIG. 12), before the service management unit 211 notifies the service execution unit 212 of a termination request for the termination service 200, the termination service 200 registered in the loop candidate table 900 (FIG. 11). Control information corresponding to may be saved in the main storage unit 102.

そして、表示生成部216が、ステップ1003(図12)において、主記憶部102に退避された上記の終了サービス200に対応する制御情報、機器テーブルT1(図5)、サービステーブルT2(図6)、ループ候補テーブル900(図11)を参照し、上記メッセージM1に、更に、競合判断部213により特定されたループ制御の発生の原因となるサービス200のサービス名と、当該特定されたサービス200により制御された、ループ制御が発生している機器150の機器名と、当該機器150の制御に用いられた制御コマンドと、を含めたメッセージを生成してもよい。そして、表示生成部216が、図13に示す通知画面W1に代えて、図14に示すような、当該生成したメッセージを含む通知画面W2を生成し、当該生成した通知画面W2を表示部104に表示させるようにしてもよい。   Then, in step 1003 (FIG. 12), the display generation unit 216 controls the control information corresponding to the termination service 200 saved in the main storage unit 102, the device table T1 (FIG. 5), and the service table T2 (FIG. 6). Referring to the loop candidate table 900 (FIG. 11), the message M1 further includes the service name of the service 200 that causes the occurrence of the loop control specified by the contention determination unit 213, and the specified service 200. A message including the controlled device name of the device 150 in which loop control is generated and the control command used to control the device 150 may be generated. Then, instead of the notification screen W1 shown in FIG. 13, the display generation unit 216 generates a notification screen W2 including the generated message as shown in FIG. 14, and displays the generated notification screen W2 on the display unit 104. You may make it display.

また、当該変更後のステップ1003において、表示生成部216が生成するメッセージに、ループ制御が発生している機器150の機器名と、当該機器150の制御に用いられた制御コマンドとを含めないようにしてもよい。これに合わせて、図14に示す通知画面W2にループ原因制御欄を設けないようにしてもよい。   Also, in step 1003 after the change, the message generated by the display generation unit 216 should not include the device name of the device 150 in which loop control has occurred and the control command used to control the device 150. It may be. In accordance with this, the loop cause control column may not be provided on the notification screen W2 shown in FIG.

このように構成することにより、ループ制御が発生しないように、終了サービス200による機器の制御の見直しを行う手がかりをユーザに示すことができる。その結果、ユーザは、サービスによる機器の制御の見直しを容易に行うことができる。   With this configuration, it is possible to show the user a clue to review the device control by the termination service 200 so that loop control does not occur. As a result, the user can easily review the control of the device by the service.

また、ステップ1001において、サービス管理部211は、競合判断部213がステップ806で特定したサービス200を終了サービス200として決定してもよいし、競合判断部213がステップ805及び806で特定した全てのサービス200を、終了サービス200として決定してもよい。   In step 1001, the service management unit 211 may determine the service 200 identified by the conflict determination unit 213 in step 806 as the end service 200, or all of the conflict determination unit 213 identified in steps 805 and 806. The service 200 may be determined as the end service 200.

また、ステップ1001において、サービス管理部211が、サービス200が起動された順番に基づいて、終了サービス200を決定するようにしてもよい。   In step 1001, the service management unit 211 may determine the end service 200 based on the order in which the services 200 are activated.

例えば、最近起動したサービス200が、ユーザが最も利用したいサービス200であると仮定し、ステップ1001において、サービス管理部211が、競合判断部213によって特定されたサービス200のうち、先に起動されたサービス200を優先して終了サービス200として決定するようにしてもよい。この場合、ユーザが利用したい最近起動したサービス200を終了することなく、ループ制御を解消することができる。   For example, assuming that the recently activated service 200 is the service 200 that the user wants to use most, the service management unit 211 is activated first among the services 200 identified by the conflict determination unit 213 in step 1001. The service 200 may be preferentially determined as the end service 200. In this case, the loop control can be canceled without terminating the recently activated service 200 that the user wants to use.

又は、現在起動しているサービスを引き続き利用することをユーザが望んでいると仮定し、ステップ1001において、サービス管理部211が、競合判断部213によって特定されたサービス200のうち、後に起動されたサービス200を優先して終了サービス200として決定するようにしてもよい。この場合、ユーザが引き続き利用することを望んでいるサービス200を終了させることなく、ループ制御を解消することができる。このため、当該ユーザは、望み通り、現在起動しているサービス200を引き続き利用しながら、後に起動されたサービス200による機器の制御内容を見直したり、今後起動するサービスを見直す等、ループ制御を発生させないための対処をとることができる。   Alternatively, assuming that the user wants to continue using the currently activated service, in step 1001, the service management unit 211 is activated later among the services 200 identified by the conflict determination unit 213. The service 200 may be preferentially determined as the end service 200. In this case, it is possible to eliminate the loop control without terminating the service 200 that the user desires to continue using. For this reason, the user generates loop control such as reviewing the control content of the device by the service 200 activated later or reviewing the service activated in the future while continuing to use the currently activated service 200 as desired. You can take measures to prevent it from happening.

尚、ステップ1001において、サービス管理部211が、終了サービス200として決定するサービス200の優先順位を、例えば入力部105を操作すること等によって、ユーザが設定できるようにしてもよい。この場合、ユーザは、終了させたくないサービス200の優先順位を予め低く設定しておくことで、ループ制御が発生した場合でも、当該終了させたくないサービス200に対して終了要求が発行されることを回避することができる。   In step 1001, the service management unit 211 may allow the user to set the priority order of the service 200 determined as the end service 200 by operating the input unit 105, for example. In this case, by setting the priority of the service 200 that is not desired to be terminated in advance, even when loop control occurs, the user can issue a termination request to the service 200 that is not desired to be terminated. Can be avoided.

また、ループ候補テーブル900を定期的に初期化するようにしてもよい。図15は、実施の形態1においてループ候補テーブル900を初期化する処理フローの一例を示す図である。具体的には、図15に示すように、競合判断部213は、予め設定された一定時間が経過する度に(ステップ1100:YES)、ループ候補テーブル900を初期化し、ループ候補テーブル900に登録されている全ての制御情報を削除する(ステップ1101)。尚、当該一定時間は、予め決められた固定の値であってもよいし、例えば入力部105を操作すること等によって、ユーザが任意の値に変更できるようにしてもよい。   Further, the loop candidate table 900 may be periodically initialized. FIG. 15 is a diagram showing an example of a processing flow for initializing the loop candidate table 900 in the first embodiment. Specifically, as shown in FIG. 15, the competition determination unit 213 initializes the loop candidate table 900 and registers it in the loop candidate table 900 every time a preset fixed time has elapsed (step 1100: YES). All the control information that has been deleted is deleted (step 1101). The predetermined time may be a fixed value determined in advance, or may be changed to an arbitrary value by the user by operating the input unit 105, for example.

尚、ステップ1101において、ループ候補テーブル900を初期化することに代えて、予め定められたサービス200(以下、削除対象サービス200)に対応する制御情報、つまり、当該削除対象サービス200を識別するサービスID901を含んだ制御情報だけを削除するようにしてもよい。   In step 1101, instead of initializing the loop candidate table 900, control information corresponding to a predetermined service 200 (hereinafter, the deletion target service 200), that is, a service for identifying the deletion target service 200. Only the control information including the ID 901 may be deleted.

例えば、毎朝6時にエアコン150aの電源をONにするサービス200や、毎晩22時にエアコン150aの電源をOFFにするサービス200のように、起動された後、長時間終了されず、一日一度しか機器150の制御を行わないようなサービス200は、ループ制御の発生の原因とはならないと考えられる。   For example, a service 200 that turns on the power of the air conditioner 150a every morning at 6:00 and a service 200 that turns off the power of the air conditioner 150a every night at 2pm, such as a service 200 that does not end for a long time after startup The service 200 that does not perform control 150 is considered not to cause the occurrence of loop control.

したがって、このようなループ制御の発生の原因とはならないと考えられるサービス200を、予め削除対象サービス200として設定することで、当該削除対象サービス200に対応する制御情報が、ループ候補テーブル900に一定時間以上残存することを回避することができる。これにより、当該削除対象サービス200に対応する制御情報に含まれる繰り返し回数904が閾値以上になることを低減することができる。その結果、当該削除対象サービス200を、ステップ805で特定したサービス200及びステップ806で特定したサービスとする機会、つまり、ループ制御の発生の原因となるサービス200として特定する機会を低減することができる。   Accordingly, by setting the service 200 that is not considered to cause such loop control as the deletion target service 200 in advance, control information corresponding to the deletion target service 200 is constant in the loop candidate table 900. It is possible to avoid remaining for more than an hour. Thereby, it is possible to reduce the number of repetitions 904 included in the control information corresponding to the deletion target service 200 from being equal to or greater than the threshold value. As a result, it is possible to reduce the opportunity to specify the deletion target service 200 as the service 200 specified in step 805 and the service specified in step 806, that is, the opportunity to specify the service 200 that causes the occurrence of loop control. .

また、図10のステップ805に示す繰り返し回数904が閾値以上であるか否かの判定は、ステップ801で実行されたサービス200に対応する制御情報に含まれる繰り返し回数904だけでなく、ループ候補テーブル900に登録されている全ての制御情報に含まれている繰り返し回数904について行ってもよい。これに合わせて、予め定めた所定数以上の制御情報に含まれている繰り返し回数904が閾値に達した場合に、ステップ806へ遷移するようにしてもよい。   Further, the determination as to whether or not the number of repetitions 904 shown in step 805 in FIG. The number of repetitions 904 included in all control information registered in 900 may be performed. In accordance with this, when the number of repetitions 904 included in a predetermined number or more of control information reaches a threshold value, the process may proceed to step 806.

又は、ステップ806において、競合判断部213が、ステップ805で特定したサービス200に対応する制御情報に含まれる機器ID902と同一の機器ID902を含み、且つ、当該制御情報に含まれるサービスID901とは別のサービスID901を含み、且つ、繰り返し回数904が上記閾値以上となっている制御情報が、ループ候補テーブル900に存在するか否かを判定するようにしてもよい。このように、ステップ806において判定する対象の制御情報を制限することにより、ループ制御が行われていることを、より正確に判断することができる。   Alternatively, in step 806, the conflict determination unit 213 includes the same device ID 902 as the device ID 902 included in the control information corresponding to the service 200 specified in step 805, and is different from the service ID 901 included in the control information. It is also possible to determine whether or not control information that includes the service ID 901 and the number of repetitions 904 is equal to or greater than the threshold value exists in the loop candidate table 900. In this way, by limiting the control information to be determined in step 806, it can be determined more accurately that the loop control is being performed.

(実施の形態2)
実施の形態1では、ホームコントローラ100上で実行される複数のサービス200による同一機器150に対するループ制御の検出方法とそのループ制御の解消方法について説明した。実施の形態2では、図16に示すように、複数のサービスが広域ネットワーク130に接続されたクラウドサーバ1201やスマートフォン・タブレット等の外部端末1202上等、ホームコントローラ100以外の装置でも実行される場合における、同一機器150に対するループ制御の発生の検出方法及びそのループ制御の解消方法について説明する。
(Embodiment 2)
In the first embodiment, the loop control detection method for the same device 150 by the plurality of services 200 executed on the home controller 100 and the loop control cancellation method have been described. In the second embodiment, as shown in FIG. 16, when a plurality of services are also executed on a device other than the home controller 100 such as a cloud server 1201 connected to the wide area network 130 or an external terminal 1202 such as a smartphone / tablet. A method for detecting the occurrence of loop control for the same device 150 and a method for eliminating the loop control will be described.

尚、図16に示す、クラウドサーバ1201や外部端末1202で実行されるサービスは一例であって、ホームコントローラ100を介して、ホームネットワーク120に接続された機器150の制御を行うサービスであれば、ホームネットワーク120に接続される装置で実行されるサービスであってもよい。以下、実施の形態2の説明では、特筆しない限り、実施の形態1と異なる部分についてのみ説明する。   Note that the services executed in the cloud server 1201 and the external terminal 1202 shown in FIG. 16 are examples, and any service that controls the device 150 connected to the home network 120 via the home controller 100 can be used. It may be a service executed by a device connected to the home network 120. Hereinafter, in the description of the second embodiment, only parts different from the first embodiment will be described unless otherwise specified.

図17は、実施の形態2におけるホームコントローラ100を含むホームネットワークシステムの機能構成を示す図である。ホームコントローラ100のハードウェア構成は、実施の形態1と同じであるため説明を省略する。   FIG. 17 is a diagram illustrating a functional configuration of a home network system including the home controller 100 according to the second embodiment. Since the hardware configuration of home controller 100 is the same as that of the first embodiment, description thereof is omitted.

実施の形態2では、快適空調サービス1200aはクラウドサーバ1201上で実行され、家中省エネサービス1200bはスマートフォン・タブレット等の外部端末1202上で実行される。また、快適調光サービス200cは、実施の形態1と同様にホームコントローラ100上で実行される。以下、広域ネットワーク130を介してホームコントローラ100以外の装置で実行されるサービス1200a、1200bを総称して、サービス1200と記載する。   In the second embodiment, the comfortable air conditioning service 1200a is executed on the cloud server 1201, and the house energy saving service 1200b is executed on the external terminal 1202 such as a smartphone / tablet. The comfortable light control service 200c is executed on the home controller 100 as in the first embodiment. Hereinafter, the services 1200a and 1200b executed by devices other than the home controller 100 via the wide area network 130 are collectively referred to as services 1200.

サービス制御部1210は、実施の形態1の構成に加えて、コマンド通信部1217を備える。コマンド通信部1217は、広域ネットワーク130に接続された外部装置との間で制御コマンド等の送受信を行う。つまり、状態監視部214が、サービス1200による監視対象の機器150の状態変化を通知する場合、サービス管理部211がサービス1200の起動要求及び終了要求を通知する場合、及び、サービス1200が機器150の制御要求を通知する場合等、広域ネットワーク130に接続された外部装置との通信は、全てコマンド通信部1217を介して行われる。   The service control unit 1210 includes a command communication unit 1217 in addition to the configuration of the first embodiment. The command communication unit 1217 transmits and receives control commands and the like to and from external devices connected to the wide area network 130. That is, when the state monitoring unit 214 notifies a change in the state of the device 150 to be monitored by the service 1200, when the service management unit 211 notifies a start request and an end request of the service 1200, and when the service 1200 All communications with external devices connected to the wide area network 130 are performed via the command communication unit 1217, such as when a control request is notified.

図17に示すホームコントローラ100の機能構成は、図17に示す各ブロックとして機能させるためのプログラムを中央処理部101に実行させることにより実現できる。尚、図17に示すホームコントローラ100の機能構成は、図17に示す各ブロックとして機能する専用回路を組み合わせることにより実現してもよい。   The functional configuration of the home controller 100 illustrated in FIG. 17 can be realized by causing the central processing unit 101 to execute a program for causing each block illustrated in FIG. 17 to function. The functional configuration of the home controller 100 shown in FIG. 17 may be realized by combining dedicated circuits that function as the blocks shown in FIG.

図18は、サービス管理テーブル1400aの一例を示す図である。サービス管理テーブル1400aは、サービス200、1200のサービスIDと、当該サービス200、1200を実行可能な装置のアドレスと、を対応付けたサービス管理情報を管理するためのテーブルである。サービス管理テーブル1400aは、主記憶部102に記憶される。   FIG. 18 is a diagram illustrating an example of the service management table 1400a. The service management table 1400a is a table for managing service management information in which service IDs of the services 200 and 1200 are associated with addresses of apparatuses that can execute the services 200 and 1200. The service management table 1400a is stored in the main storage unit 102.

コマンド通信部1217によるサービス管理テーブル1400aへのサービスIDとアドレスの登録フローについて図19を用いて説明する。図19は、実施の形態2においてサービス管理テーブル1400aに情報を登録する処理フローの一例を示す図である。   A registration flow of a service ID and an address in the service management table 1400a by the command communication unit 1217 will be described with reference to FIG. FIG. 19 is a diagram showing an example of a processing flow for registering information in the service management table 1400a in the second embodiment.

外部装置においてサービス1200が起動されると、起動されたサービス1200は、サービス制御部1210へ当該サービス1200の起動を通知する。当該サービス1200の起動通知は、外部装置において起動されたサービス1200が、サービス制御部1210が提供する起動通知APIを広域ネットワーク130を介して呼び出すことによって行われる。これと同様にして、実施の形態2では、サービス実行部212によってサービス200の起動処理が行われると、当該サービス200は、上記起動通知APIを呼び出し、サービス制御部1210へ当該サービス200の起動を通知する。   When the service 1200 is activated in the external device, the activated service 1200 notifies the service control unit 1210 of activation of the service 1200. The activation notification of the service 1200 is performed when the service 1200 activated in the external device calls the activation notification API provided by the service control unit 1210 via the wide area network 130. In the same manner, in the second embodiment, when the service 200 is started by the service execution unit 212, the service 200 calls the start notification API and starts the service 200 to the service control unit 1210. Notice.

上記起動通知APIは、当該APIを呼び出したサービス200、1200のサービスIDと、当該サービス200、1200が起動され、当該サービス200、1200が実行可能になった装置のアドレス(以下、サービス200、1200の実行先のアドレス)と、を当該サービス200、1200から受け取る。そして、当該受け取ったサービスIDと、当該サービス200、1200の実行先のアドレスとをサービス制御部210に通知する。   The activation notification API includes the service ID of the service 200, 1200 that called the API, and the address of the device from which the service 200, 1200 is activated and the service 200, 1200 can be executed (hereinafter, service 200, 1200). Are executed from the services 200 and 1200. Then, the service control unit 210 is notified of the received service ID and the execution destination addresses of the services 200 and 1200.

コマンド通信部1217は、起動通知APIによる、サービス200、1200のサービスIDとサービス200、1200の実行先のアドレスの通知(以下、サービス200、1200の起動通知)を受け取ると(ステップ1500)、当該通知されたサービスIDがサービス管理テーブル1400aに登録されているか否かを検索する(ステップ1501)。   When the command communication unit 1217 receives the notification of the service ID of the service 200 and 1200 and the address of the execution destination of the service 200 and 1200 (hereinafter referred to as activation notification of the service 200 and 1200) by the activation notification API (step 1500), It is searched whether or not the notified service ID is registered in the service management table 1400a (step 1501).

通知されたサービスIDがサービス管理テーブル1400aに登録済の場合(ステップ1502:YES)、コマンド通信部1217は、登録済の当該サービスIDに対応するアドレスとして、ステップ1500で通知されたサービス200、1200の実行先のアドレスを登録する(ステップ1504)。   When the notified service ID is already registered in the service management table 1400a (step 1502: YES), the command communication unit 1217 uses the service 200, 1200 notified in step 1500 as an address corresponding to the registered service ID. The execution destination address is registered (step 1504).

通知されたサービスIDがサービス管理テーブル1400aに未登録の場合(ステップ1502:NO)、コマンド通信部1217は、通知されたサービスIDをサービス管理テーブル1400aに登録し(ステップ1503)、登録したサービスIDに対応するアドレスとして、ステップ1500で通知されたサービス200、1200の実行先のアドレスを登録する(ステップ1504)。   When the notified service ID is not registered in the service management table 1400a (step 1502: NO), the command communication unit 1217 registers the notified service ID in the service management table 1400a (step 1503), and the registered service ID. As the address corresponding to, the execution destination addresses of the services 200 and 1200 notified in step 1500 are registered (step 1504).

実施の形態2における状態監視テーブル300への機器IDとサービスIDの登録及び削除のフローは、サービス1200の起動及び終了をコマンド通信部1217を介して行う点を除き、図7及び図8に示すフローと同様であるので、説明を省略する。また、実施の形態2におけるループ制御を検出するフローは、図10に示すフローと同様であるため説明を省略する。   The device ID and service ID registration and deletion flows in the state monitoring table 300 according to the second embodiment are shown in FIGS. 7 and 8 except that the service 1200 is started and ended via the command communication unit 1217. Since this is the same as the flow, the description is omitted. Further, the flow for detecting the loop control in the second embodiment is the same as the flow shown in FIG.

尚、起動通知APIにより通知される情報に、サービス200、1200が状態を監視する対象の機器150の機器IDを含めるようにしてもよい。これに合わせて、コマンド通信部1217が、起動通知APIにより通知されたサービスIDと監視対象の機器IDとを状態監視部214へ通知するようにしてもよい。そして、状態監視部214が、図7に示すフローに基づき、ステップ400で機器状態監視APIにより通知された機器IDとサービスIDと同様、当該コマンド通信部1217から通知された機器IDとサービスIDとを状態監視テーブル300に登録するようにしてもよい。   Note that the information notified by the activation notification API may include the device ID of the device 150 that the service 200, 1200 monitors the status of. In accordance with this, the command communication unit 1217 may notify the status monitoring unit 214 of the service ID notified by the activation notification API and the device ID to be monitored. Then, based on the flow shown in FIG. 7, the state monitoring unit 214 uses the device ID and service ID notified from the command communication unit 1217 in the same manner as the device ID and service ID notified by the device state monitoring API in step 400. May be registered in the state monitoring table 300.

この場合、外部装置において起動されたサービス1200が、起動通知APIを用いてサービス1200の起動通知を行った後、更に、図7に示すステップ400において、広域ネットワーク130を介して機器状態監視APIを呼び出し、当該サービス1200が状態の監視する対象の機器150の機器IDと当該サービス1200のサービスIDとを通知することを省略することができる。これにより、外部装置との通信回数を低減することができる。   In this case, after the service 1200 activated in the external device notifies the activation of the service 1200 using the activation notification API, the device status monitoring API is further transmitted via the wide area network 130 in step 400 shown in FIG. Calling and notifying the device ID of the target device 150 to be monitored by the service 1200 and the service ID of the service 1200 can be omitted. Thereby, the frequency | count of communication with an external device can be reduced.

以下、実施の形態2において、ループ制御を検出した後の処理について、図20を用いて説明する。図20は、実施の形態2においてループ制御を解消する処理フローの一例を示す図である。   Hereinafter, the processing after the loop control is detected in the second embodiment will be described with reference to FIG. FIG. 20 is a diagram illustrating an example of a processing flow for canceling loop control in the second embodiment.

図10に示すフローに従ってループ制御の発生の原因となるサービス200、1200が競合判断部213によって特定された場合(ステップ1600)、ステップ1001と同様にして、サービス管理部211は、当該特定されたサービス200、1200の中から終了させる対象のサービス200、1200(以下、終了サービス200、1200)を決定する。そして、サービス管理部211は、当該決定した終了サービス200、1200の終了要求を発行し、当該終了要求をコマンド通信部1217へ通知する(ステップ1601)。   When the services 200 and 1200 that cause the occurrence of the loop control are identified by the contention determination unit 213 according to the flow illustrated in FIG. 10 (step 1600), the service management unit 211 performs the identification in the same manner as in step 1001. The service 200, 1200 to be terminated is determined from the services 200, 1200 (hereinafter, the termination service 200, 1200). Then, the service management unit 211 issues a termination request for the determined termination services 200 and 1200, and notifies the command communication unit 1217 of the termination request (step 1601).

コマンド通信部1217は、サービス管理部211から終了サービス200、1200の終了要求の通知を受けると、サービス管理テーブル1400aを参照し、終了サービス200、1200のサービスIDに対応するアドレスを取得する。コマンド通信部1217は、取得したアドレス宛に終了サービス200、1200の終了要求を送信する(ステップ1602)。   When the command communication unit 1217 receives a notification of the termination request for the termination services 200 and 1200 from the service management unit 211, the command communication unit 1217 refers to the service management table 1400a and acquires an address corresponding to the service ID of the termination services 200 and 1200. The command communication unit 1217 transmits a termination request for the termination services 200 and 1200 to the acquired address (step 1602).

これにより、ステップ1602において、外部装置へ終了サービス1200の終了要求が送信された場合、当該終了要求を受け取った外部装置は、当該終了サービス1200の終了処理を行う。一方、ステップ1602において、ホームコントローラ100へ終了サービス200の終了要求が送信された場合、上述したように、図12に示すステップ1002と同様の処理が行われる。   As a result, when a termination request for the termination service 1200 is transmitted to the external device in step 1602, the external device that has received the termination request performs termination processing for the termination service 1200. On the other hand, when a termination request for the termination service 200 is transmitted to the home controller 100 in step 1602, as described above, the same processing as in step 1002 shown in FIG. 12 is performed.

その後、表示生成部216は、図12に示すステップ1003と同様にして、図13に示す通知画面W1又は図14に示す通知画面W2に含めるメッセージを生成し、当該生成したメッセージを含む通知画面W1又は通知画面W2を表示部104に表示させる(ステップ1603)。   Thereafter, the display generation unit 216 generates a message to be included in the notification screen W1 illustrated in FIG. 13 or the notification screen W2 illustrated in FIG. 14 in the same manner as Step 1003 illustrated in FIG. 12, and the notification screen W1 including the generated message. Alternatively, the notification screen W2 is displayed on the display unit 104 (step 1603).

尚、ステップ1602において、コマンド通信部1217が、外部装置へ終了サービス1200の終了要求を送信したとしても、当該外部装置において当該終了サービス200の終了処理を実行する権限が与えられていない、又は、通信障害が発生し、終了サービス1200の終了要求が当該外部装置において受信されない等の理由によって、当該終了サービス1200の終了処理が行われない可能性がある。   In step 1602, even if the command communication unit 1217 transmits a termination request for the termination service 1200 to the external device, the external device is not authorized to execute termination processing for the termination service 200, or There is a possibility that the termination process of the termination service 1200 is not performed due to a communication failure and the termination request of the termination service 1200 not being received by the external device.

このため、ステップ1602において、コマンド通信部1217が、外部装置へ終了サービス1200の終了要求を送信することに代えて、コマンド通信部1217が、終了サービス1200から送信される機器150の制御要求を拒否するようにし、当該制御要求を拒否する旨を当該終了サービス1200に返信するようにしてもよい。これにより、当該終了サービス1200を利用するユーザに、当該終了サービス1200による機器150の制御が拒否されていることを知らせるようにしてもよい。   Therefore, in step 1602, the command communication unit 1217 rejects the control request for the device 150 transmitted from the end service 1200, instead of the command communication unit 1217 transmitting the end request for the end service 1200 to the external device. The end service 1200 may be returned to the effect that the control request is rejected. Thereby, the user who uses the termination service 1200 may be notified that the control of the device 150 by the termination service 1200 is denied.

当該構成は、以下のようにして実現することができる。サービス管理テーブル1400aの構成を、図21に示すサービス管理テーブル1400bのような構成に変更すればよい。つまり、サービス管理テーブル1400aにおいて、起動されたサービス200、1200のサービスIDと、当該サービス200、1200が実行可能な装置のアドレスと、に加え、少なくとも、当該サービス200、1200を終了することができる終了権限を有するか否かを示すフラグ(図21におけるサービス終了権限)と、を対応付けたサービス管理情報を管理するようにすればよい。   This configuration can be realized as follows. What is necessary is just to change the structure of the service management table 1400a to a structure like the service management table 1400b shown in FIG. That is, in the service management table 1400a, in addition to the service IDs of the activated services 200 and 1200 and the addresses of devices that can execute the services 200 and 1200, at least the services 200 and 1200 can be terminated. What is necessary is just to manage the service management information which matched the flag (service termination authority in FIG. 21) which shows whether it has termination authority.

尚、上記フラグは、起動通知APIにより通知される情報に更に付加して、サービス200、1200から通知されるようにすればよい。そして、図19に示すステップ1504において、ステップ1500で起動通知APIにより通知されたサービス200、1200の実行先のアドレスを登録する際に、更に、起動通知APIにより通知されるようになった上記フラグを、当該サービス200、1200のサービスIDと対応付けて登録するようにすればよい。   The flag may be added to information notified by the activation notification API so as to be notified from the services 200 and 1200. Then, in step 1504 shown in FIG. 19, when the execution destination addresses of the services 200 and 1200 notified by the activation notification API in step 1500 are registered, the flag that is further notified by the activation notification API. May be registered in association with the service ID of the service 200, 1200.

そして、ステップ1602において、コマンド通信部1217が、サービス管理部211から終了サービス200、1200の終了要求の通知を受けた場合に、当該変更した構成のサービス管理テーブル1400aにおいて当該終了サービス200、1200のサービスIDに対応する上記フラグが終了権限を有しないことを示しているときは、当該終了サービス1200からの制御要求を拒否するようにすればよい。そして、当該制御要求を拒否する旨を当該終了サービス1200に返信するようにすればよい。   In step 1602, when the command communication unit 1217 receives a notification of the termination request for the termination service 200 or 1200 from the service management unit 211, the command management unit 1217 stores the termination service 200 or 1200 in the modified service management table 1400 a. When the flag corresponding to the service ID indicates that no termination authority is given, the control request from the termination service 1200 may be rejected. Then, what is necessary is to return to the end service 1200 that the control request is rejected.

尚、ステップ1602において、コマンド通信部1217が、通信障害の発生等によって、サービス1200の終了要求を外部装置に正常に送信できなかったときにも、当該サービス1200からの機器150の制御要求を拒否するようにしてもよい。   In step 1602, the command communication unit 1217 rejects the control request for the device 150 from the service 1200 even when the request for termination of the service 1200 cannot be normally transmitted to the external device due to the occurrence of a communication failure or the like. You may make it do.

これらのように構成することにより、ホームコントローラ100が終了する権限を持たないサービス1200による制御の実行によってループ制御が発生した場合でも、当該ループ制御を解消することが可能となる。   With such a configuration, even when loop control occurs due to execution of control by the service 1200 that the home controller 100 does not have authority to end, the loop control can be canceled.

また、サービス管理テーブル1400aを、図21に示すサービス管理テーブル1400bのように、起動されたサービス200、1200のサービスIDと、当該サービス200、1200が実行可能な装置のアドレスと、に加え、少なくとも、当該サービス200、1200を起動したユーザを識別するユーザIDと、当該ユーザに関連付けられた端末のアドレスと、を対応付けたサービス管理情報を管理する構成に変更してもよい。   In addition to the service management table 1400a, as in the service management table 1400b shown in FIG. 21, in addition to the service IDs of the activated services 200 and 1200 and the addresses of devices that can execute the services 200 and 1200, at least The service management information in which the user ID for identifying the user who started the services 200 and 1200 is associated with the address of the terminal associated with the user may be changed.

尚、ユーザIDは、起動通知APIにより通知される情報に更に付加して、サービス200、1200から通知されるようにすればよい。ユーザに関連付けられた端末のアドレスは、当該ユーザのユーザIDと予め対応付けて二次記憶部103に記憶しておけばよい。そして、図19に示すステップ1504において、ステップ1500で起動通知APIにより通知されたサービス200、1200の実行先のアドレスを登録する際に、更に、起動通知APIにより通知されるようになったユーザIDと、当該ユーザIDに対応付けて二次記憶部103に記憶されている端末のアドレスと、を当該サービス200、1200のサービスIDと対応付けて登録するようにすればよい。   The user ID may be further added to the information notified by the activation notification API so as to be notified from the services 200 and 1200. The address of the terminal associated with the user may be stored in the secondary storage unit 103 in advance in association with the user ID of the user. In step 1504 shown in FIG. 19, when registering the execution destination addresses of the services 200 and 1200 notified by the activation notification API in step 1500, the user ID that is further notified by the activation notification API. And the address of the terminal stored in the secondary storage unit 103 in association with the user ID may be registered in association with the service ID of the service 200, 1200.

これに合わせて、ステップ1603の処理に加え、コマンド通信部1217が、当該変更した構成のサービス管理テーブル1400aにおいて、ステップ1602で受け取った終了要求が示す終了サービス200、1200のサービスIDと対応付けられている端末のアドレスを取得するようにしてもよい。そして、コマンド通信部1217が、当該取得したアドレス宛に、ステップ1603で表示生成部216が生成したメッセージを通知するようにしてもよい。   Accordingly, in addition to the processing in step 1603, the command communication unit 1217 associates with the service ID of the end service 200, 1200 indicated by the end request received in step 1602 in the service management table 1400a having the changed configuration. You may make it acquire the address of the terminal which has it. Then, the command communication unit 1217 may notify the message generated by the display generation unit 216 in step 1603 to the acquired address.

このように構成することにより、他のユーザが利用するサービス200、1200に影響を与えることなく、終了サービス200、1200を起動したユーザに、当該終了サービス200、1200による機器150の制御の内容を見直させることができる。   By configuring in this way, the content of the control of the device 150 by the termination service 200, 1200 can be given to the user who started the termination service 200, 1200 without affecting the services 200, 1200 used by other users. It can be reviewed.

本開示は、ホームネットワークに接続された機器、当該機器を遠隔制御するホームコントローラ及びホームコントローラを介して実行されるサービスにおいて有用である。   The present disclosure is useful for a device connected to a home network, a home controller that remotely controls the device, and a service executed via the home controller.

100 ホームコントローラ(制御装置)
101 中央処理部
102 主記憶部(管理部)
103 二次記憶部
104 表示部
105 入力部
106 ホームネットワーク通信部
107 広域ネットワーク通信部
120 ホームネットワーク
130 広域ネットワーク
140 アプリケーションサーバ
150 機器
150a エアコン(機器)
150b 照明(機器)
200 サービス
200a 快適空調サービス(サービス)
200b 家中省エネサービス(サービス)
200c 快適調光サービス(サービス)
210,1210 サービス制御部
211 サービス管理部(終了部)
212 サービス実行部
213 競合判断部(検出部)
214 状態監視部
215 機器制御部
216 表示生成部
1200 サービス
1200a 快適空調サービス
1200b 家中省エネサービス
1201 クラウドサーバ
1202 外部端末
1217 コマンド通信部
100 Home controller (control device)
101 Central processing unit 102 Main storage unit (management unit)
103 secondary storage unit 104 display unit 105 input unit 106 home network communication unit 107 wide area network communication unit 120 home network 130 wide area network 140 application server 150 device 150a air conditioner (device)
150b Lighting (equipment)
200 service 200a Comfortable air conditioning service (service)
200b Household energy saving service (service)
200c Comfortable dimming service (service)
210, 1210 Service control unit 211 Service management unit (end unit)
212 Service execution unit 213 Competition determination unit (detection unit)
214 Status monitoring unit 215 Device control unit 216 Display generation unit 1200 Service 1200a Comfortable air conditioning service 1200b Home energy saving service 1201 Cloud server 1202 External terminal 1217 Command communication unit

Claims (13)

ネットワークに接続された機器を制御するサービスを2以上実行する制御装置における制御方法であって、
実行された前記サービスを識別する情報、当該サービスにより制御された機器を識別する情報、及び当該制御の内容に関する情報に基づき、以上の前記機器の状態情報を管理し、
同一の機器の前記状態情報に基づき、前記同一の機器に対する、第1のサービスによる第1の制御の実行と第2のサービスによる第2の制御の実行との繰り返しによって、前記第1のサービスによる前記第1の制御が所定回数以上実行されていることを検出し、
前記繰り返しによって、前記第1のサービスによる前記第1の制御が所定回数以上実行されていることが検出された場合に、前記第1のサービスと前記第2のサービスの少なくとも一方を終了するための終了要求を発行する、
制御方法。
A control method in a control device that executes two or more services for controlling devices connected to a network,
Based on information for identifying the executed service, information for identifying a device controlled by the service, and information on the content of the control, manage status information of one or more devices,
Based on the status information of the same device, against the same instrument, by the execution of the first control of the first service and the repetition of the execution of the second control by the second service, the first Detecting that the first control by the service is executed a predetermined number of times or more;
For ending at least one of the first service and the second service when it is detected by the repetition that the first control by the first service is executed a predetermined number of times or more. Issue a termination request,
Control method.
前記第1のサービス及び前記第2のサービスのうち、先に起動されたサービスに対して前記終了要求を発行する、
請求項1記載の制御方法。
Of the first service and the second service, issue the termination request to the service activated first,
The control method according to claim 1.
前記第1のサービス及び前記第2のサービスのうち、後に起動されたサービスに対して前記終了要求を発行する、
請求項1記載の制御方法。
Of the first service and the second service, issue the termination request to a service activated later.
The control method according to claim 1.
前記第1のサービス及び前記第2のサービスのうち、予め設定されたサービス以外のサービスに対して前記終了要求を発行する、
請求項1記載の制御方法。
Issuing the termination request to a service other than a preset service among the first service and the second service;
The control method according to claim 1.
前記制御方法は、さらに、
前記繰り返しの発生により前記終了要求が発行された旨をユーザに通知するための通知情報を発行する、
請求項1記載の制御方法。
The control method further includes:
Issuing notification information for notifying the user that the termination request has been issued due to the occurrence of the repetition;
The control method according to claim 1.
前記通知情報は、さらに、前記繰り返しの発生の原因となったサービスを識別するための情報を含む、
請求項5記載の制御方法。
The notification information further includes information for identifying the service that caused the occurrence of the repetition.
The control method according to claim 5.
前記通知情報は、さらに、前記繰り返しが発生している機器及び当該機器における制御内容を含む、
請求項6記載の制御方法。
The notification information further includes a device in which the repetition occurs and a control content in the device.
The control method according to claim 6.
起動された前記サービスを識別する情報、当該サービスを起動したユーザを識別する情報、及び当該ユーザに関連づけられた端末を識別する情報を対応づけたサービス管理情報を更に管理し、
前記通知情報は、前記終了要求が発行されたサービスを起動したユーザに関連づけられた端末に対して送信される、
請求項5記載の制御方法。
Further managing service management information associating information for identifying the activated service, information for identifying a user who has activated the service, and information for identifying a terminal associated with the user;
The notification information is transmitted to a terminal associated with the user who started the service for which the termination request has been issued.
The control method according to claim 5.
前記状態情報として、実行された前記サービスを識別する情報、当該サービスにより制御された機器を識別する情報、当該制御の内容に関する情報、及び当該制御が実行された回数を対応づけた制御情報を管理し、
所定時間が経過する度に、所定のサービスに対応する前記制御情報を削除する、
請求項1記載の制御方法。
As the status information, information for identifying the executed service, information for identifying a device controlled by the service, information on the content of the control, and control information that associates the number of times the control has been executed are managed. And
Deleting the control information corresponding to a predetermined service each time a predetermined time elapses;
The control method according to claim 1.
前記状態情報として、実行された前記サービスを識別する情報、当該サービスにより制御された機器を識別する情報、当該制御の内容に関する情報、及び当該制御が実行された回数を対応づけた制御情報と、前記機器を識別する情報及び当該機器の状態を監視中の一以上の前記サービスを識別する情報を対応づけた状態監視情報と、を管理し、
前記制御情報と前記状態監視情報とに基づき、前記繰り返しが前記所定回数以上発生していることを検出する、
請求項1又は9に記載の制御方法。
As the status information, information for identifying the executed service, information for identifying a device controlled by the service, information on the content of the control, and control information in which the number of times the control is executed are associated with each other, Managing the information for identifying the device and the status monitoring information associated with the information for identifying one or more of the services that are monitoring the status of the device;
Based on the control information and the state monitoring information, detecting that the repetition has occurred more than the predetermined number of times,
The control method according to claim 1 or 9.
前記サービスは、ネットワークを介して前記制御装置と接続されたサービス提供装置により提供されており、
前記サービス提供装置から提供される前記サービスを終了するための終了要求を発行することに代えて、当該サービスによって前記機器を制御するための要求を拒否する、
請求項1記載の制御方法。
The service is provided by a service providing device connected to the control device via a network,
Instead of issuing a termination request for terminating the service provided from the service providing apparatus, a request for controlling the device by the service is rejected.
The control method according to claim 1.
ネットワークに接続された機器を制御するサービスを2以上実行する制御装置であって、
実行された前記サービスを識別する情報、当該サービスにより制御された機器を識別する情報、及び当該制御の内容に関する情報に基づき、一以上の前記機器の状態情報を管理する管理部と、
同一の機器の前記状態情報に基づき、前記同一の機器に対する、第1のサービスによる第1の制御の実行と第2のサービスによる第2の制御の実行との繰り返しによって、前記第1のサービスによる前記第1の制御が所定回数以上実行されていることを検出する検出部と、
前記繰り返しによって、前記第1のサービスによる前記第1の制御が所定回数以上実行されていることが検出された場合に、前記第1のサービスと前記第2のサービスの少なくとも一方を終了するための終了要求を発行する終了部と、
を備える制御装置。
A control device that executes two or more services for controlling devices connected to a network,
A management unit that manages status information of one or more devices based on information identifying the executed service, information identifying a device controlled by the service, and information on the content of the control;
Based on the status information of the same device, against the same instrument, by the execution of the first control of the first service and the repetition of the execution of the second control by the second service, the first A detection unit for detecting that the first control by the service is executed a predetermined number of times or more;
For ending at least one of the first service and the second service when it is detected by the repetition that the first control by the first service is executed a predetermined number of times or more. An end part for issuing an end request;
A control device comprising:
コンピュータを、ネットワークに接続された機器を制御するサービスを2以上実行する制御装置として機能させるためのプログラムであって、
前記コンピュータに、
実行された前記サービスを識別する情報、当該サービスにより制御された機器を識別する情報、及び当該制御の内容に関する情報に基づき、一以上の前記機器の状態情報を管理させ、
同一の機器の前記状態情報に基づき、前記同一の機器に対する、第1のサービスによる第1の制御の実行と第2のサービスによる第2の制御の実行との繰り返しによって、前記第1のサービスによる前記第1の制御が所定回数以上実行されていることを検出させ、
前記繰り返しによって、前記第1のサービスによる前記第1の制御が所定回数以上実行されていることが検出された場合に、前記第1のサービスと前記第2のサービスの少なくとも一方を終了するための終了要求を発行させる、
プログラム。
A program for causing a computer to function as a control device that executes two or more services for controlling devices connected to a network,
In the computer,
Based on information for identifying the executed service, information for identifying a device controlled by the service, and information on the content of the control, the status information of one or more of the devices is managed,
Based on the status information of the same device, against the same instrument, by the execution of the first control of the first service and the repetition of the execution of the second control by the second service, the first Detecting that the first control by the service is executed a predetermined number of times or more;
For ending at least one of the first service and the second service when it is detected by the repetition that the first control by the first service is executed a predetermined number of times or more. Issue a termination request,
program.
JP2016017793A 2015-05-22 2016-02-02 Control method, control device, and program Expired - Fee Related JP6615628B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201610261743.3A CN106168763B (en) 2015-05-22 2016-04-25 Control method and controller
EP16169193.6A EP3096494B1 (en) 2015-05-22 2016-05-11 Control method, controller, and recording medium
US15/156,337 US10063386B2 (en) 2015-05-22 2016-05-17 Control method, controller, and recording medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015104636 2015-05-22
JP2015104636 2015-05-22

Publications (2)

Publication Number Publication Date
JP2016218993A JP2016218993A (en) 2016-12-22
JP6615628B2 true JP6615628B2 (en) 2019-12-04

Family

ID=57578571

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016017793A Expired - Fee Related JP6615628B2 (en) 2015-05-22 2016-02-02 Control method, control device, and program

Country Status (1)

Country Link
JP (1) JP6615628B2 (en)

Also Published As

Publication number Publication date
JP2016218993A (en) 2016-12-22

Similar Documents

Publication Publication Date Title
JP6140214B2 (en) CONTROL DEVICE, CONTROL DEVICE CONTROL METHOD, CONTROL SYSTEM, ENVIRONMENT CONTROL DEVICE, AND CONTROL PROGRAM
US8909356B2 (en) Appliance control device, registration method of appliance control device, and program
JP5960184B2 (en) COMMUNICATION SYSTEM, CONTROL DEVICE, SERVER DEVICE, CONTROL METHOD, AND INFORMATION PROCESSING METHOD
WO2018010533A1 (en) Device control system, method and apparatus, and gateway
CN104765291A (en) Method, device and gateway for controlling intelligent device
US20210167984A1 (en) Method for controlling an air conditioner, communication control method, and communication system
CN106559473A (en) Control method and control device
US11074059B2 (en) Non-transitory computer-readable recording medium storing instructions controlling operation of mobile terminal
CN108490896B (en) Home appliance control method, home appliance and storage medium
JP2018107684A (en) Communication apparatus, communication system, device, program and communication control method
KR20170003372A (en) Control apparatis and control system
JP7366718B2 (en) Communications system
US11985574B2 (en) Environment control system for controlling environmental conditions in a building
US20170094035A1 (en) Management method and management device
WO2020034522A1 (en) Method and apparatus for connecting to network, smart device, and user terminal
CN109974208B (en) Air conditioning system, control method, control terminal and storage medium
JP6615628B2 (en) Control method, control device, and program
US9922552B2 (en) Method of controlling device in manner free from contention among multiple controllers
US9979811B2 (en) Controller, control system, and method for controlling control system
CN106168763B (en) Control method and controller
TW201722207A (en) Control System
JP2017055482A (en) Control device and home appliance control method
CN105333574B (en) The recognition methods of base station air conditioner system connected mode and base station air conditioner system
CN111478830A (en) Remote operation system, communication device, and computer program
CN114785913B (en) Display device and device information processing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180827

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190724

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190806

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191007

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: 20191023

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191106

R150 Certificate of patent or registration of utility model

Ref document number: 6615628

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees