Information processing apparatus and image forming apparatus

JP2026168983APending Publication Date: 2026-10-16ETRIA CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2025062578
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-04-04
Publication Date
2026-10-16

Smart Images

  • Figure 2026168983000001_ABST
    Figure 2026168983000001_ABST
Patent Text Reader

Abstract

To provide an information processing device and an image forming apparatus that can perform fine-grained communication control. [Solution] The image forming apparatus (information processing apparatus, image processing apparatus) 11, 12 has a communication interface 111, a memory 104, and a processor 101. When an application program in the memory 104 communicates with another application program within the same device, the processor 101 starts an internal communication server process via a management program. When an application program in the memory communicates with another application program in an external device connected via the communication interface, the processor starts an external communication server process via a management program.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present invention relate to an information processing apparatus and an image forming apparatus.

Background Art

[0002] Conventionally, as an image forming apparatus (image processing apparatus) placed in a workplace, an image forming apparatus such as a digital multifunction peripheral having various functions is known. An image forming apparatus such as a digital multifunction peripheral executes various functions by application programs installed in a storage unit (hereinafter also referred to as "built-in applications"). Some built-in applications have a function of communicating with other built-in applications (hereinafter referred to as "inter-application communication function"). A plurality of built-in applications can cooperate with each other to execute a series of functions through the inter-application communication function.

[0003] However, the inter-application communication function by the built-in applications used in conventional image forming apparatuses has a problem that fine-grained disclosure control cannot be performed. For example, built-in applications used in conventional image forming apparatuses always keep network ports open for external access so as to be able to respond immediately to communication requests. Keeping network ports open to the outside at all times increases the possibility of being attacked from the outside, and has a problem of higher security risks.

Prior Art Documents

Patent Documents

[0004]

Patent Document 1

Summary of Invention

Problems to be Solved by the Invention

[0005] The problem to be solved by the present invention is to provide an information processing apparatus and an image forming apparatus capable of performing fine-grained communication control.

Means for Solving the Problems

[0006] According to the embodiment, the information processing device includes a communication interface, memory, and a processor. When an application program in memory communicates with another application program within the same device, the processor uses a management program to start an internal communication server process. When an application program in memory communicates with another application program in an external device connected via the communication interface, the processor uses a management program to start an external communication server process. [Brief explanation of the drawing]

[0007] [Figure 1] Figure 1 shows an example of the configuration of an image forming system including an image forming apparatus as an information processing apparatus and an image processing apparatus according to the embodiment. [Figure 2] Figure 2 shows an example of the configuration of an image forming apparatus as an information processing apparatus and an image processing apparatus according to the embodiment. [Figure 3] Figure 3 shows an example of a setting table in an image forming apparatus, which is an information processing apparatus and an image processing apparatus according to the embodiment. [Figure 4] Figure 4 is a schematic diagram showing an example of an application that performs inter-application communication within the same image forming apparatus according to the embodiment. [Figure 5] Figure 5 is a sequence diagram illustrating an example of operation when inter-application communication is performed within the same application in an image forming apparatus according to the embodiment. [Figure 6] Figure 6 is a sequence diagram illustrating an example of operation when inter-application communication is performed within the same application in an image forming apparatus according to the embodiment. [Figure 7] Figure 7 is a schematic diagram showing an example of an application that performs inter-application communication within different devices in an image forming apparatus according to an embodiment. [Figure 8]Figure 8 is a sequence diagram illustrating an example of operation when applications within different devices communicate with each other in an image forming apparatus according to an embodiment. [Figure 9] Figure 9 is a sequence diagram illustrating an example of operation when applications within different devices communicate with each other in an image forming apparatus according to this embodiment. [Modes for carrying out the invention]

[0008] The embodiments will be described below with reference to the drawings. First, an image forming system (information processing system) 1 having an image forming apparatus (information processing apparatus, image processing apparatus) 11 according to the embodiment will be described. Figure 1 is a schematic diagram showing an example of the configuration of an image forming system 1 including an image forming apparatus 11 according to an embodiment. The image forming system 1 includes an image forming apparatus (MFP_A) 11, an image forming apparatus (MFP_B) 12, a LAN (Local Area Network) 13, a personal computer (PC) 15, a network 18, a cloud server 19, and the like.

[0009] The image forming apparatus 11, the image forming apparatus 12, and the personal computer 15 are connected to a LAN 13 and can communicate with each other via the LAN 13. Furthermore, the image forming apparatus 11, the image forming apparatus 12, and the personal computer 15 can also communicate with a cloud server 19 via a network 18.

[0010] Image forming apparatus 11 and image forming apparatus 12 are, for example, multifunction peripherals (MFPs) with various functions. Hereinafter, multifunction peripherals as image forming apparatuses may be abbreviated as MFPs. Multifunction peripherals (MFPs) as image forming apparatuses 11 and 12 have various functions using images.

[0011] For example, the image forming apparatuses 11 and 12 have basic functions including image processing, such as printing, scanning, copying, and faxing. The printing function is the function of printing an image onto paper. The scanning function is the function of reading an image from a document or the like. The copying function is, for example, the function of printing an image read from a document or the like using the scanning function onto paper using the printing function. The faxing function is, for example, the function of sending an image read from a document or the like using the scanning function to an external location, or printing an image received from an external location onto paper using the printing function.

[0012] Furthermore, in the embodiment, the image forming apparatus 11 and 12 are examples of information processing devices (image processing devices). The image forming apparatus 11 and 12, as information processing devices, are equipped with a processor for executing programs, memory for storing programs, and a communication interface for sending and receiving data. In the embodiment, the image forming apparatus 11 has an application program (app) installed that cooperates with other application programs (apps) via a server process for communication. The image forming apparatus 11 is also referred to as MFP_A. The image forming apparatus 12 has an app installed that cooperates with the app of the image forming apparatus 11 (an app for a different device). The image forming apparatus 12 is an example of a different device from the image forming apparatus 11, and is also referred to as MFP_B.

[0013] The applications installed in the image forming apparatuses 11 and 12 are programs that cause the image forming apparatuses to perform processes to achieve specific tasks or purposes. For example, an application is a program that causes the image forming apparatuses 11 and 12 to perform data processing functions related to image processing functions such as scanning, printing, or other image processing functions. Furthermore, applications are installed, for example, by a browser 16 on a PC 15 that is connected to the image forming apparatuses 11 and 12.

[0014] In the configuration example shown in Figure 1, the image forming apparatus 11 is installed with programs such as a management program (hereinafter referred to as management framework) 20, an application program A (hereinafter referred to as built-in app A) 30, and an application program B (hereinafter referred to as built-in app B) 41. Further, the image forming apparatus (MFP_B) 12 is installed with an application program C (hereinafter referred to as built-in app C) 51. The built-in app A 30 is an example of an application program that cooperates with the built-in app B 41 and the built-in app C 51.

[0015] The management framework 20 in the image forming apparatus 11 enables application cooperation via an API (Application Programming Interface). For example, as a server function, the management framework 20 provides an internal communication server process (hereinafter also simply referred to as internal communication server) 21 and an external communication server process (hereinafter also simply referred to as external communication server) 22 in response to requests from applications.

[0016] The internal communication server 21 is a server function for performing data communication between applications within the same image forming apparatus 11. The internal communication server 21 realizes communication within the image forming apparatus 11 without exposing the network port to the outside. Since the internal communication server 21 transmits and receives data within one image forming apparatus 11 without exposing to the outside, the risk of data during communication leaking to the outside is suppressed.

[0017] The external communication server 22 is a server function for performing data communication between an application in the image forming apparatus 11 and an application in another image forming apparatus 12 which is an external apparatus. The external communication server 22 realizes communication between applications of different image forming apparatuses 11 by exposing the network port to the outside. The external communication server 22 can also communicate with applications of a plurality of different image forming apparatuses connected via the LAN 13 through the network port exposed to the outside.

[0018] The built-in app A30 in the image forming apparatus 11 is composed of a Home app 31 and a BG app 32. The Home app 31 functions as a client-side app (client app) in the built-in app A30 via a communication client API 311. The BG app 32 functions as a server-side app (server app) that communicates with the client-side app via a communication server API 321.

[0019] The BG app 32 of the built-in app A30 in the image forming apparatus 11 activates the internal communication server 21 provided by the management framework 20. The BG app 32 of the built-in app A30 performs data communication between apps within the image forming apparatus 11 using the internal communication server 21. For example, in the configuration example shown in FIG. 1, the BG app 32 of the built-in app A communicates with the Home app 31 or the built-in app B41 in the same image forming apparatus (MFP_A) 11 via the internal communication server 21.

[0020] The built-in app B41 in the image forming apparatus 11 is an example of a built-in app that cooperates with the built-in app A30 in the image forming apparatus 11 and resides in the same image forming apparatus 11. The built-in app B41 functions as a client app via a communication client API 411. The built-in app B41 communicates with the built-in app A30 through the internal communication server 21 activated by the BG app 32.

[0021] Further, the BG app 32 of the built-in app A30 in the image forming apparatus 11 activates the external communication server 22 provided by the management framework 20. The BG app 32 of the built-in app A30 performs data communication with a built-in app of a different image forming apparatus using the external communication server 22. In the configuration example shown in FIG. 1, the BG app 32 of the built-in app A30 communicates with the built-in app C51 in another image forming apparatus (MFP_B) 12 serving as an external apparatus via the external communication server 22 and the internal communication server 21.

[0022] The built-in application C51 in the image forming apparatus 12 is an example of an application located in the image forming apparatus 12 that is different from the built-in application A in the image forming apparatus 11. The built-in application C51 functions as a client application via the communication client API 511. The built-in application C51 of the image forming apparatus 12 communicates with the built-in application A30 of the image forming apparatus 11 via the external communication server 22 and the internal communication server 21, which are started by the BG application 32.

[0023] The personal computer 15 is an example of a user terminal device operated by an operator. The personal computer 15 sends print requests, such as image printing, to the image forming apparatus 11, and receives image data processed by the image forming apparatus 11. The personal computer 15 also has a browser 16 installed for accessing the web. The personal computer 15 accesses the cloud server 19 via the network 18 using the browser 16. The personal computer 15 also has the function of installing applications on the image forming apparatuses 11 and 12 using the browser 16.

[0024] The cloud server 19 is a server device that communicates with the image forming apparatus 11, 12 or the PC 15 via a wide-area network 18. The cloud server 19 provides various services to the image forming system 1, including the image forming apparatus 11, 12, such as data storage. For example, the cloud server 19 stores image data in response to requests from the image forming apparatus 11, 12. The cloud server 19 also performs data processing on the image data, such as image processing and conversion of file data formats, in response to requests from the image forming apparatus 11, 12.

[0025] Next, an example of the control system configuration in the image forming apparatus 11, which is an information processing device according to the embodiment, will be described. Figure 2 is a schematic block diagram showing an example of the configuration of the control system in the image forming apparatus 11 according to the embodiment. The image forming apparatus 11 includes a processor 101, ROM (Read Only Memory) 102, RAM (Random Access Memory) 103, local storage device 104, operation keys 105, touch panel 106, display unit 107, scanner 108, image forming unit 109, fax machine 110, communication interface (I / F) 111, device interface (I / F) 112, and system bus 113, among others.

[0026] The processor 101 is an arithmetic element that performs calculations. The processor 101 executes programs stored in memory such as the ROM 102 and the local storage device 104. The processor 101 is, for example, a CPU (Central Processing Unit). Alternatively, the processor 101 may include a GPU (Graphical Processing Unit) or the like.

[0027] ROM102 is a non-volatile memory that constitutes part of the main memory. ROM102 non-temporarily stores programs such as the startup program necessary for starting the image forming apparatus 11. ROM102 may include, for example, EPROM® (Erasable Programmable Read Only Memory). In addition to the startup program, ROM102 may also store various startup configuration data.

[0028] RAM103 is a volatile memory that constitutes part of the main memory. RAM103 temporarily stores programs necessary for processing by processor 101 and data necessary for program execution. For example, RAM103 functions as the working memory of processor 101.

[0029] The local storage device 104 is a rewritable non-volatile memory, such as an HDD (Hard Disk Drive) or SSD (Solid State Drive). The local storage device 104 non-temporarily stores the program executed by the processor 101 and the data necessary for the execution of that program. The program stored in the local storage device 104 will be described later.

[0030] The operation key 105 is an input device that receives instructions from the user. The operation key 105 consists of, for example, multiple push keys assigned to each function, and receives instructions from the user through the operation of the push keys. The touch panel 106 is an input device that receives instructions from the user. The touch panel 106 receives instructions from the user by detecting touch operations performed by a finger or stylus.

[0031] The display unit 107 is an output device that presents information to the user. More specifically, the display unit 107 is a display device that displays information to be presented to the user. The display unit 107 is composed of a liquid crystal display, an organic EL display, or the like. The display unit 107 and the touch panel 106 may be configured as a combined input / output device. For example, the touch panel 106 may be superimposed on the display screen of the display unit 107.

[0032] Scanner 108 is an example of an image processing unit, which is a device that performs scanning functions. Scanner 108 is a device that reads an image from a document. Scanner 108 has, for example, a document glass and a reading module. The reading module reads an image from a document placed on the document glass or from a document fed to the document glass by a document feeder. The reading module illuminates the document to be read with illumination light, receives the reflected light with an image sensor, and converts it into a digital signal. In this way, the reading module reads an image from the document.

[0033] The image forming unit 109 is an example of an image processing unit, which is a device that performs printing functions. The image forming unit 109 is a printer that forms an image on paper (medium). Based on the supplied print data, the image forming unit 109 prints an image based on the image data contained in the print data onto the paper transported by the paper transport device. For example, when performing a copy function, the print data includes image data read from the original by the scanner 108. The print data may also include image data transmitted from an external device (e.g., a PC 15). The print data may also include image data received by a fax machine 110. The print data may also include image data stored on an external device connected to the device interface 112 of the image forming apparatus 11.

[0034] The image forming unit 109 may use any image forming method to form images. For example, if the image forming unit 109 uses an electrophotographic method to form images, it will transfer a toner image formed according to the image data onto the paper to form an image on the paper. Alternatively, if the image forming unit 109 uses an inkjet head method to form images, it will spray ink onto the paper according to the image data to form an image on the paper.

[0035] Fax 110 is a device that performs fax functions, sending and receiving data (FAX data) over a telephone line. Fax 110 is also an example of an image processing unit that processes images. For example, Fax 110 can send fax data containing image data scanned by Scanner 108, or receive image data from external devices or the cloud.

[0036] The communication interface 111 is a communication unit for communicating with external devices. The communication interface 111 communicates with an external device, such as an image forming apparatus 12 or a PC 15, via the LAN 13. The communication interface 111 also includes interfaces for communicating with the LAN 13, a network 18, and a cloud server 19. The LAN 13 to which the communication interface 111 is connected may be wired or wireless. For example, the communication interface 111 transmits image data read by the scanner 108 to an external device or the cloud, or receives image data for printing from an external device or the cloud to be used by the image forming unit 109.

[0037] Device interface 112 is an interface for connecting devices such as external devices for storing data. For example, device interface 112 includes USB (Universal Serial Bus). External devices connected to device interface 112 are expected to be USB memory sticks, digital cameras, smartphones, etc.

[0038] The system bus 113 is a communication path that connects the processor 101, ROM 102, RAM 103, local storage device 104, operation keys 105, touch panel 106, display unit 107, scanner 108, image forming unit 109, fax machine 110, communication interface 111, and device interface 112, among others. For example, the processor 101 is connected to each unit via the system bus 113 and sends and receives data, control signals, commands, responses, etc.

[0039] The processor 101, ROM 102, RAM 103, local storage device 104, and communication interface 111 constitute a computer that functions as an information processing device (image processing device) that executes programs. For example, when the computer starts up, the processor 101 executes a startup program in ROM 102 to start the operating system (OS). Under the control of the OS, the processor 101 sets up a program area and a data area in RAM 103. For example, the processor 101 executes various processing functions by applications by executing various applications using APIs provided by a management program.

[0040] In the configuration example shown in Figure 2, the local storage device 104 has storage areas 131 to 137 for storing each program and the data used by the program. Memory area 131 is an area for storing the operating system (OS). The operating system stored in memory area 131 is system software and provides the operating foundation for applications, or application programs.

[0041] Memory area 132 is a memory area for storing the MFP control program. The MFP control program stored in memory area 132 is a program that executes various functions of the image forming apparatus 11. Memory area 132 also stores various files and setting information necessary for the execution of the program.

[0042] Memory area 133 is a memory area that stores the management framework 20, which acts as a management program. The management framework stored in memory area 133 enables data communication between applications by providing an API. Memory area 134 is a memory area that stores built-in application A. Memory area 135 is a memory area that stores various files, configuration information, and other information necessary for the execution of built-in application A, as storage for built-in application A. Memory area 136 is a memory area that stores built-in application B41. Memory area 137 is a memory area that stores various files, configuration information, and other information necessary for the execution of built-in application B, as storage for built-in application B.

[0043] Here, as shown in Figure 1, the built-in application A30 includes a Home application 31 and a background (BG) application (hereinafter referred to as the BG application) 32. The BG application 32 starts the internal communication server 21 or the external communication server 22 provided by the management framework 20. The BG application 32 communicates with the internal communication server and the external communication server 22, which remain resident until instructed to stop the service.

[0044] For example, when the built-in application A30 interacts with an application within the same image forming apparatus 11 (Home application 31 or built-in application B41), the BG application 32 starts the internal communication server 21. In this case, the BG application 32 and the Home application 31 or built-in application B41 communicate via the internal communication server 21.

[0045] Furthermore, when the built-in application A30 cooperates with the built-in application C51 of another image forming apparatus 12, the BG application 32 activates the internal communication server 21 and the external communication server 22. In this case, the BG application 32 and the built-in application C51 communicate via the internal communication server 21 and the external communication server 22.

[0046] The program installed on the local storage device 104 may be provided to the image forming apparatus 11 by any means. For example, the program may be provided to the image forming apparatus 11 from the browser 16 on the PC 15. Alternatively, the program may be provided to the image forming apparatus 11 by downloading it from a server on the network 18. Furthermore, the program may be provided to the image forming apparatus 11 from a storage device connected to the device interface 112.

[0047] Next, the communication function between built-in applications and other applications (inter-application communication) in the image forming apparatus 11 according to this embodiment will be described. In the configuration examples shown in Figures 1 and 2, the built-in application A30 of the image forming apparatus 11 has an inter-application communication function that allows the BG application 32 to communicate with other applications. Inter-application communication by the BG application 32 is realized by a server process provided by the management framework 20. When the built-in application A's BG application 32 communicates with an application within the same image forming apparatus 11, it starts the internal communication server 21. Furthermore, when the built-in application A's BG application 32 communicates with an application in a different image forming apparatus, it starts both the internal communication server 21 and the external communication server.

[0048] The image forming apparatus 11 according to this embodiment has an inter-application communication configuration table that sets which server process to start according to the communication content (communication type) requested by the inter-application communication. The inter-application communication configuration table is stored, for example, in the local storage device 104 of the image forming apparatus 11.

[0049] Figure 3 shows an example of the configuration of the inter-application communication setting table stored in the local storage device 104 of the image forming apparatus 11 according to the embodiment. The configuration table shown in Figure 3 stores information for each communication type, including the image forming apparatus (MFP) on which the application is deployed, the application's identification information (AppID), the inter-application communication server, and the access disclosure status. The configuration table in Figure 3 illustrates configuration information for three communication types.

[0050] The first communication type (Type 1) is a communication method between built-in applications installed within the same image forming apparatus and having the same AppID. For example, in the configuration example shown in Figure 1, the first communication type is communication between the Home application 31 and the background (BG) application 32, which constitute the built-in application A30. Since the Home application 31 and the BG application 32 constitute the same built-in application A30, they have the same AppID.

[0051] Home app 31 is a built-in application that is instructed to run by the operation keys 105 or touch panel 106 of the image forming apparatus 11. The content of Home app 31 is controlled by the user. Home app 31 uses the communication client API 311 to perform client-side processing for communication. BG app 32 is a form of built-in application that is not operated by user instructions in the image forming apparatus 11. BG app 32 resides as a process within the image forming apparatus 11. BG app 32 uses the communication server API 321 to perform server-side processing in response to requests from clients (client-side applications).

[0052] In the first type of communication (Type 1), since the communication is between built-in applications within the same image forming apparatus, an internal communication server 21 is used, as shown in Figure 3. The internal communication server 21 does not expose its network port to the outside, and client access is limited to localhost (the same image forming apparatus).

[0053] The second type of communication (Type 2) is a communication method between built-in applications installed within the same image forming apparatus but having different AppIDs. For example, in the configuration example shown in Figure 1, the second type of communication is the communication method between the BG application 32 of built-in application A30 and built-in application B41. Since built-in applications A30 and B41 are different built-in applications, the BG application 32 of built-in application A30 and built-in application B41 have different AppIDs.

[0054] In inter-application communication between the built-in application B41 and the background application 32, the built-in application B41 uses the communication client API 411 to perform client-side processing for communication. In contrast, the background application 32 of the built-in application A30 uses the communication server API 321 to perform server-side processing in response to requests from the client.

