Functional expansion device, information processing system, and control method for functional expansion device

JP7881948B2Active Publication Date: 2026-06-30SEIKO EPSON CORP

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
SEIKO EPSON CORP
Filing Date
2022-03-22
Publication Date
2026-06-30

Smart Images

  • Figure 0007881948000001
    Figure 0007881948000001
  • Figure 0007881948000002
    Figure 0007881948000002
  • Figure 0007881948000003
    Figure 0007881948000003
Patent Text Reader

Abstract

To provide a function extension device that easily achieves addition of a function not mounted on a print server without changing the configuration of the print server.SOLUTION: A function extension server 200 receives first scan data including a pattern image in which additional information is encoded and destination information indicating the destination of the first scan data, decodes the pattern image to acquire the additional information, and transmits the first scan data and additional information to the destination indicated by the destination information.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a function expansion device, an information processing system, and a method for controlling a function expansion device.

Background Art

[0002] Conventionally, a system that performs printing using the cloud has been known. For example, Patent Document 1 discloses an information processing system including a server and a printing device capable of communicating with the server. The server transmits print instruction information for instructing printing of teaching material content and answerer identification information for identifying an answerer who answers the teaching material content. When the printing device receives the print instruction information, it generates a printed matter in which the teaching material content and the answerer identification information are printed.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] However, in a system that performs printing or scanning using the cloud, there is a desire to obtain additional information added to scan data without changing the configuration of an existing server.

Means for Solving the Problems

[0005] The present disclosure provides a function expansion device including a receiving unit that receives first scan data including a pattern image in which additional information is encoded and destination information indicating a destination of the first scan data, an acquisition unit that decodes the pattern image to obtain the additional information, and a transmission unit that transmits the first scan data and the additional information to the destination indicated by the destination information.

[0006] This disclosure relates to an information processing system comprising an information processing device and a function expansion device, wherein the information processing device includes a receiving unit that receives first scan data including a pattern image on which additional information is encoded, and a transmitting unit that transmits the first scan data and destination information indicating the destination of the first scan data to the function expansion device, and the function expansion device includes a receiving unit that receives the first scan data and destination information, an acquisition unit that decodes the pattern image added to the first scan data to obtain the additional information, and a transmitting unit that transmits the first scan data and the additional information to the destination indicated by the destination information.

[0007] This disclosure relates to a control method for a function extension device that performs the following actions: receiving first scan data including a pattern image on which additional information is encoded, and destination information indicating the destination of the first scan data; decoding the pattern image to obtain the additional information; and transmitting the first scan data and the additional information to the destination indicated by the destination information. [Brief explanation of the drawing]

[0008] [Figure 1] A diagram showing the configuration of an information processing system. [Figure 2] A block diagram showing an example of the configuration of each device that makes up an information processing system. [Figure 3] A diagram showing an example of the configuration of a content management database. [Figure 4] A diagram showing an example of the configuration of the user management database. [Figure 5] A diagram showing an example of the client management database configuration. [Figure 6] A diagram showing an example of the configuration of a device management database. [Figure 7] A sequence diagram illustrating the operation of an information processing system. [Figure 8] A sequence diagram illustrating the operation of an information processing system. [Figure 9] A flowchart illustrating the operation of the feature expansion server. [Modes for carrying out the invention]

[0009] 1. Configuration of the Information Processing System Embodiments of the present invention will be described below with reference to the attached drawings. Figure 1 shows the system configuration of information processing system 1. The information processing system 1 comprises a service provision server 100, a function expansion server 200, a print server 300, and a multifunction printer 500. The service provision server 100, function expansion server 200, print server 300, and multifunction printer 500 are connected via a network 10. The network 10 includes the Internet, telephone networks, and other communication networks. The function expansion server 200 corresponds to a function expansion device. The print server 300 corresponds to an information processing device.

[0010] The service provider server 100 is a server that provides Web (World Wide Web) services. The Web service provided by the service provider server 100 in this embodiment is a service that provides a first content file. The first content file is, for example, learning material such as textbooks or workbooks.

[0011] The function expansion server 200 is a server that performs functions not included in the print server 300. The function expansion server 200 is provided to add functions not included in the print server 300 without changing the configuration of the print server 300.

[0012] The function extension server 200 of this embodiment performs the process of adding a pattern image, which encodes additional information, to the first content file. The first content file to which the pattern image has been added is called the second content file. The additional information is information received from the service provision server 100 and includes, for example, at least one of a user ID that identifies the respondent and a content ID that identifies the first content file, which is the teaching material. The user ID corresponds to the first identification information, and the content ID corresponds to the second identification information.

