CONTROL DEVICE, NON-TRANSITORY COMPUTER-READABLE RECORDING MEDIUM STORING COMPUTER-READABLE INSTRUCTIONS FOR CONTROL DEVICE, AND METHOD FOR CONTROLLING CONTROL DEVICE

A control device comprising may, in a case where a function executing device is in a non-accepting state in which the function executing device is not capable of accepting an authentication operation, display notification information regarding the non-accepting state on a display of a terminal device before displaying an instruction screen for prompting a user to execute the authentication operation on the display.

REFERENCE TO RELATED APPLICATIONS

This application claims priority to Japanese Patent Application No. 2023-150031 filed on Sep. 15, 2023. The entire content of the priority application is incorporated herein by reference.

BACKGROUND ART

A print system including a mobile terminal device, a printer, and a server is known. When the printer accepts physical authentication from a user after the printer has received a start notification for physical authentication, the printer sends information indicating that the printer has accepted the physical authentication to the mobile terminal device.

SUMMARY

In the above system, no consideration had been given to a possibility that the printer may fall into a state of being unable to accept the physical authentication. The present teachings provide an art configured to improve user convenience.

The disclosure herein discloses a non-transitory computer-readable recording medium storing computer-readable instructions for a control device. The computer-readable instructions, when executed by the processor, may cause the control device to: in a case where a function executing device is in a non-accepting state in which the function executing device is not capable of accepting an authentication operation, display notification information regarding to the non-accepting state on a display of a terminal device before displaying an instruction screen for prompting a user to execute the authentication operation on the display.

According to the above configuration, in a case where the function executing device is in the non-accepting state, the controller causes the display unit to display the notification information before the display unit of the terminal device is caused to display the instruction screen. Due to this, the user can acknowledge that the function executing device is in the non-accepting state before the user performs the authentication operation on the function executing device. Accordingly, user convenience can be improved.

A non-transitory computer-readable recording medium storing computer-readable instructions for a control device as described above, a control device realized by the above-described non-transitory computer-readable recording medium, and a method of controlling the control device are also novel and useful. Further, a communication system including a control device, a function executing device, and a terminal device is also novel and useful.

DESCRIPTION

First Embodiment

As shown inFIG.1, a communication system2comprises a plurality of printers10A,10B, a terminal device100, and a server200. The printers10A,10B and the terminal device100are connected to Local Area Network (LAN)4. The printers10A,10B, and the terminal device100are configured to communicate with each other via the LAN4. The printers10A,10B, the terminal device100, and the server200are connected to the Internet6. The printers10A,10B, the terminal device100, and the server200are configured to communicate with each other via the Internet6.

The server200is arranged on the Internet6by a vendor of the printers10A,10B (hereafter, simply termed “vendor”). The server200may be a physical server, a virtual server or a virtual machine on cloud, for example. The server200may comprise a single server or multiple servers as a unit. The server200may be a server on an intranet or a cloud server on the Internet6. In a modification, the server200may be installed on the Internet6by a business entity different from the vendor. In another modification, the vendor may not prepare hardware of the server200by themselves, but may implement an environment provided by an external cloud computing service. In this case, the vendor may prepare a program (software) for the server200, and have the program introduced in the above environment to realize the server200. In the present embodiment, as an example, a configuration in which the server200is a physical server will be described.

The server200provides a plurality of types of services related to printing. The plurality of types of services includes a charge service, a remote print service, and a subscription service. The charge service is a service for which a fee is charged. The charge service is a service which allows to print a number of sheets according to a paid fee by a user paying the fee in advance. Specifically, in the charge service, the fee that was paid in advance (billed price) by the user is subtracted each time a print function is executed. The remote print service is a service for which a fee is not charged. The remote print service allows to send a print instruction to a printer via the server200from outside the home. The user can use the remote print service without fees as long as the user signs up to the service. The subscription service is a service for which a fee is charged. The subscription service charges a fixed fee if the number of sheets printed within a predetermined period (e.g., one month) is less than or equal to a contracted number of printed sheets (e.g., 1000 sheets), and charges a price obtained by totaling the fixed fee and a fee according to the printed number of sheets exceeding the contracted number of printed sheets if the number of printed sheets within the predetermined period exceeds the contracted number of printed sheets. The charge service and the subscription service also include an automatic ordering service of automatically ordering a new cartridge in a case where a remaining amount of ink in a cartridge mounted in the printer becomes a predetermined remaining amount or less.

The server200comprises a communication interface220and a controller230. Hereafter, an interface will be referred to as “I/F”. The communication I/F220is connected to the Internet6. The controller230comprises a CPU232and a memory234. The memory234comprises a primary storage and an auxiliary storage. Although this is merely an example, the primary storage includes a RAM and cache. Although this is merely an example, the auxiliary storage may include a ROM, flash memory, a solid state drive (SSD), hard disk drive (HDD), or a combination thereof. The auxiliary storage of the memory234has a program240, a service table242, and a user table244stored therein. The CPU232realizes various types of process in accordance with a program loaded from the auxiliary storage to the primary storage.

The printer10A is a peripheral device configured to execute a print function. In a modification, the printer10A may be a multi-function peripheral configured to execute a scan function, a facsimile function, and a copy function in addition to the print function. The printer10A has a device ID “DV1” and a model name “MN1”. The device ID is a name given by an administrator of the printer. The model name is a name indicative of a model of a printer. In the present embodiment, there are a plurality of types of printers including a dedicated printer and a general-use printer. The dedicated printer is capable of receiving provision of the charge service and the remote print service but is uncapable of receiving provision of the subscription service. In the dedicated printer, the execution of the print function is allowed on condition that the device ID of the printer is registered in the server200as a printer which receives the provision of the charge service. Here, in the dedicated printer, as long as the device ID of the printer is registered in the server200as a printer which receives the provision of the charge service, the execution of the print function is allowed even when the device ID is not registered in the server200as the printer which receives the provision of the remote print service. The general-use printer is capable of receiving provision of the remote print service and the subscription service but is incapable of receiving the provision of the charge service. In the general-use printer, even when the device ID of the printer is not registered in the server200as a printer which receives provision of the service, the execution of the print function is allowed. The printer10A is a dedicated printer. The printer10A comprises an operation unit12, a display unit14, a print executing unit16, and a communication I/F20.

The operation unit12is an I/F which enables the user to input various types of information to the printer10A. The operation unit12comprises hardware key(s), software key(s) (object(s)) or a combination thereof. For example, the operation unit12comprises a touch screen, button(s), or a combination thereof. The display unit14is a display or panel for displaying the various information. The panel may or may not be a touch panel. Also, the panel is for example a liquid crystal display panel, an organic EL panel. The print executing unit16comprises a print engine such as ink jet scheme, electrophotographic scheme, or thermal scheme. The print engine of ink jet scheme comprises a print head which sprays ink droplets. The print engine of electrophotographic scheme comprises a photoreceptor and an exposure device that emits light to expose the photoreceptor. The print engine of thermal scheme comprises a print head that generates heat with a heater. The communication I/F20is connected to the LAN4. The communication I/F20may be a wired I/F or may be a wireless I/F.

