Print apparatus, information processing unit, control method thereof, and program
The printing device addresses the limitation of OS standard printing functions by generating print commands using vendor-specific attributes, enabling flexible print setting changes without OS updates.
Patent Information
- Application Number
- JP2024095377
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-06-12
- Publication Date
- 2025-12-24
AI Technical Summary
Users cannot utilize vendor-specific print settings on existing OS standard printing functions until vendor extended attributes are added, limiting flexibility in print setting changes.
A printing device that receives print jobs with attributes conforming to a first protocol, generates print commands using attributes conforming to a second protocol, and prints data accordingly, allowing for flexible print setting changes.
Enables users to dynamically change print settings without relying on OS updates, enhancing user flexibility and functionality.
Smart Images

Figure 2025186912000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a printing device, an information processing device, and a control method and program therefor. [Background technology]
[0002] Recent operating systems (OS) come equipped with a printing function as standard. Such a printing function is called a standard printing function. To provide users with print settings not supported by the standard printing function, printing device vendors provide a print support application (PSA) that can be installed on the OS. The standard printing function communicates with printing devices and print servers using a standard protocol such as the Internet Printing Protocol (IPP). IPP allows printing device vendors to define their own vendor extended attributes. Patent Document 1 proposes a technology that executes printing according to vendor extended attributes defined for print settings not supported by the standard printing function. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Patent No. 5665582 Summary of the Invention [Problem to be solved by the invention]
[0004] By adding vendor extended attributes to the standard print functions of the OS, users can use print settings defined in the vendor extended attributes. If vendor extended attributes are defined for each vendor-specific print setting, even if a printing device provides a new print setting, the user cannot use that print setting until the vendor extended attributes are added to the standard print functions of the OS. Some aspects of the present invention aim to provide a technique for flexibly changing the print settings available to users. [Means for solving the problem]
[0005] According to some embodiments, there is provided a printing device comprising: a receiving means for receiving a print job from an external device, the print job including a first attribute representing print settings; a generating means for generating a print command based on the first attribute; and a printing means for printing print data specified in the print job in accordance with the print command, wherein the first attribute includes an attribute name conforming to a first protocol, and an attribute value corresponding to the attribute name of the first attribute includes an attribute name and attribute value conforming to a second protocol different from the first protocol. [Effects of the Invention]
[0006] Some embodiments provide users with the flexibility to change the print settings available to them. [Brief explanation of the drawings]
[0007] [Figure 1] FIG. 1 is a schematic diagram illustrating an example of the configuration of a printing system according to some embodiments. [Figure 2] FIG. 2 is a block diagram illustrating an example of the hardware configuration of a computer according to some embodiments. [Figure 3] FIG. 2 is a block diagram illustrating an example of the functional configuration of a print server according to some embodiments. [Figure 4] FIG. 2 is a block diagram illustrating an example of the functional configuration of an information processing apparatus according to some embodiments. [Figure 5] FIG. 2 is a block diagram illustrating an example of the hardware configuration of a printing apparatus according to some embodiments. [Figure 6] FIG. 2 is a block diagram illustrating an example of the functional configuration of a printing apparatus according to some embodiments. [Figure 7] FIG. 10 is a sequence diagram illustrating the overall process of cloud printing according to some embodiments. [Figure 8] FIG. 10 is a sequence diagram illustrating the overall process of local printing according to some embodiments. [Figure 9] FIG. 10 is a sequence diagram illustrating an example method for providing capability information in some embodiments. [Figure 10]FIG. 10 is a sequence diagram illustrating another example of a method for providing capability information in some embodiments. [Figure 11] FIG. 10 is a sequence diagram illustrating another example of a method for providing capability information in some embodiments. [Figure 12] FIG. 10 is a sequence diagram illustrating an example of a method for performing printing in some embodiments. [Figure 13] FIG. 4 is a schematic diagram illustrating an example of a method for generating a print command according to some embodiments. DETAILED DESCRIPTION OF THE INVENTION
[0008] Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the scope of the invention claimed. Although multiple features are described in the embodiments, not all of these multiple features are necessarily essential to the invention, and multiple features may be combined arbitrarily. Furthermore, in the accompanying drawings, the same reference numerals are used to designate the same or similar components, and redundant explanations will be omitted.
[0009] First Embodiment Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the scope of the invention claimed. Although multiple features are described in the embodiments, not all of these multiple features are necessarily essential to the invention, and multiple features may be combined arbitrarily. Furthermore, in the accompanying drawings, the same reference numerals are used to designate the same or similar components, and redundant explanations will be omitted.
[0010] [Printing system configuration example] An example configuration of a printing system according to some embodiments will be described with reference to Fig. 1. The printing system may be configured with an information processing device 110 and a printing device 120. Alternatively, the printing system may be configured with the information processing device 110, the printing device 120, and a print server 130. The printing system may be configured with a different combination of the components shown in Fig. 1, or may include components not shown in Fig. 1.
[0011] The information processing device 110 and the printing device 120 are connected to the same local area network (LAN) 101. The LAN 101 may be a wired LAN, a wireless LAN, or a combination of both. The LAN 101 is connected to the Internet 103 through a firewall 102. A print server 130 is also connected to the Internet 103. The Internet 103 may be a wide area network, a cellular network, a local area network, another network, or any combination of these networks. The information processing device 110 and the printing device 120 can communicate with each other within the LAN 101 (i.e., without going through the Internet 103). The information processing device 110 and the printing device 120 can communicate with the print server 130 through the LAN 101, the firewall 102, and the Internet 103.
[0012] Printing device 120 has a printing function that performs printing according to a print job. In addition to the printing function, printing device 120 may also include at least one of a scanner function and a fax function. A printing device having multiple functions like this may be called a multifunction peripheral (MFP). Alternatively, printing device 120 may be a dedicated machine (SFP: Single Function Peripheral) that has only the printing function. Printing may be performed on a sheet-like recording medium such as paper, or may be performed to form a three-dimensional object (so-called three-dimensional printing).
[0013] The print server 130 provides a print service that transmits print jobs generated by the information processing device 110 to one of one or more printing devices (e.g., the printing device 120) registered on the print server 130. For example, the print server 130 provides a logical printer to the information processing device 110 and accepts print jobs for the logical printer. A logical printer is a virtual printing device (e.g., a printer object) provided by the print server 130. A logical printer may also be called a cloud printer. The information processing device 110 can generate a print queue for the logical printer. In contrast to a logical printer, a physical printing device such as the printing device 120 may also be called a physical printer. In the following description, logical printers and physical printers are collectively referred to simply as printers. A physical printer may also be called a local printer if it is connected to the same LAN as the information processing device that submits the print job.
[0014] The print server 130 may be a server in an on-premise environment connected to the Internet 103, or may be a server in a cloud computing environment (hereinafter simply referred to as the cloud). A print service provided by the print server 130 in the cloud may be called a cloud print service. One example of a cloud print service is Universal Print (registered trademark) provided by Microsoft Corporation. In the following explanation, we will explain the case where the print server 130 is in the cloud. However, the following explanation also applies to the case where the print server 130 is in an on-premise environment.
[0015] The information processing device 110 provides a printing function to a user of the information processing device 110. The information processing device 110 may be a personal computer (PC), a smartphone, or another device. The information processing device 110 may specify a physical printer (e.g., a printing device 120) connected to the same LAN 101 as the output destination of a printed material. Printing performed by directly submitting a print job to a physical printer (i.e., within the LAN) may also be called local printing.
[0016] The information processing device 110 may specify a logical printer provided by the print server 130 as the output destination of a printed document. When a logical printer is specified as the output destination, a physical printer (e.g., the printing device 120) associated with the logical printer performs printing. The information processing device 110 using the cloud print service may also be called a client or a client terminal. Printing performed by submitting a print job to a logical printer may also be called cloud printing, remote printing, or remote printing. Printing performed by submitting a print job to a logical printer may be performed by the printing device 120 connected to the same LAN 101 as the information processing device 110, or by a printing device not connected to the LAN 101.
[0017] 1, the information processing device 110 is capable of performing both local printing and remote printing. Alternatively, the information processing device 110 may be capable of performing only one of local printing and remote printing.
[0018] The information processing device 110 may have a printing function that is included as standard in the operating system (OS). Such a printing function is called a standard printing function. The standard printing function may also be called an OS standard printing function or a native printing function. An information processing device 110 that has the standard printing function does not require separate software (e.g., a driver) to use a printing device that supports the standard printing function. Examples of standard printing functions include AirPrint (registered trademark), which is included as standard in iOS (registered trademark), macOS (registered trademark), etc., and Mopria (registered trademark), which is included as standard in Windows (registered trademark), Android (registered trademark), etc.
[0019] [Example of computer hardware configuration] An example of the hardware configuration of a computer 200 according to some embodiments will be described with reference to Fig. 2. The computer 200 may be used as the information processing device 110 or as the print server 130. The computer 200 may include the components shown in Fig. 2, may not include some of the components shown in Fig. 2, or may include components not shown in Fig. 2.
[0020] The central processing unit (CPU) 201 is a general-purpose processing circuit that controls the overall operation of the computer 200. The random access memory (RAM) 202 is a volatile memory circuit that is used as a temporary storage area such as a work area for processing by the CPU 201. The read-only memory (ROM) 203 is a non-volatile memory circuit that stores programs and data used in the processing by the CPU 201. The storage device 204 is a non-volatile storage device that stores programs and data used in the processing by the CPU 201. The storage device 204 may be, for example, a hard disk drive (HDD) or a solid-state drive (SSD). The storage device 204 may also be called a secondary storage device. Operations by the computer 200 may be realized by the CPU 201 executing a program read from the storage device 204 to the RAM 202.
[0021] The input interface (I / F) 205 is an I / F for exchanging signals with the input device 210. The input device 210 is a device that obtains input from a user of the computer 200. The input device 210 may be, for example, a keyboard, a touch panel, a microphone, a mouse, or any combination thereof. The output I / F 206 is an I / F for exchanging signals with the output device 220. The output device 220 is a device that provides information to a user of the computer 200. The output device 220 may be, for example, a display, a speaker, or any combination thereof. The network I / F 207 is an I / F for communicating with devices external to the computer 200. The CPU 201, the RAM 202, the ROM 203, the storage device 204, the input I / F 205, the output I / F 206, and the network I / F 207 are each connected to a system bus 208. In the example of FIG. 2, the input device 210 and the output device 220 are shown as devices separate from the computer 200. Alternatively, computer 200 may include input device(s) 210 and output device(s) 220 .
[0022] [Example of print server configuration] An example of the functional configuration of the print server 130 will be described with reference to Fig. 3. The print server 130 may include the components shown in Fig. 3, may not include some of the components shown in Fig. 3, or may include components not shown in Fig. 3. Each component in Fig. 3 may be realized by the CPU 201 executing a program read into the RAM 202. Alternatively, some or all of the components in Fig. 3 may be realized by a dedicated processing circuit such as an application specific integrated circuit (ASIC).
[0023] The registration control unit 301 performs processing for registering a logical printer. For example, in response to a registration start request from the printing device 120, the registration control unit 301 generates a logical printer associated with a physical printer and registers it in the printer information 311. A logical printer registered in the printer information 311 is recognized as a printer by the information processing device 110. A physical printer associated with a logical printer may be a physical printer that prints in accordance with a print job submitted to the logical printer. A logical printer may be associated with only one physical printer. A physical printer may be associated with only one logical printer, or with multiple logical printers.
[0024] The print control unit 302 performs processing related to print jobs for logical printers. For example, the print control unit 302 receives a print job for a logical printer from the information processing device 110 and, based on the received print job, transmits the print job to a physical printer associated with the logical printer. The print control unit 302 may also control events related to print jobs. Events related to print jobs may include, for example, receiving a print job. In response to receiving an event request from a physical printer, the print control unit 302 may respond with an event related to the physical printer.
[0025] The printer management unit 303 manages information about logical printers registered in the print server 130 as printer information 311. The printer information 311 includes information about the capabilities of the physical printer associated with the logical printer, a cloud printer ID uniquely assigned to the logical printer, and information about the print queue in which the print job is spooled.
[0026] The job management unit 304 manages information about print jobs received from the information processing device 110 as job information 312. The job information 312 includes information and status of the print job, print data specified in the print job, and the like.
[0027] The storage control unit 310 stores information in RAM 202 or storage device 204 according to instructions from other components, and reads information from RAM 202 or storage device 204. According to some embodiments, the storage control unit 310 stores printer information 311 and job information 312.
[0028] [Example of functional configuration of information processing device] An example of the functional configuration of the information processing device 110 will be described with reference to Fig. 4. The information processing device 110 may include the components shown in Fig. 4, may not include some of the components shown in Fig. 4, or may include components not shown in Fig. 4. Each component in Fig. 4 may be realized by the CPU 201 executing a program read into the RAM 202. Alternatively, some or all of the components in Fig. 4 may be realized by a dedicated processing circuit such as an ASIC.
[0029] The input acquisition unit 401 acquires input from the user of the information processing device 110 using the input I / F 205. The information output unit 402 outputs information to the user of the information processing device 110 using the output I / F 206.
[0030] The registration control unit 403 performs processing for registering a logical printer in the print server 130. The print control unit 404 performs processing related to printing by the printer. For example, the print control unit 404 may send a print job to a logical printer registered in the print server 130 in accordance with a print instruction from the user of the information processing device 110. The print control unit 404 may also send a print job directly to a physical printer (i.e., within the same LAN) in accordance with a print instruction from the user of the information processing device 110.
[0031] The printer management unit 405 manages information about printers to which the information processing device 110 can submit print jobs as printer information 411. The printer information 411 includes printer capability information, etc. The printer management unit 405 may search for printers to which the information processing device 110 can submit print jobs.
[0032] The storage control unit 410 stores information in the RAM 202 or the storage device 204, and reads information from the RAM 202 or the storage device 204 in accordance with instructions from other components. According to some embodiments, the storage control unit 410 stores printer information 411 and an operating system (OS) 412. The OS 412 is installed on the information processing device 110 as standard (i.e., when the information processing device 110 is shipped). The OS 412 may be updated. The OS 412 has functions for basic management and control of the information processing device 110. The OS 412 includes a standard printing function 414.
[0033] The storage control unit 410 may further store a print support application (PSA) 413. The PSA 413 is an application (plug-in) that is installed in the OS 412 to extend the standard print function 414. The PSA 413 is provided by the vendor of the printing device 120. The PSA 413 enables the user of the information processing device 110 to use print settings that are not supported by the standard print function 414.
[0034] The standard printing function 414 may support a standard protocol. Supporting a protocol may mean interpreting instructions that conform to this protocol and acting in accordance with these instructions. The standard protocol supported by the standard printing function 414 may be a protocol that has been standardized (i.e., standardized) by a standards organization, or may be a de facto standard protocol. In the following, a description will be given of the case where the standard protocol supported by the standard printing function 414 is the Internet Printing Protocol (IPP). The following description of IPP applies equally to other standard protocols.
[0035] The PSA 413 may support a protocol different from the standard protocol supported by the standard print feature 414. The standard print feature 414 may not support a protocol supported by the PSA 413. The protocol supported by the PSA 413 may be a standard protocol different from the standard protocol supported by the standard print feature 414. For example, the protocol supported by the PSA 413 may be a protocol proprietary to the vendor of the printing device 120. The following description will be given of the case where the protocol supported by the PSA 413 is the Common Peripheral Controlling Architecture (CPCA). The CPCA is a protocol proprietary to the vendor of the printing device 120. The following description of the CPCA also applies to other protocols different from the standard protocol supported by the standard print feature 414.
[0036] [Example of hardware configuration for printing device] An example hardware configuration of printing device 120 according to some embodiments will be described with reference to Fig. 5. Printing device 120 may include the components shown in Fig. 5, may not include some of the components shown in Fig. 5, or may include components not shown in Fig. 5. Because printing device 120 is a physical printing device, it may also be referred to as a physical printer.
[0037] The CPU 501 is a general-purpose processing circuit that controls the overall operation of the printing device 120. The RAM 502 is a volatile memory circuit that is used as a temporary storage area such as a work area for processing by the CPU 501. The ROM 503 is a non-volatile memory circuit that stores programs and data used in the processing by the CPU 501. The storage device 504 is a non-volatile storage device that stores programs and data (e.g., print jobs, image data, and setting information) used in the processing by the CPU 501. The storage device 504 may be, for example, an HDD or SSD. The storage device 504 may also be called a secondary storage device. The operations of the printing device 120 may be realized by the CPU 501 executing a program read from the storage device 504 to the RAM 502.
[0038] Printer I / F 505 is an I / F for exchanging signals with printer engine 520. Printer engine 520 performs printing based on signals (e.g., image signals and print commands) supplied from control unit 510 via printer I / F 505. Printing may be electrophotographic printing in which toner is transferred and fixed on paper, inkjet printing in which ink is ejected onto paper to print, or three-dimensional printing.
[0039] Scanner I / F 506 is an I / F for exchanging signals with scanner engine 530. Scanner engine 530 supplies a signal (e.g., an image signal) obtained by reading an original to control unit 510 via scanner I / F 506. CPU 501 may process the image signal supplied from scanner engine 530 and supply the resulting recording image signal to printer engine 520. CPU 501 may also generate image data based on the image signal supplied from scanner engine 530 and transmit this to an external device.
[0040] The operation unit I / F 507 is an I / F for exchanging signals with the operation unit 540. The operation unit 540 is a device that acquires input from a user of the printing device 120 and provides information to the user of the printing device 120. The operation unit 540 may be configured with, for example, a display panel (e.g., a liquid crystal display), a speaker, a touch panel, a keyboard, buttons, a touch screen, or any combination of these.
[0041] The network I / F 508 is an I / F for communicating with devices external to the printing device 120. A control unit 510 is configured with the CPU 501, RAM 502, ROM 503, storage device 504, printer I / F 505, scanner I / F 506, operation unit I / F 507, and network I / F 508. Each component included in the control unit 510 is connected to a system bus 509.
[0042] [Example of functional configuration of printing device] An example of the functional configuration of the printing device 120 will be described with reference to Fig. 6. The printing device 120 may include the components shown in Fig. 6, may not include some of the components shown in Fig. 6, or may include components not shown in Fig. 6. Each component in Fig. 6 may be realized by the CPU 501 executing a program read into the RAM 502. Alternatively, some or all of the components in Fig. 6 may be realized by a dedicated processing circuit such as an ASIC.
[0043] The input acquisition unit 601 acquires input from the user of the printing device 120 using the operation unit I / F 507. The information output unit 602 outputs information to the user of the printing device 120 using the operation unit I / F 507. For example, the information output unit 602 displays an operation menu on the operation unit 540. The input acquisition unit 601 acquires input for the operation menu and notifies the other components of the input instructions. The information output unit 602 displays the results acquired from the other components on the operation unit 540.
[0044] The image processing unit 603 renders the print job into image data for printing. The print processing unit 604 prints the image data rendered by the image processing unit 603.
[0045] The registration control unit 605 performs processing for registering the logical printer associated with the printing device 120 in the print server 130. The printer management unit 606 manages information related to the printing device 120 as printer information 621. The printer information 621 may include, for example, the status of the printing device 120, capability information about the printing device 120, and a cloud printer ID uniquely assigned by the print server 130 to the logical printer associated with the printing device 120. The printer information 621 may also include a local printer ID that the information processing device 110 uses to identify printing devices within the same LAN 101. The capability information of the printing device 120 is information related to the capabilities of the printing device 120, and may include, for example, information that the printing device 120 has a specific function.
[0046] A cloud print (CP) control unit 607 performs processing related to cloud printing. For example, the CP control unit 607 may execute printing in accordance with a print job sent from the print server 130 by transferring print data included in the print job received from the print server 130 to the image processing unit 603. The CP control unit 607 may also send an event request to the print server 130.
[0047] A local print (LP) control unit 608 performs processing related to local printing. For example, the LP control unit 608 may respond to a printer search from the information processing device 110. The LP control unit 608 may also execute printing in accordance with a print job sent from the information processing device 110 by transferring print data included in the print job received directly from the information processing device 110 to the image processing unit 603. A job management unit 609 manages information related to the print job as job information 622. The job information 622 may include the processing status and processing results of the print job.
[0048] The IPP processing unit 610 performs processing related to IPP. For example, the IPP processing unit 610 receives a message conforming to IPP from an external device (the information processing device 110 or the print server 130), interprets the message, and executes the processing specified in the message. The IPP processing unit 610 may also have a server function. For example, a specific port number may be assigned to the IPP processing unit 610, and a message specifying this port number may be passed to the IPP processing unit 610.
[0049] The CPCA processing unit 611 performs processing related to the CPCA. For example, the CPCA processing unit 611 receives a message conforming to the CPCA from an external device (the information processing device 110 or the print server 130), interprets this message, and executes the processing specified in this message. The CPCA processing unit 611 may also have a server function. For example, a specific port number may be assigned to the CPCA processing unit 611, and a message specifying this port number may be passed to the CPCA processing unit 611. Messages to the CPCA processing unit 611 may be passed by local loopback from other components of the printing device 120 (for example, the IPP processing unit 610). The CPCA processing unit 611 may also provide an application programming interface (API) and may receive instructions from other components (for example, the IPP processing unit 610) through the API.
[0050] The storage control unit 620 stores information in the RAM 502 or the storage device 504, and reads information from the RAM 502 or the storage device 504 in accordance with instructions from other components. According to some embodiments, the storage control unit 620 stores printer information 621 and job information 622. The storage control unit 620 may manage data as a file system. The storage control unit 620 may allocate the storage destination of each piece of data between the storage device 504, which is a non-volatile area, and the RAM 502, which is a volatile area. For example, the storage control unit 620 may store the printer information 621 and the job information 622 in a non-volatile area.
[0051] [Overall processing sequence for Cloud Print] The overall processing sequence for performing cloud printing will be described with reference to FIG. 7. The example of FIG. 7 deals with a case where the information processing device 110 registers the printing device 120 with the print server 130 and submits a print job to a logical printer associated with the printing device 120. Registering the printing device 120 with the print server 130 may also mean registering the logical printer associated with the printing device 120 with the print server 130. In the following example, it is assumed that the printing device 120 supports a web user interface (UI) function for operating the printing device 120 from the information processing device 110. It is also assumed that the information processing device 110 supports a web UI client function. Mutual communication between the information processing device 110, the printing device 120, and the print server 130 may be performed using the Internet Printing Protocol (IPP).
[0052] In S701, the registration control unit 403 of the information processing device 110 sends a registration start request to the printing device 120 in accordance with an instruction from the user of the information processing device 110. The registration start request may be a request to start processing for registering the printing device 120 with the print server 130. The registration start request may be sent using a web UI client function of the information processing device 110.
[0053] In step S702, the registration control unit 605 of the printing device 120 transmits a registration start request to the print server 130 in response to receiving the registration start request from the information processing device 110. The registration start request may be a request to start processing for registering the printing device 120 with the print server 130.
[0054] In S703, in response to receiving the registration start request from the printing device 120, the registration control unit 301 of the print server 130 transmits a registration start response to the printing device 120. The registration start response includes a uniform resource locator (URL) of a web page for the user of the information processing device 110 to input information for registering the printing device 120 in the print server 130.
[0055] In step S704, the registration control unit 605 of the printing device 120 transmits registration information to the information processing device 110 in response to receiving the registration start response from the print server 130. The registration information includes the URL included in the registration start response. In response to receiving the registration information from the printing device 120, the information output unit 402 of the information processing device 110 displays a web page to the user.
[0056] In step S705, the registration control unit 403 of the information processing device 110 transmits a registration approval request to the print server 130 in response to the user of the information processing device 110 accessing the URL and inputting information required for registration. The registration approval request includes a cloud account of the user of the information processing device 110. The cloud account is an account that allows the user to use a cloud tenant that includes the print server 130.
[0057] In S706, the registration control unit 301 of the print server 130 checks whether the cloud account included in the registration approval request belongs to a user who has authority to register the printing device 120 on the print server 130. If the user has authority, the registration control unit 301 of the print server 130 sends a registration approval response to the information processing device 110. The registration approval response may be a message notifying the result of confirmation that the user of the information processing device 110 is a user who has authority to register the printing device 120.
[0058] In S707, in response to receiving the registration start response from the print server 130, the printer management unit 606 of the printing device 120 sends a registration confirmation request to the print server 130. The registration confirmation request is a request related to registering the printing device 120 with the print server 130, and specifically may be a request to register the printing device 120 with the print server 130.
[0059] In S708, in response to receiving the registration confirmation request from the printing device 120, the printer management unit 303 of the print server 130 generates a new logical printer and adds the logical printer to the printer information 311 in association with the printing device 120. This registers the printing device 120 on the print server 130, enabling the information processing device 110 to perform cloud printing using the logical printer. The printer management unit 303 of the print server 130 also assigns a unique cloud printer ID to the generated logical printer and adds the cloud printer ID to the printer information 311 in association with the logical printer. Thereafter, the registration control unit 301 of the print server 130 transmits a registration confirmation response to the printing device 120. The registration confirmation response includes the cloud printer ID of the printing device 120.
[0060] In S709, the printer management unit 606 of the printing device 120 sends an information update request to the print server 130 in response to the completion of registration of the printing device 120 with the print server 130. The information update request may be a request to update information about the printing device 120. The information update request includes capability information of the printing device 120. The information update request may be sent in an Update-Output-Device-Attributes request message defined in IPP.
[0061] In S710, the printer management unit 303 of the print server 130 updates the information about the printing device 120 included in the printer information 311 based on the capability information included in the received information update request, and sends an information update response to the printing device 120. The information update response may be a message notifying that the update of the information about the printing device 120 has been completed successfully.
[0062] In step S711, in response to receiving the registration confirmation response from the print server 130, the CP control unit 607 of the printing device 120 sends an event request to the print server 130. The event request may be a request to notify the printing device 120 when an event related to the printing device 120 occurs. The event request may also be related to an event that a print job has been submitted to a logical printer associated with the printing device 120.
[0063] In S712, the printer management unit 405 of the information processing device 110 sends an information request to the print server 130 in accordance with an instruction from the user of the information processing device 110. The information request may be a request for information about logical printers available to the user of the information processing device 110. The information request includes the cloud account of the user of the information processing device 110. The information request may be sent using a Get-Printer-Attributes Request message defined in IPP.
[0064] In S713, the printer management unit 303 of the print server 130 transmits an information response to the information processing device 110 in response to receiving the information request from the information processing device 110. The information response includes a cloud printer ID and capability information for each of one or more logical printers available to the user of the information processing device 110. The printer management unit 405 of the information processing device 110 updates the printer information 411 based on the information response. As a result, the discovered logical printer is registered in the standard printing function 414 of the information processing device 110. The information response may be transmitted using a Get-Printer-Attributes Response message defined in IPP.
[0065] In S714, the printer management unit 405 of the information processing device 110 sends a print request to the print server 130 in accordance with an instruction from the user of the information processing device 110. The print request includes a cloud printer ID, a print job, and a cloud account of the user of the information processing device 110. The print job may include print data and print settings. The print request may be a request to print the print data included in the print request to a logical printer having the cloud printer ID included in the print request. The information processing device 110 may instruct a logical printer registered in the standard print function 414 to print.
[0066] In S715, the print control unit 302 of the print server 130 transmits an event response to the printing device 120 associated with the logical printer in response to receiving the print request from the information processing device 110. The event response is a response to the event request received in S711. The event response is a response to notify that an event of the type specified in the event request has occurred.
[0067] In step S716, in response to receiving the event response from the print server 130, the CP control unit 607 of the printing device 120 sends a print job request to the print server 130. The print job request may be a request for a print job to be executed by the printing device 120.
[0068] In S717, in response to receiving the print job request from the printing device 120, the print control unit 302 of the print server 130 sends a print job response to the printing device 120. The print job response includes a cloud account and a print job. The print job response received by the printing device 120 from the print server 130 may be an IPP Fetch-Job Response message. In S718, in response to receiving the print job response from the print server 130, the printing device 120 performs printing according to the print job.
[0069] In the description of FIG. 7, the registration of the printing device 120 in steps S701 to S706 and the cloud printing in steps S712 to S718 may be performed by the same user or by different users.
[0070] [Overall process sequence for local printing] The overall processing sequence for performing local printing will be described with reference to Figure 8. The example in Figure 8 deals with a case where information processing device 110 submits a print job to printing device 120 connected to the same network (i.e., LAN 101) as information processing device 110. Communication between information processing device 110 and printing device 120 may be performed using IPP. Communication between information processing device 110 and printing device 120 is performed within LAN 101 and does not go through Internet 103.
[0071] In S801, the printer management unit 405 of the information processing device 110 uses the standard printing function 414 in accordance with an instruction from the user of the information processing device 110 to send a printer search request to the network to which the information processing device 110 is connected (i.e., the LAN 101). This printer search request may be performed by broadcasting to the LAN 101. The printer search request may be a request to respond as to whether or not a printer that supports the standard printing function 414 exists.
[0072] In S802, the LP control unit 608 of the printing device 120 that supports the standard printing function 414 sends a printer search response to the information processing device 110 in response to the printer search request. The printer search response may include the Internet Protocol (IP) address of the printing device 120. A printing device that does not support the standard printing function 414 or a printing device for which the standard printing function 414 is disabled may not respond to the printer search request. The printer management unit 405 of the information processing device 110 stores the IP address of the printing device 120 that sent the printer search response as part of the printer information 411 in the storage control unit 410. As a result, the discovered printing device 120 is registered in the standard printing function 414. In addition, the information output unit 402 of the information processing device 110 may present a list of discovered printing devices to the user.
[0073] In S803, the printer management unit 405 of the information processing device 110 sends an information request to the printing device 120. The information request may be a request for information about the printing device 120. The information request may be sent using a Get-Printer-Attributes Request message defined in IPP.
[0074] In S804, in response to receiving the information request from the information processing device 110, the printer management unit 606 of the printing device 120 transmits an information response to the information processing device 110. The information response includes capability information of the printing device 120. The printer management unit 405 of the information processing device 110 updates the printer information 411 based on the information response. The information response may be transmitted using a Get-Printer-Attributes Response message defined in IPP.
[0075] In S805, the print control unit 404 of the information processing device 110 sends a print request to the printing device 120 using the standard print function 414 in accordance with instructions from the user of the information processing device 110. The print request includes a print job. The print job may include print data and print settings. The print request may be a request to the printing device 120 to print the print data included in the print request.
[0076] In S806, the LP control unit 608 of the printing device 120 executes printing in accordance with the received print job. The LP control unit 608 of the printing device 120 transmits the print result to the information processing device 110 as a print response.
[0077] [Operation of information processing device acquiring capability information] A specific example of S803 and S804 in Fig. 8 will be described with reference to Fig. 9. S901 and S902 in Fig. 9 are executed in S803 in Fig. 8, and S903 to S905 in Fig. 9 are executed in S804 in Fig. 8.
[0078] In S901, the standard printing function 414 of the information processing device 110 generates an information request 910. As described above, the information request 910 may be a message requesting information about the printing device 120. In the example of Figure 9, the information request 910 is a Get-Printer-Attributes Request message defined in IPP.
[0079] A message specified by IPP contains one or more attributes. An attribute is an item of information. An attribute contains an attribute name and an attribute value. The attribute name indicates the type of information represented by the attribute. The attribute value indicates a specific value of the information represented by the attribute name. The formats of the attribute name and attribute value are specified by IPP. In the following explanation, an attribute whose attribute name is "(specific string)" will be referred to as the attribute "(specific string)".
[0080] The Get-Printer-Attributes Request message may include the attribute "requested-attributes." The attribute "requested-attributes" indicates that the type of capability information specified by the attribute value is requested. If the Get-Printer-Attributes Request message does not include the attribute "requested-attributes," it may indicate that all types of capability information of printing device 120 are requested. The attribute "requested-attributes" may include attribute values defined by IPP and attribute values defined by the vendor.
[0081] In the example of FIG. 9, the information request 910 includes an attribute 911 indicating that it requests capability information expressed in a format that complies with the CPCA. Hereinafter, capability information expressed in a format that complies with the CPCA will be referred to as CPCA capability information. In the example of FIG. 9, the attribute name of the attribute 911 is "requested-attributes." The attribute name of the attribute 911 complies with IPP. The attribute value of the attribute 911 is "smi1602-cpca-supported." The attribute value of the attribute 911 complies with IPP. In this way, because both the attribute name and attribute value of the attribute 911 comply with IPP, the standard printing function 414 can generate the information request 910 that includes the attribute 911.
[0082] The first "smi" in the attribute value of attribute 911 indicates that this attribute value is defined by the vendor. The "1602" following "smi" indicates a numerical value assigned to a specific vendor. The string following "1602" is a string arbitrarily defined by the vendor. The attribute value of attribute 911 indicates the type of capability information requested. If the attribute value of attribute 911 includes "smi1602-cpca-supported", it may indicate that CPCA capability information is requested. The CPCA capability information may also represent print settings that are not supported by the standard print function 414. The attribute 911 may include other attribute values in addition to "smi1602-cpca-supported". The information request 910 may include other attributes.
[0083] In S902, the printer management unit 405 of the information processing device 110 transmits an information request 910 to the printing device 120, and the printing device 120 receives the information request 910. For example, the printer management unit 405 of the information processing device 110 transmits the information request 910 to the printing device 120 by specifying a port number assigned to the IPP processing unit 610 of the printing device 120. In this case, the information request 910 is passed to the IPP processing unit 610 of the printing device 120.
[0084] In S903, the IPP processing unit 610 of the printing device 120 generates an information response 920 in response to receiving the information request 910. As described above, the information response 920 includes capability information of the printing device 120. In the example of Figure 9, the information response 920 is a Get-Printer-Attributes Response message defined in IPP.
[0085] First, the IPP processing unit 610 determines that capability information of the printing device 120 is being requested based on the reception of the information request 910. Furthermore, the IPP processing unit 610 determines that CPCA capability information is being requested based on the attribute value of the attribute "requested-attributes" being "smi1602-cpca-supported" (i.e., the information request 910 including the attribute 911). Therefore, the IPP processing unit 610 queries the CPCA processing unit 611 for CPCA capability information. This query may be made to the port number of the CPCA processing unit 611, or may be made using the API of the CPCA processing unit 611.
[0086] The CPCA processing unit 611 obtains the CPCA capability information of the printing device 120 from the printer information 621 and returns it to the IPP processing unit 610. The CPCA capability information may represent a type of capability information that is preset in the printing device 120. The preset type of capability information may be all types of capability information that the printing device 120 has. The CPCA capability information may include multiple types of print settings of the printing device 120. The CPCA capability information may include print settings that are not supported by the standard print features 414. If the printing device 120 does not have print settings that are not supported by the standard print features 414, the CPCA capability information does not include print settings that are not supported by the standard print features 414.
[0087] The IPP processing unit 610 generates an information response 920 based on the CPCA capability information returned from the CPCA processing unit 611. Specifically, the information response 920 includes an attribute 921. The attribute name of the attribute 921 indicates that it is a response to the attribute 911, i.e., "smi1602-cpca-supported." The attribute name of the attribute 921 conforms to IPP. The attribute value of the attribute 921 is the CPCA capability information returned from the CPCA processing unit 611. The attribute value of the attribute 921 conforms to CPCA.
[0088] Since the attribute name of attribute 921 begins with "smi", this attribute name is defined by the vendor. Attributes with attribute names defined by the vendor in this way are called vendor-extended attributes. The data type of the attribute value of attribute 921 may be "setOfoctetString(MAX)". This data type represents a set of octet strings with a maximum number of characters.
[0089] In S904, the printer management unit 606 of the printing device 120 transmits an information response 920 to the information processing device 110 as a response to the information request 910, and the information processing device 110 receives the information response 920. In S905, the printer management unit 405 of the information processing device 110 acquires the CPCA capability information of the printing device 120 from the information response 920 and stores it in the printer information 411 in association with the printing device 120.
[0090] Because the attribute name of the attribute 921 complies with the IPP, the standard printing function 414 of the information processing device 110 can interpret the attribute 921 and can identify that the attribute value of the attribute 921 represents CPCA capability information. On the other hand, if the attribute value of the attribute 921 (i.e., the CPCA capability information) does not comply with the IPP, the standard printing function 414 cannot interpret the CPCA capability information. However, because the CPCA capability information complies with the CPCA, the PSA 413 can interpret the CPCA capability information. This allows the user of the information processing device 110 to instruct the printing device 120 to print using the print settings represented by the CPCA capability information.
[0091] When a new print setting is added to the printing device 120 or an existing print setting is changed, the attribute value of the attribute 921 (i.e., the CPCA capability information) changes. Even in such a case, the attribute name of the attribute 921 does not change, so there is no need to update the standard print features 414. If the PSA 413 is updated to support this new print setting, the user can use the new print setting of the printing device 120. Therefore, according to the above-described embodiment, the user of the information processing device 110 can flexibly change the print settings that are available to them.
[0092] As described above, when the printing device 120 receives an information request 910 including an attribute 911 with the attribute name "requested-attributes" and the attribute value "smi1602-cpca-supported," the printing device 120 responds to the information processing device 110 by including all types of capability information of the printing device 120 in the CPCA capability information. Alternatively, the types of capability information of the printing device 120 may be grouped, and the information processing device 110 may be able to acquire the capability information on a group basis. For example, the capability information of the printing device 120 may be grouped into "job," "binder," and "document." In this case, when the printing device 120 receives an information request 910 including an attribute with the attribute name "requested-attributes" and the attribute value "smi1602-cpca-set_job-supported," the printing device 120 may respond to the information processing device 110 by including in the CPCA capability information the type of capability information belonging to set_job of the printing device 120. Even if there is a change in the capability information of the type belonging to "job," there is no need to change the attribute name "smi1602-cpca-set_job-supported," and therefore there is no need to update the standard print function 414. Similarly, for "set_binder" and "set_document," the attribute values "smi1602-cpca-set_binder-supported" and "smi1602-cpca-set_document-supported" may be defined by the vendor, respectively.
[0093] 9, the printing device 120 receives an information request 910 from the information processing device 110, which is one of the external devices, and transmits an information response 920 to the information processing device 110. Meanwhile, the information processing device 110 transmits the information request 910 to the printing device 120, which is one of the external devices, and receives the information response 920 from the printing device 120. Alternatively, the CPCA capability information of the printing device 120 may be provided to the information processing device 110 via the print server 130.
[0094] 7 may include attribute 921. In this case, the registration confirmation response sent from print server 130 to printing device 120 in S708 may be considered to be a message requesting capability information for printing device 120. Print server 130 obtains the CPCA capability information for printing device 120 from attribute 921, associates it with printing device 120, and stores it in printer information 311. Attribute 921 may also be included in other messages sent from printing device 120 to print server 130.
[0095] An information request (e.g., a Get-Printer-Attributes Request message) sent from the information processing device 110 to the print server 130 in S712 may include the attribute 911. A print response (e.g., a Get-Printer-Attributes Response message) sent from the print server 130 to the information processing device 110 in S713 as a response to this information request may include the attribute 921. The print server 130 may include the CPCA capability information acquired from the printing device 120 in the attribute 921.
[0096] Another specific example of S803 and S804 in Fig. 8 will be described with reference to Fig. 10. S1001 to S1006 in Fig. 10 are executed in S803 in Fig. 8, and S1007 to S1009 in Fig. 10 are executed in S804 in Fig. 8.
[0097] 9, when a message requesting information about printing device 120 (e.g., information request 910) includes attribute 911, printing device 120 responds with a preset type of CPCA capability information. In the method of FIG. 10, information processing device 110 can specify the type of capability that printing device 120 includes in its CPCA capability information.
[0098] In S1001, the standard printing function 414 of the information processing device 110 generates a specification request 1010. The specification request 1010 is a message that specifies the type of capability information of the printing device 120. In the example of Fig. 10, the specification request 1010 is a Set-Printer-Attributes Request message defined in IPP.
[0099] The specification request 1010 includes an attribute 1011. The attribute 1011 is an attribute for specifying the type of capability information of the printing device 120. The attribute name of the attribute 1011 is "smi1602-cpca-supported". The attribute name of the attribute 1011 conforms to IPP. The attribute value of the attribute 1011 specifies the type of capability information of the printing device 120. In the example of FIG. 10, the attribute value of the attribute 1011 conforms to CPCA. The attribute value of the attribute 1011 may be a command executable by the CPCA processing unit 611 of the printing device 120. Hereinafter, a command executable by the CPCA processing unit 611 will be referred to as a CPCA command.
[0100] To generate the specification request 1010, the standard print function 414 queries the PSA 413 of the printing device 120. The PSA 413 generates a CPCA command in response to the query. The PSA 413 may query the user of the information processing device 110 about the type of capability information to obtain, or may determine to obtain a type of capability information preset in the PSA 413. The standard print function 414 generates the specification request 1010, which includes an attribute 1011 containing the CPCA command generated by the PSA 413.
[0101] In S1002, the printer management unit 405 of the information processing device 110 transmits a specification request 1010 to the printing device 120, and the printing device 120 receives the specification request 1010. For example, the printer management unit 405 of the information processing device 110 transmits the specification request 1010 to the printing device 120 by specifying a port number assigned to the IPP processing unit 610 of the printing device 120. In this case, the specification request 1010 is passed to the IPP processing unit 610 of the printing device 120.
[0102] In S1003, the IPP processing unit 610 of the printing device 120 determines that a type of capability information is specified based on the fact that the specification request 1010 includes the attribute "requested-attributes" (attribute 1011 in the example of FIG. 10). The IPP processing unit 610 then stores the attribute value (CPCA command) of the attribute 1011 in association with the information processing device 110. For example, the IPP processing unit 610 stores the attribute value of the attribute 1011 in association with the source IP (Internet Protocol) address of the specification request 1010 (the IP address of the information processing device 110 in the example of FIG. 10).
[0103] In S1004, the printer management unit 606 of the printing device 120 sends a specification response 1020 to the information processing device 110 as a response to the specification request 1010, and the information processing device 110 receives the specification response 1020. In the example of Fig. 10, the specification response 1020 is a Set-Printer-Attributes Response message defined in IPP. The specification response 1020 indicates that the type of capability information has been successfully specified.
[0104] In step S1005, the standard printing function 414 of the information processing device 110 generates an information request 1030 in response to receiving the specified response 1020. The information request 1030 and the attribute 1031 may be the same as the information request 910 and the attribute 911, and therefore a duplicated description will be omitted.
[0105] In S1006, the printer management unit 405 of the information processing device 110 transmits an information request 1030 to the printing device 120, and the printing device 120 receives the information request 1030. For example, the printer management unit 405 of the information processing device 110 transmits the information request 1030 to the printing device 120 by specifying a port number assigned to the IPP processing unit 610 of the printing device 120. In this case, the information request 1030 is passed to the IPP processing unit 610 of the printing device 120.
[0106] In S1007, the IPP processing unit 610 of the printing device 120 generates an information response 1040 in response to receiving the information request 1030. The information response 1040 includes capability information of the printing device 120. In the example of Fig. 10, the information response 1040 is a Get-Printer-Attributes Response message defined in IPP.
[0107] First, the IPP processing unit 610 determines that capability information of the printing device 120 is requested based on the reception of the information request 1030. Furthermore, the IPP processing unit 610 determines that CPCA capability information is requested based on the attribute value of the attribute "requested-attributes" being "smi1602-cpca-supported" (i.e., the information request 1030 including the attribute 1031). The IPP processing unit 610 then determines whether a specification request 1010 associated with the information request 1030 exists.
[0108] For example, the IPP processing unit 610 may associate a designation request 1010 and an information request 1030 that have the same source IP address with each other. Specifically, the IPP processing unit 610 may determine whether or not it has received a designation request 1010 that has the same source IP address as the information request 1030 before receiving the information request 1030. If it has received such a designation request 1010, the IPP processing unit 610 may associate the designation request 1010 and the information request 1030 with each other.
[0109] A time requirement may be imposed on the association of the designation request 1010 with the information request 1030. For example, if the difference between the reception time of the designation request 1010 and the reception time of the information request 1030 is greater than a threshold value (e.g., 10 seconds), the IPP processing unit 610 may not associate the designation request 1010 with the information request 1030. Furthermore, if multiple designation requests 1010 are received before the information request 1030, the IPP processing unit 610 may associate the most recently received designation request 1010 with the information request 1030.
[0110] When a specification request 1010 associated with the information request 1030 exists, the IPP processing unit 610 queries the CPCA processing unit 611 for CPCA capability information of the type specified in the attribute 1011 of the specification request 1010. This query may be made to the port number of the CPCA processing unit 611, or may be made using the API of the CPCA processing unit 611. For example, the IPP processing unit 610 may pass a CPCA command stored in association with the IP address of the information processing device 110 to the CPCA processing unit 611.
[0111] The CPCA processing unit 611 executes the CPCA command received from the IPP processing unit 610 to obtain the CPCA capability information of the printing device 120 from the printer information 621 and returns it to the IPP processing unit 610. This CPCA capability information is of the type specified by the attribute 1011.
[0112] When there is no specification request 1010 associated with the information request 1030, the IPP processing unit 610 may inquire about preset types of CPCA capability information from the CPCA processing unit 611. The preset types of CPCA capability information may be all types of CPCA capability information.
[0113] The IPP processing unit 610 generates an information response 1040 based on the CPCA capability information returned from the CPCA processing unit 611. Specifically, the information response 1040 includes an attribute 1041. The attribute name of the attribute 1041 is an attribute name indicating that it is a response to the attribute 1031, i.e., "smi1602-cpca-supported". The attribute name of the attribute 1041 conforms to IPP. The attribute value of the attribute 921 is the CPCA capability information returned from the CPCA processing unit 611. The attribute value of the attribute 921 conforms to CPCA. S1008 to S1009 may be the same as S904 to S905, and therefore redundant explanations will be omitted.
[0114] 9, an attribute "smi1602-cpca-set_job-supported" or the like may be used instead of the attribute "smi1602-cpca-supported." When the attribute "smi1602-cpca-set_job-supported" is used, the printing device 120 may respond to the information processing device 110 by including in the CPCA capability information the capability information of the type specified in attribute 1011, among the capability information types belonging to the "job" of the printing device 120.
[0115] 10, the attribute name of attribute 1011 and the attribute name of attribute 1041 are both "smi1602-cpca-supported," but they may be different. In the example of FIG. 10, the information processing device 110 transmits a specification request 1110, and then transmits an information request 1130 associated with the specification request 1110. Alternatively, the information processing device 110 may transmit an information request 1130, and then transmit a specification request 1110 associated with the information request 1130. When the information processing device 110 is configured in this manner, the printing device 120 may associate a specification request 1110 received after receiving the information request 1130 with the information request 1130.
[0116] Another specific example of S803 and S804 in Fig. 8 will be described with reference to Fig. 11. S803 in Fig. 8 executes S1101 to S1106 in Fig. 11, and S804 in Fig. 8 executes S1107 to S1109 in Fig. 11. As with the method in Fig. 10, the method in Fig. 11 also allows the information processing device 110 to specify the types of capabilities that the printing device 120 will include in the CPCA capabilities information. The variations described for the method in Fig. 10 can also be applied to the method in Fig. 11.
[0117] In S1101, the standard printing function 414 of the information processing device 110 generates a specification request 1110. The specification request 1110 is a message that specifies the type of capability information of the printing device 120. In the example of Fig. 11, the specification request 1110 is a Set-Printer-Attributes Request message defined in IPP.
[0118] The specified request 1110 includes an attribute 1111. The attribute 1111 may be the same as the attribute 1011, so a duplicated description will be omitted. The specified request 1110 further includes an attribute 1112. The attribute 1112 is an attribute for specifying a UUID (Universally Unique Identifier) used to associate the specified request 1110 with the information request 1130. The attribute name of the attribute 1112 is "smi1602-cpca-request-id-supported". The attribute name of the attribute 1112 complies with IPP. The attribute value of the attribute 1112 is a UUID generated by the standard printing function 414. The standard printing function 414 generates a UUID each time S1101 is executed.
[0119] In S1102, the printer management unit 405 of the information processing device 110 transmits a specification request 1110 to the printing device 120, and the printing device 120 receives the specification request 1110. For example, the printer management unit 405 of the information processing device 110 transmits the specification request 1110 to the printing device 120 by specifying a port number assigned to the IPP processing unit 610 of the printing device 120. In this case, the specification request 1110 is passed to the IPP processing unit 610 of the printing device 120.
[0120] In S1103, the IPP processing unit 610 of the printing device 120 determines that a type of capability information is specified based on the fact that the specification request 1110 includes the attribute "requested-attributes" (attribute 1111 in the example of FIG. 11). The IPP processing unit 610 then associates the attribute value (CPCA command) of attribute 1111 with the information processing device 110 and stores it. For example, the IPP processing unit 610 stores the attribute value of attribute 1111 in association with the attribute value (i.e., UUID) of attribute 1112 of the specification request 1110.
[0121] In S1104, the printer management unit 606 of the printing device 120 sends a specification response 1120 to the information processing device 110 as a response to the specification request 1110, and the information processing device 110 receives the specification response 1120. In the example of Fig. 11, the specification response 1120 is a Set-Printer-Attributes Response message defined in IPP. The specification response 1120 indicates that the type of capability information has been successfully specified.
[0122] In step S1105, the standard printing function 414 of the information processing device 110 generates an information request 1130 in response to receiving the specification response 1120. The information request 1130 includes an attribute 1131 indicating that capability information expressed in a format compliant with the CPCA is being requested. The attribute 1131 also includes information for associating the information request 1130 with the specification request 1110 (specifically, the UUID, which is the attribute value of the attribute 1112).
[0123] In the example of FIG. 11, the attribute name of attribute 1131 is "requested-attributes." The attribute name of attribute 1131 complies with IPP. The attribute value of attribute 1131 is "smi1602-cpca-supported_[uuid]." [uuid] is the same value as the attribute value of attribute 1112. The attribute value of attribute 1131 complies with IPP. In this way, because both the attribute name and attribute value of attribute 1131 comply with IPP, the standard printing function 414 can generate an information request 1130 that includes attribute 1131.
[0124] In S1106, the printer management unit 405 of the information processing device 110 transmits an information request 1130 to the printing device 120, and the printing device 120 receives the information request 1130. For example, the printer management unit 405 of the information processing device 110 transmits the information request 1130 to the printing device 120 by specifying a port number assigned to the IPP processing unit 610 of the printing device 120. In this case, the information request 1130 is passed to the IPP processing unit 610 of the printing device 120.
[0125] In S1107, the IPP processing unit 610 of the printing device 120 generates an information response 1140 in response to receiving the information request 1130. The information response 1140 includes capability information of the printing device 120. In the example of Fig. 11, the information response 1140 is a Get-Printer-Attributes Response message defined in IPP.
[0126] First, the IPP processing unit 610 determines that capability information of the printing device 120 is requested based on the reception of the information request 1130. Furthermore, the IPP processing unit 610 determines that CPCA capability information is requested based on the fact that the attribute value of the attribute "requested-attributes" begins with "smi1602-cpca-supported" (i.e., the information request 1130 includes the attribute 1131). The IPP processing unit 610 then determines whether a specification request 1110 associated with the information request 1130 exists.
[0127] For example, the IPP processing unit 610 may associate a specifying request 1110 and an information request 1130 that include the same UUID with each other. Specifically, the IPP processing unit 610 may determine whether or not it has received a specifying request 1110 that includes a UUID added to an attribute value beginning with "smi1602-cpca-supported" in the attribute "requested-attributes" included in the information request 1130. If it has received such a specifying request 1110, the IPP processing unit 610 may associate the specifying request 1110 and the information request 1130 with each other.
[0128] The processing when there is a specification request 1110 associated with the information request 1130 and when there is no specification request 1110 associated with the information request 1130 may be the same as in Fig. 10, so duplicated explanations will be omitted. Information response 1140 may be the same as information response 1040, so duplicated explanations will be omitted. Attribute 1141 may be the same as attribute 1041 except that the attribute name includes a UUID, so duplicated explanations will be omitted. S1108 to S1109 may be the same as S904 to S905, so duplicated explanations will be omitted.
[0129] 11, the printing device 120 receives a specification request 1110 and an information request 1130 from an information processing device 110, which is one of the external devices, and transmits an information response 1140 to the information processing device 110. Meanwhile, the information processing device 110 transmits the specification request 1110 and the information request 1130 to the printing device 120, which is one of the external devices, and receives the information response 1140 from the printing device 120. Alternatively, the CPCA capability information of the printing device 120 may be provided to the information processing device 110 via the print server 130.
[0130] For example, the information processing device 110 may send a specification request 1110 to the print server 130. The print server 130 may send a message including attributes 1111 and 1112 to the printing device 120 identified in the specification request 1110. In response to this message, the printing device 120 may send a message including attribute 1141 to the print server 130. The print server may send a message including attribute 1141 to the information processing device 110.
[0131] [Operation in which an information processing device submits a print job to a printing device] A specific example of S805 and S806 in Fig. 8 will be described with reference to Fig. 12. S1201 and S1202 in Fig. 12 are executed in S805 in Fig. 8, and S1203 and S1204 in Fig. 12 are executed in S806 in Fig. 8.
[0132] In S1201, the print control unit 404 of the information processing device 110 generates a print job 1210. The print job 1210 includes print settings and print data. In the example of Fig. 12, the print job 1210 includes multiple attributes 1211 to 1214, each of which represents a print setting. The multiple attributes 1211 to 1214 may be included in a Create-Job message defined by IPP.
[0133] Attribute 1211 represents print settings supported by the standard print function 414. Both the attribute name and attribute value of attribute 1211 conform to IPP. The standard print function 414 can generate attribute 1211. Attributes that represent print settings supported by the standard print function 414 in this way are referred to as IPP standard attributes. Both the attribute name and attribute value of the IPP standard attributes are specified by IPP. Like attribute 1211, attribute 1212 is also an IPP standard attribute.
[0134] Attribute 1213 represents print settings supported by PSA 413. The attribute name of attribute 1213 conforms to IPP. The attribute name of attribute 1213 is an attribute name defined by the vendor of the printing device 120. Therefore, attribute 1213 is a vendor-extended attribute. The attribute value of attribute 1213 conforms to CPCA. For example, the attribute value of attribute 1213 is a CPCA command for causing the printing device 120 to execute the print settings. As described above, a CPCA command is a command executable by the CPCA processing unit 611. A vendor-extended attribute whose attribute value is a CPCA command, such as attribute 1213, is referred to as a CPCA attribute. Attribute 1213 includes the CPCA command "id_att_billing_code:1234" as the attribute value corresponding to the attribute name "smi1602-cpca-set_job" of attribute 1213. This CPCA command is an attribute that conforms to CPCA. Specifically, this CPCA command includes a CPCA-compliant attribute name "id_att_billing_code" and a CPCA-compliant attribute value "1234." Attribute 1213 represents one type of print setting for the printing device 120. Attribute 1214, like attribute 1213, is a CPCA attribute. The attribute values corresponding to the CPCA command attribute name "id_att_trust_print" can be "true" or "false." The attribute values corresponding to the CPCA command attribute name "id_att_trust_print" can be "true" or "false." The attribute values corresponding to the CPCA command attribute name "id_att_print stamp" can be "left side" or "right side." Attribute 1214 represents multiple types of print settings for the printing device 120 (two types in the example of FIG. 12).
[0135] The print settings included in the print job 1210 may be divided into multiple groups. For example, the print settings included in the print job 1210 may be grouped into "job," "binder," and "document." The CPCA processing unit 611 of the printing device 120 may execute commands related to the print settings for each of these groups.
[0136] CPCA attributes may be defined for each group of print settings. For example, for "job," "binder," and "document," attribute names "smi1602-cpca-set_job," "smi1602-cpca-set_binder," and "smi1602-cpca-set_document" may be defined, respectively. The data type of the attribute values of these CPCA attributes may be "1setOfoctetString(MAX)." The attribute value of the attribute "smi1602-cpca-set_job" may be, for example, "id_att_print_numberstring:position:bottom,font:gothic,fontcolor:black," "id_att_print_stamp:stampstring:"confidential," "id_att_trust_print:truststring:"COPY"," etc.
[0137] The PSA 413 acquires a print setting specification from the user of the information processing device 110, and generates CPCA attributes for the print job 1210 based on this specification. Specifically, the PSA 413 generates a CPCA command for causing the printing device 120 to execute the print settings specified by the user. The PSA 413 also determines the group (e.g., "job") to which this CPCA command belongs, and generates an attribute (e.g., the attribute "smi1602-cpca-set_job") according to this group.
[0138] The standard printing function 414 acquires print setting specifications from the user of the information processing device 110 and generates IPP standard attributes for the print job 1210 based on these specifications. The print control unit 404 generates the print job 1210 so that it includes the CPCA attributes generated by the PSA 413 and the IPP standard attributes generated by the standard printing function 414. In the example of Fig. 12, the print job 1210 includes both the IPP standard attributes and the CPCA attributes. Alternatively, the print job 1210 may not include the IPP standard attributes, and may not include the CPCA attributes.
[0139] In S1202, the print control unit 404 of the information processing device 110 transmits the print job 1210 to the printing device 120, and the printing device 120 receives the print job 1210. For example, the print control unit 404 of the information processing device 110 transmits the print job 1210 to the printing device 120 by specifying a port number assigned to the IPP processing unit 610 of the printing device 120. In this case, the print job 1210 is passed to the IPP processing unit 610 of the printing device 120.
[0140] In S1203, the IPP processing unit 610 of the printing device 120 generates a print command based on the multiple attributes 1211 to 1214 included in the print job 1210 received in S1202. In S1204, the CPCA processing unit 611 of the printing device 120 prints the print data specified in the print job 1210 in accordance with the print command generated in S1203.
[0141] The process of generating a print command in S1203 will be described in detail with reference to Fig. 13. IPP standard attribute set 1301 represents a set of one or more IPP standard attributes included in print job 1210. IPP standard attribute set 1301 may include attribute 1211 and attribute 1212 in Fig. 12. CPCA attribute set 1302 represents a set of one or more CPCA attributes included in print job 1210. CPCA attribute set 1302 may include attribute 1213 and attribute 1214 in Fig. 12. Print command 1303 represents a print command generated based on IPP standard attribute set 1301 and CPCA attribute set 1302.
[0142] 13, the print command 1303 includes, from the top, instructions belonging to the group "job," instructions belonging to the group "binder," and instructions belonging to the group "document."
[0143] The IPP processing unit 610 converts each IPP standard attribute included in the IPP standard attribute set 1301 into a CPCA command, and includes this CPCA command in the print command 1303. The IPP processing unit 610 determines the group to which the converted CPCA command belongs, and includes the CPCA command in the position of the determined group.
[0144] The IPP processing unit 610 includes the attribute value (which is a CPCA command) of each IPP standard attribute included in the CPCA attribute set 1302 in the print command 1303. The IPP processing unit 610 determines the group to which the CPCA command belongs based on the attribute name of each IPP standard attribute, and includes the CPCA command in the position of the determined group.
[0145] When the print settings represented by the IPP standard attributes conflict with the print settings represented by the CPCA attributes, the IPP processing unit 610 may print the print data according to the print settings represented by the CPCA attributes. For example, when the print settings represented by the IPP standard attributes conflict with the print settings represented by the CPCA attributes, the IPP processing unit 610 may not include the print settings represented by the IPP standard attributes in the print command 1303. Alternatively, when the print settings represented by the IPP standard attributes conflict with the print settings represented by the CPCA attributes, the IPP processing unit 610 may overwrite the print settings represented by the IPP standard attributes with the print settings represented by the CPCA attributes.
[0146] When a new print setting is added to the printing device 120 or an existing print setting is changed, the attribute value (i.e., the CPCA command) of the CPCA attribute (e.g., attribute 1213) changes. Even in such a case, the attribute name of the CPCA attribute does not change, so there is no need to update the standard print features 414. Once the PSA 413 is updated to support this new print setting, the user can use the new print setting of the printing device 120. Therefore, according to the above-described embodiment, the print settings available to the user of the information processing device 110 can be flexibly changed.
[0147] 12, the information processing device 110 transmits a print job 1210 to the printing device 120, which is one of the external devices. The printing device 120 receives the print job 1210 from the information processing device 110, which is one of the external devices. Alternatively, the print job 1210 may be provided from the information processing device 110 to the printing device 120 via the print server 130.
[0148] For example, the print request sent from the information processing device 110 to the print server 130 in S714 of Fig. 7 may include the attributes 1211 to 1214. Furthermore, the print job response sent from the print server 130 to the printing device 120 in S717 of Fig. 7 may include the attributes 1211 to 1214.
[0149] <Other embodiments> The present invention can also be realized by supplying a program that realizes one or more functions of the above-described embodiments to a system or device via a network or a storage medium, and having one or more processors in the computer of the system or device read and execute the program.The present invention can also be realized by a circuit (e.g., ASIC) that realizes one or more functions.
[0150] <Summary of the embodiment> (Item 1) 1. A printing device, comprising: a receiving means for receiving a print job including a first attribute representing a print setting from an external device; a generating means for generating a print command based on the first attribute; a printing means for printing the print data specified in the print job in accordance with the print command; the first attribute includes an attribute name conforming to a first protocol; A printing device, wherein attribute values corresponding to the attribute names of the first attributes include attribute names and attribute values that conform to a second protocol different from the first protocol. (Item 2) the attribute name of the first attribute is an attribute name defined by the vendor of the printing device; Item 1. The printing device according to item 1, wherein the attribute value of the first attribute represents multiple types of print settings of the printing device. (Item 3) 3. The printing device according to item 1 or 2, wherein generating the print command based on the first attribute includes including the attribute value of the first attribute in the print command. (Item 4) the print job further includes a second attribute representing a print setting; the second attribute includes an attribute name and an attribute value that conforms to the first protocol; 4. The printing device according to any one of items 1 to 3, wherein the generating unit generates the print command further based on the second attribute. (Item 5) Item 5. The printing device of item 4, wherein generating the print command based on the second attribute includes converting the second attribute into instructions that conform to the second protocol and including the instructions in the print command. (Item 6) A printing device according to item 4 or 5, wherein the printing means prints the print data according to the print settings represented by the first attribute when the print settings represented by the first attribute conflict with the print settings represented by the second attribute. (Item 7) The generating means Dividing print settings included in the print job into a plurality of groups; 7. The printing device according to any one of items 1 to 6, wherein a group to which a print setting represented by the first attribute belongs is determined based on the attribute name of the first attribute. (Item 8) the first protocol is a protocol supported by a standard printing function of an operating system of an information processing apparatus that generates the print job; 8. The printing device according to any one of items 1 to 7, wherein the second protocol is a protocol that is not supported by the standard printing function. (Item 9) Item 9. The printing device of item 8, wherein the second protocol is a proprietary protocol of a vendor of the printing device. (Item 10) 10. The printing device according to item 8 or 9, wherein the first protocol is the Internet Printing Protocol. (Item 11) A method for controlling a printing device, comprising: a receiving step in which a receiving means receives a print job including a first attribute representing a print setting from an external device; a generating step in which a generating means generates a print command based on the first attribute; a printing step in which a printing means prints the print data specified in the print job in accordance with the print command; the first attribute includes an attribute name conforming to a first protocol; A control method, wherein an attribute value corresponding to the attribute name of the first attribute includes an attribute name and an attribute value conforming to a second protocol different from the first protocol. (Item 12) An information processing device, generating means for generating a print job including a first attribute representing a print setting; a sending means for sending the print job to a printing device or a print server, the first attribute includes an attribute name conforming to a first protocol; The information processing device includes, as attribute values corresponding to the attribute names of the first attributes, attribute names and attribute values that conform to a second protocol different from the first protocol. (Item 13) A program for causing a computer to function as each means of the information processing device described in item 12. (Item 14) A control method for an information processing device, comprising: a generating step in which a generating means generates a print job including a first attribute representing a print setting; a sending step in which a sending means sends the print job to a printing device or a print server, the first attribute includes an attribute name conforming to a first protocol; A control method, wherein an attribute value corresponding to the attribute name of the first attribute includes an attribute name and an attribute value conforming to a second protocol different from the first protocol.
[0151] The invention is not limited to the above-described embodiments, and various changes and modifications can be made without departing from the spirit and scope of the invention. Accordingly, the following claims are appended to apprise the public of the scope of the invention. [Explanation of symbols]
[0152] 110 information processing device, 120 printing device, 130 print server
Claims
1. 1. A printing device, comprising: a receiving means for receiving a print job including a first attribute representing a print setting from an external device; a generating means for generating a print command based on the first attribute; a printing means for printing the print data specified in the print job in accordance with the print command; the first attribute includes an attribute name conforming to a first protocol; A printing device, wherein attribute values corresponding to the attribute names of the first attributes include attribute names and attribute values that conform to a second protocol different from the first protocol.
2. the attribute name of the first attribute is an attribute name defined by a vendor of the printing device; The printing device of claim 1 , wherein the attribute values of the first attribute represent multiple types of print settings for the printing device.
3. The printing device of claim 1 , wherein generating the print command based on the first attribute includes including the attribute value of the first attribute in the print command.
4. the print job further includes a second attribute representing a print setting; the second attribute includes an attribute name and an attribute value that conforms to the first protocol; The printing device according to claim 1 , wherein the generating means generates the print command further based on the second attribute.
5. The printing device of claim 4 , wherein generating the print command based on the second attribute includes converting the second attribute into an instruction conforming to the second protocol and including the instruction in the print command.
6. 5. The printing device according to claim 4, wherein the printing means prints the print data according to the print settings represented by the first attribute when the print settings represented by the first attribute conflict with the print settings represented by the second attribute.
7. The generating means Dividing print settings included in the print job into a plurality of groups; The printing device of claim 1 , further comprising: determining a group to which a print setting represented by the first attribute belongs based on the attribute name of the first attribute.
8. the first protocol is a protocol supported by a standard printing function of an operating system of an information processing apparatus that generates the print job; 2. The printing device of claim 1, wherein the second protocol is a protocol not supported by the standard printing function.
9. 9. The printing device of claim 8, wherein the second protocol is a proprietary protocol of a vendor of the printing device.
10. 9. The printing device of claim 8, wherein the first protocol is the Internet Printing Protocol.
11. A method for controlling a printing device, comprising: a receiving step in which a receiving means receives a print job including a first attribute representing print settings from an external device; a generating step in which a generating means generates a print command based on the first attribute; a printing step in which a printing means prints the print data specified in the print job in accordance with the print command; the first attribute includes an attribute name conforming to a first protocol; A control method, wherein attribute values corresponding to the attribute names of the first attributes include attribute names and attribute values conforming to a second protocol different from the first protocol.
12. An information processing device, a generating means for generating a print job including a first attribute representing a print setting; a sending means for sending the print job to a printing device or a print server, the first attribute includes an attribute name conforming to a first protocol; An information processing device, wherein attribute values corresponding to the attribute names of the first attributes include attribute names and attribute values conforming to a second protocol different from the first protocol.
13. A program for causing a computer to function as each of the means of the information processing device according to claim 12.
14. A control method for an information processing device, comprising: a generating step in which a generating means generates a print job including a first attribute representing a print setting; a sending step in which a sending means sends the print job to a printing device or a print server, the first attribute includes an attribute name conforming to a first protocol; A control method, wherein attribute values corresponding to the attribute names of the first attributes include attribute names and attribute values conforming to a second protocol different from the first protocol.
Citation Information
Patent Citations
Recording and reproducing device for video signal
JP1981065582A