Computer program for first server, first server, method executed by first server
The described server program enhances user convenience and reduces processing load by managing registration information for multiple services, facilitating seamless subscription across different servers.
Patent Information
- Application Number
- JP2024051306
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-27
- Publication Date
- 2025-10-09
Smart Images

Figure 2025150436000001_ABST
Abstract
Description
[Technical Field]
[0001] This specification discloses a technique for a first server that stores registration information. [Background technology]
[0002] Patent Document 1 discloses a communication system including a printer, a PC, and an information management server. Each time a fixed-rate printing process is executed, the printer stores printing information related to the number of pages printed and transmits the printing information to the information management server. The information management server manages the printing information when it receives the printing information from the printer. The information management server uses the printing information received from the printer to provide a fixed-rate printing process service. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2017-49767 Summary of the Invention [Problem to be solved by the invention]
[0004] This specification provides a technique that improves user convenience when subscribing to a service. [Means for solving the problem]
[0005] This specification discloses a computer program for a first server providing a first service, the first server including a computer and a first memory, the computer program including a device identification information receiving unit for receiving, from a first external device, device identification information for identifying a function-performing device, and a service subscription request receiving unit for receiving, from a second external device, a service subscription request for requesting subscription to the first service, and a service subscription request receiving unit for receiving, when the device identification information is received from the first external device and the service subscription request is received from the second external device, first registration information is stored in the second memory in association with the device identification information as information for providing a second service different from the first service to a user, the first service being a service subscription request for the first external device. The device may also function as an acquisition unit that acquires the first registration information from the second memory, where the acquisition unit does not acquire the registration information when the device identification information is received from the first external device, the service subscription request is received from the second external device, and the registration information is not stored in the second memory in association with the device identification information as information for providing the second service to the user; and a first storage control unit that, when the first registration information is acquired from the second memory, stores the first registration information in the first memory in association with the device identification information as information for providing the first service to the user.
[0006] According to the above configuration, when the first server receives device identification information from the first external device and a service subscription request from the second external device, and the first registration information is stored in the second memory in association with the device identification information, the first server acquires the first registration information from the second memory. Then, when acquiring the first registration information from the second memory, the first server stores the first registration information in the first memory in association with the device identification information as information for providing the first service to the user. This improves user convenience.
[0007] A computer-readable recording medium storing the computer program, a first server implemented by the computer program, and a method executed by the first server are also novel and useful. A communication system including the first server, a first external device, and a second external device is also novel and useful. [Brief explanation of the drawings]
[0008] [Figure 1] 1 shows the configuration of a communication system. [Figure 2] An example of each table is shown below. [Figure 3] 1 shows a sequence diagram of a service subscription process. [Figure 4] FIG. 10 shows a flowchart of a registration process. [Figure 5] The sequence diagram for Case A is shown below. [Figure 6] FIG. 10 shows a sequence diagram of case B according to the second embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0009] (First Example) (Configuration of communication system 2; Figure 1) As shown in FIG. 1, the communication system 2 includes multiple printers 10A and 10B, a terminal device 100, a first service providing server 200, a second service providing server 300, and a third service providing server 400. Hereinafter, the "service providing server" will be referred to as an "SP server." The terminal device 100 is a portable terminal device such as a mobile phone (e.g., a smartphone), a PDA, or a tablet PC. The printers 10A and 10B and the terminal device 100 are connected to a LAN (abbreviation for Local Area Network) 4. The printers 10A and 10B and the terminal device 100 can communicate with each other via the LAN 4. The LAN 4 is connected to the Internet 6. The printers 10A and 10B, the terminal device 100, the first SP server 200, the second SP server 300, and the third SP server 400 are connected to the Internet 6. Each device can communicate with each other via the Internet 6.
[0010] (Configuration of printers 10A and 10B) The printer 10A is a peripheral device (i.e., a peripheral device such as a PC) that can perform a printing function. The printer 10A may be a multi-function device that can perform a scanning function, a fax function, etc. in addition to a printing function. The printer 10A includes an operation unit 12, a display unit 14, a print execution unit 16, a communication interface 18, and a control unit 30. The printer 10A has a serial number "SN1" and a model name "MN1." The serial number is an identification number assigned to the printer when it is manufactured. The model name is a name that indicates the model of the printer. In the following, the interface will be referred to as "I / F."
[0011] The operation unit 12 has a plurality of keys. A user can input various instructions to the printer 10A by operating the operation unit 12. The display unit 14 is a display for displaying various information. The print execution unit 16 has an inkjet printing mechanism. In a modified example, the print execution unit 16 may have a laser printing mechanism. The communication I / F 18 is connected to the LAN 4. The communication I / F 18 may be a wireless I / F or a wired I / F.
[0012] The control unit 30 includes a CPU 32 and a memory 34. The CPU 32 executes various processes in accordance with a program 36 stored in the memory 34.
[0013] Printer 10B has the same configuration as printer 10A, except that it has a serial number "SN2" and a model name "MN2." Hereinafter, printers 10A and 10B may be collectively referred to simply as "printers."
[0014] (Configuration of the first SP server 200, the second SP server 300, and the third SP server 400) The first SP server 200 is installed on the Internet 6 by the printer vendor. In a modified example, the first SP server 200 may be installed on the Internet 6 by a business operator other than the printer vendor. In another modified example, the printer vendor may not prepare the hardware for the first SP server 200 itself, but may instead use an environment provided by an external cloud computing service. In this case, the printer vendor prepares a program (i.e., software) for the first SP server 200 and implements it in the above-mentioned environment to realize the first SP server 200. The same applies to the second SP server 300 and the third SP server 400.
[0015] The first SP server 200 provides a flat-rate service. The flat-rate service is a billing service that charges a predetermined amount (hereinafter referred to as a "flat-rate fee") if the number of sheets of printing paper printed by the printer in a predetermined period (e.g., one month) is less than or equal to the contracted number of sheets to be printed (e.g., 1,000 sheets), and charges a billing amount that is the sum of the flat-rate fee and an amount corresponding to the number of sheets exceeding the contracted number of sheets to be printed (e.g., 1,000 sheets). The flat-rate service includes a first cartridge shipping service. The first cartridge shipping service is a service that automatically ships a new cartridge when the amount of ink remaining in a cartridge installed in the printer's print execution unit falls below a predetermined amount. Even if a new cartridge is shipped, the cost of the new cartridge is not added to the billing amount. In other words, with the flat-rate service, only an amount corresponding to the number of sheets of printing paper printed by the printer in a predetermined period is charged. In a modified example, the first SP server 200 may provide a pay-per-use charging service in which an amount according to the number of sheets of printing paper printed by a printer in a predetermined period is charged, instead of a flat-rate charging service.
[0016] The first SP server 200 includes a communication I / F 218 and a control unit 230. The communication I / F 218 is connected to the Internet 6. The control unit 230 includes a CPU 232 and a memory 234. The CPU 232 executes various processes in accordance with a program 236 stored in the memory 234. The memory 234 is configured with a volatile memory, a non-volatile memory, etc. In addition to the program 236, the memory 234 stores a first service table 238 and an authentication table 240. The first SP server 200 has a service ID "SI1" that identifies the first SP server 200.
[0017] The second SP server 300 provides a second cartridge shipping service. The second cartridge shipping service is the same as the first cartridge shipping service, except that the price of a new cartridge is charged. That is, with the second cartridge shipping service, only the price of the cartridge is charged.
[0018] The second SP server 300 includes a communication I / F 318 and a control unit 330. The communication I / F 318 is connected to the Internet 6. The control unit 330 includes a CPU 332 and a memory 334. The CPU 332 executes various processes in accordance with a program 336 stored in the memory 334. The memory 334 is configured with a volatile memory, a non-volatile memory, etc. In addition to the program 336, the memory 334 stores a second service table 338 and an authentication table 340. The second SP server 300 has a service ID "SI2" that identifies the second SP server 300.
[0019] The third SP server 400 is a server that provides a printer warranty service. The warranty service is a service that provides printer maintenance, warranty, etc. The third SP server 400 has a service ID "SI3" that identifies the third SP server 400.
[0020] (Table configuration; Figure 2) The contents of the tables 238, 240 in the first SP server 200 and the tables 338, 340 in the second SP server 300 will be described with reference to FIG.
[0021] The first service table 238 in the first SP server 200 manages information for providing flat-rate services to users. The first service table 238 stores a user ID, a password, a serial number, a model name, a token, address information, payment information, and number of sheets in association with each other. Hereinafter, the user ID, address information, and payment information may be collectively referred to as "registration information." The user ID is information for identifying a user. The token is information used by the first SP server 200 to authenticate a printer. The address information is information indicating the user's address. The payment information is information used for payment, such as a credit card number.
[0022] The second service table 338 in the second SP server 300 manages information for providing the second cartridge shipping service to users. The second service table 338 stores a user ID, password, serial number, model name, token, address information, and payment information in association with each other. In other words, the second service table 338 does not include page count information. The token in the second service table 338 is information used by the second SP server 300 to authenticate the printer.
[0023] The authentication table 240 in the first SP server 200 stores model names and authentication operations in association with each other. The authentication operations are information related to authentication using a device. The contents of the authentication table 340 in the second SP server 300 are the same as the contents of the authentication table 240 in the first SP server 200. In this embodiment, the authentication operations corresponding to the model names "MN1" and "MN2," respectively, are "input of a PIN code" and "operation of the power button and setting button." In other words, the contents of the authentication operations differ for each model name. This configuration improves security compared to when there is only one authentication operation. In a modified example, the contents of the authentication table 240 in the first SP server 200 and the contents of the authentication table 340 in the second SP server 300 may differ.
[0024] Although not shown, the third SP server 400 stores a service table in which information for providing guaranteed services to users is managed, and an authentication table.
[0025] (Service subscription process; Figure 3) Referring to FIG. 3, a service subscription process in which a user of the terminal device 100 subscribes to a flat-rate service will be described. In the initial state of FIG. 3, the user has already subscribed to the second cartridge shipping service. The memory 234 of the first SP server 200 stores a user ID "U1" and a password "PW1" in association with each other. The second service table 338 of the second SP server 300 stores a user ID "U1," a password "PW1," a serial number "SN1," a model name "MN1," a token tk2, severity information "AD1," and payment information "SI1" in association with each other. In FIG. 3, the processes executed by the CPU of each device are described as the subject of the process, rather than the CPU itself. In the following, communication between each device is performed via a communication interface. Therefore, in the following description, the phrase "via a communication interface" will be omitted when describing communication.
[0026] At T10, the user performs an access operation on the terminal device 100 to access the first SP server 200. As a result, the terminal device 100 sends a home screen data request to the first SP server 200 at T12, receives the home screen data from the first SP server 200 at T14, and displays a home screen corresponding to the home screen data at T16. The home screen is a screen for subscribing to a flat-rate service. At T20, the user performs a service subscription operation to subscribe to the flat-rate service, an operation to input a target serial number "SN1," and an operation to input a target service ID "SI2" on the terminal device 100. The target serial number is a serial number corresponding to the printer 10A used in the flat-rate service. In this process, the user inputs the serial number "SN1" corresponding to the printer as the target serial number. The target service ID is information indicating a server that transmits a transmission request, which will be described later. The user inputs the service ID of a server that provides the subscribed service as the target service ID. In this process, the user, having already subscribed to the second cartridge shipping service, inputs the service ID "SI2" of the second SP server 300 that provides the second cartridge shipping service. As a result, at T22, the terminal device 100 transmits a service subscription request including the serial number "SN1" and the service ID "SI2" to the first SP server 200. The service subscription request is a signal requesting subscription to a flat-rate service.
[0027] When the first SP server 200 receives a service subscription request from the terminal device 100 at T22, it generates a PIN code PC1 at T34, associates the target serial number "SN1" with the PIN code PC1, and temporarily stores them in the memory 234. Next, the first SP server 200 transmits the PIN code PC1 to the terminal device 100 at T26.
[0028] When the terminal device 100 receives the PIN code PC1 from the first SP server 200 in T26, it displays the PIN code PC1 in T28, thereby allowing the user of the terminal device 100 to know the PIN code PC1 to be input into the printer 10A.
[0029] At T40, the user performs an operation to input the PIN code PC1 into the printer 10A, which causes the printer 10A to send a token request including the PIN code PC1, the serial number “SN1”, and the model name “MN1” to the first SP server 200 at T42.
[0030] The first SP server 200 receives a token request from the printer 10A in T42. In this case, the first SP server 200 determines in T44 that the first device authentication using the printer 10A was successful because the target serial number "SN1" matches the serial number "SN1" in the token request and the PIN code PC1 stored in T24 matches the PIN code PC1 in the token request, and erases the PIN code PC1 from the memory 234. The first SP server 200 generates a token tk1 in T46 and stores the received serial number "SN1," the received model name "MN1," and the generated token tk1 in the first service table 238 in association with each other in T48. The first SP server 200 transmits the token tk1 to the printer 10A in T50.
[0031] When the printer 10A receives the token tk1 from the first SP server 200 at T50, the printer 10A stores the received token tk1 in the memory 34 at T52. Next, at T54, the printer 10A uses the token tk1 to establish an XMPP connection (short for eXtensible Messaging and Presence Protocol) with the first SP server 200. The XMPP connection is a so-called always-on connection that remains established until the printer 10A is powered off. By using the XMPP connection, the first SP server 200 can send a request to the printer 10A across the firewall of the LAN 4 to which the printer 10A belongs, even if it has not received a request from the printer 10A. Note that the mechanism for sending a request from the first SP server 200 to the printer 10A may not be an XMPP connection, but may be another method. For example, an HTTPS (short for Hypertext Transfer Protocol Secure) connection may be established between the printer 10A and the first SP server 200.
[0032] When an XMPP connection is established with the printer 10A in T54, the first SP server 200 executes registration processing (see FIG. 4) in T60. The registration processing is processing for storing information necessary to provide the flat-rate service in the first service table 238. The information necessary to provide the flat-rate service includes address information, payment information, and the like. Upon completion of the registration processing, the first SP server 200 transmits a subscription completion notice to the terminal device 100 in T70, indicating that subscription to the flat-rate service has been completed. This allows the user of the terminal device 100 to know that subscription to the flat-rate service has been completed.
[0033] Thereafter, printer 10A transmits the number of sheets information and remaining amount information stored in memory 34 to first SP server 200 every time a predetermined time period (e.g., 24 hours) has elapsed. When first SP server 200 receives the number of sheets information and remaining amount information from printer 10A, it stores the number of sheets information in first service table 238 and determines whether the remaining amount indicated by the remaining amount information is equal to or less than a threshold value. When first SP server 200 determines that the remaining amount indicated by the remaining amount information is equal to or less than a threshold value, it identifies the address indicated by the address information in first service table 238 and executes shipping processing to ship a new cartridge to the identified address. Furthermore, every time a predetermined period (e.g., one month) has elapsed, first SP server 200 identifies the number of sheets indicated by the number of sheets information in first service table 238 and determines whether the identified number exceeds the contracted number of sheets to be printed. The first SP server 200 executes a billing process to charge a fixed fee if the specified number of sheets does not exceed the contracted number of sheets to be printed, and executes a billing process to charge a total amount that is the sum of the fixed fee and an amount corresponding to the number of sheets exceeding the contracted number of sheets to be printed. The billing process uses the payment information in the first service table 238.
[0034] (Registration process; Figure 4) 4, the registration process executed by the CPU 232 of the first SP server 200 at T60 in FIG. 3 will be described. In the following, the SP server identified by the target service ID in the subscription service request will be referred to as the "target SP server." Also, the printer identified by the target serial number in the subscription service request will be referred to as the "target printer."
[0035] In S10, the CPU 232 transmits a transmission request including the target serial number and model name to the target SP server. The transmission request is a signal requesting transmission of registration information stored in the target SP server in association with the target serial number. When the target SP server receives the transmission request from the first SP server 200, it determines whether registration information associated with the target serial number is stored in the memory of the target SP server. Hereinafter, the registration information stored in memory in association with the target serial number will be referred to as "target registration information." If the target registration information is stored in memory, the target SP server performs second device authentication using the target printer. Then, if the second device authentication is successful, the target SP server transmits the target registration information to the first SP server 200. On the other hand, if the target registration information is not stored in memory or if the second device authentication fails, the target SP server transmits transmission prohibition information to the first SP server 200. The transmission prohibition information is information indicating that the registration information cannot be transmitted. In addition, cases where the target registration information is not stored in memory include when the user enters a service ID corresponding to a service to which the user is not subscribed, or when the user enters a service ID corresponding to a service from which the user has withdrawn.
[0036] In S20, the CPU 232 determines whether or not the target registration information has been received from the target SP server. If the target registration information has been received from the target SP server (YES in S20), the CPU 232 proceeds to S30, and if the target registration information has not been received from the target SP server (NO in S20), the CPU 232 proceeds to S22.
[0037] In S22, the CPU 232 transmits first subscription screen data corresponding to the first subscription screen SC10 to the terminal device 100. When the terminal device 100 receives the first subscription screen data from the first SP server 200, it displays the first subscription screen SC10. The first subscription screen SC10 includes a message prompting the user to enter registration information, a user ID input field for entering a user ID, an address information input field for entering address information, a payment information input field for entering payment information, and an OK button. In the first subscription screen SC10, each input field is blank. The user enters the user ID, address information, and payment information in the user ID input field, address information input field, and payment information input field, respectively, and selects the OK button. As a result, the terminal device 100 transmits registration information including the entered user ID, address information, and payment information to the first SP server 200.
[0038] In S24, the CPU 232 receives the registration information from the terminal device 100.
[0039] In S26, the CPU 232 stores the registration information received in S24 in the first service table 238 in association with the target serial number as information for providing the flat-rate service to the user. The CPU 232 also stores the password stored in the memory 234 in association with the user ID included in the registration information received in S24 in the first service table 238. When S26 ends, the CPU 232 ends the processing of FIG. 4. In this way, even if the registration information is not received from the target SP server, the user can subscribe to the flat-rate service by inputting the registration information themselves. This improves user convenience.
[0040] Furthermore, in S30, the CPU 232 transmits second subscription screen data corresponding to the second subscription screen SC12 to the terminal device 100. The second subscription screen data includes the registration information received in S20. When the terminal device 100 receives the second subscription screen data from the first SP server 200, it displays the second subscription screen SC12. The second subscription screen SC12 includes a message prompting the user to confirm the registration information, a user ID input field, an address information input field, a payment information input field, and an OK button. In the second subscription screen SC12, the user ID input field, the address information input field, and the payment information input field have already been entered with the user ID, address information, and payment information, respectively. This allows the user to know the content of the registration information currently being used for another service. The user can change the information entered in the user ID input field, address information input field, and payment information input field. A user may wish to change the content of the registration information used when the user previously subscribed to a flat-rate service or the content of the registration information currently being used for another service. According to the above configuration, the user can change the content of the registration information used when the user previously subscribed to a flat-rate service or the content of the registration information currently being used for another service. This improves user convenience. When the terminal device 100 accepts the user's selection of an OK button after at least one of the user ID, address information, and payment information has been changed, the terminal device 100 transmits the change information and the changed registration information to the first SP server 200. On the other hand, when the terminal device 100 accepts the user's selection of the OK button without changing the user ID, address information, and payment information, it transmits OK information to the first SP server 200.
[0041] In S32, the CPU 232 determines whether or not change information has been received from the terminal device 100. If change information has been received from the terminal device 100 (YES in S32), the CPU 232 proceeds to S34. On the other hand, if change information has not been received from the terminal device 100 (NO in S32), the CPU 232 proceeds to S36.
[0042] In S34, CPU 232 associates the changed registration information with the target serial number as information for providing the flat-rate service to the user and stores the changed registration information in first service table 238. CPU 232 also associates the password stored in memory 234 with the user ID included in the changed registration information and stores it in first service table 238. When S34 ends, CPU 232 ends the processing of FIG. 4.
[0043] Furthermore, in S36, CPU 232 stores the registration information received in S20 in association with the target serial number as information for providing the flat-rate service to the user in first service table 238. CPU 232 also stores the password stored in memory 234 in association with the user ID included in the registration information in first service table 238. When S36 ends, CPU 232 ends the processing of FIG. 4.
[0044] 3, if the first device authentication fails after transmitting the PIN code PC1 to the terminal device 100, the first SP server 200 does not execute the processes from T46 onwards. In other words, if the first device authentication fails, the first SP server 200 does not store the registration information in the first service table 238.
[0045] (Specific case A; Figure 5) A specific case A realized by the communication system 2 of this embodiment will be described with reference to Fig. 5. The initial state of case A is the same as the initial state in Fig. 3. In Fig. 5, the processes executed by the CPU of each device are described as the subject of the process, rather than the CPU being the subject.
[0046] First, the same processes as T10 to T54 in FIG. 3 are executed between the printer 10A, the terminal device 100, and the first SP server 200.
[0047] In T110, the first SP server 200 transmits a transmission request including the target serial number "SN1" and the model name "MN1" to the second SP server 300 (S10 in FIG. 4).
[0048] When the second SP server 300 receives a transmission request from the first SP server 200 in T110, it determines that registration information is described in association with the target serial number "SN1" in the second service table 338 and executes second device authentication using the printer 10A. Specifically, the second SP server 300 identifies the model name "MN1" included in the transmission request and identifies the authentication operation "Enter PIN Code" associated with the model name "MN1" from the authentication table 340. In this case, the second SP server 300 generates a PIN code PC2 in T120 and stores the generated PIN code PC2 in the memory 334. The second SP server 300 transmits a PIN code transmission request to the printer 10A in T122 and transmits the PIN code PC2 to the terminal device 100 via the first SP server 200 in T124.
[0049] At T122, printer 10A receives a PIN code transmission request from the second SP server 300, and at T130, when it accepts an operation to input PIN code PC2, it transmits PIN code PC2 to the first SP server 200 at T132, and transmits PIN code PC2 to the second SP server 300 at T134.
[0050] When the first SP server 200 receives the PIN code PC2 from the printer 10A in T132, it transmits the PIN code PC2 to the second SP server 300 in T136.
[0051] The second SP server 300 receives the PIN code PC2 from the printer 10A in T134, and upon receiving the PIN code PC2 from the first SP server 200 in T136, determines that the two received PIN codes PC2 match the PIN code PC2 stored in the memory 334, and determines in T138 that the second device authentication using the printer 10A has been successful. In this case, the second SP server 300 identifies the registration information (i.e., user ID "U1," address information "AD1," and payment information "PI1") stored in association with the target serial number "SN1" from the second service table 338, and transmits the registration information to the first SP server 200 in T140. If the second device authentication fails, the second SP server 300 transmits failure information indicating that the second device authentication has failed to the first SP server 200.
[0052] When the first SP server 200 receives the registration information from the second SP server 300 in T140 (YES in S20), it transmits second subscription screen data including the user ID "U1", address information "AD1", and payment information "PI1" to the terminal device 100 in T142. Note that when the first SP server 200 receives failure information from the second SP server 300, it determines that it has not received the registration information from the terminal device 100 (NO in S20 of FIG. 4), and transmits the first subscription screen data to the terminal device 100.
[0053] When the terminal device 100 receives the second subscription screen data from the first SP server 200 in T142, it displays the second subscription screen SC12 in T144. On the second subscription screen SC12, the user ID "U1", address information "AD1", and payment information "PI1" have already been entered in the user ID input field, address information input field, and payment information input field, respectively. In this case, the user selects the OK button on the second subscription screen SC12 in T146 without changing the information in each field. In this case, the terminal device 100 transmits OK information to the first SP server 200 in T148.
[0054] When the first SP server 200 receives OK information from the first SP server 200 in T148 (NO in S32), in T150, it stores the registration information received in T212 (i.e., user ID "U1", address information "AD1", and payment information "PI1") in association with the serial number "SN1" in the first service table 238 as information for providing the flat-rate service to the user. The first SP server 200 also stores the password "PW1" stored in the memory 234 in association with the user ID "U1" in the first service table 238. This allows the user to use the printer 10A to receive the flat-rate service.
[0055] (Effect of Case A) As described above, when the first device authentication using the printer 10A is successful (T44 in FIG. 3 cited in FIG. 5), the first SP server 200 stores the registration information in the memory 234 (T150 in FIG. 5). Therefore, the security of the registration information can be improved.
[0056] Furthermore, if the second device authentication using the printer 10A is successful (T138), the first SP server 200 stores the registration information in the memory 234 (T150). Therefore, the security of the registration information can be improved.
[0057] Furthermore, the first SP server 200 receives the service ID "SI2" associated with the second cartridge shipping service from the terminal device 100 (T22 in FIG. 3, cited in FIG. 5), and acquires registration information for providing the second cartridge shipping service to the user from the memory 334 of the second SP server 300. If the first SP server 200 does not receive the target service ID from the terminal device 100, the first SP server 200 must inquire whether the memory of each of the multiple SP servers stores registration information associated with the target serial number. With the above configuration, the first SP server 200 only needs to inquire whether the memory 334 of the second SP server 300 stores registration information associated with the target serial number. This reduces the processing load on the first SP server 200.
[0058] (Effects of this embodiment) As described above, when the first SP server 200 receives the target serial number "SN1" from the terminal device 100 (T22 in FIG. 3 cited in FIG. 5), and when the first SP server 200 receives a service subscription request from the terminal device 100 (T22 in FIG. 3 cited in FIG. 5), and when registration information is stored in memory 334 in association with the target serial number "SN1," the first SP server 200 acquires the registration information from memory 334 (T140). When acquiring the registration information from the second service table 338, the first SP server 200 stores the registration information in memory 334 in association with the target serial number "SN1" as information for providing the flat-rate service to the user (T150). This improves user convenience.
[0059] (Correspondence) The flat-rate service is an example of a "first service." The first SP server 200 is an example of a "first server." The memory 234 of the first SP server 200 is an example of a "first memory." The terminal device 100 is an example of a "first external device." The printer 10A is an example of a "function executing device." The target serial number "SN1" is an example of "device identification information." The terminal device 100 is an example of a "second external device." The second cartridge shipping service is an example of a "second service." The registration information received at S20 in FIG. 4 is an example of a "first registration information." The memory 334 of the second SP server 300 is an example of a "second memory." The first subscription screen SC10 is an example of an "input screen." The registration information received at S24 in FIG. 4 is an example of a "second registration information." The second SP server 300 is an example of a "second server." Printer 10A is an example of a "first type of device." The authentication operation "entering a PIN code" is an example of a "first specified operation." Printer 10B is an example of a "second type of device." The authentication operation "operating the power button and setting button" is an example of a "second specified operation." The target service ID is an example of "service-related information."
[0060] T22 in Fig. 3 is an example of processing executed by a "user identification information receiving unit." T22 in Fig. 3 is an example of processing executed by a "service subscription request receiving unit." T140 in Fig. 5 is an example of processing executed by an "acquisition unit." S36 in Fig. 4 and T150 in Fig. 5 are examples of processing executed by a "first storage control unit."
[0061] (Second Example) A communication system 2 of the second embodiment will be described. As shown in FIG. 1, the first SP server 200 and the second SP server 300 of this embodiment do not store authentication tables 240 and 340, respectively. The communication system 2 of this embodiment further includes an authentication server 500 that stores an authentication table 538. The authentication server 500 is connected to the Internet 6.
[0062] As shown in FIG. 2, the contents of the authentication table 538 are similar to the contents of the authentication tables 240 and 340 of the first embodiment.
[0063] (Specific case B; Figure 6) A specific case B realized by the communication system 2 of this embodiment will be described with reference to Fig. 6. The initial state of case B is the same as the initial state of case A in Fig. 5. In Fig. 6, the processes executed by the CPU of each device are described as the subject of the process, rather than the CPU being the subject.
[0064] First, the same processes as T10 to T54 in FIG. 3 are executed between the printer 10A, the terminal device 100, and the first SP server 200.
[0065] When the second SP server 300 receives the transmission request from the first SP server 200 in T210, it determines that the registration information is described in association with the target serial number "SN1" in the second service table 338, and causes the authentication server 500 to execute third device authentication using the printer 10A. Specifically, the second SP server 300 transmits an authentication request including the serial number "SN1" and the model name "MN1" to the authentication server 500 in T220.
[0066] When the authentication server 500 receives an authentication request from the second SP server 300 in T220, it identifies the model name "MN1" included in the authentication request and identifies the authentication operation "input PIN code" associated with the model name "MN1" from the authentication table 538. In this case, the authentication server 500 generates a PIN code PC3 in T222 and stores the generated PIN code PC3 in a memory (not shown) of the authentication server 500. In T224, the authentication server 500 transmits the PIN code PC3 to the terminal device 100 via the second SP server 300 and the first SP server 200. Although not shown, the second SP server 300 transmits a PIN code transmission request to the printer 10A to cause the printer 10A to transmit the PIN code to the authentication server 500.
[0067] When the printer 10A accepts the operation of inputting the PIN code PC3 in T230, the printer 10A transmits the PIN code PC3 to the authentication server 500 in T232.
[0068] When the authentication server 500 receives the PIN code PC3 from the printer 10A in T232, it determines that the generated PIN code PC3 matches the received PIN code PC3, and determines in T234 that the third device authentication has been successful. In this case, the authentication server 500 transmits success information indicating that the third device authentication has been successful to the second SP server 300 in T236. If the third device authentication is not successful, the authentication server 500 transmits failure information indicating that the third device authentication has failed to the second SP server 300.
[0069] When the second SP server 300 receives success information from the authentication server 500 in T236, it determines that the third device authentication has been successful, and identifies the registration information (user ID "U1", address information "AD1", and payment information "PI1") stored in association with the target serial number "SN1" from the second service table 338. T240 to T250 are the same as T140 to T150 in FIG. 5. This allows the user to use the printer 10A to receive flat-rate services. Note that when the second SP server 300 receives failure information from the authentication server 500, it does not transmit the registration information to the first SP server 200.
[0070] As described above, the authentication server 500 executes the third device authentication using the printer 10A. If the third device authentication is successful, the first SP server 200 stores the registration information in the memory 234. This improves the security of the registration information.
[0071] Although specific examples of the present invention have been described above in detail, these are merely examples and do not limit the scope of the claims. The technology described in the claims includes various modifications and variations of the specific examples exemplified above. Modifications of the above-mentioned embodiments are listed below.
[0072] (First Modification) The "function executing device" is not limited to a printer, but may be a scanner, MFP, sewing machine, or the like.
[0073] (Second Modification) The "device identification information" is not limited to a serial number, but may be a MAC address or the like.
[0074] (Third Modification) In the first and second embodiments, it is possible to omit input of the target serial number "SN1" at T20 in FIG. 3. In this modification, the first SP server 200 uses the serial number "SN1" received from the printer 10A as the target serial number at T42. In this modification, the printer 10A and the terminal device 100 are examples of a "first external device" and a "second external device," respectively. In other words, the "first external device" and the "second external device" may be the same or different.
[0075] (Fourth Variation) The second SP server 300 and the first SP server 200 may be examples of the "first server" and the "second server", respectively. In this variation, the second cartridge shipping service and the flat-rate service are examples of the "first service" and the "second service", respectively. In another variation, the third SP server 400 may be an example of the "first server" or the "second server".
[0076] (Fifth Modification) The first SP server 200 and the second SP server 300 may be physically the same server. In this case, the first SP server 200 and the second SP server 300 are constructed within a single server. For example, it is conceivable that the first SP server 200 and the second SP server 300 are constructed as multiple servers within the same physical cloud server by different vendors or different businesses (or the same vendor or business). In this case, communication (data transmission and reception) between the first SP server 200 and the second SP server 300 may be internal communication within the server, and the communication I / F 218 and the communication I / F 318 may serve both as communication to the outside and communication within the server. In this modification, the "first memory" and the "second memory" are the same.
[0077] (Sixth Modification) The communication system 2 may include a management server that stores registration information for providing each service to a user. In this modification, the CPU 232 of the first SP server 200 transmits a transmission request to the management server instead of the target SP server in S10 of FIG.
[0078] (Seventh Modification) It is possible to omit S22 to S26 in Fig. 4. In this modification, it is possible to omit the "input screen data transmitting unit", "second registration information receiving unit", and "second storage control unit".
[0079] (Eighth Modification) In the first embodiment, the first device authentication and the second device authentication do not have to be performed. In this modification, when the first SP server 200 receives a service subscription request from the terminal device 100, it transmits a transmission request to the second SP server 300 without performing the first device authentication. Then, the second SP server 300 transmits registration information to the first SP server 200 without performing the second device authentication. Also, in the second embodiment, the first device authentication and the third device authentication do not have to be performed. In this modification, when the first SP server 200 receives a service subscription request from the terminal device 100, it transmits a transmission request to the second SP server 300 without performing the first device authentication. Then, the second SP server 300 transmits registration information to the first SP server 200 without having the authentication server 500 perform the third device authentication.
[0080] (Ninth Modification) In the first and second embodiments, the first device authentication does not have to be performed.
[0081] (Tenth Modification) In the first embodiment, the second device authentication does not have to be performed. Also, in the second embodiment, the third device authentication does not have to be performed.
[0082] (Eleventh Modification) In the first embodiment, the second SP server 300 may only execute second device authentication corresponding to the authentication operation "input of PIN code" regardless of the model name. In another modification, the second SP server 300 may change the authentication operation used in the second device authentication depending on the timing at which the transmission request is received. In another modification, the second SP server 300 may randomly change the authentication operation used in the second device authentication. The same applies to the authentication server 500 in the second embodiment.
[0083] (Twelfth Modification) It is possible to omit inputting the target service ID at T20 in Fig. 3. In this modification, the first SP server 200 transmits a transmission request to one of the SP servers, and if registration information is not received from that SP server, it repeatedly executes the process of transmitting a transmission request to another SP server.
[0084] (13th Modification) In each of the above embodiments, the processes in FIGS. 3 to 6 are realized by software (for example, programs 36, 236, 336), but at least one of these processes may be realized by hardware such as a logic circuit.
[0085] Furthermore, the technical elements described in this specification or drawings exhibit technical utility either alone or in various combinations, and are not limited to the combinations described in the claims at the time of filing. Furthermore, the technologies illustrated in this specification or drawings simultaneously achieve multiple objectives, and achieving one of those objectives is itself technically useful.
[0086] In the scope of the claims at the time of filing, even if each claim depends on only some of the claims, it is not limited to the fact that each claim can depend on only those some of the claims. To the extent that there is no technical contradiction, each claim can also depend on other claims that were not dependent at the time of filing. In other words, the technology of each claim can be combined in various ways as follows: (Item 1) A computer program for a first server that provides a first service, comprising: The first server A computer, a first memory; The computer program causes the computer to: a device identification information receiving unit that receives device identification information for identifying a function performing device from a first external device; a service subscription request receiving unit that receives a service subscription request for subscribing to the first service from a second external device; an acquisition unit that acquires the first registration information from the second memory when the device identification information is received from the first external device, the service subscription request is received from the second external device, and first registration information is stored in the second memory in association with the device identification information as information for providing a second service different from the first service to the user, and the acquisition unit does not acquire the registration information when the device identification information is received from the first external device, the service subscription request is received from the second external device, and registration information is not stored in the second memory in association with the device identification information as information for providing the second service to the user; a first storage control unit that, when the first registration information is acquired from the second memory, stores the first registration information in the first memory in association with the device identification information as information for providing the first service to the user; A computer program that functions as a (Item 2) The computer program further causes the computer to: an input screen data transmitting unit that transmits input screen data to the second external device when the device identification information is received from the first external device, the service subscription request is received from the second external device, and registration information is not stored in the second memory in association with the device identification information as information for providing the second service to a user of the function performing device; a second registration information receiving unit that receives second registration information from the second external device when second registration information is input by a user into an input screen corresponding to the input screen data; a second storage control unit that, when the second registration information is received from the second external device, stores the second registration information in the first memory in association with the device identification information as information for providing the first service to the user; Item 1. The computer program according to item 1, (Item 3) 3. The computer program according to claim 1, wherein the acquisition unit acquires the first registration information from the second memory when the device identification information is received from the first external device, the service subscription request is received from the second external device, the first registration information is associated with the device identification information and stored in the second memory as information for providing the second service to the user, and authentication using the function-performing device identified by the device identification information is successful. (Item 4) The computer program further causes the computer to: when the device identification information is received from the first external device and the service subscription request is received from the second external device, causing the device to function as an authentication unit that performs the authentication using the function-performing device identified by the device identification information; Item 4. The computer program according to item 3, wherein the acquisition unit acquires the first registration information from the second memory if the authentication is successful. (Item 5) a second server different from the first server, the second server comprising the second memory; the second server provides the second service; The computer program further causes the computer to: a transmission request sending unit that sends a transmission request including the device identification information to the second server when the device identification information is received from the first external device and the service subscription request is received from the second external device; The second server when receiving the transmission request from the first server, performing the authentication using the function-performing device identified by the device identification information included in the transmission request; If the authentication is successful, providing the first registration information in the second memory to the first server; 5. The computer program according to claim 3, wherein the acquisition unit acquires the first registration information from the second memory by receiving the first registration information from the second server. (Item 6) a second server different from the first server, the second server comprising the second memory; the second server provides the second service; The computer program further causes the computer to: a transmission request sending unit that sends a transmission request including the device identification information to the second server when the device identification information is received from the first external device and the service subscription request is received from the second external device; The second server When receiving the transmission request from the first server, transmitting an authentication instruction including the device identification information to an authentication server; providing the first registration information in the second memory to the first server when receiving information from the authentication server indicating that the authentication has been successful; 6. The computer program according to any one of items 3 to 5, wherein the acquisition unit acquires the first registration information from the second memory by receiving the first registration information from the second server. (Item 7) If the function-performing device is a first type device, the authentication includes a first predetermined operation on the function-performing device; 7. The computer program of claim 3, wherein, when the function-performing device is a second type of device different from the first type of device, the authentication includes a second predetermined operation on the function-performing device different from the first predetermined operation. (Item 8) The computer program further causes the computer to: when the second service is designated from among a plurality of services, the second external device is caused to function as a related information receiving unit that receives service related information related to the second service from the second external device; the acquisition unit acquires the first registration information from the second memory when the device identification information is received from the first external device, the service subscription request and the service-related information are received from the second external device, and the first registration information is stored in the second memory in association with the device identification information as information for providing the user with the second service related to the service-related information; 8. The computer program of claim 1, wherein registration information is not acquired when the device identification information is received from the first external device, the service subscription request and the service-related information are received from the second external device, and registration information is not stored in the second memory in association with the device identification information as information for providing the user with the second service related to the service-related information. (Item 9) a first server providing a first service, a first memory; a device identification information receiving unit that receives device identification information for identifying a function performing device from a first external device; a service subscription request receiving unit that receives a service subscription request for subscribing to the first service from a second external device; an acquisition unit that acquires the first registration information from the second memory when the device identification information is received from the first external device, the service subscription request is received from the second external device, and first registration information is stored in the second memory in association with the device identification information as information for providing a second service different from the first service to the user, and the acquisition unit does not acquire the registration information when the device identification information is received from the first external device, the service subscription request is received from the second external device, and registration information is not stored in the second memory in association with the device identification information as information for providing the second service to the user; a first storage control unit that, when the first registration information is acquired from the second memory, stores the first registration information in the first memory in association with the device identification information as information for providing the first service to the user; a first server comprising: (Item 10) 1. A method performed by a first server providing a first service, comprising: the first server comprises a first memory; The method comprises: a device identification information receiving step of receiving device identification information for identifying the function performing device from a first external device; a service subscription request receiving step of receiving a service subscription request requesting subscription to the first service from a second external device; an acquiring step of acquiring the first registration information from the second memory when the device identification information is received from the first external device, the service subscription request is received from the second external device, and first registration information is stored in the second memory in association with the device identification information as information for providing the user with a second service different from the first service, wherein the acquiring step does not acquire the registration information when the device identification information is received from the first external device, the service subscription request is received from the second external device, and registration information is not stored in the second memory in association with the device identification information as information for providing the user with the second service; a first storage control step of, when the first registration information is acquired from the second memory, storing the first registration information in the first memory in association with the device identification information as information for providing the first service to the user; A method comprising: [Explanation of symbols]
[0087] 2: communication system, 4: LAN, 6: Internet, 10A: printer, 10B: printer, 12: operation unit, 14: display unit, 16: print execution unit, 18: communication I / F, 30: control unit, 32: CPU, 34: memory, 36: program, 100: terminal device, 200: first SP server, 218: communication I / F, 230: control unit, 232: CPU, 234: memory, 236: program, 238: first service table, 240: authentication table, 300: second SP server, 318: communication I / F, 330: control unit, 332: CPU, 334: memory, 336: program, 338: second service table, 340: authentication table, 400: third SP server, 500: authentication server, 538: authentication table
Claims
1. A computer program for a first server providing a first service, comprising: The first server A computer, a first memory; The computer program causes the computer to: a device identification information receiving unit that receives device identification information for identifying a function performing device from a first external device; a service subscription request receiving unit that receives a service subscription request for subscribing to the first service from a second external device; an acquisition unit that acquires the first registration information from the second memory when the device identification information is received from the first external device, the service subscription request is received from the second external device, and first registration information is stored in the second memory in association with the device identification information as information for providing a second service different from the first service to the user, and the acquisition unit does not acquire the registration information when the device identification information is received from the first external device, the service subscription request is received from the second external device, and registration information is not stored in the second memory in association with the device identification information as information for providing the second service to the user; a first storage control unit that, when the first registration information is acquired from the second memory, stores the first registration information in the first memory in association with the device identification information as information for providing the first service to the user; A computer program that functions as a
2. The computer program further causes the computer to: an input screen data transmitting unit that transmits input screen data to the second external device when the device identification information is received from the first external device, the service subscription request is received from the second external device, and registration information is not stored in the second memory in association with the device identification information as information for providing the second service to a user of the function performing device; a second registration information receiving unit that receives second registration information from the second external device when second registration information is input by a user into an input screen corresponding to the input screen data; a second storage control unit that, when the second registration information is received from the second external device, stores the second registration information in the first memory in association with the device identification information as information for providing the first service to the user; The computer program of claim 1 ,
3. 2. The computer program product according to claim 1, wherein the acquisition unit acquires the first registration information from the second memory when the device identification information is received from the first external device, the service subscription request is received from the second external device, the first registration information is stored in the second memory in association with the device identification information as information for providing the second service to the user, and authentication using the function-performing device identified by the device identification information is successful.
4. The computer program further causes the computer to: when the device identification information is received from the first external device and the service subscription request is received from the second external device, causing the device to function as an authentication unit that performs the authentication using the function-performing device identified by the device identification information; The computer program product according to claim 3 , wherein the acquisition unit acquires the first registration information from the second memory if the authentication is successful.
5. a second server different from the first server, the second server comprising the second memory; the second server provides the second service; The computer program further causes the computer to: a transmission request sending unit that sends a transmission request including the device identification information to the second server when the device identification information is received from the first external device and the service subscription request is received from the second external device; The second server when receiving the transmission request from the first server, performing the authentication using the function-performing device identified by the device identification information included in the transmission request; If the authentication is successful, providing the first registration information in the second memory to the first server; The computer program product according to claim 3 , wherein the acquisition unit acquires the first registration information from the second memory by receiving the first registration information from the second server.
6. a second server different from the first server, the second server comprising the second memory; the second server provides the second service; The computer program further causes the computer to: a transmission request sending unit that sends a transmission request including the device identification information to the second server when the device identification information is received from the first external device and the service subscription request is received from the second external device; The second server When receiving the transmission request from the first server, transmitting an authentication instruction including the device identification information to an authentication server; providing the first registration information in the second memory to the first server when receiving information from the authentication server indicating that the authentication has been successful; The computer program product according to claim 3 , wherein the acquisition unit acquires the first registration information from the second memory by receiving the first registration information from the second server.
7. If the function-performing device is a first type of device, the authentication includes a first predetermined operation on the function-performing device; 4. The computer program product of claim 3, wherein if the function-performing device is a second type of device different from the first type of device, the authentication includes a second predetermined operation different from the first predetermined operation on the function-performing device.
8. The computer program further causes the computer to: when the second service is designated from among a plurality of services, the second external device is caused to function as a related information receiving unit that receives service related information related to the second service from the second external device; the acquisition unit acquires the first registration information from the second memory when the device identification information is received from the first external device, the service subscription request and the service-related information are received from the second external device, and the first registration information is stored in the second memory in association with the device identification information as information for providing the user with the second service related to the service-related information; 2. The computer program of claim 1, wherein registration information is not acquired when the device identification information is received from the first external device, the service subscription request and the service-related information are received from the second external device, and registration information is not stored in the second memory in association with the device identification information as information for providing the user with the second service related to the service-related information.
9. a first server providing a first service, a first memory; a device identification information receiving unit that receives device identification information for identifying a function performing device from a first external device; a service subscription request receiving unit that receives a service subscription request for subscribing to the first service from a second external device; an acquisition unit that acquires the first registration information from the second memory when the device identification information is received from the first external device, the service subscription request is received from the second external device, and first registration information is stored in the second memory in association with the device identification information as information for providing a second service different from the first service to the user, and the acquisition unit does not acquire the registration information when the device identification information is received from the first external device, the service subscription request is received from the second external device, and registration information is not stored in the second memory in association with the device identification information as information for providing the second service to the user; a first storage control unit that, when the first registration information is acquired from the second memory, stores the first registration information in the first memory in association with the device identification information as information for providing the first service to the user; a first server comprising:
10. 1. A method performed by a first server providing a first service, comprising: the first server comprises a first memory; The method comprises: a device identification information receiving step of receiving device identification information for identifying a function performing device from a first external device; a service subscription request receiving step of receiving a service subscription request requesting subscription to the first service from a second external device; an acquiring step of acquiring the first registration information from the second memory when the device identification information is received from the first external device, the service subscription request is received from the second external device, and first registration information is stored in the second memory in association with the device identification information as information for providing a second service different from the first service to the user, wherein the acquiring step does not acquire the registration information when the device identification information is received from the first external device, the service subscription request is received from the second external device, and registration information is not stored in the second memory in association with the device identification information as information for providing the second service to the user; a first storage control step of, when the first registration information is acquired from the second memory, storing the first registration information in the first memory in association with the device identification information as information for providing the first service to the user; A method comprising:
Citation Information
Patent Citations
Management server and communication system
JP2017049767A