Service providing system, information processing device, and program product
Patent Information
- Application Number
- CN202511152807.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2025-03-24
- Filing Date
- 2025-08-18
- Publication Date
- 2026-09-25
AI Technical Summary
[0019]根据所述第一方案,具有如下效果:能够使从网络上的服务通知给装置的消息变得简单,执行装置所具备的功能。
Smart Images

Figure CN122824846A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a service delivery system, an information processing device, and a program product. Background Technology
[0002] Japanese Patent Application Publication No. 2024-6386 discloses a service provisioning system comprising a first device and a second device. The first device includes: at least one agent connected to a service that provides pre-prepared functions to the Internet; and an execution unit that, upon receiving an instruction having first attribute data including status information related to the first device and setting information related to functions of the first device, and related to the execution of the function, performs the function corresponding to the instruction while cooperating with the agent. The second device includes a shadow execution unit having second attribute data corresponding to the first attribute data, which performs processing of instructions received from the service and requests made from the execution unit. The execution unit checks for the presence of a message generated by the shadow execution unit via a first connection established between the execution unit and the shadow execution unit. If the message exists, it acquires the message and publishes the message to the agent represented by identification information attached to the message. The agent that has been published the message obtains information required for the execution of the function from the service via a second connection established between itself and the associated service, and executes the function corresponding to the instruction. Summary of the Invention
[0003] In recent years, online services have emerged that accept user instructions for devices such as image forming apparatuses. Using information registered in these online services, the device performs functions corresponding to the instructions (e.g., printing). For such devices, when user instructions are communicated as messages from online services, the more complex and larger the messages, the greater the performance overhead in communication and the higher the usage fees become.
[0004] Therefore, the object of the present invention is to provide a service delivery system, information processing device, and program product that simplifies the delivery of service notifications from the network to a device and enables the device to perform its functions.
[0005] According to a first aspect of the present invention, a service provisioning system is provided, comprising a first device and a second device. The first device includes: at least one coordinating unit that connects to a service on the Internet to provide the functions of the first device; and a first execution unit that cooperates with the coordinating unit to perform the functions. The second device is located on the Internet and connected to the first device. The second device includes a second execution unit that generates a third message based on a second message including information for retrieving a first message from the service, the third message including identification information for performing the functions of the first device. The first message includes an instruction to perform the functions and indicates the content of the functions to be performed. The first execution unit obtains the third message from the second device and performs the functions based on the third message.
[0006] According to a second aspect of the present invention, in the service provision system involved in the first aspect, the collaboration unit obtains the second message from the second device based on the job identification information included in the third message from the first execution unit, obtains the first message from the service based on the content of the second message, and collaborates with the first execution unit to perform the function corresponding to the instruction.
[0007] According to a third aspect of the present invention, in the service provision system involved in the first or second aspect, the first message includes hidden information, and the second message does not include the hidden information.
[0008] According to a fourth aspect of the present invention, in the service provision system involved in the third aspect, the concealed information is information for a specific individual or confidential information.
[0009] According to the fifth aspect of the present invention, in the service provision system involved in any of the first to fourth aspects, when the first message does not contain hidden information and the size of the message is below a preset threshold, the first message and the second message are the same.
[0010] According to a sixth aspect of the present invention, in the service provision system involved in the second aspect, the second device acquires the second message when the size of the second message from the service is below a preset threshold.
[0011] According to a seventh aspect of the present invention, in the service provision system involved in the second or sixth aspect, the second device does not acquire the second message if the size of the second message from the service is greater than a preset threshold.
[0012] According to the eighth aspect of the present invention, in the service provision system involved in the second aspect, the second device obtains the second message when the second message from the service does not include a pre-set string.
[0013] According to the ninth aspect of the present invention, in the service provision system involved in the second or sixth aspect, the second device does not acquire the second message if the second message from the service includes a pre-defined string.
[0014] According to a tenth aspect of the present invention, in the service provision system involved in the second aspect, the first execution unit further generates information for accepting authentication for the second execution unit, and the cooperation unit uses the information for accepting authentication from the first execution unit to obtain the second message from the second device.
[0015] According to the eleventh aspect of the present invention, in the service provision system involved in the tenth aspect, a validity period is set in the information for accepting the authentication, and if the cooperation unit exceeds the validity period, it requests the information for accepting the authentication from the first execution unit.
[0016] According to a twelfth aspect of the present invention, an information processing apparatus is provided that is connected to a first service on the Internet, wherein the apparatus includes a processor that acquires a third message, the third message being generated based on a second message including information for retrieving a first message from a second service on the Internet, and including identification information of a task performing a function of the information processing apparatus, the first message including an instruction to perform the function and indicating the content of the function to be performed, the processor acquiring the second message from the first service based on the identification information of the task included in the acquired third message, acquiring the first message from the second service based on the content of the second message, and performing a function corresponding to the instruction.
[0017] According to a thirteenth aspect of the present invention, a program product is provided, comprising a program that causes a computer connected to a first service on the Internet to perform processing, wherein the processing acquires a third message, the third message being generated based on a second message including information for retrieving a first message from a second service on the Internet, and including identification information of a job performing a function of the computer, the first message including an instruction to perform the function and indicating the content of the function to be performed, the processing acquiring the second message from the first service based on the identification information of the job included in the acquired third message, acquiring the first message from the second service based on the content of the second message, and performing a function corresponding to the instruction.
[0018] (Effect)
[0019] According to the first solution, the following effects are achieved: it simplifies the process of receiving service notifications from the network to the device, enabling the device to perform its functions.
[0020] According to the second scheme, the following effect is achieved: it is possible to obtain the message indicating the execution of the function from a simple message from a service notification sent to the device from the network.
[0021] According to the third solution, the following effect is achieved: the functions of the device can be performed without including hidden information in the service notification message from the network.
[0022] According to the fourth solution, the following effect is achieved: the functions of the device can be performed without including information or confidential information for a specific individual in the service notification message from the network.
[0023] According to the fifth scheme, the following effects are achieved: the hidden information is not included in the service notification message from the network, and the size of the message is set below a threshold, thereby enabling the execution of the functions of the device.
[0024] According to the sixth scheme, the following effect is achieved: it ensures that the size of the service notification message from the network is below a threshold.
[0025] According to the seventh scheme, the following effect is achieved: it can ensure that messages larger than the threshold are not retrieved from service notification messages on the network.
[0026] According to the eighth scheme, the following effect is achieved: it ensures that the service notification message from the network does not include a pre-defined string.
[0027] According to the ninth scheme, the following effect is achieved: it ensures that messages containing pre-defined strings are not received from service notifications on the network.
[0028] According to the tenth scheme, the following effect is achieved: the first device, which only has information for accepting authentication, can obtain the second message from the second device.
[0029] According to the eleventh scheme, the following effect is achieved: even if the validity period set in the information used for accepting authentication has expired, the second message can still be obtained from the second device.
[0030] According to the twelfth solution, the following effects are achieved: it simplifies the process of receiving service notifications from the network to the device, enabling the device to perform its functions.
[0031] According to the thirteenth solution, the following effects are achieved: it simplifies the process of receiving service notifications from the network to the device, enabling the device to perform its functions. Attached Figure Description
[0032] Figure 1 This is a diagram illustrating an example of the system architecture of a service-providing system;
[0033] Figure 2 This is a diagram illustrating examples of the various functional structures within the shadow assembly and image forming apparatus;
[0034] Figure 3 This is a diagram showing an example of the main structural components of the electrical system that makes up the SC computer;
[0035] Figure 4 This is a diagram showing an example of the main structural components of the electrical system of an image forming apparatus;
[0036] Figure 5 This is a flowchart illustrating an example of a service provision process performed by the CPU of the service, the CPU of the image forming apparatus, and the CPU of the computer constituting the SC;
[0037] Figure 6 This is a sequence diagram representing an example of the data flow when performing the fax transmission function of the service. Detailed Implementation
[0038] Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. Furthermore, the same reference numerals are used to denote the same constituent elements and the same processing in all the drawings, and repeated descriptions are omitted.
[0039] Figure 1 This is a diagram illustrating an example of the system structure of the service providing system 1 in this embodiment. For example... Figure 1 As shown, the service providing system 1 is a system that includes a user terminal 10, a shadow component 20, a service 21, and an image forming apparatus 30, and provides the user with a service that enables the service 21 and the image forming apparatus 30 to cooperate.
[0040] User terminal 10 is, for example, an information device located at location A, operated by a user using service provider system 1. Specifically, user terminal 10 is, for example, an information device with data input / output, data processing, and communication functions, such as a computer, smartphone, tablet, or wearable device. User terminal 10 can be a portable information device that changes location or a fixed information device that is pre-fixed at the location.
[0041] An example of the first apparatus in an embodiment of the present invention, the image forming apparatus 30, is an apparatus that performs image-related data processing according to user instructions. Image-related data processing includes, for example, a scanning function that reads content recorded on paper media such as documents as image data; a scan transmission function that transmits image data of documents acquired through the scanning function to a storage destination such as a storage device service on the Internet 2 and stores it; a printing function that forms an image on paper media as an image based on image data pre-specified by the user; and a fax function that sends and receives information via telephone lines.
[0042] The image forming apparatus 30 maintains setting information for various functions it possesses. For example, the setting information for the fax function includes information about the fax destination.
[0043] The image forming apparatus 30 is located at a remote location (e.g., the workplace of the company) different from the location A where the user operates the user terminal 10 (e.g., the company's location). Figure 1 In the example, it is represented as "Location B").
[0044] Therefore, when a user located at location B (hereinafter referred to as "nearby user") uses the service utilizing the image forming apparatus 30, the nearby user can instruct the image forming apparatus 30 by touching the operation panel of the image forming apparatus 30, etc. However, when a user located at location A (hereinafter referred to as "remote user") uses the service that enables the service 21 on the Internet 2 and the image forming apparatus 30 to cooperate, it is impractical for the remote user to move to location B to operate the image forming apparatus 30.
[0045] Therefore, a shadow component 20 is provided, which can exchange processing messages on the Internet 2 via service 21 and a specified interface, namely API (Application Programming Interface), so that remote users can use services from location A that enable service 21 on the Internet 2 and image forming apparatus 30 to cooperate. Hereafter, remote users and nearby users are sometimes referred to together as "users".
[0046] The shadow component 20 is, for example, a program module built using cloud services provided on the Internet 2, capable of exchanging processing messages with service 21 via a specified interface, and connected to the image forming apparatus 30 via a firewall 4 that houses the LAN (Local Area Network) 5 connected to the image forming apparatus 30, through a communication line 3.
[0047] Such a shadow component 20 has a metadata holding unit 24, which holds a dataset, i.e., metadata, of the image forming apparatus 30, including state information of the image forming apparatus 30, device structure of the image forming apparatus 30, and setting values that specify the operation of the image forming apparatus 30.
[0048] That is, the shadow component 20 retains data including the same attribute data as the image forming apparatus 30 set in location B as metadata.
[0049] Therefore, when a remote user instructs the image forming apparatus 30 to process information from the user terminal 10 via service 21, service 21 issues an instruction to the shadow component 20 via a defined interface. The shadow component 20 converts the instruction into information in a form that the image forming apparatus 30 can interpret and provides that information to the image forming apparatus 30. By performing this processing, the remote user can virtually operate the image forming apparatus 30 located at location B.
[0050] Attribute data is data represented by a combination of attribute items and values, including the status information and setting information of the image forming apparatus 30. The shadow component 20 synchronizes the attribute data with the image forming apparatus 30 via the communication line 3, enabling the content of the attribute data held by the shadow component 20 and the attribute data held by the image forming apparatus 30 to be identical. Furthermore, in addition to synchronizing attribute data between the shadow component 20 and the image forming apparatus 30 via the communication line, the shadow component 20 can also generate processing request data for the functions of the image forming apparatus 30, and send the processing request data to the image forming apparatus 30 as a job, which is then executed by the image forming apparatus 30.
[0051] Furthermore, there are no restrictions on the connection method of communication line 3 and LAN5 in service provision system 1; it can be any of the following: wired, wireless, or a combination of wired and wireless connections. Additionally, communication line 3 can also be, for example, a dedicated line or a VPN (Virtual Private Network) line.
[0052] Furthermore, to prevent the image forming apparatus 30 from accepting unauthorized access from the Internet 2, a firewall 4 is configured to prevent data other than responses to requests sent from the image forming apparatus 30 from being received from the Internet 2. Additionally, by applying a technology known as secure tunneling, bidirectional communication can also be achieved by pre-configuring port settings and communication protocols between the image forming apparatus 30 and specific services on the Internet 2 that enable bidirectional communication.
[0053] Figure 2 This is a diagram illustrating examples of the collaboration between the shadow component 20 (hereinafter referred to as "SC20") implemented using cloud services and the various functional structures and functional blocks in the image forming apparatus 30.
[0054] The following example illustrates a scenario where a remote user uses a service 21 on the Internet 2 to collaborate with a service located on a network connected to the image forming apparatus 30, which is protected by a firewall 4. The user connects user terminal 10 to service 21. A cloud service interface (IF) 6, defined between specified cloud services, is provided, enabling input and output of instructions that can be processed between service 21 and the image forming apparatus 20. Service 21 temporarily accepts instructions from the remote user sent via user terminal 10, converts the received instructions into the form of a service IF, and then transmits it to service 21. This service IF is described in an abstract form that describes the input and output of instructions for the functions of the image forming apparatus 30 and the processing results. Therefore, when a remote user uses user terminal 10 to give instructions on the execution of functions of image forming apparatus 30, the instructions can be given even if the detailed functional specifications of image forming apparatus 30 are unknown. Similarly, the developers of service 21 can process requests using cloud service IF6 for the input and output of abstract functions of image forming apparatus 30, and obtain execution results, even if they do not know the detailed functional specifications of image forming apparatus 30.
[0055] In this way, when a remote user wants to use the functions available in the image forming apparatus 30, the user terminal 10 connects to the service 21 and instructs the service 21 to cooperate with the functions available in the image forming apparatus 30.
[0056] The shadow component SC20 is a component with design information that defines the functions of the image forming apparatus 30. It can convert the execution instructions of the abstractly described functions received from service 21 via cloud service IF6 into processing request data that can be interpreted by the image forming apparatus 30, and send it to the image forming apparatus 30 via connection line 3.
[0057] Here, there may be multiple services 21 corresponding to functions used in cooperation with the image forming apparatus 30. Hereinafter, when distinguishing services 21, they will be expressed without the symbol "21" at the end, such as "service A" and "service B".
[0058] SC20 includes, for example, Digital Shadow (DS) 22, Real Device (RD) management 23, and DS22 also includes metadata storage unit 24 such as attribute data.
[0059] DS22 is a component that works in conjunction with Service 21 and RD Management 23 to perform processing according to the requested instructions.
[0060] RD Management 23 is a component that communicates with RD Control Unit 32. RD Control Unit 32 performs the following processes: SC20 collaborates with image forming apparatus 30 to synchronize attribute data, or receives processing requests generated by SC20 for functions available in image forming apparatus 30, causing image forming apparatus 30 to execute those functions. RD Management 23 communicates with image forming apparatus 30 connected to its address to determine if it is a pre-registered, legitimate image forming apparatus 30. When it is determined to be a legitimate image forming apparatus 30, it performs communication control processing such as attribute data synchronization. If the image forming apparatus 30 connected to its address is not a legitimate image forming apparatus 30, RD Management 23 does not connect SC20 and image forming apparatus 30, improving the security performance of service provision system 1.
[0061] The metadata managed by DS22 is a collection of attribute items and values that are synchronization objects between SC20 and image forming apparatus 30. Synchronization of attribute data refers to the process whereby, even if the value of an attribute item is updated in at least one of SC20 and image forming apparatus 30, the values of the attribute items are mutually notified to maintain the same value between SC20 and image forming apparatus 30. The values of attribute items (hereinafter referred to as "synchronization object attribute items") pre-designated as synchronization objects in the attribute data of image forming apparatus 30 are included in the metadata. Furthermore, the value of an attribute item refers to the value associated with the attribute item, and includes both numerical and string values. As synchronization object attribute items, attribute items can be all attributes included in the attribute data, or pre-determined attribute items can be used as objects. Additionally, attribute items whose values have changed within a specified period or newly defined attribute items can also be used as objects.
[0062] Service instance 25 is a component representing an entity of service 21, associated with each service 21, and extended to the cloud service. Specifically, service instance 25 is a component that has an interface for receiving instructions related to the function of image forming apparatus 30 and performs processing according to the design information specified in service 21.
[0063] exist Figure 2 In this context, service instance 25 representing the entity of service A is service A instance 25, and service instance 25 representing the entity of service B is service B instance 25. Furthermore, "service instance 25" is a general term for components representing the entity of service 21 when they do not require separate distinction as service A instance 25 and service B instance 25. Figure 2In the example, only the connection between cloud service IF6 and service instance 25 is shown, but sometimes cloud service IF6 and service instance 25 are connected as needed.
[0064] Thus, service instance 25 is the component that actually performs the functions specified by the associated service 21. Since service 21 and service instance 25 are closely integrated, service 21 and service instance 25 are sometimes simply referred to together as "service 21" to avoid misunderstanding.
[0065] On the other hand, the image forming apparatus 30 associated with SC20 includes, for example, an agent 31, an RD control unit 32, and a system 33.
[0066] Agent 31 is a component used to collaborate with external services to provide the functions of image forming apparatus 30. More specifically, it is a component used to communicate with service instance 25 and exchange information with service instance 25 for providing functions to the user. Agent 31 and service instance 25 are associated with each other according to the type of function.
[0067] For example, service instance 25, which provides function A as defined by service A, is associated with agent A, which provides function A; and service instance 25, which provides function B as defined by service B, is associated with agent B, which provides function B. That is, from the perspective of service instance 25, agent 31 can be regarded as a client that collaborates with service 21 to process the execution of functions accepted by service 21. Therefore, agent 31 is an example of a collaboration unit.
[0068] As an example, let's assume that service 21 has agent identification information pre-defined for a single agent 31 that performs the function associated with service 21. However, the method of managing agent identification information is not limited to this. For example, service 21 may also only have information indicating the category of the function it performs, and DS22 associates agent identification information based on the information indicating that category.
[0069] Furthermore, as shown above, when describing agents 31 by function, the symbol "31" is not used at the end as in the case of "Agent A" and "Agent B".
[0070] As already explained, the RD control unit 32 receives information from the SC20 that converts the processing request received by the SC20 from the service 21 into a form that the image forming apparatus 30 can interpret, and functions as an interface with the DS22 when providing the functions of the image forming apparatus 30 to the user as service 21. Specifically, the RD control unit 32 functions as an interface for synchronizing attribute data processing with the SC20, and receives information from the SC20 converted into a form that the image forming apparatus 30 can interpret. Therefore, the RD control unit 32 is connected to the DS22 and RD management 23 of the SC20, respectively, and is connected to each agent 31 and system 33 within the image forming apparatus 30. The RD control unit 32 is an example of a first execution unit.
[0071] System 33 manages all attribute items in image forming apparatus 30, and, with reference to the managed attribute items, cooperates with each agent 31 and RD control unit 32 to control the execution of the functions of image forming apparatus 30.
[0072] The SC20 and image forming apparatus 30 described above can be configured using computer 40 and computer 50, respectively.
[0073] Figure 3 This is a diagram illustrating the main structural components of the electrical system of the computer 40 that enables the cloud service that constitutes SC20 to operate.
[0074] As an example of the second device, computer 40 is equipped with a function responsible for Figure 2 The components of the SC20 shown are, as an example, a CPU (Central Processing Unit) 41, a ROM (Read Only Memory) 42 storing the program for the computer 40's startup process (Basic Input Output System: BIOS), a RAM (Random Access Memory) 43 used as a temporary working area for the CPU 41, non-volatile memory 44, and input / output interfaces (I / O) 45. The CPU 41, ROM 42, RAM 43, non-volatile memory 44, and I / O 45 are connected via a bus 46.
[0075] Non-volatile memory 44 is an example of a storage device that retains stored information even when the power supply to non-volatile memory 44 is cut off. For example, semiconductor memory can be used, but hard disks can also be used. For example, data that needs to be stored even when the power supply to computer 40 is cut off, such as metadata in metadata retention unit 24, is stored in non-volatile memory 44. Therefore, non-volatile memory 44 stores, for example, the information processing program that enables computer 40 to function as SC20.
[0076] I / O45, for example, connects to communication unit 11, input unit 12 and display unit 13.
[0077] The communication unit 11 is connected to the communication line 3 and has a communication protocol for data communication with the user terminal 10 and the image forming apparatus 30.
[0078] Input unit 12 is a unit that accepts operations from the administrator managing the cloud service and notifies the CPU 41, and includes, for example, buttons, touch panels, keyboards, mice and indicators.
[0079] Display unit 13 is a unit that generates information to visually display information processed by CPU 41.
[0080] on the other hand, Figure 4 This is a diagram illustrating an example of the main structural components of the electrical system of an image forming apparatus 30 constructed using a computer 50.
[0081] Computer 50 execution Figure 2 The processing of each component of the image forming apparatus 30 shown includes a CPU 51, which serves as an example of the processor of the control system 33; a ROM 52, which stores the BIOS for booting the computer 50; a RAM 53, which serves as a temporary working area for the CPU 51; a non-volatile memory 54; and an I / O 55. The CPU 51, ROM 52, RAM 53, non-volatile memory 54, and I / O 55 are connected via a bus 56.
[0082] For example, data that needs to be stored even if the power supply to the image forming apparatus 300 is cut off, such as in an image forming program that enables the resource 306 or computer 50 to function as the image forming apparatus 30, is stored in non-volatile memory 54.
[0083] In I / O 55, for example, communication unit 11, input unit 12, display unit 13, scanning unit 14, image forming unit 15, and fax unit 16 are connected.
[0084] The scanning unit 14 is a unit that reads the contents of a document transmitted to a document reading glass (not shown) by an optical reading device (not shown) and converts it into image data.
[0085] The image forming unit 15 is a unit that uses ink to form an image represented by image data on a paper medium. Furthermore, there are no limitations on the type of image forming method in the image forming unit 15; it can be either electrophotography or inkjet printing.
[0086] The fax unit 16 is a unit that sends and receives image data with other devices that have fax functionality via a telephone line (not shown).
[0087] Of course, the units connected to computer 40 and computer 50 are not limited to Figure 3 and Figure 4 The units shown are available. The necessary units can be selectively connected in computers 40 and 50.
[0088] Next, the service provision process in service provision system 1 will be explained. Figure 5 This is a flowchart illustrating an example of a service provisioning process performed by the CPU 51 of the image forming apparatus 30 and the CPU 41 of the computer 40 that enables the cloud service constituting service 21 and SC20 to operate, when a user instructs the image forming apparatus 30 to perform its functions through the user terminal 10.
[0089] The information processing program of the image forming apparatus 30, which specifies the service provision processing, is stored in the non-volatile memory 54 of the image forming apparatus 30 in advance. The CPU 51 of the image forming apparatus 30 reads the information processing program stored in the non-volatile memory 54 and executes the service provision processing.
[0090] In addition, the server program of the computer 40, which specifies the service provisioning process, is pre-stored in the non-volatile memory 44 of the computer 40. The CPU 41 of the computer 40 reads the server program stored in the non-volatile memory 44 and executes the service provisioning process.
[0091] Here, to make it easier to explain Figure 5 The service provision process shown is as follows, please refer to Figure 6 The following explanation will be provided. Furthermore, an example will be given of a case where fax reception documents are accumulated in the image forming apparatus 30, and an instruction is given to transmit the accumulated fax reception documents to a designated cloud storage device. The purpose of this instruction is, for example, in a company with many business locations, to transmit fax reception documents received by the image forming apparatus 30 at each business location to a designated storage device at the business headquarters, thereby enabling unified document management.
[0092] When a user instructs the image forming apparatus 30 to perform its functions via user terminal 10 to service 21 ( Figure 6(1) In step S10, service 21 generates a first message Msg1 and a second message Msg2. The first message Msg1 is a message indicating the execution of a function of the image forming apparatus 30 and represents the content of the function being executed. The second message Msg2 includes information for retrieving the first message.
[0093] At this point, service 21 sets up the server endpoint (PreSignedURL, etc.) for proxy 31 and generates the first message Msg1. In subsequent processing, when accessing from proxy 31, certificate verification is performed between proxy 31 and service 21, and the first message Msg1 is securely sent to proxy 31. "PreSignedURL" refers to a signed temporary repository.
[0094] Here, since we are using a fax document transmission instruction as an example, the message includes hidden information, and its size is also larger. For example, service 21 generates the following first message Msg1 and second message Msg2. Both are in JSON format and are custom-defined by service 21.
[0095] The following is an example of the first message Msg1, which includes the transmission of instruction information.
[0096] {
[0097] {
[0098] "orderID":12345678,
[0099] "executeUserID":"Michael555",
[0100] "executeUserPW":"password987Foo",
[0101] “faxDocTransfer”:{
[0102] {
[0103] “boxID”: 1201,
[0104] “docID”: 500001,
[0105] “ToURL”: “https: / / hogestorage.co.jp / …
[0106] "storageUserID:"xyzMicheal777",
[0107] "storageUserPW:"password345XYZ",
[0108] }
[0109] }
[0110] …(In the future, the same instructions for transmitting 100 documents will be recorded.)
[0111] }
[0112] The first message Msg1 includes, as concealed information, information about the document operation account used to log in to the secure box within the image forming apparatus 30. This is based on the premise that service 21 possesses the password information.
[0113] Additionally, the first message Msg1 includes, as concealed information, information indicating a write-permitted account that has logged into the storage device at the destination. Furthermore, the concealed information can also be information intended for a specific individual or confidential information.
[0114] The size of the first message Msg1 is, for example, 40KB.
[0115] An example of the second message Msg2 is described below, excluding hidden information.
[0116] {
[0117] "relatedOrderID":12345678,
[0118] "orderFunction":"faxDocTransfer",
[0119] "orderMsgURL":"https: / / fooService / xxx"
[0120] }
[0121] The size of the second message Msg2 is, for example, 0.1KB.
[0122] In this example, the "orderMsgURL" key is the temporary URL used by proxy 31 to access the first message Msg1.
[0123] In step S12, service 21 sends the generated second message to API 29. Figure 6 (2)).
[0124] For example, service 21 calls API 29 (e.g., HTTP-REST, etc.) and sends a second message Msg2. When calling API 29, it specifies which image forming apparatus 30 to use as the object. There are no restrictions on the method of specification; for example, it can specify a unique identifier for the image forming apparatus 30 in the URL query of API 29 or in the second message Msg2, etc. Below is an example of including the identifier for the image forming apparatus 30, "rdId=Foo123456-789012", in the URL query of API 29.
[0125] [POST] https: / / hogehoge.dsfw.co.jp / addMsg / rdId=Foo123456-789012
[0126] In step S20, the DS operation management unit 27 receives the second message via API 29 and accumulates the received second message within the DS operation management unit 27.
[0127] At this time, the DS operation management unit 27 can also obtain the second message if the size of the second message from the service 21 is below a preset threshold, and not obtain the second message if the size of the second message is greater than the preset threshold.
[0128] For example, if the size of the second message from service 21 is greater than a preset threshold (e.g., 1KB), DS Operation Management Unit 27 will not retrieve the second message, but will instead return an error response to service 21.
[0129] In addition, the DS Operation Management Department 27 can obtain the second message if the second message from the service 21 does not contain a preset string, and not obtain the second message if the second message contains a preset string.
[0130] For example, the DS Operations Management Department 27 analyzes the second message from Service 21. If it partially matches the NGWord list, it does not retrieve the second message but instead returns an error response to Service 21. The NGWord list includes, for example, "password", "pw", and "hidden".
[0131] Furthermore, DS Operations Management Department 27 is an example of the Second Execution Department.
[0132] In step S22, the DS job management unit 27, based on the received second message, generates a third message in a form that the image forming apparatus 30 can interpret, including identification information of the job that performs the functions of the image forming apparatus 30, and transmits it to the DS22. Figure 6 (3)).
[0133] Specifically, based on the received second message, the DS operation management unit 27 records and issues a bill in a form that the image forming apparatus 30 can interpret as an operation that performs the functions of the image forming apparatus 30, and initializes and manages the attribute information related to the operation as follows.
[0134] "jobId": "xyzService___00000000-0316-2024-0228-031600000007",
[0135] "status": "QUEUED"
[0136] "lastUpdateAt": 1709097586,
[0137] “executionNumber”: 1,
[0138] In addition, the DS Operation Management Unit 27 associates the received second message with the invoicing operation and stores it in the internal non-volatile memory 44.
[0139] In addition, if there is an unnotified job, the DS job management department 27 generates a third message including the identification information of the job and passes it to the DS22.
[0140] {
[0141] “queuedJobs”:
[0142] {
[0143] "jobId": "xyzService___00000000-0316-2024-0228-031600000007",
[0144] “executionNumber”: 1
[0145] } ]
[0147] }
[0148] “queuedJobs” indicates jobs in a queue.
[0149] In step S24, DS22 sends the received third message to the RD control unit 32 of the image forming apparatus 30. Figure 6(4) Furthermore, the third message can be sent from DS22 to image forming apparatus 30 by means of synchronization processing during the synchronization of attribute data between RD control unit 32 and DS22 at predetermined intervals. Alternatively, if bidirectional communication between image forming apparatus 30 and DS22 is possible, DS22 can send the third message to image forming apparatus 30 at the time of generation.
[0150] Specifically, DS22 detects new jobs at the time when DS Operations Management Department 27 issues new job invoices. Alternatively, DS22 checks for new jobs through polling.
[0151] If there is a new job, DS22 sends a third message for that job to RD control unit 32.
[0152] Here, the DS operation management unit 27 and the RD control unit 32 are set to be in a state of synchronous connection.
[0153] In step S30, the RD control unit 32 receives a third message from the DS22.
[0154] In step S32, the RD control unit 32 interprets the received third message and, based on the interpretation result, transmits it to the agent 31. Figure 6 (5)).
[0155] Specifically, the RD control unit 32 extracts the string from the first character to the delimiter "_" in the "JobID" field included in the received third message. For example, it extracts the string "xyzService" from "'jobId': 'xyzService_00000000-0316-2024-0228-031600000007'". Based on the extracted string, the RD control unit 32 determines the communication address of the agent 31. For example, it compares the information of a pre-prepared communication address with the extracted string in the following record to determine the communication address of the agent 31.
[0156] “xyzService”:{
[0157] “agent”:{
[0158] "identifier":"com.xyzsoft.xyzserver",
[0159] “sendPort”:“8001”, port number
[0160] "sendPath":localhost / xyzmodule / foo / ?abc=foo123" Server URL
[0161] }
[0162] },
[0163] “hogetask1”:{
[0164] “agent”:{
[0165] "identifier":"hogetask1",
[0166] “sendPath”: localhost / hogemodule / hoge / ?abc=hogehoge”
[0167] }
[0168] }
[0169] }
[0170] “'sendPort':'8001'” represents the port number. “'sendPath':localhost / xyzmodule / foo / ?abc=foo123” represents the URL of proxy 31.
[0171] Furthermore, there are no restrictions on the method by which the RD control unit 32 transmits third messages to the agent 31. For example, if a web server is built into the agent 31, the RD control unit 32 can establish an HTTP client and make an HTTP request to the localhost address, thereby transmitting the third message.
[0172] In step S34, the RD control unit 32 issues a DS access token for accessing DS22 and passes it to the agent 31. Figure 6 (6)). In addition, the DS access token is an example of information used to accept authentication.
[0173] Here, an expiration date is set in the DS access token. Agent 31 can also request a DS access token from RD control unit 32 if the DS access token's expiration date has passed. For example, the DS access token can be returned as a response by agent 31 sending a token issuance request to RD control unit 32 (e.g., via an HTTP request through LocalRoopBack).
[0174] In step S36, agent 31 uses the DS access token and, based on the job identification information included in the third message, retrieves the second message from the DS job management unit 27 via API 29. Figure 6 (7)).
[0175] At this time, in step S26, the DS job management unit 27 sends a second message to the agent 31, corresponding to the job identification information included in the third message possessed by the agent 31. Specifically, the DS job management unit 27 accepts the job identification information and the DS access token, performs security assurance based on Bearer authentication (authenticity), and sends the specified second message Msg2 to the agent 31.
[0176] In step S38, agent 31 obtains the first message from service 21 based on the content of the second message. Figure 6 (8)).
[0177] Specifically, agent 31 determines that receiving a fax document transmission is an instruction based on the orderFunction attribute in the second message Msg2. The orderFunction attribute is a command code pre-designed during the development of service 21 and agent 31.
[0178] Agent 31 performs TLS communication with the object Endpoint (e.g., AWS-S3 PresignedURL, etc.) described in the orderFunction property of the second message Msg2 to obtain the first message Msg1.
[0179] Furthermore, this step can be omitted if the first message does not contain hidden information and the functionality can be achieved within the specifications of the second message Msg2. Additionally, if the first message does not contain hidden information and the message size is below a pre-set threshold, the first and second messages can be the same.
[0180] At this time, in step S14, service 21 sends a first message to agent 31 that corresponds to the second message possessed by agent 31.
[0181] In step S40, agent 31 performs the function corresponding to the instruction based on the acquired first message.
[0182] For example, processing is performed based on the information required for transmitting the fax received document included in the first message Msg1.
[0183] In the example of the first message Msg1 above, "executeUserID" and "executeUserPW" are information used to log in to the image forming apparatus 30 and are anonymous. "boxID" and "docID" are information used to access fax receiving documents during box operation of the image forming apparatus 30. "storageUserID" and "storageUserPW" are authentication information used to access fax receiving documents during box operation of the image forming apparatus 30 and are anonymous. "ToURL" is information used to transmit fax receiving documents during box operation of the image forming apparatus 30.
[0184] The function of transmitting faxed documents is performed as an inherent function of the image forming apparatus 30. Specifically, a sending client using a file transfer protocol (FTP or SMB transfer) is generated internally, authentication information is added to the "ToURL," and the document is sent. This process can be performed by the agent 31 itself or by another module within the image forming apparatus 30.
[0185] In step S42, when the function execution is completed, agent 31 sends a completion notification to DS operation management unit 27 via API 29. Figure 6 (9)).
[0186] Specifically, Agent 31 sends the completion notification, along with the job identification information and DS access token, to the DS Job Management Department 27 via HTTP-REST or similar means.
[0187] In step S28, the DS job management unit 27 receives a completion notification from the agent 31 and sets the job status to complete. Alternatively, the DS job management unit 27 can also send a completion notification to the service 21 via HTTP or email. Alternatively, the service 21 can poll the notification queue of the DS job management unit 27.
[0188] In addition, the DS Operations Management Department 27 deleted the object of the second message Msg2 of this operation from the DS22.
[0189] If an error occurs at any step up to step S28, the agent 31 can notify the service 21 by notifying the DS operation management unit 27 of the error information.
[0190] Thus, according to the service provision system described above, the DS job management unit generates a third message based on a second message containing information for retrieving a first message from service 21, which includes identification information for performing a function of the image forming apparatus 30. The first message includes an instruction to perform the function and indicates the content of the function to be performed. Agent 31 obtains the third message and, based on the third message, cooperates with RD control unit 32 to perform the function corresponding to the instruction. This simplifies the process of receiving notifications from service 21 on the network to the image forming apparatus 30, enabling the execution of functions of the image forming apparatus 30.
[0191] Furthermore, the DS operation management unit 27 may also send two second messages Msg2 in sequence. In the above embodiment, the premise is that the service 21 has a grasp of the accumulated fax received documents. In order to meet this premise, before sending the second message Msg2 (transmission instruction for fax received documents) in step S26 above, the service 21 may also send another second message Msg2' (list transmission instruction for the accumulated fax received documents in the image forming apparatus 30) to the image forming apparatus 30 periodically (e.g., once a day) or irregularly.
[0192] For example, let's take the first message Msg1 below as an example.
[0193] {
[0194] "orderID": 92345678
[0195] "executeUserID":"reader234",
[0196] "executeUserPW":"password4321Hoge",
[0197] “getFaxDocList”:{
[0198] {
[0199] "boxID_range_start": 1001,
[0200] “boxID_range_end”: 1699,
[0201] “ToURL”: “https: / / hogehoge.co.jp / salesheadquarters / yyy…
[0202] }
[0203] “'boxID_range_start': 1001” indicates the starting number of the secure box that becomes the object. “'boxID_range_end': 1699” indicates the ending number of the secure box that becomes the object.
[0204] The first message Msg1 includes “'executeUserID':'reader234'” and “'executeUserPW':'password4321Hoge'”, which are anonymous information indicating the account that has logged into the secure box in the image forming apparatus 30 with document read permissions.
[0205] A second message Msg2' is created corresponding to the first message Msg1 and sent to the image forming apparatus 30.
[0206] {
[0207] "relatedOrderID":92345678,
[0208] "orderFunction":"getFaxDocList",
[0209] "orderMsgURL":"https: / / fooService / zzz"
[0210] }
[0211] The second message Msg2' does not include any hidden information. Upon receiving the second message Msg2', the image forming apparatus 30 sends a list of accumulated fax received documents to service 21.
[0212] In the case of multiple image forming apparatuses 30, a second message Msg2' can be created and sent to each image forming apparatus 30. Thus, service 21 can access the accumulated fax reception documents for each image forming apparatus 30.
[0213] Furthermore, the structure of the service provision system 1 has been described using an example of the functions of the image forming apparatus 30, but the apparatus that can be used as a provider based on the functions of the service provision system 1 is not limited to the image forming apparatus 30. For example, any mobile device such as a surveillance camera, home appliance, or vehicle that can connect to the Internet 2 and can change its actions according to the user's instructions can be used in the service provision system 1.
[0214] The above description illustrates one aspect of the service provision system 1 using an embodiment. However, the disclosed embodiment of the service provision system 1 is merely an example, and the embodiment is not limited to the scope described in the embodiment. Various modifications or improvements can be made to the embodiment without departing from the spirit of the invention, and such modifications or improvements are also included within the scope of the disclosed technology. For example, modifications may be made without departing from the spirit of the invention. Figure 5 The service shown provides the order of the various internal processes in the processing.
[0215] Furthermore, in this implementation, as an example, the method of implementing each process in software has been described. However, hardware processing can also be used. Figure 5 The flowchart shown illustrates the same processing method. In this case, compared to implementing each process in software, a higher processing speed is achieved.
[0216] In this embodiment, each process is executed by any computer. Furthermore, any computer can execute these processes via a processor as hardware, a program as software, or a combination thereof. In this case, the processor is configured to cooperate with the program in executing the various processes of this embodiment, and may also function as a unit or means of this embodiment. Additionally, the execution order of the processes performed by the processor is not limited to the order described and can be appropriately modified. Any computer can be a general-purpose computer, a special-purpose computer, a workstation, or other system capable of executing the processes.
[0217] A processor can be composed of one or more hardware components, and the type of hardware is not limited. For example, a processor can be composed of programmable logic devices such as CPUs (Central Processing Units), MPUs (Micro Processing Units), FPGAs (Field Programmable Gate Arrays), dedicated circuits for performing specific processes such as ASICs (Application Specific Integrated Circuits), GPUs (Graphics Processing Units), or NPUs (Neural Processing Units). Furthermore, the hardware can be a combination of different types of hardware. When multiple hardware components are configured to execute one or more processes of a processor, these multiple hardware components can exist in physically separate devices or in the same device. Additionally, in any embodiment, the order of the processes performed by the processor is not limited to the above order and can be appropriately varied. Moreover, the hardware is composed of circuits, such as those combining semiconductor elements.
[0218] Furthermore, the program can also be firmware, microcode, or other software. Additionally, the program can be, for example, a group of program modules, each of whose functions can be implemented by a processor configured to perform those functions. The program can also be program code or multiple code segments stored on one or more non-transitory computer-readable media (e.g., storage media or other storage devices). The program can also be segmented and stored on multiple non-transitory computer-readable media existing in physically separate devices. Program code or code segments can represent steps, functions, subroutines, routines, subroutines, modules, software packages, classes, or commands, data structures, or any combination of program statements. Program code or code segments can also be connected to other code segments or hardware circuits by sending and receiving information, data, arguments, parameters, or the contents of memory. Furthermore, the program of this application can also be provided as a program product.
[0219] In the above embodiments, an example of storing a program in non-volatile memories 44 and 54 has been described, but the storage destination of the program is not limited to non-volatile memories 44 and 54. The program of the present invention can also be provided in a storage medium that can be read by a computer 40 and 50. For example, the program can also be provided in an optical disc such as a CD-ROM (Compact Disk Read Only Memory) and a DVD-ROM (Digital Versatile Disk Read Only Memory). In addition, the program can also be provided in a portable semiconductor memory such as a USB (Universal Serial Bus) memory and a memory card. In addition, the program can also be provided in ROMs 42 and 52. ROMs 42 and 52, non-volatile memories 44 and 54, CD-ROMs, DVD-ROMs, USBs, and memory cards are examples of non-transitory storage media.
[0220] Furthermore, the image forming apparatus 30 and the computer 40 can also download programs from an external device (not shown) via the Internet 2 and store the downloaded programs in a storage device. In this case, the CPU 51 of the image forming apparatus 30 reads the image forming program downloaded from the external device from the storage device and performs various processes, while the CPU 41 of the computer 40 reads the server program downloaded from the external device from the storage device and performs various processes.
[0221] (Postscript) ((1))
[0223] A service delivery system, wherein,
[0224] Equipped with a first device and a second device,
[0225] The first device includes:
[0226] At least one cooperating unit, which connects to a service on the Internet to provide the functions of the first device; and
[0227] The first execution unit, in cooperation with the cooperating unit, performs the function.
[0228] The second device exists on the Internet and is connected to the first device.
[0229] The second device includes a second execution unit, which generates a third message based on a second message including information for retrieving a first message from the service, and identifies an operation including information for performing a function of the first device. The first message includes an instruction to perform the function and indicates the content of the function to be performed.
[0230] The first execution unit obtains the third message from the second device and performs the function based on the third message. ((2))
[0232] According to the service provision system described in (1),
[0233] The Collaboration Department
[0234] Based on the job identification information included in the third message from the first execution unit, the second message is obtained from the second device.
[0235] Based on the content of the second message, the first message is retrieved from the service.
[0236] It works in conjunction with the first execution unit to perform the function corresponding to the instruction. ((3)))
[0238] According to the service provision system described in (1) or (2),
[0239] The first message includes hidden information.
[0240] The second message does not include the hidden information. ((4))
[0242] According to the service provision system described in (3), wherein,
[0243] The concealed information is information intended for a specific individual or confidential information. ((5))
[0245] The service provision system according to any one of (1) to (4) is wherein,
[0246] If the first message does not contain hidden information and the size of the message is below a preset threshold, the first message and the second message are the same. (6))
[0248] According to the service provision system described in (2), wherein,
[0249] The second device acquires the second message when the size of the second message from the service is below a preset threshold. ((7))
[0251] According to the service provision system described in (2) or (6),
[0252] The second device will not acquire the second message if the size of the second message from the service is greater than a preset threshold. ((8))
[0254] According to the service provision system described in (2), wherein,
[0255] The second device acquires the second message if the second message from the service does not include a pre-defined string. (9))
[0257] According to the service provision system described in (2) or (6),
[0258] If the second device receives a message from the service that includes a pre-defined string, it will not retrieve the second message. ((10))
[0260] According to the service provision system described in (2), wherein,
[0261] The first execution unit also generates information for accepting authentication for the second execution unit, and the cooperation unit uses the information for accepting authentication from the first execution unit to obtain the second message from the second device. ((11))
[0263] According to the service provision system described in (10),
[0264] The information used to accept the authentication includes a validity period.
[0265] If the validity period has expired, the collaboration unit requests information from the first execution unit to accept the authentication. ((12))
[0267] An information processing device that connects to a first service on the Internet, wherein,
[0268] It has a processor, the processor
[0269] A third message is obtained, which is generated based on a second message including information for retrieving a first message from a second service on the Internet, and includes identification information of an operation performing a function of the information processing device. The first message includes an instruction to perform the function and indicates the content of the function to be performed.
[0270] Based on the job identification information included in the acquired third message, the second message is obtained from the first service.
[0271] Based on the content of the second message, the first message is obtained from the second service.
[0272] Perform the function corresponding to the instruction. ((13))
[0274] A program product comprising a program that causes a computer connected to a first service on the Internet to perform processing, wherein the processing
[0275] A third message is obtained, which is generated based on a second message including information for retrieving a first message from a second service on the Internet, and includes identification information of a task performing a function of the computer, wherein the first message includes an instruction to perform the function and indicates the content of the function to be performed.
[0276] Based on the job identification information included in the acquired third message, the second message is obtained from the first service.
[0277] Based on the content of the second message, the first message is obtained from the second service.
[0278] Perform the function corresponding to the instruction.
[0279] According to ((1)), it has the following effect: it can simplify the message from the network service to the device and perform the functions of the device.
[0280] According to ((2)), it has the following effect: it is possible to obtain the message indicating the execution of the function from the simple message from the service notification to the device on the network.
[0281] According to ((3)), it has the following effect: it can perform the functions of the device without concealing information from the service notification messages on the network.
[0282] According to (4), it has the following effect: it is able to perform the functions of the device without including information or confidential information for a specific person in the service notification message from the network.
[0283] According to (5), it has the following effect: it can exclude hidden information from the service notification message from the network and set the size of the message to below a threshold, thereby performing the functions of the device.
[0284] According to (6), it has the following effect: it can ensure that the size of the service notification message from the network is below the threshold.
[0285] According to ((7)), it has the following effect: it can ensure that messages larger than the threshold are not obtained from service notification messages on the network.
[0286] According to ((8)), it has the following effect: it can ensure that the pre-set string is not included in the service notification message from the network.
[0287] According to (9), it has the following effect: it can ensure that messages containing a pre-defined string are not obtained from service notifications on the network.
[0288] According to ((10)), the following effect is achieved: the first device, which only has information for accepting authentication, can obtain the second message from the second device.
[0289] According to ((11)), it has the following effect: even if the validity period set in the information used for accepting authentication has expired, the second message can still be obtained from the second device.
[0290] According to (12), it has the following effect: it can simplify the message from the network service to the device and perform the functions of the device.
[0291] According to (13), it has the following effect: it can simplify the message from the network service to the device and perform the functions of the device.
Claims
1. A service provisioning system, characterized in that, Equipped with a first device and a second device, The first device includes: At least one cooperating unit, which connects to a service on the Internet to provide the functions of the first device; and The first execution unit, in cooperation with the cooperating unit, performs the function. The second device exists on the Internet and is connected to the first device. The second device includes a second execution unit, which generates a third message based on a second message including information for retrieving a first message from the service, and identifies an operation including information for performing a function of the first device. The first message includes an instruction to perform the function and indicates the content of the function to be performed. The first execution unit obtains the third message from the second device and performs the function based on the third message.
2. The service provisioning system according to claim 1, wherein, The Collaboration Department Based on the job identification information included in the third message from the first execution unit, the second message is obtained from the second device. Based on the content of the second message, the first message is retrieved from the service. It works in conjunction with the first execution unit to perform the function corresponding to the instruction.
3. The service provisioning system according to claim 1 or 2, wherein, The first message includes hidden information. The second message does not include the hidden information.
4. The service provisioning system according to claim 3, wherein, The concealed information is information intended for a specific individual or confidential information.
5. The service provision system according to any one of claims 1 to 4, wherein, If the first message does not contain hidden information and the size of the message is below a preset threshold, the first message and the second message are the same.
6. The service provisioning system according to claim 2, wherein, The second device acquires the second message when the size of the second message from the service is below a preset threshold.
7. The service provisioning system according to claim 2 or 6, wherein, The second device will not acquire the second message if the size of the second message from the service is greater than a preset threshold.
8. The service provisioning system according to claim 2, wherein, The second device acquires the second message if the second message from the service does not include a pre-defined string.
9. The service provisioning system according to claim 2 or 6, wherein, If the second device receives a message from the service that includes a pre-defined string, it will not retrieve the second message.
10. The service provisioning system according to claim 2, wherein, The first execution unit also generates information for accepting authentication for the second execution unit, and the cooperation unit uses the information for accepting authentication from the first execution unit to obtain the second message from the second device.
11. The service provisioning system according to claim 10, wherein, The information used to accept the authentication includes a validity period. If the validity period has expired, the collaboration unit requests information from the first execution unit to accept the authentication.
12. An information processing apparatus connected to a first service on the Internet, characterized in that, It has a processor, the processor A third message is obtained, which is generated based on a second message including information for retrieving a first message from a second service on the Internet, and includes identification information of an operation performing a function of the information processing device. The first message includes an instruction to perform the function and indicates the content of the function to be performed. Based on the job identification information included in the acquired third message, the second message is obtained from the first service. Based on the content of the second message, the first message is obtained from the second service. Perform the function corresponding to the instruction.
13. A program product comprising a program that causes a computer connected to a first service on the Internet to perform processing, characterized in that, The processing A third message is obtained, which is generated based on a second message including information for retrieving a first message from a second service on the Internet, and includes identification information of a task performing a function of the computer, wherein the first message includes an instruction to perform the function and indicates the content of the function to be performed. Based on the job identification information included in the acquired third message, the second message is obtained from the first service. Based on the content of the second message, the first message is obtained from the second service. Perform the function corresponding to the instruction.
Citation Information
Patent Citations
Service providing system
JP2024006386A