Terminal device, function execution device, and method

JP2026144011APending Publication Date: 2026-09-09BROTHER KOGYO KK
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2025031043
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-02-28
Publication Date
2026-09-09

Smart Images

  • Figure 2026144011000001_ABST
    Figure 2026144011000001_ABST
Patent Text Reader

Abstract

To disclose a novel technology for performing predetermined communications for predetermined functions of a function execution device. [Solution] The terminal device transmits first related information related to first user information to the function execution device using the first wireless network. If the function execution device determines that the first related information matches the second related information related to second user information stored in the function execution device, the terminal device receives a first response from the function execution device using the first wireless network. If the first response is received from the function execution device, the terminal device is assigned to a second wireless network having higher security than the first wireless network, and predetermined communication for a predetermined function is performed with the function execution device using the second wireless network.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present specification relates to a technology in a situation where a function execution apparatus is caused to execute a predetermined function. [Background Art]

[0002] Patent Literature 1 discloses a communication system including a communication apparatus, a terminal apparatus, and an access point. In this communication system, when communication between the communication apparatus and the terminal apparatus cannot be performed via the access point, Bluetooth, Wi-Fi Aware, NFC (abbreviation for Near Field Communication) or the like is used to establish a P2P connection such as Wi-Fi Direct between the communication apparatus and the terminal apparatus. Bluetooth is a registered trademark of Bluetooth SIG. Wi-Fi Direct is a registered trademark of Wi-Fi Alliance. [Prior Art Literature] [Patent Literature]

[0003] [Patent Literature 1] Japanese Unexamined Patent Application Publication No. 2024-150633 [Summary of Invention] [Problem to be Solved by Invention]

[0004] The present specification discloses a novel technology relating to predetermined communication for a predetermined function of a function execution apparatus. [Means for Solving Problem]

[0005] This specification discloses a terminal device. The terminal device may include a Wi-Fi interface for performing wireless communication in accordance with the Wi-Fi standard. The terminal device may include a memory for storing first user information, wherein the first user information is information for performing a predetermined function of a function execution device different from the terminal device. The terminal device may include a transmitting unit that, when the terminal device belongs to a first wireless network in accordance with the Wi-Fi standard, transmits first related information relating to the first user information to the function execution device via the Wi-Fi interface and using the first wireless network. The terminal device may include a first receiving unit that, when the function execution device determines that the first related information and second related information relating to second user information stored in the function execution device match, receives a first response from the function execution device via the Wi-Fi interface and using the first wireless network indicating that the first related information and the second related information match. The terminal device may include a first membership control unit that, upon receiving the first response from the function execution device, assigns the terminal device to a second wireless network conforming to the Wi-Fi standard, the second wireless network having higher security than the first wireless network. After the terminal device has joined the second wireless network, the terminal device may include a predetermined communication execution unit that, via the Wi-Fi interface and utilizing the second wireless network, performs predetermined communication for the predetermined function with the function execution device.

[0006] According to the above configuration, the terminal device transmits first related information related to first user information to the function execution device using the first wireless network. If the function execution device determines that the first related information matches the second related information related to second user information stored in the function execution device, the terminal device receives a first response from the function execution device using the first wireless network. In this case, the terminal device is assigned to the second wireless network. The terminal device can then use the second wireless network to perform predetermined communication for predetermined functions with the function execution device.

[0007] This specification also discloses a function execution device. The function execution device may include a Wi-Fi interface for performing wireless communication in accordance with the Wi-Fi standard. The function execution device may include a memory for storing second user information, wherein the second user information is information for performing a predetermined function of the function execution device. The function execution device may include a transmitting unit that, when the function execution device belongs to a first wireless network in accordance with the Wi-Fi standard, transmits second related information relating to the second user information to a terminal device different from the function execution device via the Wi-Fi interface and using the first wireless network. The function execution device may include a first receiving unit that, when the terminal device determines that the first related information relating to the first user information stored in the terminal device matches the second related information, receives a third response from the terminal device via the Wi-Fi interface and using the first wireless network indicating that the first related information and the second related information match. The function execution device may include a first membership control unit that, when the third response is received from the terminal device, assigns the function execution device to a second wireless network having higher security than the first wireless network. The function execution device may also include a predetermined communication execution unit that, after the function execution device has joined the second wireless network, uses the second wireless network via the Wi-Fi interface to perform predetermined communication for the predetermined function with the terminal device.

[0008] According to the above configuration, the function execution device transmits second related information related to second user information to the terminal device using the first wireless network. If the terminal device determines that the second related information matches the first related information related to first user information stored in the terminal device, the function execution device receives a third response from the terminal device using the first wireless network. The function execution device then assigns itself to the second wireless network. The function execution device can then use the second wireless network to perform predetermined communication for predetermined functions with the terminal device.

[0009] This specification also discloses a method for performing predetermined communications for a predetermined function of a function execution device. The method may include a first communication step in which, while the terminal device and the function execution device belong to a first wireless network conforming to the Wi-Fi standard, the terminal device and the function execution device use the first wireless network to communicate first related information related to first user information stored in the terminal device, or second related information related to second user information stored in the function execution device. The method may also include a second communication step in which, when the terminal device or the function execution device determines that the first related information and the second related information match, the terminal device and the function execution device use the first wireless network to communicate a response indicating that the first related information and the second related information match. The method may include a membership control step in which, when the response communication is performed, both the terminal device and the function execution device are assigned to a second wireless network conforming to the Wi-Fi standard, the second wireless network having higher security than the first wireless network. The method may also include a third communication step in which, after both the terminal device and the function execution device are assigned to the second wireless network, the predetermined communication is performed between the terminal device and the function execution device using the second wireless network.

[0010] According to the above configuration, communication of first related information related to first user information stored in the terminal device, or communication of second related information related to second user information stored in the function execution device, is performed using the first wireless network. If it is determined that the first related information and the second related information match, communication of the first response is performed using the first wireless network. In this case, both the terminal device and the function execution device belong to the second wireless network. As a result, the terminal device and the function execution device can perform predetermined communications for predetermined functions using the second wireless network.

[0011] The computer program for the above-mentioned terminal device, the computer-readable recording medium for storing the computer program, and the method executed by the communication device are also novel and useful. Furthermore, the computer program for the above-mentioned function execution device, the computer-readable recording medium for storing the computer program, and the method executed by the function execution device are also novel and useful. Here, the above-mentioned recording medium may be a single medium or multiple mediums. [Brief explanation of the drawing]

[0012] [Figure 1] This is a diagram illustrating the configuration of a communication system. [Figure 2] This is a sequence diagram for Case A. [Figure 3] This is the sequence diagram for Case B. [Figure 4] These are sequence diagrams for Case C and Case D. [Figure 5] This figure is for comparing this example with a comparative example. [Figure 6] This is a sequence diagram for Case E and Case F. [Figure 7] This is a sequence diagram for Case G and Case H. [Modes for carrying out the invention]

[0013] (First embodiment) (Configuration of communication system 2; Figure 1) As shown in Figure 1, the communication system 2 comprises a terminal 10 and an MFP (Multi-Function Peripheral) 100. This specification describes the process for causing the MFP 100 to perform a function when the terminal 10 and the MFP 100 belong to the same NAN (Neighbor Awareness Network) cluster. In this embodiment, the functions to be performed by the MFP 100 are, for example, a scanning function and a printing function. Here, the NAN cluster is a wireless network as defined in the Wi-Fi Aware method of the Wi-Fi standard.

[0014] (Configuration of terminal 10) Terminal 10 is a portable terminal device such as a mobile phone, smartphone, PDA, or tablet PC. In a modified example, terminal 10 may be a stationary PC, laptop PC, or the like. Terminal 10 is assigned a serial number "T1" to identify it. Terminal 10 comprises an operation unit 12, a display unit 14, a Wi-Fi interface 16, and a control unit 30. Each unit 12 to 30 is connected to a bus line. Hereafter, the interface will be referred to as "I / F".

[0015] The operation unit 12 is a user interface that allows the user to input various information to the terminal 10. The operation unit 12 includes, for example, a touch panel, hardware keys, or both for displaying software keys (operation objects). Hardware keys include, for example, buttons or switches. The display unit 14 is a display or panel for displaying various information. The panel may or may not be a touch panel. The panel may also be, for example, a liquid crystal panel or an organic EL panel.

[0016] The Wi-Fi I / F 16 is a wireless interface for performing Wi-Fi communication in accordance with Wi-Fi standards. The Wi-Fi standard is a wireless communication standard for performing wireless communication in accordance with, for example, the 802.11 standard of IEEE (abbreviation of The Institute of Electrical and Electronics Engineers, Inc.) and standards conforming thereto, such as 802.11a, 11b, 11n, and 11ac. In particular, the Wi-Fi I / F 16 supports the Wi-Fi Aware scheme developed by the Wi-Fi Alliance. Details of the Wi-Fi Aware scheme are described in the standard document "Wi-Fi Aware Specification Version 4.0" prepared by the Wi-Fi Alliance. Wi-Fi Aware is also called Wi-Fi Neighbor Awareness Networking (NAN).

[0017] As will be described in detail later, each of the devices 10 and 100 can join a NAN cluster based on the Wi-Fi Aware scheme. For each device joining the same NAN cluster, a Discovery Window, which is a period for performing signal transmission and reception, is synchronized. Communication using a NAN cluster is communication in which layers above the network layer of the OSI reference model are not used, and layers below the data link layer are used.