[0055] The second type of communication (Type 2) involves communication between built-in applications within the same image forming apparatus (MFP_A) 11, and therefore uses an internal communication server 21, as shown in Figure 3. The internal communication server 21 does not expose its network port to the outside and is configured to limit client access to localhost (the same image forming apparatus).

[0056] The third type of communication (Type 3) is a form of communication between different built-in applications installed in different image forming apparatuses. For example, in the configuration example shown in Figure 1, the third type of communication is between the BG application 32 of the image forming apparatus 11 and the built-in application C51 of the image forming apparatus 12. In other words, the communication between the BG application 32 and the built-in application C51 is communication between built-in applications that span different devices (image forming apparatus (MFP_A) 11 and image forming apparatus (MFP_B) 12).

[0057] The built-in application C51 installed in the image forming apparatus 12 uses the communication client API 511 to perform client-side processing for communication. The BG application 32 of the built-in application A30 installed in the image forming apparatus 11 uses the communication server API 321 to perform server-side processing in response to requests from clients. In the third type of communication (Type 3), since it involves communication between built-in applications of different devices, the external communication server 22 is used. In the third type of communication, the BG application 32 is accessed by the communication client API 511 of the built-in application C51 located in a different device. For this reason, the external communication server 22 exposes its network port to the outside.

[0058] Next, a specific example of an application for inter-application communication (Type 1 or Type 2) that operates within the same image forming apparatus 11 according to the embodiment will be described. Figure 4 illustrates an example of applications communicating with each other within the same image forming apparatus (MFP). The application shown in Figure 4 provides image processing functions, including the process of reading an image with the scanner 108 and the process of performing OCR processing on the image data read by the scanner 108. The image reading process by the scanner 108 is performed by the Home application (HomeApp), a built-in application (client-side application) that is launched in response to user instructions. The OCR processing on the image read by the scanner 108 is performed by the background (BG) application (BG App), a built-in application (server-side application) that is always present. The Home application (client-side application) and the BG application (server-side application) communicate within the same image forming apparatus.

[0059] For example, the server-side application, the BG application, starts the internal communication server 21 when the image forming apparatus is started (or in response to an instruction to enable the function). The client-side application, the Home application, performs image reading processing using the scanner 108 in response to user instructions. The Home application sends a request to the server-side application, the BG application, via the internal communication server 21 to perform OCR processing on the scanned image read by the scanner 108. The BG application receives the OCR processing request from the Home application via the internal communication server 21 in the background and performs OCR processing on the scanned image.

[0060] This allows the server-side application, the BG application, to perform OCR processing in the background. For example, if the scanned image is in a specific image data format, the BG application can convert the OCR result for that image data into text data in another specific format.

[0061] Next, the flow of communication (inter-application communication) between multiple applications using the image forming apparatus 11 according to this embodiment will be described. First, we will explain the flow of inter-application communication (Type 1 or Type 2 inter-application communication) that occurs between applications within the same image forming apparatus 11 according to the embodiment. Figures 5 and 6 are sequence diagrams illustrating an example of inter-application communication between built-in applications within the same image forming apparatus (MFP) 11. In the configuration example shown in Figure 1, inter-application communication within the same image forming apparatus 11 includes communication between the built-in application A's Home application 31 and the BG application 32 (Type 1), or communication between the BG application 32 and the built-in application B41 (Type 2). Here, we will explain assuming that the BG application 32 of the built-in application A30 of the image forming apparatus 11 performs inter-application communication with the built-in application B41 of the image forming apparatus 11.

[0062] When the processor 101 of the image forming apparatus 11 starts the BG application 32 of the built-in application A30 to initiate a communication service, it starts the BG application 32 as a server-side application. For example, the processor 101 starts the communication service of the BG application 32 of the built-in application A30 when the main power of the image forming apparatus 11 is turned on.

[0063] When the BG application 32, executed by the processor 101, starts up, it calls the "Server Service Start API" of the communication server API 321 as a server service start request to start the communication service (ACT 11). The BG application 32's communication server API 321 specifies the communication type as an input parameter in the server service start request. In this case, it is inter-application communication within the same image forming apparatus 11. Therefore, the BG application 32's communication server API 321 sets a value indicating "same device" as the communication type in the input parameter of the server service start request. The BG application 32's communication server API 321 notifies the management framework 20 of the server service start request with the communication type set to "same device" (ACT 12).

[0064] The management framework 20, executed by processor 101, provides a server-side communication framework. The server-side communication framework starts an internal communication server process (internal communication server) 21 in response to a server service start request (API call) (ACT13). The server-side communication framework configures the internal communication server 21 to be private and not accept external access. That is, the internal communication server 21 is configured so that its network port rejects access from external IP addresses and only allows access from within (localhost).

[0065] When the server-side communication framework starts the internal communication server 21, it notifies the BG application 32 via the communication server API 321 that the server service has started (ACT14-15).

[0066] As a result of the processing in ACT11-15, the built-in applications of the image forming apparatus 11 can use the internal communication server 21 for inter-application communication with other built-in applications within the same image forming apparatus 11. The internal communication server 21 is not exposed to the outside and does not accept access from external devices. Therefore, inter-application communication within the image forming apparatus 11 is possible without data leakage to the outside.

[0067] Next, the generation of the communication client API 411 by the built-in application B41, which is the client-side application in the image forming apparatus 11, will be described (ACT16). The processor 101 of the image forming apparatus 11 receives a command to start the built-in application B41, which will be a client-side application, after the communication server by the BG application 32 has been started. For example, in the image forming apparatus 11, the user receives a command to start the built-in application B41, which will be a client-side application, by using the operation keys 105 or the touch panel 106. The processor 101 of the image forming apparatus 11 starts the built-in application B41 as a client-side application that works in conjunction with the BG application 32, in response to the command to start the built-in application B41.

[0068] The built-in application B41, executed by processor 101, calls the "Generation API" of the communication client API 411 as a client generation request when it starts up (ACT16). In the generation request to the communication client API 411, the built-in application B41 specifies the server-side application and the server's address.

[0069] For example, the communication client API 411 specifies the AppID (serverAppID) of the BG application 32 (built-in application A) as the server-side application. The communication client API 411 also specifies the IP address (serverIPAddress) of the image forming apparatus 11 where the server-side application resides as the server address. In this case, since the BG application 32 resides within the same image forming apparatus 11, the server address (serverIPAddress) is specified as "localhost". When the communication client API 411 is generated, the built-in application B41 becomes capable of communicating as a client application to the server-side application BG application 32.

[0070] Next, we will explain the process when the built-in application B41, acting as the client-side application, and the built-in application A30, specifically the BG application 32, acting as the server-side application, begin communication (ACT17-26). When the built-in application B41 executed by the processor 101 communicates with the BG application 32, it calls the "Open Communication API" of the communication client API 411 (ACT 17). The communication client API 411 requests the client-side communication framework to communicate with the BG application 32 via the internal communication server 21 (ACT 18). The client-side communication framework is provided by the management framework 20 executed by the processor 101 of the image forming apparatus 12.