A controller30comprises a CPU32and a memory34. The memory34comprises a primary storage and an auxiliary storage. The auxiliary storage of the memory34has a program40stored therein. The CPU32realizes various process in accordance with a program loaded from the auxiliary storage to the primary storage.

The printer10A operates in one of an accepting state in which the printer10A is capable of accepting physical authentication and a non-accepting state in which the printer10A is incapable of accepting the physical authentication. Here, the printer10A is configured to manage in which state the printer10A is in, the accepting state or the non-accepting state by using a flag (not shown) stored in the memory34. The physical authentication is an authentication operation for authenticating the user, and is a physical operation on the printer10A. The physical operation includes an operation on the hardware key(s), operation on the software key(s) or a combination thereof. The printer10A authenticates in response to such operation being performed. The authentication can be regarded as authentication for assuring that the user is nearby the printer10A. In the present embodiment, the physical authentication is an operation required for the user to subscribe to a service for the first time. The printer10A operates in the non-accepting state in a case where the printer10A is offline, the printer10A is in execution of (is now executing) the print function, the user is operating the operation unit12of the printer10A, or communication is inexecutable between the printer10A and the server200. Here, the state in which the printer10A is offline means a state in which the terminal device100cannot detect the printer10A by using communication. The state in which communication is inexecutable between the printer10A and the server200means a state in which the server200is down, there is failure in the Internet6. The printer10A operates in the accepting state in a case where the printer10A is online, the printer10A is not in execution of the print function, the user is not operating the operation unit12of the printer10A, and communication is executable between the printer10A and the server200.

The printer10B has the same configuration as that of the printer10A except that the printer10B has a device ID “DV2” and a model name “MN2” and is a general-use printer. Since the printer10B is a general-use printer, the execution of a print function of the printer10B is permitted upon when the printer10B has been purchased.

The terminal device100is a terminal device such as a mobile phone (e.g., smartphone), PDA, a tablet PC, a desktop PC, a laptop PC. The terminal device100comprises an operation unit112, a display unit114, a communication I/F120, and a controller130.

The operation unit112is an I/F configured to enable a user to input various information to the terminal device100, and comprises a touchscreen, button(s), or a combination thereof, for example. The display unit114is a display or a panel for displaying the various information. The panel may or may not be a touch panel. Also, the panel is for example a liquid crystal display panel, an organic EL panel. The communication I/F120is connected to the LAN4.

The controller130comprises a CPU132and a memory134. The memory134comprises a primary storage and an auxiliary storage. The auxiliary storage of the memory134has an OS program140and an application program142stored therein. Hereafter, the OS program140and the application program142will be referred to as “OS140” and “app142”. The OS140controls basic operations of the terminal device100. The app142causes the printer10A for example to execute a print function. The CPU132realizes various types of process in accordance with a program loaded from the auxiliary storage to the primary storage.

With reference toFIG.2, a service table242and a user table244in the memory234of the server200will be described.

The service table242is for managing service information corresponding to each of the plurality of types of services. In the service table242, a model name, charge service information, remote print service information, and subscription service information are stored in association with each other. Each of the charge service information, the remote print service information, and the subscription information indicates one value of “ON” indicating that the service is supported and “OFF” indicating that the service is not supported. The respective information in the service table242is set by an administrator of the server200. In the present embodiment, in the service information associated with a specific model (e.g., “MN1”), the charge service information and the subscription service information both are never set to “ON”.

The user table244is for managing registration information corresponding to each of the plurality of types of services. In the user table244, a user ID and first registration information corresponding to the charge service, second registration information corresponding to the remote print service, and third registration information corresponding to the subscription service are stored in association with each other. In the first registration information, a device ID of a printer which receives provision of the charge service is stored. In the second registration information, a device ID of a printer which receives provision of the remote print service is stored. In the third registration information, a device ID of a printer which receives provision of the subscription service is stored.

With reference toFIGS.3to10, an application process executed by the app142of the terminal device100will be described. In a case where the app142accepts an operation for activating the app142(hereafter, “app activating operation”), the app142starts process ofFIG.3. Here, the app142accesses, via the OS136, respective hardware such as the display unit114, the memory134, the communication I/F120and thus executes respective process. Hereafter, the app142's execution of process via the OS140will be described with some of the details omitted. Communication between the respective devices is executed via a communication I/F (e.g.,20,120,220). Accordingly, “via a communication I/F” will be omitted when communication is described.

In S10, the app142causes the display unit114to display a home screen300(seeFIGS.7to10). Information displayed on the home screen300differs according to whether a printer is registered in the terminal device100or not. Here, “printer is registered in the terminal device100” may be said as the printer being registered in the app142. Also, the information displayed on the home screen300differs according to a type of a printer registered in the terminal device100. As shown inFIG.7, the home screen300in a case where a printer is not registered in the terminal device100includes a Print button302, a Setting button304, and a device object306including a character string “Not Selected”. The device object306indicates information related to printer(s) registered in the terminal device100as a printer caused to execute a print function via the app142. The device object306serves as a button for searching for printer(s) registered in the terminal device100. Also, as shown inFIGS.8and9, the home screen300in a case where the printer10B which is a general-use printer is registered in the terminal device100includes the Print button302, the Setting button304, a Remote button308, a Subscription button309, and the device object306. In the device object306in this case, the device ID “DV2” and the model name “MN2” of the registered printer10B are displayed. The Remote button308is for subscribing to the remote print service. The Subscription button309is for subscribing to the subscription service. Further, as shown inFIG.10, the home screen300in a case where the printer10A which is a dedicated printer is registered in the terminal device100includes the Print button302, the Setting button304, the Remote button308, and the device object306. In the device object306in this case, the device ID “DV1” and the model name “MN1” of the registered printer10A are displayed.

In S12ofFIG.3, the app142monitors for the device object306(seeFIG.7) on the home screen300being operated. The app142determines YES to S12in a case where the app142accepts the operation on the device object306, and proceeds to S14.

In S14, the app142executes a search process for searching for printer(s) belonging to the LAN4, and causes the display unit114to display a device selection screen310(seeFIG.7). In the search process, the app142sends to the LAN4a search signal for searching for printer(s) belonging to the LAN4. In response to the search signal being sent to the LAN4, the app142receives response signal(s) each including the device ID and the model name from the printer(s) belonging to the LAN4(in the present embodiment, the two printers10A,10B). The app142causes the display unit114to display the device selection screen310by using the received response signals. As shown inFIG.7, the device selection screen310includes device buttons312,314corresponding to the received response signals and a Cancel button316. The device buttons312,314are for selecting printer(s) to be registered in the terminal device100. The device buttons312,314respectively correspond to the printers10A,10B.

In S16ofFIG.3, the app142determines whether an operation for selecting printer(s) to be registered in the terminal device100(hereafter, “device selection operation”) has been performed or not. Specifically, the app142determines whether the device buttons312,314(seeFIG.7) on the device selection screen310have been operated or not. In a case where the app142accepts the operation for selecting the device buttons312,314, the app142determines that the device selection operation has been performed (YES to S16) and proceeds to S18. Contrary to this, in a case where the app142accepts an operation on the Cancel button316(seeFIG.7) on the device selection screen310, the app142determines that the device selection operation has not been performed (NO to S16), and returns to S10.

