Information processing apparatus, method, and program
The information processing device addresses the challenge of managing client applications across multiple cloud services by providing a system for selecting and updating cloud services, ensuring compatible and secure versions of client applications are installed and maintained.
Patent Information
- Application Number
- JP2023157461
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-09-22
- Publication Date
- 2025-04-03
AI Technical Summary
Existing methods for installing or updating client applications on information processing devices do not adequately consider the combination of necessary client applications and versions when multiple cloud services are used, leading to potential compatibility and security issues.
An information processing device with a display means for selecting cloud services and an execution means for installing or updating client applications, which ensures that common client applications are managed and updated in conjunction with the selected cloud services, maintaining compatible and secure versions.
This solution enables effective management of client applications across multiple cloud services, ensuring that necessary applications and versions are properly installed and updated, thereby enhancing compatibility and security.
Smart Images

Figure 2025048577000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a technique for installing or updating client applications compatible with various cloud services on an information processing device. [Background technology]
[0002] 2. Description of the Related Art Conventionally, there have been proposals regarding a method in which an image forming apparatus downloads and installs firmware and applications based on distribution settings transmitted from a distribution server (see, for example, Patent Document 1). [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2017-33147 A Summary of the Invention [Problem to be solved by the invention]
[0004] However, in the method described in Patent Document 1, an operator needs to specify distribution targets one by one in the distribution server for applications.
[0005] When using a cloud service on an information processing device, it is necessary to install a client application commonly used by multiple cloud services and a client application required by each cloud service on the information processing device. In addition, there may be an appropriate combination of versions for those client applications, either for the appropriate use of the cloud service, from the viewpoint of security, or for quality assurance reasons.
[0006] In the conventional technology, when a certain cloud service is used on an information processing device, it is not assumed that an operator will configure distribution settings after taking into consideration the combination of required applications and the combination of versions.
[0007] Therefore, the present invention aims to provide a mechanism that enables management of client applications while taking into account the required combinations of client applications and their version combinations when various cloud services are used on an information processing device. [Means for solving the problem]
[0008] The present invention is an information processing device in which a client application for receiving services via a network is installed, the information processing device having a display means for displaying a selection screen capable of accepting the selection of one or more services from among a plurality of services, and an execution means for executing processing for installing or updating one or more client applications corresponding to the services selected from the selection screen, wherein when there are two or more services among the plurality of services that require the installation of a common client application on the information processing device in order to receive the services, the display means controls the display of the selection screen to indicate that the two or more services have been selected simultaneously when any of the two or more services is additionally selected on the selection screen. Effect of the Invention
[0009] According to the present invention, when various cloud services are used on an information processing device, a mechanism can be provided that enables management of client applications while taking into consideration the required combinations of client applications and the combinations of their versions. [Brief description of the drawings]
[0010] [Figure 1]System configuration diagram of cloud service connection support system [Diagram 2] Hardware configuration diagram of image forming apparatus 101 [Diagram 3] A diagram showing the hardware configuration of the cloud server 102. [Figure 4] FIG. 1 shows an example of software executed by an image forming apparatus 101. [Diagram 5] Software module configuration diagram of application management program 500 [Figure 6] Software module configuration diagram of the connection assistance program 600 [Figure 7] FIG. 13 is a diagram showing an example of transition of an operation screen of an image forming apparatus; [Figure 8] A flowchart explaining the process flow when displaying a service selection screen. [Figure 9] A flowchart explaining the flow of processing executed after FIG. 8. [Figure 10] A flowchart illustrating a process for controlling the display of a service selection screen. [Figure 11] A flowchart explaining the process for deselecting a service on the service selection screen. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0011] <Example 1> Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
[0012] Fig. 1 is a system configuration diagram of a cloud service connection support system (hereinafter, referred to as the support system) according to the present invention. In Fig. 1, an image forming device 101, one or more cloud servers 102, and an application management server 103 are connected to a network 100. The network 100 is a line using at least one of wireless and wired connections for connecting the devices to each other, and is a network based on a known technology such as the Internet.
[0013] The image forming apparatus 101 is an example of an information processing apparatus in which a plurality of client applications are installed in order to use a cloud service, and includes a copier, a scanner, a printer, a facsimile machine, a multifunction machine, and the like.
[0014] By transmitting a registration request to the cloud server 102, the image forming apparatus 101 is registered with a tenant managed by the cloud server 102 and can obtain access permission information. In addition, data related to client applications (hereinafter referred to as clients) required for various cloud services provided by the cloud server 102 is downloaded from an application management server 103 and installed. Although only one image forming apparatus 101 is shown in the figure, multiple apparatuses may be connected.
[0015] The clients in this embodiment include dedicated clients that realize functionality and GUI specific to each cloud service, and common clients that have common functionality for sending and receiving messages to multiple cloud services using a common communication protocol. Here, the functionality specific to the service, for example, in the case of a dedicated client for a backup and restore service, is functionality for managing setting information for backup targets and accepting and managing schedules. In addition to the backup and restore service, the cloud services include an aggregation service that aggregates operation information, a failure analysis service that performs failure analysis of the image forming apparatus 101, and a remote operation service that performs maintenance, recovery, etc. by manipulating parameters of the image forming apparatus 101 via a network.
[0016] The cloud server 102 is made up of one or more systems. It provides a device management service that manages image forming devices in a state that is logically separated for each tenant, and various cloud services that can be licensed for each tenant. It is also possible to arrange a different cloud server 102 for each cloud service.
[0017] The application management server 103 stores and manages a plurality of applications that can be installed in the image forming apparatus 101. The plurality of applications includes the plurality of clients described above. In response to a request from the image forming apparatus 101, the application management server 103 transmits a specific application and its license information.
[0018] 2 is a hardware configuration diagram of an image forming apparatus 101, which is an example of an information processing apparatus. In FIG.
[0019] The controller 200 is electrically connected to a scanner unit 213 and a printer unit 214, and is also connected to external devices via a network 100. This enables input and output of image data and device information. The CPU 201 comprehensively controls access to various connected hardware based on a control program stored in a ROM 202, and also comprehensively controls various processes performed within the controller. The ROM 202 is a read-only non-volatile storage area, and stores a boot program for the image forming apparatus 230, etc. In this embodiment, the CPU 201 may be realized by mounting one processor or multiple processors.
[0020] The RAM 203 is a system work memory for the operation of the CPU 201 and a memory for temporarily storing various data. The RAM 203 is composed of FRAM (registered trademark) and SRAM that can retain stored contents even after the power is turned off, and DRAM whose stored contents are erased after the power is turned off. The HDD 204 is a non-volatile storage area and stores system applications, multiple client applications, firmware, etc.
[0021] The operation unit I / F 205 is an interface unit that connects the system bus 219 and the operation unit 218. Specifically, data to be displayed on the operation unit 218 is received from the system bus 219 and displayed, and input information from the operation unit 218 is output to the system bus 219. User instructions and information presentation to the image forming apparatus 101 are performed via the operation unit 218.
[0022] A network I / F 206 is connected to the network 100 and a system bus 211, and inputs and outputs information to and from the outside. A scanner I / F 208 corrects, processes, and edits image data received from a scanner unit 213. An image forming unit 209 performs image data direction conversion, image compression, decompression, and the like. A printer I / F 210 receives image data sent from the image forming unit 209, and prints the image using a printer unit 214 after image formation.
[0023] A USB interface 207 is a general-purpose interface that connects various peripheral devices to the image forming apparatus 101, and controls connection to a USB (Universal Serial Bus).
[0024] Fig. 3 is a diagram showing an example of the hardware configuration of a device for providing the functions of the cloud server 102. The cloud server 102 can also be constructed by cloud computing technology using virtual machines, and Fig. 3 is also an example of the hardware configuration of a physical device that provides the virtual machines.
[0025] In this server computer, the output I / F 301 is connected to an output device such as a display, and the input I / F 302 is connected to an input device such as a keyboard.
[0026] The storage device 303 stores an OS (Operating System), an authentication program, a management program, registration information of customer organizations and image forming apparatuses 101, setting information and operation information received from the image forming apparatus 101, etc. Here, the authentication program is a program that performs authentication and connection processing. Also, the management program is a program that registers and manages the image forming apparatus 101. The CPU 305 loads the authentication program and management program from the storage device 303 into the memory 304 and executes these authentication program and management program.
[0027] The network I / F 306 controls communication with the image forming apparatus 101 via the network 100 .
[0028] The diagram showing the hardware configuration shown in FIG. 3 corresponds to a hardware block diagram of a general information processing device, and is also applied to the application management server 103.
[0029] Fig. 4 is a software configuration diagram of the image forming apparatus 101. Each piece of software shown in Fig. 4 is stored in the ROM 202 or HDD 204, and executed by the CPU 201. Various pieces of information used during execution are stored in the RAM 203 or HDD 204, and various pieces of information are exchanged between software functions. Furthermore, communication with external devices is performed using a network I / F 206.
[0030] Next, each piece of software will be explained. The software module has an operating system (OS) 401. On top of the OS 401, there is a controller module 402 for controlling various devices, and on top of that, there is an interpreter 403 for sequentially executing programs such as application programs. On top of the interpreter 403, there is an application management unit 404 for managing a group of multiple applications. Extension applications 405 that realize various functions operate under the management of the application management unit 404.
[0031] The extended application 405 includes a client A 409, a client B 410, a client C 411, and the like that are compatible with various cloud services.
[0032] The system applications 406 include an installer 407 that controls the installation of the extension applications 405, and a cloud connection support application 408 in this embodiment. Unlike the extension applications 405, the system applications 406 are incorporated as part of the firmware, and therefore cannot be updated without a license and independent of the firmware.
[0033] The application management unit 404 adds the application as a management target in response to an application installation instruction from the installer 407. The application management unit 404 holds application information including the version of the application added under its management, license information, etc. Furthermore, in response to deletion of an application program in the image forming apparatus 101, the application management unit 204 removes the extension application 405 from the management target.
[0034] The client A 409 and its license file are included in the firmware in advance, and are automatically installed by the installer 407 when the image forming apparatus 101 is started for the first time or when the image forming apparatus 101 is restarted after a firmware update. This state will be referred to as "pre-installation" hereinafter.
[0035] FIG. 5 is a diagram showing the configuration of main software modules realized by an application management program 500 executed by the application management server 103. As shown in FIG.
[0036] The product information management unit 501 holds and manages a product information table. A product is a unit for selling an application file, and a customer purchases this product unit. The product table associates a product ID and product name for identifying a product with the application ID of an application included in the product, a license access number required to issue a license for the product, and the like.
[0037] The application information management unit 502 holds and manages an application information table, which associates application IDs and application names for identifying applications, addresses indicating where application files are obtained, and the like.
[0038] The license issuing unit 503 issues a license based on the specified license access number. In this embodiment, a license is issued based on the license access number transmitted from the image forming apparatus 101, and a license file and an application file are transmitted to the image forming apparatus 101.
[0039] 6 is a diagram showing the configuration of software modules realized by a connection assistance program 600 executed by the image forming apparatus 101. The connection assistance program 600 is a program that operates as a part of the connection assistance application 408 shown in FIG.
[0040] The connection assistance program 600 realizes a UI control unit 601 , an application installation unit 602 , a device registration control unit 603 , a communication test control unit 604 , and a result management unit 605 .
[0041] The UI control unit 601 receives user inputs required to execute each function of the connection assistance program 700, and forms an operation screen for receiving the inputs.
[0042] The application installation unit 602 manages the association between various cloud services and necessary client applications. Furthermore, it downloads data related to a client application corresponding to a cloud service specified by the user from the application management server 103, and installs or updates the application via the installer 407.
[0043] The device registration control unit 603 notifies the cloud server 102 of the device registration key received by the UI control unit 601, thereby registering the image forming apparatus 101 with a tenant that matches the device registration key.
[0044] The device registration key is issued in advance by the cloud server 102 and is available to the user. However, the device registration key is not limited to being input by the user, and may be configured to refer to a value stored in the HDD 204 in advance.
[0045] The communication test control unit 604 requests each of the client applications A 409, B 410, and C 411 to execute a communication test. Each client application executes a predetermined continuity check process for the corresponding cloud service. The predetermined continuity check process is determined between each cloud service / client, and may be different for each service.
[0046] The communication test results are notified to the communication test control unit 604 from each client application.
[0047] The result management unit 605 records the installation result of the client application in a file and manages it. It also records the device registration result notified from the cloud server 102 in a file, manages the current registration status and registered tenant information, and records the communication test result in a file and manages it.
[0048] FIG. 7A is a diagram showing an example of the transition of an operation screen displayed on the operation unit 218 of the image forming apparatus 101 in this embodiment.
[0049] A menu screen 701 is a menu screen for executing each function of the connection assistance program 600. A device registration button 702 is a menu for registering the image forming apparatus 101 to a tenant managed by the cloud server 102, and displays a screen for inputting a device registration key, etc. Device registration is a process required for using various cloud services from the image forming apparatus 101, and is the first task that the user should perform.
[0050] The Add and Update Services button 703 is a menu for adding or updating cloud services that the user wishes to use after completing device registration. When the Add and Update Services button 703 is pressed, a selection screen 705a for selecting a service is displayed. On the service selection screen 705a, the user can select a cloud service for which the user wishes to add or update one or more corresponding client applications. Although the selection screen 705a shows an example in which two services are displayed, it is also possible to display two or more corresponding services.
[0051] The installed application confirmation screen 709 is a screen to which the user transitions when the OK button 708a on the service selection screen 705a is pressed. This screen displays the applications and their versions that need to be added or updated among the client applications corresponding to the cloud service selected by the user on the service selection screen 705a, and allows the user to confirm them. When the Yes button 710 is pressed, the connection assistance program 600 downloads and installs the client application from the application management server 103. An executing screen 711 is displayed until the processing is completed, and when the processing is completed, the screen transitions to a result screen 712.
[0052] A status check button 704 arranged on the menu screen 701 is a button for directly transitioning to a result screen 712. By pressing a device registration status button 713, the user can check the date and time when the device was registered and information about the tenant to which the device is currently registered. Furthermore, by pressing a client status button 714, the user can check the name and version of the currently installed client application. Furthermore, the user can also check the date and time when each client application was installed.
[0053] Fig. 8 is a flowchart illustrating a process flow when the connection assistance program 600 displays the service selection screen 705a. Reference numerals 801 to 809 given to each step in Fig. 8 indicate process steps realized by the CPU executing the program according to this embodiment.
[0054] First, it is assumed that the device has already been registered by operating the device registration button 702 on the menu screen 701.
[0055] Furthermore, the cloud services and their client applications managed by the connection assistance program 600 are as shown in client correspondence table 1, and are assumed to be pre-installed in Client A. Client correspondence table 1 is stored in advance in HDD 204 of image forming apparatus 101. This table indicates that in order to receive service 1, at least a client application corresponding to "Client A" needs to be installed in image forming apparatus 101. Service 2 is managed in a similar manner. Also, this is just an example, and it is assumed that the type and number of required client applications differ for each service.
[0056] [Table 1]
[0057] In this state, if the user wishes to additionally use service 2, he or she presses the Add and Update Services button 703 on the menu screen 701.
[0058] In step 801 , the application installation unit 602 of the connection assistance program 600 reads the client correspondence table 1 from the HDD 204 .
[0059] In step 802, the application installer 602 sets the number of services recorded in the client correspondence table 1 to a variable m. In this embodiment, m=2.
[0060] In step 803, the application installation unit 602 checks whether all client applications corresponding to service m are installed. First, the application installation unit 602 inquires of the application management unit 404 whether both Client A and Client B corresponding to service 2 are installed. Client A is pre-installed and therefore already installed, but Client B is not yet installed. At this time, the application installation unit 602 next executes step 804.
[0061] In step 804, the application installer 602 subtracts 1 from the value of the variable m (m=2-1). In step 805, the application installing unit 602 verifies whether the value of m subtracted in step 804 has become 0. In other words, it determines whether checking has been completed for all cloud services in the client correspondence table. Since the value of m is 1 at this stage, the application installing unit 602 returns to step 803 and checks service 1.
[0062] Since Client A corresponding to service 1 has already been installed, the application installing unit 602 temporarily stores service 1 in RAM 203 as a service to be added and updated in step 806. Thereafter, in step 804, m is subtracted (m=1-1), and in step 805, the application installing unit 602 confirms that the value of m is 0, and executes step 807.
[0063] In step 807, the application installing unit 602 forms a display on the operation unit 218 via the UI control unit 601 in accordance with the information on the services to be added and updated stored in the RAM 203. Since the application installing unit 602 determined that only service 1 was the service to be added and updated this time, a service selection screen like 705a is displayed.
[0064] On the service selection screen 705a, a check box 706a corresponding to service 1 is selected and disabled, and a user operation to deselect service 1 is not accepted (cancellation not possible state). On the other hand, a check box 707a corresponding to service 2 is unselected and enabled, and the user can choose whether or not to add service 2 by an operation of his / her own will.
[0065] In step 808, the UI control unit 601 detects pressing of the OK button 708b. In step 809, the application installation unit 602 stores those cloud services in the RAM 203 as services to be added and updated, in accordance with the selection state of the services on the service selection screen 705a.
[0066] Fig. 9 is a flowchart illustrating the flow of processing executed by the connection assistance program 600 following step 809 in Fig. 8. Reference numerals 901 to 909 assigned to the respective steps in Fig. 9 indicate processing steps realized by the CPU executing the program according to this embodiment.
[0067] For ease of understanding, it is assumed that service 2 is added and selected on service selection screen 705a, and then OK button 708a is pressed.
[0068] Furthermore, it is assumed that the versions in the image forming apparatuses of Client A and Client B and the latest version published on the application management server 103 are as listed in version list 1. Here, for Service 2, the combination of the versions of Client A and Client B published on the application management server 103 is a combination guaranteed by the release source with quality assurance etc. guaranteed at that time.
[0069] [Table 2]
[0070] In step 901, the application installing unit 602 generates a list of applications that are candidates for installation according to the selection state of the cloud service when the application installing unit 602 detects the pressing of the OK button 708a on the service selection screen 705a. In this embodiment, it is assumed that both services 1 and 2 are selected, and the candidate applications are as shown in the installation candidate list 1.
[0071] [Table 3]
[0072] In step 902, the application installing unit 602 sets the number of applications that are candidates for installation to a variable n (n=2).
[0073] In step 903, the application installation unit 602 inquires of the application management unit 404 whether the candidate n has already been installed in the image forming apparatus 101, and if so, the version.
[0074] In step 904, the application installer 602 queries the application management server 103 for the latest version of candidate n.
[0075] In step 905, the application installation unit 602 checks whether the versions confirmed in step 903 and step 904 match. For example, according to version list 1, candidate 2, Client B, does not yet exist in the image forming device 101, and version 2.0 has been released in the application management server 103. In other words, the version in the image forming device and the version in the application management server do not match.
[0076] In step 906, the application installing unit 602 stores Ver. 2.0 of Client B in the RAM 203 as the application to be installed.
[0077] In step 907, the application installing unit 602 decrements the value of the variable n (n=2-1).
[0078] In step 908, the application installing unit 602 verifies whether the value of the variable n has become 0. In other words, it determines whether checking has been completed for all client applications in the installation candidate list 1. Since the value of n is currently 1, the application installing unit 602 returns to step 903 and checks candidate 1.
[0079] According to version list 1, candidate 1, Client A, has already been installed in image forming apparatus 1, and the version matches the version published by application management server 103. Therefore, application installation unit 602 subtracts n (n=1-1) in step 907 without executing discard step 906. Thereafter, application installation unit 602 confirms that the value of n is 0 in step 908, and determines that checking of all client applications has been completed.
[0080] In step 909, the application installing unit 602 displays the information on the application to be installed stored in the RAM 203 in step 906 on the operation unit 218 via the UI control unit 601. In this embodiment, the application to be installed is only ClientB Ver. 2.0, so that an installation application confirmation screen like that of 709 is displayed.
[0081] When the UI control unit 601 detects that the user has pressed the Yes button 710 , the application installation unit 602 downloads ClientB from the application management server 103 and installs it in the image forming apparatus 101 via the installer 407 .
[0082] In this embodiment, the corresponding application is installed only when there is a mismatch between the version already installed on the image forming device 101 and the version published on the application management server 103, but the configuration may also be such that client applications corresponding to services to be added or updated are always installed.
[0083] Specific use cases in which the benefits of this proposal can be obtained are described below.
[0084] The current state of the client application is as shown in version list 2. For service 2, the versions of ClientA and ClientB published by the application management server 103 are the latest quality-guaranteed combination. Of course, the combinations listed in version list 1 are also quality-guaranteed combinations, so there is no problem with continuing to use the versions in the image forming apparatus in version list 2.
[0085] [Table 4]
[0086] Here, assume that the provider of service 1 announces to the user that they should update service 1. The user tries to update the service by pressing add and update service button 703 on menu screen 701. If the user is allowed to freely change the selection state of various cloud services on service selection screen 705a, the user can only check check box 706a corresponding to service 1. Since the user has only received an update announcement from the provider of service 1, it is conceivable that the user will not check check box 707a corresponding to service 2.
[0087] In such a case, only the client application ClientA of Service 1 is updated to Ver. 2.0, and ClientB of Service 2 remains at Ver. 1.0. In other words, this is no longer a quality-guaranteed version combination for Service 2.
[0088] In order to prevent such an update omission, the connection assistance program 600 in this proposal executes the flowchart in Fig. 8. According to the flowchart in Fig. 8, in steps 803 and 804, cloud services for which all client applications are already installed are forcibly set as additional update targets, and in step 807, a service selection screen 705a is formed. In this case, all client applications corresponding to both service 1 and service 2 are already installed in the image forming apparatus 101. Therefore, the application installation unit 602 controls the display of the service selection screen 705a so that both check boxes 706a and 707a corresponding to both services are selected and disabled (a state in which user operations are not accepted).
[0089] There may be cases where only service 1 is provided to the image forming apparatus 101, and only a client application corresponding to only service 1 is installed. In this case, even if the user selects to add service 2, the application installation unit 602 controls the initial display of the service selection screen 705a so that check box 706a is selected and disabled so that the user can understand that service 1, including the shared client application, will also be updated. If the user does not continue to use service 2, the client application corresponding to service 1 can be updated by operating OK button 708a without additionally selecting 707a.
[0090] By having the user select the cloud service they wish to add and update, rather than specifying a client application, it is possible to provide easy-to-use and easy-to-understand operability. Furthermore, since the connection assistance program 600 automatically and forcibly targets cloud services that should also be updated, it is possible to prevent the user from forgetting to update the client application. Therefore, for client applications corresponding to each cloud service, a combination of quality-guaranteed versions under release can be maintained, allowing the safe use of cloud services to be continued.
[0091] <Application Examples> In this embodiment, the client correspondence table 1 shown in Table 1 is stored in the HDD 204, but it may have the following configuration.
[0092] When image forming apparatus 101 connects to a new cloud service, it is possible to receive and update from the cloud service via network 100. Furthermore, when the firmware of image forming apparatus 101 is upgraded, the cloud services available with that firmware may change, and therefore client compatibility table 1 may also be updated in conjunction with the firmware upgrade.
[0093] <Example 2> In Example 1, since the client applications (Client A) of Service 1 and Service 2 were overlapping, only the installation status of the applications was checked (step 803 in FIG. 8), the cloud services to be added and updated were determined, and the service selection screen 705a was displayed.
[0094] Here, there are special cloud services that do not use the same client applications that are shared by multiple cloud services. For example, Client Compatibility Table 2 and Version List Table 3 show Service 3 as an example of such a special cloud service.
[0095] [Table 5]
[0096] [Table 6]
[0097] When a user attempts to update service 1, service 2, which has the same client application, must be included in the update so as not to damage the quality-guaranteed version combination, but for service 3, the version combination is not affected by updates to services 1 and 2. Therefore, even if all client applications (Client C, Client D) have already been installed as in the first embodiment, there is no need to forcibly include service 3 in the update target.
[0098] In this embodiment, in such a configuration, it is possible to update the minimum number of client applications necessary so that the quality-guaranteed version combination is not lost.
[0099] 7B is a diagram showing an example of a service selection screen in this embodiment, which is obtained by adding a check box 715b for service 3 to the service selection screen 705a in the first embodiment.
[0100] Fig. 10 is a flowchart illustrating a process flow when the connection assistance program 600 controls the display of the service selection screen 705b. Reference numerals 1001 to 1006 given to each step in Fig. 10 indicate process steps realized by the CPU executing the program according to this embodiment.
[0101] In step 1001, when the UI control unit 601 detects that the user has pressed the Add Service and Update button 703, the UI control unit 601 displays the service selection screen 705b in the initial state, which is a state in which none of the check boxes for any cloud services are selected and are enabled.
[0102] In step 1002 , the application installation unit 602 of the connection assistance program 600 reads the client correspondence table 2 from the HDD 204 .
[0103] In step 1003, the UI control unit 601 detects that the user has selected any cloud service.
[0104] In step 1004, in response to the detection in step 1003, the application installing unit 602 checks the client compatibility table 2 to see if there is a cloud service that has the same application as the client application of the cloud service selected by the user.
[0105] In step 1005, the application installation unit 602 checks, via the application management unit 404, whether or not a client application corresponding to the cloud service extracted in step 1004 has already been installed.
[0106] In step 1006, the application installation unit 602 changes the cloud services in which all client applications were installed in step 1005 to a selected state via the UI control unit 601. For example, if the user selects service 2 and check box 707b is selected, it is confirmed whether ClientA is installed, and if it is installed, check box 706b corresponding to service 1 is also selected at the same time. As another example, even if the user selects service 3 and check box 715b is selected, there are no other cloud services that have client applications ClientC and ClientD of service 3, so only service 3 is selected.
[0107] Steps 808 and 809 are similar to those in the flowchart of FIG. 8 in the first embodiment, and the connection assistance program 600 stores the cloud service to be added or updated in the RAM 203 according to the selection state of the service selection screen 705b.
[0108] Fig. 11 is a flowchart illustrating the process flow of the connection assistance program 600 when deselecting a cloud service on the service selection screen 705b. Reference numerals 1101 to 1104 given to each step in Fig. 11 indicate process steps that are realized by the CPU executing the program according to this embodiment.
[0109] In step 1101, the UI control unit 601 detects that the check box 706b corresponding to service 1 has been deselected.
[0110] In step 1102, in response to the detection in step 1101, the application installing unit 602 checks via the application managing unit 404 whether or not all client applications of the released cloud service have been installed.
[0111] In step 1103, when all client applications have been installed in step 1102, the application installing unit 602 checks the client correspondence table 2 to see whether there is a cloud service that has the same application as the client application of that cloud service.
[0112] In step 1104, the application installation unit 602 changes the cloud services that meet the conditions in step 1002 and step 1103 to an unselected state via the UI control unit 601. For example, assume that service 1 and service 2 are selected, and then the user deselects service 1. Since Client A is already installed, check box 706b corresponding to service 2 that has Client A also becomes unselected at the same time. As another example, if the user deselects service 3 from a state in which service 1, service 2, and service 3 are selected, Client C and Client D are installed, but since there are no other cloud services that have them, only service 3 becomes deselected.
[0113] Steps 808 and 809 are similar to those in the flowchart of FIG. 8 in the first embodiment, and the connection assistance program 600 stores the cloud service to be added or updated in the RAM 203 according to the selection state of the service selection screen 705b.
[0114] Thereafter, the connection assistance program 600 executes the flowchart of FIG. 9 in the same manner as in the first embodiment, thereby making it possible to newly install or update an appropriate combination of client applications.
[0115] In the first embodiment, it is assumed that one or more client applications are duplicated in all cloud services, and therefore the cloud services to be added and updated are determined based only on the installation status of the client applications.
[0116] On the other hand, in the second embodiment, it is assumed that not all cloud services have overlapping client applications, and the cloud service to be added and updated is determined based on both the installation status of the client application corresponding to the cloud service and the overlap status. As a result, even if there are multiple cloud services with no overlapping client applications, it becomes possible to newly install or update the client application with an appropriate version combination with quality assurance in each cloud service.
[0117] (Other Examples) The present invention also includes an apparatus or system configured by appropriately combining the above-described embodiments, and a method thereof.
[0118] Here, the present invention is a device or system that executes one or more pieces of software (programs) that realize the functions of the above-mentioned embodiments. Also, a method for realizing the above-mentioned embodiments executed by the device or system is also one aspect of the present invention. Also, the program is supplied to the system or device via a network or various storage media, and the program is read into one or more memories by one or more computers (CPU, MPU, etc.) of the system or device and executed. In other words, as one aspect of the present invention, the program itself, or various storage media that store the program and can be read by a computer, are also included. Also, the present invention can be realized by a circuit (e.g., ASIC) that realizes the functions of the above-mentioned embodiments. [Explanation of symbols]
[0119] 101 Image forming device 102 Cloud Server 103 Application Management Server
Claims
1. An information processing device in which a client application for receiving a service provided via a network is installed, a display means for displaying a selection screen capable of accepting selection of one or more services from among a plurality of services; an execution means for executing a process for installing or updating one or more client applications corresponding to a service selected from the selection screen, The information processing device is characterized in that, when there are two or more services among the multiple services that require the installation of a common client application on the information processing device to receive the service, and when any of the two or more services is additionally selected on the selection screen, the display means controls the display of the selection screen to indicate that the two or more services have been selected simultaneously.
2. The information processing device according to claim 1, characterized in that, when there is another service among the multiple services that does not require installation of the common client application and the other service is additionally selected on the selection screen, the display means does not control the display of the selection screen to indicate that the two or more services have been selected.
3. 2. The information processing apparatus according to claim 1, wherein said execution means downloads data relating to said one or more client applications from an application management server via a network, and executes said processing.
4. The information processing device according to claim 1, characterized in that when data relating to multiple client applications is downloaded from the application management server, each version of the multiple client applications satisfies a version combination guaranteed for providing the service selected from the selection screen.
5. 2. The information processing apparatus according to claim 1, wherein the information processing apparatus includes at least one of a scanner, a printer, a facsimile machine, and a multifunction machine.
6. 2. The information processing device according to claim 1, wherein the plurality of services include at least one of a backup restore service that backs up settings, an aggregation service that aggregates operational information, a failure analysis service that performs failure analysis, and a remote control service that operates parameters via a network.
7. A method for an information processing device in which a client application for receiving a service provided via a network is installed, comprising: a display step of displaying a selection screen capable of accepting selection of one or more services from among a plurality of services; and an execution step of executing a process for installing or updating one or more client applications corresponding to the service selected from the selection screen, The method is characterized in that, in the display process, when there are two or more services among the multiple services that require the installation of a common client application on the information processing device to receive the service, when any of the two or more services is additionally selected on the selection screen, the display of the selection screen is controlled to indicate that the two or more services have been selected simultaneously.
8. An information processing device in which a client application for receiving services provided via a network is installed, a display step of displaying a selection screen capable of accepting selection of one or more services from among a plurality of services; an execution step of executing a process for installing or updating one or more client applications corresponding to a service selected from the selection screen; The program is characterized in that, in the display process, when there are two or more services among the multiple services that require the installation of a common client application on the information processing device to receive the service, when any of the two or more services is additionally selected on the selection screen, the display of the selection screen is controlled to indicate that the two or more services have been selected simultaneously.
Citation Information
Patent Citations
Distribution system, distribution method, and program
JP2017033147A