[0071] The communication client API 411 specifies the same location within the image forming apparatus 11 (localhost) as the server address (serverIPAddress). Therefore, the client-side communication framework determines that it only needs to notify the internal communication server 21, also located within the image forming apparatus 11, of a request to open communication. Based on this determination, the client-side communication framework notifies the internal communication server 21 in the image forming apparatus 11 of a request to open communication (ACT 19).

[0072] When the internal communication server 21 receives a request to open communication, it opens communication between the client-side application, the embedded application B41, and the server-side application, the embedded application A's background application 32. After opening the communication, the internal communication server 21 notifies the server-side communication framework that it has opened communication between the embedded application B41 and the background application 32 (ACT20). The server-side communication framework then notifies the server-side application, the background application 32, that it has opened communication with the embedded application B41 (ACT21).

[0073] When BG app 32 receives a notification that communication with built-in app B41 has been opened, it recognizes that it can now communicate with built-in app B41. BG app 324 sends a response to the notification that communication has been opened to the server-side communication framework (ACT22). The server-side communication framework sends the response from BG app 32 to the internal communication server 21 (ACT23).

[0074] When the internal communication server 21 receives a response from the BG application 32, it notifies the built-in application B41, which is the client-side application, via the client-side communication framework and the communication client API 411, that communication with the BG application 32 has been opened (ACT24-26). As a result, the built-in application B41 recognizes that it is now able to communicate with the BG application 32.

[0075] Next, we will explain the data communication flow between the built-in application B41 as the client-side application and the built-in application A's BG application 32 as the server-side application (ACT27-36). When the built-in application B41 executed by the processor 101 sends data to the BG application 32, it calls the "communication request API" of the communication client API 411 (ACT27). The communication client API 411 notifies the client-side communication framework of a communication request containing communication data from the built-in application B41 to the BG application 32 (ACT28). The client-side communication framework sends the communication request containing communication data from the communication client API 411 to the internal communication server 21 (ACT29).

[0076] When the internal communication server 21 receives a communication request from the built-in application B41 to the background application 32, it notifies the server-side communication framework of the notification request (ACT30). The server-side communication framework sends a communication request containing communication data to the background application 32 of the built-in application A30, which is the server-side application (ACT31).

[0077] When the built-in application A's BG application 32 receives a communication request from the built-in application B41, it sends a response to the internal communication server 21 via the server-side communication framework indicating that it has received a communication request containing communication data (ACT32-33).

[0078] When the internal communication server 21 receives a response from the BG application 32, it sends a response to the client-side communication framework indicating that the BG application 32 has received the communication data (ACT34). The client-side communication framework notifies the built-in application B41, which is the client-side application, of the response to the communication request via the communication client API 411 (ACT35-36). Through these processes, the built-in application B41 and the BG application 32 of the built-in application A30 perform data communication.

[0079] Next, we will explain the processing flow when the built-in application B41, acting as the client-side application, and the BG application 32, acting as the server-side application, close their communication (ACT37-46). When the built-in application B41 terminates communication with the background application 32, it calls the "close communication API" of the communication client API 411 (ACT37). The communication client API 411 sends a request to the internal communication server 21 to close communication with the background application 32 via the client-side communication framework (ACT38-39).

[0080] When the internal communication server 21 receives a request to close communication, it terminates communication between the built-in application B41 and the built-in application A30's BG application 32. After terminating communication between the BG application 32 and the built-in application B41, the internal communication server 21 notifies the server-side application, the BG application 32, that communication has been closed via the server-side communication framework (ACT40-41).

[0081] When BG app 32 receives notification that communication with built-in app B41 has ended, it recognizes that communication with built-in app B41 has terminated. When BG app 32 of built-in app A30 recognizes that communication with built-in app B41 has ended, it sends a response to the notification that communication has ended to the internal communication server 21 via the server-side communication framework (ACT42-43).

[0082] When the internal communication server 21 receives a response from the BG application 32, it sends a response to the client-side communication framework indicating that communication with the BG application 32 has been closed (ACT44). The client-side communication framework sends the response from the BG application 32 to the built-in application B41, which is the client-side application, via the communication client API (ACT45-46). Through the above process, communication between the built-in application B41 and the BG application 32 is terminated.

[0083] Next, we will explain the processing flow when the BG application 32, acting as a server-side application, stops providing communication services to other applications (built-in application B) within the same image forming apparatus (ACT47-51). When BG application 32 wants to stop the communication service provided by the internal communication server 21, it calls the "communication service stop API" of the communication server API 321 (ACT47). The communication server API 321 notifies the server-side communication framework of the request to terminate the internal communication server 21 (ACT48). The server-side communication framework terminates the server service process provided by the internal communication server 21 in response to the termination request from the communication server API (ACT49).

[0084] Furthermore, the server-side communication framework may determine whether or not the process can be terminated depending on the state of the internal communication server 21. For example, the server-side communication framework may determine whether or not the process can be terminated based on whether or not data communication is currently being performed. If the server-side communication framework determines that the process of the internal communication server 21 cannot be terminated, it may notify the BG application 32 of a response indicating that termination is not possible.

[0085] When the server-side communication framework stops the internal communication server 21, it notifies the BG application 32 of the termination of the server service process via the communication server API 321 (ACT50-51). As a result, the BG application 32 recognizes that the internal communication server 21 has stopped.

[0086] Next, a specific example of an application for inter-application communication (Type 3) that allows an image forming apparatus 11 according to the embodiment to link built-in applications of different image forming apparatuses 11 will be described. Figure 7 illustrates an example of a server-side application, which is an internal application of an image forming apparatus (MFP), that has the function of transmitting data to an external device. The application shown in Figure 7 provides image processing functions, including the process of reading images with the scanner 108 and the process of saving the image data read by the scanner 108 to an external device. The image reading process by the scanner 108 is performed by the ScanApp, a client-side application that is launched in response to user instructions. The process of saving the scanned images read by the scanner 108 to an external device (cloud server) is performed by the CloudStore, a resident server-side application.

[0087] For example, the server-side application starts an external communication server for uploading data to the cloud server 19. The client-side application performs image reading using the scanner 108 according to the user's instructions and supplies the scanned image (scand file) read by the scanner 108 to the server-side application. The server-side application uploads the scanned image to a cloud storage such as the cloud server 19, which has been specified in advance, via the external communication server. This allows the scanned image read by the scanning application to be stored in the cloud storage.

[0088] Next, we will describe the flow of inter-application communication (Type 3 inter-application communication) in which an application in the image forming apparatus 11 according to this embodiment communicates with an application in another image forming apparatus 12. Figures 8 and 9 are sequence diagrams illustrating an example of inter-application communication between an application in image forming apparatus (MFP) 11 and an application in another image forming apparatus 12. Here, we will explain assuming that the BG application 32 of the built-in application A30 of the image forming apparatus 11 shown in Figure 1 performs inter-application communication with the built-in application C51 of another image forming apparatus 12.

[0089] When the BG application 32 of the image forming apparatus 11 provides inter-application communication services with the built-in application C of another image forming apparatus 12, it calls the "Server Service Start API" of the communication server API and requests the server service to start (ACT111). Here, the BG application 32 sets a value indicating "different device" as the communication type indicated by the input parameter in the server service start request.

