US11722546B2 - System, relay server, and data storage server - Google Patents
System, relay server, and data storage server Download PDFInfo
- Publication number
- US11722546B2 US11722546B2 US17/218,405 US202117218405A US11722546B2 US 11722546 B2 US11722546 B2 US 11722546B2 US 202117218405 A US202117218405 A US 202117218405A US 11722546 B2 US11722546 B2 US 11722546B2
- Authority
- US
- United States
- Prior art keywords
- data
- service providing
- server
- service
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/147—Signalling methods or messages providing extensions to protocols defined by standardisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/303—Terminal profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/561—Adding application-functional data or data for application control, e.g. adding metadata
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1229—Printer resources management or printer maintenance, e.g. device status, power levels
- G06F3/1231—Device related settings, e.g. IP address, Name, Identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1285—Remote printer device, e.g. being remote from client or server
- G06F3/1287—Remote printer device, e.g. being remote from client or server via internet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
Definitions
- the present invention relates to a system including a service providing server capable of providing a service to a client terminal, a relay server, and a data storage server.
- a relay server is installed in order to manage client terminals, and services are provided via the relay server.
- a service providing server provided on a cloud service transmits a print command to the client terminal via the relay server, thereby providing a print service. Accordingly, the user can print photographs and the like saved on the cloud service by using the printing apparatus.
- the service providing server for providing the service, the relay server, and the client terminal are connected to the Internet so that they can communicate with each other.
- Japanese Patent Laid-Open No. 2017-73167 describes an arrangement in which the relay server and the service providing server exchange data.
- the present invention provides a system that suppresses an influence on the system caused by a change in configuration of a relay server when a service providing server for obtaining data of a client terminal is added anew, the relay server, and a data storage server.
- the present invention in one aspect provides a system including a client terminal and a service providing server configured to provide a service to the client terminal, wherein the system comprises: a relay server configured to manage the client terminal and the service providing server; and a data storage server installed between the relay server and the service providing server, the relay server comprises: a management unit configured to manage information that links the client terminal and the service provided by the service providing server; a giving unit configured to, based on the information managed by the management unit, give information of the service corresponding to the client terminal as attribute information to data transmitted from the client terminal; and a first transmission unit configured to transmit, to the data storage server, the data given the attribute information by the giving unit, the data storage server comprises a storage unit configured to store the data transmitted by the first transmission unit in a storage area, and the service providing server comprises an acquisition unit configured to acquire data extracted from data stored in the storage unit by designating the attribute information, and corresponding to the service provided by the service providing server.
- the present invention can suppress an influence on the system caused by a change in configuration of the relay server when the service providing server for obtaining data of the client terminal is added anew.
- FIG. 1 is a view showing the configuration of a service providing system
- FIG. 2 is a sequence chart showing the process of registration to a relay server
- FIG. 3 is a view showing data stored in a database of the relay server
- FIG. 4 is a view for explaining the transmission of data to a data storage server
- FIG. 5 is a view for explaining the transmission of data to the data storage server
- FIG. 6 is a sequence chart of the process of the transmission of data to the data storage service
- FIG. 7 is a view for explaining data acquisition by a service providing server
- FIG. 8 is a view for explaining data acquisition by the service providing server
- FIG. 9 is a view showing the configuration of data storage areas of the data storage server.
- FIG. 10 is a sequence chart of the process of the addition of data storage areas.
- FIG. 11 is a sequence chart of the process of the addition of a service providing server.
- the service providing server for acquiring data of the client terminal when the service providing server for acquiring data of the client terminal is added anew, the influence on the system caused by a change in configuration of the relay server can be suppressed.
- FIG. 1 is a view showing the configuration of a service providing system of this embodiment.
- the service providing system (to be referred to as a system hereinafter) of this embodiment includes a client terminal 100 , a relay server 200 , a service providing server A 300 , a service providing server B 400 , and a data storage server 500 .
- the client terminal 100 performs a process of registering itself to the relay server 200
- the user of the client terminal 100 can receive services provided by the service providing servers A 300 and B 400 .
- the service providing servers A 300 and B 400 perform a service registration process on the relay server 200 in order to provide the services to the client terminal 100 .
- the data storage server 500 is installed between the relay server 200 and each service providing server.
- the data storage server 500 includes a first data storage area 508 , a second data storage area 509 , and a third data storage area 510 , as storage areas capable of storing information transmitted from the relay server 200 .
- the client terminal 100 transmits data saved in the client terminal 100 to the relay server 200 .
- the relay server 200 gives attribute information to the transmitted data. This attribute information is information of a service for which the client terminal 100 is registered.
- the relay server 200 determines one or more of the first, second, and third data storage areas 508 , 509 , and 510 of the data storage server 500 , as data storage destinations, and transmits data to the data storage server 500 .
- the data storage server 500 stores the transmitted data in the corresponding data storage area. After that, the service providing server A 300 or B 400 acquires data to be used in each service by designating the data storage area in the data storage server 500 and the attribute information, without using the relay server 200 .
- the data storage server 500 is used in addition to the relay server 200 , so even when a new service providing server is added, it is possible to prevent the influence on the system configuration before the addition of the service providing server from being increased.
- the client terminal 100 is a terminal to be used by a user.
- the client terminal 100 is an inkjet recording apparatus (printing apparatus) having a printing function and a scanning function.
- the relay server 200 is an apparatus connected to the client terminal 100 so that they can communicate with each other, and capable of exchanging various kinds of information with the client terminal 100 .
- the service providing server A 300 is an apparatus capable of providing a service to the user of the client terminal 100 .
- the service providing server A 300 provides a service that gives points in accordance with the number of printed sheets, and a service that detects a shortage of the remaining ink amount in the client terminal 100 and automatically orders ink.
- the service providing server A 300 provides, for example, a service that prints data saved on the network, a service by which data scanned by the client terminal 100 is saved on a cloud across the network, and a service by which the user can unlimitedly use ink for a predetermined period by paying a predetermined amount of money.
- the service providing server B 400 is an apparatus that provides services different from those of the service providing server A 300 .
- the data storage server 500 is positioned between the relay server 200 and the service providing server A 300 , and between the relay server 200 and the service providing server B 400 .
- the data storage server 500 can save data transmitted from the relay server 200 , and can provide data to each of the service providing servers A 300 and B 400 in response to a request from each service providing server.
- the client terminal 100 includes a communication module 109 , a display device 101 , an input device 102 , an output device 103 , a ROM 104 , a RAM 106 , a CPU 107 , and a storage device 108 .
- the display device 101 displays the result of input from the user to the client terminal 100 , the result of execution of given processing, and the like.
- the display device 101 displays a user interface screen for registering the client terminal 100 in the relay server 200 , and can accept the setting contents.
- the input device 102 accepts instructions and the like from the user, and the output device 103 outputs deliverables based on the instructions and the like input by the input device 102 .
- the deliverables are, for example, printed products.
- the ROM 104 stores program codes to be executed by the client terminal 100 , and the program codes are loaded into the RAM 106 and executed as needed.
- the program codes include a control program 105 for controlling the communication module 109 , the display device 101 , the input device 102 , the output device 103 , and the RAM 106 .
- the CPU 107 is an arithmetic processing device that comprehensively controls the client terminal 100 .
- the storage device 108 is a device for storing data, and the CPU 107 executes data write/read.
- a terminal information storage area 120 is formed in the storage device 108 , and stores information unique to the client terminal 100 .
- An internal bus 110 connects the abovementioned blocks such that they can exchange data with each other.
- the operation of the client terminal 100 of this embodiment is implemented by, for example, the CPU 107 by loading the control program 105 into the RAM 106 and executing the control program 105 .
- the display device 101 displays a user interface screen for accepting the setting of a sheet size and the setting of color printing/monochrome printing.
- the input device 102 accepts the input of the printing settings and a printing instruction from the user
- the output device 103 outputs a printed product based on the printing settings.
- the control program 105 can include programs for forming data to be transmitted to the relay server 200 .
- the control program 105 includes a program for counting printed sheets, a program for detecting the remaining ink amount, and a program for determining whether ink is exclusively formed for a specific service.
- the terminal information storage area 120 stores, for example, the serial number, the model name, the total number of printed sheets, the consumption amount of ink, the model number of ink, the cleaning date/time and the cleaning count of the recording head, and network information.
- the relay server 200 includes a communication module 207 , a ROM 202 , a RAM 203 , a CPU 204 , and a storage device 205 .
- the CPU 204 comprehensively controls the relay server 200 .
- the storage device 205 stores a control program 206 .
- the operation of the relay server 200 of this embodiment is implemented by, for example, the CPU 204 by loading the control program 206 into the RAM 203 and executing the control program 206 .
- the relay server 200 also has a database 210 storing user information and information of service provision. In the service providing system, the relay server 200 manages the client terminal 100 and each service providing server.
- the relay server 200 manages, for example, information of the client terminal 100 and information of each service providing server on the database 210 .
- An internal bus 201 connects the abovementioned blocks so that they can exchange data with each other.
- the service providing server A 300 includes a communication module 307 , a ROM 302 , a RAM 303 , a CPU 304 , and a storage device 305 .
- the CPU 304 comprehensively controls the service providing server A 300 .
- the storage device 305 stores a control program 306 .
- the operation of the service providing server A 30 of this embodiment is implemented by, for example, the CPU 304 by loading the control program 306 into the RAM 303 and executing the control program 306 .
- An internal bus 301 connects the abovementioned blocks so that they can exchange data with each other.
- the service providing server B 400 has the same arrangement as that of the service providing server A 300 , and includes a communication module 407 , a ROM 402 , a RAM 403 , a CPU 404 , and a storage device 405 .
- the CPU 404 comprehensively controls the service providing server B 400 .
- the storage device 405 stores a control program 406 .
- the operation of the service providing server B 400 of this embodiment is implemented by, for example, the CPU 404 by loading the control program 406 into the RAM 403 and executing the control program 406 .
- An internal bus 401 connects the abovementioned blocks so that they can exchange data with each other.
- the data storage server 500 includes a communication module 507 , a ROM 502 , a RAM 503 , a CPU 504 , and a storage device 505 .
- the CPU 504 comprehensively controls the data storage server 500 .
- the storage device 505 stores a control program 506 .
- the operation of the data storage server 500 of this embodiment is implemented by, for example, the CPU 504 by loading the control program 506 into the RAM 503 and executing the control program 506 .
- the storage device 505 includes the first data storage area 508 , the second data storage area 509 , and the third data storage area 510 , in order to store data transmitted from the relay server 200 .
- a network 600 shown in FIG. 1 is a communication network capable of data transmission/reception.
- the network 600 is implemented by one or a combination of, for example, the Internet, a LAN, a WAN, a telephone line, an exclusive digital line, an ATM, a frame relay line, a cable TV line, and a data broadcasting wireless channel.
- the client terminal 100 can also be a plurality of client terminals 100 .
- the plurality of client terminals 100 can have either the same configuration or different configurations.
- FIG. 1 shows the relay server 200 as a single apparatus, but the relay server 200 can also be a plurality of apparatuses. In this case, the plurality of relay servers 200 can have a plurality of functions.
- FIG. 1 shows two service providing servers, that is, the service providing servers A 300 and B 400 , but the number of the service providing servers can also be one, or three or more. When there are a plurality of service providing servers, they can provide either the same service or different services.
- FIG. 1 shows the data storage server 500 as a single apparatus, but the data storage server 500 can also be a plurality of apparatuses.
- FIG. 2 is a sequence chart showing a process by which the client terminal 100 and the service providing servers A 300 and B 400 perform registration for the relay server 200 .
- the client terminal 100 registers itself in the relay server 200 .
- the service providing servers A 300 and B 400 register services that can be provided to the designated client terminal 100 , in the relay server 200 .
- FIG. 3 is a view showing examples of data stored in the database 210 of the relay server 200 . FIG. 2 will be explained below with reference to FIG. 3 .
- An application 130 installed in the client terminal 100 requests the relay server 200 for a registration process (step S 101 ).
- An application 220 of the relay server 200 having received this registration process request generates a record having an ID (to be referred to as a terminal ID hereinafter) for identifying the client terminal 100 as an attribute value, by using a unique ID (to be referred to as a UUID hereinafter) as a key (step S 102 ).
- attribute values may contain detailed information of the terminal (terminal information) and the registration date/time.
- An application 310 in the service providing server A 300 requests the relay server 200 for a process of registering a service and a terminal ID that can receive the provision of the service (step S 103 ).
- an ID (to be referred to as a service ID hereinafter) for identifying each service is preset by using a UUID unique to the service as a key.
- the application 220 of the relay server 200 In response to the registration process request from the service providing server A 300 , the application 220 of the relay server 200 generates a record having the service ID of each service and the terminal ID as attribute values by using the unique UUID as a key (step S 104 ).
- attribute values may also contain the registration date/time and the like, as shown in a service registration table 212 of FIG. 3 .
- the application 220 of the relay server 200 searches for a record in which the terminal ID registered in step S 104 matches the terminal ID in the client terminal registration table 213 . If a record having the same terminal ID is found, the application 220 determines that linking between the terminal ID and the service is complete, and generates a record having the terminal ID and the service ID as attribute values by using a new UUID as a key (step S 105 ). In this step, the attribute values may also contain another information such as the registration date/time as shown in a client terminal-service linking table 214 of FIG. 3 . On the other hand, if no record having the same terminal ID is found, the application 220 waits for the registration process request from the client terminal 100 in step S 101 .
- the application 220 of the relay server 200 notifies the client terminal 100 that the client terminal 100 has completed preparations for receiving service A of the service providing server A 300 (step S 106 ).
- information necessary to use service A of the service providing server A 300 can also be notified.
- a user ID or a password necessary to log in to the service can also be notified.
- the application 130 of the client terminal 100 stores the information notified in step S 106 into the information storage area 120 (step S 107 ).
- the above processing is performed for service B of the service providing server B 400 in the same manner as in steps S 103 to S 107 .
- An application 410 in the service providing server B 400 requests the relay server 200 for a process of registering a service and a terminal ID capable of receiving the provision of the service (step S 108 ).
- the application 220 of the relay server 200 In response to this registration process request from the service providing server B 400 , the application 220 of the relay server 200 generates a record having the service ID of each service and the terminal ID as attribute values by using a unique UUID as a key (step S 109 ).
- attribute values may also contain the registration date/time or the like as shown in the service registration table 212 of FIG. 3 .
- the application 220 of the relay server 200 searches for a record in which the terminal ID registered in step S 109 matches the terminal ID in the client terminal registration table 213 . If a record having the same terminal ID is found, the application 220 determines that linking between the terminal ID and the service is complete, and generates a record having the terminal ID and the service ID as attribute values by using anew UUID as a key (step S 110 ). In this step, attribute values may also contain another information such as the registration date/time as shown in the client terminal-service linking table 214 of FIG. 3 . On the other hand, if no record having the same terminal ID is found, the application 220 waits for the registration process request from the client terminal 100 in step S 101 .
- the application 220 of the relay server 200 notifies the client terminal 100 that the client terminal 100 has completed preparations for receiving service B of the service providing server B 400 (step S 111 ).
- information necessary to use service B of the service providing server B 400 can also be notified.
- a user ID or a password necessary to log in to the service can also be notified.
- the application 130 of the client terminal 100 stores the information notified in step S 111 into the information storage area 120 (step S 112 ).
- each service providing server registers a service in the client terminal 100
- the order of these registrations may also be reversed.
- the present invention is not limited to the above-described configuration as long as the process of registering the client terminal 100 and the process of registering the service of each service providing server can be implemented.
- the service providing server A 300 can also perform the registration process on the relay server 200 via another server (not shown).
- the client terminal-service linking table 214 in the database 210 of the relay server 200 stores a list of services for which the client terminals 100 are registered. As a consequence, the user of the client terminal 100 can receive the corresponding service.
- the process of storing data in the data storage server 500 will be explained below with reference to FIG. 4 .
- service A of the service providing server A 300 is registered in the client terminal-service linking table 214 as a service corresponding to the client terminal 100 .
- the client terminal 100 transmits a plurality of data to the relay server 200 .
- data A 1001 and data B 1002 are transmitted as transmission data 1000 to the relay server 200 .
- the relay server 200 gives attribute information and information of a data storage destination (data storage area) in the data storage server 500 to each of the plurality of data, and transmits the data to the data storage server 500 .
- data A 1003 obtained by giving “attribute A” and information of “first data storage area” to the data A 1001 is transmitted from the relay server 200 to the data storage server 500 .
- data B 1004 obtained by giving “attribute A” and information of “third data storage area” to the data B 1002 is transmitted from the relay server 200 to the data storage server 500 .
- “Attribute A” is given because service A of the service providing server A 300 is registered as a service for which the client terminal 100 is registered, so “attribute A” is given to all data to be transmitted from the client terminal 100 .
- a predetermined storage destination corresponding to the type of data is set.
- the data storage server 500 stores the data in the data storage area.
- the data storage server 500 stores the data A 1003 in the first data storage area 508 in accordance with “first data storage area”, and stores the data B 1004 in the third data storage area 510 in accordance with “third data storage area”.
- the data storage server 500 notifies the service providing server A 300 of the data storage area, so the service providing server A 300 designates, for example, “attribute A” representing service A.
- the data storage server 500 extracts (performs filtering for) the information given “attribute A” from the data contained in the first data storage area. That is, the service providing server A 300 can acquire data A 1005 from the first data storage area of the data storage server 500 by designating the attribute information “attribute A”.
- the relay server 200 can give various kinds of attribute values as the above-described attribute information. Examples are the following information.
- An attribute value that is changed in accordance with the type of data acquired from a client terminal for example, a printer. For example, different attribute values are given to the number of printed sheets and the ink remaining amount.
- An attribute value that is changed by a printer to which data is transmitted For example, different attribute values are given when printers to which data is transmitted are printer A and printer B.
- the relay server 200 looks up the client terminal registration table 213 .
- the service providing server can acquire desired data extracted from the data storage server 500 by designating the attribute values of items 1 to 4 described above. For example, when the attribute value changes in accordance with the type of data as described in item 1 above, the service providing server designates an attribute value corresponding to the type of data necessary for the server. When the attribute value changes in accordance with the type of printer as described in item 2 above, the service providing server designates an attribute value corresponding to a printer to which the server provides a service.
- the service providing server designates an attribute value corresponding to a service that the server provides.
- the service server designates a fixed value.
- the service providing server designates an attribute value corresponding to a service that the server provides and the type of desired data.
- Data 1001 and data 1002 shown in FIG. 5 indicate examples of data to be transmitted from the client terminal 100 to the relay server 200 , and respectively correspond to the data A 1001 and the data B 1002 shown in FIG. 4 .
- data 1003 and data 1004 shown in FIG. 5 indicate examples of data to be transmitted from the relay server 200 to the data storage server 500 , and respectively correspond to the data A 1003 and the data B 1004 shown in FIG. 4 .
- FIG. 5 shows data when the client terminal 100 is an inkjet printing apparatus.
- the data 1001 is data of the number of sheets printed for a predetermined period by the client terminal 100 , and is used in a service for giving points in accordance with the number of printed sheets. As shown in FIG.
- the data 1001 can also contain, for example, the type of printed sheets, the sheet size, the consumption amount of ink used in printing, individual information of ink, the cleaning count, and information unique to the printing apparatus.
- the data 1002 is data indicating remaining ink amount information, and is used in a service that detects a shortage of the remaining ink amount and automatically orders ink. As shown in FIG. 5 , the data 1002 indicates the remaining ink amount for each color, that is, Low for black and Full for magenta, yellow, and cyan.
- the data 1001 and 1002 may also contain information other than those shown in FIG. 5 .
- first data storage area as the information of a data storage area and “attribute A” as the attribute information are given to the data 1001 . It is also possible to give another information, for example, information of the data reception day. Also, as shown in the data 1004 , “third data storage area” as the information of a data storage area and “attribute A” as the attribute information are given to the data 1002 . It is also possible to give another information, for example, information of the data reception day.
- the service providing server A 300 is a server that provides a service for giving points in accordance with the number of printed sheets. As shown in FIG. 4 , therefore, to acquire data necessary for the service, the service providing server A 300 acquires the data A 1005 from the first data storage area of the data storage server 500 by designating “attribute A” representing service A. Note that in this embodiment as described previously, “attribute A” corresponding to service A of the service providing server A 300 is given to the data B 1002 that the service providing server A 300 does not require for its own service. The effect in this case will be described later.
- FIG. 6 is a sequence chart showing the process of data transmission. An operation in which the service providing server A 300 acquires data from the data storage server 500 after service A of the service providing server A 300 is registered will be explained below with reference to FIGS. 4 to 6 .
- the application 130 of the client terminal 100 transmits the transmission data 1000 (the data A 1001 , the data B 1002 ) to the relay server 200 (step S 201 ).
- the transmission data 1000 represents the data A 1001 and the data B 1002 .
- a communication protocol for transmitting these data can be, for example, HTTP (Hypertext Transfer Protocol). It is also possible to use, for example, MQTT (Message Queuing Telemetry Transport) or XMPP (Extensible Messaging and Presence Protocol).
- the URL Uniform Resource Locator
- the transmission destination of the relay server 200 can change for different data and can also remain the same.
- the application 220 of the relay server 200 Upon receiving the data A 1001 and the data B 1002 , the application 220 of the relay server 200 stores the data in the database 210 (step S 202 ). When at least one service is registered for the client terminal 100 , the application 220 gives attribute information to all the received data (step S 203 ), and transmits the data to the data storage server 500 (step S 204 ). If the plurality of data have different transmission destinations in the relay server 200 , the application 220 can also determine a data storage area in the data storage server 500 in accordance with each transmission destination.
- the transmission destination of the data A 1001 is set to URL_A of the relay server 200 and that of the data B 1002 is set to URL_B of the relay server 200 , the data A 1001 can be transmitted to the first data storage area 508 , and the data B 1002 can be transmitted to the third data storage area 510 .
- the URL can also be predetermined in accordance with the type of data.
- all pieces of attribute information linked to services for which the client terminal 100 is registered are given.
- the service registered for the client terminal 100 is service A of the service providing server A 300
- “attribute A” is given as indicated by the data A 1003 and the data B 1004 .
- the service list in which the client terminal 100 is registered is stored in the client terminal-service linking table 214 in the database 210 of the relay server 200 .
- the relay server 200 gives attribute information by looking up the table. For example, if service A of the service providing server A 300 is already registered in the service registration table 212 , a record containing a pair of the service ID and the terminal ID is stored in the client terminal-service linking table 214 .
- the relay server 200 refers to this record, and recognizes that the client terminal 100 is registered for service A of the service providing server A 300 .
- a term representing the service name or the contents of the service can be used.
- service A of the service providing server A 300 is a service for giving points in accordance with the number of printed sheets, so “print log” may also be set instead of “attribute A”. If the service detects a shortage of the remaining ink amount and automatically orders ink, a service name such as “automatic order service” may also be set.
- an application 520 of the data storage server 500 Upon receiving the data (the data A 1003 , the data B 1004 ) from the relay server 200 , an application 520 of the data storage server 500 stores the data in the designated data storage area (step S 205 ). For example, the application 520 stores the data A 1003 in the first data storage area 508 in accordance with “first data storage area”, and stores the data B 1004 in the third data storage area 510 in accordance with “third data storage area”.
- the application 520 of the data storage server 500 notifies the service providing server that the data is stored, in accordance with the data storage area of the storage destination (step S 206 ).
- the service providing server as the notification destination can be a service providing server that is predetermined for the data storage area, and can also be all service providing servers. For example, setting can be performed such that if data is stored in the first data storage area 508 , the service providing server A 300 is notified of this information. In this embodiment, if data is stored in the first data storage area 508 , the service providing server A 300 is notified of this information.
- the service providing server having received the notification from the data storage server 500 acquires the data from the data storage area of the data storage server 500 by designating the attribute information (step S 207 ). For example, upon receiving notification indicating that data is stored in the first data storage area 508 , the service providing server A 300 acquires the data from the first data storage area 508 by designating the attribute information, for example, “attribute A”. This designation of the attribute information is performed by designating only the attribute information corresponding to each service providing server. If “print log” is set instead of “attribute A”, the service providing server A 300 acquires the data from the first data storage area 508 by designating “print log”.
- FIG. 7 is a view showing that the service providing server A 300 acquires data from the third data storage area 510 by designating the attribute information.
- the data B 1004 is already stored in the third data storage area 510 of the data storage server 500 . Therefore, the service providing server A 300 acquires data from the third data storage area 510 of the data storage server 500 by designating “attribute A” as the attribute information. As described above, the relay server 200 gives the attribute information of a service for which the client terminal 100 is registered, to all the data (the data A 1001 , the data B 1002 ) received from the client terminal 100 . That is, the service providing server A 300 acquires the data A 1005 from the first data storage area 508 of the data storage server 500 in order to use the data in service A.
- the service providing server A 300 acquires data B 1006 from the third data storage area 510 of the data storage server 500 without using the relay server 200 in order to use the data in service B after service expansion.
- the arrangement of the relay server 200 need not be changed in order to provide the service providing server A 300 with data for the service that the service providing server A 300 has become able to provide. This makes it possible to prevent the influence on the system from being increased by the change in configuration of the relay server 200 .
- FIG. 8 is a view showing that the service providing server A 300 acquires data from the first data storage area 508 by designating the attribute information, and the service providing server B 400 acquires data from the third data storage area 510 by designating the attribute information.
- the relay server 200 transmits all data transmitted from the client terminal 100 to the data storage server 500 .
- the relay server 200 gives “attribute A” and “attribute B” respectively corresponding to service A and service B as the attribute information to the data A 1001 and the data B 1002 . That is, the relay server 200 gives the attribute information of “attribute A” and “attribute B” to the data B 1002 , and transmits the data to the third data storage area 510 .
- the service providing server A 300 is a server for providing a service that gives points in accordance with the number of printed sheets
- the service providing server B 400 is a server for providing a service that detects a shortage of the remaining ink amount and automatically orders ink. If these two services are already registered in the relay server 200 , the service ID and the terminal ID of each of the two services are registered as records in the client terminal-service linking table 214 . The relay server 200 gives the attribute information by referring to the records. Since the two services are registered for the client terminal 100 , “attribute A” and “attribute B” are the attribute information to be given. It is also possible to give “print log” instead of “attribute A”, and “automatic order service” instead of “attribute B”, as the attribute information.
- the service providing server B 400 acquires data from the third data storage area 510 of the data storage server 500 by designating the attribute information “attribute B” corresponding to service B without using the relay server 200 . Consequently, the service providing server B 400 can use the data B 1002 of the client terminal 100 in the service.
- an application 520 of the data storage server 500 assigns a unique identifier (identification information) to each data storage area. As shown in FIG. 9 , if a first data storage area 508 is a storage area for data of the number of printed sheets, the application 520 assigns “print log” as an identifier 512 . Also, if a second data storage area 509 is a storage area for data of hardware information of a printing apparatus, the application 520 assigns “hardware information” as an identifier 513 . In addition, if a third data storage area 510 is a storage area for data of ink information, the application 520 assigns “ink information” as an identifier 514 . That is, information with which the type of stored data can be identified is used as the identifier.
- a fourth data storage area 511 is added as a new data storage area to the data storage server 500 .
- the application 520 of the data storage server 500 assigns an identifier “network information” to the fourth data storage area 511 .
- the application 520 of the data storage server 500 detects the addition of the fourth data storage area 511 (step S 301 )
- the application 520 notifies each service providing server of the addition of the new data storage area, together with “network information” as an identifier 515 assigned to the fourth data storage area 511 (steps S 302 and S 304 ).
- the application 520 notifies a service providing server A 300 and a service providing server B 400 of the addition of the fourth data storage area 511 as a new data storage area.
- each service providing server determines whether the fourth data storage area 511 is a storage area for data to be acquired by the server (steps S 303 and S 305 ). For example, if the identifier assigned to the fourth data storage area 511 is “network information”, each service providing server determines whether the fourth data storage area 511 is a storage area for data to be acquired, based on the identifier “network information”. If it is determined that the fourth data storage area 511 is a storage area for data to be acquired, the service providing server having performed this determination acquires data from the fourth data storage area 511 by designating the attribute information “network information” (step S 306 ).
- each service providing server when a new data storage area is added in the data storage server 500 , each service providing server is notified of the new data storage area and the identifier.
- each service providing server is notified of the identifier together with information of the new data storage area, so the service providing server can determine whether the new data storage area is an acquisition source of data to be used in its service. Then, the service providing server having determined that the new data storage area is an acquisition source of data can acquire data from the new data storage area without using the relay server 200 . Therefore, even when the client terminal 100 transmits new data to the relay server 200 , the configuration of the relay server 200 need not be changed in order to transmit the data to the service providing server. This makes it possible to prevent the influence on the system from being increased by the change in configuration of the relay server 200 .
- the application 520 of the data storage server 500 assigns the identifier to each data storage area.
- the relay server 200 can also assign the identifier to data to be transmitted to the data storage server 500 .
- the relay server 200 can also determine whether to transmit data to the data storage server 500 , based on the identifier. A configuration like this can prevent data not to be used in a service of a service providing server from being transmitted to the data storage server 500 .
- An application C 710 of the service providing server C 700 notifies an application 520 of a data storage server 500 of the addition of a new service, together with information describing the contents of the new service (step S 401 ).
- the application 520 of the data storage server 500 determines a data storage area from which the new service providing server C 700 acquires data, based on the information describing the contents of the new service (step S 402 ). An identifier explained in the second embodiment may also be used in this determination.
- the application 520 of the data storage server 500 notifies the service providing server C 700 of the result (step S 403 ).
- the application C 710 of the service providing server C 700 acquires data from the notified data storage area.
- step S 402 if it is determined in step S 402 that the service providing server C 700 can acquire data from first to third data storage areas 508 to 510 , the application C 710 of the service providing server C 700 acquires data from these data storage areas in steps S 404 , S 405 , and S 406 .
- the application 520 of the data storage server 500 determines a data storage area from which the service providing server C 700 acquires data.
- a service forgiving points in accordance with the number of printed sheets, which is provided by a service providing server A 300 is already registered in a relay server 200 with respect to a client terminal 100 .
- a service that detects a shortage of the remaining ink amount and automatically orders ink which is provided by a service providing server B 400 , is already registered in the relay server 200 with respect to the client terminal 100 .
- the service for printing data on a cloud which is provided by the service providing server C 700
- three service IDs are registered for the same terminal ID in a client terminal-service linking table 214 of the relay server 200 .
- the relay server 200 gives three pieces of attribute information “print log”, “automatic order service”, and “cloud printing” to the same terminal ID.
- the processing shown in FIG. 11 further notifies the service providing server C 700 of information of a data storage area as the data acquisition source.
- the data storage server 500 notifies the new service providing server of a data storage area in which data to be acquired by the new service providing server is stored.
- the data storage server 500 notifies the new service providing server of a data storage area in which data to be acquired by the new service providing server is stored.
- data to be used in a service can be provided to the new service providing server without using the relay server 200 . This can prevent the influence on the system from being increased by the change in configuration of the relay server 200 .
- the data storage server 500 determines a data storage area in which data to be acquired by a new service providing server is stored.
- the new service providing server having received the notification can scan all the data storage areas, and, based on the identifier assigned to each data storage area, can determine whether data is necessary for a service of the server.
- Embodiment(s) of the present invention can also be realized by a computer of a system or apparatus that reads out and executes computer executable instructions (e.g., one or more programs) recorded on a storage medium (which may also be referred to more fully as a ‘non-transitory computer-readable storage medium’) to perform the functions of one or more of the above-described embodiment(s) and/or that includes one or more circuits (e.g., application specific integrated circuit (ASIC)) for performing the functions of one or more of the above-described embodiment(s), and by a method performed by the computer of the system or apparatus by, for example, reading out and executing the computer executable instructions from the storage medium to perform the functions of one or more of the above-described embodiment(s) and/or controlling the one or more circuits to perform the functions of one or more of the above-described embodiment(s).
- computer executable instructions e.g., one or more programs
- a storage medium which may also be referred to more fully as a
- the computer may comprise one or more processors (e.g., central processing unit (CPU), micro processing unit (MPU)) and may include a network of separate computers or separate processors to read out and execute the computer executable instructions.
- the computer executable instructions may be provided to the computer, for example, from a network or the storage medium.
- the storage medium may include, for example, one or more of a hard disk, a random-access memory (RAM), a read only memory (ROM), a storage of distributed computing systems, an optical disk (such as a compact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)TM), a flash memory device, a memory card, and the like.
Abstract
Description
Claims (13)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020-064199 | 2020-03-31 | ||
JP2020064199A JP7414617B2 (en) | 2020-03-31 | 2020-03-31 | Systems, server devices, and methods |
Publications (2)
Publication Number | Publication Date |
---|---|
US20210306441A1 US20210306441A1 (en) | 2021-09-30 |
US11722546B2 true US11722546B2 (en) | 2023-08-08 |
Family
ID=77856835
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/218,405 Active US11722546B2 (en) | 2020-03-31 | 2021-03-31 | System, relay server, and data storage server |
Country Status (2)
Country | Link |
---|---|
US (1) | US11722546B2 (en) |
JP (1) | JP7414617B2 (en) |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030023450A1 (en) * | 2001-07-24 | 2003-01-30 | Fabio Casati | Modeling tool for electronic services and associated methods and business |
US20040030740A1 (en) * | 2002-08-09 | 2004-02-12 | Stelting Stephen A. | Method and system for automating generation of web services from existing service components |
US20060235742A1 (en) * | 2005-04-18 | 2006-10-19 | Castellanos Maria G | System and method for process evaluation |
US20080140857A1 (en) * | 2006-03-21 | 2008-06-12 | Conner Peter A | Service-oriented architecture and methods for direct invocation of services utilizing a service requestor invocation framework |
US20120246221A1 (en) * | 2011-03-25 | 2012-09-27 | Fuji Xerox Co., Ltd. | Information processing apparatus, information processing method, non-transitory computer readable medium storing program, and information processing system |
US20130010324A1 (en) * | 2010-02-22 | 2013-01-10 | Canon Kabushiki Kaisha | Printing system, control method, storage client apparatus, printing apparatus, and web application server |
US20130019300A1 (en) * | 2011-07-15 | 2013-01-17 | Canon Kabushiki Kaisha | System, control method therefor, service providing apparatus, relay apparatus and computer-readable medium |
US20130321859A1 (en) * | 2012-05-31 | 2013-12-05 | Brother Kogyo Kabushiki Kaisha | Relay server |
US20140137194A1 (en) * | 2012-11-14 | 2014-05-15 | Brother Kogyo Kabushiki Kaisha | Control server, data processing device, and control device for data processing device |
US20140244794A1 (en) * | 2011-09-27 | 2014-08-28 | Nec Corporation | Information System, Method and Program for Managing the Same, Method and Program for Processing Data, and Data Structure |
US20150373211A1 (en) * | 2014-06-19 | 2015-12-24 | Brother Kogyo Kabushiki Kaisha | Function execution apparatus, system, and computer-readable medium therefor |
JP2017073167A (en) | 2016-12-20 | 2017-04-13 | ブラザー工業株式会社 | Relay device, image processing device, and communication system |
US20180203890A1 (en) * | 2017-01-17 | 2018-07-19 | International Business Machines Corporation | Sanitizing virtualized composite services |
US20180375923A1 (en) * | 2010-11-08 | 2018-12-27 | Brother Kogyo Kabushiki Kaisha | Communication apparatus, control program of communication apparatus, and relay apparatus providing efficient download of electronic data |
US20190068741A1 (en) * | 2017-08-25 | 2019-02-28 | Ricoh Company, Ltd. | Device system, server, and data processing method |
US20210050008A1 (en) * | 2018-05-07 | 2021-02-18 | Google Llc | Platform selection for performing requested actions in audio-based computing environments |
US20210099358A1 (en) * | 2019-09-30 | 2021-04-01 | Brother Kogyo Kabushiki Kaisha | Computer-readable medium and system for managing terminal device not directly communicable with terminal management device |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4178823B2 (en) | 2002-03-29 | 2008-11-12 | ブラザー工業株式会社 | Printing system, electronic device, program |
JP2005038089A (en) | 2003-07-17 | 2005-02-10 | Toshiba Corp | Personal information management system and method, and program |
US20090313307A1 (en) | 2008-06-16 | 2009-12-17 | Telefonaktiebolaget Lm Ericsson | Manipulation of network management information |
JP6107410B2 (en) | 2013-05-21 | 2017-04-05 | 富士ゼロックス株式会社 | System, relay device and program |
EP3249888B1 (en) | 2016-05-27 | 2020-07-29 | Ricoh Company, Ltd. | Managing system, managing method, and carrier means |
JP7147264B2 (en) | 2017-09-27 | 2022-10-05 | セイコーエプソン株式会社 | Device management system, device management apparatus, relay management apparatus, device management method, device management program, and relay management program |
JP6642600B2 (en) | 2018-02-22 | 2020-02-05 | 株式会社リコー | Request transmission device, device, request transmission system, request transmission method, and program |
JP7190837B2 (en) | 2018-07-31 | 2022-12-16 | キヤノン株式会社 | Relay device, control method, and program |
-
2020
- 2020-03-31 JP JP2020064199A patent/JP7414617B2/en active Active
-
2021
- 2021-03-31 US US17/218,405 patent/US11722546B2/en active Active
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030023450A1 (en) * | 2001-07-24 | 2003-01-30 | Fabio Casati | Modeling tool for electronic services and associated methods and business |
US20040030740A1 (en) * | 2002-08-09 | 2004-02-12 | Stelting Stephen A. | Method and system for automating generation of web services from existing service components |
US20060235742A1 (en) * | 2005-04-18 | 2006-10-19 | Castellanos Maria G | System and method for process evaluation |
US20080140857A1 (en) * | 2006-03-21 | 2008-06-12 | Conner Peter A | Service-oriented architecture and methods for direct invocation of services utilizing a service requestor invocation framework |
US20130010324A1 (en) * | 2010-02-22 | 2013-01-10 | Canon Kabushiki Kaisha | Printing system, control method, storage client apparatus, printing apparatus, and web application server |
US20180375923A1 (en) * | 2010-11-08 | 2018-12-27 | Brother Kogyo Kabushiki Kaisha | Communication apparatus, control program of communication apparatus, and relay apparatus providing efficient download of electronic data |
US20120246221A1 (en) * | 2011-03-25 | 2012-09-27 | Fuji Xerox Co., Ltd. | Information processing apparatus, information processing method, non-transitory computer readable medium storing program, and information processing system |
US20130019300A1 (en) * | 2011-07-15 | 2013-01-17 | Canon Kabushiki Kaisha | System, control method therefor, service providing apparatus, relay apparatus and computer-readable medium |
US20140244794A1 (en) * | 2011-09-27 | 2014-08-28 | Nec Corporation | Information System, Method and Program for Managing the Same, Method and Program for Processing Data, and Data Structure |
US20130321859A1 (en) * | 2012-05-31 | 2013-12-05 | Brother Kogyo Kabushiki Kaisha | Relay server |
US20140137194A1 (en) * | 2012-11-14 | 2014-05-15 | Brother Kogyo Kabushiki Kaisha | Control server, data processing device, and control device for data processing device |
US20150373211A1 (en) * | 2014-06-19 | 2015-12-24 | Brother Kogyo Kabushiki Kaisha | Function execution apparatus, system, and computer-readable medium therefor |
JP2017073167A (en) | 2016-12-20 | 2017-04-13 | ブラザー工業株式会社 | Relay device, image processing device, and communication system |
US20180203890A1 (en) * | 2017-01-17 | 2018-07-19 | International Business Machines Corporation | Sanitizing virtualized composite services |
US20190068741A1 (en) * | 2017-08-25 | 2019-02-28 | Ricoh Company, Ltd. | Device system, server, and data processing method |
US20210050008A1 (en) * | 2018-05-07 | 2021-02-18 | Google Llc | Platform selection for performing requested actions in audio-based computing environments |
US20210099358A1 (en) * | 2019-09-30 | 2021-04-01 | Brother Kogyo Kabushiki Kaisha | Computer-readable medium and system for managing terminal device not directly communicable with terminal management device |
Also Published As
Publication number | Publication date |
---|---|
US20210306441A1 (en) | 2021-09-30 |
JP7414617B2 (en) | 2024-01-16 |
JP2021163209A (en) | 2021-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210373822A1 (en) | Server, control method, and storage medium | |
US8937730B2 (en) | System, image forming apparatus, server, and control method thereof | |
US10908861B2 (en) | Information processing method which registers for a web service via an intermediary, image processing apparatus, and information processing system | |
CN101834973A (en) | Data transmission apparatus and control method therefor | |
US10917474B2 (en) | Information processing apparatus, method for controlling information processing apparatus, and storage medium | |
US20140078542A1 (en) | Print control apparatus and print control method | |
US10154167B2 (en) | Image data management system, image data management method, and storage medium | |
CN110784389B (en) | Relay device, control method, and information processing system | |
US11500596B2 (en) | Information processing apparatus that makes a notification regarding a quantity of a consumable based on resource information acquired from an image output apparatus, information processing system, and method | |
US9699338B2 (en) | Image forming apparatus | |
US10771649B2 (en) | Management server for managing multiple identifications of an image processing apparatus, and information processing system and information processing method therefor | |
US11722546B2 (en) | System, relay server, and data storage server | |
US11526312B2 (en) | Device management apparatus, method, and program storage medium | |
JP6135215B2 (en) | Image forming apparatus, network system, method and program | |
US11262956B2 (en) | Communication system, server system, and terminal apparatus | |
US9769334B1 (en) | Image processing device reading an image and transmitting read image data, on the basis of acquired processing information associated with received processing identifier, to storing location according to the processing information, and corresponding image processing system, image processing method, and non-transitory computer readable medium | |
JP2012064045A (en) | Management server and error output program | |
US20150138594A1 (en) | Output management device, output management system, and output manangement method | |
US10708462B1 (en) | Communication support device and non-transitory computer readable medium | |
US10834276B2 (en) | System, management server system and control method | |
JP2015055951A (en) | Information processing system and information processing method | |
CN114077586A (en) | Information processing apparatus, information processing method, information terminal, and information processing system | |
US10554828B2 (en) | Communication apparatus providing transmission destination from an address book, control method thereof, and storage medium | |
US11880616B2 (en) | Information processing system, control method therefor, and computer-readable storage medium | |
US11818226B2 (en) | Management system, management apparatus, management method, and storage medium storing program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
AS | Assignment |
Owner name: CANON KABUSHIKI KAISHA, JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:WAYAMA, HIROSHI;REEL/FRAME:057157/0227 Effective date: 20210714 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |