Patent Description:
The present disclosure relates to an electronic device, a server, an electronic device controlling method, an information processing method and a recording medium.

As various types of electronic devices spread, cases in which electronic devices can operate in association with each other are increasing. Realization of such an association operation expands functionalities of the devices, and may be said to give a new added value to the devices. However, since such an association between the devices is often realized through processes within the devices according to programs incorporated in the respective devices in advance, it is difficult to trace realized association operations and executable association operations later.

In such a situation, for example, a technology for issuing a user ID to a digital camera performing an association operation with a server, and providing service and executing a billing process based on this user ID is described in Patent Literature <NUM>.

The patent application U5<CIT> discloses a first communication device (e.g., a radio) and a second communication device (e.g., an accessory) implement a wireless device pairing procedure to exchange numerical credentials so that the devices can subsequently form a link for communications using electromagnetic radio signals. The accessory transmits a beacon comprises a pairing request. Upon a user bringing the radio and accessory in close enough proximity, the radio receives the beacon using near-field apparatus included in the radio. In response to receiving the beacon, the radio initiates a pairing procedure, wherein the pairing procedure comprises a data exchange between the radio and accessory, and wherein the beacon and the data exchange comprise a non-propagating radio signal generated using the near-field apparatus. Upon completing the pairing procedure, the radio forms a link with the accessory to communicate using propagating electromagnetic radio signals.

However, in the technology described in Patent Literature <NUM> described above, the server which is the one device performing the association operation manages the association operation of the digital camera using the user ID. Therefore, it is difficult for the association operation between the digital camera and another device, for example, a smartphone, to be managed using this technology. Thus, it is difficult to say that technology proposed so far for managing the association operation without limitation between specific devices is sufficient.

Therefore, an electronic device, a server, a method of controlling the electronic device, an information processing method, and a recording medium which are new and improved and are capable of managing an association operation without limitation between specific devices are proposed in this disclosure.

According to a first aspect, the invention provides an information management device in accordance with independent claim <NUM>. According to a second aspect, the invention provides an information processing system in accordance with claim <NUM>. According to a third aspect, the invention provides an information processing method in accordance with independent claim <NUM>. According to a fourth aspect, the invention provides a non-transitory computer readable storage device in accordance with claim <NUM>. Further aspects of the invention are set forth in the dependent claims, the drawings and the following description.

According to one embodiment, an information processing device is described that includes.

According to an information processing system embodiment, the system includes an information management device including.

According to an information processing method embodiment, the method includes receiving via an interface authentication information from an electronic device; and identifying with the circuitry an execution range of an association operation program executed by the electronic device based on the authentication program, the execution range being indicative of an authentication of an association between the electronic device and another electronic device.

According to a non-transitory computer readable storage device embodiment, the storage device includes instructions that when executed by a computer cause the computer to execute an information processing method, the method including receiving via an interface authentication information from an electronic device; and identifying with the circuitry an execution range of an association operation program executed by the electronic device based on the authentication information, the execution range being indicative of an authentication of an association between the electronic device and another electronic device.

As described above, according to this disclosure, it is possible to manage the association operation without limitation between specific devices.

Hereinafter, preferred embodiments of this disclosure will be described in detail with reference to the accompanying drawings. Further, in the present specification and drawings, components having substantially the same functional configuration are denoted with the same reference signs and a repeated description thereof is omitted.

Further, a description will be given in the following order.

First, a configuration of a system according to one embodiment of this disclosure will be described with reference to <FIG> and <FIG>.

<FIG> is a diagram illustrating a schematic configuration of a system according to one embodiment of this disclosure. Referring to <FIG>, a system <NUM> according to one embodiment of this disclosure may include an electronic device <NUM>, a script server <NUM>, another electronic device <NUM>, a management server <NUM>, and a publisher <NUM>.

In the illustrated example, the electronic device <NUM> and the other electronic device <NUM> may be any devices manipulated by a user and may be, for example, any devices each having an information processing functionality and a network communication functionality, such as a mobile phone (smartphone), a PC (Personal Computer), a television, a recorder, a game console, and a media player. Further, the other electronic device <NUM> may be, for example, an electronic device used in proximity to the electronic device <NUM>, but may be a server different from the script server <NUM> and the management server <NUM>, which is connected to the electronic device <NUM> over a network. The server, for example, may provide services on social media to the electronic device <NUM>. The electronic device <NUM> performs an association operation with the other electronic device <NUM> by being controlled according to an association operation script distributed from the script server <NUM>. The association operation script may also be similarly distributed to the other electronic device <NUM> or prepared in the other electronic device <NUM> in advance, and the other electronic device <NUM> may perform an association operation with the electronic device <NUM> by being controlled according to the association operation script. Further, a mechanism of such an association operation will be described below in detail.

Here, the association operation script distributed by the script server <NUM> is provided by the publisher <NUM>. The publisher <NUM> is an entity which acquires a script format managed in the management server <NUM> and develops and publishes the association operation script according to the format. Therefore, the illustrated publisher <NUM> may indicate an individual or a corporation itself who acts as a publisher or a terminal device used for the individual or the corporation to receive the script format from the management server <NUM> and upload the association operation script to the script server <NUM> according to context.

In this embodiment, the association operation script may be distributed for a fee in the script server <NUM>. In this case, the publisher <NUM>, for example, receives a value paid by a user of the electronic device <NUM> and/or the other electronic device <NUM> which has downloaded the association operation script from the script server <NUM>. Alternatively, the association operation script may be provided for free in the script server <NUM>. In this case, the publisher <NUM> receives, for example, an advertisement charge from an advertiser of an advertisement which is distributed together with the association operation script and output in the electronic device <NUM> and/or the other electronic device <NUM>.

Meanwhile, a log is transmitted from the electronic device <NUM> and/or the other electronic device <NUM> which has downloaded the association operation script and executed the association operation, to the management server <NUM>. The log includes information on the executed association operation using the association operation script in the electronic device <NUM> and/or the other electronic device <NUM>.