In S18, the app142executes a first screen display process (seeFIG.4). The first screen display process is for causing the display unit114to display a screen for subscribing to the charge service. When S18ends, the app142proceeds to S20.

In S20, the app142executes a second screen display process (seeFIG.5). The second screen display process is for causing the display unit114to display a screen for subscribing to the remote print service. When S20ends, the app142proceeds to S22.

In S22, the app142executes a third screen display process (seeFIG.6). The third screen display process is for causing the display unit114to display a screen for subscribing to the subscription service. When S22ends, the app142returns to S10. Here, in the case where S22ends, the app142stores the device ID and the model name of the printer selected in S16in the memory134. Due to this, registration of the printer to the terminal device100is completed.

Further, in S30, the app142monitors for an operation for subscribing to the remote print service (hereafter, “remote print service selection operation”) being performed, while performing the monitoring of S12at the same time. Specifically, the app142monitors for the Remote button308(seeFIG.8) on the home screen300being operated. In a case where the app142accepts the operation on the Remote button308, the app142determines that the remote print service selection operation has been performed (YES to S30), and returns to S32.

In S32, the app142executes the second screen display process (seeFIG.5). When S32ends, the app142returns to S10.

Also, in S40, simultaneously with the monitoring of S12and S30, the app142monitors for an operation for subscribing to the subscription service (hereafter, “subscription service selection operation”) being performed. Specifically, the app142monitors for the Subscription button309(seeFIG.8) on the home screen300being operated. In a case where the app142accepts the operation on the Subscription button309, the app142determines that the remote print service selection operation has been performed (YES to S40), and proceeds to S42.

In S42, the app142executes the third screen display process (seeFIG.6). When S42ends, the app142returns to S10. Although this is not shown, the app142executes a process for causing the registered printer to execute the print function when the app142accepts the operation on the Print button302(seeFIG.8) on the home screen300in a state where the printer is registered in the terminal device100. Further, when the app142accepts operation on the Setting button304(seeFIG.8) on the home screen300, the app142causes the display unit114to display a screen for changing the setting of the registered printer.

With reference toFIGS.4,7, and8, the first screen display process executed in S18ofFIG.3will be described.

In S50, the app142determines whether the printer selected by a user (hereafter, “target printer”) supports the charge service or not. The app142sends a support information request including the model name of the target printer (hereafter, “target model name”) to the server200. The support information request is a signal for requesting the server200to send support information. The support information includes service information corresponding to each of the plurality of types of services. When the server200receives the support information request from the terminal device100, the server200specifies the service information of each service by using the service table242in the memory234and the target model name in the request. The server200sends the support information including the service information corresponding to each service to the terminal device100. When the app142receives the support information from the server200, the app142determines whether the charge service information in the received support information is “ON” or not. In a case where the charge service information is “ON” (YES to S50), the app142proceeds to S52, and in a case where the charge service information is “OFF” (NO to S50), the app142ends process ofFIG.4.

In S52, the app142causes the display unit114to display a charge service screen320. As shown inFIG.7, the charge service screen320includes a first service message322and a Next button324. The first service message322includes information that prompts the user to subscribe to the charge service and pay a fee. Although this is an example, the first service message322is “Please subscribe to charge service and execute charging”.

In S54ofFIG.4, the app142monitors for the Next button324(seeFIG.7) on the charge service screen320being operated. In a case where the app142accepts the operation on the Next button324, the app142determines YES to S54and proceeds to S56.

In S56, the app142determines whether the target printer is already registered in the server200as a printer for receiving provision of service. The app142sends an inquiry signal including the target model name to the server200. The inquiry signal is for inquiring of whether the target model name is registered in the user table244of the server200or not. When the server200receives the inquiry signal from the terminal device100, the server200determines whether the target model name is registered in the user table244of the server200. In a case where the target model name is registered in the user table244, the server200sends registered information indicating that the target model name is already registered in the terminal device100, and in a case where the target model name is unregistered (not registered) in the user table244, the server200sends unregistered information indicating that the target model name is unregistered (i.e., not registered) to the terminal device100. In a case where the app142receives the registered information from the server200, the app142determines YES to S56and proceeds to S72, and in a case where the app142receives the unregistered information from the server200, the app142determines NO to S56and proceeds to S60.

In S60, the app142determines whether the target printer is in the non-accepting state or not. The app142sends a status information request to the target printer. The status information request is a signal for requesting for status information indicating a status of the target printer to be sent. The status information of the present embodiment includes print-related information indicating whether the target printer is in execution of the print function, operation-related information indicating whether the user is now operating the operation unit of the target printer or not, and communication-related information indicating whether communication is executable between the target printer and the server200. In a case where the target printer receives the status information request from the terminal device100, the target printer specifies whether the print function is in execution or not, whether the user is now operating the operation unit of the target printer, and whether communication is executable between the target printer and the server200. Here, the target printer sends a well-being confirmation signal to the server200to thus determine whether communication is executable between the target printer and the server200. In a case where the target printer receives a response signal to the well-being confirmation signal from the server200, the target printer determines that communication is executable between the target printer and the server200, and in a case where the target printer does not receive the response signal from the server200, the target printer determines that communication is inexecutable between the target printer and the server200. Then the target printer sends the status information including the print-related information, the operation-related information, and the communication-related information to the terminal device100. In a case where the print-related information indicates that the target printer is in execution of the print function, in a case where the operation-related information indicates that the user is now operating the operation unit of the target printer, or in a case where the communication-related information indicates that communication is inexecutable between the target printer and the server200, the app142determines that the target printer is in the non-accepting state (YES to S60) and proceeds to S62. Contrary to this, in a case where the print-related information indicates that the target printer is not in execution of the print function, in a case where the operation-related information indicates that now the user is not operating the operation unit of the target printer, and in a case where the communication-related information indicates that communication is executable between the target printer and the server200, the app142determines that the target printer is in the accepting state (NO to S60) and proceeds to S70. Also, in a case where the app142does not receive the status information from the target printer, the app142determines that the target printer is in the non-accepting state (YES to S60) and proceeds to S62. The case where the app142does not receive the status information from the target printer is a case where the target printer is offline.

In S62, the app142displays a notification screen326(seeFIG.7) on the charge service screen320. As shown inFIG.7, the notification screen326includes notification information328indicating that the target printer is in the non-accepting state, a Retry button330, and a Cancel button332. The notification information328includes information indicating a cause why the target printer is in the non-accepting state. As shown inFIG.11, although this is merely an example, in a case where the target printer is in the non-accepting state due to the target printer being offline as shown inFIG.11, the notification information328is “Due to printer being offline, physical authentication cannot be accepted.” Although this is merely an example, in a case where the target printer is in the non-accepting state due to the target printer being in execution of the print function, the notification information328is “Because printer is executing print function, physical authentication cannot be accepted”. Further, although this is merely an example, in a case where the target printer is in the non-accepting state due to the user being operating the operation unit of the target printer, the notification information328is “Because printer is being operated by another user, physical authentication cannot be accepted.” Further, although this is merely an example, in a case where the target printer is in the non-accepting state due to communication being inexecutable between the target printer and the server200, the notification information328is “Because printer cannot communicate with server, physical authentication cannot be accepted.” As such, by looking at the notification screen326, a user of the terminal device100(hereafter, “target user”), can acknowledge that the target printer is in the non-accepting state and the cause why the target printer is in the non-accepting state. Accordingly, user convenience is improved.