[0013] The function expansion server 200 of this embodiment will be described for the case of generating a two-dimensional code such as a QR code as a pattern image. However, the pattern image may be a one-dimensional code or a specific character string. The QR code is a registered trademark. The function expansion server 200 transmits the generated second content file to the print server 300.

[0014] In addition, the function expansion server 200 receives scan data from the print server 300. The function expansion server 200 reads the two-dimensional code added to the scan data to obtain additional information. The function expansion server 200 transmits the obtained additional information and the scan data to the service providing server 100.

[0015] A persistent connection based on a predetermined real-time communication protocol is established between the print server 300 and the multifunction device 500, and real-time communication is executed. Examples of the real-time communication protocol include XMPP (Extensible Messaging and Presence Protocol).

[0016] The print server 300 is a server that provides a web service. The print server 300 receives the second content file from the function expansion server 200 and converts the received second content file into print data. In addition, the print server 300 transmits the print data to the multifunction device 500 specified by the service providing server 100 to cause the multifunction device 500 to execute printing.

[0017] In addition, the print server 300 receives scan data scanned by the multifunction device 500. The print server 300 transmits the received scan data and the first destination information to the function expansion server 200. The first destination information is the URL of the web page provided by the service providing server 100.

[0018] The multifunction device 500 is placed at the user's home 5 that has a user contract with the service provider operating the service providing server 100. The multifunction device 500 is called an MFP (Multi Function Peripherals) and has at least a printing function and a scanner function. The multifunction device 500 may be a device rented from a vendor or the like conducting a rental business, or may be a device lent by a school, a cram school, or the like. A wireless router 3 having an access point function is installed at the user's home 5. The multifunction device 500 connects to the network 10 via the wireless router 3.

[0019] 2. Configuration of the Service Providing Server FIG. 2 is a block diagram showing an example of the configuration of each device constituting the information processing system 1.

[0020] First, the configuration of the service providing server 100 will be described. The service providing server 100 includes a first communication unit 110 and a first control unit 130.

[0021] The first communication unit 110 includes a communication interface circuit that executes data communication compliant with a communication standard such as Ethernet. Ethernet is a registered trademark. The first communication unit 110 performs mutual data communication with the function expansion server 200 and the printing server 300 via the network 10.

[0022] The first control unit 130 is a computer device including a first storage unit 140 and a first processor 150.

[0023] The first storage unit 140 includes a RAM (Random Access Memory) and a ROM (Read Only Memory). The first storage unit 140 also includes an auxiliary storage device such as an HDD (Hard Disk Drive) or an SSD (Solid State Drive).

[0024] The RAM is used as the arithmetic area of the first processor 150. The ROM stores the control program 141 executed by the first processor 150 and various configuration information 143. The configuration information includes the client ID and secret key used for OAuth authentication with the print server 300. The client ID and secret key are authentication information issued by the print server 300. The auxiliary storage device stores a content management database 145 that manages the first content file and a user management database 147 that manages the users who receive the service. Hereafter, databases will be abbreviated as DB.

[0025] Figure 3 shows an example of the configuration of the content management DB145. Each record in the content management DB145 contains a content ID, a file name, and one content file. The Content ID is identification information that identifies the first content file. The file name is the file name of the first content file. The first content file is, for example, image data in a file format such as PDF (Portable Document Format) or JPEG (Joint Photographic Experts Group). Alternatively, the content file may be a document file such as Word or Excel. Word and Excel are registered trademarks.

[0026] Figure 4 shows an example of the configuration of the user management DB147. Each record in the user management database 147 includes, for example, a user ID, the user's name, address, selected subjects, and email address. The user ID is identification information that identifies users who use the web services provided by the service provider server 100. The email address is the email address set on the multifunction printer 500 installed at the user's home 5, and is an address that uniquely identifies the multifunction printer 500.

[0027] The first processor 150 is an arithmetic processing unit equipped with processors such as a CPU (Central Processing Unit) and an MPU (Micro-Processing Unit). The first processor 150 may be composed of a single processor or multiple processors. Furthermore, the first processor 150 may be composed of part or all of the first storage unit 140 or an SoC integrated with other circuits. Also, the first processor 150 may be composed of a combination of a CPU that executes programs and a DSP (Digital Signal Processor) that performs predetermined arithmetic processing. Moreover, all the functions of the first processor 150 may be implemented in hardware, or it may be configured using programmable devices.

[0028] The first control unit 130, for example, starts providing the first content file to the user at a predetermined date and time. First, the first control unit 130 accesses the print server 300 and receives OAuth authentication from the print server 300.