Here, in this embodiment, a script format provided from the management server <NUM> to the publisher <NUM> is accompanied by authentication information. The authentication information is incorporated, for example, in a fixed form part of the script format, and the authentication information can be confirmed even in the association operation script developed according to the script format. Therefore, the electronic device <NUM> and/or the other electronic device <NUM> can associate the authentication information accompanying the association operation script with the log which is transmitted to the management server <NUM> when the association operation has been executed. As a result, the management server <NUM> can recognize that the association operation has been actually executed between the electronic device <NUM> and the other electronic device <NUM>, using the script format provided to the publisher <NUM>.

<FIG> is a block diagram illustrating schematic functional configurations of the electronic device and the management server according to one embodiment of this disclosure. Hereinafter, configurations of the electronic device <NUM> and the management server <NUM> included in the system <NUM> described above will be described in greater detail with reference to <FIG>.

The electronic device <NUM> is any device manipulated by a user, and may be, for example, any device having an information processing functionality and a network communication functionality, such as a mobile phone (smartphone), a PC (Personal Computer), a television, a recorder, a game console, or a media player, as described above. The electronic device <NUM> includes a processor <NUM>, a communication unit <NUM>, and a storage unit <NUM>. The electronic device <NUM> may be realized, for example, by a hardware configuration of an information processing device, which will be described below. In a hardware configuration example, the processor <NUM> may be realized by a CPU, a ROM, a RAM and the like. The communication unit <NUM> may be realized by a communication device. The storage unit <NUM> may be realized by, for example, a storage device and/or a removable storage medium.

The processor <NUM> may realize functionalities of a control unit <NUM>, a transmission unit <NUM> and a reception unit <NUM> by operating according to a program. The processor <NUM> may also realize various functionalities for overall control of the electronic device <NUM>, but the functionalities are different according to devices and are well known to a person skilled in the art. Therefore, a description of differences of the functionalities is omitted herein. Hereinafter, each of the functionalities will be further described.

The control unit <NUM> controls the electronic device <NUM> according to the association operation script provided from the script server <NUM> and executes an association operation with the other electronic device <NUM>. An association operation script <NUM> used by the control unit <NUM>, for example, may be at least temporarily stored in the storage unit <NUM>. The association operation script <NUM> is accompanied by authentication information <NUM>, as described above.

Here, the control unit <NUM> may determine an execution range of the association operation script <NUM> based on the authentication information <NUM>. More specifically, when the association operation script <NUM> is not accompanied by the authentication information <NUM>, the control unit <NUM> may be set not to execute the association operation script <NUM> (to determine that there is no execution range). Alternatively, the control unit <NUM> may be set to limit a functionality of the electronic device <NUM> available in the association operation when the association operation script <NUM> is not accompanied by the authentication information <NUM> in executing the association operation script <NUM>. In this case, the association operation script <NUM> includes a first part in which permission based on the authentication information <NUM> is necessary for execution, and a second part in which the permission based on the authentication information is not necessary for execution, and the control unit <NUM> may execute the second part regardless of the authentication information <NUM>. Further, it may be determined whether the association operation script <NUM> is accompanied by the authentication information <NUM> (whether the accompanied authentication information <NUM> is correct), for example, based on information stored in the storage unit <NUM> in advance or based on information obtained through inquiry to the management server <NUM> via the transmission unit <NUM>, the reception unit <NUM> and the communication unit <NUM>.

Further, the control unit <NUM> may inquire the execution range of the association operation script <NUM> of the management server <NUM> via the transmission unit <NUM>. In this case, a request including the authentication information <NUM> is transmitted from the transmission unit <NUM> to the management server <NUM>. Information indicating the execution range of the association operation script <NUM> may be included in a response produced by the management server <NUM> in response to the request and received by the reception unit <NUM>. The execution range may be set to full or nothing or the execution range may be set so that only some operations are restricted. The control unit <NUM> executes the association operation script <NUM> within the execution range indicated by the information included in the response. Accordingly, the execution range of the association operation script <NUM> in the electronic device <NUM> can be dynamically controlled from the management server <NUM>.

Further, when the control unit <NUM> has executed the association operation using the association operation script <NUM>, the control unit <NUM> may generate a log <NUM> related to the association operation and at least temporarily store the log in the storage unit <NUM>. The log <NUM> is associated with the authentication information <NUM> accompanying the association operation script <NUM>. Further, information indicating the other electronic device <NUM> which is an association partner or information transmitted or received through the association operation may be included in the log <NUM> in addition to information (e.g., time, a number of times, or duration) indicating that the association operation has been executed. The log <NUM> at least temporarily stored in the storage unit <NUM> may be transmitted to the management server <NUM> by the transmission unit <NUM> via the communication unit <NUM>.

The transmission unit <NUM> may transmit the request including the authentication information <NUM> to the management server <NUM>, as described above. In this case, the reception unit <NUM> receives, from the management server <NUM>, the response including the information indicating the execution range of the association operation script <NUM>, which is generated by the management server <NUM> in response to the request. Further, the transmission unit <NUM> may transmit the log <NUM> related to the association operation to the management server <NUM>. In this case, the reception unit <NUM> may receive payment information which has been generated by the management server <NUM> based on the transmitted log.

Further, the transmission unit <NUM> may transmit device identification information of the electronic device <NUM> to the script server <NUM> over the network. In this case, the reception unit <NUM> may receive the association operation script <NUM> acquired in the script server <NUM> based on the transmitted device identification information, together with the authentication information <NUM>. As described above, the association operation script <NUM> is used for the association operation between the electronic device <NUM> and the other electronic device <NUM>. Device identification information of the other electronic device <NUM> may be detected in the electronic device <NUM> and then transmitted from the transmission unit <NUM> or may be detected in the script server <NUM>.

Here, in this embodiment, a signature given by a manager of the management server <NUM> may be included in the authentication information <NUM> accompanying the association operation script <NUM>. With this signature, for example, falsification of the authentication information <NUM> stored in the storage unit <NUM> in the electronic device <NUM> or falsification of the authentication information <NUM> accumulated in the script server <NUM> or the like before the authentication information <NUM> is distributed to the electronic device <NUM> can be prevented.