[0018] Each device joining a NAN cluster is assigned one of the following roles: Master, Anchor Master, or Non-Master. A Master can perform sharing of timer information, service search, and attraction to the NAN cluster. In addition to the functions that a Master can perform, an Anchor Master can perform setting of timer information for synchronization. A Non-Master can perform sharing of timer information and service search, but cannot perform cluster attraction.

[0019] Each device participating in a NAN cluster can search for other devices within the NAN cluster, and more specifically, for services provided by said other devices. A signal for searching for a service is called a Subscribe. A device that has received a Subscribe transmits a response signal called a Publish. In the present embodiment, the terminal 10 transmits a Subscribe for searching for a function execution service that executes functions such as a scanning function, a printing function, and the like. The Subscribe is transmitted by broadcast within the NAN cluster. Since the MFP 100 can provide the function execution service, when the MFP 100 receives a Subscribe from the terminal 10, the MFP 100 transmits a Publish to the terminal 10. Note that the Subscribe may also include identification information of a device that should respond with a Publish. In this case, a device that has received the Subscribe transmits a Publish when the identification information of said device is included in the Subscribe.

[0020] Further, the Wi-Fi I / F 16 supports the Wi-Fi Direct system established by the Wi-Fi Alliance. Hereinafter, Wi-Fi Direct is referred to as "WFD". Details of WFD are described in the standard document "Wi-Fi Direct Specification Version 1.9" created by the Wi-Fi Alliance. Hereinafter, a Wi-Fi connection established according to the WFD system is referred to as a "WFD connection". Communication using a WFD connection is communication that uses layers above the network layer of the OSI reference model. When a WFD connection is established between a pair of devices, various authentication processes are executed between the pair of devices. For this reason, the wireless network formed by the WFD connection has higher security than a NAN cluster.

[0021] The control unit 30 comprises a CPU 32 and a memory 34. The memory 34 comprises a main memory and an auxiliary memory. For example, the main memory includes RAM and cache memory. For example, the auxiliary memory may be ROM, flash memory, SSD (Solid State Drive), HDD (Hard Disk Drive), or a combination thereof. The auxiliary memory of the memory 34 stores an OS program 36, an application program 38, and a user profile information table 40. The CPU 32 performs various processes according to the programs 36 and 38 loaded from the auxiliary memory into the main memory. Hereafter, the OS program will be referred to as "OS," and the application program will be referred to as "App."

[0022] OS36 controls the basic operation of terminal 10. Application 38 can assign terminal 10 to the NAN cluster by causing OS36 to execute processing according to the Wi-Fi Awara method. Application 38 can also send scan commands to MFP100, receive scan data from MFP100, and send print data to MFP100. Application 38 is downloaded from, for example, a server on the internet and installed on terminal 10.

[0023] The user profile information table 40 stores information for executing functions such as the scanning and printing functions of the MFP (e.g., 100). Hereafter, the user profile information table 40 will be simply referred to as "table 40". Table 40 stores the serial number, user ID, password, scan data destination, print limit, and update date and time in association with each other. The serial number is information that identifies the MFP. The user ID is information that identifies the user of terminal 10. The scan data destination is information that indicates the destination of the scan data obtained by scanning documents performed by the MFP. This information is, for example, the folder path where the scan data is saved. The print limit is the maximum number of prints allowed within a predetermined period, for example, one month. The print limit is set, for example, by the MFP administrator. The update date and time indicates the date and time when each of the above pieces of information was stored in association with each other. Hereafter, the three pieces of information, user ID, scan data destination, and print limit, may be collectively referred to as "user profile information".

[0024] For example, in the second row of Table 40 in Figure 1, the serial number "M1", user ID "AAA", password "XXX", scan data destination "F1", print limit "1000", and update date and time "D1" are associated. The serial number "M1" is the serial number of the MFP100. The user ID "AAA" is information that identifies the user of terminal 10. Hereafter, the information stored in the row containing the serial number "M1" of the MFP100 will be referred to as "information corresponding to the MFP100". In particular, the user profile information included in the information corresponding to the MFP100 will be referred to as "user profile information corresponding to the MFP100". That is, the user profile information corresponding to the MFP100 is the user ID, scan data destination, and print limit included in the information corresponding to the MFP100.

[0025] (Configuration of MFP100) The MFP100 is a peripheral device capable of performing multiple functions such as printing, scanning, and facsimile, for example, a peripheral device for terminal 10. In a modified example, instead of the MFP100, a printer capable of printing but not being able to perform scanning, etc., may be used. In another modified example, instead of the MFP100, a scanner capable of scanning but not being able to perform printing, etc., may be used. The MFP100 is assigned the serial number "M1" to identify it. The MFP100 comprises an operation unit 112, a display unit 114, a Wi-Fi interface 116, a print execution unit 118, a scan execution unit 120, and a control unit 130. Each unit 112 to 130 is connected to a bus line.

[0026] The operation unit 112 is a user interface that allows the user to input various information to the MFP 100. The operation unit 112 includes, for example, a touch panel, hardware keys, or both for displaying software keys (operation objects). Hardware keys include, for example, buttons or switches. The display unit 114 is a display or panel for displaying various information. The panel may or may not be a touch panel. The panel may also be, for example, an LCD panel or an OLED panel. The Wi-Fi I / F 116 is the same as the Wi-Fi I / F 16 of terminal 10. That is, the Wi-Fi I / F 116 supports both Wi-Fi Aware and WFD methods.

[0027] The printing execution unit 118 is equipped with an inkjet, electrophotographic, or thermal printing engine. The scanning execution unit 120 is equipped with a scanner engine having an image sensor such as a CCD (Charge-Coupled Device) image sensor or a CIS (Contact Image Sensor).

[0028] The control unit 130 comprises a CPU 132 and a memory 134. The memory 134 comprises a main memory and an auxiliary memory. For example, the main memory includes RAM and cache memory. For example, the auxiliary memory may be ROM, flash memory, SSD, HDD, or a combination thereof. The auxiliary memory of the memory 134 stores a program 136 and a user profile information table 140. The CPU 32 performs various processes according to the program 136 loaded from the auxiliary memory into the main memory.

[0029] The user profile information table 140 stores information necessary for executing functions such as the scanning and printing functions of the MFP100. Hereafter, the user profile information table 140 will be simply referred to as "table 140". Table 140 stores the serial number, user ID, password, scan data destination, print limit, and update date and time in association with each other. The serial number is information that identifies the terminal. The user ID is information that identifies the user using the terminal. The scan data destination, print limit, and update date and time are the same as the information stored in table 40.

[0030] For example, in the second row of Table 140 in Figure 1, the serial number "T1", user ID "AAA", password "XXX", scan data destination "F1", print limit "1000", and update date and time "D1" are associated. The serial number "T1" is the serial number of terminal 10. Hereafter, the information stored in the row containing the serial number "T1" of terminal 10 may be referred to as "information corresponding to terminal 10". In particular, the user profile information included in the information corresponding to terminal 10 will be referred to as "user profile information corresponding to terminal 10". That is, the user profile information corresponding to terminal 10 is the user ID, scan data destination, and print limit included in the information corresponding to terminal 10.

[0031] The administrator of the MFP100 performs pre-configuration to enable the MFP100 to execute functions using terminal 10. Pre-configuration includes storing information in tables 40 and 140. For example, the administrator uses the administrator terminal to store information corresponding to the MFP100 in table 40 and information corresponding to terminal 10 in table 140.

[0032] In the example in Figure 1, the information in the second row of Table 40 and the information in the second row of Table 140 are corresponding. If the user profile information corresponding to MFP100 matches the user profile information corresponding to terminal 10, then the execution of functions on MFP100 in response to instructions from terminal 10 is permitted. In other words, the information in Tables 40 and 140 can be said to be information used to determine whether or not the execution of a function is permitted.

[0033] (Case A; Figure 2) Next, we will explain the processes performed by each device. First, we will explain the process in Case A, referring to Figure 2. For the sake of ease of understanding, in the following, the processes performed by CPUs 32 and 132 of terminal 10 and MFP100 will be described as being performed by each device, rather than each CPU. Also, communication between each device is performed via Wi-Fi I / F 16 and 116. Therefore, in the following explanation, the phrase "via Wi-Fi I / F" will be omitted when describing communication.

[0034] In the initial state shown in Figure 2, Table 40 contains information corresponding to MFP100. Table 140 contains information corresponding to Terminal 10. In Case A, the user profile information corresponding to MFP100 matches the user profile information corresponding to Terminal 10.

[0035] When the MFP100 receives a NAN activation command from the user at T10, it transitions from the NAN disabled state to the NAN enabled state at T12. Here, "NAN disabled state" means a state in which signals according to the Wi-Fi Aware method cannot be transmitted. "NAN enabled state" means a state in which signals according to the Wi-Fi Aware method can be transmitted. When the MFP100 transitions to the NAN enabled state, it forms a NAN cluster. That is, at T12, a NAN cluster is formed to which only the MFP100 belongs. In this NAN cluster, the MFP100 operates as the Anchor Master.

[0036] At T14, the MFP100 broadcasts a NAN Discovery Beacon frame. Hereafter, this signal will simply be referred to as "Discovery." Discovery is a Wi-Fi Aware signal used to notify external parties of information about the NAN cluster to which the MFP100 belongs. Devices that do not belong to the NAN cluster can join the cluster upon receiving Discovery. In other words, Discovery can be said to be a signal used to attract devices that do not belong to the NAN cluster to join it. The MFP100 periodically transmits Discovery while the NAN is enabled.