[0090] The communication server API 321 notifies the server-side communication framework (ACT 112) of a server service start request from the BG application 32, in which "different device" is specified as the communication type. The server-side communication framework is provided by the management framework 20, which is executed by the processor 101 of the image forming apparatus 11.

[0091] The server-side communication framework is triggered by a server service start request (API call) and starts the internal communication server process (internal communication server) 21 and the external communication server process (external communication server) 22 (ACT 113, 114). The server-side communication framework determines that the communication type is "different devices" based on the input parameters of the server service start request. If the communication type is "different devices", the server-side communication framework decides to start the internal communication server 21 and the external communication server 22.

[0092] The server-side communication framework, when starting the server process for the internal communication server 21, configures the network port of the internal communication server 21 to reject access from external IP addresses and only allow access from within the network (localhost). Similarly, when starting the server process for the external communication server, the server-side communication framework configures the network port of the external communication server to allow access from external IP addresses. Furthermore, the external communication server is configured to function as a reverse proxy server (relaying traffic from the external internet to the internal communication server).

[0093] When the server-side communication framework starts the internal communication server 21 and the external communication server 22, it notifies the BG application 32 via the communication server API 321 that the server service has started (ACT 115, 116). As a result of the processing in ACT111~116, the internal communication server 21 and the external communication server 22 become available for inter-application communication between the BG application 32 of the image forming apparatus 11 and applications within other image forming apparatuses 12.

[0094] Next, we will describe the generation of the communication client API 511 by the built-in application C51 in another image forming apparatus 12, which is a client-side application (ACT117). After the communication servers of the image forming apparatus 11 (internal communication server 21 and external communication server 22) are started, the processor 101 of the image forming apparatus 12 generates a communication client API 511 from the built-in application C51, which is a client-side application. For example, in the image forming apparatus 12, the user inputs a command to start the built-in application C51 using the operation keys 105 or the touch panel 106. In response to the startup command, the processor 101 of the image forming apparatus 12 starts the built-in application C51 as a client-side application that cooperates with the BG application 32 of the image forming apparatus 11.

[0095] The built-in application C51, executed by the processor 101 of the other image forming apparatus 12, calls the "Generation API" of the communication client API 511 (ACT117) when it starts up. The built-in application C51 specifies the server application and the server address as a generation request for the communication client 511 that communicates with the BG application 32 of the image forming apparatus 11.

[0096] Here, the communication client API 511 specifies the AppID (serverAppID) of the BG application 32 of the image forming apparatus 11 as the server-side application. The communication client API 511 also specifies the IP address (serverIPAddress) of the image forming apparatus 11 where the server-side application, BG application 32, resides, as the server address. In this case, the built-in application A's BG application 32 resides within another image forming apparatus 11. Therefore, the server address (serverIPAddress) specifies the actual IP address of the image forming apparatus 11 that will act as the server.

[0097] Through the above process, the built-in application C51 of the image forming apparatus 12 generates a communication client API 511. Once the communication client API 511 is generated, the built-in application C51 becomes capable of communicating as a client application with the server-side application BG application 32. The built-in application C51 receives the start and end of communication with the server-side application BG application 32 via the communication client API 511.

[0098] Next, we will explain the process when the built-in application B41, acting as the client-side application, and the built-in application A30, specifically the BG application 32, acting as the server-side application, begin communicating (ACT118-129). When the built-in application C51 communicates with the BG application 32, it calls the "Open Communication API" of the communication client API 511 (ACT118). The communication client API 511 requests the client-side communication framework to communicate with the BG application 32 via the internal communication server 21 (ACT119). The client-side communication framework is provided by the management framework 20 executed by the processor 101 of the image forming apparatus 12.

[0099] In the communication client API 511, the actual IP address of another image forming apparatus 11 is specified as the server address. Therefore, the client-side communication framework determines that it only needs to notify the external communication server 22 in the specified image forming apparatus 11 of a request to open communication. Based on this determination, the client-side communication framework notifies the external communication server 22 in the image forming apparatus 11 of a request to open communication (ACT 120).

[0100] The external communication server 22 of the image forming apparatus 11 relays requests to open communication from the built-in application 51 of another image forming apparatus 12 to the internal communication server 21 located in the same image forming apparatus 11 (ACT121).

[0101] The external communication server 22 and internal communication server 21 of the image forming apparatus 11 open communication between the built-in application C51 and the BG application 32 of the other image forming apparatus 12 in response to a request to open communication. When the internal communication server 21 opens communication with the built-in application C51, it notifies the server-side communication framework that it has opened communication with the built-in application C51 (ACT122). When the server-side communication framework receives notification that communication with the built-in application C51 has been opened, it notifies the BG application 32, which is a server-side application, that it has opened communication (ACT123).

[0102] When the BG application 32 of the image forming apparatus 11 receives notification that communication has been opened with the built-in application C51 of another image forming apparatus 12, it recognizes that it has become possible to communicate with the built-in application C51. The BG application 32 sends a response to the notification that communication has been opened to the server-side communication framework (ACT124). The server-side communication framework sends the response from the BG application 32 to the internal communication server 21 (ACT125). The internal communication server 21 of the image forming apparatus 11 notifies the external communication server 22, also located in the same image forming apparatus 11, of the response from the BG application 32 (ACT126).

[0103] The external communication server 22 of the image forming apparatus 11 sends a response to the communication framework of the image forming apparatus 12, which is the client side, indicating that communication with the BG application 32 has been opened (ACT 127). The communication framework of the image forming apparatus 12 sends the response received from the external communication server 22 of the image forming apparatus 11 to the built-in application C51 via the communication client API 511 (ACT 128-129). As a result, the built-in application C51 of the image forming apparatus 12 recognizes that it is now possible to communicate with the BG application 32 of the image forming apparatus 11.

[0104] Next, we will explain the data communication flow between the built-in application C51, which acts as the client-side application, and the BG application 32, which acts as the server-side application (ACT130-141). When the built-in application C51 of the image forming apparatus 12 sends data to the BG application 32 of the image forming apparatus 11, it calls the "communication request API" of the communication client API 511 (ACT130).

[0105] Here, the built-in application C51 notifies the communication client API 511 of a communication request containing communication data to be sent to the BG application 32 of the image forming apparatus 11. The communication client API 511 notifies the client-side communication framework of the communication request containing communication data to the BG application 32 (ACT131). The client-side communication framework sends the communication request containing communication data to the external communication server 22 of the image forming apparatus 11 where the BG application 32 is located (ACT132).

[0106] When the external communication server 22 of the image forming apparatus 11 receives a communication request from the built-in application C51 of the image forming apparatus 12, it relays the communication request to the internal communication server 21 (ACT133). When the internal communication server 21 receives a communication request from the external communication server 22 to the BG application 32, it notifies the server-side communication framework of the communication request, including the communication data, to the BG application 32 (ACT134). The server-side communication framework then notifies the BG application 32 of the communication request from the built-in application C51, which was received by the external communication server 22 and relayed to the internal communication server 21 (ACT135).