The management server <NUM> is a server on the network, and provides services to one or a plurality of electronic devices <NUM>. The management server <NUM> includes a processor <NUM>, a communication unit <NUM>, and a storage unit <NUM>. The functionality of the management server <NUM> may be realized by, for example, a single server device connected to the network. Alternatively, the functionality of the management server <NUM> may be realized in such a manner to be distributed to a plurality of server devices. In this case, the plurality of server devices cooperate over the network. The server device may be realized by, for example, a hardware configuration of the information processing device which will be described below. In a hardware configuration example, the processor <NUM> may be realized by a CPU, a ROM, a RAM and the like. The communication unit <NUM> may be realized by a communication device. The storage unit <NUM> may be realized by, for example, a storage device and/or a removable storage medium.

The processor <NUM> can realize functionalities of a reception unit <NUM>, a collection unit <NUM>, a determination unit <NUM>, a payment processing unit <NUM>, and a transmission unit <NUM> by operating according to a program. The processor <NUM> may realize various other functionalities for overall control of the management server <NUM>, but these functionalities are well known to a person skilled in the art. Therefore, a description of the functionalities is omitted herein. Hereinafter, each function described above will be further described.

Further, here, a script format <NUM>, authentication information <NUM> and a log <NUM> are stored in such a manner to be associated with each other in the storage unit <NUM> of the management server <NUM>. The script format is a format provided from the management server <NUM> to the publisher <NUM>, which develops an association operation script according to the script format <NUM>, as described above. The developed association operation script is accompanied by the authentication information <NUM> which is in a form that can be confirmed. Therefore, when the electronic device <NUM> executes the association operation according to the association operation script <NUM>, the electronic device <NUM> may acquire the authentication information <NUM> accompanying the association operation script <NUM>, and transmit the authentication information <NUM> to the management server <NUM> in advance to inquire the execution range of the association operation script <NUM> or transmit the authentication information <NUM> in such a manner to be associated with the log of the association operation to the management server <NUM>. In this case, the management server <NUM> my compare the authentication information <NUM> stored in the storage unit <NUM> with the transmitted authentication information and identify which script format <NUM> is used to develop the association operation script used when the association operation is executed. In other words, in this embodiment, the script format <NUM> stored in the storage unit <NUM> functions as information indicating an association between the association operation script and the authentication information.

The reception unit <NUM> receives, from the electronic device <NUM>, the log related to the association operation executed according to the association operation script by the electronic device <NUM>, together with the authentication information accompanying the association operation script. The received log may be provided to the collection unit <NUM>. Further, when the control unit <NUM> of the electronic device <NUM> inquires of the management server <NUM> about the execution range of the association operation script <NUM> via the transmission unit <NUM>, the reception unit <NUM> receives the request transmitted from the transmission unit <NUM>. The authentication information <NUM> accompanying the association operation script <NUM> is included in the request. The received request may be provided to the determination unit <NUM>.

The collection unit <NUM> executes collection for the log received by the reception unit <NUM> based on the authentication information received together with the log. Upon collection, the collection unit <NUM> references the script format <NUM> and the authentication information <NUM> associated with the script format <NUM>, which are stored in the storage unit <NUM>. The collection unit <NUM> may store a log, as the log <NUM>, in such a manner to be associated with the script format <NUM> through the authentication information <NUM> in the storage unit <NUM>. For example, even when the association operation scripts <NUM> used in the electronic device <NUM> are different, the authentication information <NUM> accompanying the association operation scripts <NUM> may be common if the association operation scripts <NUM> have been developed according to the same script format <NUM> by the publisher <NUM>.

Accordingly, the collection unit <NUM>, for example, may collect logs in units of script formats <NUM> rather than units of individual association operation scripts. On the other hand, the authentication information <NUM> associated with the script format <NUM> may be determined in consideration of the unit of collection in the collection unit <NUM>. For example, if the collection unit <NUM> collects the logs for each publisher <NUM> which has developed and published the association operation script, the collection unit <NUM> may cause authentication information <NUM> different among the publishers <NUM> of a provision destination to be accompanied even when the script format <NUM> is common.

The determination unit <NUM> determines the execution range of the association operation script <NUM> in the electronic device <NUM> based on the authentication information received by the reception unit <NUM>. For example, the determination unit <NUM> may determine that the execution of the association operation script <NUM> is possible (the entire association operation script <NUM> is executable) in the electronic device <NUM> when the received authentication information matches the authentication information <NUM> stored in the storage unit <NUM>. Further, the execution range of the association operation script <NUM> may be registered in such a manner to be associated with the authentication information <NUM> in the storage unit <NUM>. For example, when the authentication information <NUM> in which the association operation script <NUM> has been registered as being executable in the past has been invalidated due to the publisher <NUM> and the user of the electronic device <NUM>, the authentication information <NUM> may be subsequently registered in the storage unit <NUM> to indicate that the execution of the association operation script <NUM> is not permitted (there is no execution range). In this case, the determination unit <NUM> determines that the execution of the association operation script <NUM> in the electronic device <NUM> is not permitted (there is no execution range) based on the information registered in the storage unit <NUM>, and notifies the electronic device <NUM> of the fact via the transmission unit <NUM>. Further, the determination unit <NUM> may transmit an additional script for invalidating the association operation script <NUM> stored in the storage unit <NUM> of the electronic device <NUM> to the electronic device <NUM> via the transmission unit <NUM>. Further, such an additional script may be distributed from the management server <NUM> to the electronic device <NUM> all at once not only when the reception unit <NUM> has received the inquiry of the execution range of the association operation script <NUM> from the electronic device <NUM> but also, for example, when the registration of the authentication information <NUM> in the storage unit <NUM> has been changed.

The payment processing unit <NUM> generates payment information based on the log <NUM> collected by the collection unit <NUM>. For example, the payment information may indicate charging to the user of the electronic device <NUM> according to an execution history of the association operation indicated by the log <NUM>. In this case, for example, the association operation script <NUM> used in the electronic device <NUM> may be provided for free from the publisher <NUM> via the script server <NUM>. Charging is performed from the management server <NUM> to the user of the electronic device <NUM> by the user of the electronic device <NUM> executing the association operation (e.g., a predetermined number of times or more), and a part of the value paid from the user to the manager of the management server <NUM> according to this charging may be distributed to the publisher <NUM>. Alternatively, the payment information may indicate charging to the publisher <NUM> according to an execution history of the association operation indicated by the log <NUM>. In this case, for example, the association operation script <NUM> used in the electronic device <NUM> may be provided for a fee from the publisher <NUM> through the script server <NUM>. Charging may be performed from the management server <NUM> to the publisher <NUM> by the user of the electronic device <NUM> executing the association operation, and a part of the value that the publisher <NUM> has received from the user of the electronic device <NUM> according to this charging may be returned to the manager of the management server <NUM>.