[0029] If the first control unit 130 successfully performs OAuth authentication, it registers destination information with the print server 300. This destination information indicates the destination of the scanned data scanned by the multifunction printer 500. The destination information is indicated by a URL. The destination information includes first destination information and second destination information. The first destination information is the URL of a web page provided by the service provision server 100, and the second destination information is the URL of a web page provided by the function extension server 200. The destination information includes the URL of the function extension server 200, which is the second destination information, with the destination URL for file reception of the service provision server 100 appended as a creator parameter. An example of the destination information data is as follows: https: / / xxx.xxx.xxx / extensions / 1 / scanning / upload?url=https: / / example.co.jp / sample / sample2 / sample3

[0030] The first destination information is set to a different URL for each user ID. By setting a different URL for each user ID, scanned data from different users can be uploaded to different URLs. Furthermore, the first destination information can also be set to multiple different URLs for the same user. For example, different URLs could be set for each elective subject, such as English or mathematics. This allows the scanned data from the multifunction printer 500 to be uploaded to different URLs depending on whether it is scanned English content printout 50 or mathematics content printout 50.

[0031] Furthermore, the first control unit 130 receives an upload URL from the print server 300. The upload URL is the URL of a web page provided by the print server 300 and indicates the upload destination for the first content file.

[0032] When the first control unit 130 receives the upload URL from the print server 300, it sends an upload request for the first content file to the function extension server 200. The upload request includes additional information to be attached to the first content file, the upload URL received from the print server 300, and a file retrieval URL indicating where to obtain the first content file. The file retrieval URL is the URL of a web page provided by the service provision server 100, and is the URL of the web page from which the first content file to be uploaded to the print server 300 can be downloaded.

[0033] 3. Configuration of the expansion server Next, we will describe the configuration of the function expansion server 200. The function expansion server 200 includes a second communication unit 210 and a second control unit 230.

[0034] The second communication unit 210 is equipped with a communication interface circuit that performs data communication compliant with communication standards such as Ethernet. The second communication unit 210 communicates data with the service provision server 100 and the print server 300 via the network 10.

[0035] The second control unit 230 is a computer device comprising a second storage unit 240 and a second processor 250.

[0036] The second memory unit 240 includes volatile memory such as RAM and non-volatile memory such as ROM.

[0037] RAM is used as the computing area for the second processor 250. The ROM stores the control program 241 executed by the second processor 250, as well as various setting information 243.

[0038] The second processor 250 is an arithmetic processing unit equipped with a processor such as a CPU or MPU. The second processor 250 may be composed of a single processor or multiple processors. Furthermore, the second processor 250 may be composed of part or all of the second memory unit 240, or an SoC integrated with other circuits. Also, the second processor 250 may be composed of a combination of a CPU that executes programs and a DSP that performs predetermined arithmetic processing. Moreover, all the functions of the second processor 250 may be implemented in hardware, or they may be configured using programmable devices.

[0039] The second processor 250 comprises a communication control unit 251, an acquisition unit 253, and a generation unit 255 as functional blocks. These functional blocks represent the functions realized by the second processor 250 executing the control program 241. The communication control unit 251 corresponds to the receiving unit and the transmitting unit.

[0040] The communication control unit 251 controls the second communication unit 210 to communicate data with the service provision server 100 and the print server 300. For example, the communication control unit 251 receives scan data containing a pattern image with the additional information encoded, and first destination information indicating the destination of the scan data, from the print server 300. The communication control unit 251 also uploads the scan data and additional information to a web page provided by the service provider server 100, as indicated by the first destination information.

[0041] The acquisition unit 253 decodes the scan data received by the communication control unit 251 and acquires additional information. The generation unit 255 changes the data name of the scanned data to a data name that includes additional information.

[0042] When the second control unit 230 receives an upload request from the service provider server 100, it obtains the file retrieval URL included in the received upload request. The second control unit 230 accesses the web page provided by the service provider server 100 indicated by the file retrieval URL. The second control unit 230 downloads the first content file from the accessed web page.

[0043] The second control unit 230 encodes the additional information included in the upload request and generates a two-dimensional code, which is an image containing the encoded additional information. The second control unit 230 adds the generated two-dimensional code to the first content file to generate a second content file. The second control unit 230 uploads the generated second content file to the address indicated by the upload URL included in the upload request.

[0044] Furthermore, the second control unit 230 receives scan data and first destination information from the print server 300. The second control unit 230 reads the two-dimensional code and decodes the read two-dimensional code to obtain additional information. The second control unit 230 includes the obtained additional information in the data name of the scan data. For example, the second control unit 230 may include the data name as part of the data name of the scan data, or rewrite the data name of the scan data with the additional information. In this embodiment, the case in which the data name of the scan data is rewritten with the additional information will be described. The second control unit 230 uploads the scan data with the changed data name to the web page provided by the service provider server 100 indicated by the first destination information. The scan data with the changed data name corresponds to the second scan data.