[0037] Terminal 10 is in a NAN-disabled state at stage T14. Therefore, terminal 10 does not receive Discovery from MFP100 at T14.

[0038] When terminal 10 receives a NAN activation operation from the user at T20, it transitions from the NAN disabled state to the NAN enabled state at T21. Upon transitioning to the NAN enabled state, terminal 10 forms a NAN cluster. That is, at T21, a NAN cluster is formed to which only terminal 10 belongs. In this NAN cluster, terminal 10 operates as the Anchor Master. Thus, at T21, there are two NAN clusters: one to which only MFP100 belongs, and another to which only terminal 10 belongs.

[0039] At T22, MFP100 broadcasts a Discovery message. Terminal 10 is in a NAN-enabled state at T22. Therefore, at T22, Terminal 10 receives a Discovery message from MFP100. In this case, at T24, Terminal 10 joins the NAN cluster to which MFP100 belongs. As a result, Terminal 10 and MFP100 belong to the same NAN cluster. In this case, the NAN cluster to which only Terminal 10 belonged, i.e., the NAN cluster formed at T21, disappears. At T24, there is one NAN cluster to which both Terminal 10 and MFP100 belong. Although not shown in the diagram, once Terminal 10 joins the NAN cluster, it communicates with MFP100 to determine its role within the NAN cluster. In this case, MFP100 acts as the Anchor Master, and Terminal 10 acts as the Non-Master.

[0040] The user wants the MFP100 to scan a document. In this case, the user places the document to be scanned on the scan execution unit 120 of the MFP100 at T30. The MFP100 waits to receive a scan command from terminal 10.

[0041] Terminal 10 accepts an application launch operation at T32 to launch application 38. An application launch operation is, for example, an operation to select an application icon included in the home screen of OS36. In this case, terminal 10 displays the home screen of application 38 on the display unit 14. This home screen includes a print button to initiate printing to the MFP100, a scan button to initiate scanning to the MFP100, and so on.

[0042] Terminal 10 accepts a selection of the scan button on the home screen from the user at T33. In this case, terminal 10 displays a device selection screen on the display unit 14 for the user to select the device on which they wish to perform a scan. The device selection screen includes each serial number stored in table 40. For example, in the example of table 40 in Figure 1, the device selection screen includes serial numbers "M1" and "M2".

[0043] Furthermore, when terminal 10 receives a selection of the scan button from the user at T33, it hashes the user profile information at T34. Specifically, terminal 10 first identifies one row in table 40. Then, terminal 10 calculates a hash value by hashing the user profile information contained in the identified row using a hash function. Terminal 10 then temporarily stores the combination of the calculated hash value and the serial number contained in the identified row in memory 34. Terminal 10 performs the above process for each row contained in table 40. For example, in the example of table 40 in Figure 1, terminal 10 calculates a first hash value from the information in the second row of table 40 and a second hash value from the information in the third row. Then, terminal 10 temporarily stores the first combination of the first hash value and the serial number "M1" and the second combination of the second hash value and the serial number "M2" in memory 34.

[0044] Terminal 10 sends a Subscribe message using the NAN cluster at T36. This Subscribe message includes the first combination described above, the second combination described above, and the serial number of terminal 10, "T1". After sending the Subscribe message, terminal 10 deletes the first combination described above and the second combination described above from memory 34.

[0045] In T36, the MFP100 uses the NAN cluster to receive a Subscribe from terminal 10. In this case, the MFP100 first determines whether its own serial number "M1" is included in the Subscribe. In this case, the serial number "M1" is included in the Subscribe, so the MFP100 performs the following process. If the serial number "M1" is not included in the Subscribe, the MFP100 does not perform the following process.

[0046] The MFP100 identifies the user profile information associated with the serial number "T1" included in Subscribe from Table 140. That is, the MFP100 identifies the user profile information corresponding to terminal 10. Then, at T40, the MFP100 calculates a hash value by hashing the identified user profile information using a hash function. The hash function used here is the same as the hash function used by terminal 10 at T34.

[0047] Communication using a NAN cluster is a type of communication that utilizes only the data link layer and below, without using the network layer or above in the OSI reference model. Therefore, communication using a NAN cluster has relatively low security. However, in this embodiment, processing is performed using the hash value of user profile information. This helps to suppress the leakage of user profile information.

[0048] In S10, the MFP100 determines whether the first hash value included in Subscribe matches the hash value calculated in T40. That is, the MFP100 determines whether the first hash value, which is the hash value corresponding to the serial "M1" included in Subscribe, matches the hash value calculated in T40. In Case A, the MFP100 determines that the two match (YES in S10). Here, the fact that the two match means that the two pairs of user profile information before hashing match. In this case, in T42, the MFP100 uses the NAN cluster to send a Publish to terminal 10. The Publish includes information indicating that the two match and the serial number "M1" of the MFP100. Hereafter, this information will be referred to as "matching information".

[0049] Terminal 10 receives a Publish from MFP100 at T42, which contains matching information and the serial number "M1". In this case, terminal 10 associates the matching information and the serial number "M1" and temporarily stores them in memory 34. Although not shown in the diagram, terminal 10 can also receive Publishes from devices other than MFP100 within the NAN cluster. When terminal 10 receives a Publish containing matching information, it associates the matching information with the serial number included in the Publish and temporarily stores them in memory 34. Furthermore, when terminal 10 receives a Publish containing mismatch information (described later), it associates the mismatch information with the serial number included in the Publish and temporarily stores them in memory 34.

[0050] Subsequently, at T44, terminal 10 accepts the user's selection of serial number "M1" on the device selection screen. At the T44 stage, terminal 10 has already associated and stored the matching information with serial number "M1". In this case, terminal 10 displays a scan settings screen (not shown) on the display unit 14. If the matching information and serial number "M1" are not associated and stored at the time the selection of serial number "M1" is accepted, the scan settings screen will not be displayed. For example, consider a situation where, after the selection of serial number "M1" is accepted, a Publish containing the matching information and serial number "M1" is received. In this situation, terminal 10 temporarily stores selection information in memory 34 indicating that the selection of serial number "M1" has been accepted. Then, when terminal 10 receives the Publish, it displays the scan settings screen on the display unit 14. The scan settings screen is for specifying settings for scanning a document (e.g., color scan or monochrome scan, resolution, etc.). The user can specify each setting for scanning via the scan settings screen. In the following, each setting value for scanning specified via the scan settings screen will be referred to as a "scan setting value." After displaying the scan settings screen, terminal 10 deletes the matching information and serial number "M1" stored in T42 from memory 34.

[0051] Furthermore, while the scan settings are being specified, terminal 10 performs various processes to establish a Data Path with MFP100. Specifically, first, terminal 10 uses the NAN cluster at T50 to send a Data Path Request to MFP100. A Data Path Request is a signal requesting MFP100 to establish a communication path for the communication of scan data, i.e., a Data Path.

[0052] At T50, MFP100 uses the NAN cluster to receive a Data Path Request from terminal 10. In this case, at T52, MFP100 uses the NAN cluster to send a Data Path Response to terminal 10.

[0053] Terminal 10 receives a Data Path Response from MFP100 at T52 using the NAN cluster. In this case, terminal 10 sends a Data Path Confirm to MFP100 at T54 using the NAN cluster. As a result, a Data Path is established between terminal 10 and MFP100 at T56. Communication using Data Path is communication that utilizes the network layer or higher of the OSI reference model. When a Data Path is established between a pair of devices, an authentication process is performed between those devices. This authentication process uses, for example, NIK (abbreviation for NAN Identity Key) or NPK (abbreviation for NAN Pairing Key). For this reason, the wireless network formed by Data Path has higher security than a NAN cluster. The Data Path is disconnected after a certain period of time has elapsed since its establishment. The Data Path is also disconnected if the user profile information is changed on at least one of terminals, terminal 10 or MFP100.

[0054] At T57, the specification of scan settings via the scan settings screen is completed. When the scan settings have been specified by the user and the Data Path has been established, terminal 10 sends a scan command to MFP100 at T58 using the Data Path. The scan command includes the scan settings specified by the user.

[0055] At T58, the MFP100 receives a scan command from terminal 10 using Data Path. In this case, at T59, the MFP100 performs a scan of the document and generates scan data according to the scan settings included in the received scan command. Then, at T60, the MFP100 sends the scan data to terminal 10 using Data Path. Specifically, the scan data is sent to the scan data destination included in the user profile information corresponding to terminal 10 in table 140.

[0056] Terminal 10 receives scan data from MFP100 using Data Path on T60. In this way, terminal 10 can receive scan data representing the document to be scanned.

[0057] Subsequently, at T70, the user places a new document to be scanned onto the scan execution unit 120 of the MFP100. At T72, terminal 10 accepts the selection of the scan button. In this case, terminal 10 displays the device selection screen on the display unit 14. At this point, since a Data Path has already been established between terminal 10 and the MFP100 at T72, terminal 10 does not perform the process of hashing the user profile information. Then, at T73, the user selects the serial number "M1" on the device selection screen. In this case, terminal 10 displays the scan settings screen on the display unit 14. Then, at T74, the user specifies the scan settings via the scan settings screen. When the user specifies the scan settings, terminal 10 sends a scan command to the MFP100 at T76 using the Data Path. The processing at T78 and T80 is the same as the processing at T59 and T60, except that the scan data may be different.