The transmission unit <NUM> transmits various pieces of information generated in the management server <NUM> to the electronic device <NUM> or a server different from the management server <NUM> via the communication unit <NUM>. The transmission unit <NUM>, for example, may transmit a response including information indicating the execution range of the association operation script <NUM> in the electronic device <NUM>, which has been generated based on the authentication information by the determination unit <NUM>, to the electronic device <NUM>. Further, the transmission unit <NUM> may transmit an additional script for invalidating the association operation script stored in the electronic device <NUM>, which has been generated based on the authentication information by the determination unit <NUM>, to the electronic device <NUM>. Further, the transmission unit <NUM> may transmit payment information indicating charging to the user of the electronic device <NUM>, which has been generated by the payment processing unit <NUM>, to a server different from the management server <NUM> or the electronic device <NUM>. Here, the server which is a transmission destination of the payment information is, for example, a server of the publisher <NUM>, a server of the manufacturer of the electronic device <NUM>, or a server of a provider providing various services to the electronic device <NUM>, such as an affiliate.

<FIG> is a flowchart illustrating an example of a process of the electronic device according to one embodiment of this disclosure. In the example illustrated in <FIG>, first, the control unit <NUM> of the electronic device <NUM> transmits a request including the authentication information <NUM> accompanying the association operation script <NUM> to be executed to the management server <NUM> via the transmission unit <NUM> (step S101).

The management server <NUM> determines the execution range of the association operation script <NUM> based on the authentication information included in the transmitted request, and transmits a determination result as a response to the electronic device <NUM>. In the electronic device <NUM>, the reception unit <NUM> receives the response including the information indicating the execution range of the association operation script <NUM>.

Here, the control unit <NUM> determines whether validation of the association operation script <NUM> is successful based on the information included in the response received by the reception unit <NUM> (step S103). In the illustrated example, the validation of the association operation script <NUM> means that execution of the association operation using the association operation script <NUM> is permitted by the management server <NUM> and is enabled. A case in which the association operation has not been validated may be a case in which the execution of the association operation has not been permitted by the management server <NUM> or a case in which the association operation has been restricted.

When the validation of the association operation script <NUM> is successful in step S103, the control unit <NUM> executes the association operation according to the association operation script <NUM> (step S107). Further, after the execution of the association operation or during the execution of the association operation, the control unit <NUM> generates a log related to the association operation, associates the generated log <NUM> with the authentication information <NUM>, and transmits the log to the management server <NUM> (step S109).

On the other hand, when the validation of the association operation script <NUM> has not been successful in step S103, the control unit <NUM> executes an operation for which validation is not necessary (step S105). The operation for which validation is not necessary is, for example, an operation which is defined as an operation for which validation based on the authentication information <NUM> is not necessary in the association operation script <NUM> or the response received from the management server <NUM>. When there is no such operation, the control unit <NUM> can directly end the process without executing the association operation. Further, the control unit <NUM> may notify a user that an executable association operation is present but it is difficult for the executable association operation to be (sufficiently) executed since authentication information is not valid.

In a variant of one embodiment of this disclosure described above, for example, not only the association operation script but also a software interface which realizes the association operation between the devices in cooperation with the association operation script may be accompanied by the authentication information. This software interface is referenced as a device API in an example which will be described below. The software interface, for example, is obtained by abstracting the functionalities of the electronic device <NUM>, and each functionality is defined as a function. In this case, the control unit <NUM> of the electronic device <NUM> accesses the software interface according to the association operation script, and realizes the functionality of the electronic device <NUM> necessary for the association operation by calling the defined function.

In this variant, for example, the control unit <NUM> of the electronic device <NUM> may at least temporarily store the log related to the association operation in such a manner to be associated with the authentication information <NUM> accompanying the association operation script <NUM> and the authentication information accompanying the software interface, in the storage unit <NUM>, and the transmission unit <NUM> may transmit this log to the management server <NUM>. In this case, in the management server <NUM>, the reception unit <NUM> receives the log together with the respective authentication information.

Further, in the variant described above, the transmission unit <NUM> of the electronic device <NUM> may transmit a request including the authentication information accompanying each of the association operation script <NUM> and the software interface to the management server <NUM>. In this case, in the management server <NUM>, the reception unit <NUM> receives the request including the respective authentication information, and the determination unit <NUM> determines the execution range of the association operation script <NUM> based on the respective authentication information.

As in the variant described above, as the software interface of the electronic device <NUM> is also accompanied by the authentication information, it is possible for the management server <NUM> to recognize which association operation script is used to execute the association operation and which device is used to execute the association operation. Further, a signature given by the manager of the management server <NUM> may also be included in the authentication information accompanying the software interface, as in the authentication information accompanying the association operation script.

Next, a mechanism and a specific example of the association operation in one embodiment of this disclosure will be described with reference to <FIG>.

<FIG> and <FIG> are diagrams illustrating a functionality of the association operation script in one embodiment of this disclosure. Device APIs (Application Programming Interfaces) <NUM> and <NUM>, communication functionalities <NUM> and <NUM>, and other functionalities <NUM> and <NUM> for the electronic device <NUM> and the other electronic device <NUM> are illustrated in <FIG> and <FIG>. While these elements of the electronic device <NUM> will be described by way of example hereinafter, the same applies to the other electronic device <NUM>.

The device API <NUM> is an API prepared to use a functionality of the electronic device <NUM> and may be realized as software by the processor <NUM> of the electronic device <NUM>. The communication functionality <NUM> and the other functionality <NUM> of the electronic device <NUM> are abstracted by the device API <NUM>. In other words, for example, when a function defined in the device API <NUM> is called, the processor <NUM> issues a control command for controlling the processor <NUM> itself or hardware such as the communication unit <NUM>, the storage unit <NUM> and the input/output unit <NUM> to realize the communication functionality <NUM> and the other functionality <NUM>.