[0045] 4. Print Server Configuration Next, we will describe the configuration of print server 300. The print server 300 includes a third communication unit 310 and a third control unit 330.

[0046] The third communication unit 310 is equipped with a communication interface circuit that performs data communication compliant with communication standards such as Ethernet. The third communication unit 310 communicates data with the service provision server 100 and the function expansion server 200 via the network 10.

[0047] The third control unit 330 is a computer device comprising a third storage unit 340 and a third processor 350.

[0048] The third storage unit 340 includes RAM, ROM, and auxiliary storage. The RAM is used as the arithmetic area for the third processor 350, and the ROM stores control programs 341 executed by the third processor 350 and various setting information 343. The auxiliary storage stores the client management DB 345 and the device management DB 347.

[0049] Figure 5 shows an example of the configuration of the client management DB345. Each record in the client management DB345 contains the client ID, secret key, access token, and refresh token issued to the service provider server 100. The client ID is identification information that identifies the client, and in this embodiment, it is information that identifies the service provider server 100. The client ID and secret key are authentication information used for OAuth authentication. The access token is authentication information associated with the client ID registered for each web service, and is also authorization information that indicates the right to access the print server 300. The refresh token is authentication information used to reacquire the access token.

[0050] Figure 6 shows an example of the configuration of the device management DB347. Each record in the device management DB347 contains an email address and a device ID. The device ID is a fixed identifier that identifies the multifunction printer 500, which is installed in the user's home 5. The email address is also an identifier that identifies the multifunction printer 500, which is installed in the user's home 5, and is an identifier that can be changed by the user.

[0051] The third processor 350 is an arithmetic processing unit equipped with a processor such as a CPU or MPU. The third processor 350 may be composed of a single processor or multiple processors. Furthermore, the third processor 350 may be composed of part or all of the third memory unit 340, or an integrated SoC with other circuits. Also, the third processor 350 may be composed of a combination of a CPU that executes programs and a DSP that performs predetermined arithmetic processing. Moreover, all the functions of the third processor 350 may be implemented in hardware, or they may be configured using programmable devices.

[0052] The third processor 350 includes a communication control unit 351 and a conversion unit 353 as functional blocks. A functional block represents a function realized by the execution of the control program 341 by the third processor 350. The communication control unit 251 corresponds to the transmission unit and the reception unit.

[0053] The communication control unit 351 controls the third communication unit 310 to communicate data with the service provision server 100, the function expansion server 200, and the multifunction printer 500.

[0054] The conversion unit 353 converts the second content file received from the function extension server 200 into print data described using PDL (Page Description Language).

[0055] When the third control unit 330 receives an authentication request including the client ID and secret key, it performs OAoutH authentication based on the received authentication request. If the OAoutH authentication is successful, the third control unit 330 sends a response to the service provider server 100 that includes an access token, a refresh token, and a device ID. Furthermore, when the third control unit 330 receives a destination registration request from the service provision server 100, it stores the destination information included in the received destination registration request in the third storage unit 340. The destination information includes first destination information and second destination information.

[0056] When the third control unit 330 receives the second content file from the function extension server 200, it converts the received second content file into print data described by PDL. The third control unit 330 then sends the converted print data to the multifunction printer 500 indicated by the device ID. Furthermore, when the third control unit 330 receives scan data and selected first destination information from the multifunction printer 500, it uploads the received scan data and first destination information to the web page provided by the function extension server 200 indicated by the URL of the second destination information.

[0057] 5. Configuration of the multifunction printer The multifunction printer 500 comprises a multifunction printer communication unit 510, a printing unit 520, a scanner unit 530, and a multifunction printer control unit 550.

[0058] The multifunction printer communication unit 510, for example, is equipped with a network card and performs wireless communication via a wireless LAN (Local Area Network). The multifunction printer communication unit 510 also performs wireless communication via Wi-Fi and connects to a wireless network established by a wireless router 3 equipped with access point functionality. Wi-Fi is a registered trademark.

[0059] The printing unit 520 includes an inkjet head that ejects ink onto a printing medium to form dots, a carriage that scans the inkjet head in the scanning direction, a carriage drive motor that drives the carriage, a transport unit that transports the printing medium, and an ink supply unit that supplies ink to the inkjet head. The printing unit 520 performs printing on the printing medium by ejecting ink from the nozzles of the inkjet head and forming dots on the printing surface of the transported printing medium, in accordance with the control of the multifunction printer control unit 550.

[0060] The scanner unit 530, for example, shines light emitted from a light source onto a document placed on a document glass (not shown) to read characters and images recorded on the document, and outputs the image data obtained from the reading to the multifunction printer control unit 550. The multifunction printer control unit 550 performs data processing such as RGB conversion and compression on the image data input from the scanner unit 530 to generate scan data. The scan data includes a two-dimensional code, which is an image in which additional information is encoded. This scan data corresponds to the first scan data.