[0058] As described above, if a Data Path has already been established between terminal 10 and MFP100, terminal 10 does not send Subscribe to the NAN cluster. When a Data Path has been established, the two pairs of user profile information match. Therefore, the process to check whether the user profile information matches (T36~T42, S10) is omitted. However, if a serial number of a device different from the MFP100 with which terminal 10 has already established a Data Path is selected, terminal 10 may perform the process to check whether the user profile information matches with that device.

[0059] (Case B; Figure 3) Next, we will explain Case B with reference to Figure 3. Case B is a case in which the MFP100 determines NO at S10 in Figure 2. That is, Case B is a case in which the first hash value included in Subscribe does not match the hash value calculated at T40 in Figure 2. As described above, the same hash function is used for hashing in terminal 10 (T34 in Figure 2) and hashing in MFP100 (T40). Therefore, determining NO at S10 in Figure 2 means that the two paired user profile information are different. For example, this situation can occur if an administrator changes one of the two paired user profile information but forgets to change the other. In this case, we assume a situation in which the scan data transmission destination of one of the two paired user profile information is changed, but the scan data transmission destination of the other is not changed.

[0060] If MFP100 determines NO at S10 in Figure 2, it uses the NAN cluster at T142 in Figure 3 to send a Publish to terminal 10. This Publish includes information indicating that the two do not match, and the serial number of MFP100, "M1". Hereafter, this information will be referred to as "mismatch information".

[0061] At T142, terminal 10 uses the NAN cluster to receive a Publish from MFP100 containing mismatch information and serial number "M1". In this case, terminal 10 associates the mismatch information and serial number "M1" and temporarily stores them in memory 34. Subsequently, at T144, terminal 10 accepts the user's selection of serial number "M1" on the device selection screen. At stage T144, terminal 10 has already associated and stored the mismatch information and serial number "M1". In this case, at T150, a WFD connection establishment process is executed to establish a WFD connection between terminal 10 and MFP100. The WFD connection establishment process includes communication such as a 4-way handshake and authentication. As a result, a WFD connection is established between terminal 10 and MFP100. The WFD connection is established to perform update communication to update the user profile information in either table 40 or table 140. As described above, communication using WFD connections is more secure than communication using NAN clusters. Therefore, update communications are executed more securely compared to when update communications are performed using NAN clusters.

[0062] When a WFD connection is established between terminal 10 and MFP100, terminal 10 displays input screen SC1 on display unit 14 in T152. Input screen SC1 includes a message prompting the user to enter a user ID and password, a user ID input field, a password input field, and an OK button.

[0063] Terminal 10 accepts the input of user ID "AAA" and password "XXX" at T154, and then accepts the selection of the OK button. In this case, terminal 10 uses the WFD connection at T156 to send the entered user ID "AAA" and password "XXX," along with the serial number of terminal 10 "T1," to MFP100.

[0064] At T156, the MFP100 receives user ID "AAA" and password "XXX" from terminal 10 using the WFD connection. In this case, the MFP100 performs authentication of user ID "AAA" and password "XXX". Specifically, first, the MFP100 identifies the information containing the received serial number "T1" from table 140, i.e., the information corresponding to terminal 10. Next, the MFP100 determines whether the combination of user ID "AAA" and password "XXX" is stored in the information corresponding to the identified terminal 10. In this case, since the combination is stored (see table 140 in Figure 1), the MFP100 determines at T158 that authentication of the user ID and password is successful. In this case, at T160, the MFP100 sends an authentication success signal to terminal 10 using the WFD connection. The authentication success signal includes the MFP100's serial number "M1", the user profile information corresponding to terminal 10, and the update date and time included in the information corresponding to terminal 10.

[0065] Terminal 10 receives an authentication success signal from MFP100 using a WFD connection at T160. In this case, terminal 10 identifies the information in the row containing the serial number "M1" included in the authentication success signal from table 40, i.e., the information corresponding to MFP100. Next, terminal 10 identifies the update date and time from the identified information corresponding to MFP100. Then, terminal 10 compares the update date and time included in the authentication success signal with the identified update date and time. In this case, terminal 10 determines that the latter update date and time is newer than the former update date and time. That is, terminal 10 determines that the user profile information stored in terminal 10 is newer than the user profile information stored in MFP100. In this case, terminal 10 sends an update request to MFP100 using a WFD connection at T162. The update request is a signal requesting an update to table 140 of MFP100. The update request includes the serial number "T1" of terminal 10, user profile information corresponding to MFP100, and the update date and time included in the information corresponding to MFP100.

[0066] At T162, the MFP100 receives an update request from terminal 10 using the WFD connection. In this case, at T164, the MFP100 updates table 140. Specifically, first, the MFP100 identifies the information in the row containing the serial number "T1" included in the received update request from table 140. That is, the MFP100 identifies the information corresponding to terminal 10. Then, the MFP100 updates the user profile information and update date and time included in the identified information with the user profile information and update date and time included in the update request, respectively. This ensures that the latest user profile information is shared between terminal 10 and the MFP100. Finally, at T166, the MFP100 uses the WFD connection to send an update completion signal to terminal 10 indicating that the update of table 140 is complete.

[0067] At T166, terminal 10 receives an update completion signal from MFP100 using the WFD connection. In this case, at T168, the WFD connection between terminal 10 and MFP100 is disconnected. The processing at T180-T190 is the same as the processing at T50-T60 in Figure 2. As a result, terminal 10 can acquire scan data representing the document to be scanned.

[0068] Furthermore, if authentication of the user ID and password fails in T158, the processes from T160 onward will not be executed. This ensures that only legitimate users can update their user profile information. In other words, it prevents situations where user profile information is modified by a third party.

[0069] Furthermore, if the update date and time included in the authentication success signal is newer than the update date and time included in the information corresponding to MFP100, terminal 10 performs the following process. First, instead of sending an update request, terminal 10 updates table 40. Specifically, terminal 10 updates the user profile information and update date and time included in the information corresponding to the identified MFP100 with the user profile information and update date and time included in the authentication success signal, respectively. This ensures that the latest user profile information is shared between terminal 10 and MFP100. In this case, the WFD connection between terminal 10 and MFP100 is disconnected, and the process from T180 onwards is executed.

[0070] (Case C; Figure 4) Next, we will explain Case C with reference to Figure 4. Case C is a case where the user wants the MFP100 to perform printing. The initial state of Case C is the same as the initial state of Case A. In Case C, first, the same process as T10~T24 in Figure 2 is executed. As a result, terminal 10 and MFP100 belong to the same NAN cluster.

[0071] The process at T232 is the same as the process at T32 in Figure 2. At T233, terminal 10 accepts the user's selection of the print button on the home screen. In this case, terminal 10 displays a device selection screen on the display unit 14 for the user to select the device on which they wish to perform printing. The processes at T234 to T240 are the same as the processes at T34 to T40 in Figure 2. Also, the process at S210 is the same as the process at S10 in Figure 2.

[0072] In case C, MFP100 determines that the first hash value included in Subscribe matches the hash value calculated by T240 (YES in S210). That is, MFP100 determines that the first hash value, which is the hash value corresponding to the serial number "M1" included in Subscribe, matches the hash value calculated by T240. In this case, MFP100 uses the NAN cluster in T242 to send a Publish containing the matching information and the serial number "M1" to terminal 10.

[0073] Terminal 10 receives a Publish from MFP100 at T242, which includes matching information and the serial number "M1". Subsequently, at T244, terminal 10 accepts the user's selection of the serial number "M1" on the device selection screen. At stage T244, terminal 10 has already associated and stored the matching information and the serial number "M1". In this case, terminal 10 displays a print settings screen (not shown) on the display unit 14. The print settings screen is for specifying the image to be printed and the settings for printing (e.g., color or monochrome printing, paper size, etc.). The user can specify the image to be printed and the various settings for printing via the print settings screen. Hereinafter, the various settings for printing specified via the print settings screen will be referred to as "print settings".

[0074] Furthermore, while the terminal 10 is performing tasks such as specifying the image to be printed, it executes various processes to establish a Data Path with the MFP 100 (T250~T256). The processes from T250 to T256 are the same as the processes from T50 to T56 in Figure 2.

[0075] At T257, the specification of the image to be printed and the specification of print settings values ​​are completed via the print settings screen. In this case, terminal 10 converts the image data representing the image to be printed according to the specified print settings values ​​and generates print data. The print data has a data format that can be interpreted by MFP100. When the print data is generated and the Data Path is established, terminal 10 sends a print command to MFP100 at T260 using the Data Path. This print command includes the generated print data.

[0076] At T260, the MFP100 receives a print command from terminal 10 using Data Path. In this case, at T262, the MFP100 prints the image to be printed according to the print data included in the print command. In this way, the user can obtain a printed medium on which the image to be printed has been printed.

[0077] The MFP100 stores the cumulative number of print media used for printing performed in accordance with print instructions received from terminal 10. The MFP100 can calculate the number of prints during a predetermined period from this cumulative number. The MFP100 can execute printing if the calculated number of prints is less than the maximum number of prints included in the user profile information corresponding to terminal 10 in table 140. Furthermore, when printing is executed in T262, the MFP100 adds the number of print media used for that print to the cumulative number.