In a state illustrated in <FIG>, there is no association operation script in at least the electronic device <NUM>. In this state, the association operation between the electronic device <NUM> and the other electronic device <NUM> is difficult. On the other hand, in a state illustrated in <FIG>, an association operation script <NUM> is distributed to the electronic device <NUM> by the script server <NUM>. In the electronic device <NUM>, the communication functionality <NUM> and the other functionality <NUM> for an association operation with the other electronic device <NUM> are realized by the processor <NUM> calling the function defined in the device API <NUM> according to the association operation script <NUM>.

On the other hand, an association operation script <NUM> may also be distributed to the other electronic device <NUM> by the script server <NUM>, as in the electronic device <NUM>. Alternatively, the association operation script <NUM> may have been prepared in the other electronic device <NUM> in advance, as illustrated in <FIG>. In the other electronic device <NUM>, the communication functionality <NUM> and the other functionality <NUM> for an association operation with the electronic device <NUM> are realized by calling a function defined in the device API <NUM> according to the association operation script <NUM>. A state in which the communication functionality <NUM> of the electronic device <NUM> and the communication functionality <NUM> of the other electronic device <NUM> are communicating with each other in the association operation is illustrated in <FIG>.

Here, the association operation script in this embodiment will be described again. In the present specification, an association operation program described in a script format among association operation programs is referred to as an association operation script. The script format may mean a program described using a script language or an interpreter language. An example of such a language includes a markup language. Further, the association operation program is not limited to a script format and may be described in other formats (e.g., an object code or an assembly language), but when the association operation program is described in a script format, it is advantageous, for example, in that a program development period is shortened.

For example, an entity which executes an operation, a function of a used API, a parameter set in the function, a combination or an order of functions to be executed, and the like are described in the association operation script. For example, in the example illustrated in <FIG> and <FIG>, in the electronic device <NUM>, an interpreter corresponding to the association operation script <NUM> is implemented in the processor <NUM>, and a function of the device API <NUM> is called according to interpretation of the association operation script <NUM> by the interpreter, such that the communication functionality <NUM> and the other functionality <NUM> are realized. The same applies to the other electronic device <NUM>.

Thus, in this embodiment, the functionality realized by the hardware of the electronic device is abstracted using the device API, and each functionality is realized through the device API according to a predetermined condition and/or procedure using the association operation script, such that the association operation between the devices is realized. Therefore, it is not necessary to determine conditions or procedures for all association operations at the time of manufacture of the electronic device and write the conditions or the procedures as a program, and it is possible to define the conditions or the procedures using the association operation script after manufacture of the electronic device. Therefore, it is possible to shorten a development period of the electronic device, and easily realize the association operation with a new device appearing after manufacture of the electronic device.

Further, since an association operation script can be provided after the electronic device of the association partner is concretely identified, a case in which information on a large number of association operations, including association operations which are unrealizable, is displayed and confuses the user does not occur. Further, for example, even when electronic devices of association partners are different according to a difference of products circulating in each region, association operations according to the respective regions can be selectively presented and realized without modifying a program design of the electronic devices. Further, as the association script can be updated or invalidated, for example, a posteriori management of a use right of the association operation or distribution of a time-limited, effective association operation script is possible.

<FIG> is a diagram illustrating a first specific example of the association operation in one embodiment of this disclosure. In the example illustrated in <FIG>, a smartphone 100a is illustrated as a specific example of the electronic device <NUM> and a digital camera 300a is illustrated as a specific example of the other electronic device <NUM>.

In the illustrated example, an association operation script 107a "to receive and record an image" is provided from the script server <NUM> to the smartphone 100a and an association operation script 307a "to capture and transmit an image" is provided from the script server <NUM> to the digital camera 300a. The association operation scripts 107a and 307a are scripts for realizing an association operation between the smartphone 100a and the digital camera 300a "to transfer the image captured by the digital camera 300a to the smartphone 100a and record the image on the smartphone 100a. " For example, the association operation scripts 107a and 307a may be stored to be associated with device identification information of the smartphone 100a and the digital camera 300a in the script server <NUM>.

The association operation "to transfer the image captured by the digital camera 300a to the smartphone 100a and record the image on the smartphone 100a" may be executed, for example, when photographs are shared between friends visiting the same place or an image of the camera provided to the public (e.g., installed in a restricted area) at a sightseeing spot or an event meeting place is acquired. Therefore, the association operation scripts 107a and 307a may be distributed to the smartphone 100a and the digital camera 300a, for example, when the smartphone 100a and the digital camera 300a have been close to each other and short distance communication has been executed or when an image including a two-dimensional code indicating the digital camera 300a is captured by a camera of the smartphone 100a. More specifically, when a request including the device identification information of the digital camera 300a has been transmitted from the smartphone 100a to the script server <NUM>, the association operation scripts 107a and 307a may be distributed from the script server <NUM>.

Here, the script server <NUM> may transmit the association operation script 107a to the smartphone 100a and the association operation script 307a to the digital camera 300a. Alternatively, the script server <NUM> may transmit both of the association operation script 107a and the association operation script 307a to both of the smartphone 100a and the digital camera 300a, the smartphone 100a may selectively execute the association operation script 107a, and the digital camera 300a may selectively execute the association operation script 307a. In this case, the association operation script 107a and the association operation script 307a may be described, for example, in the same file or may be described in separate files.

For example, a function of capturing an image using the imaging functionality 305a and a function of transmitting image data using the communication functionality 303a are defined in the device API 301a of the digital camera 300a. In the digital camera 300a, imaging using the imaging functionality 305a is first executed and then data transmission using the communication functionality 303a is executed for the image data obtained by imaging, as a result of calling the functions according to the association operation script 307a. In this case, the smartphone 100a may be designated as a transmission destination of the image data according to the association operation script 307a.

Meanwhile, a function of receiving the image data using the communication functionality 103a and a function of recording the image data using the recording functionality 105a are defined in the device API 101a of the smartphone 100a. In the smartphone 100a, first, the reception of the image data using the communication functionality 103a is executed and then the received image data is recorded using the recording functionality 105a as a result of such functions are called according to the association operation script 107a. In this case, according to the association operation script 107a, the digital camera 300a may be designated as a transmission source of the image data.