In S64ofFIG.4, the app142monitors for the Retry button330(seeFIG.7) on the notification screen326being operated. In a case where the app142accepts the operation on the Retry button330, the app142determines YES to S64and returns to S60. According to such configuration, by operating the Retry button330, the target user can re-acknowledge whether the target printer is in the non-accepting state. Accordingly, user convenience is improved.

Also, in S66, the app142monitors for, simultaneously with the monitoring of S64, the Cancel button332(seeFIG.7) on the notification screen326being operated. In a case where the app142accepts operation on the Cancel button332, the app142determines YES to S66and returns to S52.

In S70, the app142sends a maintaining request to the target printer. The maintaining request is a signal for requesting the target printer to maintain the accepting state over a predetermined time period (e.g., two minutes). In a case where the target printer receives the maintaining request from the app142, the target printer maintains the accepting state over the predetermined time period. Due to this, the target printer does not receive the print instruction sent from another device from when the maintaining request is received until the predetermined time period elapses. Further, the target printer does not accept any operation other than the physical authentication from when the maintaining request is received until the predetermined time period elapses. According to such operation, a possibility of the target printer being in the accepting state when the target user performs the physical authentication on the target printer can be increased. Accordingly, user convenience is improved. Alternatively in a modification, the target printer may maintain the accepting state from when the maintaining request is received until the physical authentication is accepted.

In S72, the app142determines whether the target user is logged in the server200. In a case where the target user is logged in the server200(YES to S72), the app142proceeds to S78, and in a case where the target user is not logged in the server200(NO to S72), the app142proceeds to S74.

In S74, the app142causes the display unit114to display a log in screen340. As shown inFIG.7, the log in screen340includes a user ID inputting field342for inputting a user ID, a password inputting field344for inputting a password, and a Login button346.

In S76ofFIG.4, the app142accepts a login operation of inputting a user ID and a password. When the app142accepts the login operation, the app142sends the inputted user ID and password to the server200. By the server200receiving the user ID and password and user authentication using the user ID and password succeeding, login of the target user into the server200is completed.

S78is the same as S56. In a case where the app142determines YES to S78, the app142proceeds to S82and in a case where the app142determines NO to S78, the app142proceeds to S80.

In S80, the app142causes the display unit114to display an instruction screen350for prompting the user to perform the physical authentication. As shown inFIG.7, the instruction screen350includes a prompt message352for prompting the user to perform the physical authentication and a Next button354. Although this is merely an example, the prompt message352is “Please press color copy button and monochrome copy button simultaneously”. Due to this, the target user can acknowledge a content of the physical authentication and that he/she needs to perform the physical authentication. Alternatively in a modification, the physical authentication may be operation on an object (e.g., OK button) on a screen displayed on a display unit of the target printer.

Although this is not shown, when the physical authentication is performed on the target printer, the target printer displays a confirmation screen for confirming whether a first subscription process may be started or not. Here, even if the physical authentication is performed on the target printer with the target printer being in the non-accepting state, the confirmation screen is not displayed because the target printer cannot accept the physical authentication. The first subscription process is for subscribing to the charge service. When an operation for starting the first subscription process is performed on the target printer, the first subscription process is executed between the target printer, the terminal device100, and the server200. The first subscription process includes establishing process, first registration process, and payment process, for example. The establishing process is for establishing fulltime connection between the target printer and the server200. The fulltime connection is for example Extensible Messaging and Presence Protocol (XMPP) connection. The first registration process is for registering the device ID of the target printer (hereafter “target device ID”) in the first registration information in the user table244of the server200. In response to the target device ID being sent from the target printer to the server200, the target device ID is registered in the first registration information. The payment process is for paying a print fee. The first subscription process includes the server200sending a plurality of screen data (web pages) to the terminal device100. The terminal device100uses a Web View function and thus causes the display unit114to display the screen data sent from the server200. Here, in a case where fulltime connection is already established (present) between the target printer and the server200at the time of the first subscription process being executed, that is, in a case where the target user has already subscribed to a service different from the charge service, the establishing process is omitted.

In S82, the app142causes the display unit114to display a process in-execution screen400. The process in-execution screen400includes a message402indicating that the first subscription process is in execution (e.g., “the first subscription process is in execution now.”). Here, in a case where NO is determined to S78, the app142causes the display unit114to display the process in-execution screen400in a case where the app142receives information indicating that the physical authentication has been accepted from the target printer after the instruction screen350(seeFIG.7) has been displayed on the display unit114.

In S84, the app142monitors for the first subscription process being completed. For example, in a case where the app142receives a notification indicating that the first subscription process has completed from the server200, the app142determines that the first subscription process has completed. In a case where the app142determines that the first subscription process has completed, the app142determines YES to S84and ends the process ofFIG.4.

With reference toFIGS.5and8, the second screen display process executed in S20and S32inFIG.3will be described.

In S100, the app142determines whether the target printer supports the remote print service or not. Similar to S50inFIG.4, the app142sends the support information request including the target model name to the server200, and receives the support information from the server200. In a case where the remote print service information in the support information is “ON” (YES to S100), the app142proceeds to S102. Contrary to this, in a case where the remote print service information is “OFF” (NO to S100), the app142ends process ofFIG.5.

In S102, the app142causes the display unit114to display a remote print service screen360. As shown inFIG.8, the remote print service screen360includes a second service message362, a Next button364, and a Cancel button366. The second service message362indicates a content of the remote print service. Although this is an example, the second service message362is “If you subscribe to remote print service, you can execute print using printer from outside.”

In S104ofFIG.5, the app142monitors for the Next button364(seeFIG.8) on the remote print service screen360being operated. In a case where the app142accepts the operation on the Next button364, the app142determines YES to S104and proceeds to S106.

S106and S110are the same as S56, S60inFIG.4, respectively. In a case where YES is determined to S106, the app142proceeds to S122, and in a case where NO is determined to S106, the app142proceeds to S110. In a case where YES is determined to S110, the app142proceeds to S112, and NO is determined to S110, the app142proceeds to S120. S112is the same as S62inFIG.4except that the notification screen326is displayed on the remote print service screen360(seeFIG.8). S114, S116are the same as S64, S66inFIG.4, respectively. In a case where YES is determined to S114, the app142returns to S110, and in a case where YES is determined to S116, the app142returns to S102. S120to S130are the same as S70to S80inFIG.4. S132is the same as S82except that a process in-execution screen410including a message412indicating that the second subscription process is in execution (e.g., “Second subscription process is in execution now”) is displayed on the display unit114.

When the physical authentication is performed on the target printer after the instruction screen350(seeFIG.8) has been displayed on the display unit114, the target printer displays a confirmation screen for confirming whether the second subscription process may be started or not. The second subscription process is for subscribing to the remote print service. When an operation for starting the second subscription process is performed on the target printer, the second subscription process is executed between the target printer, the terminal device100, and the server200. The second subscription process includes the establishing process, and second registration process, for example. The second registration process is for registering a target device ID in the second registration information in the user table244of the server200. In response to the target device ID being sent from the target printer to the server200, the target device ID is registered in the second registration information. Here, in the second subscription process, as in the first subscription process, the establishing process may be omitted.