[0078] Subsequently, at T272, terminal 10 accepts the selection of the print button. In this case, terminal 10 displays the device selection screen on the display unit 14. At this point, since a Data Path has already been established between terminal 10 and MFP100 at T272, terminal 10 does not perform the process of hashing user profile information. Then, at T273, the user selects serial number "M1" on the device selection screen. In this case, terminal 10 displays the print settings screen on the display unit 14. Then, at T274, the user specifies the image to be printed and the print settings via the print settings screen. In this case, terminal 10 generates the print data. Then, at T276, terminal 10 uses the Data Path to send a print command including the print data to MFP100. The process at T278 is the same as the process at T262, except that the print data may differ.

[0079] (Case D; Figure 4) Next, we will explain Case D with reference to Figure 4. Case D is a case in which MFP100 determines NO in S210. In other words, Case D is a case in which the first hash value included in Subscribe does not match the hash value calculated in T240.

[0080] If the MFP100 determines NO in S210, it uses the NAN cluster in T342 to send a Publish message to terminal 10 containing mismatch information and the serial number "M1". As a result, the same process as T144~T168 in Figure 3 is executed, and the latest user profile information is shared between terminal 10 and MFP100. Subsequently, the same process as T250~T278 is executed, and the MFP100 prints the image to be printed.

[0081] (Effects of the first embodiment) According to the above configuration, terminal 10 uses the NAN cluster to send a Subscribe to MFP 100 that includes a hash value obtained by hashing user profile information (T36 in Figure 2, T236 in Figure 4). If the hash value included in Subscribe matches the hash value of the user profile information corresponding to terminal 10 stored in table 140 (YES in S10 in Figure 2, YES in S210 in Figure 4), MFP 100 uses the NAN cluster to send a Publish containing the matching information to terminal 10 (T42). When terminal 10 receives a Publish containing the matching information from MFP 100, it establishes a Data Path between terminal 10 and MFP 100. As a result, terminal 10 can use the Data Path to receive scanned data from MFP 100 (T60 in Figure 2) or send a print command to MFP 100 (T260 in Figure 4).

[0082] (Comparison of this embodiment with a comparative example; Figure 5) Now, with reference to Figure 5, the time required to complete the scanning of the document will be explained. Figure 5(A) is a diagram illustrating the time required to complete the scanning of the document in Case A of this embodiment. Figure 5(B) is a diagram illustrating the time required to complete the scanning of the document in a comparative example.

[0083] In Case A of this embodiment, the user first selects the scan button on the home screen (T33 in Figure 2) in order to have the MFP100 scan a document. For example, let's assume that it takes 20 seconds from the time app 38 is launched until the scan button is selected. In Figure 5(A), this situation is expressed as "Scan button selected (20 seconds)".

[0084] Subsequently, the matching of user profile information (T34-T40, S10, T42) and the selection of the MFP (T44) are executed in parallel. That is, as described above, while the device selection screen is displayed, a process is executed to determine whether the user profile information corresponding to MFP100 stored in table 40 matches the user profile information corresponding to terminal 10 stored in table 140. As already explained, the above determination process uses communication with the NAN cluster (T36, T42). At the time the scan button is selected, the NAN cluster to which both terminal 10 and MFP100 belong has already been formed. The above determination process is executed as soon as the scan button is selected. In the example in Figure 5(A), we assume that it takes 10 seconds until the above determination process determines that the user profile information matches, and 20 seconds from the time the scan button is selected until serial number "M1" is selected. Since these processes are performed in parallel, the matching of user profile information is completed when the user selects serial number "M1".

[0085] Subsequently, the establishment of a Data Path between terminal 10 and MFP100 (T50-T56) and the specification of scan settings (T57) are performed in parallel. In the example in Figure 5(A), it is assumed that it takes 20 seconds to establish the Data Path and 60 seconds for the user to specify the scan settings. Since these processes are performed in parallel, the Data Path is established between terminal 10 and MFP100 by the time the user has finished specifying the scan settings. After that, the Data Path is used to perform the scan command and the communication of scan data (T58-T60). In the example in Figure 5(A), it is assumed that it takes 30 seconds from the completion of specifying the scan settings until the completion of the communication of scan data. As a result, in this embodiment (Figure 5(A)), it takes 130 seconds from the time the user selects the scan button until the communication of scan data is completed. That is, in the example in Figure 5(A), it takes 130 seconds for the scanning of the document to be completed.

[0086] In the comparative example, it is necessary to establish a wireless connection between terminal 10 and MFP100 in order to determine whether the user profile information stored in tables 40 and 140 matches. The comparative example in Figure 5(B) illustrates an example in which a WFD connection is established between terminal 10 and MFP100.

[0087] As shown in Figure 5(B), in the comparative example, similar to this embodiment, the user sequentially selects the scan button and then the serial number "M1". However, in the comparative example, a connection is not established between terminal 10 and MFP100 at the time the scan button is selected. Therefore, in the comparative example, it is not possible to perform a user profile information matching check in parallel with the selection of the MFP. Subsequently, a WFD connection is established between terminal 10 and MFP100. In the example in Figure 5(B), it is assumed that it takes 20 seconds for the WFD connection to be established. After that, communication using the above WFD connection is performed, and a determination process is executed to determine whether the user profile information stored in tables 40 and 140 matches or not. In the example in Figure 5(B), it is assumed that it takes 10 seconds until it is determined in the above determination process that the user profile information matches.

[0088] Subsequently, the user specifies the scan settings. Once the scan settings are specified, the established WFD connection is used to perform the scan command and scan data communication. Thus, in the comparative example, it is necessary to establish a WFD connection between terminal 10 and MFP100 for the above decision-making process. For this reason, in the comparative example, the specification of scan settings and the establishment of the WFD connection are not performed in parallel. As a result, in the comparative example (i.e., Figure 5(B)), it takes 160 seconds from the time the user selects the scan button until the communication of scan data is completed. In other words, in the example of Figure 5(B), it takes 160 seconds until the document scan is completed. Thus, according to the configuration of this embodiment, the time until the document scan is completed can be shortened compared to the comparative example.

[0089] (Correspondence) Terminal 10 and MFP100 are examples of "terminal device" and "function execution device," respectively. In cases A and B, the scan function and the communication of scan data from T60 in Figure 2 are examples of "predetermined function" and "predetermined communication," respectively. In cases C and D, the print function and the communication of print instructions from T260 in Figure 4 are examples of "predetermined function" and "predetermined communication," respectively. The user profile information corresponding to MFP100 in Table 40 is an example of "first user information." The hash value of the user profile information corresponding to MFP100 is an example of "first related information." The user profile information corresponding to Terminal 10 in Table 140 is an example of "second user information." The hash value of the user profile information corresponding to Terminal 10 is an example of "second related information." Publish containing matching information and Publish containing mismatching information are examples of "first response (and response)" and "second response," respectively. The NAN cluster is an example of "first wireless network." A wireless network formed by the establishment of a Data Path is an example of a "second wireless network." A wireless network formed by the establishment of a WFD connection is an example of a "third wireless network." The communications of T156, T160, T162, and T166 in Figure 3 are examples of "update communications." In particular, the communications of T156 and T160 are examples of "communications for user authentication."

[0090] The correspondence between the processes executed by the "terminal device" is as follows: Processes T36 and T42 in Figure 2 are examples of processes executed by the "transmitting unit" and the "first receiving unit," respectively. Processes T50 to T56 are examples of processes executed by the "first assigned control unit." Processes T58 and T60 are examples of processes executed by the "predetermined communication execution unit." Processes T142 and T150 in Figure 3 are examples of processes executed by the "second receiving unit" and the "second assigned control unit," respectively. Processes T156, T160, T162, and T166 are examples of processes executed by the "update communication execution unit."

[0091] The processes at T36 and T42 in Figure 2 are examples of the "first communication process" and the "second communication process," respectively. The processes at T50 to T56 are examples of the "association control process." The processes at T58 and T60 are examples of the "third communication process."

[0092] (Second example) Next, a second embodiment will be described. The second embodiment differs from the first embodiment in that the process of determining whether or not the user profile information matches is performed by terminal 10.

[0093] (Case E; Figure 6) First, let's explain Case E with reference to Figure 6. The initial state of Case E is the same as the initial state of Case A in the first embodiment. That is, in Case E, the user profile information corresponding to MFP100 in Table 40 matches the user profile information corresponding to terminal 10 in Table 140. The processing from T410 to T433 in Figure 6 is the same as the processing from T10 to T33 in Figure 2.

[0094] Terminal 10 sends a Subscribe using the NAN cluster at T436. The Subscribe includes the serial number of each row in Table 40 and the serial number of Terminal 10, "T1". For example, in the example of Table 40 in Figure 1, the Subscribe includes the serial number "M1" from the second row and the serial number "M2" from the third row as the serial numbers of each row in Table 40.

[0095] At T436, MFP100 uses the NAN cluster to receive a Subscribe from terminal 10. In this case, MFP100 first determines whether its own serial number "M1" is included in the Subscribe. In this case, since the serial number "M1" is included in the Subscribe, it performs the following process. MFP100 identifies the user profile information associated with the serial number "T1" included in the Subscribe from table 140. That is, MFP100 identifies the user profile information corresponding to terminal 10. Then, at T440, MFP100 calculates a hash value by hashing the identified user profile information using a hash function. Then, at T442, MFP100 uses the NAN cluster to send a Publish to terminal 10. This Publish includes the calculated hash value and MFP100's serial number "M1".

[0096] Terminal 10 receives a Publish from MFP100 using the NAN cluster at T442. In this case, terminal 10 identifies the user profile information associated with the serial number "M1" included in the Publish from table 40. Then, at T444, terminal 10 calculates a hash value by hashing the identified user profile information using a hash function. The hash function used here is the same as the hash function used by MFP100 at T440.