[0061] The multifunction printer control unit 550 is a computer device comprising a multifunction printer storage unit 560 and a multifunction printer processor 570.

[0062] The multifunction printer's memory unit 560 includes volatile memory such as RAM and non-volatile memory such as ROM. RAM is used as the arithmetic area for the multifunction printer processor 570. ROM stores the control program 565 that the multifunction printer processor 570 executes.

[0063] The multifunction printer processor 570 is an arithmetic processing unit equipped with a processor such as a CPU or MPU. The multifunction printer processor 570 may be composed of a single processor or multiple processors. Furthermore, the multifunction printer processor 570 may be composed of a SoC integrated with part or all of the multifunction printer storage unit 560 or other circuits. Alternatively, the multifunction printer processor 570 may be composed of a combination of a CPU that executes programs and a DSP that performs predetermined arithmetic processing. In addition, all the functions of the multifunction printer processor 570 may be implemented in hardware, or they may be configured using programmable devices.

[0064] When the multifunction printer control unit 550 receives print data from the print server 300, it controls the printing unit 520 to print an image based on the received print data onto the paper. The multifunction printer 500 outputs a content printout 50. A two-dimensional code 70 is printed on the content printout 50.

[0065] The user picks up the content printout 50 and writes down the answers to the questions written on it. Once the user has finished writing down the answers on the content printout 50, they touch the touch panel 540 to instruct it to scan. When a scan is instructed, the multifunction printer control unit 550 retrieves a list of destination information from the print server 300 and displays the retrieved list of destination information on the touch panel 540. Here, the list of destination information displayed on the touch panel 540 is the list of first destination information. This list of first destination information displays, for example, the URL corresponding to the first destination information and a display name indicating the recipient. The display name may be, for example, the destination for sending answers to English problems or the destination for sending answers to math problems.

[0066] The user refers to the display on the touch panel 540 and selects the first recipient information to which the answer will be sent. For example, if the second content file is a math problem and content printout 50 is a printed copy of this second content file, then the first destination information set as the upload destination for the math problem will be selected. Similarly, if the second content file is an English problem and content printout 50 is a printed copy of this second content file, then the first destination information set as the upload destination for the English problem will be selected.

[0067] When the first destination information is selected by a touch operation on the touch panel 540, the multifunction printer control unit 550 controls the scanner unit 530 to start scanning. The multifunction printer control unit 550 then sends the scanned data generated by the scan to the print server 300. When the third control unit 330 of the print server 300 receives scanned data from the multifunction printer 500, it uploads the received scanned data and the first destination information selected by the user to the web page indicated by the second destination information. The web page indicated by the second destination information is a web page provided by the function extension server 200.

[0068] 6. Operation of the Information Processing System Next, the operation of the information processing system 1 will be described. Figure 7 is a sequence diagram showing the operation of the information processing system 1. First, the first control unit 130 of the service provision server 100 sends an authentication request to the print server 300 (step S1). This authentication request includes the client ID, secret key, email address set on the multifunction printer 500, etc.

[0069] The third control unit 330 of the print server 300 receives an authentication request and authenticates the received authentication request. The third control unit 330 determines whether the received client ID and secret key are registered in the client management DB 343 and authenticates the authentication request. When the third control unit 330 successfully authenticates the authentication request, it issues an access token and a refresh token, and registers the issued access token and refresh token in the client management DB 343. The third control unit 330 also refers to the device management DB 345 to obtain the device ID associated with the email address. The third control unit 330 sends a response to the service provider server 100 including the issued access token and refresh token and the obtained device ID (step S2).

[0070] Next, the first control unit 130 of the service provision server 100 sends a destination registration request to the print server 300, which includes the access token and device ID received in step S2, and destination information (step S3). This destination information includes first destination information and second destination information. The third control unit 330 receives the registration request and stores the first destination information and second destination information included in the registration request in the third storage unit 340. The third control unit 330 also sends a response to the service provision server 100 indicating that the registration request was successful (step S4).

[0071] Next, the first control unit 130 generates a job creation request and sends the generated job creation request to the print server 300 (step S5). This job creation request includes the access token and device ID received in step S2, and the print settings. The print settings are the print settings for the content printout 50 to be printed by the multifunction printer 500, such as color or black and white, double-sided printing, and paper size.

[0072] The third control unit 330 generates a response to the received job creation request and sends the generated response to the service provider server 100 (step S6). This response includes a job ID that identifies the job and an upload URL.

[0073] Next, the first control unit 130 sends an upload request to the function extension server 200 (step S7). This upload request includes the upload URL, file retrieval URL, additional information, etc.

