Patent Publication Number: US-11647130-B2

Title: Information processing system capable of connecting a plurality of voice control devices, method of controlling information processing system, and storage medium

Description:
BACKGROUND OF THE INVENTION 
     Field of the Invention 
     The present invention relates to an information processing system capable of connecting a plurality of voice control devices, a method of controlling the information processing system, and a storage medium. 
     Description of the Related Art 
     There is known a system in which a print job is input by speech of a user (see e.g. Japanese Laid-Open Patent Publication (Kokai) No. 2016-35514). In recent years, the widespread use of a smart speaker has made it easy to establish the above-mentioned system by causing the smart speaker and an information processing apparatus to cooperate via a network. 
     Here, conventionally, a case has not been considered where a plurality of smart speakers are coordinated with one information processing apparatus. In the configuration in which a plurality of smart speakers are coordinated with one information processing apparatus, in a case where instructions are provided to the plurality of smart speakers almost at the same time, competition between the instructions can occur. For this reason, a system which can properly cope with such a competing state is desired. 
     SUMMARY OF THE INVENTION 
     The present invention provides an information processing system that is configured such that a plurality of speakers are coordinated with one information processing apparatus and is capable of coping with a state of competition between instructions to the speakers, a method of controlling the information processing system, and a storage medium. 
     In a first aspect of the present invention, there is provided an information processing system including an information processing apparatus, a first voice control device that receives a voice instruction to the information processing apparatus, and a second voice control device that receives a voice instruction to the information processing apparatus, at least one processor, and a memory coupled to the at least one processor, the memory having instructions that, when executed by the processor, perform the operations as: a control unit configured to preform control for causing the information processing apparatus to execute a job based on information on which of the first voice control device and the second voice control device is a device which is to be preferentially used. 
     In a second aspect of the present invention, there is provided a method of controlling an information processing system including an information processing apparatus, a first voice control device that receives a voice instruction to the information processing apparatus, and a second voice control device that receives a voice instruction to the information processing apparatus, including preforming control for causing the information processing apparatus to execute a job based on information on which of the first voice control device and the second voice control device is a device which is to be preferentially used. 
     According to the invention, it is possible to cope with a state of competition between instructions to a plurality of speakers of an information processing system configured such that the speakers are coordinated with one information processing apparatus. 
     Further features of the present invention will become apparent from the following description of exemplary embodiments (with reference to the attached drawings). 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG.  1    is a diagram useful in explaining functions of an information processing system according to embodiments of the present invention. 
         FIG.  2    is a schematic block diagram of an image forming apparatus appearing in  FIG.  1   . 
         FIG.  3    is a schematic block diagram of a voice control device appearing in  FIG.  1   . 
         FIG.  4    is a schematic block diagram of a cloud server appearing in 
         FIG.  1   . 
         FIG.  5    is a block diagram showing a functional configuration of a device control program executed by the image forming apparatus appearing in  FIG.  1   . 
         FIG.  6    is a block diagram showing a functional configuration of a voice control program executed by the voice control device appearing in  FIG.  1   . 
         FIG.  7 A  is a block diagram showing a functional configuration of a voice data conversion control program executed by the cloud server appearing in  FIG.  1   . 
       FIGS.  7 B 1  to  7 B 4  are diagrams each showing an example of a group ID list used by a group ID determination section appearing in  FIG.  7 A . 
         FIG.  8    is a sequence diagram useful in explaining a flow of registration of an image forming apparatus for the information processing system shown in  FIG.  1   . 
         FIG.  9    is a sequence diagram useful in explaining a flow of registration of a voice control device in the information processing system shown in  FIG.  1   . 
         FIGS.  10 A and  10 B  are a sequence diagram showing a first example of voice operation control performed by the information processing system according to a first embodiment. 
         FIG.  11    is a diagram showing changes in a screen occurring when setting the priority of the voice control device in the information processing system shown in  FIG.  1   . 
         FIGS.  12 A and  12 B  are a sequence diagram showing a second example of the voice operation control performed by the information processing system according to the first embodiment. 
         FIG.  13    is a flowchart of an operating authority-setting process performed in steps in  FIGS.  12 A and  12 B . 
         FIGS.  14 A and  14 B  are a sequence diagram showing a third example of the voice operation control performed by the information processing system according to the first embodiment. 
         FIG.  15    is a flowchart of a variation of the operating authority-setting process in  FIG.  13   . 
         FIG.  16    is a schematic block diagram of a device operating authority management section appearing in  FIG.  7 A . 
         FIGS.  17 A and  17 B  are a sequence diagram useful in explaining internal operations of the device operating authority management section appearing in  FIG.  7 A . 
         FIGS.  18 A and  18 B  are diagrams useful in explaining a configuration of an operating authority storage section appearing in  FIG.  16   . 
         FIG.  19    is a sequence diagram showing a first example of registration of an image forming apparatus for the information processing system according to a second embodiment. 
         FIG.  20    is a diagram showing changes in a screen occurring when setting a priority image forming apparatus for the information processing system according to the second embodiment. 
         FIG.  21    is a flowchart of an image forming apparatus registration process in a step in  FIG.  19   . 
         FIG.  22    is a diagram showing an example of an image forming apparatus service data list used by the cloud server appearing in  FIG.  1   . 
         FIG.  23    is a diagram showing an example of a nickname data list used by the cloud server appearing in  FIG.  1   . 
         FIG.  24    is a flowchart of an image forming apparatus determination process in each of steps in  FIG.  19   . 
         FIG.  25    is a flowchart of a voice control device list acquisition process in a step in  FIG.  19   . 
         FIG.  26    is a diagram showing an example of a voice control device service data list used by the cloud server appearing in  FIG.  1   . 
         FIG.  27    is a flowchart of a priority device registration process in a step in  FIG.  19   . 
         FIGS.  28 A and  28 B  are a sequence diagram showing a first example of the voice operation control performed by the information processing system according to the second embodiment. 
         FIG.  29    is a diagram showing an example of a normal print job command generated by the cloud server appearing in  FIG.  1   . 
         FIG.  30    is a diagram showing an example of a high-priority print job command generated by the cloud server appearing in  FIG.  1   . 
         FIG.  31    is a flowchart of a print job command generation process in each of steps in  FIG.  28 A . 
         FIG.  32    is a diagram showing an example of a file management list used by the cloud server appearing in  FIG.  1   . 
         FIG.  33    is a flowchart of a command generation process in a step in  FIG.  31   . 
         FIG.  34    is a diagram showing an example of a job information-setting rule used by the cloud server appearing in  FIG.  1   . 
         FIG.  35    is a flowchart of a print job execution process in each of steps in  FIG.  28 A . 
         FIG.  36    is a flowchart of a print job-resuming process in a step in  FIG.  28 B . 
         FIGS.  37 A and  37 B  are a sequence diagram showing a second example of the voice operation control performed by the information processing system according to the second embodiment. 
         FIG.  38    is a sequence diagram useful in explaining a second example of registration of an image forming apparatus for the information processing system according to the second embodiment. 
         FIG.  39    is a diagram showing changes in a screen occurring when setting a priority image forming apparatus for the information processing system according to the second embodiment. 
         FIG.  40    is a flowchart of a voice control device determination process in a step in  FIG.  38   . 
     
    
    
     DESCRIPTION OF THE EMBODIMENTS 
     The present invention will now be described in detail below with reference to the accompanying drawings showing embodiments thereof. First, a description will be given of an information processing system and a method of controlling the same according to a first embodiment of the present invention. 
       FIG.  1    is a diagram useful in explaining functions of the information processing system, denoted by reference numeral  100 , according to the embodiments of the present invention. The information processing system  100  is comprised of a cloud server  103 , a plurality of voice control devices, and at least one image forming apparatus. In the present embodiment, the information processing system  100  including the cloud server  103 , two voice control devices  102  and  107 , and two image forming apparatuses  101  and  110  will be described by way of example. 
     The voice control device  102 , the voice control device  107 , the image forming apparatus  101 , the image forming apparatus  110 , and a client terminal  109  can communicate with each other via a gateway  105  and a network  104 . Further, the voice control device  102 , the voice control device  107 , the image forming apparatus  101 , the image forming apparatus  110 , and the client terminal  109  can communicate with the cloud server  103  via the gateway  105  and the network  104 . 
     The voice control device  102  and the voice control device  107  each record the voice of e.g. a user  106 , encodes the recorded voice to generate voice data, and transmit the generated voice data to the cloud server  103 , following a voice operation start instruction from the user  106 . The voice control device  102  and the voice control device  107  are voice input/output devices, such as smart speakers and smartphones, which are capable of communicating with a user using voice. Note that although in the present embodiment, each voice control device is configured to be separate from the image forming apparatus, this is not limitative. For example, the image forming apparatus may be equipped with at least one of hardware, described hereinafter with reference to  FIG.  3   , and software, described hereinafter with reference to  FIG.  6   , as components of the voice control device. 
     The image forming apparatus  101  and the image forming apparatus  110  are multi-function peripherals each equipped with a plurality of functions, such as copy, scan, print, and FAX functions. Note that the image forming apparatus  101  and the image forming apparatus  110  may be apparatuses each equipped with a single function, such as a printer or a scanner. The cloud server  103  is formed by at least one cloud server. The cloud server  103  is a server that relays communication between a voice control device and an image forming apparatus which are coordinated with each other. The cloud server  103  performs voice recognition, and further, performs information processing for controlling the image forming apparatus  101  and the image forming apparatus  110 . For example, the cloud server  103  performs voice recognition of voice data of the user  106 , received from the voice control device  102 , and determines a word associated with an operation of a screen of the image forming apparatus  101  and execution of a job, based on a result of the voice recognition. Note that the job indicates a unit of execution of a series of image formation processing operations, such as copying, scanning, and printing, which are realized by the image forming apparatus  101  using a print engine  211  and a scanner  213  (see  FIG.  2   ). Further, the cloud server  103  generates text based on a result of the voice recognition and a result of determination of words, and generates voice synthesized data for reproducing the contents of this text as voice by the voice control device  102 . 
     The client terminal  109  is e.g. a personal computer (PC) used by the user  106 . The client terminal  109  transmits e.g. an electronic file to be printed to the image forming apparatus  101  or the image forming apparatus  110 . Note that the electronic file may be stored in the client terminal  109  or a server (not shown) on the Internet, or may be stored in a storage of the image forming apparatus  101  or a storage of the image forming apparatus  110 . Further, the client terminal  109  receives image data generated by a scan operation performed by the image forming apparatus  101  or the image forming apparatus  110 . The network  104  interconnects the voice control device  102 , the voice control device  107 , the image forming apparatus  101 , the image forming apparatus  110 , and the client terminal  109 , and the gateway  105 . 
     The gateway  105  is e.g. a wireless LAN router compliant with the IEEE 802.11 standard series. The IEEE 802.11 standard series is a series of standards belonging to the IEEE 802.11, such as IEEE 802.11a and IEEE 802.11b. Note that the gateway  105  may have a capability of operating according to another wireless communication method. Further, the gateway  105  may be not a wireless LAN router, but a wired LAN router compliant with the Ethernet standard typified e.g. by 10 BASE-T, 100 BASE-T, and 1000 BASE-T, and may have a capability of operating according to another wired communication method. 
     Next, the configuration of the image forming apparatus  101  and the image forming apparatus  110  will be described. Note that in the present embodiment, the image forming apparatus  101  and the image forming apparatus  110  have the same configuration, and hence, the following description will be given of the configuration of the image forming apparatus  101  by way of example. Further, in the following description, as for the component elements of the image forming apparatus  110 , an apostrophe is added to the end of reference numeral of each component element of the image forming apparatus  101 . 
       FIG.  2    is a schematic block diagram of the image forming apparatus  101  appearing in  FIG.  1   . Referring to  FIG.  2   , the image forming apparatus  101  includes a controller  200 , a console panel  209 , the print engine  211 , and the scanner  213 . The controller  200  is connected to the console panel  209 , the print engine  211 , and the scanner  213 . Further, the controller  200  includes a CPU  202 , a RAM  203 , a ROM  204 , a storage  205 , a network interface  206 , a display controller  207 , a console interface  208 , a print controller  210 , and a scan controller  212 . These components are interconnected via a system bus  201 . Note that the CPU is an abbreviated form of Central Processing Unit. 
     The CPU  202  controls the overall operation of the image forming apparatus  101 . The CPU  202  reads control programs stored in the ROM  204  and the storage  205  to perform a variety of controls, such as reading control and print control. The RAM  203  is a main storage memory for the CPU  202 . The RAM  203  is used as a work area, and also used as a temporarily storing area for loading therein a variety of control programs stored in the ROM  204  and the storage  205 . The ROM  204  stores the control programs executed by the CPU  202  and the like. The storage  205  stores print data, image data, programs, setting information, and so forth. 
     Note that although in the present embodiment, the description is given of the configuration in which the one CPU  202  performs processes, described hereinafter, using one memory (RAM  203 ), this is not limitative. For example, the processes represented by the flowcharts, described hereinafter, may be executed by operating a plurality of CPUs, RAMs, ROMs, and storages in cooperation. Further, part of the processes may be executed using a hardware circuit, such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field-Programmable Gate Array). 
     The network interface  206  is an interface used by the image forming apparatus  101  to communicate with an external apparatus via the network  104 . For example, the image forming apparatus  101  receives print data via the network interface  206  and analyzes the received print data using a PDL analysis module (not shown). The PDL analysis module is a software module for analyzing print data and is stored in the storage  205  or the ROM  204 . The PDL analysis module generates data to be printed by the print engine  211  based on the print data expressed in a variety of types of page description languages. 
     The display controller  207  is connected to the console panel  209 . The console panel  209  displays a screen controlled by the display controller  207 . When a user operates the console panel  209 , the image forming apparatus  101  acquires an event associated with the user operation via the console interface  208 . 
     The print controller  210  is connected to the print engine  211 . Image data to be printed is transferred to the print engine  211  via the print controller  210 . The print engine  211  receives a control command and the image data from the print controller  210  and forms an image on a sheet based on the received image data. Note that the printing method used by the print engine  211  may be an electrophotographic method or an inkjet method. In a case where the printing method used by the print engine  211  is the electrophotographic method, the print engine  211  forms an image by forming an electrostatic latent image on a photosensitive member (not shown), thereafter developing the electrostatic latent image with toner, transferring the toner image onto a sheet, and fixing the transferred toner image. On the other hand, in a case where the printing method used by the print engine  211  is the inkjet method, the print engine  211  forms an image on a sheet by discharging ink. 
     The scan controller  212  is connected to the scanner  213 . The scanner  213  reads an image on an original set thereon to generate image data. The scanner  213  includes a document feeder (not shown) and is capable of reading an image while conveying originals set on the document feeder one by one. The image data generated by the scanner  213  is stored in the storage  205 . Further, the image forming apparatus  101  can form an image on a sheet using the image data generated by the scanner  213 . 
     Next, the configuration of the voice control device  102  and the voice control device  107  will be described. Note that in the present embodiment, the voice control device  102  and the voice control device  107  have the same configuration, and hence the following description will be given of the configuration of the voice control device  102  by way of example. Further, in the following description, as for the component elements of the voice control device  107 , an apostrophe is added to the end of reference numeral of each component element of the voice control device  102 . 
       FIG.  3    is a schematic block diagram of the voice control device  102  appearing in  FIG.  1   . Referring to  FIG.  3   , the voice control device  102  includes a controller  300 , a microphone  308 , a speaker  310 , and an LED  312 . The controller  300  is connected to the microphone  308 , the speaker  310 , and the LED  312 . Further, the controller  300  includes a CPU  302 , a RAM  303 , a ROM  304 , a storage  305 , a network interface  306 , a microphone interface  307 , an audio controller  309 , and a display controller  311 . These components are interconnected via a system bus  301 . 
     The CPU  302  is a central processing unit that controls the overall operation of the controller  300 . The RAM  303  is a volatile memory. The ROM  304  is a nonvolatile memory and stores a start-up program for the CPU  302  and a serial number of the voice control device  102  as an ID for identifying the voice control device  102 . The storage  305  is a storage device, such as an SD card, which is larger in storage capacity than the RAM  303 . Note that the storage  305  is not limited to the SD card but may be another storage device, such as a flash ROM, which has the same function as the SD card. The storage  305  stores control programs executed by the controller  300  and a service URL of a service used by the voice control device  102 . 
     When the voice control device  102  is started up e.g. by powering-on, the CPU  302  executes the start-up program stored in the ROM  304 . This start-up program is a program for reading control programs stored in the storage  305  and loading the control programs into the RAM  303 . Upon execution of the start-up program, the CPU  302  successively executes the control programs loaded into the RAM  303  and performs a variety of controls. Further, the CPU  302  stores data used when executing the control programs in the RAM  303  and performs reading/writing of the stored data. Further, a variety of setting data items and the like required when executing the control programs are stored in the storage  305 , and the CPU  302  performs reading/writing of these setting data items. The CPU  302  communicates with other devices on the network  104  via the network interface  306 . 
     The network interface  306  includes a circuit and an antenna for performing communication according to a wireless communication method compliant with the IEEE 802.11 standard series. Note that the communication method of the network interface  306  is not limited to the wireless communication method, but for example, a wired communication method compliant with the Ethernet standard may be used. 
     The microphone interface  307  is connected to the microphone  308 . When the microphone  308  receives voice uttered by a user, the microphone interface  307  converts the received voice to voice data by encoding the voice and stores the voice data in the RAM  303  according to an instruction received from the CPU  302 . 
     The microphone  308  is e.g. a compact MEMS microphone installed in a smartphone or the like. Note that the microphone  308  is not limited to the MEMS microphone but may be another device insofar as it can acquire voice of a user. Further, it is preferable that the microphone  308  is used by arranging three or more microphones in respective predetermined positions so as to make it possible to calculate a direction from which comes voice uttered by a user. However, even when the one microphone  308  is provided, it is possible to realize the present invention, and the three or more microphones  308  are not necessarily required. 
     The audio controller  309  is connected to the speaker  310 . The audio controller  309  converts voice data to analog voice signals and outputs the voice through the speaker  310  according to an instruction received from the CPU  302 . The speaker  310  is a general-purpose device for reproducing voice. The speaker  310  outputs response sound indicating that the voice control device  102  is responding, and voice based on voice synthesized data generated by the cloud server  103 . 
     The display controller  311  is connected to the LED  312  and controls lighting of the LED  312  according to an instruction received from the CPU  302 . For example, the display controller  311  controls lighting of the LED  312  for indicating that the voice control device  102  is correctly inputting voice of a user. The LED  312  is an LED of e.g. blue which is visible to the user. Note that in the present embodiment, the voice control device  102  may be equipped with a display device which can display characters and a picture, instead of the LED  312 . 
       FIG.  4    is a schematic block diagram of the cloud server  103  appearing in  FIG.  1   . Referring to  FIG.  4   , the cloud server  103  includes a CPU  402 , a RAM  403 , a ROM  404 , a storage  405 , and a network interface  406 . These components are interconnected via a system bus  401 . 
     The CPU  402  is a central processing unit that controls the overall operation of the cloud server  103 . The RAM  403  is a volatile memory. The ROM  404  is a nonvolatile memory and stores a start-up program for the CPU  402  and so forth. The storage  405  is a storage device, such as a hard disk drive (hereinafter referred to as the “HDD”), which is larger in storage capacity than the RAM  403 . Note that the storage  405  is not limited to the HDD but may be another storage device having the same function as the HDD, such as a solid state drive (hereinafter referred to as the “SSD”). For example, the storage  405  stores control programs executed by the CPU  402 . 
     When the cloud server  103  is started up e.g. by powering-on, the CPU  402  executes the start-up program stored in the ROM  404 . This start-up program is a program for reading control programs stored in the storage  405  and loading the control programs into the RAM  403 . Upon execution of the start-up program, the CPU  402  successively executes the control programs loaded into the RAM  403  and performs a variety of controls. Further, the CPU  402  stores data used when executing control programs in the RAM  403  and performs reading/writing of the data. Further, a variety of setting data items required for executing the control programs are stored in the storage  405 , and the CPU  402  performs reading/writing of these setting data items. The CPU  402  communicates with other devices on the network  104  via the network interface  406 . 
       FIG.  5    is a block diagram showing functional configuration of a device control program  500  executed by the image forming apparatus  101  and the image forming apparatus  110  appearing in  FIG.  1   . Referring to  FIG.  5   , the device control program  500  is comprised of a data transmission/reception section  501 , a data analysis section  502 , a job controller  503 , a data management section  504 , a display section  505 , an operation target determination section  506 , a scan section  507 , and a printer section  508 . For example, in the image forming apparatus  101 , the device control program  500  is stored in the ROM  204 , and the CPU  202  loads the device control program  500  into the RAM  203  and executes the same when started up. Note that in the following description, the functions of the above-mentioned component elements will be described by taking a case, as an example, where the CPU  202  of the image forming apparatus  101  executes the device control program  500 . 
     The data transmission/reception section  501  causes the image forming apparatus  101  to transmit and receive data to and from another device on the network  104  using TCP/IP via the network interface  206 . For example, the image forming apparatus  101  receives device operating data generated by the cloud sever  103  via the data transmission/reception section  501 . Further, the image forming apparatus  101  transmits a screen update notification indicating that display contents of a screen, which indicate e.g. a job execution result, have been updated, and a job execution status notification indicating a job status, to the cloud sever  103  via the data transmission/reception section  501 . 
     The data analysis section  502  converts device operating data received from the cloud server  103  to a plurality of commands associated with the job controller  503 , the data management section  504 , and the display section  505 , respectively, and outputs the converted commands to the job controller  503 , the data management section  504 , and the display section  505 , respectively. 
     The job controller  503  controls the print engine  211  via the print controller  210 , and further, controls the scanner  213  via the scan controller  212 . For example, in a case where the display section  505  detects pressing of a start key on a copy function screen displayed on the console panel  209 , the job controller  503  receives parameters of a copy job and a job start instruction from the operation target determination section  506 . The job controller  503  controls the print engine  211  to print image data read by the scanner  213  on a sheet based on the received parameters of the copy job. 
     The data management section  504  stores and manages work data generated during execution of the device control program  500 , and data, such as setting parameters required for each device control, in respective predetermined areas in the RAM  203  and the storage  205 . For example, the data management section  504  stores job data used by the job controller  503 , a language setting as information on a language to be displayed on the console panel  209 , and so forth, in the RAM  203  and the storage  205 . The job data is data formed by a combination of setting items and setting values of a job. Further, the data management section  504  stores authentication information required for communication with the gateway  105 , device information required for communication with the cloud server  103 , and image data based on which an image is to be formed, in the RAM  203  and the storage  205 . Further, the data management section  504  stores screen control information used by the display section  505  to control the screen display and operation target determination information used by the operation target determination section  506  to determine an operation target, in the RAM  203  and the storage  205 . The screen control information and the operation target determination information are managed for each screen displayed by the display section  505 . 
     The display section  505  controls the console panel  209  via the display controller  207 . More specifically, the display section  505  displays UI components operable by a user (buttons, pull-down lists, check boxes, and so forth) on the console panel  209 . The screen displayed on the console panel  209  is updated based on screen display control information. For example, the display section  505  acquires a language dictionary corresponding to the language setting stored in the data management section  504  from the storage  205  and displays text data on the screen based on the language dictionary. 
     The operation target determination section  506  acquires coordinates indicating a position where a user has touched on the console panel  209  from the console interface  208 . The operation target determination section  506  determines a UI component, corresponding to the coordinates, which is displayed at this time on the console panel  209  and is operable by a user, as the operation target, reads out the screen display control information associated with the UI component determined as the operation target, and determines details of processing to be performed at the time of reception of the operation, based on the read screen display control information. For example, the operation target determination section  506  provides an instruction for updating the display contents on the screen to the display section  505  and transmits parameters of a job set by a user operation and an instruction for starting the job, to the job controller  503 . 
     The scan section  507  causes the scanner  213  to execute scanning via the scan controller  212  based on settings of scan job parameters of the job controller  503 , and stores read image data in the data management section  504 . The printer section  508  causes the print engine  211  to execute printing via the print controller  210  based on settings of print job parameters of the job controller  503 . 
       FIG.  6    is a block diagram showing a functional configuration of a voice control program  600  executed by the voice control device  102  and the voice control device  107  appearing in  FIG.  1   . Referring to  FIG.  6   , the voice control program  600  is comprised of a data transmission/reception section  601 , a data management section  602 , a voice controller  603 , a voice acquisition section  604 , a voice reproduction section  605 , a display section  606 , a voice operation start detection section  607 , and a speech end determination section  608 . For example, in the voice control device  102 , the voice control program  600  is stored in the storage  305 , and the CPU  302  loads the voice control program  600  into the RAM  303  and executes the same when started up. Note that in the following description, the functions of the above-mentioned component elements will be described by taking a case, as an example, where the CPU  302  of the voice control device  102  executes the voice control program  600 . 
     The data transmission/reception section  601  causes the voice control device  102  to transmit and receive data to and from another device on the network  104  using TCP/IP via the network interface  306 . For example, the voice control device  102  transmits the serial number of the voice control device  102  and voice data acquired by the voice acquisition section  604 , to the cloud server  103  via the data transmission/reception section  601 . The serial number of the voice control device  102  is a number for identifying the voice control device  102  of the information processing system  100 . Further, the transmission/reception section  601  receives voice synthesized data generated as a response to a user from the cloud server  103 . 
     The data management section  602  stores and manages a variety of data, such as work data generated during execution of the voice control program  600 , in a predetermined area of the storage  305 . For example, the data management section  602  stores volume setting data of voice to be reproduced by the voice reproduction section  605 , authentication information required for communication with the gateway  105 , device information required for communication with the cloud server  103 , and so forth, in the storage  305 . The device information includes, for example, the serial numbers of the voice control device  102  and the voice control device  107 . 
     The voice acquisition section  604  converts the analog voice of a user, which is acquired by the microphone  308 , to voice data and temporarily stores the voice data in the RAM  303 . The voice data is data which is converted to a predetermined format, such as MP3, and is further encoded so as to be transmitted to the cloud server  103 . The timings of start and stop of processing performed by the voice acquisition section  604  are managed by the voice controller  603 . Note that the voice data encoded in a general-purpose streaming format, and further, the encoded voice data may be sequentially transmitted by the data transmission/reception section  601 . 
     The voice reproduction section  605  causes the speaker  310  to reproduce voice synthesized data received from the cloud server  103  via the audio controller  309 . The timing in which the voice synthesized data is reproduced by the voice reproduction section  605  is managed by the voice controller  603 . 
     The display section  606  controls lighting of the LED  312  via the display controller  311 . For example, in a case where the voice operation start detection section  605  detects a voice instruction, the display section  606  lights the LED  312 . The lighting timing of the LED  312  is managed by the voice controller  603 . 
     The voice operation start detection section  607  detects wake words uttered by a user or pressing of an operation start key (not shown) of the voice control device  102  and transmits an operation start notification to the voice controller  603 . The wake words are voice words for starting an interactive session and are determined in advance. The voice operation start detection section  607  always performs detection for wake words from the analog voice of a user, which is acquired by the microphone  308 . The user can operate the image forming apparatus  101  or the image forming apparatus  110  by uttering the wake words and continuing uttering words indicating an operation desired by himself/herself. Voice processing performed after detection of wake words by the voice operation start detection section  607  will be described hereinafter. 
     The speech end determination section  608  determines the termination timing of the processing performed by the voice acquisition section  604 . For example, the speech end determination section  608  determines that the speech of the user ends, when a predetermined time period (e.g. three seconds) elapses after the user&#39;s voice breaks off, and transmits a speech termination notification to the voice controller  603 . Note that the speech end determination section  608  may perform the speech end determination based not on the time without utterance of voice (hereinafter referred to as the “blank time”), but on a predetermined word or phrase uttered by the user. For example, in a case where the user utters a predetermined word, such as “Yes, “No”, “OK”, “Cancel”, “Finish”, and “Start”, the speech end determination section  608  may determine the end of speech without waiting for the elapse of the above-mentioned time period. Further, the speech end determination may be performed not by the voice control device  102  or the voice control device  107 , but by the cloud server  103 , and the cloud server  103  may determine the end of speech based on the meaning or context of contents uttered by the user. 
     The voice controller  603  performs control such that the modules of the voice control program  600  operate in coordination with each other. For example, the voice controller  603  controls the start and end of processing operations performed by the voice acquisition section  604 , the voice reproduction section  605 , and the display section  606 . Further, after the voice acquisition section  604  acquires voice data, the voice controller  603  controls the data transmission/reception section  601  to transmit the voice data to the cloud server  103 . Further, after the data transmission/reception section  601  receives voice synthesized data from the cloud server  103 , the voice controller  603  controls the voice reproduction section  605  to reproduce the received voice synthesized data. 
     Next, the timings of the start and end of the processing operations performed by the voice acquisition section  604 , the voice reproduction section  605 , and the display section  606  will be described. 
     Let it be assumed, for example, that a user utters wake words, and then utters “I want to make a copy”. At this time, the voice operation start detection section  607  detects the voice of the wake words, and transmits an operation start notification to the voice controller  603 . Upon receipt of the operation start notification, the voice controller  603  controls the voice acquisition section  604  to start the processing. The voice acquisition section  604  acquires the analog voice of “I want to make a copy” uttered successively after the wake words, converts the acquired analog voice to voice data, and temporarily stores the voice data. When the voice of the user breaks off for a predetermined time period (e.g. three seconds) after the user has uttered the phrase of “I want to make a copy”, the speech end determination section  608  transmits a speech termination notification to the voice controller  603 . Upon receipt of the speech termination notification, the voice controller  603  controls the voice acquisition section  604  to terminate the processing. Note that a state from the start to the end of the processing performed by the voice acquisition section  604  is referred to as the speech processing state. The display section  606  lights the LED  312  during the speech processing state. 
     When it is determined that the utterance of voice by the user has ended, the voice controller  603  controls the data transmission/reception section  601  to transmit the voice data temporarily stored by the voice acquisition section  604  to the cloud server  103  and waits for a response from the cloud server  103 . The response from the cloud server  103  is a response message comprised, e.g. of a header part indicating that the message is a response and voice synthesized data. When the data transmission/reception section  601  receives the response message from the cloud server  103 , the voice controller  603  controls the voice reproduction section  605  to reproduce the voice synthesized data. When the voice synthesized data is reproduced, a voice, for example, “Copy screen is displayed”, is output from the speaker  310 . Note that a state after the determination that the speech performed by the user has ended until the end of reproduction of the voice synthesized data is referred to as the response processing state. The display section  606  blinks the LED  312  during the response processing state. 
     After the response processing, the user can continue uttering words expressing an operation desired by the user without uttering the wake words as long as the interactive session is continued. The determination of the end of the interactive session is performed by the cloud server  103 , and the cloud server  103  transmits an interactive session termination notification to the voice control device  102  or the voice control device  107 . Note that a state from the end of the interactive session to the start of the next interactive session is referred to as the standby state. The voice control device  102  is always in the standby state until an operation start notification is transmitted from the voice operation start detection section  607 . The display section  606  holds the LED  312  off during the standby state. 
       FIG.  7 A  and FIGS.  7 B 1  to  7 B 4  are diagrams useful in explaining a voice data conversion control program  700  executed by the cloud server  103  appearing in  FIG.  1   .  FIG.  7 A  is a block diagram showing a functional configuration of the voice data conversion control program  700 . The voice data conversion control program  700  is stored in the storage  405 , and the CPU  402  loads the voice data conversion control program  700  into the RAM  403  and executes the same when the CPU  402  is started. Referring to  FIG.  7 A , the voice data conversion control program  700  is comprised of a data transmission/reception section  701 , a data management section  702 , a device operation data generation section  703 , a device operating authority management section  704 , and a voice data conversion section  710 . The voice data conversion section  710  includes a voice recognition section  705 , a morpheme analysis section  706 , a group ID determination section  707 , a voice synthesis section  708 , and a file name determination section  709 . 
     The data transmission/reception section  701  causes the cloud server  103  to transmit and receive data to and from another device on the network  104  using TCP/IP via the network interface  406 . For example, the cloud server  103  receives voice data of a user from the voice control device  102  or the voice control device  107  via the data transmission/reception section  701 . Further, the cloud server  103  transmits a group ID determined by the group ID determination section  707  and a determination result of text data obtained by the voice recognition processing performed by the voice recognition section  705 , via the data transmission/reception section  701 . 
     The data management section  702  stores and manages work data generated during execution of the voice data conversion control program  700 , parameters required for the voice data conversion section  710  to perform the voice recognition processing, and the like, in a predetermined area in the storage  405 . For example, the data management section  702  identifies an associated service ID based on a device ID included in an interactive session start notification received by the data transmission/reception section  701 . The data management section  702  stores interactive session data including a session ID of the interactive session, the device ID, and the service ID, in the RAM  403 . Further, the data management section  702  stores and manages an acoustic model and a language model for converting voice data received by the data transmission/reception section  701  to text, and a dictionary used by the morpheme analysis section  706  to analyze morphemes of the text, in the storage  405 . Furthermore, the data management section  702  stores and manages a group ID list used by the group ID determination section  707  to determine a group ID and a voice database used by the voice synthesis section  708  to perform voice synthesis, in the storage  405 . Further, the data management section  702  stores and manages the respective device information items required to communicate with the voice control device  102 , the voice control device  107 , the image forming apparatus  101 , the image forming apparatus  110 , and so forth, in the storage  405  and the like. 
     The voice recognition section  705  performs the voice recognition processing for converting voice data of a user, which is received by the data transmission/reception section  701 , to text. In the voice recognition processing, the voice recognition section  705  converts voice data of the user to phonemes using an acoustic model, and further converts the phonemes to actual text data using a language model. Note that the language of voice to be input may exist in plural. Therefore, the voice recognition processing may use a first voice recognition method in which a language of input voice data is determined and then the voice data is converted to text data based on the determined language. Further, the voice recognition processing may use a second voice recognition method in which input voice data is converted to phonemes using acoustic models of different languages, the phonemes are converted to text data of each language using an associated language model, and then the text data is output. In a case where the second voice recognition method is employed, to convert voice data to text data in a plurality of language formats, the voice recognition section  705  outputs voice recognition data formed by text and language settings as a result of the voice recognition processing. Note that as shown in FIGS.  7 B 1  to  7 B 4 , originally, the used language is Japanese and the voice recognition is also written in Japanese based on the fact that the used language is Japanese (in the above-mentioned figures, parenthesized English translation is added after each word in KANA notation). Therefore, the following description is given by using English translation corresponding to written elements in Japanese language. Although the morphemes and the word order corresponding to the order of the morphemes and so forth are different between English language and Japanese language, the following description will be given using results of conversion to corresponding English words and word orders, without departing from the subject matter of the present invention. 
     The morpheme analysis section  706  performs morpheme analysis on voice recognition data converted by the voice recognition section  705 , according to the language setting. The morpheme analysis is performed to derive morpheme strings from the voice recognition data using a dictionary containing information on the language, such as grammar and parts of speech, and further, identify parts of speech and the like of the morphemes. The morpheme analysis section  706  can be realized by using known morpheme analysis software, such as JUMAN, Chazutsu, and MeCab. For example, the morpheme analysis section  706  analyzes voice recognition data of “Print one copy of File B by MFP 1” converted by the voice recognition section  705  as a morpheme string of “Print”, “one”, “copy”, “of”, “File”, “B”, “by”, “M”, “F”, “P”, and “1”. 
     The group ID determination section  707  determines a group ID by performing matching between a result of the morpheme analysis performed by the morpheme analysis section  706  and the group ID list shown in FIGS.  7 B 1  to  7 B 4  to generate a result of the group ID determination. A case where the morpheme string is formed by “Print”, “one”, “copy” will be described by way of example. In this case, the group ID determination section  707  determines “FNC00002”, “NUM00001”, and “CNF00001” as the respective group IDs of “Print”, “one”, and “copy” from the group ID list shown in FIGS.  7 B 1  to  7 B 4 . As the result of the group ID determination, the group ID determination section  707  generates {ID:FNC00002, ID:NUM00001, ID:CNF00001}. In the group ID list, words which have the same meaning and intention concerning the user operation on the image forming apparatus  101  and the image forming apparatus  110  are grouped into the same ID. Note that these words are obtained as the results of voice recognition on utterance of voice by a user toward the voice control device  102  or the voice control device  107 . 
     In a case where a file keyword, such as a file A, is included in the morphemes analyzed by the morpheme analysis section  706 , the file name determination section  709  acquires a service ID from the interactive session data stored in the RAM  403 . The file name determination section  709  searches a file management list, described hereinafter with reference to  FIG.  32   , which is stored in the storage  405  using the service ID and the file keyword as a key, to thereby acquire a file path “¥user1¥file¥fileB.JPG”, for example. 
     The voice synthesis section  708  performs voice synthesis processing based on notification data received from the image forming apparatus  101  or the image forming apparatus  110 . In the voice synthesis processing, the voice synthesis section  708  converts text forming a pair with a predetermined notification, which has been prepared in advance, to voice data of a predetermined format, such as MP3. For example, the voice synthesis section  708  generates voice data based on the voice database managed by the data management section  702 . The voice database is a database formed by a collection of voice utterances of fixed contents, such as words. Note that although in the present embodiment, the voice synthesis processing is performed using the voice database, any other method may be used as the voice synthesis method, and the method is not limited to the method using the voice database. 
     The device operation data generation section  703  determines an operation on the image forming apparatus  101  or the image forming apparatus  110  based on the group ID determined by the group ID determination section  707  and the language setting of the voice recognition data and generates a file of a predetermined data format associated with the operation. A case where as the group ID determination result, {ID:FNC00002, ID:NUM00001, ID:CNF00001} is generated will be described. In this case, the device operation data generation section  703  determines based on “FNC00002” that the image forming apparatus  101  or the image forming apparatus  110  is caused to execute a print job. The device operation data generation section  703  generates a character string of “operation”:“jobStart” and a character string of “jobName”:“Print” for executing the print job. Further, the device operation data generation section  703  determines that the number of copies of the copy job is set to 1 based on “NUM00001” and “CNF00001”, and generates a character string of “copies”:“1” for specifying the number of copies of 1. Further, the device operation data generation section  703  refers to an image file “fileB. JPEG” stored in the storage  405  based on the file path “¥user1¥file¥fileB. JPG” acquired by the file name determination section  709 . The device operation data generation section  703  generates character strings of binary data of the image file “fileB.JPEG”. In actuality, although a huge amount of data including the file header part is generated as the character strings, in the present embodiment, for ease of explanation, the binary data is described as “data”: “yyyy . . . ” which is fictious data. 
     Further, the device operation data generation section  703  acquires the serial number of the image forming apparatus  101 , for example, “mfp_serial111”, from a nickname data list, described hereinafter with reference to  FIG.  23   , based on the morphemes “M”, “F”, “P”, and “1” analyzed by the morpheme analysis section  706  and “user1@aaa.com” which is the service ID of the interactive session data stored in the RAM  403 . A priority device, for example, “Speaker 1”, which is acquired from an image forming apparatus service data list, described hereinafter with reference to  FIG.  22   , based on the service ID “user1@aaa.com” of the interactive session data and the serial number “mfp_serial111” of the image forming apparatus  101 , matches the voice control device serial number “Speaker 1” of the interactive session data, and hence the device operation data generation section  703  generates “priority”:“high” indicating the priority device. The device operation data generation section  703  generates data in a job execution format by combining these generated character strings. 
     The device operating authority management section  704  manages a flag for limiting the operating authority over a device/apparatus that receives the data in the job execution format, which is generated by the device operation data generation section  703 . One device operating authority is given over to each of the image forming apparatus  101  and the image forming apparatus  110  which are voice operation targets. For example, only a voice control device of the voice control device  102  and the voice control device  107 , for which the operating authority over the image forming apparatus  101  has been set, is enabled to operate the image forming apparatus  101  by voice via the cloud server  103 . 
       FIG.  8    is a sequence diagram useful in explaining a flow of registration of an image forming apparatus of the information processing system  100  shown in  FIG.  1   . In  FIG.  8   , a case where the user  106  instructs registration of the image forming apparatus  101  will be described by way of example. In  FIG.  8   , it is assumed that the user  106  has registered user information in advance via an application provided by a service associated with a service URL “http://service1.com” managed by the cloud server  103 , WebAPI, and so forth. The user information includes the service ID “user1@aaa.com” and a password “aaaa” associated with this service ID. The above-mentioned service ID and password are stored in the storage  405  of the cloud server  103 . 
     Referring to  FIG.  8   , first, the user  106  performs an operation for registering the image forming apparatus  101  (step S 801 ). More specifically, the user  106  operates the console panel  209  to input the service URL, the service ID “user1@aaa.com”, and the password “aaaa” Then, the CPU  202  of the image forming apparatus  101  transmits a request for registering the image forming apparatus  101  to the cloud server  103  via the network interface  206  (step S 802 ). The request for registering the image forming apparatus  101  includes the service ID and the password, which are input in the step S 801 . Further, the request for registering the image forming apparatus  101  also includes “mfp_serial111” which is the serial number of the image forming apparatus  101  and a nickname of a null character. Further, the request for registering the image forming apparatus  101  includes the IP address of the image forming apparatus  101 , e.g. “xxx.xxx.xxx.xxx”, which is stored in the RAM  203  of the image forming apparatus  101 . 
     The CPU  402  of the cloud server  103  performs processing for determining the service ID included in the received request for registering the image forming apparatus  101  (step S 803 ). More specifically, the CPU  402  determines whether or not the service ID and the password included in the received request for registering the image forming apparatus  101  match the user information registered in advance. If the above-mentioned service ID and password match the user information registered in advance, the CPU  402  performs processing for registering the image forming apparatus  101  (step S 804 ). More specifically, the CPU  402  stores the service ID, the password, the serial number of the image forming apparatus  101 , and the IP address of the image forming apparatus  101 , which are included in the received request for registering the image forming apparatus  101 , in the storage  405  in an associated state. Then, the CPU  402  notifies the image forming apparatus  101  of a result of the registration, which indicates “registration completion”, via the network interface  406  (step S 805 ). 
     The CPU  202  of the image forming apparatus  101  having received this notification displays a screen notifying the user of “registration completion” on the console panel  209  (step S 806 ), followed by terminating the present process. Note that although in the present embodiment, the user  106  instructs registration of the image forming apparatus  101  by operating the image forming apparatus  101 , the user  106  may instruct registration of the image forming apparatus  101  by operating the client terminal  109 . 
     With the above-described registration process in  FIG.  8   , in the information processing system  100 , it is possible to operate the image forming apparatus  101  by voice according to a voice instruction received by the voice control device set in association with the image forming apparatus  101 . 
       FIG.  9    is a sequence diagram useful in explaining a flow of registration of a voice control device of the information processing system  100  shown in  FIG.  1   . In  FIG.  9   , a case where the user  106  instructs registration of the voice control device  102  will be described by way of example. Note that also in  FIG.  9   , it is assumed that the user  106  has registered the above-mentioned user information in advance via the application provided by the service corresponding to the service URL “http://service1.com” managed by the cloud server  103 , the WebAPI, and so forth. 
     Referring to  FIG.  9   , first, the user  106  powers on the voice control device  102  (step S 901 ) and sets the voice control device  102  to a setup mode (step S 902 ). With this, the voice control device  102  shifts to the setup mode. The CPU  302  of the voice control device  102  performs LED lighting control for indicating that the voice control device  102  is in the setup mode. More specifically, the CPU  302  lights the LED  312  (step S 903 ). 
     Then, the user  106  instructs the client terminal  109  to start a setting application to provide an instruction for registering the voice control device  102  (step S 904 ). The client terminal  109  starts the setting application according to the start-up instruction and searches for the voice control device  102  in the setup mode (step S 905 ). 
     The CPU  302  of the voice control device  102  searched for transmits a response to the client terminal  109  (step S 906 ). The client terminal  109  having received the response transmits a login request to the cloud server  103  (step S 907 ). The login request includes the service URL “http://service1.com”, the service ID “user1@aaa.com”, and the password “aaaa”, which have been input by the user  106 . 
     The CPU  402  of the cloud server  103  performs login processing based on the service ID and the password included in the received login request (step S 908 ). If the login processing is successful, the CPU  402  notifies the client terminal  109  of a login response indicating the success (step S 909 ). 
     Upon receipt of the login response to the effect that the login processing is successful, the client terminal  109  transmits the service URL, the service ID, and the password, which are included in the login request, to the voice control device  102  as the login information (step S 910 ). 
     Upon receipt of the login information, the CPU  302  of the voice control device  102  transmits a connection request to the cloud server  103  (step S 911 ). The connection request includes the above-mentioned login information received from the client terminal  109  and “Speaker 1” which is the serial number of the voice control device  102 . Then, the CPU  302  performs the LED lighting control for indicating that the voice control device  102  is in a connection processing state. More specifically, the CPU  302  blinks the LED  312  (step S 912 ). 
     The CPU  402  of the cloud server  103  executes the login processing based on the login information included in the received connection request (step S 913 ). If the login processing is successful, the CPU  402  registers “Speaker 1” which is the serial number of the voice control device  102  (step S 914 ). When registration of the serial number of the voice control device  102  is completed, the CPU  402  notifies the voice control device  102  of a registration completion response indicating the completion (step S 915 ). 
     Upon receipt of the registration completion response, the CPU  302  of the voice control device  102  performs the LED lighting control for indicating that the voice control device  102  is in a state connected to the cloud server  103 . More specifically, the CPU  302  lights the LED  312  (step S 916 ), followed by terminating the present process. 
     With the registration process in  FIG.  9   , in the information processing system  100 , it is possible to select the voice control device  102  as a voice control device to be coordinated with the image forming apparats  101  or the image forming apparatus  110 . 
       FIGS.  10 A and  10 B  are a sequence diagram showing a first example of voice operation control performed by the information processing system  100  according to the first embodiment. Note that also in the voice operation control in  FIGS.  10 A and  10 B , it is assumed that the user  106  has registered the above-mentioned user information in advance via the application provided by the service corresponding to the service URL “http://service1.com” managed by the cloud server  103 , the WebAPI, and so forth. Further, in the voice operation control in  FIGS.  10 A and  10 B , it is assumed that the image forming apparatus  101  has already been registered by the registration process in  FIG.  8   , and the voice control device  107  and the voice control device  102  have already been registered by the registration process in  FIG.  9   . Note that in the voice operation control in  FIGS.  10 A and  10 B , the voice control device  102 , the image forming apparatus  101 , the cloud server  103  are in a state communicable with one another. Further, the image forming apparatus  101  is in a state capable of calling copy, scan, print, and the like functions, after started up by powering-on. 
     Referring to  FIGS.  10 A and  10 B , first, a user  108  utters wake words as a keyword for starting an interactive session to the voice control device  107  (step S 1001 ). The wake words are e.g. “Start up Speaker 2”. Note that Speaker 2 corresponds to the voice control device  107 . 
     When a CPU  302 ′ of the voice control device  107  detects that the user  108  has uttered the wake words, the CPU  302 ′ performs the LED lighting control for indicating the response processing state. More specifically, the CPU  302 ′ causes a LED  312 ′ to blink, via a display controller  311 ′. Then, the CPU  302 ′ starts an interactive session (step S 1002 ). The user  108  can utter an instruction desired by himself/herself without uttering the wake words during continuation of the interactive session. The voice control device  107  is in the standby state after the interactive session has been started until an operation start notification is received by the voice operation start detection section  607 , and the LED  312 ′ is off in the standby state. 
     After the interactive session has been started, the user  108  utters a keyword as a print start instruction to the voice control device  107  (step S 1003 ). This keyword is e.g. “Print fifty copies of File A by MFP 1”. Note that the MFP 1 corresponds to the image forming apparatus  101 . 
     When it is detected that the user  108  has uttered the above-mentioned keyword, the CPU  302 ′ of the voice control device  107  performs the LED lighting control for indicating the response processing state. More specifically, the CPU  302 ′ causes the LED  312 ′ to blink, via the display controller  311 ′ (step S 1004 ). Then, the CPU  302 ′ transmits a job request to the cloud server  103  via a network interface  306 ′ (step S 1005 ). This job request includes voice data of the keyword uttered by the user  108  in the step S 1003  and “Speaker 2” which is the serial number of the voice control device  107 . 
     The CPU  402  of the cloud server  103  performs the voice recognition processing on the received voice data (step S 1006 ). With the processing in the step S 1006 , the voice of “Print fifty copies of File A by MFP 1” is generated as text. Then, the CPU  402  performs morpheme analysis processing on the generated text (step S 1007 ). With the processing in the step S 1007 , the text of “Print fifty copies of File A by MFP 1” is analyzed as a morpheme string of “Print”, “fifty”, “copies”, “of”, “File”, “A”, “by”, “M”, “F”, “P”, and “1”. The CPU  402  records the morpheme string of “Print”, “fifty”, “copies”, “of”, “File”, “A”, “by”, “M”, “F”, “P”, and “1” in a morpheme string analysis result list stored in the RAM  403 . 
     Then, the CPU  402  performs group ID determination processing on the text of the morpheme string analyzed in the step S 1007  (step S 1008 ). In the group ID determination processing, for example, matching between the morpheme string of “Print”, “fifty”, “copies”, “of”, “File”, “A”, “by”, “M”, “F”, “P” and “1” and the group ID list shown in FIGS.  7 B 1  to  7 B 4  is performed. As a group ID determination result, the CPU  402  generates {ID:FNC00002, ID:NUM00050, ID:CNF00001, ID:ALP00001, ID:ALP00013, ID:ALP00006, ID:ALP00016, ID:NUM00001}. Since the top of the group ID determination result is {ID:FNC00002}, the CPU  402  judges that the job request received from the voice control device  107  is a print job execution instruction. 
     Then, the CPU  402  performs processing for setting the operating authority over the image forming apparatus  101  (step S 1009 ). As mentioned above, only one operating authority is given over one image forming apparatus. In a case where the operating authority over the image forming apparatus  101  is in an empty state, in other words, in a case where the operating authority over the image forming apparatus  101  has not been set for any other voice control device, the operating authority over the image forming apparatus  101  is set for the voice control device  107  having started the interactive session in the step S 1002 . 
     After the operating authority over the image forming apparatus  101  is set for the voice control device  107 , the CPU  402  performs job command generation processing (step S 1010 ). In the step S 1010 , a print job command for causing the image forming apparatus  101  to execute a print job associated with the job request received from the voice control device  107  is generated. Then, the CPU  402  transmits the generated print job command to the image forming apparatus  101  (step S 1011 ). 
     The CPU  202  of the image forming apparatus  101  executes the print job based on the received print job command (step S 1012 ). Then, the CPU  202  notifies the cloud server  103  of a job start response indicating that the image forming apparatus  101  has started the print job associated with the received print job command (step S 1013 ). 
     Upon receipt of the job start response, the CPU  402  of the cloud server  103  registers job management information (step S 1014 ). The job management information includes information indicating that the job status is “in-execution”, information indicating the image forming apparatus  101  executing the print job, and information indicating the voice control device  107  for which the operating authority over the image forming apparatus  101  has been set. Then, the CPU  402  performs the voice synthesis processing (step S 1015 ). In the step S 1015 , voice synthesized data of voice, for example, “Printing has been started by MFP 1”, is generated. Then, the CPU  402  transmits the generated voice synthesized data to the voice control device  107  (step S 1016 ). 
     The CPU  302 ′ of the voice control device  107  reproduces the received voice synthesized data (step S 1017 ). When this voice synthesized data is reproduced, the voice, for example, “Printing has been started by MFP 1”, is output from a speaker  310 ′. Then, the CPU  302 ′ lights off the LED  312 ′. After that, the cloud server  103  performs determination of termination of the interactive session, and upon receipt of the interactive session termination notification transmitted from the cloud server  103  based on a result of the determination, the CPU  302 ′ terminates the interactive session. 
     After that, before the image forming apparatus  101  completes the print job, the user  106  different from the user  108  utters wake words to the voice control device  102  (step S 1018  in  FIG.  10 B ; see  FIG.  10 B  hereafter). This wake words are e.g. “Start up Speaker 1”. Note that Speaker 1 corresponds to the voice control device  102 . 
     When it is detected that the user  106  has uttered the wake words, the CPU  302  of the voice control device  102  performs the LED lighting control for indicating the response processing state. More specifically, the CPU  302  causes the LED  312  to blink, via the display controller  311 . Then, the CPU  302  starts an interactive session (step S 1019 ). 
     After the interactive session has been started, the user  106  utters a keyword serving as a print start instruction to the voice control device  102  (step S 1020 ). This keyword is e.g. “Print one copy of File B by MFP 1”. 
     When it is detected that the user  106  has uttered the above-mentioned keyword, the CPU  302  of the voice control device  102  performs the LED lighting control for indicating the response processing state. More specifically, the CPU  302  causes the LED  312  to blink, via the display controller  311  (step S 1021 ). Then, the CPU  302  transmits a job request to the cloud server  103  via the network interface  306  (step S 1022 ). This job request includes voice data of the keyword uttered by the user  106  in the step S 1020  and “Speaker 1” which is the serial number of the voice control device  102 . 
     The CPU  402  of the cloud server  103  performs the voice recognition processing on the received voice data (step S 1023 ). With the processing in the step S 1023 , the voice of “Print one copy of File B by MFP 1” is generated as text. Then, the CPU  402  performs the morpheme analysis processing on the generated text (step S 1024 ). With the processing in the step S 1024 , the text of “Print one copy of File B by MFP 1” is analyzed as a morpheme string of “Print”, “one”, “copy”, “of”, “File”, “B”, “by”, “M”, “F”, “P”, and “1”. The CPU  402  records the morpheme string of “Print”, “one”, “copy”, “of”, “File”, “B”, “by”, “M”, “F”, “P”, and “1” in the morpheme string analysis result list stored in the RAM  403 . 
     Then, the CPU  402  performs the group ID determination processing on the text of the morpheme string analyzed in the step S 1024  (step S 1025 ). In the group ID determination processing, for example, matching between the morpheme string of “Print”, “one”, “copy”, “of”, “File”, “B”, “by”, “M”, “F”, “P”, and “1” and the group ID list shown in FIGS.  7 B 1  to  7 B 4  is performed. As a group ID determination result, the CPU  402  generates {ID:FNC00002, ID:NUM00001, ID:CNF00001, ID:ALP00002, ID:ALP00013, ID:ALP00006, ID:ALP00016, ID:NUM00001}. Since the top of the group ID determination result is {ID:FNC00002}, the CPU  402  judges that the job request received from the voice control device  102  is a print job execution instruction. 
     Then, the CPU  402  performs processing for setting the operating authority over the image forming apparatus  101  (step S 1026 ). Here, the operating authority over the image forming apparatus  101  has already been set for the voice control device  107  in the step S 1009 , and hence the operating authority over the image forming apparatus  101  is not set for the voice control device  102  which has started an interactive session after that. 
     In a case where the operating authority over the image forming apparatus  101  is not set for the voice control device  102 , the CPU  402  performs the voice synthesis processing (step S 1027 ). In the step S 1207 , voice synthesized data of voice, for example, “MFP 1 is in use”, is generated. Then, the CPU  402  transmits the generated voice synthesized data to the voice control device  102  (step S 1028 ). 
     The CPU  302  of the voice control device  102  reproduces the received voice synthesized data (step S 1029 ). When this voice synthesized data is reproduced, the voice, for example, “MFP 1 is in use”, is output from the speaker  310 . Then, the CPU  302  lights off the LED  312 . After that, the cloud server  103  performs the determination of termination of the interactive session, and upon receipt of the interactive session termination notification indicating a result of the determination, from the cloud server  103 , the CPU  302  terminates the interactive session. 
     On the other hand, when the print job started in the step S 1012  is terminated, the CPU  202  of the image forming apparatus  101  transmits a job termination notification indicating “normal termination” to the cloud server  103  via the network interface  406  (step S 1030 ). 
     Upon receipt of the job termination notification, the CPU  402  of the cloud server  103  cancels the setting of the operating authority over the image forming apparatus  101  for the voice control device  107  (step S 1031 ). Then, the CPU  402  updates the job management information registered in the step S 1014  (step S 1032 ). More specifically, the CPU  402  updates the job status in the job management information from “in-execution” to “standby”. Further, the CPU  402  deletes the information indicating the image forming apparatus  101  executing the print job and the information indicating the voice control device  107  for which the operating authority over the image forming apparatus  101  has been set, from the job management information. Then, the CPU  402  performs the voice synthesis processing (step S 1033 ). In the step S 1033 , voice synthesized data of voice, for example, “Print job normally finished by MFP 1”, is generated. Then, the CPU  402  transmits the generated voice synthesized data to the voice control device  107  via the network interface  406  (step S 1034 ). 
     The CPU  302 ′ of the voice control device  107  reproduces the received voice synthesized data (step S 1035 ). When this voice synthesized data is reproduced, the voice, for example, “Print job normally finished by MFP 1”, is output from the speaker  310 ′, followed by terminating the present process. 
     According to the above-described first embodiment, the control for causing the image forming apparatus  101  to execute a job is performed based on the information on which of the voice control device  102  and the voice control device  107  is a device which is to be preferentially used. With this, it is possible to properly cope with the state of competition between instructions in the configuration in which a plurality of voice control devices are coordinated with one image forming apparatus. 
     Further, in the above-described first embodiment, the operating authority over the image forming apparatus  101  is set for one of the voice control device  102  and the voice control device  107 , whereby the image forming apparatus  101  is caused to execute a job associated with a voice instruction received by the voice control device for which the operating authority over the image forming apparatus  101  is set. This makes it possible to avoid the state of competition between instructions. 
     Further, in the above-described first embodiment, the operating authority over the image forming apparatus  101  is set for one of the voice control device  102  and the voice control device  107 , which has received a voice instruction first. This makes it possible to positively execute a print job associated with the voice instruction received first. 
     Note that in the above-described first embodiment, the operating authority over the image forming apparatus  101  may be set for one of the voice control device  102  and the voice control device  107 , for which a higher priority has been set. 
       FIG.  11    is a diagram showing changes in a screen occurring when setting the priority of the voice control device in the information processing system  100  shown in  FIG.  1   . Although in the present embodiment, an example in which the image forming apparatus  101  is used as a terminal that logs in the cloud server  103  is described, the terminal that logs in the cloud server  103  is not limited to the image forming apparatus  101 . For example, an apparatus, such as a PC or a mobile device, may be used as the terminal that logs in the cloud server  103 . 
     A login screen  1101  appearing in  FIG.  11    is a screen for logging in the cloud server  103  and is displayed on the console panel  209  of the image forming apparatus  101  as the terminal that logs in the cloud server  103 . The login screen  1101  is displayed when a predetermined URL is input as a URL input box  1102  on the browser displayed on the console panel  209 . When a user enters values in a service URL input box  1103 , a service ID input box  1104 , and a password input box  1105 , and presses a login button  1106 , the screen on the console panel  209  is changed to a setting menu screen  1107 . 
     The setting menu screen  1107  is a screen for registering an image forming apparatus and a voice control device, and setting a priority. When the user presses a priority setting button  1108  on the setting menu screen  1107 , the screen on the console panel  209  is changed to an MFP selection screen  1109 . 
     The MFP selection screen  1109  is a screen for selecting an image forming apparatus for which the priority of a voice control device to be coordinated is set, from a plurality of registered image forming apparatuses. When the user selects one of the plurality of registered image forming apparatuses displayed on the MFP selection screen  1109 , the screen on the console panel  209  is changed to a voice control device priority-setting screen  1111 . In the present embodiment, it is assumed that an MFP button  1110  corresponding to the image forming apparatus  101  is selected, by way of example. 
     The voice control device priority-setting screen  1111  displays a list of voice control devices registered in advance as a device to be coordinated with the image forming apparatus  101  and the priority of each voice control device. When the user changes the priority of a voice control device and presses an OK button  1112 , the changed priority is set as the priority of the voice control device. In the present embodiment, in a case where the value of the priority is “1”, this priority is the highest, and the priority becomes lower as the value of the priority is larger. 
       FIGS.  12 A and  12 B  are a sequence diagram showing a second example of the voice operation control performed by the information processing system  100  according to the first embodiment. The voice operation control in  FIGS.  12 A and  12 B  is basically the same as the voice operation control in  FIGS.  10 A and  10 B , and the following description will be given of different points from the voice operation control in  FIGS.  10 A and  10 B . In  FIGS.  12 A and  12 B , it is assumed that the priority lower than that of the voice control device  102  has been set for the voice control device  107 . In  FIGS.  12 A and  12 B , a case will be described, by way of example, where the voice control device  102  for which the higher priority than that of the voice control device  107  has been set receives a voice instruction as an instruction for executing another print job while the image forming apparatus  101  is executing a print job instructed by a voice operation given to the voice control device  107 . Also in the voice operation control in  FIGS.  12 A and  12 B , it is assumed that the user  106  has registered the above-mentioned user information in advance via the application provided by the service corresponding to the service URL “http://service1.com” managed by the cloud server  103 , the WebAPI, and so forth. Further, also in the voice operation control in  FIGS.  12 A and  12 B , it is assumed that the image forming apparatus  101  has already been registered by the registration process in  FIG.  8   , and the voice control device  107  and the voice control device  102  have already been registered by the registration process in  FIG.  9   . Note that also in the voice operation control in  FIGS.  12 A and  12 B , the voice control device  102 , the image forming apparatus  101 , the cloud server  103  are in a state communicable with one another. Further, the image forming apparatus  101  is in a state capable of calling copy, scan, print, and the like functions, after started up by powering-on. 
     Referring to  FIGS.  12 A and  12 B , first, steps S 1201  to S 1208  which are the same as the steps S 1001  to S 1008  are executed. With these steps, the cloud server  103  performs the voice recognition processing, the morpheme analysis processing, and the group ID determination processing based on a job request received from the voice control device  107 . Then, the CPU  402  of the cloud server  103  executes an operating authority-setting process (step S 1209 ), described hereinafter with reference to  FIG.  13   , and sets the operating authority over the image forming apparatus  101  for the voice control device  107 . Then, steps S 1210  to S 1225  which are the same as the steps S 1010  to S 1025  are executed. With these steps, the cloud server  103  performs the voice recognition processing, the morpheme analysis processing, and the group ID determination processing based on the job request transmitted from the voice control device  102  while the image forming apparatus  101  is executing the print job associated with the job request received from the voice control device  107 . 
     Then, the CPU  402  of the cloud server  103  executes the operating authority-setting process, described hereinafter with reference to  FIG.  13    (step S 1226 ). Here, although the operating authority over the image forming apparatus  101  is set for the voice control device  107  in the step S 1209 , the voice control device  102  is higher in priority than the voice control device  107  as mentioned above. In this case, in the step S 1226 , the setting of the operating authority over the image forming apparatus  101  for the voice control device  107  is canceled, and the operating authority over the image forming apparatus  101  is set for the voice control device  102 . Then, the CPU  402  transmits a print job stop processing request for stopping the print job being executed to the image forming apparatus  101  (step S 1227 ). 
     The CPU  202  of the image forming apparatus  101  execute print job stop processing according to the received print job stop processing request (step S 1228 ; see  FIG.  12 B  hereafter). In the print job stop processing, the CPU  202  stops the print job being executed, i.e. the print job which has been instructed by the voice operation on the voice control device  107  and started in the step S 1212 . When the image forming apparatus  101  has stopped this print job and shifted to a state capable of executing another print job, the CPU  202  transmits a print job termination response to the cloud server  103  (step S 1229 ). 
     Upon receipt of the job termination response, the CPU  402  of the cloud server  103  performs the voice synthesis processing (step S 1230 ). In the step S 1230 , voice synthesized data of voice, for example, “Printing by MFP 1 has been interrupted”, is generated. Then, the CPU  402  transmits the generated voice synthesized data to the voice control device  107  (step S 1231 ). 
     The CPU  302 ′ of the voice control device  107  reproduces the received voice synthesized data (step S 1232 ). When this voice synthesized data is reproduced, the voice, for example, “Printing by MFP 1 has been interrupted”, is output from the speaker  310 ′. 
     On the other hand, after transmitting the voice synthesized data to the voice control device  107  in the step S 1231 , the CPU  402  of the cloud server  103  updates the job management information registered in the step S 1214  (step S 1233 ). In the step S 1233 , the information indicating that the job status is “in-execution” is deleted from this job management information. Then, the CPU  402  performs the job command generation processing based on the voice data received from the voice control device  102  in the step S 1222  (step S 1234 ). Then, the CPU  402  transmits the generated print job command to the image forming apparatus  101  (step S 1235 ). 
     The CPU  202  of the image forming apparatus  101  executes a print job based on the received print job command (step S 1236 ). Then, the CPU  202  notifies the cloud server  103  of a job start response indicating that the image forming apparatus  101  has started the print job associated with the received print job command (step S 1237 ). 
     Upon receipt of the job start response, the CPU  402  of the cloud server  103  registers job management information (step S 1238 ). This job management information includes information indicating that the job status is “in-execution”, information indicating the image forming apparatus  101  executing the print job, and information indicating the voice control device  102  for which the operating authority over the image forming apparatus  101  has been set. Then, the CPU  402  performs the voice synthesis processing (step S 1239 ). In the step S 1239 , voice synthesized data of voice, for example, “Interrupted printing by MFP 1”, is generated. Then, the CPU  402  transmits the generated voice synthesized data to the voice control device  102  (step S 1240 ). 
     The CPU  302  of the voice control device  102  reproduces the received voice synthesized data (step S 1241 ). When this voice synthesized data is reproduced, the voice, for example, “Interrupted printing by MFP 1”, is output from the speaker  310 . Then, the CPU  302  lights off the LED  312 . After that, the cloud server  103  performs determination of termination of the interactive session, and upon receipt of the interactive session termination notification transmitted from the cloud server  103  based on a result of the determination, the CPU  302  terminates the interactive session. 
     On the other hand, when the print job started in the step S 1236  is terminated, the CPU  202  of the image forming apparatus  101  transmits a job termination notification indicating “normal termination” to the cloud server  103  via the network interface  406  (step S 1242 ). 
     Upon receipt of the job termination notification, the CPU  402  of the cloud server  103  deletes the job management information registered in the step S 1238  (step S 1243 ). Then, the CPU  402  performs the voice synthesis processing (step S 1244 ). In the step S 1244 , voice synthesized data of voice, for example, “Job of MFP 1 has been terminated”, is generated. Then, the CPU  402  transmits the generated voice synthesized data to the voice control device  102  (step S 1245 ). 
     The CPU  302  of the voice control device  102  reproduces the received voice synthesized data (step S 1246 ). When this voice synthesized data is reproduced, the voice, for example, “Job of MFP 1 has been terminated”, is output from the speaker  310 . 
     On the other hand, after transmitting the voice synthesized data to the voice control device  102  in the step S 1245 , the CPU  402  of the cloud server  103  performs the operating authority-setting process, described hereinafter with reference to  FIG.  13    (step S 1247 ). In the step S 1247 , the setting of the operating authority over the image forming apparatus  101  for the voice control device  102  is canceled, and the operating authority over the image forming apparatus  101  is set for the voice control device  107  for which the setting of the same has been canceled in the step S 1226 . Note that this setting process may be executed at any other timing after the cloud server  103  has received the job termination notification transmitted from the image forming apparatus  101  in the step S 1242  before the step S 1248  is started. Then, the CPU  402  updates the job management information updated in the step S 1233  (step S 1248 ). In the step S 1248 , information indicating that the job state is “resume” is added to the job management information. Then, the CPU  402  executes the job command generation processing (step S 1249 ). In the step S 1249 , a print job command for resuming the print job stopped in the step S 1228  is generated. Then, the CPU  402  transmits the generated print job command to the image forming apparatus  101  (step S 1250 ). 
     The CPU  202  of the image forming apparatus  101  performs print job resuming processing based on the received print job command (step S 1251 ). With this, the print job stopped in the step S 1228 , i.e. the print job instructed by the voice operation given to the voice control device  107  is resumed. Then, the CPU  202  transmits a job resuming response indicating that the above-mentioned print job has been resumed to the cloud server  103  (step S 1252 ). 
     Upon receipt of the print job resuming response, the CPU  402  of the cloud server  103  performs the voice synthesis processing (step S 1253 ). In the step S 1253 , voice synthesized data of voice, for example, “Printing by MFP 1 has been resumed”, is generated. Then, the CPU  402  transmits the generated voice synthesized data to the voice control device  107  (step S 1254 ). 
     The CPU  302 ′ of the voice control device  107  reproduces the received voice synthesized data (step S 1255 ). When this voice synthesized data is reproduced, the voice, for example, “Printing by MFP 1 has been resumed”, is output from the speaker  310 ′. 
     On the other hand, when the job resumed in the step S 1251  is terminated, the CPU  202  of the image forming apparatus  101  transmits a job termination notification indicating “normal termination” to the cloud server  103  via the network interface  406  (step S 1256 ). 
     Upon receipt of the job termination notification, the CPU  402  of the cloud server  103  performs the operating authority-setting process, described hereinafter with reference to  FIG.  13    (step S 1257 ), and cancels the setting of the operating authority over the image forming apparatus  101  for the voice control device  107 . Then, the CPU  402  updates the job management information updated in the step S 1248  (step S 1258 ). More specifically, the CPU  402  updates the job state in the job management information from “in-execution” to “standby”. Further, the CPU  402  deletes the information indicating the image forming apparatus  101  executing the print job, and the information indicating the voice control device  107  for which the operating authority over the image forming apparatus  101  has been set, from the job management information. Then, the CPU  402  performs the voice synthesis processing (step S 1259 ). In the step S 1259 , voice synthesized data of voice, for example, “Print job by MFP 1 has been normally terminated”, is generated. Then, the CPU  402  transmits the generated voice synthesized data to the voice control device  107  via the network interface  406  (step S 1260 ). 
     The CPU  302 ′ of the voice control device  107  reproduces the received voice synthesized data (step S 1261 ). When this voice synthesized data is reproduced, the voice, for example, “Print job by MFP 1 has been normally terminated”, is output from the speaker  310 ′, followed by terminating the present process. 
       FIG.  13    is a flowchart of the operating authority-setting process performed in the steps S 1209 , S 1226 , S 1247 , and S 1257  in  FIGS.  12 A and  12 B . The operating authority-setting process in  FIG.  13    is realized by the CPU  402  of the cloud server  103 , which executes an associated program stored in the ROM  404  or the storage  405 . The operating authority-setting process in  FIG.  13    is executed in a case where the voice control device  102  or the voice control device  107  transmits voice data as a job request to the cloud server  103 , or in a case where the image forming apparatus  101  or the image forming apparatus  110  transmits a job termination notification to the cloud server  103 . 
     Referring to  FIG.  13   , the CPU  402  determines whether the received data is a job request or a job termination notification (step S 1301 ). 
     If it is determined in the step S 1301  that the received data is a job request, the CPU  402  determines whether or not the operating authority over an apparatus which is caused to execute a job associated with the received job request has been set for a voice control device different from the transmission source of the job request (step S 1302 ). For example, in a case where the received data is a job request transmitted from the voice control device  102  and for causing the image forming apparatus  101  to execute a print job, it is determined in the step S 1302  whether or not the operating authority over the image forming apparatus  101  has been set for the voice control device  107  different from the voice control device  102 . 
     If it is determined in the step S 1302  that the operating authority over the above-mentioned apparatus has not been set for a voice control device different from the transmission source of the job request, the CPU  402  sets the operating authority over the above-mentioned apparatus for the voice control device which is the transmission source of the job request (step S 1303 ). With this, for example, the voice control device  102  which is the transmission source of the job request acquires the operating authority over the image forming apparatus  101 , followed by terminating the operating authority-setting process. 
     If it is determined in the step S 1302  that the operating authority over the above-mentioned apparatus has been set for a voice control device different from the transmission source of the job request, the CPU  402  compares the priority of the voice control device for which the operating authority over the above-mentioned apparatus has been set and the priority of the voice control device which is the transmission source of the job request (step S 1304 ). The CPU  402  determines whether or not the priority of the voice control device which is the transmission source of the job request is higher than the priority of the voice control device for which the operating authority over the above-mentioned apparatus has been set (step S 1305 ). 
     If it is determined in the step S 1305  that the priority of the voice control device which is the transmission source of the job request is lower than the priority of the voice control device for which the operating authority over the above-mentioned apparatus has been set, the CPU  402  terminates the present process. If it is determined in the step S 1305  that the priority of the voice control device which is the transmission source of the job request is higher than the priority of the voice control device for which the operating authority over the above-mentioned apparatus has been set, the CPU  402  executes a step S 1306 . In the step S 1306 , the CPU  402  cancels the setting of the operating authority over the above-mentioned apparatus for the voice control device for which the operating authority over the above-mentioned apparatus has been set, and sets anew the operating authority over the above-mentioned apparatus for the voice control device which is the transmission source of the job request, followed by terminating the operating authority-setting process. 
     If it is determined in the step S 1301  that the received data is a job termination notification, the CPU  402  determines whether or not any other job request has been received (step S 1307 ). In the step S 1307 , for example, in a case where a job request has been received from a voice control device different from the requesting source of the terminated job, the CPU  402  determines that another job request has been received. On the other hand, in a case where no job request has been received from any voice control device different from the requesting source of the terminated job, the CPU  402  determines that no other job request has been received. 
     If it is determined in the step S 1307  that another job request has been received, the CPU  402  identifies a voice control device which is the highest in priority, out of the voice control devices which are the transmission sources of the received job requests. The CPU  402  sets the operating authority over the above-mentioned apparatus for the identified voice control device (step S 1308 ), followed by terminating the operating authority-setting process. 
     If it is determined in the step S 1307  that no other job request has been received, the CPU  402  cancels the setting of the operating authority over the above-mentioned apparatus for the voice control device as the requesting source of the terminated job (step S 1309 ), followed by terminating the present process. 
     In the above-described first embodiment, the operating authority over the image forming apparatus  101  is set for a voice control device for which the higher priority has been set, out of the voice control device  102  and the voice control device  107 . With this, it is possible to preferentially execute a print job associated with a voice instruction received by the voice control device for which the higher priority has been set. 
     Further, in the above-described first embodiment, in a case where the voice control device  102  for which the higher priority than that of the voice control device  107  has been set receives another voice instruction while the image forming apparatus  101  is executing a print job associated with a voice instruction received by the voice control device  107 , a voice control device for which the operating authority over the image forming apparatus  101  is set is changed from the voice control device  107  to the voice control device  102 . With this, in a case where the voice control device  102  for which the higher priority than that of the voice control device  107  has been set receives a voice instruction after the voice control device  107  has received a voice instruction, it is possible to positively set the operating authority over the image forming apparatus  101  for the voice control device  102 . 
     Further, in the above-described first embodiment, the image forming apparatus  101  is caused to suspend execution of the print job associated with the voice instruction received by the voice control device  107  and execute the other print job associated with the other voice instruction received by the voice control device  102  as an interrupt. With this, even when the print job associated with the voice instruction received by the voice control device  107  is being executed first, it is possible to preferentially execute the other print job associated with the voice instruction received by the voice control device  102  for which the higher priority than that of the voice control device  107  has been set. 
     In the above-described first embodiment, after completion of the other print job associated with the other voice instruction received by the voice control device  102 , the image forming apparatus  101  is caused to resume the suspended print job, i.e. the print job associated with the voice instruction received by the voice control device  107 . With this, it is possible to prevent the print job associated with the voice instruction received by the voice control device  107  from being unexecuted by being left in the suspended state. 
     Note that in the above-described first embodiment, in a case where a voice instruction received by the voice control device  102  for which the higher priority than that of the voice control device  107  has been set is a keyword for checking the device status, the setting of the operating authority over the image forming apparatus  101  may be held in a state set for the voice control device  107 . 
       FIGS.  14 A and  14 B  are a sequence diagram showing a third example of the voice operation control performed by the information processing system  100  according to the first embodiment. The voice operation control in  FIGS.  14 A and  14 B  is basically the same as the voice operation controls in  FIGS.  10 A and  10 B  and  FIGS.  12 A and  12 B , and the following description will be given of different points from the voice operation controls in  FIGS.  10 A and  10 B  and  FIGS.  12 A and  12 B . Also in  FIGS.  14 A and  14 B , it is assumed that the priority lower than that of the voice control device  102  has been set for the voice control device  107 . In  FIGS.  14 A and  14 B , a case will be described, by way of example, where the voice control device  102  receives a keyword as an instruction for checking a status of the image forming apparatus  101  while the image forming apparatus  101  is executing a print job instructed by a voice operation given to the voice control device  107 . Note that also in the voice operation control in  FIGS.  14 A and  14 B , it is assumed that the user  106  has registered the above-mentioned user information in advance via the application provided by the service corresponding to the service URL “http://service1.com” managed by the cloud server  103 , the WebAPI, and so forth, in advance. Further, also in the voice operation control in  FIGS.  14 A and  14 B , it is assumed that the image forming apparatus  101  has already been registered by the registration process in  FIG.  8   , and the voice control device  107  and the voice control device  102  have already been registered by the registration process in  FIG.  9   . Note that also in the voice operation control in  FIGS.  14 A and  14 B , the voice control device  102 , the image forming apparatus  101 , the cloud server  103  are in a state communicable with one another. Further, the image forming apparatus  101  is in a state capable of calling copy, scan, print, and the like functions, after started up by powering-on. 
     Referring to  FIGS.  14 A and  14 B , first, steps S 1401  to S 1419  which are the same as the above-described steps S 1201  to S 1219  are executed. With these steps, the image forming apparatus  101  starts a print job instructed by a voice operation given to the voice control device  107 , and then the voice control device  102  for which the higher priority than that of the voice control device  107  has been set starts an interactive session. Then, the user  106  utters a keyword for performing checking of the device status to the voice control device  102  (step S 1420 ). This keyword is e.g. “MFP1 toner remaining amount?”. 
     When it is detected that the user  106  has uttered the above-mentioned keyword, the CPU  302  of the voice control device  102  performs the LED lighting control for indicating the response processing state. More specifically, the CPU  302  causes the LED  312  to blink, via the display controller  311  (step S 1421 ). Then, the CPU  302  transmits a device status check request to the cloud server  103  via the network interface  306  (step S 1422 ). This device status check request includes voice data of the keyword uttered by the user  106  in the step S 1420  and the serial number of the voice control device  102 . 
     The CPU  402  of the cloud server  103  performs the voice recognition processing on the received voice data (step S 1423 ). With the processing in the step S 1423 , the voice of “MFP1 toner remaining amount?” is generated as text. Then, the CPU  402  performs the morpheme analysis processing on the generated text (step S 1424 ). As a result of the processing in the step S 1424 , the text of “MFP1 toner remaining amount?” is analyzed as a morpheme string of “M”, “F”, “P”, “1”, “toner”, and “remaining amount?”. The CPU  402  records the morpheme string “M”, “F”, “P”, “1”, “toner”, and “remaining amount?” in the morpheme string analysis result list stored in the RAM  403 . 
     Then, the CPU  402  performs the group ID determination processing on the text of the morpheme string analyzed in the step S 1424  (step S 1425 ). In the group ID determination processing, for example, matching between the morpheme string “M”, “F”, “P”, “1”, “toner”, “remaining amount?” and the group ID list shown in FIGS.  7 B 1  to  7 B 4  is performed. As a group ID determination result, the CPU  402  generates {ID:ALP00013, ID:ALP00006, ID:ALP00016, ID:NUM00001, ID:NAM00006, ID: NAM00007}. Since the top of the group ID determination result is {ID:ALP00013} and the end of the same is {ID: NAM00006, ID: NAM00007}, the CPU  402  determines that the request received from the voice control device  102  is not a job request, but a request for checking the toner remaining amount. 
     Then, the CPU  402  transmits a toner remaining amount check command to the image forming apparatus  101  without performing the above-described operating authority-setting process (step S 1426 ). Thus, even when a request is received from the voice control device  102  which is higher in priority than the voice control device  107  while the print job instructed by a voice operation given to the voice control device  107  is being executed, in a case where the processing associated with this request can be executed in parallel with the job being executed, the setting of the operating authority is not changed (see e.g. the step S 1226 ). 
     The CPU  202  of the image forming apparatus  101  checks the toner remaining amount while executing the print job instructed by the voice operation given to the voice control device  107  and transmits a toner remaining amount notification indicating the checked toner remaining amount to the cloud server  103  (step S 1427 ). 
     The CPU  402  of the cloud server  103  performs the voice synthesis processing based on the received toner remaining amount notification (step S 1428 ). In the step S 1428 , voice synthesized data of voice, for example, “MFP 1 toner remaining amount is 50%”, is generated. Then, the CPU  402  transmits the generated voice synthesized data to the voice control device  102  (step S 1429 ). 
     The CPU  302  of the voice control device  102  reproduces the received voice synthesized data (step S 1430 ). When this voice synthesized data is reproduced, the voice, for example, “MFP 1 toner remaining amount is 50%”, is output from the speaker  310 . Then, steps S 1431  to S 1436  which are the same as the steps S 1030  to S 1035  are executed, followed by terminating the present process. 
     In the above-described first embodiment, in a case where the voice control device  102  for which the higher priority than that of the voice control device  107  has been set receives a voice instruction for checking the device status while the print job associated with the job request received from the voice control device  107  is being executed, the operating authority over the image forming apparatus  101  set for the voice control device  107  is held. With this, it is possible to prevent the print job from being unnecessarily suspended even when a voice instruction received by the voice controller  102  is an instruction for executing processing which can be executed in parallel with the print job associated with the job request received from the voice control device  107 . 
     Note that in the above-described embodiment, the operating authority over the image forming apparatus  101  may be set for a voice control device that has received a predetermined word indicating urgency (hereinafter referred to as the “urgency suggesting word”), out of the voice control device  102  and the voice control device  107 . 
       FIG.  15    is a flowchart of a variation of the operating authority-setting process in  FIG.  13   . The operating authority-setting process in  FIG.  15    is realized by the CPU  402  of the cloud server  103 , which executes an associated program stored in the ROM  404  or the storage  405 . The operating authority-setting process in  FIG.  15    is executed in a case where the cloud server  103  receives a job request from the voice control device  102  or the voice control device  107 . 
     Referring to  FIG.  15   , the CPU  402  determines whether or not an urgency suggesting word is included in voice data included in the received job request (step S 1501 ). The urgency suggesting word is e.g. “hurry” or “urgent”. 
     If it is determined in the step S 1501  that an urgency suggesting word is included in the voice data included in the received job request, the CPU  402  performs processing for temporarily increasing the priority of the voice control device which is the transmission source of the job request (step S 1502 ). With the processing in the step S 1502 , the priority of the voice control device which is the transmission source of the job request becomes highest. With this, the operating authority over the apparatus which is caused to execute a print job associated with the job request is set for the voice control device having received the urgency suggesting word. Note that the priority temporarily changed in the step S 1502  is changed to the original setting of the priority at a predetermined timing, such as a timing when the interactive session of the voice control device is terminated. In a step S 1503  following the step S 1502 , the CPU  402  determines whether or not the operating authority over the apparatus which is caused to execute the print job associated with the job request has been set for another voice control device different from the voice control device which is the transmission source of the job request. If it is determined in the step S 501  that no urgency suggesting word is included in the voice data included in the received job request, the CPU  402  directly proceeds to the step S 1503 . 
     If it is determined in the step S 1503  that the operating authority over the above-mentioned apparatus has not been set for any other voice control device, the CPU  402  sets the operating authority over the above-mentioned apparatus for the voice control device which is the transmission source of the job request (step S 1504 ), followed by terminating the present process. 
     If it is determined in the step S 1503  that the operating authority over the above-mentioned apparatus has been set for another voice control device, the CPU  402  compares the priority of the voice control device for which the operating authority over the above-mentioned apparatus has been set and the priority of the voice control device which is the transmission source of the job request (step S 1505 ). Then, the CPU  402  determines whether or not the priority of the voice control device which is the transmission source of the job request is higher than the priority of the voice control device for which the operating authority over the above-mentioned apparatus has been set (step S 1506 ). 
     If it is determined in the step S 1506  that the priority of the voice control device which is the transmission source of the job request is not higher than the priority of the voice control device for which the operating authority over the above-mentioned apparatus has been set, the CPU  402  terminates the present process. If it is determined in the step S 1506  that the priority of the voice control device which is the transmission source of the job request is higher than the priority of the voice control device for which the operating authority over the above-mentioned apparatus has been set, the CPU  402  executes a step S 1507 . In the step S 1507 , the CPU  402  cancels the setting of the operating authority over the above-mentioned apparatus for the voice control device and sets anew the operating authority over the above-mentioned apparatus for the voice control device which is the transmission source of the job request, followed by terminating the operating authority-setting process. 
     In the above-described first embodiment, the operating authority over the image forming apparatus  101  is set for a voice control device that has received an urgency suggesting word, out of the voice control device  102  and the voice control device  107 . With this, it is possible to immediately execute a print job having high urgency even when the user performs a voice instruction to any of the voice control device  102  and the voice control device  107 . 
     Next, details of the function and the configuration of the device operating authority management section  704  included in the voice data conversion control program  700  executed by the cloud server  103  will be described. 
       FIG.  16    is a schematic block diagram of the device operating authority management section  704  appearing in  FIG.  7 A . Referring to  FIG.  16   , the device operating authority management section  704  is comprised of a device operation reception section  1601  and a priority setting management section  1602 . 
     The device operation reception section  1601  receives a command generated based on a job request or a device status check request, which is transmitted e.g. from the voice control device  102 , from the device operation data generation section  703 . The priority setting management section  1602  has MFP operation management sections corresponding in number to the number of registered image forming apparatuses.  FIG.  16    shows a configuration of the device operating authority management section  704  including two MFP operation management section  1603  and  1606  corresponding in number to the number of the registered image forming apparatuses  101  and  110 , by way of example. The priority setting management section  1602  determines whether the command received by the device operation reception section  1601  is a command to the image forming apparatus  101  or a command to the image forming apparatus  110 , and assigns the received command to the MFP operation management section  1603  or the MFP operation management section  1606 . A command to the image forming apparatus  101  is assigned to the MFP operation management section  1603 , and a command to the image forming apparatus  110  is assigned to the MFP operation management section  1606 . 
     The MFP operation management section  1603  manages the operation of the image forming apparatus  101 , and the MFP operation management section  1606  manages the operation of the image forming apparatus  110 . Note that in the present embodiment, the MFP operation management section  1603  and the MFP operation management section  1606  have the same functions and components except a point that the management target is different. The following description will be given of the functions and components of the MFP operation management section  1603 , by way of example. 
     The MFP operation management section  1603  includes an operating authority storage section  1604  and a voice control device priority list  1605 . In the operating authority storage section  1604 , a serial number of a voice control device which is a requesting source of a job being executed by the image forming apparatus  101  is recorded. In the voice control device priority list  1605 , the priorities of voice control devices coordinated with the image forming apparatus  101  are set. 
     The MFP operation management section  1603  determines whether a received command is based on a job request or a device status check request. For example, in a case where the received command is based on a device status check request, the MFP operation management section  1603  transmits the received command to the image forming apparatus  101 . On the other hand, in a case where the received command is based on a job request, the MFP operation management section  1603  checks whether or not the serial number of the voice control device which is the requesting source of the job being executed by the image forming apparatus  101  has been recorded in the operating authority storage section  1604 . 
     In a case where the serial number of the voice control device which is the requesting source of the job being executed by the image forming apparatus  101  has been recorded in the operating authority storage section  1604 , the MFP operation management section  1603  checks the voice control device priority list  1605 . The MFP operation management section  1603  compares the priority of the voice control device which is the requesting source of the job and the priority of a voice control device corresponding to the serial number recorded in the operating authority storage section  1604 . As a result of the comparison, in a case where the priority of the voice control device which is the requesting source of the job is higher, the control for suspending the job being executed by the image forming apparatus  101  and causing the image forming apparatus  101  to execute a job according to the command received by the MFP operation management section  1603  is performed. In doing this, in the operating authority storage section  1604 , the recorded serial number is rewritten with the serial number of the voice control device which is the transmission source of the job. On the other hand, as a result of the comparison, in a case where the priority of the voice control device which is the requesting source of the job is not higher, an error response is transmitted to the voice control device which is the transmission source of the job request. 
       FIGS.  17 A and  17 B  are a sequence diagram useful in explaining internal operations of the device operating authority management section  704  appearing in  FIG.  7 A . 
     Referring to  FIGS.  17 A and  17 B , the voice control device  107  transmits a job request for the image forming apparatus  101  to the cloud server  103  (step S 1701 ). In the cloud server  103 , a print job command is generated based on the received job request, and the device operation reception section  1601  of the device operating authority management section  704  receives the generated print job command. 
     Then, the device operation reception section  1601  analyzes the received print job command and outputs the print job command to the MFP operation management section  1603  that manages the operation of the image forming apparatus  101  (step S 1702 ). 
     The MFP operation management section  1603  checks the operating authority storage section  1604  (step S 1703 ). In a case where a serial number of another voice control device different from the voice control device  107  has been recorded in the operating authority storage section  1604 , the MFP operation management section  1603  checks the voice control device priority list  1605  (step S 1704 ). The MFP operation management section  1603  compares the priority of the voice control device corresponding to the serial number recorded in the operating authority storage section  1604  and the priority of the voice control device  107 . As a result of the comparison, in a case where the priority of the voice control device  107  is higher, the MFP operation management section  1603  rewrites the serial number recorded in the operating authority storage section  1604  with the serial number of the voice control device  107 . Then, the MFP operation management section  1603  transmits the print job command to the image forming apparatus  101  (step S 1705 ). 
     The image forming apparatus  101  starts a print job based on the received print job command (step S 1706 ). Then, the image forming apparatus  101  notifies the cloud server  103  of a job start response indicating that the image forming apparatus  101  has started the print job associated with the received print job command (step S 1707 ). 
     Upon receipt of the job start response, the MFP operation management section  1603  notifies the device operation reception section  1601  of this response (step S 1708 ). Then, the cloud server  103  generates voice synthesized data for reproducing voice to the effect that the print job has been started and transmits the generated voice synthesized data to the voice control device  107  (step S 1709 ). 
     After that, the voice control device  102  different from the voice control device  107  transmits a device status check request for checking a toner remaining amount of the image forming apparatus  101  to the cloud server  103  (step S 1710 ). In the cloud server  103 , a toner remaining amount check command is generated based on the received device status check request, and the device operation reception section  1601  receives the toner remaining amount check command. 
     Then, the device operation reception section  1601  analyzes the received toner remaining amount check command and outputs the toner remaining amount check command to the MFP operation management section  1603  (step S 1711 ). The MFP operation management section  1603  checks the operating authority storage section  1604 , confirms that the image forming apparatus  101  can execute the toner remaining amount check command, and transmits the toner remaining amount check command to the image forming apparatus  101  (step S 1712 ). 
     The image forming apparatus  101  checks the toner remaining amount according to the received toner remaining amount check command (step S 1713 ) and transmits a toner remaining amount notification including a result of the check to the cloud server  103  (step S 1714 ). 
     Upon receipt of the toner remaining amount notification from the image forming apparatus  101 , the MFP operation management section  1603  notifies the device operation reception section  1601  of the toner remaining amount (step S 1715 ). Then, the cloud server  103  generates voice synthesized data for reproducing a result of the toner remaining amount check and transmits the generated voice synthesized data to the voice control device  102  (step S 1716 ). 
     After that, the voice control device  102  transmits a job request for the image forming apparatus  101  to the cloud server  103  (step S 1717 ). In the cloud server  103 , a print job command is generated based on the received job request, and the device operation reception section  1601  of the device operating authority management section  704  receives the generated print job command. 
     Then, the device operation reception section  1601  analyzes the received print job command and outputs the print job command to the MFP operation management section  1603  that manages the operation of the image forming apparatus  101  (step S 1718 ). 
     The MFP operation management section  1603  checks the operating authority storage section  1604  (step S 1719 ). For example, in a case where a serial number of another voice control device different from the voice control device  102  has been recorded in the operating authority storage section  1604 , the MFP operation management section  1603  checks the voice control device priority list  1605  (step S 1720 ). The MFP operation management section  1603  compares the priority of the voice control device corresponding to the serial number recorded in the operating authority storage section  1604  and the priority of the voice control device  102  having transmitted the job request in the step S 1717 . As a result of the comparison, in a case where the priority of the voice control device  102  is not higher, the MFP operation management section  1603  notifies the device operation reception section  1601  that the print job based on the print job command received in the step S 1718  cannot be executed (step S 1721 ). The cloud server  103  generates voice synthesized data for reproducing voice to the effect that the print job cannot be executed and transmits the generated voice synthesized data to the voice control device  102  (step S 1722 ). 
     On the other hand, when the print job started in the step S 1706  is terminated, the image forming apparatus  101  transmits a job termination notification to the cloud server  103  (step S 1723 ). 
     Upon receipt of the job termination notification, the MFP operation management section  1603  updates the operating authority storage section  1604  (step S 1724 ). More specifically, the MFP operation management section  1603  deletes the serial number of the voice control device  107 , which has been recorded in the operating authority storage section  1604 . Then, the MFP operation management section  1603  notifies the device operation reception section  1601  that the print job executed by the image forming apparatus  101  has been terminated (step S 1725 ). The cloud server  103  generates voice synthesized data for reproducing voice to the effect that the print job by the image forming apparatus  101  has been terminated and transmits the generated voice synthesized data to the voice control device  107  (step S 1726 ). 
     After that, the voice control device  102  transmits a job request for the image forming apparatus  110  to the cloud server  103  (step S 1727 ). In the cloud server  103 , a print job command is generated based on the received job request, and the device operation reception section  1601  of the device operating authority management section  704  receives the generated print job command. 
     Then, the device operation reception section  1601  analyzes the received print job command and outputs the print job command to the MFP operation management section  1606  that manages the operation of the image forming apparatus  110  (step S 1728 ). 
     The MFP operation management section  1606  checks an operating authority storage section  1607  of the MFP operation management section  1606  (step S 1729 ). For example, in a case where a serial number of another voice control device different from the voice control device  102  has been recorded in the operating authority storage section  1607 , the MFP operation management section  1606  checks a voice control device priority list  1608  of the MFP operation management section  1606  (step S 1730 ). The MFP operation management section  1606  compares the priority of the voice control device associated with the serial number recorded in the operating authority storage section  1607  and the priority of the voice control device  102  having transmitted the job request in the step S 1727 . As a result of the comparison, in a case where the priority of the voice control device  102  is higher, the MFP operation management section  1606  rewrites the serial number recorded in the operating authority storage section  1607  with the serial number of the voice control device  102 . Then, the MFP operation management section  1606  transmits the print job command to the image forming apparatus  110  (step S 1731 ). 
     The image forming apparatus  110  starts a print job based on the received print job command (step S 1732 ). Then, the image forming apparatus  110  notifies the cloud server  103  of a job start response indicating that the image forming apparatus  110  has started the print job associated with the received print job command (step S 1733 ). 
     Upon receipt of the job start response, the MFP operation management section  1606  notifies the device operation reception section  1601  of this fact (step S 1734 ). Then, the cloud server  103  generates voice synthesized data for reproducing voice to the effect that the print job has been started and transmits the generated voice synthesized data to the voice control device  102  (step S 1735 ). 
     On the other hand, when the print job started in the step S 1732  is terminated, the image forming apparatus  110  transmits a job termination notification to the cloud server  103  (step S 1736 ). 
     Upon receipt of the job termination notification, the MFP operation management section  1606  updates the operating authority storage section  1607  (step S 1737 ). More specifically, the MFP operation management section  1606  deletes the serial number of the voice control device  102 , which has been recorded in the operating authority storage section  1607 . Then, the MFP operation management section  1606  notifies the device operation reception section  1601  that the print job executed by the image forming apparatus  110  has been terminated (step S 1738 ). The cloud server  103  generates voice synthesized data for reproducing voice to the effect that the print job by the image forming apparatus  110  has been terminated and transmits the generated voice synthesized data to the voice control device  102  (step S 1739 ), followed by terminating the present process. 
     Next, the configurations of the operating authority storage section  1604  and the operating authority storage section  1607  will be described in detail. Note that in the present embodiment, the configuration of the operating authority storage section  1604  and the configuration of the operating authority storage section  1607  are the same, and hence, the following description will be given of the configuration of the operating authority storage section  1604 , by way of example. 
       FIGS.  18 A and  18 B  are diagrams useful in explaining the configuration of the operating authority storage section  1604  appearing in  FIG.  16   .  FIG.  18 A  is a schematic block diagram of the operating authority storage section  1604 .  FIG.  18 B  is a table showing operable states of the operating authority storage section  1604 . 
     Referring to  FIG.  18 A , the operating authority storage section  1604  includes a print section  1801 , a scan section  1802 , a setting section  1803 , and an exclusive setting section  1804 . 
     In a case where the cloud server  103  receives a job request for causing the image forming apparatus  101  to execute a print job from the voice control device  102  or the voice control device  107 , the flag of the print section  1801  is changed to indicate that the print section  1801  is in-use. Further, the serial number of the voice control device which is the transmission source of the job request is recorded in the operating authority storage section  1604 . 
     In a case where the cloud server  103  receives a job request for causing the image forming apparatus  101  to execute a scan job from the voice control device  102  or the voice control device  107 , the flag of the scan section  1802  is changed to indicate that the scan section  1802  is in-use. Further, the serial number of the voice control device which is the transmission source of the job request is recorded in the operating authority storage section  1604 . 
     In a case where the cloud server  103  receives a job request for causing the image forming apparatus  101  to execute a copy job from the voice control device  102  or the voice control device  107 , the flags of the print section  1801  and the scan section  1802  are both changed to indicate that the print section  1801  and the scan section  1802  are in-use, respectively. Further, the serial number of the voice control device which is the transmission source of the job request is recorded in the operating authority storage section  1604 . 
     In a case where the cloud server  103  receives a device status check request for checking the toner remaining amount, the setting of the image forming apparatus  101 , or the like, from the voice control device  102  or the voice control device  107 , the flag of the setting section  1803  is changed to indicate that the setting section  1803  is in-use. At this time, the serial number of the voice control device which is the transmission source of the device status check request is not recorded in the operating authority storage section  1604 . 
     To the exclusive setting section  1804 , an exclusive level of the image forming apparatus  101  is set. In the present embodiment, as the exclusive level, one of an exclusive level 1, an exclusive level 2, and an exclusive level 3 is set. Note that the setting of the exclusive level may be set by a user who logs in the cloud server  103 , or a user may set the exclusive level using a PC or a mobile terminal. 
     The exclusive level 1 is a setting of the lowest exclusive level. In a case where the exclusive level 1 is set for the exclusive setting section  1804 , it is possible to cause the image forming apparatus  101  to execute a specified job set in advance in parallel. The image forming apparatus  101  can execute checking of the device status or a scan job, instructed by a voice operation given to the voice control device  102 , while e.g. a print job instructed by a voice operation given to the voice control device  107  is being executed (see e.g. reference numeral  1805  in  FIG.  18 B ). Note that the copy job cannot be executed in parallel with a print job or a scan job because both of the scanner  213  and the print engine  211  of the image forming apparatus  101  are used. 
     The exclusive level 2 is a setting of higher exclusive level than the exclusive level 1. In a case where the exclusive level 2 is set for the exclusive setting section  1804 , even when a job request is received from a voice control device lower in priority than one voice control device while a job instructed by a voice operation given to the one voice control device is being executed, the job associated with the received job request is not executed (see e.g. reference numeral  1806  in  FIG.  18 B ). However, in a case where a device status check request is received from a voice control device lower in priority than the one voice control device while a job instructed by a voice operation given to the one voice control device is being executed, processing associated with the received device status check request is executed. 
     The exclusive level 3 is a setting of the highest exclusive level. In a case where the exclusive level 3 is set for the exclusive setting section  1804 , even when a job request is received from another voice control device while a job instructed by a voice operation given to the one voice control device is being executed, a job associated with the received job request is not executed (see e.g. reference numeral  1807  in  FIG.  18 B ). 
     Next, a description will be given of an information processing system according to a second embodiment of the present invention and a method of controlling the same. The second embodiment is basically the same in configuration and action as the above-described first embodiment, but differs from the first embodiment in that a job associated with a voice instruction received by a voice control device which is set as the priority device, out of the voice control device  102  and the voice control device  107 , is preferentially executed. Therefore, redundant description of the configuration and action is omitted, and the following description will be given of different points in the configuration and action. 
       FIG.  19    is a sequence diagram showing a first example of registration of an image forming apparatus in the information processing system  100  according to the second embodiment. In  FIG.  19   , a case where the user  106  instructs registration of the image forming apparatus  101  will be described by way of example. Note that also in  FIG.  19   , it is assumed that the user  106  has registered the above-mentioned user information via the application provided by the service corresponding to the service URL “http://service1.com” managed by the cloud server  103 , the WebAPI, and so forth, in advance. Further, it is assumed that a voice control service-setting screen  2001  appearing in  FIG.  20    for registering an image forming apparatus is displayed on the console panel  209  of the image forming apparatus  101 . 
     Referring to  FIG.  19   , first, the user  106  performs an operation for registering the image forming apparatus  101  (step S 1901 ). More specifically, the user  106  inputs the service URL, the service ID “user1@aaa.com”, and the password “aaaa” on the voice control service-setting screen  2001  displayed on the console panel  209  of the image forming apparatus  101  and presses a registration button  2002 . 
     Then, the CPU  202  of the image forming apparatus  101  transmits a request for registering the image forming apparatus  101  to the cloud server  103  via the network interface  206  (step S 1902 ). The image forming apparatus registration request includes the service ID “user1@aaa.com” and the password “aaaa”, which have been input in the step S 1901 . Further, the image forming apparatus registration request also includes “mfp_serial111” which is the serial number of the image forming apparatus  101  and a nickname of a null character. Further, the image forming apparatus registration request includes the IP address of the image forming apparatus  101 , such as “xxx.xxx.xxx.xxx”, which is stored in the RAM  203  of the image forming apparatus  101 . 
     The CPU  402  of the cloud server  103  performs processing for determining the service ID included in the received registration request command (step S 1903 ). More specifically, the CPU  402  stores the information included in the received registration request command in the RAM  403  as service information. Further, the CPU  402  determines whether or not the service ID and the password, which are included in the received registration request command, match the user information registered in advance. If the above-mentioned service ID and password, which are included in the received registration request command, match the user information registered in advance, the CPU  402  performs an image forming apparatus registration process, described hereinafter with reference to  FIG.  21    (step S 1904 ). When the image forming apparatus registration process is completed, the CPU  402  deletes the service information stored in the RAM  402  in the step S 1903 . Then, the CPU  402  notifies the image forming apparatus  101  of a registration result indicating “registration completion” via the network interface  406  (step S 1905 ). 
     The CPU  202  of the image forming apparatus  101  having received this notification displays a priority device registration confirmation screen  2003  appearing in  FIG.  20    on the console panel  209  (step S 1906 ). 
     Then, the user  106  performs an operation for registering a priority device (step S 1907 ). More specifically, the user  106  presses an Yes button  2004  on the priority device registration confirmation screen  2003 . 
     When the operation for registering a priority device is performed, the CPU  202  of the image forming apparatus  101  transmits a voice control device list acquisition request to the cloud server  103  via the network interface  206  (step S 1908 ). The voice control device list acquisition request includes the serial number of the image forming apparatus  101 , and the service ID and the password, which have been input in the step S 1901 . 
     The CPU  402  of the cloud server  103  stores the service ID and the serial number of the image forming apparatus  101 , which are included in the received voice control device list acquisition request, in the RAM  403  as image forming apparatus information, and performs an image forming apparatus determination process, described hereinafter with reference to  FIG.  24    (step S 1909 ). Then, the CPU  402  executes priority device registration waiting state-shifting processing (step S 1910 ). In the priority device registration waiting state-shifting processing, the CPU  402  stores flag data “registration waiting: TRUE” indicating the priority device registration waiting state and the serial number of the image forming apparatus  101  in the RAM  403  as priority device registration waiting state data. 
     Then, the CPU  402  executes a voice control device list acquisition process, described hereinafter with reference to  FIG.  25    (step S 1911 ), and acquires the voice control device list including the serial numbers of all voice control devices associated with the service ID included in the above-mentioned voice control device list acquisition request. The CPU  402  stores the acquired voice control device list in the RAM  403 . Then, the CPU  402  transmits the voice control device list stored in the RAM  403  to the image forming apparatus  101  via the network interface  406  (step S 1912 ). 
     The CPU  202  of the image forming apparatus  101  having received the voice control device list displays a priority device selection screen  2005  appearing in  FIG.  20    on the console panel  209  (step S 1913 ). The user  106  selects a serial number of a voice control device which is desired to be set as the priority device from a priority device list  2006  on the priority device selection screen  2005  (step S 1914 ). The CPU  202  of the image forming apparatus  101  transmits a priority device notification to the cloud server  103  via the network interface  206  (step S 1915 ). The priority device notification includes the service ID and the password, which have been input in the step S 1901 , the serial number of the voice control device selected by the user  106  in the step S 1914 , and the serial number of the image forming apparatus  101 . 
     The CPU  402  of the cloud server  103  stores the service ID and the password, which are included in the received priority device notification, in the RAM  403  as the image forming apparatus information and executes the image forming apparatus determination process, described hereinafter with reference to  FIG.  24    (step S 1916 ). Then, the CPU  402  stores the serial number of the voice control device, the serial number of the image forming apparatus  101 , and the service ID, which are included in the received priority device notification, in the RAM  403 , as the priority device setting information, and executes a priority device registration process, described hereinafter with reference to  FIG.  27    (step S 1917 ). With this, a voice control device that is to be coordinated with the image forming apparatus  101  and be set as the priority device for the image forming apparatus  101  is set, out of the plurality of voice control devices associated with the above-mentioned service ID. Then, the CPU  402  performs priority device registration waiting state-clearing processing (step S 1918 ). In the priority device registration waiting state-clearing processing, the CPU  402  deletes the priority device registration waiting state data stored in the RAM  403  in the step S 1910  and the image forming apparatus information stored in the RAM  403  in the step S 1916 . Then, the CPU  402  transmits “registration completion” to the image forming apparatus  101  via the network interface  406 , as a priority device registration result obtained by the priority device registration process executed in the step S 1917  (step S 1919 ). 
     Upon receipt of the priority device registration result from the cloud server  103 , the CPU  202  of the image forming apparatus  101  displays a priority device registration result screen  2007  appearing in  FIG.  20    on the console panel  209  (step S 1920 ), followed by terminating the present process. 
       FIG.  21    is a flowchart of the image forming apparatus registration process in the step S 1904  in  FIG.  19   . The image forming apparatus registration process in  FIG.  21    is realized by the CPU  402  of the cloud server  103 , which executes an associated program stored in the ROM  404  or the storage  405 . 
     Referring to  FIG.  21   , the CPU  402  acquires the service information stored in the RAM  403  (step S 2101 ). This service information includes the service ID, the password, the serial number of the image forming apparatus  101 , the nickname, and the IP address of the image forming apparatus  101 , which are included in the image forming apparatus registration request transmitted from the image forming apparatus  101  in the step S 1902 . Then, the CPU  402  determines whether or not the image forming apparatus  101  corresponding to the acquired service information has already been registered (step S 2102 ). More specifically, the CPU  402  determines whether or not the information of a combination of the service ID and the serial number of the image forming apparatus  101 , which are included in the acquired service information, has been set in the image forming apparatus service data list shown in  FIG.  22   . In this image forming apparatus service data list, the service ID, the serial number, and the IP address of the registered image forming apparatus, and the serial number of the voice control device registered as the priority device for the image forming apparatus are set. In a case where the information of the combination of the service ID and the serial number of the image forming apparatus  101 , which are included in the acquired service information, has not been set in the image forming apparatus service data list, the CPU  402  determines that the image forming apparatus  101  has not been registered. In a case where the information of the combination of the service ID and the serial number of the image forming apparatus  101 , which are included in the acquired service information, has been set in the image forming apparatus service data list, the CPU  402  determines that the image forming apparatus  101  has already been registered. 
     If it is determined in the step S 2102  that the image forming apparatus  101  has already been registered, the CPU  402  stores “registered” in the RAM  403  as a registration result (step S 2103 ), followed by terminating the present process. 
     If it is determined in the step S 2102  that the image forming apparatus  101  has not been registered, the CPU  402  registers the image forming apparatus  101  (step S 2104 ). More specifically, the CPU  402  adds the image forming apparatus service data formed by a set of the service ID, and the serial number and the IP address of the image forming apparatus  101 , which are included in the service information acquired in the step S 2101 , to the end of the image forming apparatus service data list. Then, the CPU  402  determines whether or not the nickname included in the acquired service information is a null character (step S 2105 ). 
     If it is determined in the step S 2105  that the nickname included in the acquired service information is a null character, the image forming apparatus registration process proceeds to a step S 2108 , described hereinafter. If it is determined in the step S 2105  that the nickname included in the acquired service information is not a null character, the CPU  402  determines whether or not the nickname included in the acquired service information has already been registered (step S 2106 ). More specifically, the CPU  402  determines whether or not the information of the combination of the service ID, the serial number of the image forming apparatus  101 , and the nickname, which are included in the acquired service information, has been set in the nickname data list shown in  FIG.  23   . In this nickname data list, the service ID, the serial number, and the nickname of the registered image forming apparatus are set. In a case where the information of the combination of the service ID, the serial number of the image forming apparatus  101 , and the nickname, which are included in the acquired service information, has not been set in the nickname data list, the CPU  402  determines that the nickname included in the acquired service information has not been registered. In a case where the information of the combination of the service ID, the serial number of the image forming apparatus  101 , and the nickname, which are included in the acquired service information, has been set in the nickname data list, the CPU  402  determines that the nickname included in the acquired service information has already been registered. 
     If it is determined in the step S 2106  that the nickname included in the acquired service information has already been registered, the image forming apparatus registration process proceeds to the step S 2108 , described hereinafter. If it is determined in the step S 2106  that the nickname included in the acquired service information has not been registered, the CPU  402  registers this nickname (step S 2107 ). More specifically, the CPU  402  adds nickname data formed by a set of the service ID and the serial number of the image forming apparatus  101 , and the nickname, which are included in the acquired service information, to the end of the nickname data list. Then, the CPU  402  stores “registration completion” in the RAM  403  as a registration result (step S 2108 ), followed by terminating the present process. 
       FIG.  24    is a flowchart of the image forming apparatus determination process in the steps S 1909  and S 1916  in  FIG.  19   . The image forming apparatus determination process in  FIG.  24    is also realized by the CPU  402  of the cloud server  103 , which executes an associated program stored in the ROM  404  or the storage  405 . 
     Referring to  FIG.  24   , the CPU  402  acquires the image forming apparatus information stored in the RAM  403  (step S 2401 ). This image forming apparatus information includes the service ID and the serial number of the image forming apparatus  101 , which have been received from the image forming apparatus  101 . Then, the CPU  402  determines whether or not the image forming apparatus  101  has already been registered (step S 2402 ). More specifically, the CPU  402  determines whether or not the information of the combination of the service ID and the serial number of the image forming apparatus  101 , which are included in the acquired image forming apparatus information, has been set in the image forming apparatus service data list. In a case where the information of the combination of the service ID and the serial number of the image forming apparatus  101 , which are included in the acquired image forming apparatus information, has not been set in the image forming apparatus service data list, the CPU  402  determines that the image forming apparatus  101  has not been registered. In a case where the information of the combination of the service ID and the serial number of the image forming apparatus  101 , which are included in the acquired image forming apparatus information, has been set in the image forming apparatus service data list, the CPU  402  determines that the image forming apparatus  101  has already been registered. 
     If it is determined in the step S 2402  that the image forming apparatus  101  has not been registered, the CPU  402  stores “not registered” in the RAM  403  as an image forming apparatus determination result (step S 2403 ), followed by terminating the present process. If it is determined in the step S 2402  that the image forming apparatus  101  has already been registered, the CPU  402  stores “registered” in the RAM  403  as the image forming apparatus determination result (step S 2404 ), followed by terminating the present process. 
       FIG.  25    is a flowchart of the voice control device list acquisition process in the step S 1911  in  FIG.  19   . The voice control device list acquisition process in  FIG.  25    is also realized by the CPU  402  of the cloud server  103 , which executes an associated program stored in the ROM  404  or the storage  405 . 
     Referring to  FIG.  25   , the CPU  402  acquires the service ID from the image forming apparatus information stored in the RAM  403  (step  2501 ). Then, the CPU  402  acquires the voice control device list based on a voice control device service data list shown in  FIG.  26    (step S 2502 ). In the voice control device service data list, the serial numbers and the IP addresses of all voice control devices registered by the registration process shown in  FIG.  9    are set. In the step S 2502 , the CPU  402  identifies the serial numbers of all voice control devices associated with the service ID acquired in the step S 2501  and acquires the voice control device list including all identified serial numbers. For example, in a case where the service ID is “user1@aaa.com”, the voice control device list has the contents, such as {Speaker 1, Speaker 2, Speaker 3, Speaker A, Speaker B, Speaker C}. The voice control device list is stored in the RAM  403 . After that, the voice control device list acquisition process is terminated. 
       FIG.  27    is a flowchart of the priority device registration process in the step S 1917  in  FIG.  19   . The priority device registration process in  FIG.  27    is also realized by the CPU  402  of the cloud server  103 , which executes an associated program stored in the ROM  404  or the storage  405 . 
     Referring to  FIG.  27   , the CPU  402  determines whether or not the present status is a priority device setting registration-waiting state (step S 2701 ). In the step S 2701 , for example, in a case where flag data indicating the priority device registration-waiting state, which is included in the priority device registration-waiting state data stored in the RAM  403 , is “TRUE”, the CPU  402  determines that the present status is the priority device setting registration-waiting state. On the other hand, in a case where the above-mentioned flag data is not “TRUE”, the CPU  402  determines that the present status is not the priority device setting registration waiting state. 
     If it is determined in the step S 2701  that the present status is not the priority device setting registration-waiting state, the CPU  402  stores “non-registration waiting state” in the RAM  403  as a priority device registration result (step S 2702 ), followed by terminating the present process. If it is determined in the step S 2701  that the present status is the priority device setting registration-waiting state, the CPU  402  acquires priority device setting information stored in the RAM  403  (step S 2703 ). This priority device setting information includes the service ID input in the step S 1901  as described above, the serial number of the voice control device selected by the user  106  in the step S 1914 , and the serial number of the image forming apparatus  101 . Then, the CPU  402  determines whether or not the image forming apparatus  101  has already been registered (step S 2704 ). For example, in a case where the information of the combination of the serial number of the image forming apparatus  101  and the service ID, which are included in the acquired priority device setting information, has been set in the above-mentioned image forming apparatus service data list, the CPU  402  determines that the image forming apparatus  101  has already been registered. On the other hand, in a case where the above-mentioned combination information has not been set in the above-mentioned image forming apparatus service data list, the CPU  402  determines that the image forming apparatus  101  has not been registered. 
     If it is determined in the step S 2704  that the image forming apparatus  101  has not been registered, the CPU  402  stores “image forming apparatus not registered” in the RAM  403  as the priority device registration result (step S 2705 ), followed by terminating the present process. 
     If it is determined in the step S 2704  that the image forming apparatus  101  has already been registered, the CPU  402  determines whether or not the voice control device selected by the user has already been registered (step S 2706 ). For example, in a case where the information of the combination of the serial number of the voice control device and the service ID included in the acquired priority device setting information has been set in the above-mentioned voice control device service data list, the CPU  402  determines that the voice control device selected by the user has already been registered. On the other hand, in a case where the information of the combination of the serial number of the voice control device and the service ID included in the acquired priority device setting information has not been set in the above-mentioned voice control device service data list, the CPU  402  determines that the voice control device selected by the user has not been registered. 
     If it is determined in the step S 2706  that the voice control device selected by the user has not been registered, the CPU  402  stores “voice control device not registered” in the RAM  403  as the priority device registration result (step S 2707 ), followed by terminating the present process. If it is determined in the step S 2706  that the voice control device selected by the user has already been registered, the CPU  402  determines whether or not the priority device for the image forming apparatus  101  has already been registered (step S 2708 ). More specifically, the CPU  402  acquires data associated with the serial number of the image forming apparatus  101  and the service ID, which are included in the acquired priority device setting information, from the image forming apparatus service data list. In a case where the priority setting of the acquired data has not been set, the CPU  402  determines that the priority device for the image forming apparatus  101  has not been registered. On the other hand, in a case where the priority setting of the acquired data has already been set, i.e. one of the voice control device has been set in the priority setting of the data, the CPU  402  determines that the priority device for the image forming apparatus  101  has already been registered. 
     If it is determined in the step S 2708  that the priority device for the image forming apparatus  101  has already been registered, the CPU  402  stores “priority setting registered” in the RAM  403  as the priority device registration result (step S 2709 ), followed by terminating the present process. If it is determined in the step S 2708  that the priority device for the image forming apparatus  101  has not been registered, the CPU  402  registers the priority device for the image forming apparatus  101  (step S 2710 ). More specifically, the CPU  402  identifies from the image forming apparatus service data list, data matching the serial number of the image forming apparatus  101  and the service ID included in the acquired priority device setting information, and sets the serial number of the voice control device included in the priority device setting information acquired in the step S 2703  in the priority setting of the identified data. Then, the CPU  402  stores “registration completion” in the RAM  403  as the priority device registration result (step S 2711 ), followed by terminating the present process. 
       FIGS.  28 A and  28 B  are a sequence diagram showing a first example of the voice operation control performed by the information processing system  100  according to the second embodiment. The voice operation control in  FIGS.  28 A and  28 B  is basically the same as the voice operation control in FIGS.  10 A and  10 B, and the following description will be given of different points from the voice operation control in  FIGS.  10 A and  10 B . In  FIGS.  28 A and  28 B , a case will be described, by way of example, where job requests are transmitted from the voice control device  107  and the voice control device  102  in the mentioned order. Also in the voice operation control in  FIGS.  28 A and  28 B , it is assumed that the user  106  has registered the above-mentioned user information via the application provided by the service corresponding to the service URL “http://service1.com” managed by the cloud server  103 , the WebAPI, and so forth, in advance. Further, it is assumed that the voice control device  107  and the voice control device  102  have already been registered by the registration process in  FIG.  9    and the image forming apparatus  101  has already been registered by the registration process in  FIG.  19   , and the voice control device  102  has already been registered as the priority device for the image forming apparatus  101 . Note that also in the voice operation control in  FIGS.  28 A and  28 B , the voice control device  102 , the image forming apparatus  101 , and the cloud server  103  are in a state communicable with one another. Further, the image forming apparatus  101  is in a state capable of calling copy, scan, print, and the like functions, after started up by powering-on. 
     Referring to  FIGS.  28 A and  28 B , steps S 2801  to S 2808  which are the same as the above-described steps S 1001  to S 1008  are executed. With these steps, the cloud server  103  performs the voice recognition processing, the morpheme analysis processing, and the group ID determination processing based on the job request received from the voice control device  107 . 
     Then, the CPU  402  of the cloud server  103  stores the serial number of the voice control device  107  included in the job request transmitted from the voice control device  107  in the step S 2805 , in the RAM  403 , as the voice control device information. Then, the CPU  402  executes a print job command generation process, described hereinafter with reference to  FIG.  31    (step S 2809 ). Here, the voice control device  107  is not the priority device for the image forming apparatus  101 , and hence in the step S 2809 , a normal print job command shown in  FIG.  29   , in which “low” is set as the priority, is generated. Then, the CPU  402  transmits the normal print job command to the image forming apparatus  101  via the network interface  406  (step S 2810 ). 
     The CPU  202  of the image forming apparatus  101  stores the received normal print job command in the RAM  203 . Then, the CPU  202  executes a print job execution process, described hereinafter with reference to  FIG.  35    (step S 2811 ) and starts a print job based on the normal print job command. The CPU  202  stores job data having a job ID of “1” indicating this print job and “job started” indicating the job status in the RAM  203 , as a print job execution result. Then, the CPU  202  transmits a job start response to the cloud server  103  via the network interface  206  (step S 2812 ). This job start response includes the job ID of “1” stored in the RAM  203  and “in-execution” indicating the job status. 
     Upon receipt of the job start response, the CPU  402  of the cloud server  103  registers job management information (step S 2813 ). In the step S 2813 , the CPU  402  adds the job management information to the end of a job management information list stored in the RAM  403 . The job management information includes the serial number of the voice control device  107 , the serial number of the image forming apparatus  101 , the job ID of “1”, and “in-execution” indicating the job status. Then, the CPU  402  performs the voice synthesis processing (step S 2814 ). In the step S 2814 , voice synthesized data of voice, for example, “Print job has been started”, is generated. The CPU  402  transmits the generated voice synthesized data to the voice control device  107  via the network interface  406  (step S 2815 ). 
     The CPU  302 ′ of the voice control device  107  reproduces the received voice synthesized data (step S 2816 ). When this voice synthesized data is reproduced, the voice, for example, “Print job has been started”, is output from the speaker  310 ′. Then, the CPU  302 ′ performs the LED lighting control for indicating the speech processing state. More specifically, the CPU  302 ′ causes the LED  312 ′ to blink, via the display controller  311 ′. After that, the cloud server  103  performs the determination of termination of the interactive session, and upon receipt of the interactive session termination notification transmitted from the cloud server  103  based on a result of the determination, the CPU  302 ′ terminates the interactive session (step S 2817 ). 
     After that, steps S 2818  to S 2825  which are the same as the above-described steps S 1018  to S 1025  are executed. With these steps, the cloud server  103  performs the voice recognition processing, the morpheme analysis processing, and the group ID determination processing based on the job request received from the voice control device  102 . 
     Then, the CPU  402  of the cloud server  103  stores the serial number of the voice control device  102 , which is included in the job request transmitted from the voice control device  102  in the step S 2822 , in the RAM  403 , as the voice control device information. Then, the CPU  402  executes the print job command generation process, described hereinafter with reference to  FIG.  35    (step S 2826 ). Here, the voice control device  102  is the priority device for the image forming apparatus  101 , and hence in the step S 2826 , a high-priority print job command shown in  FIG.  30   , in which “high” is set as the priority, is generated. Then, the CPU  402  transmits the high-priority print job command to the image forming apparatus  101  via the network interface  406  (step S 2827 ). 
     The CPU  202  of the image forming apparatus  101  stores the received high-priority print job command in the RAM  203 . Then, the CPU  202  executes the print job execution process, described hereinafter with reference to  FIG.  35    (step S 2828 ). In the step S 2828 , the print job based on the normal print job command, which has been started in the step S 2811 , is stopped, and a print job based on the high-priority print job command is executed as an interrupt. The CPU  202  stores job data of a job ID of “2” indicating the print job based on the high-priority print job command and “interrupt started” indicating the job status, in the RAM  203 , as a print job execution result. Then, the CPU  202  transmits a print job response to the cloud server  103  via the network interface  206  (step S 2829 ). This print job response includes the job ID of “2” stored in the RAM  203  and “interrupt started” indicating the job status. 
     Upon receipt of the print job response, the CPU  402  of the cloud server  103  registers job management information (step S 2830 ). More specifically, the CPU  402  searches the job management information list stored in the RAM  403  for job management information having the job status indicating “in-execution”, and changes the job status of this job management information to “suspended”. Further, the CPU  402  adds new job management information different from the above-mentioned job management information to the top of the job management information list. The new job management information includes the serial number of the voice control device  102 , the serial number of the image forming apparatus  101 , the job ID of “2”, and “in-execution” indicating the job status. Then, the CPU  402  performs the voice synthesis processing (step S 2831 ). In the step S 2831 , voice synthesized data of voice, for example, “Print job interrupt has occurred” is generated. Then, the CPU  402  identifies the voice control device having transmitted the job request of the interrupted job, from the job management information retrieved in the step S 2830 . The CPU  402  transmits the generated voice synthesized data to the identified voice control device, more specifically, to the voice control device  107  (step S 2832 ). 
     Upon receipt of the voice synthesized data, the CPU  302 ′ of the voice control device  107  sets a value indicating a notification received state, which is stored in the RAM  303 ′, to “TRUE” and performs the LED lighting control for indicating the notification received state. More specifically, the CPU  302 ′ causes the LED  312 ′ to blink, via the display controller  311 ′ (step S 2833 ). The LED  312 ′ blinks at predetermined intervals as long as the notification received state is “TRUE”. 
     After that, when the user  108  utters “Any notification?” as a notification utterance instruction to the voice control device  107  (step S 2834 ), the CPU  302 ′ of the voice control device  107  reproduces the received voice synthesized data (step S 2835 ). When this voice synthesized data is reproduced, the voice, for example, “Print job interrupt has occurred”, is output from the speaker  310 ′. Further, the CPU  302 ′ sets the value indicating the notification received state, which is stored in the RAM  303 ′, to “FALSE”. 
     On the other hand, after transmitting the voice synthesized data to the voice control device  107  in the step S 2832 , the CPU  402  of the cloud server  103  performs the voice synthesis processing (step S 2836 ). In the step S 2836 , voice synthesized data of voice, for example, “Print job started”, is generated. Then, the CPU  402  transmits the generated voice synthesized data to the voice control device  102  via the network interface  406  (step S 2837 ). 
     The CPU  302  of the voice control device  102  reproduces the received voice synthesized data (step S 2838 ). When this voice synthesized data is reproduced, the voice, for example, “Print job started”, is output from the speaker  310 . Then, the CPU  302  performs the LED lighting control for indicating the speech processing state. More specifically, the CPU  302  causes the LED  312  to blink, via the display controller  311 . After that, the cloud server  103  performs the determination of termination of the interactive session, and upon receipt of the interactive session termination notification transmitted from the cloud server  103  based on a result of the determination, the CPU  302  terminates the interactive session (step S 2839 ). 
     After that, when the print job based on the high-priority print job command, which has been started in the step S 2828 , is terminated, the CPU  202  of the image forming apparatus  101  transmits a job termination notification to the cloud server  103  via the network interface  206  (step S 2840 ). This job termination notification includes the job ID of “2” indicating the terminated print job and “normally terminated” indicating the job status. 
     Upon receipt of the job termination notification, the CPU  402  of the cloud server  103  performs the voice synthesis processing (step S 2841 ). In the step S 2841 , voice synthesized data of voice, for example, “Print job normally finished”, is generated. Then, the CPU  402  searches the job management information list stored in the RAM  403  for job management information associated with the job ID of “2”. The CPU  402  transmits the generated voice synthesized data to the voice control device  102  corresponding to the serial number of the voice control device in the retrieved job management information (step S 2842 ). Further, the CPU  402  deletes the job management information of the job ID of “2” from the job management information list. 
     Upon receipt of the voice synthesized data, the CPU  302  of the voice control device  102  sets the value indicating the notification received state, which is stored in the RAM  303 , to “TRUE” and performs the LED lighting control for indicating the notification received state. More specifically, the CPU  302  causes the LED  312  to blink, via the display controller  311  (step S 2843 ). The LED  312  blinks at predetermined intervals as long as the notification received state is set to “TRUE”. 
     After that, when the user  106  utters “Any notification?” as the notification utterance instruction to the voice control device  102  (step S 2844 ), the CPU  302  of the voice control device  102  reproduces the received voice synthesized data (step S 2845 ). When this voice synthesized data is reproduced, the voice, for example, “Print job normally finished”, is output from the speaker  310 . Further, the CPU  302  sets the value indicating the notification received state, which is stored in the RAM  303 , to “FALSE”. 
     On the other hand, when the print job based on the high-priority print job command, which has been started in the step S 2828 , is terminated, the CPU  202  of the image forming apparatus  101  executes a print job-resuming process, described hereinafter with reference to  FIG.  36    (step S 2846 ). With this, the print job based on the normal print job command suspended in the step S 2828  is resumed. The CPU  202  stores the job ID of “1” indicating this print job and “job resumed” indicating the job status, in the RAM  203  as a result of the print job-resuming process. Then, the CPU  202  transmits a job resumption notification to the cloud server  103  via the network interface  206  (step S 2847 ). The job resumption notification includes the job ID of “1” and “job resumed” indicating the job status. 
     Upon receipt of the job resumption notification, the CPU  402  of the cloud server  103  performs the voice synthesis processing (step S 2848 ). In the step S 2848 , voice synthesized data of voice, for example, “Suspended print job resumed”, is generated. Then, the CPU  402  searches the job management information list stored in the RAM  403  for job management information of the job ID of “1”. The CPU  402  transmits the generated voice synthesized data to the voice control device  107  corresponding to the serial number of the voice control device in the retrieved job management information (step S 2849 ). 
     Upon receipt of the voice synthesized data, the CPU  302 ′ of the voice control device  107  sets the value indicating the notification received state, which is stored in the RAM  303 ′, to “TRUE” and causes the LED  312 ′ to blink, via the display controller  311 ′ (step S 2850 ). 
     After that, when the user  108  utters “Any notification?” as the notification utterance instruction to the voice control device  107  (step S 2851 ), the CPU  302 ′ of the voice control device  107  reproduces the received voice synthesized data (step S 2852 ). When this voice synthesized data is reproduced, the voice, for example, “Suspended print job resumed”, is output from the speaker  310 ′. Further, the CPU  302 ′ sets the value indicating the notification received state, which is stored in the RAM  303 ′, to “FALSE”. 
     After that, when the print job resumed in the step S 2846  is terminated, the CPU  202  of the image forming apparatus  101  transmits a job termination notification to the cloud server  103  via the network interface  406  (step S 2853 ). This job termination notification includes the job ID of “1” indicating the terminated print job and “normally terminated” indicating the job status. 
     Upon receipt of the job termination notification, the CPU  402  of the cloud server  103  performs the voice synthesis processing (step S 2854 ). In the step S 2854 , voice synthesized data of voice, for example, “Print job normally finished”, is generated. Then, the CPU  402  searches the job management information list stored in the RAM  403  for job management information corresponding to the job ID of “1”. The CPU  402  transmits the generated voice synthesized data to the voice control device  107  corresponding to the serial number of the voice control device in the retrieved job management information (step S 2855 ). Further, the CPU  402  deletes the job management information of the job ID of “1” from the job management information list. 
     Upon receipt of the voice synthesized data, the CPU  302 ′ of the voice control device  107  sets the value indicating the notification received state, which is stored in the RAM  303 ′, to “TRUE” and causes the LED  312 ′ to blink, via the display controller  311 ′ (step S 2856 ). 
     After that, when the user  108  utters “Any notification?” which is the notification utterance instruction to the voice control device  107  (step S 2857 ), the CPU  302 ′ of the voice control device  107  reproduces the received voice synthesized data (step S 2858 ). When this voice synthesized data is reproduced, the voice, for example, “Print job normally finished”, is output from the speaker  310 ′. Further, the CPU  302 ′ sets the value indicating the notification received state, which is stored in the RAM  303 ′, to “FALSE”, followed by terminating the present process. 
       FIG.  31    is a flowchart of the print job command generation process in each of the steps S 2809  and S 2826  in  FIG.  28 A . The print job command generation process in  FIG.  31    is also realized by the CPU  402  of the cloud server  103 , which executes an associated program stored in the ROM  404  or the storage  405 . 
     Referring to  FIG.  31   , the CPU  402  acquires the serial number of the voice control device from the voice control device information stored in the RAM  403  and extracts data matching the acquired serial number of the voice control device from the voice control device service data list. The CPU  402  identifies the service ID from the extracted data (step S 3101 ) and stores the identified service ID in the RAM  403 . Then, the CPU  402  determines whether or not an image forming apparatus associated with the acquired service ID has already been registered (step S 3102 ). For example, the CPU  402  determines that a character string positioned after “by” in the morpheme string analysis result list stored in the RAM  403  is a nickname. The CPU  402  extracts data including both of the nickname and the acquired service ID from the nickname data list. In a case where corresponding data can be extracted from the nickname data list, the CPU  402  determines that the image forming apparatus associated with the acquired service ID has already been registered. On the other hand, in a case where corresponding data cannot be extracted from the nickname data list, the CPU  402  determines that the image forming apparatus associated with the acquired service ID has not been registered. 
     If it is determined in the step S 3102  that the image forming apparatus associated with the acquired service ID has not been registered, the CPU  402  stores “image forming apparatus not registered” in the RAM  403  as a print job generation result (step S 3103 ), followed by terminating the present process. 
     If it is determined in the step S 3102  that the image forming apparatus associated with the acquired service ID has already been registered, the CPU  402  acquires the serial number of the image forming apparatus from the data extracted from the nickname data list (step S 3104 ) and stores the acquired serial number of the image forming apparatus in the RAM  403 . Then, the CPU  402  determines that a character string positioned before “by” in the morpheme string analysis result list stored in the RAM  403 , is a file name, and stores the file name in the RAM  403  (step S 3105 ). Then, the CPU  402  determines whether or not data having the file name stored in the RAM  403  as a file word has already been registered in the file management list shown in  FIG.  32    (step S 3106 ). In the file management list, information on a file to be printed is registered. 
     If it is determined in the step S 3106  that the corresponding data has not been registered in the file management list, the CPU  403  stores “file error” in the RAM  403  as a print job generation result (step S 3107 ), followed by terminating the present process. 
     If it is determined in the step S 3106  that the corresponding data has already been registered in the file management list, the CPU  402  acquires a character string positioned after “Print” in the morpheme string analysis result list stored in the RAM  403  as job information (step S 3108 ). The CPU  402  records group IDs corresponding to this character string, in a job information group ID list stored in the RAM  403 . Then, the CPU  402  determines whether or not the voice control device which is the transmission source of the job request is the priority device (step S 3109 ). In the step S 3109 , for example, the CPU  402  extracts data including the service ID and the serial number of the image forming apparatus, which are stored in the RAM  403 , from the image forming apparatus service data list. In a case where the serial number set for the priority device of the extracted data matches the serial number of the voice control device included in the voice control device information stored in the RAM  403 , the CPU  402  determines that the voice control device which is the transmission source of the job request is the priority device. On the other hand, in a case where the serial number set for the priority device of the extracted data does not match the serial number of the voice control device included in the voice control device information stored in the RAM  403 , the CPU  402  determines that the voice control device which is the transmission source of the job request is not the priority device. 
     If it is determined in the step S 3109  that the voice control device which is the transmission source of the job request is the priority device, the CPU  402  stores the priority of “high” in the RAM  403 , as the priority information (step S 3110 ). Then, the print job command generation process proceeds to a step S 3112 . If it is determined in the step S 3109  that the voice control device which is the transmission source of the job request is not the priority device, the CPU  402  stores the priority of “low” in the RAM  403  as the priority information (step S 3111 ). Then, the CPU  402  executes a command generation process, described hereinafter with reference to  FIG.  33    (step S 3112 ), and generates a print job command. Then, the CPU  402  determines whether or not the print job command generation result indicates “completed” (step S 3113 ). 
     If it is determined in the step S 3113  that the print job command generation result does not indicate “completed”, the CPU  402  stores “job information error” in the RAM  403  as a print job generation result (step S 3114 ), followed by terminating the present process. If it is determined in the step S 3113  that the print job command generation result indicates “completed”, the CPU  402  stores “generation completed” in the RAM  403  as the print job generation result (step S 3115 ), followed by terminating the present process. 
       FIG.  33    is a flowchart of the command generation process in the step S 3112  in  FIG.  31   . 
     Referring to  FIG.  33   , the CPU  402  generates a character string of “operation”:“jobStart” which means the start of a job (step S 3301 ). Then, the CPU  402  generates a character string of “jobName”:“Print” which means a print job (step S 3302 ). Then, the CPU  402  generates a character string corresponding to the priority information stored in the RAM  403  in the step S 3110  or S 3111  (step S 3303 ). For example, in a case where the priority information indicates the priority of “high”, the CPU  402  generates a character string of “priority”:“high” which means this priority. On the other hand, in a case where the priority information indicates the priority of “low”, the CPU  402  generates a character string of “priority”:“low” which means this priority. The CPU  402  stores the generated character string in the RAM  403  as the priority character string. 
     Then, the CPU  402  extracts data corresponding to the file name stored in the RAM  403  in the step S 3105  from the file management list. The CPU  402  generates a character string which means the file format of the extracted data (step S 3304 ). For example, in a case where the file format of the extracted data is “JPEG”, the CPU  402  generates a character string of “format”:“JPEG” and stores the generated character string in the RAM  403  as the format character string. 
     Then, the CPU  402  converts image file data indicated by a file path of the extracted data to binary data and generates a character string which means the image file data (step S 3305 ). For example, in a case where the binary data of the file is “xxxx . . . ”, the CPU  402  generates a character string of “data”:“xxxx . . . ” and stores the generated character string in the RAM  403  as the file data character string. Then, the CPU  402  determines whether or not the job information group ID list is empty (step S 3306 ). 
     If it is determined in the step S 3306  that the job information group ID list is not empty, the CPU  402  performs processing for acquiring a job information-generating group ID list (step S 3307 ). In the step S 3307 , the CPU  402  searches the job information group ID list from the top until a group ID matches any of keywords in a job information setting rule shown in  FIG.  34   . In a case where a group ID matches any of the keywords, the CPU  402  stores elements in the job information group ID list from the top to the group ID matching the keyword, in the job information-generating group ID list in the RAM  403  and deletes the stored elements from the job information group ID list. Further, in a case where numeric value permission of the job information setting rule, associated with the matched keyword, is set to “Yes”, a group ID indicating a number does not exist in the job information-generating group ID list, and the top element of the job information group ID list is a group ID indicating a number, the CPU  402  stores the top element of the job information group ID list in the job information-generating group ID list and deletes the top element from the job information group ID list. For example, in a case where the utterance keyword is “Print double-sided one copy”, the job information group ID list is generated as {ID:NUM0001, ID:CNF00001, ID:CNF00005}, and {ID:NUM0001, ID:CNF00001}, which is retrieved until the keyword of “ID:CNF00001” matches, forms the job information-generating group ID list. Although the numeric value permission is set to “Yes”, the group ID {ID:NUM00001} indicating a number is included in the job information-generating group ID list, and hence {ID:NUM0001, ID:CNF00001} is set as the job information-generating group ID list. On the other hand, in a case where the utterance keyword is “Print copy one double-sided”, the job information group ID list is generated as {ID:CNF00001, ID:NUM0001, ID:CNF00005}. After storing {ID:CNF00001} retrieved until the keyword of “ID:CNF00001” matches, in the job information-generating group ID list, since the numeric value permission of CNF00001 is set to “Yes”, the top element {ID:NUM00001} of the job information group ID list {ID:NUM00001, ID:CNF00005} formed by deleting the element ID:CNF00001 is stored in the job information-generating group ID list, whereby the job information-generating group ID list is formed as {ID:CNF00001, ID:NUM0001}. 
     Then, the CPU  402  determines whether or not a group ID error has occurred (step S 3308 ). For example, in a case where a group ID other than a group ID indicating any of the keywords of the job information setting rule and group ID indicating a number is included in the job information-generating group ID list, or a case where the numeric value permission of the job information setting rule is set to “Yes”, and there is no group ID corresponding to a number in the job information-generating group ID list, or a case where the value permission of the job information setting rule is set to “No” and there is a group ID corresponding to a number in the job information-generating group ID list, the CPU  402  determines that a group ID error has occurred. On the other hand, in a case where the above-mentioned conditions are not satisfied, the CPU  402  determines that no group ID error has occurred. 
     If it is determined in the step S 3308  that a group ID error has occurred, the CPU  402  stores “job information error” in the RAM  403  as a print job command generation processing result (step S 3309 ), followed by terminating the present process. 
     If it is determined in the step S 3308  that no group ID error has occurred, the CPU  402  generates a character string which means the job information based on the job information-generating group ID list and a job command of the job information setting rule (step S 3310 ). For example, with respect to a keyword having the numeric value permission set to “Yes” in the job information setting rule, the CPU  402  generates a character string formed by replacing the job command “#NUM#” by a number generated from a group ID corresponding to the number in the job information-generating group ID list. The CPU  402  records this character string at the end of a job information character string list stored in the RAM  403 . On the other hand, with respect to a keyword having the numeric value permission set to “No” in the job information setting rule, the CPU  402  records a character string of the job command at the end of the job information character string list stored in the RAM  403 . After that, the command generation process returns to the step S 3306 . 
     If it is determined in the step S 3306  that the job information group ID list is empty, the CPU  402  connects the character strings generated in the steps S 3301  to S 3305  and S 3310  to generate a print job command which is a character string of the JSON format (step S 3311 ). The CPU  402  stores the generated print job command in the RAM  403 . Then, the CPU  402  stores “completed” in the RAM  403  as a result of the print job command generation process (step S 3312 ), followed by terminating the present process. 
       FIG.  35    is a flowchart of the print job execution process in each of the steps S 2811  and S 2828  in  FIG.  28 A . The print job execution process in  FIG.  35    is realized by the CPU  202  of the image forming apparatus  101 , which executes an associated program stored in the ROM  204  or the storage  205 . 
     Referring to  FIG.  35   , the CPU  202  determines whether or not the image forming apparatus  101  is in a state capable of executing printing (step S 3501 ). For example, in a case where the image forming apparatus  101  is in a state incapable of executing the print operation, such as an error state or a print jam state, the CPU  202  determines that the image forming apparatus  101  is not in the state capable of executing printing. On the other hand, in a case where the image forming apparatus  101  is not in the above-mentioned state incapable of executing the print operation, the CPU  202  determines that the image forming apparatus  101  is in the state capable of executing printing. 
     If it is determined in the step S 3501  that the image forming apparatus  101  is not in the state capable of executing printing, the CPU  202  stores “execution error” in the RAM  203  as a print job execution result (step S 3502 ), followed by terminating the present process. 
     If it is determined in the step S 3501  that the image forming apparatus  101  is in the state capable of executing printing, the CPU  202  generates job data based on a print job command received from the cloud server  103  (step S 3503 ). For example, in a case where the print job command is a normal print job command shown in  FIG.  29   , the CPU  202  generates job data of “job name: print” based on “jobName”:“Print”. Further, the CPU  202  assigns a “job ID” which is assigned to each job generated by the image forming apparatus  101  from 1 in an ascending order, and sets “priority: low” in the job data based on “priority”:“low” of the print job command. Further, the CPU  202  sets the print job parameter of “number of copies” of the generated job data to “1”, based on “copies”:“1” of the print job command. The CPU  202  stores the generated job data in the RAM  203  as execution waiting print job data. Here, for a job setting which is not specified by the print job command, a default setting value stored in the storage  205  of the image forming apparatus  101  is set. 
     Then, the CPU  202  converts the image data specified by the print job command to image data of a format which can be interpreted by the print engine  211  (step S 3504 ). Then, the CPU  202  determines whether or not improper data is included in the generated job data (step S 3505 ). In the step S 3505 , for example, in a case where although the print engine  211  of the image forming apparatus  101  is capable of performing only single-sided printing, “douplex: on” is specified, the CPU  202  determines that improper data is included in the generated job data. 
     If it is determined in the step S 3505  that improper data is included in the generated job data, the CPU  202  stores “command error” in the RAM  203  as the print job execution result (step S 3506 ), followed by terminating the present process. If it is determined in the step S 3505  that improper data is not included in the generated job data, the CPU  202  determines whether or not there is a print job being executed in a job queue of the RAM  203  of the image forming apparats  101  (step S 3507 ). 
     If it is determined in the step S 3507  that there is no print job being executed in the job queue of the RAM  203 , the CPU  202  executes print processing based on the job data generated in the step S 3505  (step S 3508 ). Then, the CPU  202  stores “in-execution” in the RAM  203  as the print job execution result (step S 3509 ), followed by terminating the present process. 
     If it is determined in the step S 3507  that there is a print job being executed in the job queue of the RAM  203 , the CPU  202  determines whether or not an interrupt can be executed (step S 3510 ). For example, in a case where the priority setting of the execution waiting print job data is “priority: high” and the priority setting of the data of the job being executed is “priority: low”, the CPU  202  determines that an interrupt can be executed. On the other hand, in a case where the priority setting of the execution waiting print job data is “priority: low” and the priority setting of the data of the job being executed is “priority: high”, the CPU  202  determines that an interrupt cannot be executed. 
     If it is determined in the step S 3510  that an interrupt cannot be executed, the CPU  202  sets the execution waiting print job data at the end of the job queue of the RAM  203  (step S 3511 ). With this, the print job of this execution waiting print job data is to be executed after completion of the job being executed. Then, the CPU  202  stores “start waiting” in the RAM  203  as the print job execution result (step S 3512 ), followed by terminating the present process. 
     If it is determined in the step S 3510  that an interrupt can be executed, the CPU  202  executes interrupt print processing (step S 3513 ). In the interrupt print processing, the CPU  202  transmits a temporary suspension command which designates the job ID of the print job being executed to the print engine  211  via the print controller  210  and causes the print engine  211  to suspend the print job being executed. With this, the state of the print job is changed from “in-execution” to “suspended”, and the execution waiting print job data is set to the top of the job queue of the RAM  203 . The CPU  202  instructs the print engine  211  via the print controller  210  to start the print job of the execution waiting print job data. Then, the CPU  202  stores “interrupt started” in the RAM  203  as the print job execution result (step S 3514 ), followed by terminating the present process. 
       FIG.  36    is a flowchart of the print job-resuming process in the step S 2846  in  FIG.  28 B . The print job-resuming process in  FIG.  36    is realized by the CPU  202  of the image forming apparatus  101 , which executes an associated program stored in the ROM  204  or the storage  205 . 
     Referring to  FIG.  36   , the CPU  202  determines whether or not there is any print job in the job queue of the RAM  203  (step S 3601 ). 
     If it is determined in the step S 3601  that there is no print job in the job queue of the RAM  203 , the CPU  202  terminates the present process. If it is determined in the step S 3601  that there is a print job in the job queue of the RAM  203 , the CPU  202  determines whether or not there is a print job of which the job state is “suspended” in the job queue of the RAM  203  (step S 3602 ). 
     If it is determined in the step S 3602  that there is no print job of which the job state is “suspended” in the job queue of the RAM  203 , the CPU  202  executes a print job of print job data, at the top of the job queue (step S 3603 ). Then, the CPU  202  stores “in-execution” in the RAM  203  as a print job execution result (step S 3604 ), followed by terminating the present process. 
     If it is determined in the step S 3602  that there is a print job of which the job state is “suspended” in the job queue of the RAM  203 , the CPU  202  resumes the print job of which the job state is “suspended” (step S 3605 ). Then, the CPU  202  stores “job resumed” in the RAM  203  as the print job execution result (step S 3606 ), followed by terminating the present process. 
       FIGS.  37 A and  37 B  are a sequence diagram showing a second example of the voice operation control performed by the information processing system  100  according to the second embodiment. The voice operation control in  FIGS.  37 A and  37 B  is basically the same as the voice operation control in  FIGS.  28 A and  28 B , and the following description will be given of different points from the voice operation control in  FIGS.  28 A and  28 B . In  FIGS.  37 A and  37 B , a case will be described, by way of example, where job requests are transmitted respectively from the voice control device  102  and the voice control device  107  in the mentioned order. Also in the voice operation control in  FIGS.  37 A and  37 B , it is assumed that the user  106  has registered the above-mentioned user information via the application provided by the service corresponding to the service URL “http://service1.com” managed by the cloud server  103 , the WebAPI, and so forth, in advance. Further, it is assumed that the voice control device  107  and the voice control device  102  have already been registered by the registration process in  FIG.  9    and the image forming apparatus  101  has already been registered by the registration process in  FIG.  19   , and the voice control device  102  has already been registered as the priority device for the image forming apparatus  101 . Note that also in the voice operation control in  FIGS.  37 A and  37 B , the voice control device  102 , the image forming apparatus  101 , and the cloud server  103  are in the state communicable with one another. Further, the image forming apparatus  101  is in a state capable of calling copy, scan, print, and the like functions, after started up by powering-on. 
     Referring to  FIGS.  37 A and  37 B , steps S 3701  to S 3711  which are the same as the above-described steps S 2818  to S 2828  are executed. With these steps, the image forming apparatus  101  starts a print job based on the job request transmitted from the voice control device  102  set as the priority device. 
     Then, the CPU  202  of the image forming apparatus  101  transmits a job start response to the cloud server  103  via the network interface  206  (step S 3712 ). This job start response includes the job ID of “1” indicating the print job started in the step S 3711  and “in-execution” indicating the job status. After that, steps S 3713  and S 3714  which are the same as the steps S 2813  and S 2814  are executed, and the CPU  402  of the cloud server  103  generates voice synthesized data. 
     Then, the CPU  402  transmits the generated voice synthesized data to the voice control device  102  via the network interface  406  (step S 3715 ). 
     The CPU  302  of the voice control device  102  reproduces the received voice synthesized data (step S 3716 ), and further, terminates the interactive session similarly to the step S 2817  (step S 3717 ). 
     Then, steps S 3718  to S 3727  which are the same as the above-described steps S 2801  to S 2810  are executed. With these steps, a normal print job command is transmitted from the cloud server  103  to the image forming apparatus  101  based on the job request transmitted from the voice control device  107 . 
     The CPU  202  of the image forming apparatus  101  stores the received normal print job command in the RAM  203  and executes the above-described print job execution process in  FIG.  35    (step S 3728 ). In the step S 3728 , since the priority of the voice control device  102  which is the requesting source of the print job being executed is higher than the priority of the voice control device  107 , execution of the interrupt of the print job based on the job request transmitted from the voice control device  107  is not performed. The CPU  202  executes the steps  3511  and S 3512  to cause execution of the print job based on the job request transmitted from the voice control device  107  to wait. Then, the CPU  202  transmits a print job response to the cloud server  103  via the network interface  206  (step S 3729 ). This print job response includes the job ID of “2” corresponding to the print job based on the job request transmitted from the voice control device  107  and “start waiting” indicating an execution result of this print job. 
     The CPU  402  of the cloud server  103  registers job management information at the end of the job management information list stored in the RAM  403  (step S 3730 ). This job management information includes the serial number of the voice control device  107 , the serial number of the image forming apparatus  101 , the job ID of “2”, and “start waiting” indicating the execution result of this print job. Then, the CPU  402  performs the voice synthesis processing (step S 3731 ). In the step S 3731 , voice synthesized data of voice, for example, “Print job will be started after finishing the print job being executed” is generated. Then, the CPU  402  transmits the generated voice synthesized data to the voice control device  107  via the network interface  406  (step S 3732 ). 
     The CPU  302 ′ of the voice control device  107  reproduces the received voice synthesized data (step S 3733 ). When this voice synthesized data is reproduced, the voice, for example, “Print job will be started after finishing the print job being executed”, is output from the speaker  310 ′. Then, the CPU  302 ′ terminates the interactive session started in the step S 3719  (step S 3734 ). 
     When the print job based on the high-priority print job command, which was started in the step S 3711 , is completed, the CPU  202  of the image forming apparatus  101  transmits a job termination notification to the cloud server  103  via the network interface  206  (step S 3735 ). Then, steps S 3736  to S 3740  which are the same as the steps S 2841  to S 2845  are executed. 
     On the other hand, after transmitting the job termination notification to the cloud server  103  in the step S 3735 , the CPU  202  of the image forming apparatus  101  executes the above-described print job-resuming process described hereinabove with reference to  FIG.  36    (step S 3741 ). With the process in the step S 3741 , the CPU  202  executes the print job in the waiting state, more specifically, the print job based on the job request transmitted from the voice control device  107 . Then, steps S 3742  to S 3753  which are the same as the steps S 2847  to S 2858  are executed. 
     In the above-described second embodiment, a job associated with a voice instruction received by a voice control device set as the priority device out of the voice control device  102  and the voice control device  107  is preferentially executed. With this, it is possible to immediately execute a print job associated with a voice instruction received by the voice control device set as the priority device. 
     Note that in the above-described second embodiment, the user  106  may instruct registration of the image forming apparatus  101  by operating the console panel  209  and instruct registration of the priority device for the image forming apparatus  101  using the voice control device  102 . 
       FIG.  38    is a sequence diagram useful in explaining a second example of registration of an image forming apparatus in the information processing system  100  according to the second embodiment. In  FIG.  38   , a case will be described, by way of example, where the user  106  instructs registration of the image forming apparatus  101  by operating the console panel  209  and further, instructs registration of the priority device for the image forming apparatus  101  using the voice control device  102 . Note that the registration process in  FIG.  38    is partially the same as the registration process in  FIG.  19   , and the following description will be given of different points from the registration process in  FIG.  19   . Also in  FIG.  38   , it is assumed that the user  106  has registered the above-mentioned user information via the application provided by the service corresponding to the service URL “http://service1.com” managed by the cloud server  103 , the WebAPI, and so forth, in advance. Further, in  FIG.  38   , it is assumed that a voice control service-setting screen  3901  appearing in  FIG.  39   , which is similar in function and configuration to the voice control service-setting screen  2001 , is displayed on the console panel  209  of the image forming apparatus  101 . 
     Referring to  FIG.  38   , first, steps S 3801  to S 3806  which are the same as the steps S 1901  to S 1906  are executed. With these steps, the image forming apparatus  101  is registered, and a priority device registration confirmation screen  3903  appearing in  FIG.  39   , which has the same function and configuration as the priority device registration confirmation screen  2003 , is displayed on the console panel  209 . 
     After that, the user  106  performs the operation for registering the priority device (step S 3807 ). More specifically, the user  106  presses a “Yes” button  3904  on the priority device registration confirmation screen  3903  displayed on the console panel  209 . 
     When the priority device registration operation is performed, the CPU  202  of the image forming apparatus  101  transmits a voice control device registration-waiting mode notification command to the cloud server  103  via the network interface  206  (step S 3808 ). The voice control device registration-waiting mode notification command includes the serial number of the image forming apparatus  101  and the service ID input in the step S 3801 . Further, the CPU  202  displays a priority device-setting screen  3905  appearing in  FIG.  39    on the console panel  209  (step S 3809 ). The priority device-setting screen  3905  shows a method of registering a priority device for the image forming apparatus  101  using a voice control device. 
     The CPU  402  of the cloud server  103  stores the service ID and the serial number of the image forming apparatus  101 , which are included in the received voice control device registration-waiting mode notification command in the RAM  403  as the image forming apparatus information. Then, the CPU  402  executes steps S 3810  and S 3811  which are the same as the above-described steps S 1909  and S 1910 . 
     After that, the user  106  utters wake words to the voice control device  102  (step S 3812 ). The wake words are e.g. “Start up Speaker 1”. 
     When it is detected that the user  106  has uttered the wake words, the CPU  302  of the voice control device  102  controls the display controller  311  to blink the LED  312  (step S 3813 ) and starts an interactive session. 
     After the interactive session has been started, the user  106  utters a keyword serving as a priority device setting-calling instruction to the voice control device  102  (step S 3814 ). This keyword is e.g. “Register priority device for MFP 1” displayed on the priority device-setting screen  3905 . 
     When it is detected that the user  106  has uttered the keyword, the CPU  302  of the voice control device  102  controls the display controller  311  to blink the LED  312  (step S 3815 ). Then, the CPU  302  transmits the voice data of the voice uttered by the user  106  in the step S 3814  and the serial number of the voice control device  102  to the cloud server  103  via the network interface  306  (step S 3816 ). 
     The CPU  402  of the cloud server  103  stores the received serial number of the voice control device  102  in the RAM  403  as the voice control device information, and executes a voice control device determination process, described hereinafter with reference to  FIG.  40    (step S 3817 ). Then, the CPU  402  performs the voice recognition processing on the voice data received in the step S 3816  (step S 3818 ). Text, such as “Register priority device for MFP 1”, is generated by this voice recognition processing. Then, the CPU  402  performs the morpheme analysis processing on the text generated in the step S 3818  (step S 3819 ). With this morpheme analysis processing, text, such as “Register priority device for MFP 1”, is analyzed as a morpheme string of “Register”, “priority”, “device”, “for”, “M”, “F”, “P”, and “1”. 
     Then, the CPU  402  performs the group ID determination processing on the analyzed morpheme string (step S 3820 ). In the group ID determination processing, for example, matching between the morpheme string of “Register”, “priority”, “device”, “for”, “M”, “F”, “P”, and “1” and the group ID list shown in FIGS.  7 B 1  to  7 B 4  is performed. As a group ID determination result, {ID:OPR00046, ID:NAM00002, ID:NAM00001, ID:ALP00013, ID:ALP00006, ID:ALP00016, ID:NUM00001} is generated. 
     Then, the CPU  402  performs image forming apparatus identification processing (step S 3821 ). In the step S 3821 , the CPU  402  judges that the request received from the voice control device  102  is a priority device registration request based on the order of “ID:OPR00046, ID:NAM00002, ID:NAM00001” in the group ID determination result. Further, the CPU  402  generates a character string “MFP 1” from the morpheme arranged after “for” in the morpheme string analyzed in the step S 3819  and judges this character string as the nickname of the image forming apparatus for which the priority device is to be registered. The CPU  402  acquires the serial number of the image forming apparatus  101  from the service ID stored in the RAM  403  and the nickname. The CPU  402  stores this serial number of the image forming apparatus  101  and the serial number of the voice control device  102  transmitted from the voice control device  102  in the step S 3816  in the RAM  403  as the priority device setting information. 
     Then, the CPU  402  executes the above-described priority device registration process described with reference to  FIG.  27    (step S 3822 ) and sets the voice control device  102  as the priority device for the image forming apparatus  101 . When registration of the priority device for the image forming apparatus  101  is completed, the CPU  402  transmits “registration completion” to the image forming apparatus  101  via the network interface  406  as a priority device registration result obtained by the executed priority device registration process (step S 3823 ). 
     The CPU  202  of the image forming apparatus  101  displays a priority device registration result screen  3906  appearing in  FIG.  39    on the console panel  209  (step S 3824 ). On the priority device registration result screen  3906 , a message to the effect that registration of the priority device is completed is displayed. 
     On the other hand, when transmission of the priority device registration result in the step S 3823  is completed, the CPU  402  of the cloud server  103  performs the voice synthesis processing (step S 3825 ). In the step S 3825 , voice synthesized data of voice, for example, “Device is set as priority device for MFP 1”, is generated. Then, the CPU  402  transmits the generated voice synthesized data to the voice control device  102  via the network interface  406  (step S 3826 ). Further, the CPU  402  executes a step S 3827  which is the same as the above-described step S 1918 . 
     The CPU  302  of the voice control device  102  reproduces the received voice synthesized data (step S 3828 ). When this voice synthesized data is reproduced, the voice, for example, “Device is set as priority device for MFP 1”, is output from the speaker  310 . Then, the CPU  302  controls the display controller  311  to blink the LED  312  (step S 3829 ) and terminates the interactive session started in the step S 3813 , followed by terminating the present process. 
       FIG.  40    is a flowchart of the voice control device determination process in the step S 3817  in  FIG.  38   . The voice control device determination process in  FIG.  40    is realized by the CPU  402  of the cloud server  103 , which executes an associated program stored in the ROM  404  or the storage  405 . 
     Referring to  FIG.  40   , the CPU  402  acquires the serial number of the voice control device  102  from the voice control device information stored in the RAM  403  (step S 4001 ). Then, the CPU  402  determines whether or not the voice control device corresponding to the acquired serial number has already been registered (step S 4002 ). For example, in a case where the acquired serial number has been set in the above-mentioned image forming apparatus service data list, the CPU  402  determines that the voice control device corresponding to the acquired serial number has already been registered. On the other hand, in a case where the acquired serial number has not been set in the above-mentioned image forming apparatus service data list, the CPU  402  determines that the voice control device corresponding to the acquired serial number has not been registered. 
     If it is determined in the step S 4002  that the voice control device corresponding to the acquired serial number has already been registered, the CPU  402  stores “registered” in the RAM  403  as a voice control device determination result (step S 4003 ), followed by terminating the present process. 
     If it is determined in the step S 4002  that the voice control device corresponding to the acquired serial number has not been registered, the CPU  402  stores “not registered” in the RAM  403  as the voice control device determination result (step S 4004 ), followed by terminating the present process. 
     Thus, in the above-described embodiment, only by uttering the keyword serving as the priority device setting-calling instruction to a voice control device desired to be set as the priority device for the image forming apparatus  101 , the user can register the corresponding voice control device as the priority device for the image forming apparatus  101 . 
     Note that the priority device registration method is not limited to the above-described method. For example, after an image forming apparatus is registered with a service, the priority device may be registered from another screen, or the priority device may be registered by using a management service of the cloud server  103 . 
     Further, in the above-described embodiment, the image forming apparatus  101  or the image forming apparatus  110  may perform the above-described variety of processes performed by the cloud server  103  by executing the voice data conversion control program. In this case, the voice control device  102  and the voice control device  107  transmit a job request and the like, directly to the image forming apparatus  101  or the image forming apparatus  110  without via the cloud server  103 . 
     OTHER EMBODIMENTS 
     Embodiment(s) of the present invention can also be realized by a computer of a system or apparatus that reads out and executes computer executable instructions (e.g., one or more programs) recorded on a storage medium (which may also be referred to more fully as a ‘non-transitory computer-readable storage medium’) to perform the functions of one or more of the above-described embodiment(s) and/or that includes one or more circuits (e.g., application specific integrated circuit (ASIC)) for performing the functions of one or more of the above-described embodiment(s), and by a method performed by the computer of the system or apparatus by, for example, reading out and executing the computer executable instructions from the storage medium to perform the functions of one or more of the above-described embodiment(s) and/or controlling the one or more circuits to perform the functions of one or more of the above-described embodiment(s). The computer may comprise one or more processors (e.g., central processing unit (CPU), micro processing unit (MPU)) and may include a network of separate computers or separate processors to read out and execute the computer executable instructions. The computer executable instructions may be provided to the computer, for example, from a network or the storage medium. The storage medium may include, for example, one or more of a hard disk, a random-access memory (RAM), a read only memory (ROM), a storage of distributed computing systems, an optical disk (such as a compact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™), a flash memory device, a memory card, and the like. 
     While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions. 
     This application claims the benefit of Japanese Patent Application No. 2021-096097, filed Jun. 8, 2021, which is hereby incorporated by reference herein in its entirety.