printer
The printer's automatic setup process, facilitated by a communication interface and controller, addresses the inefficiency of manual configuration by allowing multiple printers to receive and apply setup data from a server, thereby reducing administrative effort.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- BROTHER KOGYO KK
- Filing Date
- 2025-04-23
- Publication Date
- 2026-06-23
Smart Images

Figure 0007878507000001 
Figure 0007878507000002 
Figure 0007878507000003
Abstract
Description
Technical Field
[0001] The technical field disclosed in this specification relates to printers. More specifically, it relates to a technology in which a printer accesses a server and performs image processing according to instruction data stored in the server.
Background Art
[0002] Conventionally, as disclosed in Patent Document 1 for example, there is a printing system including a printer and a server, in which the printer accesses the server, analyzes instruction data sent from the server, and performs processing according to the instruction data. The printer can perform download printing in which it downloads a document from a storage and prints it. For example, when the instruction data includes an execution instruction for download printing, it can perform download printing according to the instruction data.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] In a printer, parameters related to image processing such as print settings and various certificates can be stored. Setup such as changing parameters related to image processing and installing various certificates can be performed by accessing a server function incorporated in the printer or by using a dedicated application program incorporated in a device accessible to the printer. This can be done by [method]. However, if the administrator does not set such a set for individual printers Performing uploads frequently is a time-consuming task.
[0005] This specification relates to a printer that performs printing based on instruction data, and the printer's setup We will disclose technology that reduces the effort required for the top-up process. [Means for solving the problem]
[0006] The printer designed to solve the aforementioned problems includes a communication interface and a control A printer equipped with rollers, wherein the controller accesses the printer. Information and access conditions are registered, and the registered access conditions are met. If this occurs, the communication interface will be configured based on the registered access information. The system accesses the server via a receiving process and receives instruction data transmitted from the server. The instruction data is data that instructs the process, and the instruction data contains the P Data used in the linter may be shown, and furthermore, the controller The instruction data received in the reception process instructs the download setup process. It is instruction data, and the instruction data received in the reception process is downloaded If setup data to be used for the setup process is indicated, the instruction data Download the setup data shown via the communication interface. Then, use the downloaded setup data to set up the printer. It is characterized by performing the aforementioned download setup process.
[0007] According to the technology disclosed herein, the printer has access to receive instruction data. Information and access conditions can be registered, and the printer will automatically activate when the access conditions are met. Instruction data is received based on access information, and downloaded based on the instruction data. The printer is automatically set up using the provided setup data. This allows for management Users do not need to perform operations on each individual printer each time they set it up, and the administrator can... The effort required for setup is reduced. Also, when managing multiple printers, each Register access information and access conditions with the printer, and the corresponding access information will be sent. Updating the update data will automatically complete the setup for multiple printers. Therefore, the administrator will have to perform operations on each individual printer each time they set it up. Compared to other cases, the effort required for administrators to perform setup is reduced.
[0008] Image processing system including the above-mentioned printer, control method for realizing the printer's functions, Computer programs and the code readable by the computer storing those programs. Memory media are also new and useful. [Effects of the Invention]
[0009] According to the technology disclosed herein, a printer that prints based on instruction data This will enable technology that reduces the effort required for printer setup. [Brief explanation of the drawing]
[0010] [Figure 1] This is a block diagram showing the electrical configuration of a system including a printer of this form. [Figure 2] This is an explanatory diagram showing an example of a registration screen for external functions. [Figure 3] It is an explanatory diagram showing an example of registration function information. [Figure 4] It is a flowchart showing the procedure of condition confirmation processing. [Figure 5] It is a flowchart showing the procedure of external function processing. [Figure 6] It is an explanatory diagram showing an example of instruction data for display instruction and an example of a display screen. [Figure 7] It is an explanatory diagram showing an example of instruction data for download setting. [Figure 8] It is an explanatory diagram showing an example of instruction data for download setting. [Figure 9] It is a flowchart showing the procedure of download processing. [Figure 10] It is an explanatory diagram showing an example of a setting file. [Figure 11] It is a flowchart showing the procedure of setting processing. [Figure 12] It is an explanatory diagram showing an example of the configuration of a file set. [Figure 13] It is an explanatory diagram showing an example of a setting file. [Figure 14] It is a flowchart showing the procedure of manual start processing. [Figure 15] It is an explanatory diagram showing an example of a list of names. [Figure 16] It is an explanatory diagram showing an example of instruction data for download printing.
Embodiments for Carrying Out the Invention
[0011] Hereinafter, the printer according to the embodiment will be described in detail with reference to the accompanying drawings. In this embodiment The printer 1 can be connected to the server 3 via the network 200 as shown in FIG. 1, for example. It is possible to continue.
[0012] The printer 1 of this embodiment includes a computer including a CPU 11 and a memory 12 as shown in FIG. 1. It is equipped with a trola 10. In addition, the printer 1 has a user interface (hereinafter referred to as "user interface"). The IF (hereinafter referred to as "the IF") 13, and the communication interface (hereinafter referred to as "communication IF") 14, It is equipped with a brushing engine 15 and is electrically connected to the controller 10. CPU11 may be an example of a controller.
[0013] The CPU 11 processes the program read from memory 12 and also responds to user input. Based on this, various processes are executed. Memory 12 contains the operating system as shown in Figure 1. A system (hereinafter referred to as "OS") 21 and an external function program 22, including various The program and various information are stored there. When various processes are executed, Memory 12 is used. It is also used as a workspace. The buffer provided by CPU11 is another example of memory.
[0014] An example of memory 12 is not limited to ROM, RAM, HDD, etc., built into printer 1, but also C PU11 may be a read-and-write storage medium. A storage medium that can read data is a non-transitory medium. Non-transitory media include, in addition to the examples above, CD-ROMs and DVD-Rs. This also includes recording media such as OM. Furthermore, non-transitory media are tang It is also a digital medium. On the other hand, it can be downloaded from servers on the internet, etc. The electrical signals that carry the program are a type of medium that a computer can read. A computer is a signal medium that can be read, but it is a non-transitory computer. The data is not included in the readable storage medium.
[0015] The external function program 22 acquires instruction data from an external device such as the server 3, and the acquired This is a program that executes processing based on instruction data. (See details of external function program 22) This will be explained later.
[0016] User interface 13 is, for example, a touch panel, a screen for informing the user of information. It includes hardware for displaying information and hardware for receiving user input. Oh, User Interface 13 can be a combination of a display, buttons, keys, etc.
[0017] Communication IF14 includes a configuration that allows connection to network 200, and network 200 Includes hardware for communicating with server 3 via the interface. The communication standard for communication IF14 is: These include Ethernet (registered trademark), Wi-Fi (registered trademark), USB, etc. Printer 1 is It may have multiple communication IF14s that support multiple communication standards.
[0018] The printing engine 15 is configured to print an image based on image data onto a printing medium such as a sheet. Includes. The image forming method of the printing engine 15 is, for example, an electrophotographic method, an inkjet method. That is the case.
[0019] As shown in Figure 1, Server 3 receives one or more instruction data such as instruction data 31, and setting files. It stores various files such as Il41. Server 3 receives transmission instructions from printer 1, etc. Based on this, the specified instruction data is sent. Server 3 is an example of a source for sending instruction data. Each instruction data stored in server 3 is sent to the external function program 22 of printer 1. This is information that can be analyzed, for example, by the designer of a system including printer 1 and server 3. Therefore, the prepared XML file is shown below. For details on the instruction data and configuration files, see This will be explained later. Note that the system designers, etc., refer to, for example, the system designers of the company that installed printer 1. The project manager, the seller of printer 1, the designer and service of the manufacturer or sales dealer of printer 1. Person.
[0020] Next, we will explain the processing performed by the external function program 22 of printer 1. The following processing This basically shows the processing of the CPU 11 according to the instructions written in the program. , in the following explanation, "judgment," "extraction," "selection," "calculation," "decision," and "specification," Processes such as "acquisition," "reception," and "control" represent processes performed by CPU11. The processing by includes hardware control using the OS API. In this specification, the OS API The operation of each program will be explained without mentioning it. In other words, in the following explanation, "prog The statement to the effect that "RAM B controls hardware C" is equivalent to saying that "Program B controls the OS AP It may also refer to "controlling hardware C using I". The processing performed by CPU 11 according to the given instructions may be described using abbreviated language. For example, It is sometimes written as "CPU11 will perform this." Also, instructions written in the program The process performed by CPU 11 is described using phrases that omit the CPU, such as "Program A performs this task." It may be posted.
[0021] Note that "acquisition" is used as a concept that does not require a request. That is, if CPU11 requests... The process of receiving data without any action is also related to the concept of "the CPU acquiring data". It is included. Also, "data" as used herein refers to a computer-readable bit string. And, data with the same substantive meaning but different formats are considered the same data. It shall be treated as a "T". The same applies to "information" in this specification. Also, "essential "To request" and "to instruct" refer to information that is being requested or instructions that are being given. This concept refers to the output of information to another party. It also refers to information or instructions that indicate a request. Information indicating that something is being done may also simply be described as a "request" or "instruction."
[0022] Furthermore, the CPU 11 determines whether or not information A indicates that event B. The principle can be conceptually described as "determining whether or not something is true based on information A." Yes. CPU 11 indicates that information A is fact B, or fact C. The process of determining whether information A indicates event B or event C is called "determining from information A whether it indicates event B or event C". It is sometimes described conceptually as "to decide" or "to reject."
[0023] In this configuration, the printer 1 processes, for example, multiple instruction data according to the external function program 22. This function receives and processes data sequentially, thereby executing a series of processes that combine various types of processing. It is possible to perform certain external functions.
[0024] Printer 1 can, for example, accept registration instructions for external functions via User IF13. Furthermore, printer 1 can be connected to a personal computer or the like. It can accept registration instructions for external functions. Personal computers, for example, Printer 1's embedded web server, or an application dedicated to registering external functions Using the command program, external functions can be registered to printer 1.
[0025] When an instruction to register an external function is received, Printer 1 or the personal computer, etc. For example, a registration screen like the one shown in Figure 2 is displayed to accept user input. (Registration screen) This is a screen that accepts input for the name of the external function, the function URL, and the execution conditions. (Printer) When a registration instruction is received on the registration screen displayed on user IF13 of 1, printer 1 will The received information is stored in the registration function information 221. Also, personal computers, etc. If a registration instruction is received on the displayed registration screen, the received information and the registration instruction will be displayed. The command is sent to printer 1. Printer 1 registers the received information in function information 221. It is stored in the registration function information 221. The process of storing the received information in the registration function information 221 is an example of the registration process. Yes, it exists. Note that "http" shown in Figure 2, etc., can be changed to "https".
[0026] An example of registration function information 221 is shown in Figure 3. The registration function information 221 shown in Figure 3 includes multiple External functions are registered, and for each external function, the name, function URL, and execution conditions are mutually exclusive. It is stored in association with [something]. The function URL is stored when printer 1 is the most important when the external function is executed. This information indicates the storage location of the instruction data to be acquired initially. The function URL is part of the access information. This is an example. The execution condition is the condition that automatically starts the execution of the external function. The execution condition is This can be configured for each function URL. Printer 1 specifies the execution conditions, for example, by specifying the date and time. We accept requests based on specified periods such as fixed intervals or at predetermined times, and specified conditions such as when the power is turned on. This is just one example of an access condition.
[0027] Printer 1 in this configuration can accept registration of multiple external functions, and each external function The function URL and execution conditions are registered. Note that Printer 1 is an external device for which no execution conditions are set. We also accept registration of functions. If no execution conditions are set, printer 1 will use its external functions. It does not run automatically, but as described later, it can be run manually via User IF13. Instructions will be accepted. Examples of registration function information 221 shown in Figure 3 include the "Settings (HR Department)" function, etc. External functions with set execution conditions, and execution conditions for functions such as "Print Settings (Eco Mode)" This includes external functions that are not configured.
[0028] Note that printer 1 running multiple external functions in parallel can cause errors. This is undesirable. When printer 1 receives a registration instruction that includes the specification of execution conditions, It determines whether the execution conditions overlap with the execution conditions of an external function that has already been registered, and if there is an overlap, If it is determined that such a situation exists, it may be appropriate to prompt a change in the execution conditions.
[0029] Furthermore, the registered function information 221 is stored in the non-volatile memory area of the printer 1's memory 12. It may be stored in memory, or it may be stored on another memory medium accessible to printer 1. Example For example, registration function information 221 is a USB memory connected to printer 1, connected to printer 1. The HDD of a personal computer, etc., and the network connected to Printer 1 It may be stored in the storage. In either case, printer 1 will store the data in the storage location at startup, etc. The registered function information 221 is read into RAM and used.
[0030] Next, the procedure for the condition confirmation process will be explained with reference to the flowchart in Figure 4. Condition The verification process is performed periodically if one or more external functions are registered in the registered function information 221. At the appropriate timing, it is executed on CPU 11 of printer 1. Note that the condition check process is executed. The trigger for initiation is not limited to regular intervals, but can also be predetermined, such as when the power is turned on or when a job is completed. Any timing is fine.
[0031] In the condition confirmation process, the CPU 11 reads the registration function information 221 (S101) and registers The external functions being checked are reviewed one by one. Then, the execution conditions are set for the external functions being reviewed. If so, determine whether the set execution conditions are met (S105). If it is determined that the row condition is met (S105:YES), CPU11 will perform other functions. Determine whether it is running or not (S111). Printer 1 is not running any other external functions or external functions Do not start new executions of external functions while jobs that cannot be run concurrently are in progress. If it determines that a function is currently being executed (S111:YES), CPU11 waits for a predetermined time. Then, the S111 decision is made again. If it is determined that no other function is being executed (S111 :NO), CPU11 executes external function processing (S115).
[0032] The procedure for processing external functions will be explained with reference to the flowchart in Figure 5. CPU11 Based on the registered function information 221, it reads the function URL of the external function to be executed (S2 01). Then, CPU11 accesses server3 using the retrieved function URL, Instruction data is received (S202). S202 is an example of the reception process.
[0033] The CPU 11 analyzes the instruction data received from the server 3 and, based on that instruction data, The process shown will be executed. The instruction data is shown, for example, in Figures 6(A), 7, and 8. This is an XML file containing various tags. The names and values of the various tags are specified in the instruction data. It is sufficient that the external functional program 22 that analyzes the data is capable of analysis, and it is not limited to the examples shown in each figure.
[0034] The instruction data 31 shown in Figure 6(A) is: <display>This is instruction data that includes tags, This is display instruction data that instructs the IF13 to display something on the screen. On the other hand, instruction data 3 shown in Figure 7. The instruction data 33 shown in Figure 2 and Figure 8 is <command> This is instruction data that includes tags, followed by tags This is operation instruction data that instructs the execution of the process specified by [the specified method]. The CPU 11 receives it and The instruction data is analyzed to determine whether the instruction data is display instruction data or operation instruction data. Determine whether (S203). Specifically, CPU11, <display>Instructions including tags The data was determined to be display instruction data. <command> Instruction data including tags is an operation instruction data It is determined to be a data type.
[0035] Note that the instructions displayed in the instruction data are instructions that accept user input, This is an instruction to wait until the input "za" is received. Printer 1 in this configuration performs a condition confirmation process. If it is determined in S105 that the conditions for executing the external function are met, then in the condition confirmation process S115, , and automatically start the execution of that external function. If the execution condition is a date and time or a period of time, The execution conditions may be met even when the user is not nearby, and in that case, the external function will still be executed. It is desirable to be able to continue the line. To that end, an external function that starts execution automatically will be displayed. The design often does not include instruction data. For example, the download settings described later... The function is an external function that may be automatically executed by printer 1 in this form, and the display instructions This function does not include display data. Display instruction data will be discussed later.
[0036] If the received instruction data is determined to be an operation instruction data (S203: Operation Instruction), CPU11 determines whether the acquired instruction data is instruction data indicating a download setting instruction. Determine whether or not (S211). The operation instruction data includes: <command> The type tag that follows the tag Therefore, it includes information indicating the type of processing being instructed.
[0037] The instruction data 32 shown in Figure 7 and the instruction data 33 shown in Figure 8 are, <command> Seeds that follow the tag As a related tag <downloadsetting>This is instruction data that includes tags, and instructions for download settings. This is an example of instruction data that shows the indication. The received instruction data is the instruction data 32 shown in Figure 7 and Figure If the instruction data 33 shown in 8 is correct, the CPU 11 will, in S211, perform the download setting instruction It is determined to be indicative data.
[0038] The instruction data 32 shown in Figure 7 is recorded in the registered function information 221 as a record with ID=1, and is labeled "Setting Based on the function URL of the external function registered under the name "Personnel Department", from Server 3 This is an example of the instruction data that will be acquired. For example, the execution conditions for the external function of "Settings (HR Department)" If the conditions are met, CPU11 will record ID=1 from the registered function information 221 in S201. The function URL contained in the code is read, and instruction data 31 is received at S202. The instruction data 33 shown in Figure 8 is recorded in the registration function information 221 as a record with ID=5, and is labeled "certified". Based on the function URL of the external function registered under the name "Document Settings", the following information is obtained from Server 3. This is an example of instruction data.
[0039] If it is determined that the data is a download setting instruction (S211:YES), CPU1 1 executes the download process (S212). The download process is received in S202. Based on the instructions you provided, download the configuration file for the download settings. This is the process. The procedure for the download process will be explained with reference to the flowchart in Figure 9. do.
[0040] During the download process, CPU11 selects the download target from the instruction data to be executed. Get the URL to specify the file (S301). Show the file to be downloaded. The URL is included in instruction data 32 or instruction data 33, for example, <path>Indicated by tags It is.
[0041] Furthermore, CPU11 retrieves the file to be downloaded in the instruction data for the execution target. Determine whether the necessary access information is included (S302). Data 32 and instruction data 33 include, for example, <user>Tags and <password>By tag, Access information is set. If it is determined that access information is included ( S302:YES), CPU11 obtains access information from the instruction data to be executed. Then, using the acquired information, access server 3 (S303). Instruction data to be executed. If it is instruction data 32 or instruction data 33, the CPU 11, in S303, Access server 3 using the username and password included in the data.
[0042] If it is determined that the instruction data to be executed does not contain access information (S302 :NO), CPU11 accesses server 3 without using access information (S30 4) In this configuration, the files to be downloaded are also stored on the same server 3 as the instruction data. Assuming it is stored in memory, the files to be downloaded are from printer 1. It is sufficient that the data is stored in an accessible location; it does not need to be stored on storage other than Server 3. It's okay if it's included. In that case, the URL of the file to be downloaded is: <path>Tags Therefore, it is shown.
[0043] After S303 or S304, CPU11 checks whether it was able to access the specified URL. Determine whether access was successful (S311). If it is determined that access was successful (S311: YES) CPU11 retrieves the file to be downloaded (S312). Instructions for execution. If the data is the instruction data 32 shown in Figure 7, the CPU 11 will process the file "HR.pac". Download. If the instruction data to be executed is the instruction data 33 shown in Figure 8, then the CPU Step 11 is to download the file "SSL.epac".
[0044] Furthermore, CPU11 determines whether the file is encrypted based on the specified file extension. Determine whether or not it has been converted (S313). In this form, the extension ".pac" of "HR.pac" This indicates an unencrypted compressed file. Also, the extension "epac" in "SSL.epac" indicates an unencrypted compressed file. The '' indicates a file that has been encrypted and compressed. Note that extensions indicating encryption and compression are also used. In this example, and in other cases as well, the external functional program 22 that analyzes the instruction data can determine whether the child is a child. That's fine.
[0045] If it is determined that the data is encrypted (S313:YES), CPU11 will input the data into memory12. Attempt to decrypt the file using the stored administrator password (S314). Furthermore, the CPU 11 determines whether or not the decryption was successful (S315). In method 1, a file encrypted so that the decryption key is the administrator password is used. However, the decryption key is not limited to the administrator password.
[0046] If it is determined that the file is not encrypted (S313:NO), or if decryption is not possible, If it determines that the operation was successful (S315:YES), CPU11 extends the specified file. Based on the child, it is determined whether the file is compressed or not (S321). Compression file If it is determined to be an error (S321:YES), CPU11 attempts to decompress it (S3 22). Then, CPU11 determines whether or not the decompression was successful (S323). Decompression successful. If it is determined that (S323:YES), or if it is determined that it is not a compressed file ( S321:NO), CPU11 processes the decompressed or uncompressed files into memory. Save to 12 (S324) and end the download process.
[0047] "HR.pac" is, for example, a file that compresses the configuration file 41 shown in Figure 10 without encryption. The configuration file 41 is a JSON file containing various settings to be set for printer 1. It is a file. If the acquisition of "HR.pac" is successful based on instruction data 32, CPU1 Option 1 determines NO in S313 and YES in S321, and decompresses without decryption. If successful, CPU11 obtains the configuration file 41 shown in Figure 10. Then, C PU11 saves the acquired configuration file 41 to memory 12 at S324. File 41 is an example of setup data. For details on configuration file 41, see More details will follow.
[0048] On the other hand, if it is determined that the specified URL could not be accessed (S311:NO), Alternatively, if it is determined that decryption failed (S315:NO), or if decompression failed If it determines (S323: NO), CPU11 determines it is an error (S331) and downloads The download process will be terminated. For example, if the access information is incorrect or if the required information is not provided. If the data is not included, CPU11 will download the files to be downloaded. Unable to retrieve properly. Also, the decryption key is the administrator password stored in memory 12. If it differs from the default, CPU11 will fail to decrypt. Also, if there is no decompression program... If the file is corrupted, CPU11 will fail to decompress it.
[0049] Returning to the explanation of external function processing in Figure 5, CPU 11 performs the download process in S212, Determine whether the download was successful or not (S213). Determine if the download failed. If this occurs, that is, if an error is determined in S331 of the download process (S213 :NO), CPU11 reports an error (S214) and terminates external function processing. Oh, if an error occurs in an external function that automatically started processing based on the execution conditions, CP U11 can, for example, store errors in memory 12 and display them when the home screen is displayed. stomach.
[0050] If the download is deemed successful (S213:YES), CPU11 will process the settings. The process is executed (S215). The configuration process is based on the configuration file obtained by download. Next is the process of setting up printer 1. Download process S212 and S2 The combination of 15 configuration steps is an example of a download setup process. Configuration Steps This will be explained with reference to the flowchart in Figure 11.
[0051] During the configuration process, CPU11 identifies the configuration file to be executed (S401). The configuration file to be executed in this case is saved to memory 12 during the download process S324. This is a file, for example, the configuration file 41 shown in Figure 10. The CPU 11 is special Read one line from the specified file (S402), and the read line is the end of the file. To determine whether or not to do so (S403).
[0052] If it is determined that it is not the end of the file (S403:NO), CPU11 will be specified Determine whether the value is "null" (S405). If "null" is written in the configuration file... The items that are already entered are items that do not need to be changed. CPU11 has a value of "nu For items that are "ll", no settings will be changed. (S405:NO), CPU11 determines whether or not the specification of a sub-item is included. (S406). If the line read contains curly braces "{" instead of a value, CPU11 This indicates that the specification includes sub-items.
[0053] If it is determined that no sub-items are specified (S406:NO), CPU11 determines that the value is Determine whether it is written as an array (S407). The line read is enclosed in square brackets "[ If it contains, CPU11 determines that the array is described. If it determines that (S407:YES), CPU11 will determine the array indicated by square brackets "] Read to the end (S411) and check if all values in the read array are "null". Determine whether or not (S412). If it is determined that a value other than "null" is included (S412: NO), CPU11 takes the values described by the array, for example, the non-volatile memory 12. It is stored as a parameter in a predetermined memory location within the memory area (S413). Includes an array. An example of a configuration file will be provided later.
[0054] Furthermore, if it is determined that the sequence is not listed (S407:NO), CPU11 will... The value specified in the configuration file is used as a parameter in the memory location corresponding to that item in Mori 12. Write as data (S421). Note that the parameters stored by S413 and S421 The parameter can be a parameter that is used regularly as the default, or a parameter used in the previous instance. It can also be a parameter that is temporarily stored, similar to the data. Also, by S413 or S421 The location where the parameters are stored can be either a non-volatile memory area or a volatile memory area. good.
[0055] After S413 or S421, or if the value is determined to be "null" (S405:Y ES), or if it is determined that a sub-item specification is included (S406:YES), If it is determined that all values in the array are "null" (S412:YES), then C PU11 returns to S402 and reads the next line. The line that was read is then saved to the file. If it is determined that this is the end of the process (S403:YES), CPU11 terminates the configuration process. Then, return to external function processing.
[0056] The items listed in the configuration file as values to be set include the parameters themselves. There are items that are already set and items that list the binary file name. If the file contains an item that lists the parameter itself, CPU11 will: In step S421 of the setup process, the specified value is placed in a designated area in the printer 1's memory 12. Remember. On the other hand, the settings file to be configured contains items where the binary file name is listed. If it is included, CPU11 will, in S421 of the configuration process, use the specified binary file The file is stored in a predetermined area in the printer 1's memory 12.
[0057] For example, the configuration file 41 shown in Figure 10 contains only the parameters themselves. This is an example where the "copy" and "proxy" fields contain values other than "null". (Configuration file) When setting processing is performed on 41, CPU 11 will determine the print used in the copy process. The parameters and proxy parameters used for network connection are recorded in the printer 1 memo. It is stored in RI12. Specifically, CPU11, for example, the "quality" item in the copy settings. Set the eye value to "auto", the value of the "density" item to "0", and the value of the "contrast" item Set this to "2". If a copy execution command is received after this setting process is performed, Controller 1 uses the parameters set as described above as default parameters. Furthermore, if a network connection instruction is received after this configuration process is performed, the printer 1 performs communication using the proxy configured based on the configuration file 41.
[0058] Note that even if the parameters have already been set, the execution of the setting process will result in C PU11 overrides parameters based on configuration file 41. This allows, for example, Even if the user temporarily changes various parameters and uses printer 1, the settings will not be processed. Executing the logic will revert the parameters to those specified in configuration file 41.
[0059] Examples of configuration files that include entries listing binary filenames are shown in Figures 12 and 13. As shown in Figure 12, the download process described above is performed based on the instruction data 33 shown in Figure 8. This is an example of the file set 42 that CPU11 acquires by executing the command. Instruction data 3 The "SSL.epac" specified in step 3 is, for example, used to encrypt the file set 42 shown in Figure 12. This is a file that has been converted and further compressed. File set 42 is binary file 421 This includes configuration file 422.
[0060] When downloading "SSL.epac" based on instruction data 33, CPU 11 will download The download process determines YES in steps S313 and S321, and attempts decryption and decompression are made. If the decompression is successful, CPU 11 obtains the file set 42 shown in Figure 12. Then, CPU11, in download process S324, puts these two files into memory Save to 12. Binary file 421 is an example of setup data.
[0061] The configuration file 422, for example, shows the binary file 421 as shown in Figure 13. This includes items that specify binary filenames and items that specify arrays. When the setting process is executed with file 422 as the setting target, CPU 11 will use memory 12. Store binary file 421 in a designated memory location. Also, as shown in the fourth line of Figure 13... The area enclosed by "[" and "]" is the description of the array. Note that this is shown in Figure 13. Configuration file 422 does not contain the parameter itself, but it does contain... That's good too.
[0062] The binary file 421, which is listed in configuration file 422, is, for example, an SSL server. This is data indicating the certificate. Configuration file 422 is used to access binary file 421 via SSL. This is a JSON file that instructs the server certificate to be stored in memory 12. When setting process is performed with 422 as the setting target, the predetermined storage location in memory 12 is The binary file 421 is stored, and printer 1 reads the stored binary file 421 This can be used as an SSL server certificate. Note that the CPU 11 uses a predetermined memory 12. If the SSL server certificate is already stored in the location, by binary file 421 The displayed data will be overwritten. This will overwrite the SSL server certificate stored in memory 12. The manual is always up-to-date.
[0063] Printer 1 will perform HTTPS communication with the web browser as a web server. It has the functionality to do so. HTTPS communication is encrypted HTTP communication, S The SL server certificate is used when printer 1 performs HTTPS communication, allowing printer 1 to access the web. This is incorporated into printer 1 to verify the site operator. SSL server Certificates are attached, for example, when sending image data scanned by a scanner to storage. Furthermore, communication between printer 1 and server 3 may or may not use HTTPS.
[0064] Note that various configuration files are not limited to those exemplified, but can also be compressed files without encryption. It can contain binary files, and even encrypted and compressed files. It's okay if the Inari file isn't included. Also, it's okay to have a configuration file that doesn't compress the files. Furthermore, the binary files that can be configured are not limited to SSL server certificates.
[0065] Returning to the explanation of external function processing in Figure 5, after S214 or S215, CPU 11 then Determine whether instruction data exists (S208). In this embodiment, the execution conditions are met. The external function that was automatically started by this is a download settings instruction, and the next step The indicated data is not included. If it is determined that there is no further indicated data (S208:NO), CPU11 terminates external function processing and returns to condition confirmation processing. Note that it starts automatically. Even if the instruction data is the same, it may also contain the following instruction data. For example, multiple down External functions that perform load settings sequentially may be registered.
[0066] Let's return to the explanation of the condition confirmation process in Figure 4. After the completion of the external function processing in S115, the CPU 11 will For all external functions registered in the registered function information 221, check whether the execution conditions have been confirmed. Determine (S121). If it is determined that there is an unconfirmed external function (S121: NO), C PU11 returns to S105 to determine whether the execution conditions are met. All external functions If it determines that the condition has been confirmed (S121:YES), CPU11 terminates the condition confirmation process. Then, at the next scheduled interval, CPU11 executes the condition check process again.
[0067] Next, the procedure for manual startup will be explained with reference to the flowchart in Figure 14. The startup process receives an execution instruction for the external function program 22 via an operation on the user IF13. Upon connection, the process is executed on the CPU 11 of printer 1. Printer 1 is an external device. The execution instructions for the program 22 are, for example, sent to the home screen, which is a waiting screen that accepts various instructions. Accepted while the screen is displayed. Note that the procedure is the same as the condition confirmation process shown in Figure 4. The same symbols are used, and the explanations are omitted.
[0068] In the manual start process, the CPU 11 reads the registration function information 221 (S101) and registers A list of the names of the external functions that are being used is displayed on user interface 13 (S502). Figure 3 shows If the registration function information 221 shown is registered, then User IF13 will, for example, display Figure 15 As shown, a list of names is displayed. Note that the registration function information 221 is for manual execution. It may also include information indicating whether or not the instruction can be accepted. In that case, CPU 11 will manually The name of an external function that has information set to indicate that it will not accept execution instructions is one of the names. Do not display in the list.
[0069] CPU11 selects an external function to execute from the displayed list of names and issues the execution command. Determine whether or not the request has been received (S503). S503 is an example of the reception process. If it determines that it has not received a line instruction (S503:NO), CPU11 will use an external function Determine whether or not the termination instruction for program 22 has been received (S504). If it is determined that it is not installed (S504:NO), CPU11 will issue a command to execute the function or Wait until a termination command is received.
[0070] If it is determined that the selection of an external function and the instruction to execute it have been received (S503:YES), C PU11 determines whether or not another function is being executed (S111). If another function is being executed If it is determined that (S111:YES), CPU11 will perform other functions. The system notifies the system (S512), waits for a predetermined time, and then makes the decision in S111 again. If it is determined that the input is not in a row (S111:NO), CPU11 executes external function processing. (S115).
[0071] When a manual instruction to start execution is received, the process is handled in S202 of the external function processing shown in Figure 5. The instruction data being transmitted may be instruction data for display instructions or instruction data for operation instructions. There are also cases where the received instruction data is determined to be display instruction data (S203: display (Instruction) Based on that instruction data, CPU11 displays a screen to user IF13. (S204). For example, in the list of names shown in Figure 15, "Download Print" is selected. If this occurs, the CPU 11 receives the instruction data 31 shown in Figure 6(A) and, as shown in Figure 6(B) A selection screen will be displayed, allowing the user to select the data to be printed, as shown. CPU11 This accepts the user's selection operation via User IF13 on the currently displayed selection screen. Waiting (S205).
[0072] If it determines that the user's selection operation has been accepted (S205:YES), CPU11 will: Does the instruction data being processed contain information to request the transmission of the next instruction data? Determine whether (S208). The instruction data includes an instruction to obtain the next instruction data. This is possible. The next instruction data is the instruction data to be received after processing the instruction data currently being processed. The instruction data 31 shown in Figure 6(A) includes: <nexturl>The following information is included in the tags: It contains a URL for requesting instruction data. System includes printer 1 and server 3. The system's designers stored multiple instruction data on server 3 and sent it from printer 1 to server 3. By allowing access, it is possible to design a system that executes a series of processes based on the instruction data. In S208, CPU11 processes the instruction data being processed. <nexturl>Tags are included Determine whether or not they are there.
[0073] If the instruction data being processed contains information to request the transmission of the next instruction data, If a determination is made (S208:YES), CPU11 will: <nexturl>Based on tag information Get the next URL (S209). Then CPU11 returns to S202 and the server The next instruction data is received from 3, and the next instruction data received from server 3 is either a display instruction or an action instruction. Determine whether it is an instruction.
[0074] For example, when the selection screen shown in Figure 6(B) accepts the selection of data to be printed, CP U11 is included in instruction data 31 <nexturl>The tag information and the selected result received Based on this, obtain the following URL, and use the obtained URL to send the following instruction data to server 3. Request. Furthermore, based on the information received from printer 1, server 3 will send the following instruction data. It may also have the functionality to create files.
[0075] The instruction data received based on the user's selection is an operation instruction and download setting If it is determined that the instruction data is as described above, CPU11 will Next, the download and configuration processes are executed. For example, the list of names shown in Figure 15 If "Settings (HR Department)" or "Certificate Settings" is selected, CPU11 will perform the following actions as shown in Figure 7 above. When the instruction data 32 shown in Figure 8 or the instruction data 33 shown in Figure 8 is received, the system will start automatically. Similar to the combined process, the aforementioned steps are executed.
[0076] On the other hand, the instruction data received at 202 is an operation instruction and a download setting instruction data If it is determined that it is not a download (S211:NO), CPU11 will initiate the download print command. Determine whether or not it is the indicated data (S221). Next to the indicated data 31 shown in Figure 6(A) The instruction data received as instruction data is, for example, the instruction data 34 shown in Figure 16. This is instruction data indicating the operation instructions for downloading and printing. Download and printing instruction data. teeth, <command> Following the tags, as type tags <downloadprint>Instruction data including tags That is the case.
[0077] If it is determined that the data is a download print instruction (S221:YES), CPU1 1 executes the download process (S222). The download process in S222 is S2 This is the same process as the download process for 12. In other words, CPU 11, <path>Tags Download the file indicated as the download target. The file being referenced is an example of print data.
[0078] After S222, CPU11 determines whether the download was successful or not (S223). S223 is the same process as S213. It was determined that the download was unsuccessful. In case (S223:NO), CPU11 reports an error (S214). Download If it determines that the process was successful (S223:YES), CPU11 will download the file. Based on the file, execute print (S225). The combination of S222 and S225 is downloaded. This is an example of a print job process. Note that the print parameters are set by the configuration process described above. If so, CPU11 prints using the set print parameters in S225. Yes. S225 is also an example of a printing process.
[0079] On the other hand, the instruction data received at 202 is an operation instruction and a download setting instruction data If it is determined that it is neither a data file nor a download print instruction data (S221:NO), C PU11 performs other processing based on the instruction data (S231). For example, If printer 1 has a scanner, processing based on the scan upload instruction data It is acceptable if the reason is feasible.
[0080] After S214, S215, S225, or S231, CPU11 proceeds to S208. It proceeds and determines whether there is any next instruction data. If it determines that there is no next instruction data, ( S208:NO), CPU11 terminates external function processing and returns to manual start processing.
[0081] Returning to the explanation of the manual start process in Figure 14. After displaying the list of names, if an external function is not selected... If a termination instruction is received (S504:YES), or if the external function processing in S115 is performed. After the process is complete, CPU11 terminates the manual start process. After terminating the manual start process, For example, step 1 returns to displaying the standby screen. Note that after the external function processing is completed in S115. Printer 1 may then return to displaying the list of external function names.
[0082] The registration function information 221 shown in Figure 3 is registered under the name "Settings (HR Department)" as mentioned above. This includes not only external functions that are already installed or external functions registered under the name "Certificate Settings", but also downloadable functions. Multiple external functions for configuring download settings are registered. The external functions for configuring download settings include: There are functions with execution conditions set and functions without execution conditions set. External functions for which this item is set will be executed automatically when the execution conditions are met, and furthermore, It will also be executed if a manual execution command is received. On the other hand, if no execution conditions are set. External functions are not executed automatically; they are only executed when manually instructed to do so. It will be executed.
[0083] In the example of registration function information 221 shown in Figure 3, for example, there are "Settings (Human Resources Department)" and "Certificate Settings". "Settings" is an external function of download settings where execution conditions are set, and "Print settings (E "Commode)" is an external function of download settings where no execution conditions are set. The function URL of an external function with set conditions is an example of the first access information, and the function URL Server 3, indicated by RL, is an example of the first server. And, as indicated by its function URL... The instruction data, for example, the instruction data 32 shown in Figure 7, is an example of the first instruction data. , setup data shown in the first instruction data, for example, the setting data shown in Figure 10 Il41 is an example of the first setup data.
[0084] Furthermore, the function URL of an external function for which no execution conditions have been set is an example of second access information. Therefore, Server 3, indicated by the function URL, is an example of a second server. The servers indicated by the URLs are not limited to the same server 3; they can also indicate different servers. Also, the instruction data indicated by the function URL of "Print Settings (Eco Mode)" is Similar to the instruction data 32, this is instruction data that instructs the download and configuration of the configuration file. This is an example of the second instruction data. It is shown in the instruction data for "Print Settings (Eco Mode)". The configuration file shown is an example of the second setup data.
[0085] As explained in detail above, printer 1 in this configuration receives registration of registration function information 221. Printer 1 has met the execution conditions indicated by the registered function information 221. In this case, based on the function URL indicated by the registered function information 221, instruction data will be automatically sent from the server 3. Receive the instruction data. If the received instruction data is an instruction data that instructs download settings, then Linter 1 downloads the configuration file to be used for download settings based on the instruction data. Then, set up printer 1 using the downloaded configuration file. This eliminates the need for administrators to perform operations on each individual printer during setup, and management This reduces the effort required for setup by the user. It also simplifies the management of multiple printers. In this case, register the registration function information 221 for each printer and use the data for download settings. Updating the data will automatically complete the setup of multiple printers. Therefore, management Compared to when the administrator has to perform operations on each individual printer each time they set it up, this is more convenient for the administrator. The effort required for setup is reduced.
[0086] Furthermore, printer 1 in this configuration can perform multiple processes. It is possible to execute download settings that support multiple processes, and each download setting Parameters and other information can be stored in memory 12 for each corresponding process. Printer 1 is a print process Even if the user changes the print parameters used, the download settings will still work. It allows you to automatically revert print parameters to their original state. It also allows you to manage multiple printers. In some cases, it becomes possible to standardize the print parameters stored in those printers.
[0087] Furthermore, printer 1 uses S for HTTPS communication processing according to the download settings. The SL server certificate can be set up. The administrator can register multiple printers using the information provided in the 22 file. 1. Register an external function to automatically download and configure SSL server certificates. That's all you need to do. From now on, the administrator just needs to keep the latest SSL server certificate stored on server 3, etc. Then, the SSL server certificate is automatically downloaded and configured on each printer. Furthermore, this printer 1 can perform not only download settings but also download printing. Yes, printer 1 is highly convenient.
[0088] Furthermore, in this configuration, multiple external functions can be registered in the registered function information 221, and the external functions Since you can set execution conditions for each item, for example, you can set them at the appropriate time for each item to be set up. Setup can be performed. Furthermore, in this configuration, execution conditions can be registered for automatic setup. External functions to power up, and external functions that accept manual setup without registering execution conditions. Both functions and can be registered, allowing for different uses depending on the purpose. Manual setup External functions that accept requests can be set up at any time the user chooses. This is possible. Since the user can select the setup target during manual setup, they can choose as they wish. You can set up any information at that time.
[0089] This embodiment is merely illustrative and does not limit the present invention in any way. The technologies disclosed herein may, of course, be improved or modified in various ways without departing from their essence. This is possible. For example, printer 1 is not limited to a single-function printer, but can also be a multifunction printer, copier, F This is applicable to devices such as AX machines that have both printing and network-based communication capabilities. That is the case.
[0090] Furthermore, in this configuration, printer 1 also allows you to set print parameters as a download setting. It was stated that SSL server certificate configuration is also possible, but it would be acceptable if only one of them were possible. Also, manual download settings are possible, but printer 1 is download You can choose to have the system perform the settings automatically only and not accept manual execution commands. Alternatively, It may be possible to configure whether or not to accept manual execution instructions. By doing so, the user can set printer 1 at any time they choose. In addition to download settings, there are also external functions that can be executed automatically based on execution conditions. You can.
[0091] Furthermore, while this example uses a JSON file as the configuration file, it is not limited to this. For example, there may be a configuration file in XML format. Also, in this form, the configuration file As an example of a binary file configured by a file, I showed an SSL server certificate. This is not the only example. For example, a configuration file that includes the token as the binary file to be configured. It's okay to have Ill.
[0092] Furthermore, in this configuration, external functions that are automatically started based on execution conditions will display Although it was stated that instructions should not be included, they may be included. For example, that the user is standing in front of printer 1. There may be an external function that is triggered when the detection of [a certain event] occurs.
[0093] Furthermore, in this configuration, the download printing process involves downloading all files to be printed. The procedure described involves printing after the download is complete, but this is not the only option. For example, Printer 1 downloads before all files to be printed have finished downloading. You can start printing based on the completed portion and run the download and printing in parallel.
[0094] Furthermore, in any flowchart disclosed in the embodiments, any multiple steps Multiple processes in the process can be executed in any order, provided that no inconsistencies occur in the process content. It can be executed, or in parallel.
[0095] Furthermore, the processing disclosed in the embodiments can be performed using a single CPU, multiple CPUs, ASICs, etc. It may be run on any hardware, or a combination thereof. Also, in the embodiment The disclosed process is recorded on a recording medium containing a program for performing that process, and This can be realized in various ways, such as by different methods. [Explanation of symbols]
[0096] 1. Printer 3 Servers 11 CPU 12 memory 13 User Interface 14 Communication IF< / path> < / downloadprint> < / nexturl> < / nexturl> < / nexturl> < / nexturl> < / path> < / password> < / user> < / path> < / downloadsetting> < / display> < / display>
Claims
1. Communication interface, Controller and A printer equipped with, The aforementioned controller, The printer has access information and access conditions registered, and when the registered access conditions are met, it accesses the server via the communication interface based on the registered access information. Furthermore, the controller, Based on the instruction data obtained from the accessed server, setup data is obtained via the communication interface, and a download setup process is executed to set up the printer using the obtained setup data. Multiple access records can be registered, and different access conditions can be associated with each of these multiple access records. Furthermore, the controller, If the printer has the multiple access pieces registered and an access condition corresponding to any of the multiple access pieces is met, the printer accesses the server that is the source of the instruction data via the communication interface based on the access piece corresponding to the met access condition, obtains the setup data via the communication interface based on the instruction data obtained from the accessed server, and executes the download setup process to set up the printer using the obtained setup data. A printer characterized by the following features.
2. Communication interface, Controller and A printer equipped with, The aforementioned controller, The printer has access information and access conditions registered, and when the registered access conditions are met, it accesses the server via the communication interface based on the registered access information. Furthermore, the controller, Based on the instruction data obtained from the accessed server, setup data is obtained via the communication interface, and a download setup process is executed to set up the printer using the obtained setup data. Furthermore, the controller, If the instruction data obtained from the server is instruction data that instructs the download setup process, and the instruction data obtained from the server indicates the setup data to be used in the download setup process, then the download setup process is executed. If the instruction data obtained from the server is instruction data for a download print process, and the instruction data obtained from the server indicates print data to be used for the download print process, then the download print process is executed, which downloads the print data indicated in the instruction data via the communication interface and prints based on the downloaded print data. A printer characterized by the following features.
3. Communication interface, Controller and User interface and A printer equipped with, The aforementioned controller, The printer has access information and access conditions registered, and when the registered access conditions are met, it accesses the server via the communication interface based on the registered access information. Furthermore, the controller, Based on the instruction data obtained from the accessed server, setup data is obtained via the communication interface, and a download setup process is executed to set up the printer using the obtained setup data. Furthermore, the controller, The system executes an acceptance process that receives an instruction to execute a process corresponding to the registered access information via the user interface. Furthermore, the controller, When the execution instruction is received in the reception process, the system accesses the server that is the source of the instruction data via the communication interface based on the registered access information, obtains the instruction data transmitted from the server, and executes the download setup process if the obtained instruction data is an instruction data that instructs the download setup process and the obtained instruction data indicates the setup data to be used for the download setup process. In the aforementioned reception process, If multiple access pieces of information are registered in the printer, the user interface will display the multiple registered access pieces of information, and the user will select the access piece to be executed from among the multiple access pieces of information, and an instruction to execute the process corresponding to the selected access piece of information will be received. Furthermore, the controller, When an execution instruction for a process corresponding to the access information selected in the reception process is received, the system accesses the server that is the source of the instruction data via the communication interface based on the selected access information, obtains the instruction data transmitted from the server, and executes the download setup process if the obtained instruction data is an instruction data for the download setup process and the obtained instruction data indicates the setup data to be used for the download setup process. A printer characterized by the following features.
4. A printer according to claim 3, The aforementioned controller, If first access information and second access information are registered as access information, and the first access information has the access conditions registered, then, in response to the registered access conditions being met, the system accesses the first server, which is the source of the first instruction data, via the communication interface based on the registered first access information, and obtains the first instruction data transmitted from the first server. Furthermore, if the obtained first instruction data is instruction data that instructs the download setup process, and the obtained first instruction data indicates setup data to be used in the download setup process, the system obtains the first setup data indicated in the first instruction data via the communication interface, and sets up the printer using the obtained first setup data. The aforementioned controller, The system executes the reception process that receives the execution instruction for the process corresponding to the registered second access information via the user interface, and when the reception process receives the execution instruction, it accesses the second server, which is the source of the second instruction data, via the communication interface based on the registered second access information, and obtains the second instruction data transmitted from the second server, and if the obtained second instruction data is instruction data that instructs the download setup process and the obtained second instruction data indicates the setup data to be used for the download setup process, it obtains the second setup data indicated in the second instruction data via the communication interface, and sets up the printer using the obtained second setup data. A printer characterized by the following features.
5. A printer according to any one of claims 1 to 4, The aforementioned printer is capable of performing multiple processes, The process for setting up the printer includes a process for storing data used in any of the above-mentioned processes in the printer's memory. In the aforementioned download setup process, If the acquired setup data contains data to be stored in the printer's memory, the printer is set up by storing the data contained in the acquired setup data in the printer's memory. A printer characterized by the following features.
6. A printer according to claim 5, The printer is capable of performing a print operation as one of the multiple operations. In the aforementioned download setup process, If the acquired setup data includes print parameters as data to be stored in the printer's memory, the printer is set up by storing the print parameters shown in the acquired setup data in the memory. In the printing process after executing the download setup process which stores the print parameters in the memory, the printer prints using the print parameters stored in the printer's memory during the download setup process. A printer characterized by the following features.
7. A printer according to claim 5, The aforementioned printer is capable of performing HTTPS communication processing, In the aforementioned download setup process, If the acquired setup data indicates an SSL server certificate as data to be stored in the printer's memory, the printer is set up by storing the SSL server certificate indicated in the acquired setup data in the memory. In the HTTPS communication process after executing the download setup process which stores the SSL server certificate in the memory of the printer, the printer uses the SSL server certificate stored in the printer's memory during the download setup process to perform HTTPS communication. A printer characterized by the following features.
8. A printer according to any one of claims 1 to 7, The aforementioned controller, If multiple access pieces of information are registered in the printer and access conditions are registered for each piece of access information, the system determines whether the access conditions are met for each piece of access information, accesses the server that is the source of the instruction data via the communication interface based on the access information for which the access conditions are determined to be met, obtains the instruction data transmitted from the server, and executes the download setup process if the obtained instruction data is instruction data that instructs the download setup process and the received instruction data indicates the setup data to be used for the download setup process. A printer characterized by the following features.
9. A printer according to any one of claims 1 to 8, Equipped with a user interface, The aforementioned controller, When an operation instructing the registration of the access information is received via the user interface, a registration process is executed to register the access information associated with the operation. A printer characterized by the following features.
10. A printer according to any one of claims 1 to 9, The aforementioned controller, When a command instructing the registration of the access information is received via the aforementioned communication interface, a registration process is executed to register the access information associated with the command. A printer characterized by the following features.