[0074] When the second control unit 230 of the function extension server 200 receives a file upload request, it accesses the file retrieval URL included in the received file upload request (step S8). The second control unit 230 then downloads the first content file from the accessed file retrieval URL and obtains the first content file (step S9).

[0075] When the second control unit 230 obtains the first content file, it obtains additional information included in the upload request received from the service provider server 100 in step S7. The second control unit 230 generates a two-dimensional code containing the extracted additional information (step S10). The second control unit 230 attaches the generated two-dimensional code to the first content file to generate the second content file (step S11). The second control unit 230 accesses the web page of the print server 300 indicated by the upload URL and uploads the second content file (step S12).

[0076] Next, the first control unit 130 sends a print request to the print server 300 (step S13). This print request includes an access token, device ID, job ID, etc. When the third control unit 330 of the print server 300 receives a print request from the service provision server 100, it converts the second content file into print data described by PDL according to the print settings received in step S5 (step S14). The third control unit 330 then sends a print instruction containing the generated print data to the multifunction printer 500 corresponding to the device ID (step S15).

[0077] When the multifunction printer control unit 550 receives a print command from the print server 300, it executes the printing of the print data included in the received print command (step S16), and sends an execution result notification to the print server 300 indicating whether the printing was successful or unsuccessful (step S17). The third control unit 330 of the print server 300 stores the received execution result notification in association with the processing ID and transmits it to the service provision server 100 (step S18).

[0078] Figure 8 is a sequence diagram showing the operation of uploading scanned data from the multifunction printer 500 to the service server 100. Next, we will explain the process from scanning the content printout 50 with the answers filled in using the multifunction printer 500, to sending the scanned data generated by the scan to the service provider server 100. When the print data is printed by the multifunction printer 500 and the content printout 50 is output, the user reads the questions written on the content printout 50 and writes down their answers to the questions. Once the user has filled in the answers to all the questions, they place the printed content document 50 containing the answers on the document glass of the multifunction printer 500 and instruct it to scan using the touch panel 540.

[0079] When the multifunction printer control unit 550 receives a scan instruction (step S19), it sends a request to the print server 300 to obtain a list of destinations (step S20). The third control unit 330 sends the list of destinations associated with the multifunction printer 500 to the multifunction printer 500 (step S21). The multifunction printer control unit 550 displays the received list of destination information on the touch panel 540 (step S22). Here, the list of destination information displayed on the touch panel 540 is the first list of destination information, and destinations for each subject, such as mathematics and English, are displayed in a list.

[0080] When the multifunction printer control unit 550 receives the selection of destination information via touch operation on the touch panel 540 (step S22), it causes the scanner unit 530 to scan the content printout 50 placed on the document glass. The multifunction printer control unit 550 uploads the scanned data generated by the scan to the print server 300 (step S23).

[0081] The third control unit 330 of the print server 300 receives scanned data from the multifunction printer 500. The third control unit 330 uploads the received scanned data and the first destination information to the web page provided by the function extension server 200 indicated by the URL of the second destination information (step S24).

[0082] When the second control unit 230 of the function extension server 200 receives scan data from the print server 300, it acquires scan data from the received scan data. The second control unit 230 reads the two-dimensional code of the acquired scan data and decodes the read two-dimensional code to acquire additional information (step S25). Based on the acquired additional information, the second control unit 230 changes the data name of the scan data (step S26). The second control unit 230 changes the data name of the scan data to the acquired additional information. The second control unit 230 uploads the scan data with the changed data name to the web page provided by the service provider server 100 indicated by the URL of the first destination information (step S27).

[0083] Figure 9 is a flowchart showing the operation of the function expansion server 200. The operation of the function extension server 200 will be explained with reference to the flowchart shown in Figure 9. The second control unit 230 first determines whether or not it has received an upload request from the service provision server 100 (step T1). When the second control unit 230 receives an upload request (step T1 / YES), it obtains a file retrieval URL from the received upload request. The second control unit 230 accesses the web page provided by the print server 300 indicated by the obtained file retrieval URL and downloads the first content file (step T2).

[0084] Next, the second control unit 230 extracts additional information included in the upload request and converts the extracted additional information into a two-dimensional code (step T3). The second control unit 230 adds the converted two-dimensional code to the first content file obtained in step T2 to generate a second content file (step T4). The second control unit 230 obtains the upload URL from the upload request, accesses the web page of the print server 300 indicated by the obtained upload URL, and uploads the second content file (step T5).

[0085] Furthermore, if the second control unit 230 receives scan data (step T6 / YES) instead of an upload request (step T1 / NO), it extracts the scan data contained in the received scan data. The second control unit 230 reads the two-dimensional code contained in the extracted scan data, decodes the read two-dimensional code, and obtains additional information (step T7).