[0097] The processing in S410 is the same as that in S10, except that the main processor is terminal 10 instead of MFP100. In case E, terminal 10 determines that the hash value included in Publish matches the hash value calculated in T444 (YES in S410). In this case, terminal 10 uses the NAN cluster in T446 to send a Follow-up containing the matching information to MFP100. The Follow-up is a signal that conforms to the Wi-Fi Aware method. Also, when terminal 10 determines YES in S410, it associates the matching information with the serial number "M1" included in the received Publish and temporarily stores it in memory 34.

[0098] Subsequently, at T447, terminal 10 accepts the user's selection of serial number "M1" on the device selection screen. At the T447 stage, terminal 10 has already associated and stored the matching information with serial number "M1". In this case, terminal 10 displays a scan settings screen (not shown) on the display unit 14.

[0099] At T446, the MFP100 uses the NAN cluster to receive a Follow-up containing matching information from terminal 10. In this case, at T450, the MFP100 uses the NAN cluster to send a Data Path Request to terminal 10. The process at T450 is the same as the process at T50 in Figure 2, except that the Data Path Request is sent by the MFP100 instead of terminal 10. Similarly, the processes at T452 and T454 are the same as the processes at T52 and T54 in Figure 2, respectively, except that the entity sending the information is different. As a result, while the user is specifying the scan settings, a Data Path is established between terminal 10 and the MFP100 at T456.

[0100] The processing of T457 is the same as the processing of T57 in Figure 2. Subsequently, the same processing as T58 to T80 in Figure 2 is performed. As a result, terminal 10 can receive scan data representing the document to be scanned from MFP100 using Data Path.

[0101] (Case F; Figure 6) Next, we will explain Case F with reference to Figure 6. Case F is a case in which terminal 10 determines NO at S410 in Figure 6. That is, Case F is a case in which the hash value included in Publish and the hash value calculated at T444 in Figure 6 do not match. When terminal 10 determines NO at S410, at T546 in Figure 6, it uses the NAN cluster to send a Follow-up containing the mismatch information to MFP100. When terminal 10 determines NO at S410, it associates the mismatch information with the serial number "M1" included in the received Publish and temporarily stores it in memory 34. After that, terminal 10 accepts the user's selection of serial number "M1" on the device selection screen (T144 in Figure 3, which is referenced in Figure 6). At the T144 stage, terminal 10 has already associated and stored the mismatch information with the serial number "M1". As a result, the same process as T150 in Figure 3 is executed, and a WFD connection is established between terminal 10 and MFP100. Then, the same process as T152 to T168 in Figure 3 is executed, and the latest user profile information is shared between terminal 10 and MFP100. After that, the same process as T180 to T190 in Figure 3 is executed, and terminal 10 can receive scan data representing the document to be scanned.

[0102] (Case G; Figure 7) Next, we will explain Case G with reference to Figure 7. Case G is a case where the user wants the MFP100 to perform printing. The initial state of Case G is the same as the initial state of Case E. In Case G, first, the same process as T410~T424 in Figure 6 is executed. As a result, terminal 10 and MFP100 belong to the same NAN cluster.

[0103] The processes of T632 and T633 are the same as those of T232 and T233 in Figure 4, respectively. Furthermore, the processes of T636 to T644 are the same as those of T436 to T444 in Figure 6, respectively. Also, the process of S610 is the same as the process of S410 in Figure 6.

[0104] In case G, terminal 10 determines at S610 that the hash value included in Publish matches the hash value calculated at T644 (YES at S610). In this case, terminal 10 uses the NAN cluster at T646 to send a Follow-up containing the matching information to MFP100. Also, if terminal 10 determines YES at S610, it associates the matching information with the serial number "M1" included in the received Publish and temporarily stores it in memory 34.

[0105] Subsequently, at T647, terminal 10 accepts the user's selection of serial number "M1" on the device selection screen. At the T647 stage, terminal 10 has already associated and stored the matching information with serial number "M1". In this case, terminal 10 displays a print settings screen (not shown) on the display unit 14. While terminal 10 is specifying the image to be printed and the print settings, various processes are performed to establish a Data Path between terminal 10 and MFP 100 (T650-T656). The processes at T650-T656 are the same as those at T450-T456 in Figure 6.

[0106] The process of T657 is the same as the process of T257 in Figure 4. Subsequently, the same processes as T260 to T278 in Figure 4 are executed. As a result, the user can obtain a printable medium on which the image to be printed has been printed.

[0107] (Case H; Figure 7) Next, we will explain Case H with reference to Figure 7. Case H is a case in which terminal 10 determines NO at S610. That is, Case H is a case in which the hash value included in Publish does not match the hash value calculated at T644. When terminal 10 determines NO at S610, at T746 it uses the NAN cluster to send a Follow-up containing the mismatch information to MFP100. When terminal 10 determines NO at S610 it associates the mismatch information with the serial number "M1" included in the received Publish and temporarily stores it in memory 34. After that, terminal 10 accepts the user's selection of serial number "M1" on the device selection screen (T144 in Figure 3, which is referenced in Figure 7). At the T144 stage, terminal 10 has already associated and stored the mismatch information with the serial number "M1". As a result, the same process as T150-T168 in Figure 3 is executed, and the latest user profile information is shared between terminal 10 and MFP100. Subsequently, the same process as T250-T278 in Figure 4 is executed, and the MFP100 prints the image to be printed.

[0108] (Effects of the second embodiment) According to the above configuration, the MFP100 uses the NAN cluster to hash the user profile information and sends a Publish to the terminal 10 containing the hash value obtained by hashing the user profile information (T442 in Figure 6, T642 in Figure 7). If the hash value contained in the Publish matches the hash value of the user profile information corresponding to the MFP100 stored in table 40 (YES in S410 in Figure 6, YES in S610 in Figure 7), the terminal 10 uses the NAN cluster to send a Follow-up containing the matching information to the MFP100 (T446 in Figure 6, T646 in Figure 7). When the MFP100 receives a Follow-up containing the matching information from the terminal 10, it establishes a Data Path between the terminal 10 and the MFP100 (T450~T456 in Figure 6). As a result, the MFP100 can use Data Path to send scanned data to terminal 10 (T60 in Figure 2, referenced in Figure 6) or receive print commands from terminal 10 (T260 in Figure 4, referenced in Figure 7).

[0109] (Correspondence) Follow-up containing matching information and Follow-up containing mismatching information are examples of the "third response (and response)" and "fourth response," respectively. The correspondence of processes executed by the "function execution device" is as follows: Processes T442 and T446 in Figure 6 are examples of processes executed by the "transmitting unit" and the "first receiving unit," respectively. Processes T450 to T456 are examples of processes executed by the "first assigned control unit." Processes T58 and T60 in Figure 2, referenced in Figure 6, are examples of processes executed by the "predetermined communication execution unit." Process T546 in Figure 6 is an example of a process executed by the "second receiving unit." Process T150 in Figure 3, referenced in Figure 6, is an example of a process executed by the "second assigned control unit." Processes T156, T160, T162, and T166 in Figure 3, referenced in Figure 6, are examples of processes executed by the "update communication execution unit."

[0110] The processes at T442 and T446 in Figure 6 are examples of the "first communication process" and the "second communication process," respectively. The processes at T450 to T456 are examples of the "association control process." The processes at T58 and T60, as shown in Figure 6, are examples of the "third communication process."

[0111] The specific examples of the technology disclosed herein have been described in detail above, but these are merely illustrative and do not limit the scope of the claims. The technology described in the claims includes various modifications and changes to the specific examples illustrated above. Modifications of the above embodiments are listed below.

[0112] (Modification 1) In the above embodiment, an example was described in which the terminal 10 is used to cause the MFP 100 to perform a scanning function or a printing function. The technology described above is also useful in other situations. The technology described above is also useful in a situation in which the terminal 10 is used to cause a sewing machine to perform embroidery. In this modification, the sewing machine is an example of a "function execution device", the embroidery is an example of a "predetermined function", and the communication of embroidery data is an example of "predetermined communication". Furthermore, the technology described above is also useful in situations such as sending print data to a label printer or sending user operation information to a karaoke machine. Generally speaking, the "predetermined function" of the "function execution device" can be any function.

[0113] (Modification 2) Instead of the processing T50 to T56 in Figure 2, for example, a WFD connection establishment process may be performed to establish a WFD connection between terminal 10 and MFP 100. In this modification, the wireless network formed by the establishment of the WFD connection is an example of the "second wireless network". In another modification, instead of the processing T50 to T56, a process for establishing a Wi-Fi connection via an access point between terminal 10 and MFP 100 may be performed. In this modification, the wireless network formed by the access point is an example of the "second wireless network". Communication using WFD connection, Wi-Fi connection via access point, etc., has higher security than communication using NAN cluster. In other words, generally speaking, the "second wireless network" can be any wireless network as long as it has higher security than the "first wireless network".

[0114] (Modification 3) Terminal 10 can omit the processing of T34. In this case, terminal 10 may send a Subscribe to MFP100 in T36 that includes a combination of user profile information itself and a serial number. In this case, MFP100 does not need to perform the processing of T40. When MFP100 receives a Subscribe from terminal 10, it may identify the user profile information corresponding to terminal 10 from table 140. In S10, MFP100 may determine whether the user profile information included in Subscribe matches the identified user profile information. In this modification, the user profile information corresponding to MFP100 is an example of "first user information" and "first related information". Also, the user profile information corresponding to terminal 10 is an example of "second user information" and "second related information". Similar to the above modification, MFP100 may omit the processing of T440 in Figure 6. In this case, the MFP100 may send a Publish to terminal 10 in T442 that includes the user profile information corresponding to terminal 10.

