Servers, printing systems, information processing methods, and programs
The server system connects cloud printing services with registration and print control units to ensure authorized access and bridge protocol gaps, enhancing security and usability in multi-cloud printing environments.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-08-08
- Publication Date
- 2026-03-17
AI Technical Summary
Existing printing systems allow unauthorized users to access and use printing devices intended for specific users, compromising security and privacy.
A server system that connects two cloud printing service systems, with registration and print control units to manage user authorities, ensuring that printing devices are accessed only by authorized users, and virtual printers are used to bridge protocol differences.
Enhances security by restricting device access to authorized users and enables seamless printing across different cloud systems without requiring additional drivers, maintaining privacy and efficiency.
Smart Images

Figure 0007831190000001 
Figure 0007831190000002 
Figure 0007831190000003
Abstract
Description
Technical Field
[0001] The present disclosure relates to a server, a printing system, an information processing method, and a program.
Background Art
[0002] There is known a printing system configured by combining different systems on a network. For example, Patent Document 1 discloses a printing system configured by combining a first cloud printing service system and a second cloud printing service system. This printing system further includes a cloud printing management service system that plays a role of bridging between the first cloud printing service system and the second cloud printing service system. Then, this cloud printing management service system enables printing by the printing device via the first cloud printing service system and the second cloud printing service system by associating a virtual printer registered in the first cloud printing service system with a printing device registered in the second cloud printing service system.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] However, in the technique according to Patent Document 1, when printing by a printing device via the first cloud printing service system and the second cloud printing service system, there is a possibility that a printing device that should be used only by a specific user can be used by others than the user.
Means for Solving the Problems
[0005] The server relating to this disclosure is a server connected to a first printing service system and a second printing service system connected to a first image processing device and a second image processing device, and includes a registration receiving unit that receives a registration instruction for the first image processing device from a first user with first authority, or a registration instruction for the second image processing device from a second user with second authority, which is a more restricted authority than the first authority; a registration unit that, upon receiving the registration instruction for the first image processing device, registers the first image processing device in the first printing service system, and upon receiving the registration instruction for the second image processing device, registers the second image processing device in the first printing service system; and the second printing service system that, in response to a print job from the first printing service system, The system includes a print control unit that sends a print request to the system, wherein the print control unit, when the second image processing device is designated as the image processing device used in printing according to the print job, sends the print request to the second print service system requesting printing by the second image processing device only when the print job is a print job corresponding to a print instruction by the second user, and when the first image processing device is designated as the image processing device used in printing according to the print job, sends the print request to the second print service system requesting printing by the first image processing device regardless of which user the print job corresponds to a print instruction by.
[0006] Furthermore, the printing system according to this disclosure comprises a first printing service system, a first image processing device, a second image processing device, a second printing service system connected to the first and second image processing devices, and a server connected to the first and second printing service systems, wherein the server includes a registration receiving unit that receives registration instructions for the first image processing device from a first user with first authority, or registration instructions for the second image processing device from a second user with second authority, which is a more restricted authority than the first authority; a registration unit that, upon receiving the registration instructions for the first image processing device, registers the first image processing device in the first printing service system, and upon receiving the registration instructions for the second image processing device, registers the second image processing device in the first printing service system; and a registration unit that, in response to print jobs from the first printing service system The system includes a print control unit that transmits a print request to the second print service system, wherein the print control unit transmits a print request to the second print service system requesting printing by the second image processing unit only when the print job is a print job corresponding to a print instruction by the second user, and when the first image processing unit is designated as an image processing unit used in printing according to the print job, transmits a print request to the second print service system requesting printing by the first image processing unit regardless of which user the print job corresponds to a print instruction by, and the first or second image processing unit executes the print process based on the print request.
[0007] Furthermore, in the information processing method relating to this disclosure, a server connected to the first printing service system and the second printing service system connected to the first and second image processing devices receives a registration instruction for the first image processing device from a first user with first authority, or a registration instruction for the second image processing device from a second user with second authority, which is a more restricted authority than the first authority. When the registration instruction for the first image processing device is received, the first image processing device is registered in the first printing service system. When the registration instruction for the second image processing device is received, the second image processing device is registered in the first printing service system. In response to a print job from the first printing service system, the second printing service system... A print request is sent to the system, and in the process of sending the print request, if the second image processing device is specified as the image processing device used in printing according to the print job, the print request requesting printing by the second image processing device is sent to the second print service system only when the print job is a print job corresponding to a print instruction by the second user, and if the first image processing device is specified as the image processing device used in printing according to the print job, the print request requesting printing by the first image processing device is sent to the second print service system regardless of which user the print job corresponds to a print instruction by.
[0008] Furthermore, the program relating to this disclosure includes a registration acceptance step of obtaining a registration instruction for the first image processing device from a first user with first authority, or a registration instruction for the second image processing device from a second user with second authority, which is a more restricted authority than the first authority, on a computer of a server connected to the first print service system and the second print service system connected to the first image processing device and the second image processing device; a registration step of registering the first image processing device in the first print service system when the registration instruction for the first image processing device is obtained, and registering the second image processing device in the first print service system when the registration instruction for the second image processing device is obtained; and a registration step of registering the second image processing device in the first print service system in response to a print job from the first print service system. The system performs a print control step of sending a print request to the bis system, and in the print control step, if the second image processing device is specified as the image processing device used in printing according to the print job, the system sends the print request to the second print service system requesting printing by the second image processing device only when the print job is a print job corresponding to a print instruction by the second user, and if the first image processing device is specified as the image processing device used in printing according to the print job, the system sends the print request to the second print service system requesting printing by the first image processing device regardless of which user the print job corresponds to a print instruction by. [Brief explanation of the drawing]
[0009] [Figure 1] This block diagram shows an example of the configuration of a printing system according to an embodiment. [Figure 2] This is a block diagram showing an example of the configuration of the first printing service system according to the embodiment. [Figure 3] This is a block diagram showing an example of the configuration of the second printing service system according to the embodiment. [Figure 4] This is a block diagram showing an example of the configuration of a relay server according to the embodiment. [Figure 5] This block diagram shows an example of the configuration of a terminal device according to an embodiment. [Figure 6] This is a block diagram showing an example of the configuration of an image processing apparatus according to an embodiment. [Figure 7] This is a sequence chart illustrating an example of the process for saving credentials. [Figure 8] This is a sequence chart illustrating an example of the process for updating credentials. [Figure 9A] This is a sequence chart showing an example of the registration process for a personal printer. [Figure 9B] This is a sequence chart showing an example of the registration process for a personal printer. [Figure 9C] This is a sequence chart showing an example of the registration process for a personal printer. [Figure 10A] This is a sequence chart showing an example of the process for registering a shared printer. [Figure 10B] This is a sequence chart showing an example of the process for registering a shared printer. [Figure 10C] This is a sequence chart showing an example of the process for registering a shared printer. [Figure 10D] This is a sequence chart showing an example of the process for registering a shared printer. [Figure 11A] This is a sequence chart showing an example of the printing process flow. [Figure 11B] This is a sequence chart showing an example of the printing process flow. [Figure 11C] This is a sequence chart showing an example of the printing process flow. [Figure 12] This is a sequence chart illustrating an example of the printing process flow, and in particular, an example of a notification process that is executed whenever the job status changes. [Modes for carrying out the invention]
[0010] Hereinafter, embodiments will be described with reference to the drawings. For clarity of explanation, the following description and drawings are appropriately omitted and simplified. Also, in each drawing, the same elements are denoted by the same reference numerals, and redundant explanations are omitted as necessary.
[0011] FIG. 1 is a block diagram showing an example of the configuration of a printing system 10 according to an embodiment. The printing system 10 includes a first printing service system 100, a second printing service system 200, and a relay server 300. In FIG. 1, a terminal device 400 and image processing devices 500_1, 500_2, and 500_3 that are communicably connected to the printing system 10 are also illustrated.
[0012] In the following description, when referring to the image processing devices 500_1, 500_2, and 500_3 without particularly distinguishing them, they will be referred to as the image processing device 500. Note that the system including the terminal device 400 may be referred to as the printing system 10. Similarly, the system including the image processing device 500 may be referred to as the printing system 10.
[0013] The first printing service system 100 and the second printing service system 200 are systems that provide printing services on the cloud. Here, the first printing service system 100 is a system for services provided by a first vendor, and the second printing service system 200 is a system for services provided by a second vendor different from the first vendor. For example, the second vendor is a vendor that manufactures the image processing device 500. The image processing device 500 is a device having a function of performing printing processing, and in the present embodiment, specifically, it is a printer. In the present embodiment, the image processing device 500 is pre-registered in the second printing service system 200 as a device capable of executing printing processing for printing jobs managed by the second printing service system 200. The terminal device 400 is a client terminal such as a PC (Personal Computer), a smartphone, or a tablet terminal. The relay server 300 is a server that bridges the first printing service system 100 and the second printing service system 200 and relays the processing in the printing system 10.
[0014] As shown in FIG. 1, the first printing service system 100 and the second printing service system 200 are communicably connected. Also, the relay server 300 is communicably connected to each of the first printing service system 100 and the second printing service system 200. Also, the image processing device 500 is communicably connected to the second printing service system 200. Also, the terminal device 400 is communicably connected to at least the first printing service system 100 and the relay server 300. In addition to the connection relationships described above, there may be further connection relationships between the components. For example, the terminal device 400 may also be communicably connected to the second printing service system 200. In FIG. 1, three image processing devices 500 are illustrated as an example, but the number of image processing devices 500 using the printing system 10 is arbitrary. Similarly, one terminal device 400 is illustrated as an example, but the number of terminal devices 400 using the printing system 10 is arbitrary.
[0015] As described above, both the first printing service system 100 and the second printing service system 200 are systems that provide printing services on the cloud. Therefore, if a printer is registered with the printing service system, printing can be performed by that printer via the printing service system. For example, printing based on instructions from the terminal device 400 can be performed by a printer registered with the printing service system. However, if the printer is not a model that supports the protocol used by the printing service system, it cannot be directly registered with that printing service system. In this embodiment, the image processing device 500 supports the protocol used by the second printing service system 200 and can be directly registered with the second printing service system 200. However, the image processing device 500 does not necessarily support the protocol used by the first printing service system 100.
[0016] Therefore, in this embodiment, printing by the image processing device 500 via the first printing service system 100 is enabled by associating a printer registered as a virtual printer (virtual device) in the first printing service system 100 with an image processing device 500 registered in the second printing service system 200. This association is performed by the relay server 300. In other words, by using the relay server 300, the image processing device 500 is effectively registered with the first printing service system 100. There may be cases where the image processing device 500 owned by a user at home or elsewhere is a model that does not support the protocol of the first printing service system 100, but the user wishes to print using the image processing device 500 by using the printing service provided by the first printing service system 100. An example of such a case is when the installation of a printer driver for the image processing device 500, which is required in the second printing service system 200, is not required in the first printing service system 100. Of course, the user may also wish to print using the image processing device 500 via the first printing service system 100 for any other reason. In such cases, the image processing device 500 needs to be effectively registered with the first printing service system 100 by using the relay server 300. The first printing service system 100 provides printing services using, for example, IPP-Infra (Internet Printing Protocol Shared Infrastructure Extensions) as the protocol mentioned above, while the second printing service system 200 provides printing services without using this protocol.
[0017] Next, the configurations of the first printing service system 100, the second printing service system 200, the relay server 300, the terminal device 400, and the image processing device 500 will be described.
[0018] Figure 2 is a block diagram showing an example of the configuration of the first printing service system 100. In the example shown in Figure 2, the first printing service system 100 is shown to be configured with one server, but the first printing service system 100 may be configured with multiple servers.
[0019] As shown in Figure 2, the first printing service system 100 includes a storage unit 110, a communication unit 120, and a control unit 130.
[0020] The memory unit 110 is a storage device that stores programs for realizing the processing of the control unit 130 and data used for processing in the first printing service system 100. This storage device may be a non-volatile storage device such as a hard disk or flash memory, and may also include memory such as RAM (Random Access Memory). The memory unit 110 may also include a database. The communication unit 120 is a communication interface for communicating with other devices such as the second printing service system 200, the relay server 300, and the terminal device 400 via a wireless or wired network. The control unit 130 is a processor such as a CPU (Central Processing Unit) that controls each component of the first printing service system 100. The control unit 130 may have multiple processors. The control unit 130 reads the program into memory and executes the program. In this way, the control unit 130 realizes the functions of the authentication control unit 131, the printing control unit 132, and the information management unit 133.
[0021] The authentication control unit 131 performs various processes related to the authentication of users of the first printing service system 100. Users of the first printing service system 100 include administrator users and general users who are not administrators. Administrator users can also be referred to as users with administrator privileges. General users can also be referred to as users with user privileges, which are more restricted than administrator privileges. In this embodiment, it is assumed that these users are pre-registered in the first printing service system 100. The authentication control unit 131 provides an authentication page to the Web browser 451 (described later), authenticates administrators or general users, and issues tokens necessary to access predetermined information managed by the first printing service system 100. The specific processes of the authentication control unit 131 in this embodiment will be explained using the sequence chart described later.
[0022] The print control unit 132 performs control processing to execute printing using a printer registered with the first print service system 100. In this embodiment, the print control unit 132 performs control processing when printing is performed using an image processing device 500 corresponding to a virtual printer registered with the first print service system 100. However, the print control unit 132 may also perform control processing when printing is performed using a physical printer that is directly registered with the first print service system 100, rather than as a virtual printer. Specifically in this embodiment, the print control unit 132 performs processing to receive a print request from the terminal device 400, processing to send information necessary to perform printing according to this print request to the relay server 300, and processing to notify the terminal device 400 of the job status and printer status. The specific processing of the print control unit 132 in this embodiment will be explained using a sequence chart described later.
[0023] The information management unit 133 performs the printer registration process for the first printing service system 100. The information management unit 133 also manages information regarding users registered with the first printing service system 100, and information regarding printers registered with the first printing service system 100. In this embodiment, the information management unit 133 particularly manages information regarding printers, such as the printer name, printer ID, capability information, and sharing information of registered printers. Each of these various pieces of information regarding printers is also referred to as attribute information. The information management unit 133 may also perform the user registration process for the first printing service system 100. The specific processing of the information management unit 133 in this embodiment will be explained using a sequence chart described later.
[0024] Figure 3 is a block diagram showing an example of the configuration of the second printing service system 200. In the example shown in Figure 3, the second printing service system 200 is shown as being composed of one server, but the second printing service system 200 may be composed of multiple servers.
[0025] As shown in Figure 3, the second printing service system 200 includes a storage unit 210, a communication unit 220, and a control unit 230.
[0026] The memory unit 210 is a storage device that stores programs for realizing the processing of the control unit 230 and data used for processing in the second printing service system 200. This storage device may be a non-volatile storage device such as a hard disk or flash memory, or it may include memory such as RAM. The memory unit 210 may also include a database. The communication unit 220 is a communication interface for communicating with other devices such as the first printing service system 100, the relay server 300, and the image processing device 500 via a wireless or wired network. The control unit 230 is a processor such as a CPU that controls each component of the second printing service system 200. The control unit 230 may have multiple processors. The control unit 230 reads the program into memory and executes the program. In this way, the control unit 230 realizes the functions of the authentication control unit 231, the printing control unit 232, and the information management unit 233.
[0027] The authentication control unit 231 performs various authentication-related processes. For example, the authentication control unit 231 performs authentication-related processes for printers registered in the second printing service system 200, and processes for issuing tokens necessary to access predetermined information managed by the second printing service system 200. The specific processes of the authentication control unit 231 in this embodiment will be explained using the sequence chart described later.
[0028] The print control unit 232 performs control processing to execute printing by the image processing device 500, which is a printer registered with the second print service system 200. Specifically in this embodiment, the print control unit 232 performs processing such as receiving a print request from the relay server 300, sending the information necessary to perform printing according to this print request to the image processing device 500, and notifying the relay server 300 of the job status. The specific processing of the print control unit 232 in this embodiment will be explained using the sequence chart described later.
[0029] The information management unit 233 manages the information registered in the second printing service system 200. In particular, in this embodiment, the information management unit 233 manages information related to the image processing device 500, which is a printer registered in the second printing service system 200. In this embodiment, the information management unit 233 manages information related to the image processing device 500, i.e., information related to the printer, such as attribute information such as the printer name and capability information of the registered image processing device 500. The information management unit 233 may also perform the registration process of the image processing device 500 with the second printing service system 200. The specific processing of the information management unit 233 in this embodiment will be explained using the sequence chart described later.
[0030] Figure 4 is a block diagram showing an example of the configuration of the relay server 300. While the example in Figure 4 shows the relay server 300 being composed of a single server, the relay server 300 may be composed of multiple servers. The relay server 300 may also be referred to simply as a server.
[0031] As shown in Figure 4, the relay server 300 includes a storage unit 310, a communication unit 320, and a control unit 330.
[0032] The memory unit 310 is a storage device that stores programs for implementing the processing of the control unit 330 and data used for processing by the relay server 300. This storage device may be a non-volatile storage device such as a hard disk or flash memory, or it may include memory such as RAM. The memory unit 310 may also include a database. The memory unit 310 stores, for example, administrator access tokens and refresh tokens, which are credentials for the administrator, the correspondence between the virtual printer and the image processing device 500, the correspondence between print jobs of the first print service system 100 and print jobs of the second print service system 200, and registered user IDs, which will be described later. The communication unit 320 is a communication interface for communicating with other devices such as the first print service system 100, the second print service system 200, and the terminal device 400 via a wireless or wired network. The control unit 330 is a processor such as a CPU that controls each component of the relay server 300. The control unit 330 may have multiple processors. The control unit 330 reads the program into memory and executes the program. As a result, the control unit 330 implements the functions of the authentication control unit 331, the printing control unit 332, the registration acceptance unit 333, the information acquisition unit 334, and the registration setting unit 335.
[0033] The authentication control unit 331 performs various processes for obtaining authentication from the first printing service system 100 and various processes for obtaining authentication from the second printing service system 200. Specifically, the authentication control unit 331 performs processes for obtaining tokens (administrator access token, refresh token) necessary to access predetermined information managed by the first printing service system 100 and for obtaining tokens necessary to access predetermined information managed by the second printing service system 200. The specific processes of the authentication control unit 331 in this embodiment will be explained using the sequence chart described later.
[0034] The print control unit 332 performs control processing to execute printing using the image processing device 500, which is a printer registered with the first print service system 100, that is, using a virtual printer, which is an image processing device 500 that is a printer registered with the second print service system 200. The print control unit 332 performs processing to obtain information necessary for printing from the first print service system 100, processing to send a print request to the second print service system 200 based on this information, and processing to notify the first print service system 100 of the job status and printer status. The specific processing of the print control unit 332 in this embodiment will be explained using the sequence chart described later.
[0035] As will be described later with reference to the sequence chart, the print control unit 332 has the function of acquiring the job status for the printing process by the image processing device 500 from the second print service system 200. For this reason, the print control unit 332 may be referred to as the acquisition unit. Furthermore, as will be described later with reference to the sequence chart, when the print control unit 332 acquires the job status from the second print service system 200, it has the function of transmitting the job status to the first print service system 100 and the function of transmitting the status of the image processing device 500 to the first print service system 100. For this reason, the print control unit 332 may be referred to as the transmission unit. Moreover, as will be described later with reference to the sequence chart, the print control unit 332 has the function of determining the status of the image processing device 500 based on the job status acquired from the second print service system 200. For this reason, the print control unit 332 may be referred to as the device status determination unit.
[0036] The registration reception unit 333 performs the process of acquiring a registration instruction that instructs the image processing device 500 to be registered with the first printing service system 100. The specific processing of the registration reception unit 333 in this embodiment will be explained using the sequence chart described later.
[0037] The information acquisition unit 334 performs the process of acquiring user information from the first printing service system 100. In this embodiment, the information acquisition unit 334 acquires, for example, a username, which is the name of a user managed by the first printing service system 100, as user information. The information acquisition unit 334 also performs the process of acquiring printer information, which is information about the image processing device 500, from the second printing service system 200. In this embodiment, the information acquisition unit 334 acquires, for example, a printer name, which is the name of the image processing device 500 managed by the second printing service system 200, as information about the image processing device 500. The specific processing of the information acquisition unit 334 in this embodiment will be explained using the sequence chart described later.
[0038] The registration setting unit 335 performs the process of registering the image processing device 500 with the first printing service system 100. Note that, focusing on this function, the registration setting unit 335 may also be referred to as the registration unit. In this embodiment, specifically, the registration setting unit 335 registers the virtual printer associated with the image processing device 500 with the first printing service system 100, thereby achieving registration of the image processing device 500 with the first printing service system 100. Furthermore, when registering the image processing device 500 with the first printing service system 100, the registration setting unit 335 performs the process of setting attribute information related to the image processing device 500, which is managed by the first printing service system 100. Note that, focusing on this function, the registration setting unit 335 may also be referred to as the setting unit. In this embodiment, the first printing service system 100 performs the registration process only in response to registration requests accompanied by administrator privileges, and does not allow registration in response to registration requests without administrator privileges. Furthermore, in this embodiment, the first printing service system 100 performs attribute information setting processing only in response to setting requests accompanied by administrator privileges, and does not allow setting for setting requests without administrator privileges. For this reason, the registration setting unit 335 performs the process of registering the image processing device 500 with the first printing service system 100 using credentials equivalent to administrator privileges. Similarly, the registration setting unit 335 performs the process of setting attribute information managed by the first printing service system 100 using credentials equivalent to administrator privileges. In particular, as will be described later, when the registration reception unit 333 obtains a registration instruction from a general user, the registration setting unit 335 performs these processes using credentials for the administrator that have been stored in the storage unit 310 in advance. As mentioned above, in this embodiment, administrator privileges are required for the registration process to be executed, but administrator privileges are not necessarily required. The specific processing of the registration setting unit 335 in this embodiment will be explained using the sequence chart described later.
[0039] Figure 5 is a block diagram showing an example of the configuration of the terminal device 400. As shown in Figure 5, the terminal device 400 includes a storage unit 410, a display unit 420, an input unit 430, a communication unit 440, and a control unit 450.
[0040] The memory unit 410 is a storage device that stores programs for implementing the processing of the control unit 450 and data used for processing in the terminal device 400. This storage device may be a non-volatile storage device such as a hard disk or flash memory, or it may include memory such as RAM. The display unit 420 is a device for displaying information, such as a flat panel display. The input unit 430 is a device that accepts input operations from the user, such as a keyboard or mouse. The display unit 420 and the input unit 430 may be integrated by a touch panel or the like. The communication unit 440 is a communication interface for communicating with other devices such as the first printing service system 100 and the relay server 300 via a wireless or wired network. The control unit 450 is a processor such as a CPU that controls each component of the terminal device 400. The control unit 450 may have multiple processors. The control unit 450 reads the program into memory and executes the program. As a result, the control unit 450 implements the functions of the web browser 451, the print request unit 452, and the status output unit 453.
[0041] The web browser 451 is a well-known web browser, and in this embodiment, it performs processes such as displaying a web page provided by the first printing service system 100 or the relay server 300 on the display unit 420, and transmitting input information for the displayed web page. The specific processing of the web browser 451 in this embodiment will be explained using the sequence chart described later.
[0042] The print request unit 452 processes a print request in response to user input. In this embodiment, the print request unit 452 specifically requests print from the first print service system 100. The specific processing of the print request unit 452 in this embodiment will be explained using the sequence chart described later.
[0043] The status output unit 453 acquires the job status and printer status, described later, via the first print service system 100, and outputs the job status and printer status. In this embodiment, the status output unit 453 outputs the job status and printer status to the display unit 420, but output is not necessarily done by display. For example, the status output unit 453 may output the job status and printer status by voice or other means. The specific processing of the status output unit 453 in this embodiment will be explained using the sequence chart described later.
[0044] Figure 6 is a block diagram showing an example of the configuration of the image processing device 500. As shown in Figure 6, the image processing device 500 includes a storage unit 510, a communication unit 520, a printing unit 530, and a control unit 540.
[0045] The memory unit 510 is a storage device that stores programs for realizing the processing of the control unit 540 and data used for processing in the image processing device 500. This storage device may be a non-volatile storage device such as a hard disk or flash memory, or it may include memory such as RAM. The communication unit 520 is a communication interface for communicating with other devices such as the second printing service system 200 via a wireless or wired network. The control unit 540 is a processor such as a CPU that controls each component of the image processing device 500. The control unit 540 may have multiple processors. The control unit 540 reads the program into memory and executes the program. In this way, the control unit 540 realizes the functions of the printing processing unit 541.
[0046] The print processing unit 541 performs the necessary processing to execute printing by the printing unit 530. The print processing unit 541 also notifies the second print service system 200 of the job status of the print job. The specific processing performed by the print processing unit 541 in this embodiment will be explained using the sequence chart described later.
[0047] The printing unit 530 has a printing function for forming an image on a printing medium such as paper. The printing unit 530 includes a printing engine. A printing engine is a mechanical configuration that prints an image onto a printing medium using colorants. The printing engine may have a mechanism that prints using ink, for example, by an inkjet method. Alternatively, the printing engine may have a mechanism that prints using toner, for example, by an electrophotographic method. The printing engine may also have a transport mechanism for transporting the printing medium.
[0048] The image processing device 500 may also be equipped with a user interface such as a touch panel display. In this embodiment, as described above, the image processing device 500 is equipped with a printing unit 530 and has the function of a printer. For this reason, the image processing device 500 is also referred to as a printer.
[0049] Next, we will explain the processing flow of the printing system 10 using a sequence chart.
[0050] First, we will explain the process flow for saving credentials in the relay server 300 to obtain permission for a predetermined request to the first printing service system 100. Figure 7 is a sequence chart showing an example of the credential saving process flow executed in the printing system 10. Note that the order of processing steps in this sequence chart is merely an example and can be changed as appropriate, as long as it does not cause technical inconsistencies. The following explains the credential saving process flow in accordance with Figure 7.
[0051] In step S100, the administrator registered with the first print service system 100 performs a predetermined operation via the input unit 430 of the terminal device 400 to request the saving of credentials. This results in the input of, for example, the URL (Uniform Resource Locator) of the credentials saving confirmation page to the web browser 451 of the terminal device 400. The credentials saving confirmation page is a page for confirming whether or not it is really okay to save the credentials. For example, the credentials saving confirmation page may be a page that includes buttons to instruct whether or not to save the credentials. Since saving credentials leads to the administrator's authority being usable for a long period of time, the print system 10 confirms that it is not a user error by asking the user for their intention to save the credentials via the credentials saving confirmation page. After step S100, in step S101, the web browser 451 sends a request to the first print service system 100 to obtain the credentials saving confirmation page according to the entered URL. In response, in step S102, the authentication control unit 131 of the first printing service system 100 sends a credential information saving confirmation page to the web browser 451. As a result, in step S103, the web browser 451 displays the credential information saving confirmation page on the display unit 420 of the terminal device 400.
[0052] In the example shown in Figure 7, a process is performed to confirm whether or not it is really okay to save the credentials, but this process may be omitted. In this case, the operation in step S104 described below corresponds to the operation that requests the saving of credentials.
[0053] In step S104, the administrator inputs an instruction to authorize the saving of credentials via the input unit 430 to the credential saving confirmation page. That is, the administrator inputs an instruction to the web browser 451 indicating that there is no mistake in their intention to save the credentials. Upon receiving such an instruction, in step S105, the web browser 451 sends an instruction to the relay server 300 authorizing the saving of credentials. In response, in step S106, the authentication control unit 331 of the relay server 300 instructs the web browser 451 to access a predetermined redirect page. In this step, the predetermined redirect page is the long-term authentication page. Therefore, the authentication control unit 331 of the relay server 300 sends the URL of the long-term authentication page to the web browser 451. The long-term authentication page is a page that requires the user to input the administrator's authentication information in order to save credentials for an extended period. In step S107, the web browser 451 sends a request to the first print service system 100 to obtain the long-term authentication page according to the received URL. In response, in step S108, the authentication control unit 131 of the first printing service system 100 sends a long-term authentication page to the web browser 451. As a result, in step S109, the web browser 451 displays the long-term authentication page on the display unit 420 of the terminal device 400.
[0054] In step S110, the administrator enters authentication information into the long-term authentication page via the input unit 430. Specifically, for example, the administrator enters their user ID and password. The required authentication information is the authentication information used in the first printing service system 100, specifically, the user ID and password that have been registered in advance. In step S111, the web browser 451 sends the entered authentication information to the first printing service system 100. The authentication control unit 131 of the first printing service system 100 performs authentication processing based on the authentication information received from the web browser 451. That is, the authentication control unit 131 determines whether the received authentication information matches the administrator's authentication information that has been registered in advance.
[0055] If authentication is successful during the authentication process, that is, if the received authentication information matches the authentication information of a pre-registered administrator, in step S112, the authentication control unit 131 of the first printing service system 100 issues an authentication code and further instructs the web browser 451 to access a predetermined redirect destination. This predetermined redirect destination is the relay server 300. This redirect ensures that the authentication code is passed to the relay server 300. To this end, the authentication control unit 131 of the first printing service system 100 sends the URL indicating this predetermined redirect destination, along with the authentication code, to the web browser 451.
[0056] In step S113, the web browser 451 accesses a predetermined redirect destination along with the authentication code. As a result, the relay server 300 obtains the authentication code. Then, in step S114, the authentication control unit 331 of the relay server 300 sends a request to the first printing service system 100 requesting token generation along with the received authentication code. The authentication control unit 131 of the first printing service system 100 issues credentials only if it receives a request accompanied by a predetermined authentication code. In step S115, the authentication control unit 131 confirms that the authentication code received in step S114 matches the authentication code sent in step S112, issues credentials, and sends them to the relay server 300. Specifically, the authentication control unit 131 issues an administrator access token and a refresh token and sends them to the relay server 300. As a result, the authentication control unit 331 of the relay server 300 obtains the administrator access token and the refresh token.
[0057] An administrator access token is information that proves the administrator's access is legitimate. More specifically in this embodiment, the administrator access token is information that proves the administrator's access is legitimate when accessing predetermined information managed by the first printing service system 100. The validity period of the administrator access token is limited to a predetermined short period. For example, the validity period of the administrator access token is only a few hours from the date of issuance. In the above description, the relay server 300 sent an authentication code to obtain an administrator access token, but more specifically, it may also send authentication information called a client secret.
[0058] A refresh token is information used to renew an administrator access token, and its validity period is a predetermined period that is longer than that of the administrator access token. For example, the validity period of a refresh token may be a few days or it may be unlimited. As described later, when a valid refresh token is sent to the first printing service system 100, a new administrator access token and a new refresh token are issued.
[0059] In this embodiment, the administrator access token and the refresh token are examples of credentials. The credentials may also refer to either the administrator access token or the refresh token alone. As described above, the administrator access token is the information directly required to access the predetermined information managed by the first printing service system 100. Therefore, the credentials may specifically refer to the administrator access token alone. Furthermore, the validity period of the administrator access token is not necessarily limited to a short period. The validity period of the administrator access token may also be unlimited. Moreover, if the validity period of the administrator access token is sufficiently long, a refresh token may not be used in this embodiment.
[0060] Let's continue the explanation of the sequence chart in Figure 7. After step S115, in step S116, the authentication control unit 331 of the relay server 300 stores the credentials obtained in step S115, namely the refresh token and the administrator access token, in a database such as the storage unit 310. In this way, the storage unit 310 stores the credentials of the administrator, i.e., the user with administrator privileges. Then, in step S117, the authentication control unit 331 sends a credential saving completion page to the web browser 451. The credential saving completion page is a page that notifies the relay server 300 that the credentials have been properly saved. As a result, in step S118, the web browser 451 displays the credential saving completion page on the display unit 420 of the terminal device 400.
[0061] Next, we will describe the process flow for updating the credentials held by the relay server 300. Figure 8 is a sequence chart showing an example of the credential update process flow executed in the printing system 10. The update process shown in Figure 8 is executed at predetermined timings, for example. Specifically, for example, this update process may be performed to update the administrator access token when the printer registration process is executed, or it may be performed periodically (for example, every day) to update the refresh token. Note that the order of processing steps in this sequence chart is merely an example and can be changed as appropriate, as long as it does not cause technical inconsistencies. The credential update process flow will now be described in accordance with Figure 8.
[0062] In step S200, the authentication control unit 331 of the relay server 300 performs a read operation from the database, such as the storage unit 310. As a result, in step S201, the authentication control unit 331 reads the refresh token currently held. Next, in step S202, the authentication control unit 331 sends a request to the first printing service system 100 for a token update, along with the refresh token currently held.
[0063] The authentication control unit 131 of the first printing service system 100 updates the credentials only when it receives a request accompanied by a valid refresh token. In step S203, the authentication control unit 131 verifies that the refresh token received in step S202 is valid, updates the credentials, and sends the updated credentials to the relay server 300. Specifically, the authentication control unit 131 sends the updated administrator access token and refresh token to the relay server 300. As a result, the authentication control unit 331 of the relay server 300 acquires a new administrator access token and refresh token. After step S203, in step S204, the authentication control unit 331 of the relay server 300 stores the credentials acquired in step S203, i.e., the refresh token and administrator access token, in a database such as the storage unit 310.
[0064] Next, we will explain the process flow for registering a personal printer with the first printing service system 100. Figures 9A to 9C are sequence charts showing an example of the personal printer registration process executed in the printing system 10. A personal printer is a printer intended for use by a specific user. Therefore, a personal printer can also be described as a printer intended for use only by the user who performs the registration operation. In other words, a personal printer is a printer that is not shared by multiple users. Note that the order of processing steps in this sequence chart is merely an example and can be changed as appropriate, as long as it does not create a technical inconsistency. The personal printer registration process flow will now be explained in accordance with Figures 9A to 9C.
[0065] In step S300, a regular user, who is not an administrator, performs a predetermined operation via the input unit 430 of the terminal device 400 to start the personal printer registration process. This inputs, for example, the URL of the printer registration page into the web browser 451 of the terminal device 400. Here, the printer registration page is a page prepared for registering a personal printer with the first printing service system 100. After step S300, in step S301, the web browser 451 sends a request to the relay server 300 to retrieve the printer registration page according to the input URL. In response, in step S302, the registration reception unit 333 of the relay server 300 instructs the web browser 451 to access a predetermined redirect page. In this step, the predetermined redirect page is the authentication page. Therefore, the registration reception unit 333 of the relay server 300 sends the URL of the authentication page to the web browser 451. The authentication page is a page that requests the user to enter authentication information when registering the printer. In step S303, the web browser 451 sends a request to the first print service system 100 to obtain an authentication page according to the received URL. In response, in step S304, the authentication control unit 131 of the first print service system 100 sends the authentication page to the web browser 451. As a result, in step S305, the web browser 451 displays the authentication page on the display unit 420 of the terminal device 400.
[0066] In step S306, the general user enters authentication information on the authentication page via the input unit 430. Specifically, for example, the general user enters their user ID and password. The required authentication information is the authentication information used by the first printing service system 100, specifically, the user ID and password that have been registered in advance. In step S307, the web browser 451 transmits the entered authentication information to the first printing service system 100. The authentication control unit 131 of the first printing service system 100 performs authentication processing based on the authentication information received from the web browser 451. That is, the authentication control unit 131 determines whether the received authentication information matches the authentication information of a general user that has been registered in advance.
[0067] If authentication is successful during the authentication process, that is, if the received authentication information matches the authentication information of a general user that has been registered in advance, in step S308, the authentication control unit 131 of the first printing service system 100 issues an authentication code and further instructs the web browser 451 to access a predetermined redirect destination. This predetermined redirect destination is the relay server 300. This redirect will pass the authentication code to the relay server 300. To this end, the authentication control unit 131 of the first printing service system 100 sends the URL indicating this predetermined redirect destination, along with the authentication code, to the web browser 451.
[0068] In step S309, the web browser 451 accesses a predetermined redirect destination along with the authentication code. As a result, the relay server 300 obtains the authentication code. Then, in step S310, the authentication control unit 331 of the relay server 300 sends a request to the first printing service system 100 requesting token generation along with the received authentication code. In step S311, the authentication control unit 131 of the first printing service system 100 confirms that the authentication code received in step S310 matches the authentication code sent in step S308, issues an access token, and sends it to the relay server 300. This access token is information that proves that the access is legitimate for a general user, and will be referred to as a normal access token in the following description. Although a normal access token is a type of credential information, using this information does not grant administrator access to the first printing service system 100. Therefore, access using a normal access token does not allow access to information managed by the first printing service system 100 that requires administrator privileges. On the other hand, access using a regular access token allows access to information that does not require administrator privileges. In this embodiment, the information acquisition unit 334 of the relay server 300 acquires user information of a regular user performing printer registration operations using a regular access token. Therefore, in step S312, the information acquisition unit 334 of the relay server 300 sends a request to the first printing service system 100 to acquire user information of a regular user performing printer registration operations, along with the regular access token acquired in step S311.
[0069] In response, in step S313, the information management unit 133 of the first printing service system 100 confirms that the access token received in step S312 is valid and then transmits the user information of the general user to the relay server 300. Specifically, the information management unit 133 transmits the user ID and username of the general user, which are managed by the first printing service system 100, to the relay server 300. As a result, the information acquisition unit 334 of the relay server 300 acquires this user information. The information acquisition unit 334 of the relay server 300 may store the acquired user information in the storage unit 310 as needed. Subsequently, in step S314, the registration acceptance unit 333 sends the printer registration page to the web browser 451. As a result, in step S315, the web browser 451 displays the printer registration page on the display unit 420 of the terminal device 400.
[0070] In step S316, the general user performs a predetermined operation to request registration of a personal printer, specifying the printer to be registered via the input unit 430 of the terminal device 400. Here, the printer to be registered is a printer that should be newly made available for printing via the first printing service system 100. In this embodiment, this printer to be registered is not a printer connected to the first printing service system 100, but a printer connected to the second printing service system 200, i.e., the image processing device 500. This printer is registered with the first printing service system 100 by being associated with a virtual printer registered in the first printing service system 100. More specifically in step S316, the general user inputs identification information to identify the printer to be registered on the printer registration page displayed in step S315. For example, the general user inputs the identification information of a printer that they personally own. In this embodiment, as an example, the general user inputs the email address of the printer to be registered as this identification information. That is, the email address of the printer to be registered is entered into the Web browser 451 of the terminal device 400. In addition, any other information that can uniquely identify the printer being registered may be used instead of an email address.
[0071] Next, in step S317, the web browser 451 sends a request to the relay server 300 requesting registration of the printer in the first print service system 100, along with the email address of the printer to be registered. As a result, the registration reception unit 333 receives a registration instruction for the image processing device 500 from a general user. In response, in step S318, the authentication control unit 331 of the relay server 300 sends the email address of the printer to be registered to the second print service system 200 and requests authentication. If a printer corresponding to this email address exists and an access key such as a password is pre-set for that printer, the processes from steps S319 to S324 described later are performed, and authentication is determined to be successful only when this access key is entered. On the other hand, if a printer corresponding to the email address exists and no access key is set for that printer, the processes from steps S319 to S324 described later are not performed, and authentication is determined to be successful. The following describes the case where an access key is set for the printer identified by the email address.
[0072] In step S319, the authentication control unit 231 of the second print service system 200 requests the relay server 300 to send an access key. In response, in step S320, the authentication control unit 331 of the relay server 300 sends an input page for receiving the access key to the web browser 451. As a result, in step S321, the web browser 451 displays the access key input page on the display unit 420 of the terminal device 400. Next, in step S322, the general user enters the access key on the input page via the input unit 430. Then, in step S323, the web browser 451 sends the entered access key to the relay server 300. In step S324, the authentication control unit 331 of the relay server 300 sends the email address and access key of the printer to be registered to the second print service system 200 and requests authentication again. In response, the authentication control unit 231 of the second printing service system 200 performs authentication based on the information transmitted from the relay server 300.
[0073] If authentication is successful, in step S325, the authentication control unit 231 of the second printing service system 200 issues a token and sends it to the relay server 300. This token is an access token for accessing predetermined information managed by the second printing service system 200. The information acquisition unit 334 of the relay server 300, having received the token sent from the second printing service system 200, sends a request to the second printing service system 200 in step S326 to acquire printer information for the printer to be registered, along with the token obtained in step S325.
[0074] In response, in step S327, the information management unit 233 of the second printing service system 200 confirms that the token received in step S326 is valid and then transmits printer information about the image processing device 500, which is the printer to be registered with the first printing service system 100, to the relay server 300. Specifically, the information management unit 233 transmits the printer name and capability information of the printer managed by the second printing service system 200 to the relay server 300. The printer name is displayed to identify the printer when the user selects a printer. Capability information is information that indicates the capabilities of the printer and can also be said to be information that identifies the functions that the printer has. Capability information may be, for example, information indicating whether double-sided printing is possible or information indicating whether color printing is possible. In this way, the information acquisition unit 334 of the relay server 300 acquires printer information, i.e., information about the image processing device 500, from the second printing service system 200. The information acquisition unit 334 of the relay server 300 may store the acquired printer information in the storage unit 310 as needed.
[0075] Next, in step S328, the registration setting unit 335 of the relay server 300 determines the printer name of the virtual printer to be registered with the first print service system 100. As described above, the registration of the printer to be registered with the first print service system 100 is achieved by registering a virtual printer associated with this printer. In other words, in order to use the image processing device 500, which is a printer connected to the second print service system 200, via the first print service system 100, a virtual printer associated with the printer connected to the second print service system 200 is registered in the first print service system 100. That is, by registering a virtual printer associated with a physical printer connected to the second print service system 200 in the first print service system 100, this physical printer is effectively registered in the first print service system 100. The registration setting unit 335 determines the printer name of this virtual printer in order to register the virtual printer with the first print service system 100. In this step, the registration setting unit 335 specifically determines the printer name of the virtual printer using the username obtained in step S313 and the printer name obtained in step S327. For example, the registration setting unit 335 determines the printer name of the virtual printer so as to include the obtained username and printer name. The registration setting unit 335 may also use only one of the username obtained in step S313 and the printer name obtained in step S327. Furthermore, the registration setting unit 335 may accept instructions from the user when determining the printer name of the virtual printer. For example, the registration setting unit 335 may create multiple candidate printer names, and the user may be instructed to select one from among them. Alternatively, the user may be instructed to add or delete strings from the candidate printer names created by the registration setting unit 335.
[0076] Next, in step S329, processing is performed using the pre-stored administrator access token. If the administrator access token has expired, the credential update process shown in Figure 8 is performed, and the administrator access token is updated. In step S329, the registration setting unit 335 of the relay server 300 requests the first print service system 100 to register the virtual printer using the administrator access token. Specifically, in step S329, the registration setting unit 335 sends a request to the first print service system 100, along with the administrator access token, requesting the creation and registration of a virtual printer to be associated with the printer to be registered. At that time, the registration setting unit 335 also sends the virtual printer name determined in step S328 along with the request. In other words, the registration setting unit 335 requests the setting of the virtual printer name along with the registration of the virtual printer.
[0077] As can be seen from steps S328 and S329, the registration setting unit 335 uses the information obtained from the second printing service system 200 to set the virtual printer name, which is one of the attribute information managed by the first printing service system 100. Here, the virtual printer name managed by the first printing service system 100 corresponds to the name of the image processing device 500 managed by the first printing service system 100. Therefore, it can also be said that the registration setting unit 335 uses the information obtained from the second printing service system 200 to set the name of the image processing device 500 managed by the first printing service system 100. In this way, in this embodiment, the attribute information managed by the first printing service system 100 is automatically set using the information obtained from the second printing service system 200, making it easy to set the attribute information. In particular, in this embodiment, the printer name, which is the name of the image processing device 500 managed by the second printing service system 200, is used to set the name of the image processing device 500 managed by the first printing service system 100. As a result, the printer name corresponding to the printer name used in the second printing service system 200 is used in the first printing service system 100, so that when a user uses the first printing service system 100, they can easily identify the personal printer they have registered. In particular, in this embodiment, the name of the image processing device 500 managed by the first printing service system 100 is set using the name of the general user performing the printer registration operation. As a result, when a user uses the first printing service system 100, they can easily identify the personal printer they have registered.
[0078] Next, in step S330, the information management unit 133 of the first printing service system 100 verifies that the administrator access token received in step S329 is valid, and then registers a new virtual printer with the first printing service system 100. At this time, the information management unit 133 uses the virtual printer name received in step S329 as the printer name of the newly registered virtual printer. The information management unit 133 also determines a virtual printer ID as identification information for this new virtual printer, and notifies the relay server 300 of the completion of virtual printer registration along with this virtual printer ID.
[0079] Subsequently, in steps S331 to S333, the configuration process for the newly registered virtual printer is performed. Specifically, in step S331, the registration configuration unit 335 of the relay server 300 sends a request to the first print service system 100, along with the administrator access token, to configure the capability information of the newly registered virtual printer. At the same time, the registration configuration unit 335 also sends the virtual printer ID notified in step S330 and the capability information obtained in step S327 along with the request. In response, the information management unit 133 of the first print service system 100 verifies that the administrator access token received in step S331 is valid and then configures the virtual printer identified by the received virtual printer ID. Specifically, the information management unit 133 uses the received capability information as the capability information for the virtual printer identified by the received virtual printer ID. This configures the capability information of the created virtual printer. In this sequence chart, a request to configure capability information is sent in step S331, but a request to configure the virtual printer name may also be sent. In other words, the setting of the virtual printer name determined in step S328 may be performed in a step separate from the virtual printer registration step. In this case, in step S329, the first print service system 100 may not be notified of the virtual printer name, or the default virtual printer name may be notified.
[0080] Thus, in this embodiment, even in step S331, the registration setting unit 335 sets the capability information, which is one of the attribute information managed by the first printing service system 100, using the capability information, which is information acquired from the second printing service system 200. As a result, the attribute information managed by the first printing service system 100 is automatically set using the information acquired from the second printing service system 200, making it easy to set the attribute information.
[0081] In steps S332 and S333, the registration setting unit 335 of the relay server 300 configures the settings for shared use of the newly registered virtual printer. In other words, in steps S332 and S333, access rights to the printer are configured. Here, settings are made to use the registered printer as a personal printer, and specifically the following processes are performed.
[0082] In step S332, the registration setting unit 335 first performs processing to create shared information. However, as described above, since it is necessary to prevent users other than the general user who performed the printer registration operation from using the printer to be registered, shared information is created that does not allow sharing to arbitrary users. More specifically, in step S332, the registration setting unit 335 sends a request to the first print service system 100 to set up the shared information of the newly registered virtual printer, along with the administrator access token. At that time, the registration setting unit 335 also sends the virtual printer ID notified in step S330 and an instruction specifying that sharing to arbitrary users should not be allowed, along with the request. At this time, the registration setting unit 335 may also send a shared name to the first print service system 100 to identify the newly created shared information. For example, the virtual printer name determined in step S328 may be used as such a shared name. Note that sending the shared name may be omitted. In response, the information management unit 133 of the first printing service system 100 verifies that the administrator access token received in step S332 is valid, and then creates sharing information for the virtual printer identified by the virtual printer ID based on the received information. Specifically, the information management unit 133 creates sharing information indicating that sharing to arbitrary users is not permitted.
[0083] In step S333, the registration setting unit 335 modifies the shared information so that only general users who have performed the printer registration operation can use the printer they have registered. In other words, the registration setting unit 335 modifies the shared information so that access is permitted only from general users who have performed the printer registration operation. Specifically, in step S333, the registration setting unit 335 sends a request to the first print service system 100, along with an administrator access token, to modify the shared information to allow general users who have performed the printer registration operation to use the virtual printer. At this time, the registration setting unit 335 sends the user ID obtained in step S313 as the identification information of the general user who has performed the printer registration operation. In response, the information management unit 133 of the first print service system 100 verifies that the administrator access token received in step S333 is valid and updates the shared information based on the received information. Specifically, the Information Management Unit 133 updates the shared information to allow use by the user with the received user ID.
[0084] Thus, in steps S332 and S333, the registration setting unit 335 sets shared information corresponding to the access rights of the printer to be registered. In other words, the registration setting unit 335 sets information that defines users who can access the virtual printer, that is, users who can access the image processing device 500 corresponding to this virtual printer. As a result, access rights are set automatically, making it easy to set attribute information. In particular, in this embodiment, the registration setting unit 335 sets the shared information, i.e., the printer's attribute information, so that access is permitted only from general users who have performed the operation to register the printer. This prevents other users from using the printer. Also, in this embodiment, as will be described later, the first print service system 100 controls the selection of printers to be used for printing so that only printers to which the user has access rights are included in the selection when the user specifies the printer to be used for printing. Therefore, when the user gives a print command, they can easily select an available printer.
[0085] In the sequence chart shown here, the setting of shared information is performed over two steps, S332 and S333, but these processes may also be performed in a single step.
[0086] After step S333, in step S334, the registration setting unit 335 of the relay server 300 stores the information obtained through the series of processes described above in a database such as the storage unit 310 for use in controlling whether or not to allow printing by the registered printer. Specifically, the registration setting unit 335 stores the virtual printer ID, user ID, printer email address, and access key in the database. At that time, the registration setting unit 335 stores the user ID obtained in step S313 in the database as the user ID of the general user who performed the printer registration operation (hereinafter also referred to as the registered user ID). In this way, the storage unit 310 stores the identification information of the user who issued the instruction to register the personal printer. If no access key is set for the printer, the storage of the access key is omitted in this step.
[0087] In step S335, the web browser 451 queries the relay server 300 to inquire whether the printer registration process is complete. In response, in step S336, the registration setting unit 335 of the relay server 300 sends a registration completion page, which indicates that the registration is complete, to the web browser 451. As a result, in step S337, the web browser 451 displays the registration completion page on the display unit 420 of the terminal device 400. Note that in the sequence chart shown here, the step of querying whether the printer registration process is complete is performed after step S334, but it may also be performed periodically before step S334. In that case, the registration setting unit 335 may send a page to the web browser 451 indicating that the registration is not yet complete.
[0088] The above describes the process flow for registering a personal printer with the first printing service system 100 using a sequence chart. As can be seen from this sequence chart, in this embodiment, when the relay server 300 receives a printer registration instruction from a general user, it registers the printer with the first printing service system 100 and sets attribute information for the registered printer using pre-stored credentials. Therefore, according to this embodiment, when a general user registers a printer with the first printing service system 100, both registration and settings can be performed, improving convenience. In particular, during the settings process, the username of the user who performed the registration operation is used as the virtual printer name, and shared information is set so that the user can access it. In this way, settings are made according to the user who performed the registration operation. This also improves convenience.
[0089] Next, we will explain the process flow for registering a shared printer with the first printing service system 100. Figures 10A to 10D are sequence charts showing an example of the shared printer registration process executed in the printing system 10. A shared printer is a printer intended for use by multiple users. In other words, a shared printer is a printer shared by multiple users. Note that the order of processing steps in this sequence chart is merely an example and can be changed as appropriate, as long as it does not create a technical inconsistency. The following explains the shared printer registration process flow in accordance with Figures 10A to 10D.
[0090] In step S400, the administrator performs a predetermined operation to start the shared printer registration process via the input unit 430 of the terminal device 400. This inputs, for example, the URL of the shared printer registration page into the Web browser 451 of the terminal device 400. Here, the shared printer registration page is a page prepared for registering a shared printer with the first printing service system 100. After step S400, in step S401, the Web browser 451 sends a request to the relay server 300 to retrieve the shared printer registration page according to the input URL. In response, in step S402, the registration reception unit 333 of the relay server 300 instructs the Web browser 451 to access a predetermined redirect page. In this step, the predetermined redirect page is the authentication page. Therefore, the registration reception unit 333 of the relay server 300 sends the URL of the authentication page to the Web browser 451.
[0091] In step S403, the web browser 451 sends a request to the first print service system 100 to obtain an authentication page according to the received URL. In response, in step S404, the authentication control unit 131 of the first print service system 100 sends the authentication page to the web browser 451. As a result, in step S405, the web browser 451 displays the authentication page on the display unit 420 of the terminal device 400.
[0092] In step S406, the administrator enters authentication information on the authentication page via the input unit 430. Specifically, for example, the administrator enters their user ID and password. The required authentication information is the authentication information used in the first printing service system 100, specifically, the user ID and password that have been registered in advance. In step S407, the web browser 451 transmits the entered authentication information to the first printing service system 100. The authentication control unit 131 of the first printing service system 100 performs authentication processing based on the authentication information received from the web browser 451. That is, the authentication control unit 131 determines whether the received authentication information matches the administrator's authentication information that has been registered in advance.
[0093] If authentication is successful during the authentication process, that is, if the received authentication information matches the authentication information of a pre-registered administrator, in step S408, the authentication control unit 131 of the first printing service system 100 issues an authentication code and further instructs the web browser 451 to access a predetermined redirect destination. This predetermined redirect destination is the relay server 300. This redirect ensures that the authentication code is passed to the relay server 300. To this end, the authentication control unit 131 of the first printing service system 100 sends the URL indicating this predetermined redirect destination, along with the authentication code, to the web browser 451.
[0094] In step S409, the web browser 451 accesses a predetermined redirect destination along with the authentication code. As a result, the relay server 300 obtains the authentication code. Then, in step S410, the authentication control unit 331 of the relay server 300 sends a request to the first print service system 100 requesting the generation of an administrator token along with the received authentication code. In step S411, the authentication control unit 131 of the first print service system 100 confirms that the authentication code received in step S410 matches the authentication code sent in step S408, issues an administrator access token, and sends it to the relay server 300. Subsequently, in step S412, the registration reception unit 333 sends the shared printer registration page to the web browser 451. As a result, in step S413, the web browser 451 displays the shared printer registration page on the display unit 420 of the terminal device 400.
[0095] In step S414, the administrator performs a predetermined operation to request the registration of a shared printer, specifying the printer to be registered via the input unit 430 of the terminal device 400. In this embodiment, the printer to be registered is not a printer connected to the first print service system 100, but a printer connected to the second print service system 200, i.e., the image processing device 500. This printer is registered with the first print service system 100 by being associated with a virtual printer registered with the first print service system 100. More specifically in step S414, the administrator inputs identification information to identify the printer to be registered and information to specify the sharers on the shared printer registration page displayed in step S413. For example, the administrator inputs information to specify the sharers and identification information of the printer installed in a location where the specified sharers can use it. The information to specify the sharers may be information that designates users belonging to a specific group as sharers. In this case, the information to specify the sharers may be identification information to identify the group, such as a group ID. Alternatively, instead of identification information to identify the group, the user IDs of each of the multiple users designated as sharers may be entered. Furthermore, the information specifying the shareholder may be any user, i.e., information that designates all users as shareholders. In this embodiment, as an example, the administrator enters the email address of the printer to be registered as the printer identification information. That is, the email address of the printer to be registered is entered into the Web browser 451 of the terminal device 400. Note that other arbitrary information that can uniquely identify the printer to be registered may be used instead of the email address.
[0096] Next, in step S415, the web browser 451 sends a request to the relay server 300 requesting registration of the printer in the first print service system 100, along with information specifying the shareholder and the email address of the printer to be registered. As a result, the registration reception unit 333 receives a registration instruction for the image processing device 500 from the administrator. In response, in step S416, the authentication control unit 331 of the relay server 300 sends the email address of the printer to be registered to the second print service system 200 and requests authentication. If a printer corresponding to this email address exists and an access key such as a password is pre-set for that printer, the processes from steps S417 to S422 described later are performed, and authentication is determined to be successful only when this access key is entered. On the other hand, if a printer corresponding to the email address exists and no access key is set for that printer, the processes from steps S417 to S422 described later are not performed, and authentication is determined to be successful. The following describes the case where an access key is set for the printer identified by the email address.
[0097] In step S417, the authentication control unit 231 of the second print service system 200 requests the relay server 300 to send an access key. In response, in step S418, the authentication control unit 331 of the relay server 300 sends an input page for receiving the access key to the web browser 451. As a result, in step S419, the web browser 451 displays the access key input page on the display unit 420 of the terminal device 400. Next, in step S420, the administrator enters the access key on the input page via the input unit 430. Then, in step S421, the web browser 451 sends the entered access key to the relay server 300. In step S422, the authentication control unit 331 of the relay server 300 sends the email address and access key of the printer to be registered to the second print service system 200 and requests authentication again. In response, the authentication control unit 231 of the second printing service system 200 performs authentication based on the information transmitted from the relay server 300.
[0098] If authentication is successful, in step S423, the authentication control unit 231 of the second printing service system 200 issues a token and sends it to the relay server 300. This token is an access token for accessing predetermined information managed by the second printing service system 200. The information acquisition unit 334 of the relay server 300, having received the token sent from the second printing service system 200, sends a request to the second printing service system 200 in step S424 to acquire printer information for the printer to be registered, along with the token obtained in step S423.
[0099] In response, in step S425, the information management unit 233 of the second printing service system 200 confirms that the token received in step S424 is valid and then transmits printer information for the image processing device 500, which is the printer to be registered with the first printing service system 100, to the relay server 300. Specifically, the information management unit 233 transmits the printer name and capability information of the printer managed by the second printing service system 200 to the relay server 300. In this way, the relay server 300 obtains the printer information. The information acquisition unit 334 of the relay server 300 may store the acquired printer information in the storage unit 310 as needed.
[0100] Next, in step S426, the registration setting unit 335 of the relay server 300 determines the printer name of the virtual printer to be registered with the first print service system 100. That is, in step S426, the registration setting unit 335 determines the printer name of the virtual printer in order to register the virtual printer associated with the physical shared printer with the first print service system 100. Specifically, in this step, the registration setting unit 335 determines the printer name of the virtual printer using the printer name obtained in step S425. For example, the registration setting unit 335 determines the printer name of the virtual printer so as to include the obtained printer name.
[0101] Next, in step S427, the registration setting unit 335 of the relay server 300 requests the first print service system 100 to register the virtual printer using the administrator access token obtained in step S411. Specifically, in step S427, the registration setting unit 335 sends a request to the first print service system 100, along with the administrator access token, requesting the creation and registration of a virtual printer to be associated with the printer to be registered. At the same time, the registration setting unit 335 also sends the virtual printer name determined in step S426 along with the request. In other words, the registration setting unit 335 requests the setting of the virtual printer name along with the registration of the virtual printer.
[0102] In response, in step S428, the information management unit 133 of the first printing service system 100 verifies that the administrator access token received in step S427 is valid and then registers a new virtual printer with the first printing service system 100. At this time, the information management unit 133 uses the virtual printer name received in step S427 as the printer name of the newly registered virtual printer. The information management unit 133 also determines a virtual printer ID as identification information for this new virtual printer and notifies the relay server 300 of the completion of virtual printer registration along with this virtual printer ID.
[0103] Subsequently, in steps S429 to S432, configuration processing is performed for the newly registered virtual printer. Specifically, in step S429, the registration configuration unit 335 of the relay server 300 sends a request to the first print service system 100, along with the administrator access token, to configure the capability information of the newly registered virtual printer. At that time, the registration configuration unit 335 also sends the virtual printer ID notified in step S428 and the capability information obtained in step S425 along with the request. In response, the information management unit 133 of the first print service system 100 verifies that the administrator access token received in step S429 is valid and then configures the virtual printer identified by the received virtual printer ID. Specifically, the information management unit 133 uses the received capability information as the capability information of the virtual printer identified by the received virtual printer ID. This sets the capability information of the created virtual printer. Note that in this sequence chart, a request to configure capability information is sent in step S429, but a request to configure the virtual printer name may also be sent. In other words, the setting of the virtual printer name determined in step S426 may be performed in a step separate from the virtual printer registration step. In this case, in step S427, the first print service system 100 may not be notified of the virtual printer name, or the default virtual printer name may be notified.
[0104] In steps S430, S431, and S432, the registration setting unit 335 of the relay server 300 configures the settings for shared use of the newly registered virtual printer. In other words, in steps S430, S431, and S432, access rights to the printer are configured. Here, settings are made to use the printer to be registered as a shared printer, and specifically the following processes are performed. If the relay server 300 receives information in step S415 that designates an arbitrary user as a sharer, the registration setting unit 335 executes the process in step S430 described below. Also, if the relay server 300 receives information in step S415 that designates a user belonging to a specific group as a sharer, the registration setting unit 335 executes the processes in steps S431 and S432 described below.
[0105] When the relay server 300 receives information designating any user as a sharer, in step S430, the registration setting unit 335 performs processing to create the shared information. However, as mentioned above, since it is necessary to allow any user to use the printer to be registered, shared information that allows sharing to any user is created. More specifically, in step S430, the registration setting unit 335 sends a request to the first print service system 100 to set the shared information for the newly registered virtual printer, along with the administrator access token. At that time, the registration setting unit 335 also sends the virtual printer ID notified in step S428 and an instruction specifying that sharing to any user should be allowed, along with the request. In addition, the registration setting unit 335 may also send a shared name to the first print service system 100 to identify the newly created shared information. For example, the virtual printer name determined in step S426 may be used as such a shared name. Note that sending the shared name may be omitted. In response, the information management unit 133 of the first printing service system 100 verifies that the administrator access token received in step S430 is valid, and then creates sharing information for the virtual printer identified by the virtual printer ID based on the received information. Specifically, the information management unit 133 creates sharing information indicating that sharing to any user is permitted.
[0106] Thus, in step S430, the registration setting unit 335 sets shared information corresponding to the access rights of the printer to be registered. In other words, the registration setting unit 335 sets information that defines the users who can access the virtual printer, that is, the users who can access the image processing device 500 corresponding to this virtual printer. As a result, access rights are set automatically, making it easy to set attribute information.
[0107] When the relay server 300 receives information designating users belonging to a specific group as shareholder, in step S431, the registration setting unit 335 first performs processing to create the shared information. However, since it is necessary to prevent users other than those belonging to the specific group from using the printer to be registered, shared information is created that does not allow sharing to arbitrary users. More specifically, in step S431, the registration setting unit 335 sends a request to the first print service system 100 to set the shared information for the newly registered virtual printer, along with the administrator access token. At that time, the registration setting unit 335 also sends the virtual printer ID notified in step S428 and an instruction specifying that sharing to arbitrary users is not allowed, along with the request. In addition, the registration setting unit 335 may also send a shared name to the first print service system 100 to identify the newly created shared information. For example, the virtual printer name determined in step S426 may be used as such a shared name. Note that sending the shared name may be omitted. In response, the information management unit 133 of the first printing service system 100 verifies that the administrator access token received in step S431 is valid, and then creates sharing information for the virtual printer identified by the virtual printer ID based on the received information. Specifically, the information management unit 133 creates sharing information indicating that sharing to arbitrary users is not permitted.
[0108] In step S432, the registration setting unit 335 modifies the sharing information so that only users belonging to a specific group can use the printer to be registered. Specifically, in step S432, the registration setting unit 335 sends a request to the first print service system 100, along with an administrator access token, to modify the sharing information to allow users belonging to a specific group to use the virtual printer. At this time, the registration setting unit 335 sends, for example, the group ID obtained in step S415 as information to identify the users who are allowed to share. In response, the information management unit 133 of the first print service system 100 verifies that the administrator access token received in step S432 is valid and updates the sharing information based on the received information. Specifically, the information management unit 133 updates the sharing information to allow use by the user identified by the received group ID.
[0109] Thus, in steps S431 and S432, the registration setting unit 335 sets shared information corresponding to the access rights of the printer to be registered. In other words, the registration setting unit 335 sets information that defines the users who can access the virtual printer, that is, the users who can access the image processing device 500 corresponding to this virtual printer. As a result, access rights are set automatically, making it easy to set attribute information.
[0110] In the sequence chart shown in Figure 10C, the setting of shared information was performed over two steps, S431 and S432, but these processes may also be performed in a single step.
[0111] After step S430 or step S432, in step S433, the registration setting unit 335 of the relay server 300 stores the information obtained through the series of processes described above in a database such as the storage unit 310 for use in controlling whether or not to allow printing by the registered printer. Specifically, the registration setting unit 335 stores the virtual printer ID, printer email address, and access key in the database. If no access key is set for the printer, the storage of the access key is omitted in this step. Also, in this sequence chart, a shared printer is registered by an administrator, not a personal printer registered by a general user, so the registration setting unit 335 does not store the user ID of a specific user as the registered user ID. Instead, the registration setting unit 335 stores a predetermined value (e.g., NULL) that is not the user ID of a specific user in the database as the registered user ID.
[0112] In step S434, the web browser 451 queries the relay server 300 to inquire whether the printer registration process is complete. In response, in step S435, the registration setting unit 335 of the relay server 300 sends a registration completion page, which indicates that the registration is complete, to the web browser 451. As a result, in step S436, the web browser 451 displays the registration completion page on the display unit 420 of the terminal device 400. Note that in the sequence chart shown here, the step of querying whether the printer registration process is complete is performed after step S433, but it may also be performed periodically before step S433. In that case, the registration setting unit 335 may send a page to the web browser 451 indicating that the registration is not yet complete.
[0113] Next, we will describe the printing process when printing is performed via the first printing service system 100 using an image processing device 500, which is a printer connected to the second printing service system 200. Figures 11A to 11C and 12 are sequence charts showing an example of the printing process performed in the printing system 10. In particular, these sequence charts show the printing process when printing is specified by the user using a printer connected to the second printing service system 200 that has already been registered with the first printing service system 100 through the registration process shown in Figures 9A to 9C or 10A to 10D. Note that the order of processing steps in this sequence chart is merely an example and can be changed as appropriate, as long as it does not cause a technical inconsistency. The printing process will now be described in accordance with Figures 11A to 11C and 12.
[0114] In step S500, a general user performs a predetermined operation to print data via the input unit 430 of the terminal device 400. Hereinafter, the data to be printed will be referred to as print data. Specifically, for example, a general user performs an operation to specify the printer to be used for printing, the print data, and the print settings. Here, as described above, the image processing device 500, which is a printer connected to the second print service system 200, is specified as the printer to be used for printing. More specifically, a virtual printer corresponding to this image processing device 500 is specified. In this embodiment, the print control unit 132 of the first print service system 100 controls the system so that only printers to which the user has access rights are included in the selection of printers to be used for printing. Specifically, the print control unit 132 configures the user interface screen so that only printers to which the user has access rights are displayed as options for printers to be used for printing.
[0115] The print settings specified in step S500 are the settings that are set on the printer for printing. For example, print settings may include, but are not limited to, settings that specify the size of the paper to be used, settings that specify whether or not to perform color printing, or settings that specify whether or not to perform double-sided printing.
[0116] When the operation in step S500 is performed, in step S501, the print request unit 452 of the terminal device 400 requests printing from the first print service system 100. At that time, the print request unit 452 sends to the first print service system 100 the user ID of the user who instructed printing in step S500, the virtual printer ID of the specified printer, the specified print settings, and the specified print data. The first print service system 100 then receives this information.
[0117] Next, in step S502, the print control unit 132 of the first print service system 100 generates a print job based on the information received in step S501 and notifies the relay server 300 of the existence of this print job. Specifically, the print control unit 132 notifies the relay server 300 of the job ID, which is the identification information of this print job, and the virtual printer ID of the specified printer. In step S503, the print control unit 132 also notifies the terminal device 400 of the job ID.
[0118] When the relay server 300 receives the notification in step S502, in step S504, the print control unit 332 of the relay server 300 sends a request to the first print service system 100 to obtain job information. Specifically, the print control unit 332 sends this request along with the virtual printer ID and job ID notified in step S504. In response, in step S505, the print control unit 132 of the first print service system 100 sends the user ID and print settings received in step S501, along with the URL indicating the storage location of the print data received in step S501, as job information to the relay server 300. In the following description, the URL indicating the storage location of the print data will be referred to as the print data URL.
[0119] When the relay server 300 receives job information, in step S506, the print control unit 332 of the relay server 300 performs a database read operation, such as the storage unit 310, to retrieve information stored in association with the received virtual printer ID. As a result, in step S507, the print control unit 332 reads the registered user ID, printer email address, and access key stored in association with the virtual printer ID. This information is the same information stored in step S334 or step S433 described above.
[0120] After step S507, the print control unit 332 of the relay server 300 performs a determination process to prevent the personal printer from being used by an inappropriate user. Specifically, the print control unit 332 determines whether a user other than the general user who performed the operation to register the personal printer is performing an operation to print using that personal printer. Unless the use of the personal printer by an inappropriate user is requested, that is, unless a user other than the general user who performed the operation to register the personal printer is performing an operation to print using that personal printer, the processes from steps S508 to S520 are performed. On the other hand, if the use of the personal printer by an inappropriate user is requested, that is, if a user other than the general user who performed the operation to register the personal printer performs an operation to print using that personal printer, printing will not be performed, and in step S521, described later, the print control unit 332 outputs an error to the first print service system 100.
[0121] The print control unit 332 performs the following, more specifically, determination process to prevent personal printers from being used by inappropriate users. If the specified printer is registered as a personal printer in the first print service system 100, the print control unit 332 determines that use of the personal printer by an inappropriate user has not been requested if the user who registered the specified printer in the first print service system 100 and the user who issued the print command are the same. Specifically, for example, if the value of the registered user ID read in step S507 is not NULL, the print control unit 332 determines that use of the personal printer by an inappropriate user is not being requested if the user ID received in step S505 and the registered user ID read in step S507 are the same. In this case, the print control unit 332 will send a print request to the second print service system 200 in step S508, which will be described later.
[0122] In response, the print control unit 332 determines that if the specified printer is registered as a personal printer in the first print service system 100, and the user who registered the printer in the first print service system 100 is different from the user who issued the print request, then an inappropriate user has requested to use a personal printer. Specifically, for example, if the value of the registered user ID read in step S507 is not NULL, and the user ID received in step S505 does not match the registered user ID read in step S507, then the print control unit 332 determines that an inappropriate user has requested to use a personal printer. Therefore, in this case, printing will not be performed, and an error will be output. In this case, the print control unit 332 will not send the print request to the second print service system 200.
[0123] Thus, when a personal printer is specified as the printer to be used for printing according to a print job, the print control unit 332 sends a print request requesting printing on the personal printer only if the print job corresponds to a print instruction from the user who registered the personal printer. More specifically, the print control unit 332 determines whether or not to send a print request by comparing the registered user ID, which is the stored identification information of the registered user, with the user ID, which is the identification information of the user who issued the print instruction corresponding to the print job. With this configuration, it is possible to prevent users other than the user who registered the personal printer from using a personal printer registered by that user. However, even if access rights are set to limit the general users who can access the personal printer to only the user who registered the personal printer, there is a risk that users with higher privileges than this user, such as administrators, may still be able to use the personal printer. Furthermore, the access rights of a personal printer, which is attribute information managed by the first print service system 100, are information that can be freely set by the administrator. Therefore, there is a risk that the administrator may mistakenly set the access rights to the personal printer to grant other users. In other words, in these cases, there is a risk that the personal printer may be used by another user. In contrast, in this embodiment, as described above, the relay server 300 verifies the registered user against the user who issued the print command to determine whether or not the personal printer is available for use. Therefore, in the cases described above, it is possible to appropriately prevent the personal printer from being used by another user.
[0124] Furthermore, if the specified printer is registered as a shared printer in the first print service system 100, the print control unit 332 determines that, regardless of the user who issued the print command, the use of a personal printer by an inappropriate user has not been requested. Specifically, for example, if the value of the registered user ID read in step S507 is NULL, the print control unit 332 determines that, regardless of the user who issued the print command, the use of a personal printer by an inappropriate user is not being requested. In this case, the print control unit 332 will send a print request to the second print service system 200 in step S508, which will be described later.
[0125] Thus, when a shared printer is specified as the printer to be used for printing according to a print job, the print control unit 332 sends a print request to the second print service system 200 requesting printing on the shared printer, regardless of which user's print instruction the print job corresponds to. Therefore, even users who have not registered a personal printer can use the print service using this system.
[0126] In step S508, the print control unit 332 of the relay server 300 requests printing from the second print service system 200. At that time, the print control unit 332 sends to the second print service system 200 the printer email address and access key read in step S507, and the print settings and print data URL obtained in step S505. In this way, the print control unit 332 has the function of sending print requests to the second print service system 200 in response to print jobs from the first print service system 100.
[0127] When the second print service system 200 receives a print request from the relay server 300, in step S509, the print control unit 232 of the second print service system 200 accesses the print data URL notified in step S508 to obtain the print data. As a result, in step S510, the print control unit 232 of the second print service system 200 obtains the print data from the first print service system 100.
[0128] After step S510, in step S511, the print control unit 232 converts the print data acquired in step S510 into print data according to a predetermined printer language. Then, in step S512, the print control unit 232 notifies the image processing device 500, which is the printer used for printing, of the existence of a print job for printing the converted print data. This print job corresponds to a print job managed by the first print service system 100 and is a print job managed by the print control unit 232 of the second print service system 200. For this reason, a new ID is assigned to it, separate from the Job ID value mentioned above. Hereinafter, the ID of the print job managed by the print control unit 232 of the second print service system 200 will be referred to as Job ID 2. In step S513, the print control unit 232 of the second print service system 200 notifies the relay server 300 of Job ID 2. In response to this, in step S514, the print control unit 332 of the relay server 300 performs storage processing of the correspondence between the print jobs of the first print service system 100 and the print jobs of the second print service system 200. Specifically, the print control unit 332 associates the virtual printer ID, the job ID of the first print service system 100, the printer ID of the printer used for printing, and the job ID of the second print service system 200, i.e., job ID 2, and stores this information in a database such as the storage unit 310.
[0129] When the image processing device 500 receives the notification in step S512, in step S515, the print processing unit 541 of the image processing device 500 sends a request to the second print service system 200 to acquire print data. In response, in step S516, the print control unit 232 of the second print service system 200 sends the converted print data to the image processing device 500.
[0130] After step S516, each time the job status changes, the notification process shown in the sequence chart in Figure 12 is executed. Subsequently, the process in step S517 is performed. Now, referring to Figure 12, the flow of processes executed each time the job status changes will be explained. For example, the processes shown in Figure 12 are executed when the printing process is started in the image processing device 500 or when an error occurs after the printing process has started. Note that the order of the processes in each step of this sequence chart is merely an example and can be changed as appropriate, as long as it does not cause a technical inconsistency.
[0131] In step S600, the print processing unit 541 of the image processing device 500 notifies the second print service system 200 of the job status. When the second print service system 200 receives this notification, in step S601, the print control unit 232 of the second print service system 200 notifies the relay server 300 of the job status notified in step S600, along with the printer ID and job ID 2. As a result, the print control unit 332 of the relay server 300 obtains the job status for the printing process performed by the image processing device 500.
[0132] When the relay server 300 receives a notification of the job status, in step S602, the print control unit 332 of the relay server 300 performs a database read operation, such as the storage unit 310, to obtain information stored in association with the received printer ID and job ID 2. As a result, in step S603, the print control unit 332 reads the virtual printer ID and job ID stored in association with these. Then, in step S604, the print control unit 332 of the relay server 300 notifies the first print service system 100 of the job status notified in step S601, along with the virtual printer ID and job ID. That is, when the print control unit 332 obtains the job status from the second print service system 200, it transmits the job status to the first print service system 100.
[0133] By the way, in this embodiment, the first print service system 100 manages not only the job status but also the printer status. In contrast, the second print service system 200 manages the job status but does not manage the printer status. Here, "job status" refers to the processing status of each print job, in other words, the processing status of each print process, and "printer status" refers to the printer status that affects all print jobs processed by a particular printer, in other words, the printer status that affects all print processes processed by a particular printer.
[0134] In this embodiment, in order to notify the first printing service system 100 of the printer status, in step S605, the print control unit 332 of the relay server 300 performs a process to determine the printer status using the job status notified from the second printing service system 200. That is, the print control unit 332 determines the status of the image processing device 500 based on the job status obtained from the second printing service system 200. As a result, in step S606, the printer status of the virtual printer is determined. Specifically, if the job status notified from the second printing service system 200 indicates an error that is not dependent on the print job, the print control unit 332 also uses this job status as the printer status. For example, if the job status notified from the second printing service system 200 indicates a printing error due to running out of printing media, the print control unit 332 determines that the printer status of the image processing device 500 and its associated virtual printer is that of a state of running out of printing media (running out of printing media state). The printing media is, for example, paper, but may be a medium made of a material other than paper. Furthermore, for example, if the job status notified by the second printing service system 200 indicates a printing error due to a lack of colorant, the printing control unit 332 determines that the printer status of the image processing device 500 and its associated virtual printer is a state of colorant depletion (colorant depletion state). Note that the colorant is, for example, ink, but may also be toner, etc. Also, if the job status notified by the second printing service system 200 indicates that printing is in progress, the printing control unit 332 may use this job status as the printer status. That is, the printing control unit 332 may determine that the printer status is in the printing state.
[0135] Then, in step S607, the print control unit 332 of the relay server 300 notifies the first print service system 100 of the printer status of the virtual printer determined in step S606, along with the virtual printer ID. That is, the print control unit 332 transmits the status of the image processing device 500 to the first print service system 100. Therefore, if the job status notified by the second print service system 200 in step S601 indicates a printing error due to, for example, running out of paper or running out of ink, the first print service system 100 is notified of the printing error due to running out of paper or running out of ink as the job status, and the state of running out of paper or running out of ink is notified as the printer status.
[0136] In contrast, if the job status notified by the second print service system 200 indicates an error specific to the print job, the print control unit 332 does not reflect this job status in the printer status. For example, if the job status notified by the second print service system 200 indicates a print error due to a communication error, the print control unit 332 does not reflect this job status in the printer status of the image processing device 500 and its associated virtual printer. Also, for example, if the job status notified by the second print service system 200 indicates a cancellation of the print job based on instructions from the user, the print control unit 332 does not reflect this job status in the printer status of the image processing device 500 and its associated virtual printer. Therefore, if the job status notified by the second print service system 200 in step S601 indicates, for example, a communication error or a print job cancellation, the first print service system 100 is notified of the communication error or print job cancellation as the job status, and the notification of the printer status is omitted.
[0137] In step S608, the status output unit 453 of the terminal device 400 sends a request to the first print service system 100 to obtain job information, specifying the virtual printer ID and job ID. In response, in step S609, the print control unit 132 of the first print service system 100 sends the job status received in step S604 to the terminal device 400. As a result, in step S610, the status output unit 453 of the terminal device 400 displays the job status on the display unit 420 of the terminal device 400.
[0138] Furthermore, in step S611, the status output unit 453 of the terminal device 400 sends a request to the first print service system 100 to obtain the printer status, specifying the virtual printer ID. In response, in step S612, the print control unit 132 of the first print service system 100 sends the printer status received in step S607 to the terminal device 400. As a result, in step S613, the status output unit 453 of the terminal device 400 displays the printer status on the display unit 420 of the terminal device 400.
[0139] As can be seen from this sequence chart, the print control unit 332 of the relay server 300 transmits the updated job status to the first print service system 100 each time the job status is updated. Therefore, the user can properly understand the current job status via the first print service system 100.
[0140] Returning to Figure 11B, the processing from step S517 onwards will be explained. In step S517, when the printing process is completed, the print processing unit 541 of the image processing device 500 notifies the second printing service system 200 of the completion of printing by notifying the processing result of the print job. Specifically, the print processing unit 541 notifies whether the printing process was completed successfully or not. In other words, the print processing unit 541 notifies whether the printing was successful or failed. When the second printing service system 200 receives this notification, in step S518, the print control unit 232 of the second printing service system 200 notifies the relay server 300 of the processing result notified in step S517 as a job status, along with the printer ID and job ID 2. As a result, the print control unit 332 of the relay server 300 obtains the job status for the printing process performed by the image processing device 500.
[0141] When the relay server 300 receives a notification of the job status, in step S519, the print control unit 332 of the relay server 300 performs a database read operation, such as the storage unit 310, to obtain information stored in association with the received printer ID and job ID 2. As a result, in step S520, the print control unit 332 reads the virtual printer ID and job ID stored in association with these.
[0142] Next, in step S521, the print control unit 332 of the relay server 300 notifies the first print service system 100 of the job status, along with the virtual printer ID and the job ID. That is, when the print control unit 332 obtains the job status from the second print service system 200, it sends the job status to the first print service system 100. As described above, if it is determined that an inappropriate user has requested to use a personal printer, the processing up to step S520 is skipped, and in this step, the first print service system 100 is notified of a job status indicating a printing failure caused by an inappropriate user using a personal printer. In other words, in this case, the occurrence of an error caused by an inappropriate user using a personal printer is notified.
[0143] In step S522, the status output unit 453 of the terminal device 400 sends a request to the first print service system 100 to obtain job information, specifying the virtual printer ID and job ID. In response, in step S523, the print control unit 132 of the first print service system 100 sends the job status received in step S521 to the terminal device 400. As a result, in step S524, the status output unit 453 of the terminal device 400 displays the job status on the display unit 420 of the terminal device 400.
[0144] Furthermore, when the relay server 300 receives notification of the processing result of a print job, in step S525, the print control unit 332 of the relay server 300 determines that the image processing device 500 and the virtual printer are in an idle state (standby state) and notifies the first print service system 100 of the printer status. More specifically, the print control unit 332 determines that the printer status of the virtual printer and the associated image processing device 500 is idle when the printing process has been successfully completed for all print jobs for the same virtual printer, i.e., the same image processing device 500. In this way, the print control unit 332 determines the status of the image processing device 500 based on the job status obtained from the second print service system 200. Specifically, in step S525, the print control unit 332 notifies the first print service system 100 that the printer status of the virtual printer is idle, along with the virtual printer ID. In this way, the print control unit 332 transmits the status of the image processing device 500 to the first print service system 100.
[0145] Subsequently, in step S526, the status output unit 453 of the terminal device 400 sends a request to the first print service system 100 to obtain the printer status, specifying the virtual printer ID. In response, in step S527, the print control unit 132 of the first print service system 100 sends a message to the terminal device 400 indicating that the printer status is idle. As a result, in step S528, the status output unit 453 of the terminal device 400 displays on the display unit 420 of the terminal device 400 that the printer status is idle.
[0146] The above describes the flow of the printing process when printing from a printer connected to the second printing service system 200 is performed via the first printing service system 100, using a sequence chart. As can be seen from this sequence chart, the print control unit 332 of the relay server 300 relays print job information for printing print data between the first printing service system 100 and the second printing service system 200. The image processing device 500 then prints the print data based on the print job information relayed by the relay server 300. Therefore, in a system where the first printing service system 100 and the second printing service system 200 are linked, printing by the image processing device 500 can be performed.
[0147] As can be seen from this sequence chart, in this embodiment, the print control unit 332 of the relay server 300 acquires the job status of the printing process performed by the image processing device 500 from the second printing service system 200 and transmits the job status to the first printing service system 100. Therefore, the first printing service system 100 can provide the user with information about the job status. The job status transmitted to the first printing service system 100 may be, as described above, a job status indicating that a printing error occurred after the execution of the printing process, or a job status indicating that the printing process was completed successfully, etc. Furthermore, the print control unit 332 of the relay server 300 determines the status of the image processing device 500 based on the job status acquired from the second printing service system 200 and transmits the status of the image processing device 500 to the first printing service system 100. Therefore, the first printing service system 100 can provide the user with information about the status of the image processing device 500. Furthermore, the first printing service system 100 is connected to a terminal device 400 that acquires and outputs the job status and the status of the image processing device 500 via the first printing service system 100. Therefore, the user can easily understand these statuses using the terminal device 400.
[0148] It should be noted that the present invention is not limited to the embodiments described above, and can be modified as appropriate without departing from the spirit of the invention. For example, the relay server 300 may be included in the second print service system 200. With such a configuration, for example, the same vendor can easily manage both the relay server 300 and the second print service system 200. In addition, in the embodiments described above, the second print service system 200 acquires print data from the first print service system 100, but the relay server 300 may acquire print data from the first print service system 100, and the relay server 300 may transmit this print data to the second print service system 200. Furthermore, in the embodiments described above, an example was shown in which a general user registers a personal printer, but an administrator may register the general user's personal printer on their behalf.
[0149] Furthermore, in the examples described above, the program includes a set of instructions (or software code) that, when loaded into a computer, cause the computer to perform one or more of the functions described in the embodiments. The program may be stored on a non-temporary computer-readable medium or a physical storage medium. Examples, but not limited to, include random-access memory (RAM), read-only memory (ROM), flash memory, solid-state drive (SSD) or other memory technologies, CD-ROM, digital versatile disk (DVD), Blu-ray® disc or other optical disc storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage devices. The program may be transmitted over a temporary computer-readable medium or a communication medium. Examples, but not limited to, include temporary computer-readable medium or a communication medium that includes electrically, optically, acoustically, or otherwise propagating signals.
[0150] Some or all of the above embodiments may also be described as follows, but are not limited to the following: (Note 1) A server connected to the first printing service system and the second printing service system connected to the first and second image processing devices, A registration receiving unit that receives a registration instruction for the first image processing device from a first user with first authority, or a registration instruction for the second image processing device from a second user with second authority, which is an authority more restricted than the first authority, A registration unit that, upon receiving the registration instruction for the first image processing device, registers the first image processing device in the first print service system, and upon receiving the registration instruction for the second image processing device, registers the second image processing device in the first print service system, A print control unit that transmits a print request to the second print service system in response to a print job from the first print service system, and It has, The print control unit, If the second image processing device is designated as the image processing device to be used in printing according to the print job, the print request requesting printing by the second image processing device is sent to the second print service system only when the print job is a print job corresponding to a print instruction by the second user. If the first image processing device is designated as the image processing device to be used in printing according to the aforementioned print job, the print request requesting printing by the first image processing device is sent to the second print service system, regardless of which user's print instruction the print job corresponds to. server. (Note 2) The second image processing device further includes a storage unit that stores identification information of the second user, who is the user who issued the registration instruction, The print control unit compares the stored identification information of the second user with the identification information of the user who issued the print instruction corresponding to the print job, and determines whether or not to transmit the print request requesting printing by the second image processing device to the second print service system. The server listed in Appendix 1. (Note 3) The system further includes a setting unit that, when registering the first image processing device or the second image processing device, sets information managed by the first printing service system, which specifies the users who can access the first image processing device or the second image processing device. In the case of settings for the second image processing device, the setting unit configures the settings so that access is permitted only from the second user among the users with the second privilege. The server specified in Appendix 1 or 2. (Note 4) The registration unit registers the first image processing device and the second image processing device as virtual devices in the first printing service system. A server specified in any one of the appendices 1 through 3. (Note 5) The server is included in the second printing service system. A server specified in any one of the items in Appendix 1 to 4. (Note 6) The first printing service system and First image processing device and The second image processing device and A second printing service system connected to the first image processing device and the second image processing device, The system comprises a server connected to the first printing service system and the second printing service system, The aforementioned server is A registration receiving unit that receives a registration instruction for the first image processing device from a first user with first authority, or a registration instruction for the second image processing device from a second user with second authority, which is an authority more restricted than the first authority, A registration unit that, upon receiving the registration instruction for the first image processing device, registers the first image processing device in the first print service system, and upon receiving the registration instruction for the second image processing device, registers the second image processing device in the first print service system, A print control unit that transmits a print request to the second print service system in response to a print job from the first print service system, and It has, The print control unit, If the second image processing device is designated as the image processing device to be used in printing according to the print job, the print request requesting printing by the second image processing device is sent to the second print service system only when the print job is a print job corresponding to a print instruction by the second user. If the first image processing device is designated as the image processing device to be used in printing according to the print job, regardless of which user the print job corresponds to, the print request requesting printing by the first image processing device is sent to the second print service system. The first image processing device or the second image processing device executes a print process based on the print request. Printing system. (Note 7) The server connected to the first printing service system and the second printing service system, which is connected to the first and second image processing devices, The system obtains a registration instruction for the first image processing device from a first user with first authority, or a registration instruction for the second image processing device from a second user with second authority, which is a more restricted authority than the first authority. When the registration instruction for the first image processing device is received, the first image processing device is registered in the first print service system; when the registration instruction for the second image processing device is received, the second image processing device is registered in the first print service system. In response to a print job from the first print service system, a print request is sent to the second print service system. In the process of sending the print request, If the second image processing device is designated as the image processing device to be used in printing according to the print job, the print request requesting printing by the second image processing device is sent to the second print service system only when the print job is a print job corresponding to a print instruction by the second user. If the first image processing device is designated as the image processing device to be used in printing according to the aforementioned print job, the print request requesting printing by the first image processing device is sent to the second print service system, regardless of which user's print instruction the print job corresponds to. Information processing methods. (Note 8) The first printing service system and the second printing service system connected to the first and second image processing devices are connected to a computer on the server. A registration acceptance step that obtains a registration instruction for the first image processing device from a first user with first authority, or a registration instruction for the second image processing device from a second user with second authority, which is an authority more restricted than the first authority, A registration step in which, when the registration instruction for the first image processing device is obtained, the first image processing device is registered in the first print service system, and when the registration instruction for the second image processing device is obtained, the second image processing device is registered in the first print service system, A print control step in which a print request is sent to the second print service system in response to a print job from the first print service system, and Make it run, In the print control step, If the second image processing device is designated as the image processing device to be used in printing according to the print job, the print request requesting printing by the second image processing device is sent to the second print service system only when the print job is a print job corresponding to a print instruction by the second user. If the first image processing device is designated as the image processing device to be used in printing according to the aforementioned print job, the print request requesting printing by the first image processing device is sent to the second print service system, regardless of which user's print instruction the print job corresponds to. program. [Explanation of Symbols]
[0151] 10…Printing system, 100…First printing service system, 110…Storage unit, 120…Communication unit, 130…Control unit, 131…Authentication control unit, 132…Printing control unit, 133…Information management unit, 200…Second printing service system, 210…Storage unit, 220…Communication unit, 230…Control unit, 231…Authentication control unit, 232…Printing control unit, 233…Information management unit, 300…Relay server, 310…Storage unit, 320…Communication unit, 330…Control 331…Authentication Control Unit, 332…Printing Control Unit, 333…Registration Acceptance Unit, 334…Information Acquisition Unit, 335…Registration Setting Unit, 400…Terminal Device, 410…Storage Unit, 420…Display Unit, 430…Input Unit, 440…Communication Unit, 450…Control Unit, 451…Web Browser, 452…Print Request Unit, 453…Status Output Unit, 500…Image Processing Unit, 510…Storage Unit, 520…Communication Unit, 530…Printing Unit, 540…Control Unit, 541…Printing Processing Unit
Claims
1. A server connected to a first printing service system and a second printing service system connected to a first image processing device and a second image processing device, A registration receiving unit that receives a registration instruction for the first image processing device from a first user with first authority, or a registration instruction for the second image processing device from a second user with second authority, which is an authority more restricted than the first authority, A registration unit that, upon receiving the registration instruction for the first image processing device, registers the first image processing device in the first print service system, and upon receiving the registration instruction for the second image processing device, registers the second image processing device in the first print service system, A print control unit that transmits a print request to the second print service system in response to a print job from the first print service system, and It has, The print control unit, If the second image processing device is designated as the image processing device to be used in printing according to the print job, the print request requesting printing by the second image processing device is sent to the second print service system only when the print job is a print job corresponding to a print instruction by the second user. If the first image processing device is designated as the image processing device to be used in printing according to the aforementioned print job, the print request requesting printing by the first image processing device is sent to the second print service system, regardless of which user's print instruction the print job corresponds to. server.
2. The second image processing device further includes a storage unit that stores identification information of the second user, who is the user who issued the registration instruction, The print control unit compares the stored identification information of the second user with the identification information of the user who issued the print instruction corresponding to the print job, and determines whether or not to transmit the print request requesting printing by the second image processing device to the second print service system. The server according to claim 1.
3. The system further includes a setting unit that, when registering the first image processing device or the second image processing device, sets information managed by the first printing service system, which specifies the users who can access the first image processing device or the second image processing device. In the case of settings for the second image processing device, the setting unit configures the settings so that access is permitted only from the second user among the users with the second privilege. The server according to claim 1 or 2.
4. The registration unit registers the first image processing device and the second image processing device as virtual devices in the first printing service system. The server according to claim 1.
5. The server is included in the second printing service system. The server according to claim 1.
6. The first printing service system and First image processing device and The second image processing device and A second printing service system connected to the first image processing device and the second image processing device, The system comprises a server connected to the first printing service system and the second printing service system, The aforementioned server is A registration receiving unit that receives a registration instruction for the first image processing device from a first user with first authority, or a registration instruction for the second image processing device from a second user with second authority, which is an authority more restricted than the first authority, A registration unit that, upon receiving the registration instruction for the first image processing device, registers the first image processing device in the first print service system, and upon receiving the registration instruction for the second image processing device, registers the second image processing device in the first print service system, A print control unit that transmits a print request to the second print service system in response to a print job from the first print service system, and It has, The print control unit, If the second image processing device is designated as the image processing device to be used in printing according to the print job, the print request requesting printing by the second image processing device is sent to the second print service system only when the print job is a print job corresponding to a print instruction by the second user. When the first image processing device is designated as the image processing device to be used in printing according to the aforementioned print job, regardless of which user's print instruction the print job corresponds to, the print request requesting printing by the first image processing device is sent to the second print service system. The first image processing device or the second image processing device executes a print process based on the print request. Printing system.
7. A server connected to the first printing service system and the second printing service system, which is connected to the first and second image processing devices, The system obtains a registration instruction for the first image processing device from a first user with first authority, or a registration instruction for the second image processing device from a second user with second authority, which is a more restricted authority than the first authority. When the registration instruction for the first image processing device is received, the first image processing device is registered in the first print service system; when the registration instruction for the second image processing device is received, the second image processing device is registered in the first print service system. In response to a print job from the first print service system, a print request is sent to the second print service system. In the process of sending the print request, If the second image processing device is designated as the image processing device to be used in printing according to the print job, the print request requesting printing by the second image processing device is sent to the second print service system only when the print job is a print job corresponding to a print instruction by the second user. If the first image processing device is designated as the image processing device to be used in printing according to the aforementioned print job, the print request requesting printing by the first image processing device is sent to the second print service system, regardless of which user's print instruction the print job corresponds to. Information processing methods.
8. The first printing service system and the second printing service system connected to the first and second image processing devices are connected to a computer on the server, A registration acceptance step that obtains a registration instruction for the first image processing device from a first user with first authority, or a registration instruction for the second image processing device from a second user with second authority, which is an authority more restricted than the first authority, A registration step in which, when the registration instruction for the first image processing device is obtained, the first image processing device is registered in the first print service system, and when the registration instruction for the second image processing device is obtained, the second image processing device is registered in the first print service system, A print control step in which a print request is sent to the second print service system in response to a print job from the first print service system, and Make it run, In the print control step, If the second image processing device is designated as the image processing device to be used in printing according to the print job, the print request requesting printing by the second image processing device is sent to the second print service system only when the print job is a print job corresponding to a print instruction by the second user. If the first image processing device is designated as the image processing device to be used in printing according to the aforementioned print job, the print request requesting printing by the first image processing device is sent to the second print service system, regardless of which user's print instruction the print job corresponds to. program.
Citation Information
Patent Citations
Information processing device, information relay method, and program
JP2013120490A
Printing system, server system, and printer
JP2022025667A
Printing system, management server system, and control method
JP2022038375A