In S134, the app142monitors for the second subscription process being completed. For example, in a case where the app142receives a notification indicating that the second subscription process has completed from the server200, the app142determines that the second subscription process has completed. In a case where the app142determines that the second subscription process has completed, the app142determines YES to S134and ends process ofFIG.5.

With reference toFIGS.6and9, third screen display process executed in S22, S42ofFIG.3will be described.

In S150, the app142determines whether the target printer supports the subscription service or not. Similar to S50inFIG.4, the app142sends a support information request including the target model name to the server200, and receives the support information from the server200. In a case where the subscription service information in the received support information is “ON” (YES to S150), the app142proceeds to S152. Contrary to this, in a case where the subscription service information is “OFF” (NO to S150), the app142ends process ofFIG.6.

In S152, the app142causes the display unit114to display a subscription service screen370. As shown inFIG.9, the subscription service screen370includes a third service message372, a Next button374, and a Cancel button376. The third service message372indicates a content of the subscription service. Although this is an example, the third service message372is “If you register to subscription service, you can print at flat-rate.”

In S154ofFIG.6, the app142monitors for the Next button364(seeFIG.9) on the subscription service screen370being operated. In a case where the app142accepts the operation on the Next button364, the app142determines YES to S154and proceeds to S156.

S156, S160are the same as S56, S60inFIG.4, respectively. In a case where the app142determines YES to S156, the app142proceeds to S172, and in a case where the app142determines NO to S156, the app142proceeds to S160. In a case where the app142determines YES to S160, the app142proceeds to S162and in a case where the app142determines NO to S160, the app142proceeds to S170. S162is the same as S62inFIG.5except that the notification screen326is displayed on the subscription service screen370(seeFIG.9). S154, S156are respectively the same as S64, S66inFIG.4, respectively. In a case where the app142determines YES to S164, the app142returns to S160, and in a case where the app142determines YES to S166, the app142returns to S152. S170to S180are the same as S70to S80inFIG.4. S182is the same as S82except that a process in-execution screen420including a message422indicating that third subscription process is in execution (e.g., “Third subscription process is in execution”) is displayed on the display unit114.

In a case where the physical authentication is performed on the target printer after the instruction screen350(seeFIG.9) has been displayed on the display unit114, the target printer displays a confirmation screen for confirming whether the third subscription process may be started or not. The third subscription process is for subscribing to the subscription service. When an operation for starting the third subscription process is performed on the target printer, the third subscription process is executed between the target printer, the terminal device100, and the server200. The third subscription process includes the establishing process and third registration process, for example. The third registration process is for registering the target device ID in the third registration information in the user table244of the server200. In response to the target device ID being sent from the target printer to the server200, the target device ID is registered in the third registration information. Here, in the third subscription process, as in the first subscription process, the establishing process may be omitted.

In S184, the app142monitors for the third subscription process being completed. For example, in a case where the app142receives a notification indicating that the third subscription process has completed from the server200, the app142determines that the third subscription process has completed. In a case where the app142determines that the third subscription process has completed, the app142determines YES to S184and ends process ofFIG.6.

With reference toFIGS.7to11, screens displayed on the display unit114of the terminal device100in specific cases A to D will be described.

With reference toFIG.7, Case A in which a printer is unregistered (i.e., not registered) in the terminal device100and the target user has not subscripted to a service will be described. At an initial state of Case A, the printer10A is offline. Also, the user table244of the server200is in a vacant state. Hereafter, operations executed by a CPU of each device (e.g., the CPU132) will be described with each device (e.g., the terminal device100) as a subject of action, without describing the CPU as a subject of action.

When the terminal device100accepts the app activating operation, the printer determines that the printer is unregistered in the terminal device100, and displays the home screen300including the device object306with a character string “Not Selected” written therein (S10inFIG.3). When the terminal device100accepts a device selection operation for operating the device object306on the home screen300(YES to S12), the terminal device100executes search process and displays the device selection screen310(S14). In a case where the terminal device100accepts an operation on a device button312on the device selection screen310(YES to S16), the terminal device100executes the first screen display process (S18inFIG.3, andFIG.4). The terminal device100sends the support information request including the model name “MN1” of the printer10A to the server200, and receives the support information including the charge service information “ON”, the remote print service information “ON”, and the subscription service information “OFF”. The terminal device100determines that the charge service information in the received support information is “ON” (YES to S50inFIG.4), the terminal device100displays the charge service screen320(S52).

When the terminal device100accepts an operation on the Next button324on the charge service screen320(YES to S54), the terminal device100sends an inquiry signal including the model name “MN1” to the server200and receives unregistered information from the server200. In this case, the terminal device100determines that the printer10A is not registered in the server200(YES to S60), and sends the status information request to the printer10A. In the present case, because the printer10A is offline, the terminal device100does not receive status information from the printer10A even if a predetermined time period elapses from when the status information request was sent to the printer10A, which makes timeout. In this case, the terminal device100determines that the printer10A is in the non-accepting state (YES to S60), and displays the notification screen326including the notification information328on the charge service screen320. The notification information328in the present case indicates that the printer10A is offline.

After the notification screen326has been displayed, the targe user performs an operation for shifting the printer10A from the offline state to online state on the printer10A. Due to this, the printer10A changes from the non-accepting state to the accepting state. Next, the target user operates the Retry button330on the notification screen326(YES to S64). Due to this, the terminal device100re-sends the status information request to the printer10A. Since the printer10A has changed from the non-accepting state to the accepting state, the terminal device100receives the status information from the printer10A. In the present case, the print-related information indicates that the target printer is not in execution of the print function, the operation-related information indicates that the user is not operating the operation unit of the target printer, and the communication-related information indicates that communication is executable between the target printer and the server200. Due to this, the terminal device100determines that the printer10A is in the accepting state (NO to S60), and sends the maintaining request to the printer10A (S70). Next, the terminal device100determines that the target user is not logged in the server200(NO to S72), and displays the log in screen340(S72). When the terminal device100accepts input of the user ID “U1” and a password (YES to S76), the terminal device100sends the inputted user ID “U1” and password to the server200. Subsequently, the terminal device100determines that the printer10A is not registered in the server200(YES to S78). In this case, the printer10A displays the instruction screen350(S80).

When the physical authentication and an operation for starting the first subscription process are performed on the printer10A after the instruction screen350has been displayed on the terminal device100, the first subscription process is executed between the printer10A, the terminal device100, and the server200. In a case where the terminal device100receives information indicating that the physical authentication has been accepted from the printer10A, the terminal device100displays the process in-execution screen400(seeFIG.4) (S82). In a case where the terminal device100receives a notification indicating that the first subscription process has completed from the server200, the terminal device100determines that the first subscription process has completed (YES to S84) and ends the first screen display process (S18inFIG.3,FIG.4). As such, in the user table244of the server200, the user ID “U1” and the first registration information “DV1” are stored in association with each other. That is, the subscription of the target user to the charge service is completed.

Although not shown, thereafter, the terminal device100executes the second screen display process (S22inFIG.3, andFIG.5) and the third screen display process (S24inFIG.3, andFIG.6). In a case where the third screen display process ends, the terminal device100stores the device ID “DV1” and the model name “MN1” of the printer10A in the memory134, and displays the home screen300. In the device object306of the home screen300displayed at this occasion, the device ID “DV1” and the model name “MN1” of the printer10A are displayed.