[0086] Next, the second control unit 230 changes the data name of the scan data based on the acquired additional information (step T8). The second control unit 230 accesses the website indicated by the URL of the first destination information and uploads the scan data with the changed data name (step T9). Furthermore, if the second control unit 230 has not received scan data (step T6 / NO), it returns to the determination in step T1.

[0087] 7. Effects As described above, the function extension server 200 of this embodiment includes a communication control unit 251 and an acquisition unit 253. The communication control unit 251 receives scan data, which includes a pattern image in which additional information is encoded, and destination information, which indicates the destination of the scan data. The acquisition unit 253 decodes the pattern image and acquires additional information. The communication control unit 251 transmits the scan data and additional information to the destination indicated by the destination information.

[0088] This allows the system to decode the pattern image contained in the received scan data to obtain additional information, and then send the scan data and the additional information to the destination indicated by the destination information. Therefore, it is possible to easily add functions that are not implemented in the print server 300 without changing the configuration of the print server 300.

[0089] The destination information is indicated by a URL, and the scanned data and additional information are uploaded to the webpage indicated by the URL.

[0090] This allows users to upload scanned data and additional information to the webpage indicated by the URL, and then send it to the destination indicated by the destination information.

[0091] The destination information includes a first URL indicating the destination if the decryption of the additional information is successful, and a second URL indicating the destination if the decryption of the additional information fails. If the function extension server 200 successfully decrypts the additional information, it uploads the scanned data and additional information to the web page indicated by the first URL. If it fails to decrypt the additional information, it uploads the scanned data to the web page indicated by the second URL.

[0092] This allows the scanned data to be uploaded to different URLs depending on whether the decryption of the additional information was successful or unsuccessful.

[0093] The function-enhancing server 200 further includes a generation unit 255 that changes the data name of the scanned data to a data name corresponding to the additional information. The communication control unit 251 sends the scanned data with the renamed filename to the destination indicated by the destination information.

[0094] This allows scanned data, with its filename changed to one corresponding to the additional information, to be sent to the destination indicated by the destination information. Therefore, the additional information can be accessed by referring to the filename.

[0095] If the generation unit 255 fails to decode the additional information, it changes the filename of the scan data to include a predetermined string.

[0096] This allows the user to recognize that decrypting the additional information failed if the file name contains a specific string.

[0097] Scanned data is data obtained by scanning printed materials containing educational content. The additional information includes at least one of a first identification information that identifies the respondent of the educational material content and a second identification information that identifies the educational material content.

[0098] This allows us to identify the person who submitted the scanned data and the educational content by referring to the additional information.

[0099] For each primary identification information, a different URL will be set to indicate the destination information.

[0100] This allows each respondent to upload their scanned data to a different URL.

[0101] A pattern image is an image containing a two-dimensional code that encodes additional information.

[0102] This allows for an increase in the amount of additional information added to the scan data compared to when the pattern image is a one-dimensional code image that encodes additional information.

[0103] The embodiments described above represent only one aspect of the present invention, and can be arbitrarily modified and applied within the scope of the present invention. For example, multiple URLs may be set as the first destination information included in the scanned data. For example, a first URL and a second URL may be set as the first destination information. The first URL is the URL to which the scanned data will be uploaded when the function extension server 200 successfully reads the two-dimensional code and obtains additional information. The second URL is the URL to which the scanned data will be uploaded if the function extension server 200 fails to read the two-dimensional code and fails to obtain additional information.

[0104] Furthermore, if the function extension server 200 fails to read the two-dimensional code and is unable to obtain additional information, it may change the file name of the scanned data to a file name that includes a predetermined string. This predetermined string can be any string that has been set in advance, for example, "ERROR" or a single character repeated.

[0105] Furthermore, the configuration of the service provision server 100, function expansion server 200, print server 300, and multifunction device 500 shown in Figure 2 is merely an example, and the specific implementation is not particularly limited. In other words, it is not necessarily required that each part be individually equipped with corresponding hardware; it is certainly possible to configure a system where a single processor executes programs to realize the functions of each part. Also, some of the functions realized by software in the above-described embodiment may be implemented as hardware, or some of the functions realized by hardware may be implemented as software.

[0106] Furthermore, for example, the step units of operation shown in the sequence diagrams of Figures 7 and 8 are divided according to the main processing content in order to facilitate understanding of the operation of each device in the information processing system 1, and the present invention is not limited by the way the processing units are divided or the names of those units. Depending on the processing content, it may be further divided into more step units. Also, it may be divided so that one step unit includes even more processing. In addition, the order of the steps may be changed as appropriate, as long as it does not impede the spirit of the present invention. The same applies to the flowchart showing the operation of the function expansion server 200 shown in Figure 9.