<FIG> is a diagram illustrating a second specific example of the association operation in one embodiment of this disclosure. In the example illustrated in <FIG>, a smartphone 100a is illustrated as a specific example of the electronic device <NUM>, and a digital camera 300a is illustrated as a specific example of the other electronic device <NUM>.

In the illustrated example, an association operation script 107b of "remote photography" is provided from the script server <NUM> to the smartphone 100a and an association operation script 307b of "remote photography" is provided from the script server <NUM> to the digital camera 300a. The association operation scripts 107b and 307b are scripts for realizing an association operation between the smartphone 100a and the digital camera 300a "to remotely control the digital camera 300a from the smartphone 100a and execute the photography. " The association operation scripts 107b and 307b may be stored, for example, in the script server <NUM> to be associated with the device identification information of the smartphone 100a and the digital camera 300a, as in the first example. A distribution form of the scripts from the script server <NUM> to the smartphone 100a and the digital camera 300a is the same as that in the first example described above.

The association operation "to remotely control the digital camera 300a from the smartphone 100a and execute the photography" may be executed in the same situation as in the first example described above. Therefore, the association operation scripts 107b and 307b may be distributed to the smartphone 100a and the digital camera 300a on the same condition as in the first example.

For example, a function of transmitting a control command to an imaging device using a communication functionality 103b different from the communication functionality 103a in the first example and receiving image data from the imaging device is defined in a device API 101a of the smartphone 100a. Further, a function of receiving the control command from the control device using a communication functionality 303b different from the communication functionality 303a in the first example and transmitting the image data to the control device is defined in a device API 301a of the digital camera 300a.

In the second example, first, the communication functionality 103b in the smartphone 100a is executed through the device API 101a by the association operation script 107b. In this case, as the digital camera 300a is designated as an imaging device which is a transmission destination, the control command is transmitted from the smartphone 100a to the digital camera 300a. On the other hand, the communication functionality 303b in the digital camera 300a is executed through the device API 301a by the association operation script 307b. In this case, as the smartphone 100a is designated as a control device which is a transmission source, the control command transmitted from the smartphone 100a is received.

Here, information of the function of the device API 301a of the digital camera 300a designated by the association operation script 107b may be included in the control command. Thus, in this embodiment, using information on a device API of a device of an association partner described in the association operation script, a control command according to the device of the association partner may be issued, for example, in the case of the remote control as in the example described above.

Subsequently, in the digital camera 300a, imaging using an imaging functionality 305a is executed according to the received control command, and image data obtained by the imaging is transmitted to the smartphone 100a using the communication functionality 303b. In the smartphone 100a, the image data is received from the digital camera 300a using the communication functionality 103b, and the received image data is recorded using a recording functionality 105a.

<FIG> is a diagram illustrating a third specific example of the association operation in one embodiment of this disclosure. In the example illustrated in <FIG>, a smartphone 100a is illustrated as a specific example of the electronic device <NUM>, and a television 300c and a recorder 300d are illustrated as a specific example of the other electronic devices <NUM>.

In the illustrated example, association operation scripts 107c, 307c and 307d of "recording during a call" are provided from the script server <NUM> to the smartphone 100a, the television 300c and the recorder 300d, respectively. The association operation scripts 107c, 307c and 307d are scripts for realizing an association operation among the smartphone 100a, the television 300c and the recorder 300d "to record content televised by the television 300c on the recorder 300d during a call on the smartphone 100a and reproduce the content after the call. " The association operation scripts 107c, 307c and 307d may be stored to be associated with device identification information of the smartphone 100a, the television 300c and the recorder 300d, for example, in the script server <NUM>.

For example, the association operation "to record content televised by the television 300c on the recorder 300d during a call on the smartphone 100a and reproduce the content after the call" may be executed when a user of the smartphone 100a watches the television 300c at home and there is an incoming call on the smartphone 100a. For example, when the smartphone 100a, the television 300c and the recorder 300d are connected to a LAN within the same home, the association operation scripts 107c, 307c and 307d may be distributed from the script server <NUM> to the respective devices.

Here, since there are a large number of other association operations as association operations of the smartphone 100a and the television 300c and/or the recorder 300d, for example, when the smartphone 100a is connected to the LAN within the home, a plurality of the association operation scripts including the association operation scripts 107c, 307c and 307d may be distributed to the devices. Alternatively, association operation scripts to be distributed may be selected by a user manipulation. A timing at which the association operation is executed by each association operation script may be designated, for example, by a user manipulation or may be automatically determined in conjunction with another operation executed by each device.

In the illustrated example, when the association operation script 107c in the smartphone 100a recognizes that a call using a call functionality 105c starts through the device API 101a, the association operation script 107c starts up a communication functionality 103c through the device API 101a. Using the communication functionality 103c, the television 300c and the recorder 300d are notified that the association operation by the association operation scripts 307c and 307d starts.

In this case, the association operation script 307c in the television 300c acquires information (e.g., a channel of broadcasting waves) on content televised using a display functionality 305c through the device API 301c, and transmits the acquired information using the communication functionality 303c to the recorder 300d. Meanwhile, in the recorder 300d, the association operation script 307d receives the information transmitted from the television 300c using a communication functionality 303d through the device API 301d and starts recording of the content using a recording functionality 305d.

Then, in the smartphone 100a, the association operation script 107c recognizes that a call using the call functionality 105c ends through the device API 101a. In this case, using the communication functionality 103c, the television 300c and the recorder 300d are notified that a stage of the association operation is shifted from recording to reproduction. In this case, the association operation script 307d in the recorder 300d ends the recording of the content using the recording functionality 305d (when the televising of the content does not end, recording may continue for subsequent time shift reproduction), and provides the recorded content to the television 300c using the communication functionality 303d.

Meanwhile, in the television 300c, the association operation script 307d receives the content transmitted from the recorder 300d using the communication functionality 303c, and televises the received content using the display functionality 305c. This operation of the television 300c, for example, may be an operation of switching a source of the content televised using the display functionality 305c from the broadcasting waves to HDMI (registered trademark) (High-Definition Multimedia Interface). With the association operation described above, the user can watch, on the television 300c, a part of the content missed due to televising during a call after ending the call on the smartphone 100a.