(Effects by Case A)

As mentioned above, in a case where the terminal device100accepts the device selection operation and also the printer10A is in the non-accepting state, the terminal device100displays the notification information328before displaying the instruction screen350. A possibility that the physical authentication is performed on the printer10A after the device selection operation has been performed is high. According to the above configuration, the notification information328can be displayed at a suitable time. Accordingly, user convenience is improved.

The terminal device100displays the log in screen340before displaying the instruction screen350in the case where the printer10A changes from the non-accepting state to the accepting state. The target user moves to a spot where the printer10A is located in order to perform the physical authentication on the printer10A. At this occasion, the target user may not bring the terminal device100to that spot. Due to this, if the log in screen340is displayed after the instruction screen350has been displayed, the target user may not notice that the log in screen340is displayed on the terminal device100after the target user has performed the physical authentication on the target printer. According to the above configuration, the targe user can be surely made to input the user ID “U1”.

With reference toFIG.8, Case B in which the printer10B is registered in the terminal device100and the target user has not yet subscribed to the service will be described. At an initial state of Case B, the user table244of the server200is in a vacant state.

When the terminal device100accepts the app activating operation, the terminal device100determines that the printer10B is registered in the terminal device100and displays the home screen300including the device object306with the device ID “DV2” and the model name “MN2” written therein (S10inFIG.3). When the terminal device100accepts an operation on the Remote button308on the home screen300(YES to S30), the terminal device100executes the second screen display process (S32,FIG.5). The terminal device100sends the support information request including the model name “MN2” of the printer10B to the server200, and receives the support information including the charge service information “OFF”, the remote print service information “ON”, and the subscription service information “ON” from the server200. The terminal device100determines that the remote print service information in the received support information is “ON” (YES to S100inFIG.5), and displays the remote print service screen360(S102).

When the terminal device100accepts an operation on the Next button364on the remote print service screen360(YES to S104), the terminal device100sends an inquiry signal including the model name “MN2” to the server200and receives unregistered information from the server200. In this case, the terminal device100determines that the printer10B is not registered in the server200(YES to S106). Next, the terminal device100sends the status information request to the printer10B. In the present case, a situation in which the printer10B is in execution of the print function upon when the printer10B receives the status information from the terminal device100will be assumed. In this case, the print-related information in the status information sent from the printer10B to the terminal device100indicates that the printer10B is in execution of the print function. The terminal device100determines that the printer10B is in the non-accepting state due to the print-related information indicating that the printer10B is in execution of the print function (YES to S110). In this case, the terminal device100displays the notification screen326including the notification information328on the remote print service screen360(S112). The notification information328in the present case indicates that the printer10B is in execution of the print function.

After the target user has acknowledged that the execution by the printer10B of the print function has completed, that is, that the printer10B has changed from the non-accepting state to the accepting state, the target user operates the Retry button330in the notification screen326(YES to S114). Due to this, the terminal device100re-sends the status information request to the printer10B, and receives the status information from the printer10B. In this case, the terminal device100determines that the printer10B is in the accepting state (NO to S110) and sends the maintaining request to the printer10B (S120). Next, the terminal device100determines that the target user is not logged in the server200(NO to S122) and displays the log in screen340(S124). When the terminal device100accepts input of the user ID “U1” and password (YES to S126), and sends the inputted user ID “U1” and password to the server200. Next, the terminal device100determines that the printer10B is not registered in the server200(YES to S128). In this case, the terminal device100displays the instruction screen350(S120).

Thereafter, when the physical authentication and an operation for starting the second subscription process are performed on the printer10B, the second subscription process is executed between the printer10B, the terminal device100, and the server200. In a case where the terminal device100receives information indicating that the physical authentication has been accepted from the printer10B, the terminal device100displays the process in-execution screen410(seeFIG.5) (S132). In a case where the terminal device100receives a notification indicating that the second subscription process has completed from the server200, the terminal device100determines that the second subscription process has completed (YES to S134), and ends the second screen display process (S32inFIG.3,FIG.5). Due to this, in the user table244of the server200, the user ID “U1” and the second registration information “DV2” are stored in association with each other. That is, the subscription of the target user to the remote print service is completed.

With reference toFIG.9, Case C in which the printer10B is registered in the terminal device100and the target user has not subscribed to the service will be described. At an initial state of Case C, the user table244of the server200is in a vacant state.

The home screen300inFIG.9is the same as the home screen300in Case B ofFIG.8. When the terminal device100accepts an operation on the Subscription button309on the home screen300(YES to S40inFIG.3), the terminal device100executes the third screen display process (S42,FIG.6). Similar to Case B, the terminal device100receives the support information corresponding to the model name “MN2” from the server200. The terminal device100determines that the subscription service information in the received support information is “ON” (YES to S150inFIG.6), the terminal device100displays the subscription service screen370(S152).

When the terminal device100accepts an operation on the Next button374on the subscription service screen370(YES to S154), the terminal device100sends an inquiry signal including the model name “MN2” to the server200, and receives unregistered information from the server200. In this case, the terminal device100determines that the printer10B is not registered in the server200(YES to S106). The terminal device100sends the status information request to the printer10B. In the present case, at a timing of the printer10B receiving the status information from the terminal device100, the printer10B is in the accepting state. Due to this, the terminal device100determines based on the status information received from the printer10B that the printer10B is in the accepting state (NO to S160), and the terminal device100does not display the notification screen326. The terminal device100sends the maintaining request to the printer10B (S170), the terminal device100determines that the target user is not logged in the server200(NO to S172), and displays the log in screen340(S174). When the terminal device100accepts input of the user ID “U1” and password (YES to S176), and sends the inputted user ID “U1” and password to the server200. Subsequently, the terminal device100determines that the printer10B is not registered in the server200(YES to S178). In this case, the terminal device100displays the instruction screen350(S180). Process executed thereafter is the same as that of Case B inFIG.8except that the third subscription process is executed and that the process in-execution screen420(seeFIG.6) is displayed. Due to this, in the user table244of the server200, the user ID “U1” and the third registration information “DV2” are stored in association with each other. That is, subscription of the target user to the subscription service is completed.

(Effects by Case C)

As mentioned above, in the case where the printer10B is in the accepting state, the terminal device100does not display the notification information328but displays the instruction screen350. In the case where the printer10B is in the accepting state, the notification information328is unnecessary information for the target user. Accordingly, the unnecessary information can be suppressed from being displayed on the terminal device100, and thus user convenience can be improved.

With reference toFIG.10, Case D in which the printer10A is registered in the terminal device100and the target user has subscribed to the charge service will be described. At an initial state of Case D, in the user table244of the server200, the user ID “U1” and the first registration information “DV1” are stored in association with each other.

When the terminal device100accepts the app activating operation, the terminal device100determines that the printer10A is registered in the terminal device100, and displays the home screen300including the device object306with the device ID “DV1” and the model name “MN1” written therein (S10inFIG.3). When the terminal device100accepts an operation on the Remote button308on the home screen300(YES to S30), the terminal device100executes the second screen display process (S32,FIG.5). Similar to Case A inFIG.7, the terminal device100receives the support information corresponding to the model name “MN1” from the server200. The terminal device100determines that the remote print service information in the received support information is “ON” (YES to S100inFIG.5), the terminal device100displays the remote print service screen360(S102).