[0115] (Modification 4) The processing from T142 onwards in Figure 3 can be omitted. In this case, the MFP100 may, for example, display error information on the display unit 14 indicating that the user profile information does not match. The user who sees this error information can notify the administrator that the user profile information does not match. As a result, the administrator may update the user profile information. After the administrator updates the user profile information, the scanning of the document is performed again by executing the processing from T32 onwards in Figure 2. In this modification, the "second receiving unit," "second belonging control unit," and "update communication execution unit" of the "terminal device" can be omitted. Similarly, the processing from T546 onwards in Figure 6 can be omitted. In this modification, the "second receiving unit," "second belonging control unit," and "update communication execution unit" of the "function execution device" can be omitted.

[0116] (Modification 5) Instead of the T150 process in Figure 3, for example, a process to establish a Data Path between terminal 10 and MFP 100 (T50-T56 in Figure 2) may be executed. In this modification, the wireless network formed by the establishment of the Data Path is an example of the "third wireless network". In another modification, instead of the T150 process, an establishment process to establish a Wi-Fi connection via an access point between terminal 10 and MFP 100 may be executed. In this modification, the wireless network formed by the access point is an example of the "third wireless network". Generally speaking, the "third wireless network" can be any wireless network as long as it has higher security than the "first wireless network".

[0117] (Modification 6) The processing of T152 to T160 in Figure 3 can be omitted. In this case, when the WFD connection with terminal 10 is established at T150, the MFP 100 may send a predetermined signal to terminal 10 that includes each piece of information contained in the authentication success signal of T160. Terminal 10 may use each piece of information to identify the newer of the information corresponding to the MFP 100 in table 40 and the information corresponding to terminal 10 in table 140. Generally speaking, "update communication" does not have to include "communication for user authentication".

[0118] (Modification 7) After the processing of T72 in Figure 2, the processing of T34 to T42 may be executed. That is, terminal 10 may send a Subscribe containing a hash value regardless of whether or not a Data Path has been established with MFP100.

[0119] (Modification 8) When terminal 10 receives a selection of the scan button from the user in T433 in Figure 6, it may execute the process in T444. Specifically, terminal 10 may hash the user profile information for each row of table 40. Then, terminal 10 may temporarily store the combination of the hash value and the serial number in memory 34. Then, when terminal 10 receives a Publish from MFP 100, it identifies the hash value that is combined with the serial number included in the Publish. Then, in S410, terminal 10 may determine whether the hash value included in the Publish matches the identified hash value.

[0120] (Modification 9) In the first embodiment described above, when terminal 10 receives a scan button selection at T33 in Figure 2, it displays a device selection screen on the display unit 14. Furthermore, when terminal 10 receives a scan button selection, it hashes the user profile information. In the modification, terminal 10 does not need to display the device selection screen and hash the user profile information after receiving a scan button selection. In this case, terminal 10 may hash the user profile information when a serial number is selected on the device selection screen. Specifically, first, when a serial number is selected on the device selection screen, terminal 10 identifies one row containing the serial number from table 40. Then, terminal 10 hashes the user profile information contained in the identified row. Then, at T36, terminal 10 may send a Subscribe that includes the calculated hash value, the selected serial number, and the serial number of terminal 10, "T1". In other words, in this modified example, the "transmitting unit" of the "terminal device" may "transmit first related information relating to first user information to the function execution device via the Wi-Fi interface and using the first wireless network when the terminal device belongs to a first wireless network conforming to the Wi-Fi standard, and a function execution device belonging to the first wireless network is selected by the user." Similarly, the "transmitting unit" of the "function execution device" may "transmit second related information relating to second user information to the terminal device via the Wi-Fi interface and using the first wireless network when a function execution device is selected by the user in a terminal device different from the function execution device that belongs to the first wireless network, and a function execution device is selected by the user in a terminal device that belongs to the first wireless network, and the function execution device is selected by the user."

[0121] (Modification 10) In the above embodiment, the processing of each step in Figures 2 to 4, Figure 6, and Figure 7 is implemented by software (for example, OS 36, application 38, program 136), but at least one of these processes may be implemented by hardware such as a logic circuit.

[0122] The technical elements described herein or in the drawings demonstrate technical usefulness individually or in various combinations, and are not limited to the combinations described in the claims at the time of filing. Furthermore, the technologies illustrated herein or in the drawings can achieve multiple objectives simultaneously, and achieving even one of these objectives constitutes technical usefulness in itself.

[0123] Even if, in the claims of this patent application, each claim depends on only some of the claims, it is not limited to the claim being dependent only on those specific claims. To the extent that it is not technically contradictory, each claim may be dependent on other claims that were not dependent at the time of application. That is, the technologies of each claim can be combined in various ways as follows: (Item 1) A terminal device, A Wi-Fi interface for performing wireless communication in accordance with the Wi-Fi standard, A memory for storing first user information, wherein the first user information is information for executing a predetermined function of a function execution device different from the terminal device, and the memory, When the terminal device belongs to a first wireless network in accordance with the Wi-Fi standard, a transmitting unit transmits first related information related to the first user information to the function execution device via the Wi-Fi interface and using the first wireless network, When the function execution device determines that the first related information and the second related information related to the second user information stored in the function execution device match, a first receiving unit receives a first response from the function execution device via the Wi-Fi interface using the first wireless network indicating that the first related information and the second related information match. When the first response is received from the function execution device, a first membership control unit assigns the terminal device to a second wireless network that conforms to the Wi-Fi standard and has higher security than the first wireless network, After the terminal device joins the second wireless network, a predetermined communication execution unit executes predetermined communication for the predetermined function with the function execution device via the Wi-Fi interface using the second wireless network, A terminal device equipped with the following features. (Item 2) The aforementioned predetermined function is a scanning function, The terminal device according to item 1, wherein the predetermined communication includes receiving scan data obtained by scanning a document from the function execution device. (Item 3) The aforementioned predetermined function is a printing function, The terminal device according to item 1, wherein the predetermined communication includes transmitting print data representing an image to be printed to the function execution device. (Item 4) The first related information is a first hash value obtained by hashing the first user information, The terminal device described in any one of items 1 to 3, wherein the second related information is a second hash value obtained by hashing the second user information. (Item 5) The aforementioned terminal device further, If the function execution device determines that the first related information and the second related information do not match, a second receiving unit receives a second response from the function execution device via the Wi-Fi interface and the first wireless network indicating that the first related information and the second related information do not match. When the second response is received from the function execution device, a second membership control unit assigns the terminal device to a third wireless network that conforms to the Wi-Fi standard and has higher security than the first wireless network, After the terminal device joins the third wireless network, an update communication execution unit executes an update communication via the Wi-Fi interface using the third wireless network to update the old user information among the first user information and the second user information to the new user information among the first user information and the second user information. A terminal device comprising any one of items 1 to 4. (Item 6) The aforementioned update communication includes communication for authenticating the user, as described in item 5, for the terminal device. (Item 7) The aforementioned transmitting unit When the terminal device belongs to the first wireless network and does not belong to the second wireless network, the first related information is transmitted to the function execution device. When the terminal device belongs to the first wireless network and the terminal device belongs to the second wireless network, the first related information is not transmitted to the function execution device. A terminal device as described in any one of items 1 through 6. (Item 8) The first wireless network is a Neighbor Awareness Networking (NAN) cluster as defined in the Wi-Fi Aware method of the Wi-Fi standard, and is a terminal device as described in any one of items 1 to 7. (Item 9) A function execution device, A Wi-Fi interface for performing wireless communication in accordance with the Wi-Fi standard, A memory for storing second user information, wherein the second user information is information for executing a predetermined function of the function execution device, and the memory, When the function execution device belongs to a first wireless network in accordance with the Wi-Fi standard, a transmission unit transmits second related information related to the second user information to a terminal device different from the function execution device via the Wi-Fi interface and using the first wireless network. A first receiving unit receives a third response from the terminal device via the Wi-Fi interface using the first wireless network, indicating that the first related information and the second related information match, when the terminal device determines that the first related information and the second related information match. When the third response is received from the terminal device, a first membership control unit assigns the function execution device to a second wireless network having higher security than the first wireless network, After the function execution device belongs to the second wireless network, a predetermined communication execution unit executes predetermined communication for the predetermined function with the terminal device via the Wi-Fi interface using the second wireless network, A functional execution device equipped with the following features. (Item 10) The aforementioned predetermined function is a scanning function, The aforementioned function execution device further, The system includes a scan execution unit that performs the aforementioned scan function, The function execution device according to item 9, wherein the predetermined communication includes transmitting scanned data obtained by scanning a document to the terminal device. (Item 11) The aforementioned predetermined function is a printing function, The aforementioned function execution device further, The system includes a print execution unit that performs the aforementioned printing function, The predetermined communication includes receiving print data representing the image to be printed from the terminal device. The aforementioned function execution device further, The function execution device according to item 9, further comprising a print control unit that causes the print execution unit to perform printing according to the print data when the print data is received from the terminal device. (Item 12) The first related information is a first hash value obtained by hashing the first user information, The function execution device according to any one of items 9 to 11, wherein the second related information is a second hash value obtained by hashing the second user information. (Item 13) The aforementioned function execution device further, A second receiving unit receives a fourth response from the terminal device indicating that the first related information and the second related information do not match, when the terminal device determines that the first related information and the second related information do not match. When the fourth response is received from the function execution device, a second membership control unit assigns the function execution device to a third wireless network conforming to the Wi-Fi standard, which has higher security than the first wireless network, After the function execution device joins the third wireless network, an update communication execution unit executes an update communication via the Wi-Fi interface using the third wireless network to update the old user information among the first user information and the second user information to the new user information among the first user information and the second user information. A functional execution device according to any one of items 9 to 12, comprising: (Item 14) The update communication includes communication for authenticating the user, as described in item 13, for the function execution device. (Item 15) The aforementioned transmitting unit When the function execution device belongs to the first wireless network and does not belong to the second wireless network, the second related information is transmitted to the terminal device. When the function execution device belongs to the first wireless network and the function execution device belongs to the second wireless network, the second related information is not transmitted to the terminal device. A device for executing functions as described in any one of items 9 through 14. (Item 16) The first wireless network is a Neighbor Awareness Networking (NAN) cluster as defined in the Wi-Fi Aware method of the Wi-Fi standard, and is a function execution device as described in any one of items 9 to 15. (Item 17) A method for performing predetermined communication for a predetermined function of a function execution device, A first communication step is performed between the terminal device and the function execution device using the first wireless network, in a state where the terminal device and the function execution device belong to a first wireless network in accordance with the Wi-Fi standard, to communicate first related information related to first user information stored in the terminal device, or second related information related to second user information stored in the function execution device. If the terminal device or the function execution device determines that the first related information and the second related information match, a second communication step is performed using the first wireless network to communicate a response indicating that the first related information and the second related information match between the terminal device and the function execution device. When the aforementioned response communication is performed, the following steps are taken: an assignment control step to assign both the terminal device and the function execution device to a second wireless network conforming to the Wi-Fi standard, the second wireless network having higher security than the first wireless network; A third communication step is performed, after both the terminal device and the function execution device belong to the second wireless network, by using the second wireless network to perform the predetermined communication between the terminal device and the function execution device. A method that includes [something]. (Item 18) The method according to item 17, wherein the first wireless network is a Neighbor Awareness Networking (NAN) cluster as defined in the Wi-Fi Aware method of the Wi-Fi standard. [Explanation of Symbols]