Further, in the illustrated example, the communication functionalities 303c and 303d can execute both of communication through a LAN within a home, including the smartphone 100a, and communication using the HDMI (registered trademark) between the television 300c and the recorder 300d. These communications may be implemented, for example, by separate functions in the device APIs 301c and 301d. Thus, the functionalities described in the respective described examples do not necessarily correspond to the functions defined in the device APIs. The respective functionalities, for example, may be realized by calling a plurality of functions defined in the device APIs according to a predetermined procedure.

As described above, in this embodiment, various association operations by various devices are possible. All association operations realized, for example, by storing procedures for the association operations in the respective devices in advance can be realized as association operations in the system according to this embodiment by preparing device APIs in the respective devices and distributing association operation scripts capable of using the device APIs, as shown in the example described above.

Next, implementation examples of one embodiment of this disclosure will be described with reference to <FIG> and <FIG>.

<FIG> is a diagram illustrating a first implementation example in one embodiment of this disclosure. A marketplace <NUM> illustrated in <FIG> corresponds to the script server <NUM> in the embodiment described above. Further, a mediator <NUM> corresponds to the management server <NUM> in the embodiment described above. Further, a service provider <NUM> corresponds to the other electronic device <NUM> in the embodiment described above. Thus, the other electronic device <NUM> in this embodiment may include not only a terminal device used by the user, but also a server device on the network.

The mediator <NUM> provides a script format <NUM>. In this case, the mediator <NUM> buries the authentication information in the script format <NUM>. Meanwhile, the publisher <NUM> develops an association operation script <NUM> according to the script format <NUM>, and exhibits the association operation script <NUM> at the marketplace <NUM>. In this case, the association operation script <NUM> is developed based on cooperation with a device API <NUM>. When the publisher <NUM> exhibits the association operation script <NUM> at the marketplace <NUM>, it may be necessary for the publisher <NUM> to perform registration in the mediator <NUM>. However, this registration may be omitted by associating the authentication information of the association operation script <NUM> with a report provided to the mediator <NUM> when the association operation script is used, as will be described below.

A user <NUM> obtains the association operation script <NUM> from the marketplace <NUM> and uses the association operation script <NUM> as the association operation script <NUM> of the electronic device <NUM>. In the illustrated example, the electronic device <NUM> perform an association operation with the service provider <NUM> as the association operation script <NUM> cooperates with the device API <NUM>, and provides service to the user <NUM>. In this case, the electronic device <NUM> associates a log related to the association operation with the authentication information of the association operation script <NUM> and transmits the log to the mediator <NUM> as a report. Accordingly, the mediator <NUM> can recognize that the association operation using the association operation script developed according to the script format provided to the publisher <NUM> has been executed, for example, to charge the publisher <NUM> or distribute a value obtained by charging the user to the publisher <NUM>.

<FIG> is a diagram illustrating a second implementation example in one embodiment of this disclosure. In this example, a difference between the first implementation example and the second implementation example is that an API format <NUM> is also provided to the device API <NUM>. The API format <NUM> is provided to a manufacturer <NUM>, which then incorporates the device API <NUM> at the time of manufacture of the electronic device <NUM>. A marketplace <NUM> is provided for the publisher <NUM> to obtain the device API <NUM> incorporated in the electronic device <NUM>. The manufacturer <NUM> adds authentication information to the device API <NUM> of the device exhibited at the marketplace <NUM> and registers this authentication information in the mediator <NUM>. It is possible to trace that the association operation using the device API <NUM> of the device exhibited by the manufacturer <NUM> has been executed by associating the authentication information of the device API <NUM> as well as the authentication information of the association operation script <NUM> with the report provided to the mediator <NUM> at the time at which the association operation script is used.

The user <NUM> obtains the association operation script <NUM> from the marketplace <NUM> and uses the association operation script <NUM> as an association operation script <NUM> of the electronic device <NUM>. In the illustrated example, the electronic device <NUM> performs an association operation with the service provider <NUM> as the association operation script <NUM> and the device API <NUM> cooperate with each other, and provides service to the user <NUM>. In this case, the electronic device <NUM> associates a log related to the association operation with the authentication information of the association operation script <NUM> and the authentication information of the device API <NUM> and transmits the log to the mediator <NUM> as a report. Accordingly, the mediator <NUM> can recognize the association operation using the association operation script <NUM> developed according to the script format provided to the publisher <NUM> and the device API <NUM> of the electronic device <NUM> manufactured by the manufacturer <NUM>, for example, to charge the publisher <NUM> or distribute the value obtained by charging the user to the publisher <NUM> or the manufacturer <NUM>.

For example, when the device API <NUM> is not accompanied by the authentication information, it is difficult to trace that the association operation using the device API <NUM> of the electronic device <NUM> has been executed. Therefore, even when the electronic device <NUM> has been used for the association operation, it is difficult to distribute the value of the service provided through the association operation to the manufacturer <NUM>. However, in the example described above, it is possible to trace the execution of the association operation and distribute the value to the manufacturer <NUM> when the association operation has been executed, by realizing the functionality of the electronic device <NUM> using the device API <NUM> and also causing the device API <NUM> to be accompanied by the authentication information.

Next, a hardware configuration of an information processing device according to the embodiment of this disclosure will be described with reference to <FIG> is a block diagram illustrating a hardware configuration of the information processing device according to the embodiment of this disclosure. The illustrated information processing device <NUM>, for example, may realize the electronic device <NUM>, the script server <NUM>, the other electronic device <NUM>, or the management server <NUM> in the embodiment described above.

The information processing apparatus <NUM> includes a CPU (Central Processing Unit) <NUM>, a ROM (Read Only Memory) <NUM>, and a RAM (Random Access Memory) <NUM>. In addition, the information processing apparatus <NUM> may include a host bus <NUM>, a bridge <NUM>, an external bus <NUM>, an interface <NUM>, an input device <NUM>, an output device <NUM>, a storage device <NUM>, a drive <NUM>, a connection port <NUM>, and a communication device <NUM>. Further, the information processing apparatus <NUM> may include an imaging device <NUM> and a sensor <NUM> as necessary. The information processing apparatus <NUM> may include a processing circuit such as a DSP (Digital Signal Processor), alternatively or in addition to the CPU <NUM>.

The CPU <NUM> serves as an operation processor and a controller, and controls all or some operations in the information processing apparatus <NUM> in accordance with various programs recorded in the ROM <NUM>, the RAM <NUM>, the storage device <NUM> or a removable recording medium <NUM>. The ROM <NUM> stores programs and operation parameters which are used by the CPU <NUM>. The RAM <NUM> primarily stores program which are used in the execution of the CPU <NUM> and parameters which is appropriately modified in the execution. The CPU <NUM>, ROM <NUM>, and RAM <NUM> are connected to each other by the host bus <NUM> configured to include an internal bus such as a CPU bus. In addition, the host bus <NUM> is connected to the external bus <NUM> such as a PCI (Peripheral Component Interconnect/Interface) bus via the bridge <NUM>.

The input device <NUM> may be a device which is operated by a user, such as a mouse, a keyboard, a touch panel, buttons, switches and a lever. The input device <NUM> may be, for example, a remote control unit using infrared light or other radio waves, or may be an external connection device <NUM> such as a portable phone operable in response to the operation of the information processing apparatus <NUM>. Furthermore, the input device <NUM> includes an input control circuit which generates an input signal on the basis of the information which is input by a user and outputs the input signal to the CPU <NUM>. By operating the input device <NUM>, a user can input various types of data to the information processing apparatus <NUM> or issue instructions for causing the information processing apparatus <NUM> to perform a processing operation.

The output device <NUM> includes a device capable of visually or audibly notifying the user of acquired information. The output device <NUM> may include a display device such as LCD (Liquid Crystal Display), PDP (Plasma Display Panel), and organic EL (Electro-Luminescence) displays, an audio output device such as speaker and headphone, and a peripheral device such as printer. The output device <NUM> may output the results obtained from the process of the information processing apparatus <NUM> in a form of a video such as text or image, and an audio such as voice or sound.

The storage device <NUM> is a device for data storage which is configured as an example of a storage unit of the information processing apparatus <NUM>. The storage device <NUM> includes, for example, a magnetic storage device such as HDD (Hard Disk Drive), a semiconductor storage device, an optical storage device, or a magneto-optical storage device. The storage device <NUM> stores programs to be executed by the CPU <NUM>, various data, and data obtained from the outside.

The drive <NUM> is a reader/writer for the removable recording medium <NUM> such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, and is embedded in the information processing apparatus <NUM> or attached externally thereto. The drive <NUM> reads information recorded in the removable recording medium <NUM> attached thereto, and outputs the read information to the RAM <NUM>. Further, the drive <NUM> can write in the removable recording medium <NUM> attached thereto.

The connection port <NUM> is a port used to directly connect devices to the information processing apparatus <NUM>. The connection port <NUM> may include a USB (Universal Serial Bus) port, an IEEE1394 port, and a SCSI (Small Computer System Interface) port. The connection port <NUM> may further include an RS-232C port, an optical audio terminal, an HDMI (High-Definition Multimedia Interface) port, and so on. The connection of the external connection device <NUM> to the connection port <NUM> makes it possible to exchange various data between the information processing apparatus <NUM> and the external connection device <NUM>.

The communication device <NUM> is, for example, a communication interface including a communication device or the like for connection to a communication network <NUM>. The communication device <NUM> may be, for example, a communication card for a wired or wireless LAN (Local Area Network), Bluetooth (registered trademark), WUSB (Wireless USB) or the like. In addition, the communication device <NUM> may be a router for optical communication, a router for ADSL (Asymmetric Digital Subscriber Line), a modem for various kinds of communications, or the like. The communication device <NUM> can transmit and receive signals to and from, for example, the Internet or other communication devices based on a predetermined protocol such as TCP/IP. In addition, the communication network <NUM> connected to the communication device <NUM> may be a network or the like connected in a wired or wireless manner, and may be, for example, the Internet, a home LAN, infrared communication, radio wave communication, satellite communication, or the like.

The imaging device <NUM> is a device that generates an image by imaging a real space using an image sensor such as a charge-coupled device (CCD) or complementary metal-oxide-semiconductor (CMOS) sensor, as well as various members such as one or more lenses for controlling the formation of a subject image on the image sensor, for example. The imaging device <NUM> may be a device that takes still images, and may also be a device that takes moving images.

The sensor <NUM> is any of various sensors such as an acceleration sensor, a gyro sensor, a geomagnetic sensor, an optical sensor, or a sound sensor, for example. The sensor <NUM> acquires information regarding the state of the information processing apparatus <NUM>, such as the orientation of the case of the information processing apparatus <NUM>, as well as information regarding the environment surrounding the information processing apparatus <NUM>, such as the brightness or noise surrounding the information processing apparatus <NUM>, for example. The sensor <NUM> may also include a Global Positioning System (GPS) sensor that receives GPS signals and measures the latitude, longitude, and altitude of the apparatus.

The foregoing thus illustrates an exemplary hardware configuration of the information processing apparatus <NUM>. Each of the above components may be realized using general-purpose members, but may also be realized in hardware specialized in the function of each component. Such a configuration may also be modified as appropriate according to the technological level at the time of the implementation.

Embodiments of the present disclosure encompass an information processing apparatus (an electronic device or a server) and system as described in the foregoing, an information processing method executed by an information processing apparatus or system, a program for causing an information processing apparatus to function, and a non-transitory computer readable medium storing such a program, for example.

Claim 1:
An information management device (<NUM>) comprising:
an interface (<NUM>) configured to receive an association operation program accompanied by authentication information (<NUM>) from an electronic device (<NUM>), the association operation program configuring the electronic device (<NUM>) to realize an association operation, during which the electronic device (<NUM>) and another electronic device (<NUM>) operate in association, wherein the association program is a script; and
circuitry (<NUM>) configured to
identify an execution range of the association operation program executed by the electronic device (<NUM>) based on the authentication information (<NUM>), the execution range is a limit of a functionality of the electronic device (<NUM>) available in the association operation indicative of an authentication of an association between the electronic device (<NUM>) and the another electronic device (<NUM>), wherein
the execution range limits the association operation to part in which the permission based on the authentication information (<NUM>) is not necessary for execution if the authentication information (<NUM>) does not match the stored authentication information (<NUM>), and
the execution range further includes a part in which permission based on the authentication information <NUM> is necessary for execution if the authentication information (<NUM>) matches the stored authentication information (<NUM>).