[0107] The BG application 32 of the image forming apparatus 11 receives a communication request from the server-side communication framework that includes communication data from the built-in application C51 of another image forming apparatus 12. When the BG application 32 receives a communication request that includes communication data from the built-in application C51, it notifies the server-side communication framework of a response indicating that the communication request has been received (ACT136). The server-side communication framework notifies the internal communication server 21 of the response from the BG application 32 (ACT137). The internal communication server 21 notifies the external communication server 22 of the response from the BG application 32 that it received via the server-side communication framework (ACT138).

[0108] The external communication server 22 of the image forming apparatus 11 sends a response from the BG application 32 to the client-side communication framework of the image forming apparatus 12 (ACT 139). When the client-side communication framework of the image forming apparatus 12 receives a response from the BG application 32 of the image forming apparatus 11, it sends the response from the BG application 32 to the built-in application C51, which is a client-side application, via the communication client API 511 (ACT 140-141). Through these processes, the built-in application C51 of the image forming apparatus 12 and the BG application 32 of the image forming apparatus 11 perform data communication.

[0109] Next, we will explain the processing flow when the built-in application C51 of the image forming apparatus 12 and the BG application 32 of the image forming apparatus 11 close their communication (ACT142-153). When the built-in application C51 of the image forming apparatus 12 terminates communication with the BG application 32, it calls the "Communication Close API" of the communication client API 511 (ACT142). The communication client API 511 notifies the client-side communication framework of the request to close communication with the BG application 32 (ACT143). The client-side communication framework sends the request to close communication with the BG application 32 to the external communication server 22 of the image forming apparatus 11 (ACT144).

[0110] The external communication server 22 of the image forming apparatus 11 receives a request from another image forming apparatus 12 to close communication. The external communication server 22 relays the request to close communication received from the other image forming apparatus 12 to the internal communication server 21 (ACT145). The external communication server 22 and the internal communication server 21 of the image forming apparatus 11 close communication between the built-in application C51 and the BG application 32 of the other image forming apparatus 12 in response to the request to close communication.

[0111] When the internal communication server 21 closes communication with the built-in application C51, it notifies the server-side communication framework that communication with the built-in application C51 has been closed (ACT146). Upon receiving the notification that communication with the built-in application C51 has been closed, the server-side communication framework notifies the BG application 32, which is the server-side application, that communication with the built-in application C51 has been closed (ACT147).

[0112] When BG application 32 receives notification that communication with built-in application C51 has ended, it recognizes that communication with built-in application C51 has terminated. Upon recognizing the termination of communication with built-in application C51, BG application 32 notifies the server-side communication framework of a response to the notification that communication has ended (ACT148). The server-side communication framework sends the response from BG application 32 to the internal communication server 21 (ACT149).

[0113] The internal communication server 21 notifies the external communication server 22 of the response from the BG application 32 (ACT150). The external communication server 22 sends a response to the client-side communication framework in the image forming apparatus 12 indicating that it has closed communication with the BG application 32 (ACT151).

[0114] When the client-side communication framework receives a response from the external communication server 22, it sends a response to the built-in application C51, which is a client-side application, via the communication client API 511, indicating that communication with the BG application 32 has been closed (ACT152-153). This terminates communication between the BG application 32 of the image forming apparatus 11 and the built-in application C51 of the image forming apparatus 12.

[0115] Next, we will explain the processing flow when the BG application 32, acting as a server-side application, stops providing communication services to an application (built-in application B) in another image forming apparatus (ACT154-159). When BG application 32 stops communication services provided by the internal communication server 21 and the external communication server 22, it calls the "communication service stop API" of the communication server API 321 (ACT 154). The communication server API 321 notifies the server-side communication framework of the request for communication services (ACT 155).

[0116] The server-side communication framework terminates the server processes of the external communication server 22 and the internal communication server 21 in response to a communication service termination request from the communication server API 321 (ACT 156, 157). For example, in response to a communication service termination request, the server-side communication framework first stops the external communication server 22. Once the external communication server 22 is terminated, the network port that the image forming apparatus 11 had exposed to the outside is closed. After stopping the external communication server 22, the server-side communication framework stops the internal communication server 21. As a result, not only the external communication server 22 but also the internal communication server 21 is stopped.

[0117] When the server-side communication framework stops the external communication server 22 and the internal communication server 21, it notifies the communication server API 321 of the termination of the server processes (ACT 158). In response, the "communication service termination API" of the communication server API 321 returns a response indicating the termination of the server processes to the BG application (server-side application) 32, which is the API caller (ACT 159). As a result, the BG application 32, which is the server-side application, confirms that the communication service has been offered.

[0118] Furthermore, the server-side communication framework may be configured to determine whether or not to stop the server process in response to a communication service stop request. For example, the server-side communication framework may choose not to stop the server process if communication between the client and server is already established. If the server process is not stopped in response to a communication service stop request, the "communication service stop API" of the communication server API 321 should return an error response to the BG application (server-side application) 32 that called the API.

[0119] Specifically, when the "Communication Service Stop API" of the communication server API 321 is called, if the processing of ACT130-141 or ACT142-153 is in progress, the server process may be prevented from being stopped. This allows the server-side communication framework to stop the server process with all communication with the client-side applications disconnected when a server-side application (BG application 32) communicates with two or more built-in applications (client-side applications) located in different image forming machines.

[0120] Furthermore, the server-side communication framework may determine whether the external communication server 22 and the internal communication server 21 can be stopped. For example, the server-side communication framework may determine whether the internal communication server 21 can be stopped if the external communication server 22 can be stopped. This allows the server-side communication framework to maintain only the internal communication server 21 after stopping the external communication server 22.

[0121] As described above, the image forming apparatus according to the embodiment enables fine-grained control over the disclosure of inter-application communication services depending on the location of the built-in applications that perform inter-application communication. Furthermore, the image forming apparatus enables network port disclosure control by configuring the internal communication server and the external communication server according to the communication type of inter-application communication. In addition, the image forming apparatus can keep the state in which the network port is open to the outside to the minimum extent during service provision, depending on the usage pattern. As a result, the image forming apparatus can reduce the possibility of external attacks on internal communications and lower security risks.

[0122] The program executed by the processor of the image forming apparatus, which is an information processing device according to this embodiment, may be transferred while stored in an electronic device, or it may be transferred while not stored in an electronic device. In the latter case, the program may be transferred via a network, or it may be transferred while stored in a storage medium. The storage medium is a non-temporary tangible medium. The storage medium is a computer-readable medium. The storage medium can be any medium that is capable of storing a program and is readable by a computer, such as a CD-ROM or memory card, and its form is not limited.

[0123] While several embodiments of the present invention have been described, these embodiments are presented as examples only and are not intended to limit the scope of the invention. These novel embodiments can be carried out in a variety of other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their variations are included in the scope and spirit of the invention, as well as in the claims of the invention and its equivalents.

