Printing systems, printing methods, programs
The printing system automates the identification and notification of print data candidates based on schedule management, reducing the effort needed to find and print documents.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- CANON KK
- Filing Date
- 2026-04-03
- Publication Date
- 2026-07-02
AI Technical Summary
Existing systems require users to access a schedule management service to view or print documents associated with a schedule, necessitating multiple steps and effort to find relevant documents.
A printing system that includes identification means to notify users of print data candidates based on a schedule management function, allowing direct printing of selected data without additional access steps.
Reduces the effort required for users to find and print desired documents by automating the identification and notification of relevant print data.
Smart Images

Figure 2026110599000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a printing system, a printing method, and a program.
Background Art
[0002] In order to manage and share files among multiple users, it has become widespread to store files in a file server on a network. There is also a schedule management service for managing the schedules of multiple users. Each user accesses the service from their own PC or terminal to view, edit, and update their own schedules and the schedules of groups that include themselves. When setting a meeting as a schedule to be managed by the schedule management service, by attaching meeting materials or noting the storage location of the meeting materials on the file server and registering them, participants in the meeting can check the materials in advance.
[0003] Conventionally, there is a system that can easily view or print documents associated with a schedule. The system disclosed in Patent Document 1 includes an image forming apparatus, a schedule management server, and an information terminal. The image forming apparatus has a function of storing documents related to a schedule. The image forming apparatus acquires a schedule from the schedule management server, acquires a link to a document stored in association with the schedule, and creates a list of materials for each schedule. Then, the image forming apparatus registers an object for calling the list of materials on the schedule of the schedule management server. As a result, when an information terminal acquires a schedule from the schedule management server, it can acquire a schedule with an object for accessing materials related to the schedule.
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Summary of the Invention
[0005] In the system described in Patent Document 1, it was necessary to access a schedule management service, recognize the schedule, and then check the documents related to the schedule. Therefore, it was necessary to first access the schedule management to check the schedule, then check for the existence of related documents, and then make a decision such as viewing or printing. The present invention has been made in view of the above problem and aims to reduce the effort required for users to find the documents they want to print. [Means for solving the problem]
[0006] The printing system of the present invention is characterized by comprising: printing means for printing an image on paper based on print data; identification means for identifying candidates for print data; notification means for notifying a user of the identified candidates for print data at a timing based on a time set by a schedule management function; and the printing means printing an image on paper based on the print data selected by the user from the notified candidates for print data. [Effects of the Invention]
[0007] According to the present invention, the effort required for a user to find the document they want to print can be reduced. [Brief explanation of the drawing]
[0008] [Figure 1] This diagram shows an example configuration of a network-connected system. [Figure 2] This diagram shows an example of the hardware configuration that makes up the system. [Figure 3] This diagram shows an example of the software configuration that makes up the system. [Figure 4] Sequence diagram showing the process of notifying print proposals. [Figure 5] Flowchart showing the process for estimating printing candidates [Figure 6]Figure showing an example of a printing proposal screen [Figure 7] Figure showing the structure of printing proposal data [Figure 8] Flowchart for controlling the display of the printing proposal screen [Figure 9] Sequence diagram showing the process flow when accepting an operation after a printing proposal notification [Figure 10] Figure showing an example of a schedule table provided by the schedule management service [Figure 11] Figure showing the schedule details provided by the schedule management service [Figure 12] Figure showing an example of a notification setting screen for printing proposals [Figure 13] Flowchart showing the flow of the notification determination process for printing proposals [Figure 14] Sequence diagram showing the flow of the notification process for printing proposals [Figure 15] Flowchart showing the flow of the estimation process for printing candidates [Figure 16] Figure showing an example of an estimation setting screen for printing candidates [Figure 17] Flowchart showing the flow of the process of the estimation logic [Figure 18] Figure showing an example of a printing proposal screen
Mode for Carrying Out the Invention
[0009] Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. Note that the following embodiments do not limit the scope of the claims, and not all combinations of features described in the embodiments are essential for the solution of the invention.
Examples
[0010] FIG. 1 is a block diagram showing an example of the network configuration of devices connected as a printing system in this embodiment. A PC 101, an application server 102, and a multifunction printer 103 are connected to be communicable with each other via a network 100.
[0011] The PC 101, which is an information processing device, is used by a user. It has functions such as viewing and editing files shared in the file server within the multifunction peripheral 103, which is a printing device or an image forming device, via the network 100, and giving print instructions. It also has functions for viewing and editing schedules registered in the schedule management service operating on the application server 102. It also has a function of operating an application that receives print candidates from the suggestion service operating on the application server 102 and notifying the user of print proposals.
[0012] The application server 102 has the schedule management service and the suggestion service running, and can communicate with the PC 101 and the multifunction peripheral 103 via the network. The schedule management service of the application server 102 is a schedule management function for the accessing user, and has functions for viewing schedules from the PC 101 and responding to schedule addition and editing. The suggestion service has a function of communicating with the schedule management service and the file server operating on the multifunction peripheral 103 to estimate the user's print candidates and notify the PC 101.
[0013] The multifunction peripheral 103 is a device that prints received print data on actual paper using known printing technologies such as electrophotography technology and inkjet technology via the network 100. The multifunction peripheral 103 also has functions of reading a paper document via a scanner, making copies, or converting it into image data and transmitting it via Email or the like. The multifunction peripheral 103 may have only a printer function without a scanner function. The multifunction peripheral 103 also has a file server function, can manage files within the multifunction peripheral 103, and has a function of responding to file access requests from the PC 101 and the application server 102 via the network.
[0014] Figure 2 is a block diagram showing the hardware configuration of the devices connected to the system according to the present embodiment, and each device will be described below.
[0015] Figure 2(A) is a block diagram showing the schematic hardware configuration of PC101. The CPU 201 executes the software program of PC101 and controls the entire device. ROM 202 is read-only memory that stores the PC101's boot program and fixed parameters. RAM 203 is random access memory used by the CPU 201 to store programs and temporary data when controlling PC101. HDD 204 is a hard disk drive that stores system software, applications, and various data. The CPU 201 executes the boot program stored in ROM 202, expands the program stored in HDD 204 into RAM 203, and executes the expanded program to control the operation of PC101. The network I / F control unit 205 controls the transmission and reception of data with the network 110. The screen output unit 206 controls the images displayed on the display unit, display 208. The operation input unit 207 controls user input instructions received via the operation devices (operation unit), mouse 210 and keyboard 209. The CPU 201, ROM 202, RAM 203, HDD 204, network I / F control unit 205, screen output unit 206, and operation input unit 207 are interconnected, and control signals from the CPU 201 and data signals between each device are transmitted and received.
[0016] Figure 2(B) is a block diagram showing the schematic hardware configuration of the application server 102. The CPU 211 executes the software program of the application server 102 and controls the entire device. ROM 212 is read-only memory that stores the application server 102's boot program and fixed parameters. RAM 213 is random access memory used by the CPU 211 to store programs and temporary data when controlling the application server 102. HDD 214 is a hard disk drive that stores system software, applications, suggestion service software running on the server, schedule management service software, and various data. The CPU 211 executes the boot program stored in ROM 212, expands the program stored in HDD 214 into RAM 213, and executes the expanded program to control the operation of the application server 102. The network I / F control unit 215 controls the transmission and reception of data with the network 110. The application server 102 controls the display of various information and user input via remote access from a PC 101, etc., through the network I / F control unit 215. The CPU 211, ROM 212, RAM 213, HDD 214, and network I / F control unit 215 are interconnected, and control signals from the CPU 211 and data signals between each device are transmitted and received.
[0017] Figure 2(C) is a block diagram showing the schematic hardware configuration of the multifunction printer 103. The CPU 216 executes the software program of the multifunction printer 103 and controls the entire device. ROM 217 is read-only memory and stores the boot program and fixed parameters of the multifunction printer 103. RAM 218 is random access memory and is used by the CPU 216 to store programs and temporary data when controlling the multifunction printer 103. HDD 219 is a hard disk drive that stores system software, applications, and various data. The CPU 216 executes the boot program stored in ROM 217, expands the program stored in HDD 219 into RAM 218, and executes the expanded program to control the operation of the multifunction printer 103. The network I / F control unit 220 controls the transmission and reception of data with the network 100. The scanner I / F control unit 223 controls the scanning of documents by the scanner 227, which is the reading means. The printer I / F control unit 222 controls the printing process by the printer 226, which is the printing means. The printer 226 can print images onto paper based on print data. The panel control unit 232 controls the touch panel operation panel 225, controlling the display of various information and user input. The bus interconnects the CPU 216, ROM 217, RAM 218, HDD 219, network I / F control unit 220, scanner I / F control unit 223, printer I / F control unit 222, and panel control unit 221. Control signals from the CPU 216 and data signals between each device are transmitted and received via this bus.
[0018] Figure 3 is a block diagram illustrating the software modules of each device in the system in this embodiment. Below, we show an example in which a notification application 300 runs on PC 101, a suggestion service 310 and a schedule management service 330 run on application server 102, and a file server 320 runs on multifunction printer 103.
[0019] Figure 3(A) is a block diagram illustrating the software module of the notification application 300 in the PC 101 according to this embodiment. The notification application 300 shown in Figure 3 is realized by the CPU 201 executing a program loaded into RAM 203. The communication unit 301 controls the network I / F control unit 205 connected to the network 100 to send and receive data to and from the outside via the network 100. The control unit 302 controls the entire notification application 300, receiving and controlling the data received by the communication unit 301, and controlling the transmission of data to the outside via the communication unit 301. It also instructs the message generation unit 304 to generate a message based on the received data, notifies the generated message via the notification unit 303, and the reception unit 305 receives the received operation and determines the next execution action. The notification unit 303 operates to display a print suggestion notification screen on the display 208 via the screen output unit 206. The message generation unit 304 generates the screen to be notified by the notification unit 303 based on the print suggestion data 700 received by the communication unit 301. The message type is determined from the message type described in the print proposal data 700, and the message structure is decided. The configuration information to be described within the message is constructed using the information read from the print proposal data 700. The reception unit 305 determines the content of the instructions received by the operation input unit 207 when the user operates the keyboard 209 and mouse 210 on the screen notified by the notification unit 303 to the display 208, and requests the control unit 302 to perform the control according to the determination.
[0020] Figure 3(B) is a block diagram illustrating the software module of the suggestion service 310 in the application server 102 according to this embodiment. The suggestion service 310 shown in Figure 3 is realized by the CPU 211 executing a program loaded into RAM 213. The communication unit 311 controls the network I / F control unit 215 connected to the network 100 to send and receive data to and from the outside via the network 100. The control unit 312 controls the entire suggestion service 310, receiving and controlling the data received by the communication unit 311, and controlling the transmission of data to the outside via the communication unit 311. It also instructs the candidate list management unit 314 to manage the print candidate list, instructs the list creation unit 313 to create the print candidate list, instructs the priority estimation unit 317 to estimate the priority of the print candidate list, and receives notification timing of print suggestions from the notification judgment unit 316. The list creation unit 313 receives instructions from the control unit 312 and creates a list of files that the specified target user can access. The list creation unit 313 accesses the file server 320 via the communication unit 311, retrieves files managed by the file server 320 that are accessible to the target user, and registers them in the list. The management unit 314 controls the recording of the print candidate list created by the list creation unit 313 in the list storage unit 315 via the control unit 312. When the control unit 312 requests the acquisition of a list, the management unit 314 retrieves a list matching the request from the list storage unit 315 and notifies the user. The list storage unit 315 records the print candidate list in the HDD 214 and reads and rewrites it as requested. The notification determination unit 316 executes a notification determination process to determine the notification timing for print suggestions and issue a notification instruction. It receives user-specific notification settings from the control unit 312 and determines the notification timing according to the notification settings. In determining the notification timing, the management unit 316 periodically makes notification decisions using a timer (not shown) on the application server 102, or makes notification decisions based on each user's schedule via the communication unit 311. The priority estimation unit 317 reads the print candidate list and estimates the priority of the candidates recorded in the list.Priority estimation involves obtaining user information, file information and file attributes managed by file server 320, and user schedules managed by schedule management service 330, and then determining the priority for each candidate in the print candidate list based on this information.
[0021] Figure 3(C) is a block diagram illustrating the software module of the file server 320 in the multifunction printer 103 according to this embodiment. The file server 320 shown in Figure 3 is realized by the CPU 216 executing a program loaded into RAM 218. The communication unit 321 controls the network I / F control unit 220 connected to the network 100 to send and receive data to and from the outside via the network 100. The control unit 322 controls the entire file server 320, receiving and controlling the data received by the communication unit 321, and controlling the transmission of data to the outside via the communication unit 321. It also instructs the acquisition unit 323 to manage the file list managed by the file server, and instructs the management unit 324 to manage the reading and writing of files managed by the file server 320. The acquisition unit 323 receives instructions from the control unit 322, acquires the instructed content regarding the file, and generates information to send to the requester as a response. File acquisition instructions can accept requests to acquire the file itself, as well as attribute information such as the file's storage location, file format, and file size. The management unit 324 controls the acquisition of the received information from the read management unit 324. The management unit 324 receives file read and write instructions via the control unit 322 and controls reading and recording from the file storage unit 325. The file storage unit 325 records the file in the HDD 329 and performs reading and rewriting as requested.
[0022] Figure 3(D) is a block diagram illustrating the software module of the schedule management service 330 in the application server 102 according to this embodiment. The schedule management service 330 shown in Figure 3 is realized by the CPU 211 executing a program loaded into RAM 213. The communication unit 331 controls the network I / F control unit 215 connected to the network 100 to send and receive data to and from the outside via the network 100. The control unit 332 controls the entire schedule management service 330, receiving and controlling the data received by the communication unit 331, and controlling the transmission of data to the outside via the communication unit 331. It also issues instructions to the management unit 334 for schedule management, instructions to the acquisition unit 333 for acquiring requested schedules, instructions to the registration unit 337 for schedule registration, and acquires user schedule display information requested by the display unit 336. The acquisition unit 333 is the part that receives a schedule acquisition request from the communication unit 331 via the control unit 332, acquires the requested schedule from the management unit 334, acquires the schedule, and generates a response. The management unit 334 receives requests from the control unit 332 for schedule acquisition, updating, creation, deletion, etc., reads the schedule into the schedule storage unit 335, and manages the records. The schedule storage unit 335 records the schedule in the HDD 214 and reads and rewrites it as requested. The display unit 336 receives schedule display requests from the communication unit 331 via the control unit 332, acquires the schedule content, converts it into a displayable format, and performs control to return it as a response. The registration unit 337 receives schedule registration requests from the communication unit 331 via the control unit 332, verifies the consistency of the registration content, and instructs the management unit 334 to record.
[0023] Figure 4 is a sequence diagram illustrating the overall processing flow in the system according to this embodiment, from when the suggestion service 310 determines the timing of the notification, estimates the print candidates, and displays the print candidate list on the PC.
[0024] In this embodiment, a PC 101, an application server 102, and a multifunction printer 103 operate on the system. PC 101 is an information terminal operated by the user and runs a notification application 300 that displays a list of print candidates. Application server 102 runs a suggestion service 310 that determines the timing of print suggestion notifications and estimates print candidates, and a schedule management service 330 that manages the user's schedule. Multifunction printer 103 runs a file server 320 where files are stored and file sharing between devices is performed, and also receives user operations and print commands and controls printing.
[0025] In this embodiment, the PC 101, application server 102, and multifunction printer 103 are separate devices, but the suggestion service 310 and schedule management service 330 may be integrated into the multifunction printer 103. Furthermore, the file server 320 running on the multifunction printer 103 may be run on the application server 102, and there are no particular limitations. Also, the suggestion service 310, file server 320, and schedule management service 330 may run on independent servers, or on other on-premise servers or cloud services.
[0026] This sequence of processes is executed by devices present in the system. The processing on the PC is executed by a notification application 300, which is run by a control program read from ROM 202 and loaded into RAM 203, on the CPU 201 of PC 101. The processing on the application server is executed by a suggestion service 310 and a schedule management service 330, which are run by a suggestion service 310 and a schedule management service 330, which are run by a control program read from ROM 202 and loaded into RAM 203, on the CPU 201 of application server 102. The processing on the multifunction printer is executed by a control program read from ROM 202 and loaded into RAM 203, on the CPU 201 of multifunction printer 103.
[0027] The sequence begins when the suggestion service 310 on the application server 102 makes a determination to issue a notification.
[0028] In S401, the suggestion service 310 performs a notification decision process. The details of the notification decision process will be described in detail later using Figure 13. If the notification decision process determines that a notification process should be performed, the process proceeds to S402.
[0029] In S402, the suggestion service 310 obtains information about the user performing the print candidate estimation. The suggestion service 310 reads the information of users who have previously registered for print candidate notifications and proceeds to S403. The user information obtained here may be obtained from a service that manages user information for PC 101 or multifunction printer 103, for example.
[0030] In S403, the suggestion service 310 requests a list of accessible files that a user can access from the file server 320 on the multifunction printer 103, using the user information obtained in S402, and proceeds to S404. Here, Table 1 shows the contents registered in the accessible file list. The accessible file list is generated for each user and is a list of files and folders that the user can access. It records the name, type, and location information of the files and folders on the file server 320.
[0031] [Table 1]
[0032] In S404, the file server 320 generates a list of accessible files that the user can access based on the received user information and notifies the requesting suggestion service 310 of this list as a response. The suggestion service 310 records the received data list in RAM 213 and proceeds to S405.
[0033] In S405, the suggestion service 310 reads the list of accessible files recorded in S404 and determines whether each file on the list is a candidate for printing. Here, an ID is generated to uniquely identify the files that are candidates for printing, and a list of candidate files for printing is created, recording the file ID, name, type, and location on RAM 213, before proceeding to S406. The determination of whether a file is a candidate for printing is made based on the file type, such as txt, word, or pdf format, which is used for printing. The determination of whether a file is a candidate for printing can also be made based on factors other than file type, such as file name or file location.
[0034] In S406, the suggestion service 310 reads the print candidate file list stored in RAM 213, requests the file server 320 to retrieve the attributes of each file in the print suggestion file list, and proceeds to S407. The file attribute information requested here includes the file modification date and time, creator, page settings, and number of pages. It is possible to request attributes individually, or to request the retrieval of all information managed as file attribute information at once.
[0035] In S407, the file server 320 obtains file attribute information for each requested file and notifies the suggestion service 310 as a response. The suggestion service 310 adds the received file attribute information to the print candidate file list, saves it on HDD 214, and proceeds to S408. Here, the print candidate file list is explained using Table 2. The print candidate file list is a list that records files that S404 determined to be printable from the accessible file list. It records the ID that uniquely identifies the file generated in S404, as well as its name, type, and location. It also records the file attribute information obtained in S407. Here, the file's modification date and time, creator, page settings, and number of pages are recorded. Depending on the file type, page settings or number of pages may not exist; in that case, a value indicating that it is not a target is registered.
[0036] [Table 2]
[0037] In S408, the suggestion service 310 performs print candidate estimation processing. Details of the print candidate estimation processing will be described in detail later using Figure 5. After completing the print candidate estimation processing, the estimation result list is saved to HDD214 and the process proceeds to S409. The estimation result list is explained using Table 3. The estimation result list records the ID that identifies the file in the print candidate estimation processing, the priority of each file which is the result of the estimation processing, and the reason for priority which indicates the information used to determine the priority. Here, the priority is described using a criterion where the value can be between 0 and 10, with a higher number indicating a higher priority, and 0 is treated as a value that is not considered as a print candidate. The reason for priority is determined by the print candidate estimation processing, but here, since the priority is determined by the schedule, the relevant schedule information is described. However, the priority in the print candidate estimation processing may be determined by the content of the estimation processing and is not limited to the criteria described here.
[0038] [Table 3]
[0039] In S409, the suggestion service 310 obtains the top predetermined number of items from the estimation result list saved as a result of the print candidate estimation process in S408, and then obtains the file information included in the predetermined items from the print candidate file list to generate a print suggestion list. This makes it possible to identify print data candidates from the data set in association with the user and time in the schedule management function. The generated print suggestion list is saved on RAM 213 and proceeds to S410. Here, the number of items in the print target list may be changed according to the number of items in the candidate list, or the number of print target lists may be set by the user and that number may be used. Table 4 shows an example of a print suggestion list (a list of data candidates for printing). The ID, name, type, and location of the file decided as the print suggestion target (candidate for print data) are obtained from the print candidate file list, and the priority reason is obtained from the estimation result list to generate it.
[0040] [Table 4]
[0041] In S410, the suggestion service 310 generates print suggestion data using the print target data stored in the print suggestion list and proceeds to S411. The data structure of the print suggestion data is shown in detail in Figure 7.
[0042] In S411, the suggestion service 310 sends print suggestion data to the notification application 300 installed on PC101, and proceeds to S412. This allows for notification of print data candidates (print suggestion list) based on the notification timing set in the notification settings screen 1201 in Figure 12. Note that the example in Figure 4 describes an example where print data candidates (print suggestion list) are identified when the notification timing arrives (when the notification judgment process determines that the notification process should be executed), and then the notification process is executed, but this is not the only example. For example, print data candidates may be identified in advance, and when the notification timing arrives (when the notification judgment process determines that the notification process should be executed), the identified print data candidates can be notified immediately.
[0043] In S412, the notification application 300 executes a process to display a print suggestion screen based on the notified print data candidates (print suggestion data). The details of the process for displaying the print suggestion screen will be described in detail later using Figure 8. After displaying the print suggestion screen, this sequence ends.
[0044] Figure 5 is a flowchart illustrating the print candidate estimation process in S408 of Figure 4. This process is executed by the CPU 211 on the application server 102, using a suggestion service 310 and a schedule management service 330, which operate using control programs read from ROM 212 and loaded into RAM 213.
[0045] In S501, the suggestion service 310 requests the schedule management service 330 to retrieve the schedule list of the target user. Once the schedule management service 330 responds with the schedule list, it records it in RAM 213 and proceeds to S502. The schedule list requested from the schedule management service 330 can be obtained by specifying only the user, or by specifying a period, such as appointments within one week from the acquisition date.
[0046] In S502, the suggestion service 310 determines whether there are any unselected schedules in the schedule list recorded on RAM 213. If there are unselected schedules, the process proceeds to S503; otherwise, it proceeds to S510.
[0047] In S503, the suggestion service 310 selects one unselected schedule from the schedule list in RAM213 that is closest in start date to the acquisition date, and proceeds to S504.
[0048] In S504, the suggestion service 310 collects information related to the files registered in the schedule information of the selected schedule and creates a document list. The document list is created by obtaining the files recorded in the document items of the schedule information, and if the information described in the detailed information includes information about the file's storage location, it is created from that storage location information. If a folder is specified as the storage location information in the detailed information, the suggestion service 310 may also perform a process to obtain a list of files stored in that folder from the file server 320. After creating the document list and recording it in RAM 213, the process proceeds to S505.
[0049] In S505, the suggestion service 310 determines whether there are any unselected files in the list of materials recorded in RAM 213. If there are unselected files, the process proceeds to S506. If there are no unselected files, the list of materials is discarded from RAM 213, and the process proceeds to S502.
[0050] In S506, the suggestion service 310 selects one unselected file from the list of documents recorded in RAM213 and proceeds to S507.
[0051] In S507, the suggestion service 310 reads the print candidate file list from HDD214, searches for the file selected in S506 in the print candidate file list, reads the file attribute information of that file, and proceeds to S508.
[0052] In S508, the suggestion service 310 determines the priority based on the schedule information associated with the selected file and the read file attribute information. The priority determined here is recorded in RAM213 as an estimated result list along with the file ID, and the process proceeds to S509.
[0053] In S509, the suggestion service 310 determines the reason for the priority determined in S508. Here, the reason for priority is determined to be information indicating that the information was recorded in relation to the schedule, and is determined from the schedule information and file attribute information. For example, if a file was registered as an attachment to Meeting A, which started at 15:00 on October 18, 2021, the reason for priority would be information such as "10 / 18 15:00 Meeting A materials". The reason for priority determined here is recorded in the reason for priority item of the estimated result list, and the process returns to S505.
[0054] In S510, the suggestion service 310 sorts the list of estimated results stored in RAM213 according to the priority settings and proceeds to S511. Candidates that have not been given a priority setting are judged to have a lower priority than candidates that have been given a priority setting.
[0055] In S511, the suggestion service 310 saves the estimated result list sorted in S510 to HDD214, and then terminates this flowchart.
[0056] Figure 6 shows an example of a print suggestion screen that notification application 300 displays to the user, and it is shown on the PC101's display. This print suggestion screen may also be displayed as a pop-up window on the PC101, or as a notification in a chat application or collaboration tool running on the PC101. In other words, notification application 300 can be a chat application, and when print data candidates are notified to this chat application, the print data candidates will be displayed in the chat application's talk room. When a notification is sent to a chat application installed on the PC101, the print data candidates are sent to the chat server providing the chat service. The chat server then sends information about the talk room where the print data candidates were posted to the chat application on the PC101.
[0057] The print suggestion screen 600 is a selection screen consisting of a print suggestion file display area 601, multiple print suggestion file information 602 within the print suggestion file display area 601, a button to see the next candidate 606, and a notification settings button 607. The print suggestion file display area 601 is the area that displays the print suggestion file information 602, and the number of print suggestion file information 602 to display is determined based on the print suggestion data notified in S410. Here, an example of displaying four print suggestion file information 602 is shown. The print suggestion file information 602 is an area that is displayed one per file notified as a print suggestion, and consists of the suggested file name 603, suggestion information 604, and file operation buttons 605. The file name 603 and suggestion information 604 are displayed based on the information in the print suggestion data. The file operation buttons 605 are buttons to select when you want to perform an operation on the target file, and you can give instructions such as retrieving the file, opening the file, or printing the file as operations on the target file. The "View Next Candidate" button 606 is used to instruct the notification application 300 to view next candidates when you want to see print suggestions other than the files displayed in the print suggestion file display area 601. The "Notification Settings" button 607 is used to instruct the notification application 300 to configure print suggestion notification settings. Print suggestion notification settings will be described in detail later using Figure 12.
[0058] Figure 7 shows an example of the data structure for print suggestion data. Print suggestion data 700 is a single data structure that records the contents of a single print suggestion notification. An example of output in JSON format is shown, but the format is not limited as long as one notification is represented by one data structure. Print suggestion data 700 consists of basic information 701 and print suggestion information 702. Basic information 701 includes the type of data and the date and time the data was sent. Print suggestion information 702 contains the number of files listed as print data candidates, the ID, name, format, and location of the files to be displayed as print data candidates, and the reason for listing them as print candidates. The file information in the print suggestion information can register multiple print candidates in a list, and the number of entries corresponds to the number of files. If there are four print data candidates stored, four documents will be displayed as shown in the image in Figure 6. The number of print data candidates can be any number, the number can be changed within the suggestion service 310 according to the estimated print candidate results, and the user can set the number of print candidates to be notified in a single notification.
[0059] Figure 8 is a flowchart illustrating the process of displaying the print suggestion screen in S412 of Figure 4. This process is achieved when the CPU 201 on the PC 101 executes a notification application 300 that runs on a control program read from ROM 202 and loaded into RAM 203.
[0060] In S801, the notification application 300 reads the print suggestion data received from the suggestion service 310 from RAM 203 and proceeds to S802.
[0061] In S802, the notification application 300 reads the print suggestion information 702 necessary for the print suggestion screen from the print suggestion data. Then, it constructs the print suggestion screen 600 based on the read print suggestion information 702, records the constructed screen data in the RAM 203 area used for display by the notification application 300, and proceeds to S803.
[0062] In S803, the notification application 300 displays the print suggestion screen 600 configured in RAM 203 on the display 208 via the screen output unit 206, and then proceeds to S804.
[0063] In S804, the notification application 300 waits for user input to the print suggestion screen 600 via the operation input unit 207, and then this flowchart ends.
[0064] Figure 9 is a diagram illustrating the sequence that occurs when, at step S412 in Figure 4, the user is shown the print suggestion screen 600 in Figure 6, and then an operation is received from the user.
[0065] The sequence begins with the notification application 300 on PC101 displaying the print suggestion screen 600 of S412. Subsequent sequences, from S901 to S906, describe the actions taken when the button 606 to see the next candidate on the print suggestion screen 600 is pressed.
[0066] In S901, the notification application 300 receives an operation from the user via the operation input unit 207. The reception unit 305 evaluates the received operation and determines that it has received an instruction to press the "View Next Candidate" button 606, and proceeds to S903.
[0067] In S902, the notification application 300 sends a request to the suggestion service 310 to view the next print candidate. Once the suggestion service 310 receives the request to view the next candidate, the process proceeds to S903.
[0068] In S903, the suggestion service 310 executes the process of determining the next print suggestion list. The suggestion service 310 removes the items selected as the print suggestion list from the estimated result list saved in S511. Then, from the remaining items, it obtains a predetermined number of items with higher priority in the estimated result list to create the next print suggestion list, saves it in RAM213, and proceeds to S904.
[0069] In S904, the suggestion service 310 generates print suggestion data using the next print suggestion list saved in S904, and proceeds to S905.
[0070] In S905, the suggestion service 310 sends the next print suggestion data to the notification application 300 installed on PC101, and proceeds to S906.
[0071] In S906, the notification application 300 displays the print suggestion screen 600 based on the next notified print suggestion data. At this point, the process for displaying the print suggestion screen is performed as described in Figure 8.
[0072] The sequence up to this point demonstrates the process of receiving a print suggestion notification and requesting the next print suggestion that is not included in the current suggestion. After this, it is possible to repeat the process from S901 by selecting the "See next candidates" button 606 again and request yet another print suggestion.
[0073] Next, the actions taken when printing is initiated from the file operation button 605 of a specific print suggestion file information 602 on the print suggestion screen 600 are described in S907 to S911.
[0074] In S907, the notification application 300 receives a selection from the user via the operation input unit 207 from among the displayed print data candidates, and receives a print command for the selected print data. The receiving unit 305 determines that a print command has been received and proceeds to S908.
[0075] In S908, the notification application 300 instructs the suggestion service 310 to print the target file. Once the suggestion service 310 receives the print command, the process proceeds to S909.
[0076] In S909, the suggestion service 310 searches for the file for which a print execution command has been received in the list of print candidate files and records the print execution information. Then, from the file information of the file for which a print execution command has been received, it identifies the location of the file on the file server 320, records the file location in RAM 213, and proceeds to S910.
[0077] In S910, the suggestion service 310 instructs the multifunction printer 103 to print, specifying the location of the target file, and then proceeds to S911.
[0078] In step S911, the multifunction printer 103 receives a print command for a file, retrieves the target file from the file server 320, executes the print command, and then terminates this sequence.
[0079] By issuing a print command from the notification application 300, a record of the print request can be left in the print candidate list on the suggestion service 310, making it possible to determine the original priority based on the recorded information.
[0080] Figure 10 shows an example of the display of the schedule table 1000 that the schedule management service 330 sends to the PC after receiving a schedule request. The dates are displayed in columns, with each column separated by time. The areas enclosed in thick borders and displaying text indicate the date and time when an appointment is registered. Upon receiving a selection of these appointments, the detailed settings screen for the selected appointment is displayed.
[0081] Figure 11 shows an example of the detailed settings screen for an appointment. Similar to Figure 10, it is received by PC 101 from the schedule management service 330 and displayed on display 208. The appointment 1100 has the following settings: appointment title 1101, meeting time 1102, meeting place 1103, attendees 1104, materials 1105, detailed information 1106, and a save button 1107. The appointment title 1101 is displayed in the appointment display of the schedule table 1000, and is displayed separated by the start time and end time of the meeting time 1102. The same appointment is registered for each user registered in attendees 1104. In the materials 1105 field, you can either directly attach meeting materials or register a link to materials on the file server. One field for materials is displayed, but the number of fields displayed can be changed according to the number of attachments. Detailed information 1106 can be used to enter detailed information about the appointment. In this field, you can also enter files used for the appointment or links to folders where the materials are located. Pressing the save button 1107 notifies the user to save the entered information as an event, and it is saved to the HDD 214 of the application server 102 where the schedule management service 330 is running. The saved event information can then be viewed by users registered as attendees. In this way, the schedule management function allows users to register one or more data entries associated with a schedule, including start and end times. Information indicating the user who registered this schedule is also registered and associated with it.
[0082] Figure 12 shows an example of the print suggestion notification settings screen, which is displayed on the screen. The control unit 302 of the notification application saves the configured items to the HDD 204 on the PC 101, and also notifies the suggestion service 310 via the communication unit 301, registering the print suggestion notification settings and the user who made the settings.
[0083] The print proposal notification settings screen 1201 has a setting to receive notifications 1202 and a setting to the notification timing 1205. The setting to receive notifications 1202 allows selection of either an ON button 1203 or an OFF button 1204. Selecting the ON button 1203 enables the setting of the notification timing 1205 and the notification content 1217, while selecting the OFF button 1204 makes it impossible to set the notification timing 1205 and the notification content 1217. When the setting of the notification timing 1205 and the notification content 1217 is impossible, it is acceptable to indicate that the setting is unavailable by shading the displayed content. The notification timing setting 1205 has settings for notification at a specified time 1206, notification before the scheduled time 1210, and notification upon update 1214. The notification content setting 1217 has a setting for the number of print proposal files 1218.
[0084] The "Notify at a specified time" setting 1206 is for notifying users of print suggestions at a specific time, and includes an ON button 1207, an OFF button 1208, and a "Specified time" setting 1209, which is only active when the ON button 1207 is selected. The "Specified time" setting 1209, which can be set when the ON button 1207 is selected, allows users to specify the time at which print suggestion notifications will be sent. The "Notify before scheduled event" setting 1210 is for notifying users of print suggestions before the start of an event registered in the schedule management service 330, and includes an ON button 1211, an OFF button 1212, and a "Pre-start time" setting 1213, which is active when the ON button 1211 is selected. The "Pre-start time" setting 1213, which can be set when the ON button 1211 is selected, is an item that allows users to set the time to be notified before the start time of an event on the schedule management service that they have registered. This makes it possible to notify users of print data candidates at a timing based on the start time of the meeting set in the schedule management function.
[0085] The notification setting 1214, which responds to updates, is for notifying users when documents associated with appointments registered in the schedule management service are added or updated. It has an ON button 1215 and an OFF button 1216. The notification content setting 1217, print suggestion file number 1218, is for specifying the number of files to notify when print suggestions are made. The number of files to notify can be set in the file number setting 1219. Based on this setting, candidate print data can be notified. If it is set to "4" as shown in Figure 12, four candidate print data can be notified. If there are more candidate print data than the set number, candidates will be selected in order of priority so that there are four.
[0086] If the Cancel button 1220 is pressed, the settings currently configured on the print suggestion notification settings screen 1201 will be discarded and the screen will be closed. If the OK button 1221 is pressed, the settings currently configured on the print suggestion notification settings screen 1201 will be saved and the screen will be closed.
[0087] Figure 13 is a flowchart showing the setting of the notification decision process in step S401 of Figure 4 in this embodiment. This series of processes is performed by the CPU 211 on the application server 102 executing the suggestion service 310, which operates using a control program read from ROM 212 and expanded into RAM 213.
[0088] In S1301, the notification determination unit 316 determines whether the target user has the setting to receive notifications for print suggestions turned ON or OFF. If the setting is ON, proceed to S1302; otherwise, this flowchart ends.
[0089] In S1302, the notification determination unit 316 obtains the current time, stores it in RAM 213, and proceeds to S1303.
[0090] In S1303, it is determined whether the notification setting 1206 for the specified time in the print suggestion notification settings is ON or OFF. If the notification setting 1206 for the specified time is ON, proceed to S1304; otherwise, proceed to S1305.
[0091] In S1304, the notification determination unit 316 compares the time set in the specified time setting 1209 of the notification setting 1206 with the current time stored in RAM 213 in S1302. If the current time has passed the specified time, the process proceeds to S1312; otherwise, it proceeds to S1305.
[0092] In S1305, the notification determination unit 316 determines whether the notification setting 1210 is ON before the scheduled notification setting for the print proposal. If the notification setting 1210 is ON before the scheduled notification setting, the process proceeds to S1306; otherwise, it proceeds to S1308.
[0093] In S1306, the notification determination unit 316 obtains the target user's schedule for the day from the schedule management service 330 via the communication unit 311, and proceeds to S1307.
[0094] In S1307, the notification determination unit 316 compares the time obtained by subtracting the time set in the pre-scheduled notification setting 1210 (pre-scheduled time setting 1213) from the start time of the target user's scheduled appointment for the day with the current time stored in RAM 213. If the current time has passed, the process proceeds to S1312; otherwise, it proceeds to S1308.
[0095] In S1308, the notification determination unit 316 determines whether the notification setting 1214 is ON or OFF in response to the update of the notification setting for the print proposal. If the notification setting is ON, the process proceeds to S1309; otherwise, it proceeds to S1313.
[0096] In S1309, the notification determination unit 316 obtains any updated schedules from the schedule management service 330 via the communication unit 311 and proceeds to S1310.
[0097] In S1310, the notification determination unit 316 obtains the day's schedule from the schedule management service 330 via the communication unit 311 and obtains a list of documents associated with the schedule. The notification determination unit 316 then checks whether there have been any updates to the document list by obtaining the update date of the documents in the document list from the file server 320 via the communication unit 311, determining whether there have been any updates to the documents since the last check, and proceeding to S1311.
[0098] In S1311, the notification determination unit 316 checks whether it determined in S1309 and S1310 that an update had occurred. If it determined that an update had occurred, it proceeds to S1312; if it determined that there was no update, it proceeds to S1313.
[0099] In S1312, the notification determination unit 316 determines that it is time to notify the print proposal, requests the control unit 307 to notify the target user of the print proposal, and proceeds to S1313.
[0100] In S1313, the notification determination unit 316 determines the scheduled time for the next notification determination process, registers a timer to start the notification at that scheduled time, and then terminates this flowchart. Although the timing of the notification determination is shown by registering and executing a timer as the execution of the notification determination process, the system may also accept the execution of the notification determination process from an external source according to the settings.
[0101] Through the operation of the system described above, users can receive notifications of a list of printable documents at a time determined by the system, and decide whether or not to print based on the content of the notification. This reduces the time users spend checking their schedules or searching for the location of documents in order to find the documents they want to print.
[0102] In Example 1, the file server 320 was described in an example where the multifunction printer 103 has the file server 320, but this is not the only example. For example, the application server 102 may have the file server 320. In that case, the candidate print data is stored in the application server 102, and the application server 102 executes the processes S403, S404, S406, and S407 in Figure 4. [Examples]
[0103] In the first embodiment, print candidates were estimated based on schedule information registered in the schedule management service 330, and notifications were sent to the notification application 300 on the user's PC. However, the documents that the user wants to print are not always registered in association with a schedule, and it takes time to find documents that are not registered in the schedule.
[0104] In the second embodiment, we will explain how to control the estimation of print candidates by using information such as the location of files on the file server, file operation and update history, and print history, in addition to the schedule management service.
[0105] In this embodiment, the network configuration diagram, the hardware configuration of the information processing device, the software configuration, and other parts that are not described are the same as in Embodiment 1.
[0106] Figure 14 is a sequence diagram illustrating the overall processing flow in the system according to this embodiment, from when the suggestion service 310 determines the timing of the notification, estimates the print candidates, and displays the print suggestion screen on the PC.
[0107] In this embodiment, the system configuration is the same as in Figure 4 of Embodiment 1, and each service is assumed to operate on equivalent equipment. Furthermore, the series of processes in this sequence are executed by the equipment present in the system. Processing on the PC is performed by a notification application 300, which is operated by the CPU 201 on PC 101 using a control program read from ROM 202 and expanded into RAM 203. Processing on the application server is performed by a suggestion service 310 and a schedule management service 330, which are operated by the CPU 201 on application server 102 using a control program read from ROM 212 and expanded into RAM 213. Processing on the multifunction printer is performed by the CPU 216 on multifunction printer 103 using a control program read from ROM 217 and expanded into RAM 218.
[0108] The sequence begins with the suggestion service 310 on the application server 102 making a determination to notify. S401 to S407 execute the same processing as in Figure 4. In S407, if the suggestion service 310 receives a response, it proceeds to S1401.
[0109] In S1401, the suggestion service 310 performs print candidate estimation processing. This print candidate estimation processing executes multiple estimation logics to estimate print candidates. The details of the processing will be described in detail later using Figure 15. After the print candidate estimation processing is completed, the aggregated list of estimation results is saved to HDD214, and the process proceeds to S1402.
[0110] In S1402, the suggestion service 310 retrieves the top predetermined number of items from the summary list stored in HDD214. Then, based on the file ID and priority logic included in the predetermined items, it processes the logic described in the priority logic to obtain the priority reason for each file, records it on RAM213, and proceeds to S1403. For each print candidate, the logic with the highest priority among the estimation logic is determined, and the reason for candidate selection is determined based on that logic. For example, if the estimation logic based on the schedule has a high priority, the candidate estimation reason will be recorded as "Materials for Meeting A at 10 / 18 15:00" based on the schedule. Alternatively, if the estimation logic prioritizing related files of previously printed files has a high priority, the candidate estimation reason will be recorded as "Related files of BBBB.pptx previously printed" based on the previously printed file.
[0111] In S1403, the suggestion service 310 obtains the number of top predetermined items from the aggregated list saved as a result of the print candidate estimation process in S1401, and then obtains the file information included in the predetermined items from the print candidate file list to generate a print suggestion list. Here, the priority reason for the print suggestion list is recorded as the priority reason saved in S1402. The generated print suggestion list is saved on RAM 213, and the process proceeds to S410. Here, the number of items in the print target list may be changed according to the number of items in the candidate list, or the number of items in the print target list may be set by the user and that number may be used.
[0112] From S410 onward, the same process as in Figure 4 is executed, and this flowchart is terminated.
[0113] Figure 15 is a flowchart illustrating the print candidate estimation process in S1401 of Figure 14. This process is executed by a suggestion service 310, which is run by a control program read from ROM 212 and loaded into RAM 213 by the CPU 211 on the application server 102.
[0114] In S1501, the suggestion service 310 reads the settings configured through the settings screen 1600. The estimation logic settings screen will be described in detail later in Figure 16. From the read estimation logic settings, the list of estimation logics that are set as valid and the contents of the settings for each estimation logic are recorded in RAM 213, and the process proceeds to S1502.
[0115] In S1502, the suggestion service 310 determines whether there are any unselected estimated logics in the priority logic list recorded on RAM 213. If there are unselected estimated logics, the process proceeds to S1503; otherwise, it proceeds to S1506.
[0116] In S1503, the suggestion service 310 selects the highest priority estimated logic that is not selected from the priority logic list in RAM213, and proceeds to S1504.
[0117] In S1504, the suggestion service 310 performs the print candidate estimation process using the selected estimation logic. A detailed explanation of the estimation logic is provided in Figure 17, where some of the logic is described later. The estimation result list created by the estimation logic execution process is obtained, and the process proceeds to S1505.
[0118] In S1505, the suggestion service 310 associates the selected estimation logic with the estimation result list obtained in S1504 and stores it in RAM 213, then proceeds to S1502.
[0119] In S1506, the suggestion service 310 reads the list of estimated results corresponding to each logic recorded in RAM 213 and records it in the aggregation list. Then, it calculates an aggregate value from the priority of each logic on the aggregation list and records it in the aggregation list. Details of the aggregation list will be described later using Figure 18. The aggregation list is recorded in RAM 213, and the process proceeds to S1507. For aggregation here, it is acceptable to simply calculate the aggregate value by summing each estimated logic, or to weight the estimated logic based on its rank before aggregation.
[0120] In S1507, the suggestion service 310 reads the summary list recorded in RAM213, identifies the estimation logic that gives the highest priority to each file listed in the summary list, and records it as the highest priority logic in the summary list. Once the highest priority logic for each file has been recorded, the summary list is updated and recorded in RAM213, and the process proceeds to S1508.
[0121] In S1508, the suggestion service 310 reads the summary list recorded in RAM213 and sorts the list in order based on the aggregated values in the summary list. Here, if the aggregated values are the same, the order is determined according to the priority of the estimation logic with the higher priority. Note that the method for determining the order when the aggregated values are the same is not limited to this method; the order may also be determined by comparing the minimum priority value among the estimation logics in a given file, or by determining the order based on the file name. The summary list sorted in order based on the aggregated values is saved in RAM213, and the process proceeds to S1509.
[0122] In S1509, the suggestion service 310 saves the sorted summary list to HDD214 on application server 102 and terminates this flowchart.
[0123] Table 5 shows an example of the summary list used in this embodiment. The summary list consists of the ID of the file to be printed, the priority of each estimation logic for that file, an aggregate value which is the overall priority obtained by aggregating the priorities of each estimation logic, and the number of the logic that has been set to a high priority among the estimation logics.
[0124] [Table 5]
[0125] This section describes the summary list when five print candidate files exist and five estimation logics are enabled. The estimation results for each estimation logic are listed in the order of priority settings on setting screen 1600. Here, the estimation logic column may only contain columns for enabled estimation logics, and invalid estimation values may be listed as the estimation results for inactive estimation logics. The priority results for each estimation logic in the summary list are listed based on the processing performed by the estimation logic selected in S1503. The priority listed here is normalized from the priority determined by each estimation logic, with a maximum value of 10, a minimum value of 1, and 0 if the file is not a print candidate. Note that different criteria may be set for each estimation logic, and the summary value may be calculated based on the criteria of each estimation logic. In S1506, the summary value is calculated and listed from the priority results of each estimation logic. This shows the calculation method for obtaining the sum. This summary list is used to determine which files to select as print candidates based on the values of the summary value. In this example, the aggregate value for file ID 1002 is 38, the highest value, so it can be determined to be the file with the highest priority as a print candidate. Next, for files 1001 and 1003, which have the same aggregate value of 32, the order can be determined to be 1001 first, followed by 1003, based on the estimated value of logic 1, which has the highest priority among the estimation logics. The priority logic number is determined by comparing the priority of each estimation logic for each file, and selecting the estimation logic that is determined to have the highest priority. For file ID 1001, logic 1, which has a priority of 10, becomes the priority logic. When the priority of each estimation logic is the same, as in file ID 1002, the logic with the highest priority among the estimation logics is selected. Note that the selection of the priority logic is not limited to this process; it can also be determined based on the priority order of the estimation logics, or multiple logics can be registered as priority logics.
[0126] Figure 16 shows an example of the print candidate estimation settings screen, which is displayed on the display 208. For the print candidate estimation settings, the control unit 302 of the notification application 300 displays the setting values read from the HDD 204 on the PC 101 as the initial values. Operation on the setting screen 1600 is accepted via the mouse 210 and the operation input unit 207.
[0127] Selecting the enable button 1601 on the settings screen 1600 places a checkmark and applies it as the logic to be used for estimating print candidates. The priority display 1602 shows the priority order of the estimation logic 1603. In this embodiment, the estimation logic 1603 includes estimation based on schedule, estimation based on print history, estimation based on a designated save location, estimation based on update date and time, and estimation based on the usage status of other users. In this embodiment, when selecting estimation based on schedule, estimation based on print history, estimation based on a designated save location, or estimation based on the usage status of other users, the respective settings can be configured from the settings button 1604.
[0128] When each estimation logic 1603 is selected, pressing the priority increase button 1605 or the priority decrease button 1606 will change the priority order of the selected estimation logic.
[0129] When the OK button 1608 is pressed, the print candidate estimation settings currently displayed on the screen are saved as settings to the HDD 214, and the suggestion service 310 is notified of the settings and the user who set them. When the Cancel button 1607 is pressed, the print candidate estimation settings screen is exited without saving the settings displayed on the screen.
[0130] Figure 17 is a flowchart illustrating the details of the estimation logic processing that can be enabled from the print candidate estimation settings. Four estimation processes are described here, but the print candidate estimation process in Figure 5 can also be executed as one of the estimation logic processes. This process is executed by the CPU 211 on the application server 102, using a suggestion service 310 and a schedule management service 330 that operate using a control program read from ROM 212 and expanded into RAM 213.
[0131] Figure 17(A) is a flowchart illustrating the estimation logic based on print history, which is one of the estimation logic execution processes performed in S1504 of Figure 15. This process is executed by the suggestion service 310, which is run by the CPU 211 on the application server 102 and operates using a control program read from ROM 212 and expanded into RAM 213.
[0132] In S1701, the suggestion service 310 reads the list of print candidate files from HDD214, records it on RAM213, and proceeds to S1702.
[0133] In S1702, the suggestion service 310 retrieves the print history of the relevant user from the file server 320. The suggestion service 310 specifies a user to the file server 320 and retrieves the history of files that user has printed in the past from the file server 320. The retrieved print history is recorded in RAM 213, and the process proceeds to S1703. Note that the print history retrieved from the file server 320 here may include all the history held by the file server 320, or it may be retrieved by specifying the number of history entries or the period.
[0134] In S1703, the suggestion service 310 determines whether there are any unselected print histories in the print history. If there are unselected print histories, the process proceeds to S1704; otherwise, the process proceeds to S1709.
[0135] In S1704, the suggestion service 310 selects one unselected print history from the RAM213 print history that is closest to the current time, and proceeds to S1705.
[0136] In S1705, the suggestion service 310 searches the print candidate file list for files similar to the printed file listed in the selected print history and creates a list of similar files. In searching for similar files, it first identifies the date format string and the version string from the file name of the printed file listed in the print history, and determines the unique name by removing these specific parts. Then, it retrieves files from the print candidate file list that have a matching unique name and have changed the string part that takes the specific format. If multiple files are found at this stage, all of them are recorded in the list of similar files, and once the list of similar files is recorded in RAM213, the process proceeds to S1706.
[0137] In S1706, the suggestion service 310 determines the most important similar file from the list of similar files recorded in RAM213. When comparing similar files, it compares the date format and the string representing the version, and the one with the most recent date and version is designated as the most important similar file. After saving the information of the most important similar file to RAM213, the process proceeds to S1707. Here is an example of similar files and the most important similar file. The print history file is XXXX_20200305.pptx, and it is determined that the latter part, 20200305, is a string representing the date, and the unique part is XXXX and .pptx. Similar files such as XXXX_20200312.pptx and XXXX_20201005.pptx are found. At this time, the date parts of the similar files are compared, and since xxx_20201005.pptx has a newer date, it is designated as the most important similar file.
[0138] In S1707, the suggestion service 310 determines the priority of the most similar file recorded in RAM213 using the print history and file attribute information from the print candidate file list. The priority determined here is recorded in RAM213 along with the file ID as an estimated result list, and the process proceeds to S1708.
[0139] In S1708, the suggestion service 310 determines the reason for the priority determined in S1707. Here, the reason for the priority is determined to be the highest priority similar file among files similar to the printed file name in the print history. For example, if the selected file is XXXX_20201005.pptx, the reason for priority will be information such as "a similar file to print history XXXX_20200312.pptx". The reason for priority determined here is recorded in the priority reason item of the estimation result list, and the process returns to S1703.
[0140] In S1709, the suggestion service 310 sorts the list of estimated results stored on RAM 213 according to the priority settings and proceeds to S1710. At this point, candidates that have not been given a priority setting are judged to have a lower priority than candidates that have been given a priority setting.
[0141] In S1710, the suggestion service 310 saves the estimated result list sorted in S1710 to HDD214, and then terminates this flowchart.
[0142] Figure 17(B) is a flowchart illustrating the estimation logic based on the usage status of other users, which is one of the estimation logic execution processes performed in S1504 of Figure 15. This process is executed by the suggestion service 310, which is run by the CPU 211 on the application server 102 and operates using a control program read from ROM 212 and expanded into RAM 213.
[0143] In S1711, the suggestion service 310 reads the list of print candidate files from HDD214, records it on RAM213, and proceeds to S1712.
[0144] In S1712, the suggestion service 310 retrieves information on files with the highest print counts over a specified period from the file server 320. It identifies files that are frequently printed by many users from the print history recorded on the file server 320 and retrieves those files. The retrieved list of top-printed files is then recorded on RAM 213, and the process proceeds to S1713. Here, the specified period can be any period specified by the user, or it can be a default period set by the suggestion service 310. Furthermore, the determination of top-printed files can be based on a specified print count, including all files with a history of print count equal to or greater than that number, or it can be based on the top-printed files up to a predetermined number.
[0145] In S1713, the suggestion service 310 retrieves the print history of the relevant user from the file server 320. The suggestion service 310 specifies a user to the file server 320 and retrieves the history of files that user has printed and accessed from the file server 320 in the past. The retrieved print history and access history are recorded in RAM 213, and the process proceeds to S1714. Note that the print history and access history retrieved from the file server 320 here may be all the history held by the file server 320, or it may be retrieved by specifying the number of history entries or the period.
[0146] In S1714, the suggestion service 310 determines whether there are any unselected files in the list of top-printed files. If there are unselected files, the process proceeds to S1715; otherwise, the process proceeds to S1722.
[0147] In S1715, the suggestion service 310 selects the top unselected file from the list of top printed files in RAM213 and proceeds to S1716.
[0148] In S1716, the suggestion service 310 checks whether the file selected in S1715 exists in the print candidate file list. If it exists in the print candidate file list, proceed to S1717; otherwise, proceed to S1714.
[0149] In S1717, the suggestion service 310 checks whether the file selected in S1715 exists in the user's print history. If it exists in the print history, it is determined that it has already been printed and proceeds to S1714; otherwise, it proceeds to S1718.
[0150] In S1718, the suggestion service 310 checks whether the file selected in S1715 exists in the user's access history. If it exists in the access history, it determines that it is a file of interest to the user and proceeds to S1719; otherwise, it proceeds to S1720.
[0151] In S1719, the suggestion service 310 adds the access date and time information of the user to the information of the file selected in S1715, records it in RAM213, and proceeds to S1720.
[0152] In S1720, the suggestion service 310 determines the priority of the files recorded in RAM213 using the number of prints and access date and time. The priority determined here is recorded in RAM213 along with the file ID as an estimated result list, and the process proceeds to S1731.
[0153] In S1721, the suggestion service 310 determines the reason for the priority determined in S1730. Here, the reason for the priority is recorded based on the number of prints and the access date and time. For example, if there is an access history, it records information such as "Number of prints: X people, accessed on 2021 / 10 / 05", and if there is no access history, it records information such as "Number of prints: X people". The reason for the priority determined here is recorded in the priority reason item of the estimated result list, and the process returns to S1714.
[0154] In S1722, the suggestion service 310 sorts the list of estimated results stored on RAM 213 according to the priority settings and proceeds to S1723. At this point, candidates that have not been given a priority setting are judged to have a lower priority than candidates that have been given a priority setting.
[0155] In S1723, the suggestion service 310 saves the list of estimated results sorted in S1722 to HDD214, and then terminates this flowchart.
[0156] Figure 17(C) is a flowchart illustrating the estimation logic based on a predetermined storage location, which is one of the estimation logic execution processes performed in S1504 of Figure 15. This process is executed by the suggestion service 310, which is run by the CPU 211 on the application server 102 and operates using a control program read from ROM 212 and expanded into RAM 213.
[0157] In S1724, the suggestion service 310 obtains the predetermined save location setting from the estimation logic setting based on the predetermined save location of the print candidate estimation setting. The obtained predetermined save location information is then recorded on RAM 213 and the process proceeds to S1725. Here, the predetermined save location setting allows for the registration of multiple folder locations on the file server 320, and all registered save locations are read and recorded on RAM 213.
[0158] In S1725, the suggestion service 310 creates a list of folders located in a lower hierarchy than the folder specified as the designated save location. If multiple designated save locations are registered, the same process is performed for each save location to create a list of folders. The list of folders created here may include all folders. Alternatively, to reduce the number of folders, the list may be limited to folders whose creation date and time are after the last estimated logic execution date and time, or to folders created within a specified period. Furthermore, if a folder in a lower hierarchy than the designated folder contains only folders, it may not be recorded in the list, and the system may proceed to check folders in even lower hierarchies. Also, if a folder contains neither files nor folders, it does not need to be recorded in the list. Once the list of folders is created, it is saved in RAM213, and the process proceeds to S1726.
[0159] In S1726, the suggestion service 310 determines whether there are any unselected folders in the folder list. If there are unselected folders, the process proceeds to S1727; otherwise, the process proceeds to S1732.
[0160] In S1727, the suggestion service 310 selects one unselected folder from the folder list in RAM213 and proceeds to S1728.
[0161] In S1728, the suggestion service 310 creates a list of files present in the selected folder. Here, only files of the type to be printed are included in the list; folders and files that are not to be printed are removed. After creating the file list, it is recorded in RAM213 and the process proceeds to S1729.
[0162] In S1729, the suggestion service 310 sorts the list of files recorded in RAM213 by modification date, and removes files whose modification date is older than the folder creation date. After saving the information of the most recently modified file among the remaining files to RAM213, the process proceeds to S1730.
[0163] In S1730, the suggestion service 310 determines the priority of the files recorded in RAM213 using the predetermined storage location, folder list information, and file attribute information. The priority determined here is recorded in RAM213 along with the file ID as an estimated result list, and the process proceeds to S1731.
[0164] In S1731, the suggestion service 310 determines the reason for the priority determined in S1730. Here, the reason for priority is determined from the information of the specified storage location, folder list, and file information, and is judged to be the one that should be prioritized within the specified storage location. For example, information such as "updated files under folder YYYY" may be used as the reason for priority. The reason for priority determined here is recorded in the reason for priority item of the estimation result list, and the process returns to S1726.
[0165] In S1732, the suggestion service 310 sorts the list of estimated results stored on RAM 213 according to the priority settings and proceeds to S1733. Candidates that have not been given a priority setting are judged to have a lower priority than candidates that have been given a priority setting.
[0166] In S1733, the suggestion service 310 saves the estimated result list sorted in S1733 to HDD214 and terminates this flowchart.
[0167] Figure 17(D) is a flowchart illustrating the estimation logic based on the update date and time, which is one of the estimation logic execution processes performed in S1504 of Figure 15. This process is executed by the suggestion service 310, which is run by the CPU 211 on the application server 102 and operates using a control program read from ROM 212 and expanded into RAM 213.
[0168] In S1734, the suggestion service 310 reads the list of print candidate files from HDD214, records it on RAM213, and proceeds to S1735.
[0169] In S1735, the suggestion service 310 sorts the read list of print candidate files by modification date and time, records it in RAM 213, and proceeds to S1736.
[0170] In S1736, the suggestion service 310 determines the priority of files in the print candidate file list sorted in S1735, in order of newest modification date. The priority determined here is recorded in RAM213 along with the file ID as an estimated result list, and the process proceeds to S1737. Here, it is assumed that the files in the print candidate file list are assigned a priority of 10, starting with the most recently modified file, then a priority of 9, and so on, with the top 10 files having priority assigned and the rest having priority 0. Alternatively, priority could be assigned starting with the newest files and the remaining files assigned priority 1, or priority could be set by dividing the period from the current date and time.
[0171] In S1737, the suggestion service 310 determines the reason for the priority determined in S1736. Here, the reason for priority is the update date and time. For example, if there is a file with an update date and time of October 10, 2021 at 2:30 PM, the information "Updated 2021 / 10 / 10 14:30" will be used as the reason for priority. The reason for priority determined here is recorded in the reason for priority item of the estimated result list, and the process returns to S1738.
[0172] In S1738, the suggestion service 310 sorts the list of estimated results stored on RAM 213 according to the priority settings and proceeds to S1739. At this point, candidates that have not been given a priority setting are judged to have a lower priority than candidates that have been given a priority setting.
[0173] In S1739, the suggestion service 310 saves the list of estimated results sorted in S1710 to HDD214, and then terminates this flowchart.
[0174] Figure 18 shows an example of a print suggestion screen that the notification application 300 in this embodiment notifies the user of, and is displayed on the display 208 of the PC 101. This print suggestion screen may also be displayed as a pop-up screen on the PC 101, or as a notification of a chat application or collaboration tool running on the PC 101. Elements that have the same configuration as Figure 6 of Embodiment 1 are assumed to be the same and their explanation is omitted. The print candidate suggestion screen 1800 consists of a print suggestion file display area 601, multiple print suggestion file information 602 within the print suggestion file display area 601, a "View Next Candidate" button 606, a notification setting button 607, and an estimation logic setting button 1802. The print suggestion file display area 601 has the same configuration of print suggestion file information 602 as in Figure 6, and the priority reason 1801 of the print suggestion file information 602 describes the priority reason for the estimation logic that was determined to be the highest priority in the print candidate estimation process. The estimated logic setting button 1802 is a button that instructs the notification application 300 to set the estimated print candidate, and when pressed, it transitions to the settings screen 1600.
[0175] In the second embodiment described above, the system's operation allows the user to receive a notification of a print candidate list at a time determined by the system based on usage history and file characteristics other than schedule information, and to decide whether or not to print based on the content of the notification. This reduces the time the user spends searching for documents to print. Furthermore, embodiments 1 and 2 of the present invention may be implemented in combination or independently.
[0176] <Other embodiments> The present invention provides a program that implements one or more of the functions of the above-described embodiments to a system or device via a network or storage medium. It can also be implemented by a process in which one or more processors in the computer of the system or device read and execute the program. Furthermore, it can also be implemented by a circuit (e.g., an ASIC) that implements one or more functions. [Explanation of symbols]
[0177] 101 PC 102 Application Server 103 Multifunction device 300 notification applications 310 Suggestion Service 320 File Servers 330 Schedule Management Service
Claims
1. A printing method that prints an image onto paper based on print data, A means for identifying candidates for print data, A notification means for notifying the user of the identified print data candidates at a time based on the schedule management function, The printing means is characterized by printing an image onto paper based on the print data selected by the user from the notified candidates for print data.
2. The notification means notifies the information processing device of the identified candidate print data, The printing system according to claim 1, characterized in that the printing means prints the image onto paper based on the print data selected from the notified candidate print data via the operation unit of the information processing device.
3. The printing system according to claim 2, characterized in that the notification means notifies an application installed in the information processing device of the identified candidate print data, and the information processing device accepts the selection of the print data on a selection screen displayed by the application.
4. The printing system according to claim 3, characterized in that the application installed on the information processing device is a chat application.
5. The printing system according to claim 4, characterized in that the notification means notifies the candidate print data to be displayed in the chat room shown by the chat application.
6. The printing system according to any one of claims 1 to 5, characterized in that the identifying means identifies candidate print data from data set in association with the time in the schedule management function.
7. The printing system according to claim 6, wherein the identifying means identifies candidates for the print data from data set in association with the user and the time in the schedule management function.
8. The printing system according to any one of claims 1 to 7, characterized in that the notification means notifies the identified candidate print data at a timing based on the start time of the meeting set by the schedule management function.
9. The notification means further includes a setting means for setting the number of candidates for the identified print data to be notified, The printing system according to any one of claims 1 to 8, wherein the notification means notifies of the identified print data candidates based on a number set by the setting means.
10. The system further includes a determination means for determining priority among the identified candidate print data, The printing system according to any one of claims 1 to 9, characterized in that the notification means notifies that the candidates for the print data are displayed in an order based on the determined priority.
11. The printing system according to any one of claims 1 to 10, characterized in that the printing device has the printing means.
12. The printing process involves printing an image onto paper based on print data, A specific process to identify candidates for print data, A notification process in which the identified candidate print data is notified to the user at a time based on the time set in the schedule management function, The printing method is characterized in that, in the printing step, an image is printed on paper based on the print data selected by the user from the notified candidates for print data.
13. A program for causing a computer to execute each means of the printing system described in any one of claims 1 to 11.