When the terminal device100accepts an operation on the Next button364on the remote print service screen360(YES to S104), the terminal device100sends an inquiry signal including the model name “MN1” to the server200, and receives registered information from the server200. In this case, the terminal device100determines that the printer10A is registered in the server200(YES to S106), and does not determine whether the printer10A is in the non-accepting state or not. Next, the terminal device100determines that the target user is not logged in the server200(NO to S122), and displays the log in screen340(S124). When the terminal device100accepts an input of the user ID “U1” and password (YES to S126), the terminal device100sends the inputted user ID “U1” and password to the server200, and determines that the printer10A is registered in the server200(YES to S128). Thereafter, even if the physical authentication is not performed by the target user on the printer10A, the second subscription process is executed between the printer10A, the terminal device100, and the server200. Due to this, the terminal device100does not display the instruction screen350but displays the process in-execution screen410(seeFIG.5) (S132). In a case where the terminal device100receives a notification indicating that the second subscription process has completed from the server200, the terminal device100determines that the second subscription process has completed (YES to S134), and ends the second screen display process (S32,FIG.5). Due to this, in the user table244of the server200, the user ID “U1” and the second registration information “DV1” are stored in association with each other. That is, with the target user having subscripted to the charge service, subscription of the target user to the remote print service is completed.

(Effects by Case D)

As mentioned above, in a case where the printer10A is in the non-accepting state and the device ID “DV1” is stored in the user table244of the server200, the terminal device100does not display the notification information328or the instruction screen350. In a case where the device ID “DV1” is stored in the user table244of the server200, even if the physical authentication is not performed on the printer10A, the second subscription process is executable. This is because the physical authentication has already been performed. Due to this, the notification information328and information displayed on the instruction screen350are unnecessary information for the target user. Accordingly, the unnecessary information can be suppressed from being displayed on the terminal device100, and thus user convenience can be improved.

Effects by Present Embodiment

According to the above configuration, in a case where the terminal device100determines that the target printer is in the non-accepting state by using the status information received from the target printer (YES to S60inFIG.4, YES to S110inFIG.5, YES to S160inFIG.6), the terminal device100causes the display unit114to display the notification information328before causing the display unit114of the terminal device100to display the instruction screen350. Due to this, the user can acknowledge that the target printer is in the non-accepting state before performing the physical authentication on the target printer. Accordingly, user convenience is improved.

The controller130of the terminal device100is an example for “controller”. The printers10A,10B are examples of “function executing device”. The Retry button330in the notification screen326inFIG.7is an example for “retry object”. The print function is an example for “specific function”. The device selection operation, the remote print service selection operation, and the subscription service selection operation are examples for “specific operation”. The device ID is an example for “device identification information.” The user ID is an example for “user identification information”. The user ID and password are examples for “login information”.

S62inFIG.4, S112inFIG.5, and S162inFIG.6are examples of processes executed by “display notification information regarding to the non-accepting state on a display of a terminal device”.

Second Embodiment

A second embodiment will be described. The second embodiment differs from the first embodiment in a content of process executed in S60inFIG.4, S110inFIG.5, and S160inFIG.6. Configurations and processes that are common between the embodiments will be given the same reference numerals, and descriptions thereof may be omitted.

In S60inFIG.4, the app142sends a determination request to the target printer. The determination request is a signal for requesting the target printer to determine whether the target printer is in the non-accepting state or the accepting state. In a case where the target printer receives the determination request from the terminal device100, the target printer determines whether the target printer is in the non-accepting state or the accepting state. Specifically, the target printer determines whether the target printer is in execution of the print function or not, whether the user is operating the operation unit of the target printer or not, and whether communication is inexecutable between the target printer and the server200. In a case where the target printer is in execution of the print function, in a case where the user is operating the operation unit of the target printer, or in a case where communication is inexecutable between the target printer and the server200, the target printer determines that the target printer is in the non-accepting state, and sends first result information indicating that the target printer is in the non-accepting state to the terminal device100. Further, in a case where the target printer is not in execution of the print function, also the user is not operating the operation unit of the target printer, and also communication is executable between the target printer and the server200, the target printer determines that the target printer is in the accepting state, and sends second result information indicating that the target printer is in the accepting state to the terminal device100. In a case where the app142receives the first result information from the target printer, the app142determines YES to S60and proceeds to S62, and in a case where the app142receives the second result information from the target printer, the app142determines NO to S60and proceeds to S70. Here, in a case where the app142does not receive any result information from the target printer also, the app142determines YES to S60, and proceeds to S62. In S110inFIGS.5and S160inFIG.6also, the app142sends the determination request to the target printer, and determines whether the target printer is in the non-accepting state by using the result information received from the target printer. Here, process of determining whether the target printer is in the non-accepting state or the accepting state may be performed by using Application Programming Interface (API) stored in the target printer.

Effects by Present Embodiment

According to the above configuration, in a case where the result information received from the target printer indicates that the target printer is in the non-accepting state (YES to S60inFIG.4, YES to S110inFIG.5, YES to S160inFIG.6), the terminal device100causes the display unit114to display the notification information328before causing the display unit114of the terminal device100to display the instruction screen350. Due to this, the user can acknowledge that the target printer is in the non-accepting state before performing the physical authentication on the target printer. Accordingly, user convenience is improved. Further, process load on the terminal device100can be reduced as compared to a configuration in which the terminal device100determines whether the target printer is in the non-accepting state or the accepting state.

(First Modification) In the above first and second embodiments, the terminal device100displays the notification information328and the instruction screen350without receiving the notification information328or the instruction screen data indicating the instruction screen350from the target printer. In the present modification, the terminal device100receives the notification information328and the instruction screen data indicating the instruction screen350from the target printer. The printer10A in the present modification executes printer process inFIG.12.

With reference toFIG.12, printer process executed by the CPU32of the printer10A will be described.

In S210, the CPU32monitors for receiving the operation information from the terminal device100. The operation information indicates that any of the device selection operation, the remote print service selection operation, and the subscription service selection operation has been performed. In a case where the CPU32receives the operation information from the terminal device100, the CPU32determines YES to S210and proceeds to S212.

In S212, the CPU32determines whether the printer10A is in the non-accepting state or not. In a case where the printer10A is in the non-accepting state (YES to S212), the CPU32proceeds to S214and in a case where the printer10A is in the accepting state (NO to S212), the CPU32proceeds to S220.

In S214, the CPU32sends notification screen data including the notification information328to the terminal device100. In a case where the terminal device100receives the notification screen data from the printer10A, the terminal device100displays the notification screen326(seeFIG.7).

In S216, the CPU32determines whether retry information has been received from the terminal device100or not. The retry information indicates that the Retry button330in the notification screen326has been operated. In a case where the CPU32receives the retry information from the terminal device100(YES to S216), the CPU32returns to S212and in a case where the CPU32does not receive the retry information from the terminal device100(NO to S216), the CPU32ends the process ofFIG.12. Here, the case where the CPU32does not receive the retry information from the terminal device100is a case where the Cancel button332in the notification screen326is operated.