[0124] According to the embodiments described in detail above, the following information processing device, image processing device, and non-temporary storage medium storing a program can be implemented. [1] A communication interface for communicating with external devices, Memory for storing application programs and management programs, The system includes a processor that executes the application program using the management program, The aforementioned processor, When an application program in the memory communicates with another application program within the same device, the management program starts an internal communication server process. When an application program in the memory communicates with another application program in an external device connected via the communication interface, the management program starts an external communication server process. An information processing device having [2] The aforementioned processor, If the communication type specified in the communication service start request generated by the application program is communication within the same device, the internal communication server process is started; if the communication type specified in the communication service start request includes communication with an external device, the internal communication server and the external communication server process are started. [1] The information processing device described above. [3] The aforementioned processor, When the aforementioned application program communicates with another application program located on an external device, data communication is performed via the external communication server process and the internal communication server process. [2] The information processing device described above. [4] The aforementioned processor, When the application program communicates with another application program located on an external device, the external communication server is stopped in response to a request to stop the communication service generated by the application program. [2] The information processing device described above. [5] The aforementioned processor, When the application program communicates with other application programs within the same device, the internal communication server process is stopped in response to a request to stop the communication service generated by the application program. When the application program communicates with the other application program located on an external device, the external communication server and the internal communication server process are stopped in response to a request to stop the communication service generated by the application program. [4] The information processing device described above. [6] The aforementioned processor, When the application program communicates with another application program located on an external device, the system determines whether communication with the external device can be stopped in response to a request to stop the communication service generated by the application program, and if communication with the external device can be stopped, the system stops the external communication server process. [4] The information processing device described above. [7] The aforementioned processor, When the application program requests the termination of the communication service, it is determined whether the internal communication server process can be terminated, and if it is possible to terminate the internal communication server process, the internal communication server process is terminated. [5] The information processing device described above. [8] The aforementioned processor, When the application program requests the termination of the communication service, the system will determine whether it is possible to terminate the internal communication server process after terminating the external communication server process, and if it is possible to terminate the internal communication server process, it will terminate the internal communication server process. [7] The information processing device described above. [9] Image processing unit for processing images, A communication interface for communicating with external devices, Memory for storing application programs and management programs, The system includes a processor that executes the application program using the management program, The aforementioned processor, When an application program in the memory communicates with another application program within the same device, the management program starts an internal communication server process. When an application program in the memory communicates with another application program in an external device connected via the communication interface, the management program starts an external communication server process. An image processing device having

[10] The aforementioned processor, If the communication type specified in the communication service start request generated by the application program is communication within the same device, the internal communication server process is started; if the communication type specified in the communication service start request includes communication with an external device, the internal communication server and the external communication server process are started. [9] The image processing apparatus described above.

[11] The aforementioned processor, When the aforementioned application program communicates with another application program located on an external device, data communication is performed via the external communication server process and the internal communication server process.

[10] The image processing apparatus described above.

[12] The aforementioned processor, When the application program communicates with another application program located on an external device, the external communication server is stopped in response to a request to stop the communication service generated by the application program.

[10] The image processing apparatus described above.

[13] The aforementioned processor, When the application program communicates with other application programs within the same device, the internal communication server process is stopped in response to a request to stop the communication service generated by the application program. When the application program communicates with the other application program located on an external device, the external communication server and the internal communication server process are stopped in response to a request to stop the communication service generated by the application program.

[12] The image processing apparatus described above.

[14] The aforementioned processor, When the application program communicates with another application program located on an external device, the system determines whether communication with the external device can be stopped in response to a request to stop the communication service generated by the application program, and if communication with the external device can be stopped, the system stops the external communication server process.

[12] The image processing apparatus described above.

[15] The aforementioned processor, When the application program requests the termination of the communication service, it is determined whether the internal communication server process can be terminated, and if it is possible to terminate the internal communication server process, the internal communication server process is terminated.

[13] The image processing apparatus described above.

[16] The aforementioned processor, When the application program requests the termination of the communication service, the system will determine whether it is possible to terminate the internal communication server process after terminating the external communication server process, and if it is possible to terminate the internal communication server process, it will terminate the internal communication server process.

[15] The image processing apparatus described above.

[17] The aforementioned image processing unit is an image forming unit, [9] The image processing apparatus described above.

[18] The aforementioned image processing unit is a scanner. [9] The image processing apparatus described above.

[19] In the processor of an information processing device having a communication interface, When an application program communicates with other application programs on the same device, it starts an internal communication server process. When an application program communicates with another application program located on an external device connected via the aforementioned communication interface, an external communication server process is started. A non-temporary storage medium that stores a program to execute a task.

[20] If the communication type specified in the communication service start request generated by the application program is communication within the same device, the internal communication server process is started. If the communication type specified in the request to start the aforementioned communication service includes communication with an external device, the internal communication server and the external communication server process are started. A non-temporary storage medium storing the program described in

[18] . [Explanation of symbols]

[0125] 1…Image forming system (information processing system) 11, 12…Image forming apparatus (information processing apparatus, image processing apparatus) 15…Personal computer 13…LAN 19…Cloud Server 18…Network 20… Management Framework 21… Server for internal communications 22…Server for external communications 30…Built-in app A 31…Home app 311...Communication client API 32... BG app 321...Communication Server API 41...Built-in app B 411...Communication client API 51...Built-in app C 511…Communication Client API 101… Processor 102...ROM 103...RAM 104…Local storage device (memory) 105... Operation Keys 106... Touch panel 107...Display section 108...Scanner (Image Processing Unit) 109…Image forming unit (image processing unit) 110...FAX (Image Processing Unit) 111...Communication Interface 112…Device Interface 113...System bus.

Claims

1. A communication interface for communicating with external devices, Memory for storing application programs and management programs, The system includes a processor that executes the application program using the management program, The aforementioned processor, When an application program in the memory communicates with another application program within the same device, the management program starts an internal communication server process. When an application program in the memory communicates with another application program in an external device connected via the communication interface, the management program starts an external communication server process. An information processing device having

2. The aforementioned processor, If the communication type specified in the communication service start request generated by the application program is communication within the same device, the internal communication server process is started; if the communication type specified in the communication service start request includes communication with an external device, both the internal communication server process and the external communication server process are started. The information processing apparatus according to claim 1.

3. The aforementioned processor, When the aforementioned application program communicates with another application program located on an external device, data communication is performed via the external communication server process and the internal communication server process. The information processing apparatus according to claim 2.

4. The aforementioned processor, When the application program communicates with other application programs within the same device, the internal communication server process is stopped in response to a request to stop the communication service generated by the application program. When the application program communicates with another application program located on an external device, the external communication server process and the internal communication server process are stopped in response to a request to stop the communication service generated by the application program. The information processing apparatus according to claim 2.

5. The aforementioned processor, When the application program communicates with another application program located on an external device, the system determines whether communication with the external device can be stopped in response to a request to stop the communication service generated by the application program, and if communication with the external device can be stopped, the system stops the external communication server process. The information processing apparatus according to claim 4.

6. Image processing unit for processing images, A communication interface for communicating with external devices, Memory for storing application programs and management programs, The system includes a processor that executes the application program using the management program, The aforementioned processor, When an application program in the memory communicates with another application program within the same device, the management program starts an internal communication server process. When an application program in the memory communicates with another application program in an external device connected via the communication interface, the management program starts an external communication server process. An image processing device having

Citation Information

Patent Citations

  • Information processor, policy management unit, management method of security policy and computer program

    JP2016130997A