[0124] 2: Communication system, 10: Terminal, 12, 112: Operation unit, 14, 114: Display unit, 16, 116: Wi-Fi I / F, 30, 130: Control unit, 32, 132: CPU, 34, 134: Memory, 36: OS program, 38: Application program, 40, 140: User profile information table, 100: MFP, 118: Print execution unit, 120: Scan execution unit, 136: Program

Claims

1. A terminal device, A Wi-Fi interface for performing wireless communication in accordance with the Wi-Fi standard, A memory for storing first user information, wherein the first user information is information for executing a predetermined function of a function execution device different from the terminal device, and the memory, When the terminal device belongs to a first wireless network in accordance with the Wi-Fi standard, a transmission unit transmits first related information related to the first user information to the function execution device via the Wi-Fi interface and using the first wireless network, When the function execution device determines that the first related information and the second related information related to the second user information stored in the function execution device match, a first receiving unit receives a first response from the function execution device via the Wi-Fi interface using the first wireless network indicating that the first related information and the second related information match. When the first response is received from the function execution device, a first membership control unit assigns the terminal device to a second wireless network conforming to the Wi-Fi standard, which has higher security than the first wireless network. After the terminal device joins the second wireless network, a predetermined communication execution unit executes predetermined communication for the predetermined function with the function execution device via the Wi-Fi interface using the second wireless network, A terminal device equipped with the following features.

2. The aforementioned predetermined function is a scanning function, The terminal device according to claim 1, wherein the predetermined communication includes receiving scan data obtained by scanning a document from the function execution device.

3. The aforementioned predetermined function is a printing function, The terminal device according to claim 1, wherein the predetermined communication includes transmitting print data representing an image to be printed to the function execution device.

4. The first related information is a first hash value obtained by hashing the first user information, The terminal device according to claim 1, wherein the second related information is a second hash value obtained by hashing the second user information.

5. The aforementioned terminal device further, If the function execution device determines that the first related information and the second related information do not match, a second receiving unit receives a second response from the function execution device via the Wi-Fi interface and the first wireless network indicating that the first related information and the second related information do not match. When the second response is received from the function execution device, a second membership control unit assigns the terminal device to a third wireless network that conforms to the Wi-Fi standard and has higher security than the first wireless network, After the terminal device joins the third wireless network, an update communication execution unit executes an update communication via the Wi-Fi interface using the third wireless network to update the old user information among the first user information and the second user information to the new user information among the first user information and the second user information. The terminal device according to claim 1, comprising:

6. The terminal device according to claim 5, wherein the update communication includes communication for authenticating the user.

7. The aforementioned transmitting unit When the terminal device belongs to the first wireless network and does not belong to the second wireless network, the first related information is transmitted to the function execution device. When the terminal device belongs to the first wireless network and the terminal device belongs to the second wireless network, the first related information is not transmitted to the function execution device. The terminal device according to claim 1.

8. The terminal device according to claim 1, wherein the first wireless network is a Neighbor Awareness Network (NAN) cluster as defined in the Wi-Fi Aware method of the Wi-Fi standard.

9. A function execution device, A Wi-Fi interface for performing wireless communication in accordance with the Wi-Fi standard, A memory for storing second user information, wherein the second user information is information for executing a predetermined function of the function execution device, and the memory, When the function execution device belongs to a first wireless network in accordance with the Wi-Fi standard, a transmission unit transmits second related information related to the second user information to a terminal device different from the function execution device via the Wi-Fi interface and using the first wireless network, A first receiving unit receives a third response from the terminal device via the Wi-Fi interface using the first wireless network, indicating that the first related information and the second related information match, when the terminal device determines that the first related information and the second related information match. When the third response is received from the terminal device, a first membership control unit assigns the function execution device to a second wireless network having higher security than the first wireless network, After the function execution device belongs to the second wireless network, a predetermined communication execution unit executes predetermined communication for the predetermined function with the terminal device via the Wi-Fi interface using the second wireless network, A functional execution device equipped with the following features.

10. The aforementioned predetermined function is a scanning function, The aforementioned function execution device further, The system includes a scan execution unit that performs the aforementioned scan function, The function execution device according to claim 9, wherein the predetermined communication includes transmitting scan data obtained by scanning a document to the terminal device.

11. The aforementioned predetermined function is a printing function, The aforementioned function execution device further, The system includes a print execution unit that performs the aforementioned printing function, The predetermined communication includes receiving print data representing the image to be printed from the terminal device. The aforementioned function execution device further, The function execution device according to claim 9, further comprising a print control unit that causes the print execution unit to perform printing according to the print data when the print data is received from the terminal device.

12. The first related information is a first hash value obtained by hashing the first user information, The function execution device according to claim 9, wherein the second related information is a second hash value obtained by hashing the second user information.

13. The aforementioned function execution device further, If the terminal device determines that the first related information and the second related information do not match, a second receiving unit receives a fourth response from the terminal device indicating that the first related information and the second related information do not match. When the fourth response is received from the function execution device, a second membership control unit assigns the function execution device to a third wireless network conforming to the Wi-Fi standard, which has higher security than the first wireless network, After the function execution device joins the third wireless network, an update communication execution unit executes an update communication via the Wi-Fi interface using the third wireless network to update the old user information among the first user information and the second user information to the new user information among the first user information and the second user information. The function execution device according to claim 9, comprising:

14. The function execution device according to claim 13, wherein the update communication includes communication for authenticating the user.

15. The aforementioned transmitting unit When the function execution device belongs to the first wireless network and does not belong to the second wireless network, the second related information is transmitted to the terminal device. When the function execution device belongs to the first wireless network and the function execution device belongs to the second wireless network, the second related information is not transmitted to the terminal device. The function execution device according to claim 9.

16. The function execution device according to claim 9, wherein the first wireless network is a Neighbor Awareness Network (NAN) cluster as defined in the Wi-Fi Aware method of the Wi-Fi standard.

17. A method for performing predetermined communication for a predetermined function of a function execution device, A first communication step is performed between the terminal device and the function execution device using the first wireless network, in a state where the terminal device and the function execution device belong to a first wireless network in accordance with the Wi-Fi standard, to communicate first related information related to first user information stored in the terminal device, or second related information related to second user information stored in the function execution device. In the terminal device or the function execution device, if it is determined that the first related information and the second related information match, a second communication step is performed using the first wireless network to communicate a response indicating that the first related information and the second related information match between the terminal device and the function execution device. When the aforementioned response communication is performed, the process includes assigning both the terminal device and the function execution device to a second wireless network conforming to the Wi-Fi standard, which has higher security than the first wireless network, A third communication step is performed, after both the terminal device and the function execution device belong to the second wireless network, by using the second wireless network to perform the predetermined communication between the terminal device and the function execution device. A method that includes [a certain feature].

18. The method according to claim 17, wherein the first wireless network is a Neighbor Awareness Network (NAN) cluster as defined in the Wi-Fi Aware method of the Wi-Fi standard.

Citation Information

Patent Citations

  • Communication system, control method, and program

    JP2024150633A