Further, in S220, the CPU32sends instruction screen data indicating the instruction screen350to the terminal device100. In a case where the instruction screen data is received from the printer10A, the terminal device100displays the instruction screen350(seeFIG.7).

In S222, the CPU32maintains the printer10A in the accepting state over a predetermined time period (e.g., two minutes). That is, until the predetermined time period elapses from when the printer10A was determined as in the accepting state, the printer10A does not receive a print instruction sent from another device. Further, until the predetermined time period elapses from when the printer10A was determined as in the accepting state, the printer10A does not accept an operation other than the physical authentication. According to such configuration, a possibility where the target printer is in the accepting state when the target user performs the physical authentication on the target printer can be improved. Accordingly, user convenience is improved.

In S224, the CPU32monitors for accepting the physical authentication. In a case where the CPU32accepts the physical authentication, the CPU32determines YES to S224and proceeds to S226.

In S226, the CPU32displays a confirmation screen for confirming whether to start subscription process for subscribing to a service or not.

In S228, the CPU32determines whether an operation for starting the subscription process has been performed or not. In a case where the CPU32accepts the operation for starting the subscription process (YES to S228), the CPU32proceeds to S230. Contrary to this, in a case where the CPU32does not accept the operation for starting the subscription process (NO to S228), the CPU32ends process ofFIG.12.

In S230, the CPU32executes the first subscription process, the second subscription process, or the third subscription process between the server200and the terminal device100. When S230ends, the CPU32ends the process ofFIG.12.

According to the above configuration, in the case where the printer10A is in the non-accepting state (YES to S60inFIG.4, YES to S110inFIG.5, YES to S160inFIG.6), the printer10A causes the display unit114of the terminal device100to display the notification information328before causing the display unit114to display the instruction screen350. Due to this, the user can acknowledge that the printer10A is in the non-accepting state before performing the physical authentication on the printer10A. Accordingly, user convenience is improved.

In the present modification, the controller30of the printer10A is an example for “controller”. S214inFIG.12is an example for process executed by “display notification information regarding to the non-accepting state on a display of a terminal device”.

(Second Modification) The notification information328may include information for changing the state of the target printer from the non-accepting state to the accepting state. As shown inFIG.11, although this is an example, in a case where the target printer is in the non-accepting state due to the target printer being offline, the notification information328is “Printer is offline. Please change printer to online state, then press retry button”. Further, although this is an example, in a case where the target printer is in the non-accepting state due to the target printer being in execution of print function, the notification information328is “Printer is executing print function. Please wait until printer has finished printing, then press retry button”. Further, although this is an example, in a case where the target printer is in the non-accepting state due to a user being operating the operation unit of the target printer, the notification information328is “Printer is being operated by another user. Please wait until the operation by another user has finished, then press retry button”. Further, although this is an example, in a case where the target printer is in the non-accepting state due to communication being inexecutable between the target printer and the server200, the notification information328is “Printer cannot communicate with server. Please wait until it becomes possible for printer to communicate with server, then press retry button”. According to such configuration, the target user can acknowledge what to do to change the state of the target printer from the non-accepting state to the accepting state. Accordingly, user convenience is improved.

(Third Modification) The notification screen326may not include the Retry button330. In the present modification, the app142may determine whether the target printer is in the non-accepting state or not in the case where a predetermined time period elapses after it was determined that the target printer was in the non-accepting state. That is, the app142re-determines whether the target printer is in the non-accepting state without accepting an operation from the user.

(Fourth Modification) The notification screen326may include a dropdown and/or slider switch for causing the terminal device100to re-determine whether the target printer is in the non-accepting state instead of the Retry button330. In the present modification, the dropdown and/or slider switch are examples for “retry object”.

(Fifth Modification) The printer10A,10B may be in the non-accepting state in at least one of a state where the printer10A,10B is offline, a state where the printer10A,10B is in execution of the print function, a state where a user is operating the operation unit12of the printer10A,10B, and a state where communication is inexecutable between the printer10A,10B and the server200.

(Sixth Modification) “Function executing device” may be configured to execute scan function, facsimile function, and/or copy function in addition to the print function. In the present modification, the function executing device may be in the non-accepting state in a case where the function executing device is in execution of the scan function, the function executing device in in execution of the facsimile function, or the function executing device is in execution of the copy function. In the present modification, the scan function, the facsimile function, and the copy function are examples for “specific function”.

(Seventh Modification) “Function executing device” may be configured to execute scan function and facsimile function in addition to the print function. In the present modification, physical authentication is necessary to change setting of a function of the function executing device. Although this is an example, the change of setting of a function of the function executing device is changing a state of the function executing device from an inactive state where the scan function is inactive to an active state where the scan function is active. In the present modification, the terminal device100displays the notification screen326before displaying the instruction screen350in a case where the terminal device100accepts an operation for changing the setting of a function of the function executing device and also where the function executing device is in the non-accepting state. In the present modification, the operation for changing the setting of a function of the function executing device is an example for “specific operation which is to be executed before the authentication operation”.

(Eighth Modification) The app142of the terminal device100may perform S72to S76after S80inFIG.4. Further, the app142may perform S132to S136after S130inFIG.5and perform S172to S176after S180inFIG.6. That is, the app142may cause the display unit114to display the log in screen340after causing the display unit114to display the instruction screen350.

(Ninth Modification) The terminal device100may display at least one of the notification screen326and the instruction screen350in a case where the printer10A is in the non-accepting state and also the device ID “DV1” is stored in the user table244of the server200. In the present modification, S56, S78inFIG.4, S106, S128inFIG.5, S156, S178inFIG.6may be omitted.

(Tenth Modification) The terminal device100may not send the maintaining request to the target printer. In the present modification, S70inFIG.4, S120inFIG.5, and S170inFIG.6may be omitted. In the present modification, “send a maintaining request to the function executing device” may be omitted.

(Eleventh Modification) In S60inFIG.4, the app142may send, to the target printer, a signal which requests for operation that simulates physical authentication to be performed. In a case where the target printer receives the signal from the terminal device100, the target printer simulates the physical authentication. Then, in a case where a confirmation screen is displayed on the display unit of the target printer after the physical authentication has been simulated, the target printer determines that the physical authentication has succeeded and sends success information to the terminal device100. Contrary to this, in a case where the confirmation screen is not displayed on the display unit of the target printer after the physical authentication has been simulated, the target printer determines that the physical authentication has failed, and sends failure information to the terminal device100. In a case where the terminal device100receives the success information from the target printer, the terminal device100determines that the target printer is in the accepting state (NO to S60), and in a case where the terminal device100receives the failure information from the target printer, the terminal device100determines that the target printer is in the non-accepting state (YES to S60). Here, in a case where the app142receives the success information from the target printer, the app142sends a deletion request which requests for deletion of the confirmation screen to the target printer. A similar process may be executed in S110inFIG.5, and S160inFIG.6.

(Twelfth Modification) In each of the above embodiments, the process ofFIGS.3to12is realized by software (e.g., programs40,140,142,240), but at least one of the process may be realized by hardware such as logic circuitry.

In the disclosure, “at least one of A, B and C” means “A”, “B”, “C”, “A and B”, “A and C”, “B and C”, or “A, B and C”.