[0107] Furthermore, when the control method for the function expansion device is implemented using the computer provided in the function expansion server 200, the program to be executed by this computer can be configured as a recording medium or a transmission medium for transmitting this program. Magnetic, optical, or semiconductor memory devices can be used as the recording medium. Specifically, portable or fixed recording media such as flexible disks, HDDs (Hard Disk Drives), CD-ROMs, DVDs, Blu-ray Discs, magneto-optical disks, flash memory, and card-type recording media can be used. Alternatively, the above-mentioned recording media may be non-volatile storage devices such as RAM, ROM, or HDDs, which are internal storage devices provided in the server device. Blu-ray is a registered trademark. [Explanation of Symbols]

[0108] 1...Information processing system, 3...Wireless router, 5...User's home, 10...Network, 50...Content printed material, 70...Two-dimensional code, 100...Service provision server, 110...First communication unit, 130...First control unit, 140...First storage unit, 141...Control program, 143...Configuration information, 145...Content management database, 147...User management database, 150...First processor, 200...Function expansion server, 210...Second communication unit, 230...Second control unit, 240...Second storage unit, 241...Control program, 243...Configuration information, 250...First 2 processors, 251...communication control unit, 253...acquisition unit, 255...generation unit, 300...print server, 310...third communication unit, 330...third control unit, 340...third storage unit, 341...control program, 343...setting information, 345...client management database, 347...device management database, 350...third processor, 500...multifunction printer, 510...multifunction printer communication unit, 520...printing unit, 530...scanner unit, 540...touch panel, 550...multifunction printer control unit, 560...multifunction printer storage unit, 565...control program, 570...multifunction printer processor.

Claims

1. A receiving unit that receives first scan data including a pattern image in which additional information is encoded, and destination information indicating the destination of the first scan data, An acquisition unit that decodes the pattern image and obtains the additional information, A transmission unit that transmits the first scan data and the additional information to the destination indicated by the destination information, Equipped with, The destination information includes a first URL indicating the destination when the decryption of the additional information is successful, and a second URL indicating the destination when the decryption of the additional information fails. If the transmission unit successfully decodes the additional information, it uploads the first scan data and the additional information to the web page indicated by the first URL. If decoding of the additional information fails, the function extension device uploads the first scan data to the web page indicated by the second URL.

2. The functional expansion device according to claim 1, further comprising a generation unit that generates second scan data by changing the data name of the first scan data to a data name corresponding to the additional information.

3. The function expansion device according to claim 2, wherein if the generation unit fails to decode the additional information, it changes the data name of the first scan data to a data name that includes a predetermined string.

4. The first scan data is data obtained by scanning a printed document containing the educational content. The functional enhancement device according to any one of claims 1 to 3, wherein the additional information includes at least one of a first identification information for identifying the respondent of the educational material content and a second identification information for identifying the educational material content.

5. The function expansion device according to claim 4, wherein the first URL and the second URL are set to different URLs for each of the first identification pieces of information.

6. The functional enhancement device according to any one of claims 1 to 5, wherein the pattern image is an image of a two-dimensional code that encodes the additional information.

7. An information processing system comprising an information processing device and a function expansion device, The aforementioned information processing device is A receiving unit that receives first scan data including a pattern image in which additional information is encoded, A transmission unit that transmits the first scan data and destination information indicating the destination of the first scan data to the function expansion device, Execute, The aforementioned function expansion device is A receiving unit that receives the first scan data and destination information, An acquisition unit that decodes the pattern image added to the first scan data and obtains the additional information, A transmission unit that transmits the first scan data and the additional information to the destination indicated by the destination information, Equipped with, The destination information includes a first URL indicating the destination when the decryption of the additional information is successful, and a second URL indicating the destination when the decryption of the additional information fails. If the transmission unit successfully decodes the additional information, it uploads the first scan data and the additional information to the web page indicated by the first URL. An information processing system that, if it fails to decode the additional information, uploads the first scan data to the web page indicated by the second URL.

8. The processor provided by the function expansion device, Receiving first scan data including a pattern image in which additional information is encoded, and destination information indicating the destination of the first scan data, Decoding the aforementioned pattern image to obtain the aforementioned additional information, The first scan data and the additional information are transmitted to the destination indicated by the destination information. Execute, The destination information includes a first URL indicating the destination when the decryption of the additional information is successful, and a second URL indicating the destination when the decryption of the additional information fails. The above transmission means that, if the decryption of the additional information is successful, the first scan data and the additional information will be uploaded to the web page indicated by the first URL. A control method for a function extension device, wherein if decoding of the additional information fails, the first scan data is uploaded to the web page indicated by the second URL.