KR101238364B1 - System and method to customize for a image forming apparatus - Google Patents
System and method to customize for a image forming apparatus Download PDFInfo
- Publication number
- KR101238364B1 KR101238364B1 KR1020080021561A KR20080021561A KR101238364B1 KR 101238364 B1 KR101238364 B1 KR 101238364B1 KR 1020080021561 A KR1020080021561 A KR 1020080021561A KR 20080021561 A KR20080021561 A KR 20080021561A KR 101238364 B1 KR101238364 B1 KR 101238364B1
- Authority
- KR
- South Korea
- Prior art keywords
- application
- user interface
- host server
- data
- image forming
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/0035—User-machine interface; Control console
- H04N1/00501—Tailoring a user interface [UI] to specific requirements
- H04N1/00503—Customising to a particular machine or model, machine function or application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/567—Integrating service provisioning from a plurality of service providers
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Data Mining & Analysis (AREA)
- Multimedia (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Facsimiles In General (AREA)
- Stored Programmes (AREA)
Abstract
본 발명은 화상 형성 장치의 커스터마이즈 방법에 관한 것으로, 그 방법은 등록하고자 하는 소정 애플리케이션에 대한 정보를 상기 소정 애플리케이션을 구비하는 호스트 서버에 알리고, 알려진 소정 애플리케이션을 프록시 장치(proxy device)에 등록하고, 소정 애플리케이션이 프록시 장치에 등록되었음을 화상 형성 장치에 알림으로써 MFP 장치의 부담을 최소화하면서 MFP 장치의 커스터마이즈를 제공할 수 있다.The present invention relates to a method for customizing an image forming apparatus, the method informing information about a predetermined application to be registered to a host server having the predetermined application, and registering a known predetermined application in a proxy device. By notifying the image forming apparatus that the predetermined application has been registered with the proxy apparatus, the customization of the MFP apparatus can be provided while minimizing the burden on the MFP apparatus.
Description
본 발명은 화상 형성 장치에 관한 것으로서, 더욱 상세하게는 화상 형성 장치의 커스터마이즈 방법에 관한 것이다.The present invention relates to an image forming apparatus, and more particularly, to a method for customizing an image forming apparatus.
업무를 처리하는 과정에서 MFP가 일부분이 되면서, MFP 장치의 커스터마이제이션은 아주 중요한 문제가 되고 있다. 그리고, 커스텀 애플리케이션들의 영역은 각 페이지에 바코드를 삽입하는 프린팅 애플리케이션부터 형태를 처리하여 데이터를 추출하는 스캐닝 애플리케이션에 이르고 있다.As MFPs become part of the business process, customization of MFP devices becomes a very important issue. The areas of custom applications range from printing applications that insert barcodes to each page to scanning applications that process shapes and extract data.
MFP 판매자는 임베디드 솔루션들과 호스트 기반의 솔루션들 등의 다양한 방식으로 MFP 커스터마이제이션을 제공할 수 있는데, 일반적으로 임베디드 솔루션들은 MFP 장치 자체에서 커스터마이제이션이 실행되는 것을 말하고, 호스트 기반의 솔루션들은 MFP 장치와 통신하는 호스트 컴퓨터에서 커스터마이제이션을 제공하는 것을 말한다.MFP vendors can provide MFP customization in a variety of ways, including embedded solutions and host-based solutions. In general, embedded solutions refer to customizations performed on the MFP device itself, and host-based solutions communicate with the MFP device. To provide customization on the host computer.
임베디드 플랫폼(embedded platform)에서, 커스터마이제이션은 UI 커스터마이제이션을 만드는 APIs(Application Programming Interfaces)와 SDKs(Software Development Kits)을 제공하는 MFP 장치의 연산 환경을 매개로 하여 일어난다. APIs는 MFP 장치의 사용자 인터페이스에 대한 접근을 제공한다. 이러한 APIs는 스캔, 프린트 및 다른 고유의 장치 기능을 이용할 때도 사용된다. In an embedded platform, customization takes place through the computing environment of MFP devices that provide APIs (Application Programming Interfaces) and SDKs (Software Development Kits) to create UI customizations. APIs provide access to the user interface of MFP devices. These APIs are also used when scanning, printing, and other unique device features.
반면에, 호스트 기반의 플랫폼(host-based platform)에서는, 호스트 컴퓨터가 대부분의 커스터마이제이션을 실행한다. 이러한 호스트 기반의 솔루션들은 대규모의 APIs와 인프라 지원을 제공한다. 이러한 호스트 기반의 솔루션들을 위해서는, 커스텀 유저 인터페이스(UI)들이나 다른 내재된 장치 기능성들을 접근하는 인프라가 필요하다.On the other hand, on a host-based platform, the host computer performs most of the customization. These host-based solutions provide massive APIs and infrastructure support. These host-based solutions require an infrastructure that accesses custom user interfaces (UIs) or other inherent device functionality.
어떤 타겟 시장에서는 사용자는 대규모 커스터마이제이션 가능성들을 요구하지 않으며, MFP 장치들도 이러한 지원을 제공하지 못할 수도 있다. 이러한 경우에는, 과도한 APIs 나 인프라적 지원은 지나치며 적합하지도 않는다.In some target markets, users do not require large customization possibilities, and MFP devices may not be able to provide this support. In such cases, excessive APIs or infrastructure support is excessive and not appropriate.
본 발명이 이루고자 하는 기술적 과제는 화상 형성 장치 자체에 부담을 최소화하면서, 화상 형성 장치의 커스터마이즈를 제공하는 방법 및 장치를 제공하는 것이다.SUMMARY OF THE INVENTION The present invention has been made in an effort to provide a method and apparatus for providing customization of an image forming apparatus while minimizing the burden on the image forming apparatus itself.
상기 기술적 과제를 이루기 위한 본 발명에 따른 화상 형성 장치의 커스터마이즈 방법은 등록하고자 하는 소정 애플리케이션에 대한 정보를 상기 소정 애플리케이션을 구비하는 호스트 서버에 알리는 단계; 상기 알려진 소정 애플리케이션을 프록시 장치(proxy device)에 등록하는 단계; 및 상기 소정 애플리케이션이 상기 프록시 장치에 등록되었음을 화상 형성 장치에 알리는 단계를 포함한다.According to an aspect of the present invention, there is provided a method of customizing an image forming apparatus, the method including: informing a host server including the predetermined application of information on a predetermined application to be registered; Registering the known predetermined application with a proxy device; And informing the image forming apparatus that the predetermined application has been registered with the proxy apparatus.
상기 기술적 과제를 해결하기 위하여, 본 발명은 상기된 화상 형성 장치의 커스터마이즈 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다.SUMMARY OF THE INVENTION In order to solve the above technical problem, the present invention provides a computer readable recording medium having recorded thereon a program for executing the above-described customization method of an image forming apparatus on a computer.
상기 기술적 과제를 이루기 위한 본 발명에 따른 화상 형성 장치의 애플리케이션 실행 방법은 호스트 서버의 애플리케이션으로부터 발송된 사용자 인터페이스를 프록시 장치를 통하여 제공받는 단계; 및 상기 제공된 사용자 인터페이스에 기초하여 데이터가 입력되면, 상기 입력된 데이터를 상기 프록시 장치를 통하여 상기 호스트 서버의 애플리케이션에 제공하는 단계를 포함하고, 상기 제공된 데이터는 상기 애플리케이션에 의해 처리되는 것을 특징으로 한다.According to an aspect of the present invention, there is provided a method of executing an application of an image forming apparatus, the method including: receiving a user interface sent from an application of a host server through a proxy device; And if data is input based on the provided user interface, providing the input data to an application of the host server through the proxy device, wherein the provided data is processed by the application. .
상기 기술적 과제를 이루기 위한 본 발명에 따른 커스텀 애플리케이션 제공 시스템은 등록하고자 하는 소정 애플리케이션을 상기 소정 애플리케이션을 구비하는 호스트 서버에 알리는 클라이언트 장치; 상기 호스트 서버에 구비된 상기 소정 애플리케이션을 등록하는 프록시 장치; 및 상기 등록된 소정 애플리케이션을 디스플레이하는 화상 형성 장치를 포함한다.According to an aspect of the present invention, there is provided a custom application providing system including: a client device for notifying a host server including the predetermined application of a predetermined application to be registered; Proxy device for registering the predetermined application provided in the host server; And an image forming apparatus for displaying the registered predetermined application.
상기 기술적 과제를 이루기 위한 본 발명에 따른 화상 형성 장치는 호스트 서버의 애플리케이션으로부터 발송된 사용자 인터페이스를 프록시 장치를 통하여 제공받는 인터페이스부; 및 상기 제공된 사용자 인터페이스를 디스플레이하도록 제어하는 제어부를 포함하며, 상기 인터페이스부는 상기 디스플레이된 사용자 인터페이스를 이용하여 데이터가 입력되면, 상기 입력된 데이터를 상기 프록시 장치를 통하여 상기 호스트 서버의 애플리케이션에 제공하는 것을 특징으로 하고, 상기 제공된 데이터는 상기 애플리케이션에 의해 처리되는 것을 특징으로 한다.According to an aspect of the present invention, there is provided an image forming apparatus including an interface unit configured to receive a user interface sent from an application of a host server through a proxy device; And a controller for controlling to display the provided user interface, wherein the interface unit provides the inputted data to an application of the host server through the proxy apparatus when data is input using the displayed user interface. Characterized in that the provided data is processed by the application.
본 발명에 따른 화상 형성 장치의 커스터마이즈 방법은 등록하고자 하는 소정 애플리케이션에 대한 정보를 상기 소정 애플리케이션을 구비하는 호스트 서버에 알리고, 알려진 소정 애플리케이션을 프록시 장치(proxy device)에 등록한 후, 소정 애플리케이션이 프록시 장치에 등록되었음을 화상 형성 장치에 알림으로써 화상 형성 장치의 커스터마이즈를 제공하는데 있어서 화상 형성 장치의 부담을 최소화하는 효과가 있다.In the method for customizing an image forming apparatus according to the present invention, information about a predetermined application to be registered is informed to a host server including the predetermined application, and a predetermined application is registered in a proxy device, and then the predetermined application is executed by the proxy device. There is an effect of minimizing the burden on the image forming apparatus in providing customization of the image forming apparatus by notifying the image forming apparatus that the image forming apparatus has been registered.
본 실시예는 화상 형성 장치 특히 MFP(Multi-functional Peripheral)의 커스터마이즈 방법, 시스템 및 이를 지원하는 소프트웨어에 관한 것이다. 그리고, 본 실시예는 화상 형성 장치 상에서 커스텀 애플리케이션을 실행하는 방법에 관한 것이다. 이하에서 기술된 실시예들은 애플리케이션 제공자가 그들의 스캔 관련된 애플리케이션들을 MFP 장치상에서 이용할 수 있도록 하는 것이다.This embodiment relates to an image forming apparatus, in particular, a method, a system, and a software supporting the customization of a multi-functional peripheral (MFP). And this embodiment relates to a method of executing a custom application on an image forming apparatus. Embodiments described below are to enable an application provider to use their scan related applications on an MFP device.
일반적으로 MFP 장치는 단지 스캐닝에 한정되지 않고, 복사, 프린팅, 팩싱(faxing) 및 그들의 결합 등을 포함하는 두 가지 이상이 기능을 수행하도록 구성된 하나의 통합 장치이다. 그리고, 이러한 MFP 장치의 기능은 인터넷이나 랜(Lan)들을 포함하는 네트워크를 통해 액세스(access)될 수 있다. 또한, 이러한 MFP 장치는 잡들(jobs)들이 처리될 때까지 기다릴 수 있게 하는 충분한 메모리를 가지고 있으며, 다양한 네트워크 컴퓨팅 환경이나 독립 컴퓨팅 환경 등에서 수행될 수 있도록 설정될 수 있다.In general, an MFP device is not just limited to scanning, but is an integrated device configured to perform two or more functions, including copying, printing, faxing and combinations thereof. In addition, the functions of the MFP device may be accessed through the Internet or a network including LANs. In addition, such an MFP device has enough memory to wait for jobs to be processed and can be configured to be performed in various network computing environments or independent computing environments.
MFP 장치가 출시된 후 제3자들이 이 MFP 장치를 위한 애플리케이션들을 개발하여 이를 활용하기 위해서는, 이 애플리케이션들을 MFP 장치에 연결할 수 있도록 하는 기반을 제공하여야 한다. 일반적으로 이러한 애플리케이션들을 커스텀 애플리케이션(custom application)이라고 부르며, 이 커스텀 애플리케이션은 이 MFP에 부가적 또는 보충적인 기능(functionality)을 제공하는 역할을 수행한다.After the MFP device is released, in order for third parties to develop and utilize applications for the MFP device, it must provide a foundation for connecting these applications to the MFP device. These applications are commonly referred to as custom applications, which serve to provide additional or supplemental functionality to this MFP.
일 실시예로서, 제3자 애플리케이션들(third-party applications)은 메타데이터 등의 사용자 관련 정보를 모으기 위해, MFP 장치의 사용자 인터페이스(User Interface, 이하 UI라고 한다)를 사용한다. 그리고, 이 사용자 관련 정보는 이 제3 자 애플리케이션을 호스팅하는 사이트로 전송되어, 호스트에서 처리된다. 따라서, MFP와 이 제3자 애플리케이션들 간에 정보 교환이 일어난다. 일 실시예로서, 일반적인 정보 교환은 다음과 같다. 먼저, 사용자가 MFP 장치에서 특정 애플리케이션을 선택한다. 그런데, 이 MFP 장치는 스스로 이 선택된 애플리케이션을 처리할 능력이 없으므로, 호스트 측의 애플리케이션에게 다음 단계의 진행을 요청한다. 그러면 요청받은 호스트 측의 애플리케이션은 사용자에게 제시될 필요가 있는 UI 스크린들을 포함하는 다음 단계들을 MFP 장치에 제공하고, MFP 장치는 이를 제공받아 사용자에게 필요한 스크린들을 디스플레이한다. 그러면, 사용자는 스크린 상에서 데이터를 입력하고, 이 MFP 장치는 이 사용자가 입력한 데이터를 애플리케이션에 전송한다. 이러한 일련의 과정은 이 애플리케이션이 원하는 모든 데이터를 받을 때까지 계속된다. 일 실시예로서, 일단 모든 데이터가 수집되면 사용자는 MFP 장치에 본래의 기능 중 하나인 문서의 스캔을 명령하면 MFP 장치는 스캔을 실행하여 애플리케이션에 전달하고, 호스트 사이트에서 작동하는 커스텀 애플리케이션은 사용자로부터 이전에 제공된 데이터 처리 명령에 따라 스캔된 데이터 등을 처리한다. 예를 들면, 커스텀 애플리케이션은 스캔된 문서를 받아서, OCR(Optical Character Recognition) 소프트웨어를 사용하여 그 문서들에 있는 데이터를 검사하고, 적절한 데이터를 데이터 베이스에 저장한다.In one embodiment, third-party applications use a user interface (hereinafter referred to as a UI) of an MFP device to gather user related information such as metadata. This user-related information is then sent to the site hosting this third party application for processing at the host. Thus, information exchange occurs between the MFP and these third party applications. In one embodiment, the general information exchange is as follows. First, the user selects a specific application on the MFP device. However, since the MFP device is not capable of processing this selected application by itself, it requests the application on the host side to proceed to the next step. The requested host side application then provides the MFP device with the following steps, including the UI screens that need to be presented to the user, which is then provided to display the screens required by the user. The user then enters data on the screen, and the MFP device sends the data entered by the user to the application. This series of processes continues until the application receives all the data it wants. In one embodiment, once all the data has been collected, the user instructs the MFP device to scan a document, which is one of the original functions, and the MFP device executes the scan and delivers it to the application, and a custom application running at the host site is sent from the user. Process the scanned data and the like according to the data processing instruction previously provided. For example, a custom application receives a scanned document and uses optical character recognition (OCR) software to examine the data in those documents and store the appropriate data in a database.
일 실시예로서, 이러한 MFP와 제3자 애플리케이션간의 데이터의 교환은 버튼 응답 시스템(button response system)으로 불릴 수 있다. 일 실시예로서, 웹 서비스 기능들을 가진 MFP 장치는 호스트 사이트들에 있는 제3자 애플리케이션들과 직 접 연결될 수도 있다. 다른 일 실시예로서, 프록시 장치(proxy device)가 이러한 데이터 교환을 도와주는 장치로서 사용될 수 있다. 이러한 프록시 장치는 제3자 애플리케이션들과 상호 작용하는 웹 서비스를 수행하며, 이 프록시 장치를 사용함으로써, MFP 장치가 이러한 웹 서비스들을 처리하는데 필요한 처리 부담을 경감시킬 수 있다. 일 실시예로서, 프록시 장치는 MFP 장치로부터의 요청을 각각의 제3자 애플리케이션들에게 보내거나 반대로 제3자 애플리케이션들로부터의 요청을 MFP 장치로 보내는 역할을 수행한다.In one embodiment, the exchange of data between such MFPs and third party applications may be referred to as a button response system. As one embodiment, an MFP device with web service functions may be directly connected to third party applications at host sites. In another embodiment, a proxy device may be used as the device to assist in such data exchange. Such proxy devices perform web services that interact with third party applications, and by using these proxy devices, the processing burden required for the MFP device to process these web services can be reduced. In one embodiment, the proxy device is responsible for sending requests from the MFP device to respective third party applications or vice versa for sending requests from third party applications to the MFP device.
일 실시예로서, MFP 장치의 커스터마이제이션(customization)은 MFP 장치의 UI 커스터마이제이션을 제공함으로써 실현될 수 있다. 일 예로서, 제3자 애플리케이션들에게 MFP 장치의 UI 스크린들을 커스터마이즈하기 위한 한 세트의 탬플릿(template)들이 제공될 수 있다. 예를 들면, 이러한 템플릿들은 애플리케이션 개발자들이 버튼들, 라벨들, 드롭다운 메뉴들(drop-down menus), 텍스트 박스들 등을 사용할 수 있도록 하고, 결국 UI 스크린들을 생성할 수 있도록 해준다. 그리고 일 실시예로서, MFP 장치는 이 제3자 애플리케이션들로부터 수신된 탬플릿들에 기초하여, UI 스크린들을 판독하여 디스플레이하는 UI 부분을 포함할 수 있다. 일 실시예로서, 이러한 UI 부분은 하드웨어나 소프트웨어로 구현될 수 있다. 이러한 UI 탬플릿들을 제공함으로써 MFP 장치에 HTML 브라우저를 임베디드하지 않고도 일정 수준의 커스터마이제이션을 제공할 수 있다. 그러나, 본 발명의 특정 실시예들은 HTML 브라우저 기능을 포함하는 강화된 커스터마이제이션을 제공할 수도 있다. 일 실시예로서, 이러한 UI 부분은 XML 파서이고, UI 탬플릿들은 XML 기반이지만, 본 발명에 대하여 통상의 지식을 가진 자들은 본 발명의 실시예들은 다른 적용 가능한 포맷들을 사용할 수 있음을 이해할 수 있을 것이다.In one embodiment, customization of the MFP device may be realized by providing UI customization of the MFP device. As one example, a set of templates may be provided to third party applications for customizing the UI screens of the MFP device. For example, these templates allow application developers to use buttons, labels, drop-down menus, text boxes, etc., and eventually create UI screens. And as one embodiment, the MFP device may include a UI portion that reads and displays UI screens based on templates received from these third party applications. In one embodiment, this UI portion may be implemented in hardware or software. By providing these UI templates, some level of customization can be provided without embedding an HTML browser in the MFP device. However, certain embodiments of the invention may provide enhanced customization that includes HTML browser functionality. In one embodiment, this UI portion is an XML parser and the UI templates are XML based, but one of ordinary skill in the art will appreciate that embodiments of the present invention may use other applicable formats. .
일 실시예로서, 제3자 애플리케이션 개발자들은 버튼 응답 시스템을 지원하는 웹 서비스를 제공할 수 있다. 또한, 이 애플리케이션 개발자들은 제공된 스크린 템플릿들에 기초한 UI 스크린들을 만들 수 있으며, 일련의 스크린들을 제공할 수도 있다.In one embodiment, third party application developers may provide web services that support a button response system. In addition, the application developers can create UI screens based on the provided screen templates, and can provide a series of screens.
도 1a 및 도 1b는 MFP 상의 커스텀 애플리케이션의 등록을 도시한 것이다. 커스터마이즈가 가능한 MFP 시스템(100)은 복사나 팩스 등의 고유 기능들(102)과 애플리케이션 특정 기능들(103)을 수행할 수 있는 MFP 장치(101)를 포함한다. 이 MFP 장치(101)는 호스트 서버들(106)에서 작동하는 커스텀 애플리케이션들과 통신하는 프록시 장치(104)와 데이터 통신을 한다. 그리고, 관리자는 클라이언트 장치(108)를 통해 프록시 장치(104)에 접근할 수 있다. 그리고 비록 도시되진 않았지만, MFP 장치(101), 프록시 장치(104), 호스트 서버들(106) 및 클라이언트 장치(108)는 인터넷, 로컬 인트라넷, 무선 네트워크, 유선 네트워크, LANs(Local Area Networks), WANs(Wide Area Networks) 등을 포함하는 다양한 네트워크들을 통해 상호 연결되어 있다. 그리고, 각각의 커스텀 애플리케이션은 각 호스트 서버(106)에서 작동되는 것으로 도시되어 있지만, 다른 실시예로서, 복수의 커스텀 애플리케이션들이 주어진 단일의 호스트 서버(106)에서 작동될 수 있다. 또한, 분산 네트워크를 통해 컴퓨팅 디바이스들로 제공된 경우에, 하나의 커스텀 애플리케이션이 복수의 호스트 서버들(106)에서 작동될 수 있다. 그리고, 이때의 커스텀 애 플리케이션들은 웹 서비스일 수 있다. 또한 일 실시예로서, MFP 장치(101), 프록시 장치(104) 및 커스텀 애플리케이션들 사이의 인터페이스는 웹 서비스 기술 언어(Web Service Description Language: WSDL)로 기술될 수 있다. 비록 도시된 실시예에서 MFP 시스템(100)은 프록시 장치(104)를 포함하고 있으나, 어떤 실시예들에서는 프록시 장치(104)의 기능이 MFP 장치(101)나 커스텀 애플리케이션들에 의해 제공될 수도 있다.1A and 1B illustrate the registration of a custom application on an MFP. The
MFP 장치(101), 프록시 장치(104), 호스트 서버(106) 및 클라이언트 장치(108)는 각각 장치 또는 서버의 하나 이상의 프로세서에 의해 실행되는 하나 이상의 소프트웨어 프로그램들을 포함할 수 있다. 그리고, 이러한 프로세서들은 인텔 계열의 마이크로프로세서에 기반의 구성을 가질 수 있다. 그리고, MFP 장치(101), 프록시 장치(104), 호스트 서버(106) 및 클라이언트 장치(108)는 각각 하드웨어 또는 펌웨어에 내장된 논리 또는 소프트웨어 명령들을 포함할 수 있다. 그리고 하드웨어는 게이트들(gates)이나 플립-플랍들(flip-flops)과 같은 논리 유닛들이 연결된 구성들이나 EPROM이나 EEPROM 과 같은 프로그램이 가능한 유닛들, 프로그램이 가능한 게이트 어레이들 또는 프로세서들로 구성될 수 있다. 게다가, 하드웨어는 독립형의 전용 장치나 소프트웨어를 가진 범용 컴퓨터로 구성될 수 있다.
도 1a에서 MFP 장치(101)는 등록되어 있는 두 개의 애플리케이션 특정 기능들(103)을 가진다. 이러한 두 개의 애플리케이션들인 APP1 과 APP2는 도시된 바와 같이 각각 상위에 위치한 호스트 서버들(106)에서 동작하는 커스텀 애플리케이션들에 각각 대응된다. 이러한 커스텀 애플리케이션들은 이미 MFP 장치(101)에 등록되 어 있기 때문에, 각 호스트 서버들(106)과 프록시 장치(104)는 실선의 화살들로 표시되어 있다. 반면에, 프록시 장치(104)와 최하위에 위치한 호스트 서버(106)를 점선으로 연결한 것은 이 호스트 서버(106)에서 동작하는 커스텀 애플리케이션이 현재 MFP 장치(101)에 등록 중인 상태에 있음을 표시한 것이다. 일 실시예로서, 관리자는 클라이언트 장치(108)에 로그인하여, 최하위에 위치한 호스트 서버(106)에서 작동되는 커스텀 애플리케이션의 등록을 프록시 장치(104)가 시작하도록 요청할 수 있다. 이러한 등록 과정은 다음에 도 4를 참조하여 보다 상세하게 설명하기로 한다. 도 1b는 최하위에 있는 호스트 서버(106)에서 작동되는 커스텀 애플리케이션이 MFP(101)에 등록이 완료된 상태를 도시한 것이다. 이 경우, 최하위의 호스트 서버(106)와 프록시 장치(104)는 실선으로 연결되어 있으며, 세 개의 커스텀 애플리케이션 기능들(103)은 MFP 장치(101)에서 사용자에게 보여질 수 있고, 그 기능들(103)의 사용도 가능하게 된다.In FIG. 1A, the
도 1c는 MFP의 커스터마이즈 방법의 일 실시예를 흐름도로 도시한 것이다.1C illustrates a flowchart of one embodiment of a method for customizing an MFP.
122 단계에서, 등록하고자 하는 커스텀 애플리케이션에 대한 정보를 호스트 서버(106)에 알린다. 일 예로서, 관리자 등의 MFP 사용자는 클라이언트 장치(108)를 통하여 프록시 장치(104)에 접근할 수 있으며, 이 프록시 장치(104)를 통하여 호스트 서버(106)에 등록하고자 하는 커스텀 애플리케이션에 대한 정보를 알린다. 이 경우, 웹 서비스 기술 언어로 기술되는 소프트웨어 인터페이스를 통하여 등록하고자 하는 커스텀 애플리케이션에 대한 정보를 알릴 수 있으며, 이때의 커스텀 애플리케이션은 웹 서비스일 수 있다.In
124 단계에서, 프록시 장치(104)에 커스텀 애플리케이션을 등록한다. 일 예로서, 122 단계에서 호스트 서버(106)에게 알려진 커스텀 애플리케이션에 대한 정보에 따른 커스텀 애플리케이션이 프록시 장치(104)에 등록된다. 도 4는 커스텀 애플리케이션을 MFP에 등록하기 위한 웹 클라이언트 인터페이스의 대화창의 일 예를 도시한 것이다. 일 실시예로서, 관리자 등의 사용자는 프록시 장치(104) 고유의 사용자 인터페이스를 이용하여 프록시 장치(104)와 직접적으로 연결할 수 있다. 또한 일 실시예로서, 프록시 장치(104)를 통한 등록을 막고, 커스텀 애플리케이션들이 MFP 장치(101)에 직접적으로 등록되도록 할 수도 있다.In
126 단계에서, 커스텀 애플리케이션이 프록시 장치(104)에 등록되었음을 MFP 장치(101)에 알려서 사용자들이 등록된 커스텀 애플리케이션을 이용할 수 있도록 된다. 이 경우, MFP 장치(101)는 커스텀 애플리케이션의 등록을 반영하여 업데이트된다.In
128 단계에서, 사용자는 MFP 장치(101)에 알려진 커스텀 애플리케이션 중 이용하고자 하는 커스텀 애플리케이션을 선택함으로써 MFP(101)와 커스텀 애플리케이션 사이의 메시지 교환을 시작하게 하는 사용 가능한 커스텀 애플리케이션을 요청한다. 이러한 교환은 버튼 응답 시스템이라고 불린다. 이러한 사용자의 요청에 응답하여, MFP(101)는 커스텀 애플리케이션의 서비스를 요청한다. 일 실시예로서, 이 커스텀 애플리케이션들은 MFP 장치(101) 이외의 장치에서 작동하는 웹 서비스들일 수 있으며, 이러한 교환은 도 2 및 도 3a를 참조하여 다음에 보다 상세하게 설명한다.In
130 단계에서, 커스텀 애플리케이션은 등록에서 제거된다. 일 실시예로서, 관리자 등의 사용자는 클라이언트 장치(108)를 통해 프록시 장치(104)와 연결하여 커스텀 애플리케이션을 등록에서 제거할 수 있다. 다른 일 실시예로서, 등록 뿐만 아니라 등록 제거는 자동적으로, 주기적으로, 또는 고정적이나 동적으로 일어날 수 있다.In
132 단계에서, MFP 장치(101)는 커스텀 애플리케이션이 등록에서 제거된 것을 반영하여 업데이트된다. 이 등록에서 제거된 애플리케이션은 다시 재등록되기 전에는 MFP(101)의 사용자들에 의해 사용될 수 없다.In
도 2는 MFP 장치(101), 프록시 장치(104), 호스트 서버(106) 및 클라이언트 장치(108)간의 메시지 교환을 도시한 것이다. 도 2의 빗금 친 버튼들은 사용자로부터 선택된 버튼들을 표시한 것이다.2 illustrates a message exchange between the
202 단계에서, 관리자 등의 사용자는 클라이언트 장치(108)에서 작동되는 웹 클라이언트 프로그램을 통해 커스텀 애플리케이션을 프록시 장치(104)에 등록시킨다. 이러한 등록 과정은 도 4를 참조하여 다음에 상세히 설명하기로 한다.In
204 단계에서, MFP 장치(101)는 프록시 장치(104)에게 새롭게 등록된 커스텀 애플리케이션이 있는지를 의미하는 업데이트 여부를 문의한다.In
206 단계에서, 프록시 장치(104)는 MFP 장치(101)에게 새 커스텀 애플리케이션이 등록되었음을 알리는 메시지를 보낸다. 이때, 새 커스텀 애플리케이션을 APP1 애플리케이션이라 칭하기로 한다. 그리고, 도시된 바와 같이 MFP 장치(101)는 APP1 커스텀 애플리케이션을 MFP 사용자들이 사용할 수 있도록 한다. 일 실시예로서, MFP 장치(101)와 APP1 애플리케이션 사이의 인터페이스는 웹 서비스 기술 언어(WSDL)로서 규정될 수 있다. 전에 언급한 바와 같이, 비록 도시된 실시예에 의하면 등록 과정은 프록시 장치(104) 상에서 이루어지나, 다른 실시예에 의하면 등록 과정은 MFP 장치(101)상에서 이루어질 수도 있다. In step 206, the
208 단계에서, 사용자가 APP1 커스텀 애플리케이션을 선택함으로써 APP1 애플리케이션에 대한 버튼 응답 시스템을 시작하게 하면, MFP 장치(101)는 프록시 장치(104)에게 APP1 커스텀 애플리케이션에 의한 명령들을 요청하는 메시지를 보낸다. 그러면, 프록시 장치(104)는 이 APP1 커스텀 애플리케이션에 대응되는 호스트 서버(106)에 이 메세지를 전송한다.In
210 단계에서 호스트 서버(106)에서 동작하는 APP1 커스텀 애플리케이션은 사용자 인터페이스를 프록시 장치(104)를 경유하여 MFP 장치(101)에 전송한다. 이때의 사용자 인터페이스는 MFP 장치(101)상에 디스플레이되는 UI 스크린을 위한 명령들을 포함하며, 도시된 바와 같이, 이 UI 명령들은 MFP 장치(101)가 인지할 수 있도록 구성되는 XML 기반의 템플릿들을 충족한다. 일 실시예로서, 이 템플릿의 요건은 애플리케이션 개발자들에게 공개될 수 있는데, 이때의 애플리케이션 개발자들은 MFP 장치(101)가 인지할 수 있게 프로그램되는 정해진 템플릿들을 충족하는 UI 명령들을 작성하는 사람들을 말한다. 일 실시예로서, 커스텀 애플리케이션들은 일정한 파라미터 목록 내의 템플릿 파라미터를 전달할 수 있으며, MFP 장치(101)에 의해 인지된 포맷에 대응하는 파일들의 템플릿 파라미터들을 전달할 수도 있다. 프록시 장치(104)가 MFP 장치(101)에 UI 명령들을 전송하면, MFP 장치(101)는 전송받 은 UI 명령들을 파싱하고, 사용자에게 이 UI 명령들을 디스플레이한다. MFP 장치(101)가 각 UI 명령들을 디스플레이하면, 사용자는 MFP 장치(101)의 입력부(미도시)를 통해 데이터를 입력할 수 있다. 이때, 사용자에 의해 입력된 데이터를 사용자 데이터라고 칭하고 한다. 예를 들면, 사용자는 키보드나 숫자 패드를 타이핑할 수 있으며, 스크린 인터페이스에 나타난 버튼들을 선택할 수 있으며, 스타일러스(stylus)를 사용하여 숫자, 문자, 심볼들을 입력할 수 있으며, 여러 다른 수단들을 사용하여 데이터를 입력할 수 있다. 그러면 이렇게 입력된 사용자 데이터는 프록시 장치(104)를 통해 호스트 서버(106)에 전송된다. 비록 도시된 실시예에서는 MFP 장치(101)와 커스텀 애플리케이션들은 UI 명령들과 사용자에 의해 입력된 사용자 데이터들을 교환하지만, 다른 실시예들에서는 MFP 장치와 커스텀 애플리케이션들간에는 프록시 장치를 통해 다른 정보를 교환할 수 있다. 예를 들면, 커스텀 애플리케이션들은 애플리케이션 특유의 데이터베이스로부터 추출된 데이터를 전송할 수 있으며, UI 명령들을 생략하거나, 동적으로 생성된 데이터를 전송할 수 있다. 게다가, MFP 장치는 사용자 데이터를 처리하고 그 결과물을 전송하거나, 사용자 데이터의 전송을 생략하거나, 사용자가 입력한 데이터와 무관한 정적 또는 동적으로 생성된 데이터를 전송할 수 있다.In
이러한 처리는 호스트 서버(106)가 사용자 데이터 전부를 전송받을 때까지 반복될 수 있다. 커스텀 애플리케이션이 사용자 데이터 전부를 전송받으면, 커스텀 애플리케이션은 MFP 장치(101)가 각 고유의 기능을 사용자가 사용할 수 있게 하도록 한다. 즉, 스캔된 이미지를 수신하면, 커스텀 애플리케이션은 스캔된 이미지와 UI 스크린들에 대응하여 입력된 데이터를 포함하는 사용자로부터 제출된 데이터를 처리한다. 예를 들면, 커스텀 애플리케이션은 스캔된 이미지로부터 OCR 소프트웨어를 사용하여 데이터를 추출하고, 추출된 데이터를 데이터 베이스에 저장할 수 있다. 또한, 일 실시예로서, 커스텀 애플리케이션들은 이 MFP 장치 고유의 기능과는 독립적으로 사용자 인터페이스를 통해 작동할 수도 있다.This process may be repeated until the
사용자로부터 제출된 데이터를 처리한 후, 212 단계에서 호스트 서버(106)는 홈 스크린(home screen)으로 되돌아가라는 메시지를 송신한다. 그리고, 관리자는 214 단계에서 도시된 바와 같이, APP1 커스텀 애플리케이션을 등록에서 제거하는 것을 결정할 수 있다. APP1 커스텀 애플리케이션을 등록에서 제거한 후에, MFP 장치(101)는 프록시 장치(104)에 정기적인 업데이트 문의를 한다. 이 업데이트 문의를 받으면, 프록시 장치(104)는 MFP 장치(101)에 APP1 커스텀 애플리케이션이 더 이상 이용가능하지 않다는 것을 알리는 메시지를 전송한다.After processing the data submitted from the user, in
도 3a는 버튼 응답 시스템을 더욱 상세하게 도시한 것이다. 302 단계에서, MFP 장치(101)는 사용자로부터 커스텀 애플리케이션을 시작하게 하는 지시를 받으면, 프록시 장치(104)에 다음 UI 스크린 요청을 전송한다. 304 단계에서, 프록시 장치(104)는 다음 UI 스크린 요청을 수신하여, 이를 호스트 서버(106)에 전송한다. 306 단계에서, 호스트 서버(106)에서 동작하는 커스텀 애플리케이션은 이 다음 UI 스크린 요청을 수신한다. 308 단계에서, 커스텀 애플리케이션은 다음 스크린 명령들을 송신한다. 일 예로서, 스크린 명령들은 XML 기반 UI 템플릿일 수 있다. 310 단계에서, 프록시 장치(104)는 호스트 서버(106)로부터 스크린 명령들은 수신하고, 이들을 MFP 장치(101)에 보낸다. 312 단계에서, MFP 장치(101)는 이 스크린 명령들을 수신하고, MFP 장치(101)의 사용자에게 이 수신된 스크린 명령들에 따른 스크린을 디스플레이한다. 314 단계에서, 사용자는 현재 디스플레이된 스크린을 통하여 사용자 데이터를 입력하고, MFP 장치(101)는 이 사용자 데이터를 입력받아, 프록시 장치(104)에 전송한다. 316 단계에서, 프록시 장치(104)는 MFP 장치(101)로부터 이 사용자 데이터를 수신하고, 이를 호스트 서버(106)에 전송한다. 318 단계에서, 호스트 서버(106)는 이 사용자 데이터를 수신하고, 각 커스텀 애플리케이션은 이 사용자 데이터를 호스트 서버(106)상에서 처리한다. 320 단계에서, 만일 스크린들 모두가 완료되었다면, 커스텀 애플리케이션은 322 단계로 진행한다. 만일 스크린들이 아직 완료되지 않았다면, 커스텀 애플리케이션은 308 단계로 진행하여, 다음 스크린을 전송하고, 사용자 입력 데이터가 올 때까지 대기한다.3A illustrates the button response system in more detail. In
322 단계에서, 사용자 데이터가 모두 수신되면, 커스텀 애플리케이션은 MFP 장치(101)의 고유의 기능에 따른 데이터를 수신하도록 하는 명령들을 프록시 장치(104)에 송신한다. 예를 들면, 커스텀 애플리케이션은 스캔된 데이터를 MFP 장치(101)로부터 수신하도록 하는 명령들을 보낼 수 있다. 324 단계에서, 프록시 장치(104)는 호스트 서버(106)로부터 명령들을 수신하고, 이 명령들은 MFP 장치(101)에 송신한다. 326 단계에서, MFP 장치(101)는 이 명령들을 수신한다. 328 단계에서, MFP 장치(101)는 사용자로부터 이미지를 요청하고, 이 이미지에 따른 스캔된 데이터를 프록시 장치(104)에 전송한다. 330 단계에서, 프록시 장치(104)는 MFP 장치(101)로부터 스캔된 데이터를 수신하고, 이를 호스트 서버(106)에 송신한다. 332 단계에서, 호스트 서버(106)는 스캔된 데이터를 수신한다. 334 단계에서, 커스텀 애플리케이션은 이 스캔된 데이터를 처리하고, MFO 장치(101)에 홈 스크린(home screen)으로 되돌아가라는 명령을 전송한다. 336 단계에서, 프록시 장치(104)는 MFP 장치(101)로 이 명령을 전송한다. 338 단계에서, MFP 장치(101)는 홈 스크린으로 되돌아가라는 명령을 수신한다. 340 단계에서, MFP 장치(101)는 홈 스크린으로 되돌아간다.In step 322, when all user data is received, the custom application sends instructions to the
도 3b는 이러한 버튼 응답 시스템에 따른 MFP 장치(101)의 일 예를 블록도로 도시한 것이다. 도 3b에 도시된 바와 같이, MFP 장치(101)는 인터페이스부(352), 제어부(354), 디스플레이부(356) 및 사용자 입력부(358)로 구성된다.3B is a block diagram illustrating an example of the
인터페이스부(352)는 호스트 서버(106)의 커스텀 애플리게이션으로부터 발송된 사용자 인터페이스를 프록시 장치(104)를 통해 수신하여, 제어부(354)에 전달하며, 제어부(354)의 제어에 따른 사용자 데이터를 프록시 장치(104)를 통해 호스트 서버(106)에 송신한다. 제어부(354)는 인터페이스부(352)를 통해 수신된 사용자 인터페이스를 디스플레이하도록 제어하고, 사용자 입력부(358)로부터 입력된 사용자 데이터를 인터페이스부(352)를 통해 호스트 서버(106)에 전송되도록 제어한다. 디스플레이부(356)는 제어부(354)의 제어를 받아, 인터페이스부(352)를 통해 수신된 사용자 인터페이스를 디스플레이한다. 사용자 입력부(358)는 사용자로부터 사용자 데이터를 입력받아 이를 제어부(354)에 전달한다.The
도 4는 등록 대화 창(400)의 일 실시예를 도시한 것이다. 도 4를 참조하면, MFP 장치인 "Device Name_1"은 ePRO 와 Status Report라고 불리우는 두 개의 등록 애플리케이션들(402)을 가진다. 이 등록 대화 창(400)은 새로운 애플리케이션을 등록하는데 사용되는 등록 버튼(Register New Application:404)을 포함한다. 또한, 이 등록 대화 창(400)은 등록 데이터 필드(406)를 포함한다. 이 등록 데이터 필드(406)에는 관리자 등의 사용자가 애플리케이션 이름(Application name), 커스텀 애플리케이션의 위치를 표시하는 URL(Application URL) 및 "Device Name_1"과 같은 관련 장치(Device)를 입력할 수 있다. 그리고, 사용자가 "적용(Apply)"버튼을 클릭하면, 새로운 커스텀 애플리케이션이 등록되게 된다. 도시된 실시예에서, 새 커스텀 애플리케이션의 이름은 "Patent Process"이며, 이 새 애플리케이션은 "//PatentWebService"에 위치한다. 또한, 이 등록 대화 창(400)은 등록 제거 데이터 필드(408)를 포함한다. 등록을 제거하기 위해서는, 관리자는 등록된 장치의 애플리케이션 ID를 입력하고 등록 제거 버튼(Unregister)을 클릭한다.4 illustrates one embodiment of a
도 5는 가능한 UI 템플릿들의 일 예를 도시한 것이다. 스크린1(502)이라고 불리우는 UI 템플릿은 TextBox1, TextBox2, ComboBox1, OkButton 및 CancelButton의 그래픽 인터페이스 성분들을 포함한다. 스크린2(504)라고 불리는 UI 템플릿은 TextBox1, ComboBox1, OkButton 및 CancelButton 의 그래픽 인터페이스 성분들을 포함한다. 스크린 3(506)이라고 불리는 UI 템플릿은 Button1, Button2, Button3 및 CancelButton의 그래픽 인터페이스 성분들을 포함한다. 스크린4(508)라고 불리는 UI 템플릿은 TextBox1, TextBox2, TextBox3, TextBox4, OkButton 및 CancelButton을 포함한다. 스캔 스크린(510)라고 불리는 UI 템플릿은 PaperSize, Orientation, ScanSide, Resolution, ScanMode, Darkness, EraseBackground, EraseEdge, Collate, FileFormat, FileQuality, Scaling, OkButton, CancelButton, ImageData, NumOfPages, TimStamp 및 Status를 포함한다.5 illustrates an example of possible UI templates. A UI template called
도 6a, 도 6b, 도 6c, 도 6d, 도 6e는 도 5에 도시된 UI 템플릿들에 대응되는 가능한 대화창들의 일 예를 도시한 것이다. 일 실시예로서, 이 대화창은 MFP의 장치(101)의 스크린을 통해 표시될 수 있다. 도 6a는 작업 흐름들의 목록(602)과 이용 가능한 커스텀 애플리케이션들(604)을 도시한 애플리케이션 대화창(600)의 일 예를 도시한 것이다. 도 6b, 도 6c, 도 6d, 도 6e도 "Patent Process" 커스텀 애플리케이션에 대한 대화창들이다. 최초의 대화창(620)은 새로운 공개와 기존의 공개 중 하나를 선택할 수 있도록 하는 인터페이스를 제공한다. 이 최초의 대화창(620)은 스크린2(504) 템플릿에 대응된다. 타입 대화창(640)은 사용자가 새로운 공개가 소프트웨어에 관한 것인지, 하드웨어에 관한 것인지, 아니면 알 수 없는지를 입력할 수 있도록 하는 인터페이스를 제공한다. 이 타입 대화창(640)은 스크린3(506) 템플릿에 대응된다. 스캔 대화창(660)은 "Patent Process" 커스텀 애플리케이션에 해당하는 다수의 데이터 입력들을 보여준다. 현재 공개 대화창(680)은 기존의 공개그룹을 보여준다. 이 대화창은 사용자가 최초 대화창(620)에서 기존의 공개 옵션을 선택하였을 때 나타난다. 이 현재 공개 대화창(680)은 스크린2(504) 템플릿에 대응된다.6A, 6B, 6C, 6D, and 6E illustrate examples of possible chat windows corresponding to the UI templates illustrated in FIG. 5. As an example, this dialog can be displayed via the screen of the
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The present invention can also be embodied as computer-readable codes on a computer-readable recording medium. A computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer system is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disks, optical data storage devices, and the like. In addition, the computer-readable recording medium may be distributed over network-connected computer systems so that computer readable codes can be stored and executed in a distributed manner.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.So far I looked at the center of the preferred embodiment for the present invention. It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. Therefore, the disclosed embodiments should be considered in an illustrative rather than a restrictive sense. The scope of the present invention is defined by the appended claims rather than by the foregoing description, and all differences within the scope of equivalents thereof should be construed as being included in the present invention.
도 1a 및 도 1b는 MFP 상에 커스텀 애플리케이션의 등록을 도시한 것이다. 1A and 1B illustrate registration of a custom application on an MFP.
도 1c는 MFP의 커스터마이즈 방법의 일 실시예를 흐름도로 도시한 것이다.1C illustrates a flowchart of one embodiment of a method for customizing an MFP.
도 2는 MFP 장치(101), 프록시 장치(104), 호스트 서버(106) 및 클라이언트 장치(108)간의 메시지 교환을 도시한 것이다.2 illustrates a message exchange between the
도 3a는 도 2의 208 단계 내지 212 단계에 따른 버튼 응답 시스템을 더욱 상세하게 도시한 것이다.3A illustrates in more detail the button response system according to
도 3b는 도 3a의 버튼 응답 시스템에 따른 MFP 장치(101)의 일 예를 블록도로 도시한 것이다.3B is a block diagram illustrating an example of the
도 4는 등록 대화 창(400)의 일 실시예를 도시한 것이다.4 illustrates one embodiment of a
도 5는 가능한 UI 템플릿들의 일 예를 도시한 것이다.5 illustrates an example of possible UI templates.
도 6a, 도 6b, 도 6c, 도 6d, 도 6e는 도 5에 도시된 UI 템플릿들에 대응되는 가능한 대화창들의 일 예를 도시한 것이다.6A, 6B, 6C, 6D, and 6E illustrate examples of possible chat windows corresponding to the UI templates illustrated in FIG. 5.
Claims (14)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/739,598 US20080270911A1 (en) | 2007-04-24 | 2007-04-24 | System and method to develop a custom application for a multi-function peripheral (mfp) |
US11/739,598 | 2007-04-24 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080095745A KR20080095745A (en) | 2008-10-29 |
KR101238364B1 true KR101238364B1 (en) | 2013-02-28 |
Family
ID=39888519
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080021561A KR101238364B1 (en) | 2007-04-24 | 2008-03-07 | System and method to customize for a image forming apparatus |
Country Status (3)
Country | Link |
---|---|
US (1) | US20080270911A1 (en) |
KR (1) | KR101238364B1 (en) |
CN (1) | CN101296285A (en) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2015554B1 (en) * | 2007-07-13 | 2012-05-16 | Ricoh Company, Ltd. | User interface generating method, image forming apparatus, and computer program product |
US20090249346A1 (en) * | 2008-03-27 | 2009-10-01 | Toru Harada | Image forming apparatus, information processing apparatus and information processing method |
JP5164727B2 (en) * | 2008-08-06 | 2013-03-21 | キヤノン株式会社 | Program as a development toolkit to support application development |
JP5413154B2 (en) * | 2009-11-27 | 2014-02-12 | 株式会社リコー | Display device, image forming apparatus, customization method, program |
KR101644416B1 (en) * | 2009-12-17 | 2016-08-02 | 삼성전자주식회사 | Image forming apparatus and method for providing local user interface thereof |
JP5595032B2 (en) * | 2009-12-24 | 2014-09-24 | キヤノン株式会社 | Information processing system, control method therefor, information processing device, information providing device, image processing device, and program |
US8438259B2 (en) | 2010-10-30 | 2013-05-07 | Hewlett-Packard Development Company, L.P. | Web application usage of accessory device directly connected to electronic device in non-networked manner |
JP2012103990A (en) * | 2010-11-11 | 2012-05-31 | Canon Inc | Information processing device, method for controlling screen display and computer program |
CN102646102A (en) * | 2011-02-22 | 2012-08-22 | 青岛海信电器股份有限公司 | XML (Extensible Markup Language) file generating method and device as well as terminal equipment |
US20120233235A1 (en) * | 2011-03-07 | 2012-09-13 | Jeremy David Allaire | Methods and apparatus for content application development and deployment |
KR101820721B1 (en) * | 2011-11-29 | 2018-01-23 | 에스프린팅솔루션 주식회사 | Image forming device for serving a web service and method thereof |
JP5720666B2 (en) * | 2012-12-17 | 2015-05-20 | コニカミノルタ株式会社 | Remote control system, remote control device and program |
US9507480B1 (en) * | 2013-01-28 | 2016-11-29 | Amazon Technologies, Inc. | Interface optimization application |
CN104391687B (en) * | 2014-10-28 | 2017-11-28 | 深圳市多彩人生技术有限公司 | The realization method and system of the internet APP common platforms of enterprise and corporations |
US10015236B2 (en) * | 2015-01-30 | 2018-07-03 | Ricoh Company, Ltd. | Cloud application activation and update service |
JP6455195B2 (en) * | 2015-02-04 | 2019-01-23 | 富士ゼロックス株式会社 | Operation screen providing system, relay device, and program |
US9946529B2 (en) * | 2015-05-01 | 2018-04-17 | Samsung Electronics Co., Ltd. | Function-based dynamic application extension framework |
KR20180001292A (en) * | 2016-06-27 | 2018-01-04 | 에스프린팅솔루션 주식회사 | Method and system for registering plurality of devices |
JP6737121B2 (en) * | 2016-10-14 | 2020-08-05 | コニカミノルタ株式会社 | Processor program proxy processing setting method |
JP6891580B2 (en) | 2017-03-24 | 2021-06-18 | 富士フイルムビジネスイノベーション株式会社 | Communication equipment and programs |
CN108363574B (en) * | 2018-01-23 | 2021-07-16 | 平安普惠企业管理有限公司 | Front-end customization method and device based on SDK, terminal equipment and storage medium |
JP7096716B2 (en) * | 2018-06-29 | 2022-07-06 | キヤノン株式会社 | Programs, communication methods, and systems |
CN110784607B (en) * | 2018-07-31 | 2023-04-07 | 东芝泰格有限公司 | Method for selecting and implementing one or more user-customized MFP interfaces and MFP |
CN109976868A (en) * | 2019-04-11 | 2019-07-05 | 北京阿尔山区块链联盟科技有限公司 | DApp method for customizing, device and electronic equipment |
EP3963761A4 (en) | 2019-04-30 | 2022-12-07 | Hewlett-Packard Development Company, L.P. | Imaging device access |
CN117519661A (en) * | 2021-12-29 | 2024-02-06 | 上海捷信医药科技股份有限公司 | Applet system in EPRO software |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004355413A (en) * | 2003-05-29 | 2004-12-16 | Itochu Techno-Science Corp | Mainframe open system for computer network system |
KR20070012544A (en) * | 2004-05-14 | 2007-01-25 | 사이트릭스 시스템스, 인크. | Methods and apparatus for displaying application output on devices having constrained system resources |
Family Cites Families (78)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6910068B2 (en) * | 1999-06-11 | 2005-06-21 | Microsoft Corporation | XML-based template language for devices and services |
JP3792985B2 (en) * | 2000-04-05 | 2006-07-05 | キヤノン株式会社 | Directory server and peripheral device, control method thereof, and recording medium |
US6950990B2 (en) * | 2000-12-11 | 2005-09-27 | Microsoft Corporation | Navigation tool for accessing workspaces and modules in a graphical user interface |
US20020161826A1 (en) * | 2001-01-25 | 2002-10-31 | Carlos Arteaga | System and method for remote communication transactions |
US20020129096A1 (en) * | 2001-02-14 | 2002-09-12 | Mansour Peter M. | Platform-independent distributed user interface client architecture |
US7302634B2 (en) * | 2001-03-14 | 2007-11-27 | Microsoft Corporation | Schema-based services for identity-based data access |
US20030061365A1 (en) * | 2001-03-14 | 2003-03-27 | Microsoft Corporation | Service-to-service communication for network services |
JP2002287990A (en) * | 2001-03-26 | 2002-10-04 | Canon Inc | Application managing device, application managing method, recording medium, and program |
US7246158B2 (en) * | 2001-04-23 | 2007-07-17 | Ricoh Company, Ltd. | System, computer program product and method for selecting an application service provider |
WO2003014867A2 (en) * | 2001-08-03 | 2003-02-20 | John Allen Ananian | Personalized interactive digital catalog profiling |
US7720758B2 (en) * | 2001-09-12 | 2010-05-18 | Ricoh Company, Ltd. | System, computer program product and method for managing bills issued from application service providers |
US7577722B1 (en) * | 2002-04-05 | 2009-08-18 | Vmware, Inc. | Provisioning of computer systems using virtual machines |
US7107333B2 (en) * | 2002-07-24 | 2006-09-12 | International Business Machines Corporation | Method and apparatus for processing workflow through a gateway |
AU2002950435A0 (en) * | 2002-07-29 | 2002-09-12 | Trade Wind Communications Ltd | A Bulk Communications Process Using Multiple Delivery Media |
US20040021698A1 (en) * | 2002-08-05 | 2004-02-05 | Baldwin Amanda K. | Intuitive touchscreen interface for a multifunction device and method therefor |
IL166717A0 (en) * | 2002-08-26 | 2006-01-15 | Computer Ass Think Inc | Web services apparatus and methods |
US8154741B2 (en) * | 2002-10-16 | 2012-04-10 | Xerox Corporation | Apparatus for low cost embedded platform for device-side, distributed services enablement |
US8775649B2 (en) * | 2002-11-26 | 2014-07-08 | Oracle America, Inc. | Optimizing client code through automated server specialization |
US20040133633A1 (en) * | 2002-12-05 | 2004-07-08 | Neopost Inc. | Method and apparatus for adaptive client communications |
US8561069B2 (en) * | 2002-12-19 | 2013-10-15 | Fujitsu Limited | Task computing |
US7631033B2 (en) * | 2003-01-15 | 2009-12-08 | Xerox Corporation | Hosted method and system for automated proxy creation of device resident services |
US20040230500A1 (en) * | 2003-02-21 | 2004-11-18 | Satosi Imago | Service providing apparatus, user terminal, service providing method, service utilizing method, computer-readable recording medium recorded with a service providing program, and computer-readable recording medium recorded with a service utilizing program |
US20040207659A1 (en) * | 2003-04-02 | 2004-10-21 | International Business Machines Corporation | Program creation by combining web services using graphic user interface controls |
WO2004091137A2 (en) * | 2003-04-04 | 2004-10-21 | Computer Associates Think, Inc. | Method and system for management and configuration of remote agents |
US7849130B2 (en) * | 2003-04-30 | 2010-12-07 | International Business Machines Corporation | Dynamic service-on-demand delivery messaging hub |
US7930214B2 (en) * | 2003-05-05 | 2011-04-19 | Intel Corporation | Management and arbitration of mobile service discovery |
US20050033751A1 (en) * | 2003-08-07 | 2005-02-10 | Jonathan Maron | Web service management leveraging a single process service framework |
US7275213B2 (en) * | 2003-08-11 | 2007-09-25 | Ricoh Company, Ltd. | Configuring a graphical user interface on a multifunction peripheral |
US7814142B2 (en) * | 2003-08-27 | 2010-10-12 | International Business Machines Corporation | User interface service for a services oriented architecture in a data integration platform |
US20050262190A1 (en) * | 2003-08-27 | 2005-11-24 | Ascential Software Corporation | Client side interface for real time data integration jobs |
EP1665084A1 (en) * | 2003-09-17 | 2006-06-07 | Research In Motion Limited | System and method for dynamic generation and customization of web service client applications for terminals |
US7711832B1 (en) * | 2003-09-22 | 2010-05-04 | Actional Corporation | Enabling existing desktop applications to access web services through the use of a web service proxy |
US7353512B2 (en) * | 2003-09-29 | 2008-04-01 | International Business Machines Corporation | Mobile applications and content provisioning using web services technology |
US20050086328A1 (en) * | 2003-10-17 | 2005-04-21 | Landram Fredrick J. | Self configuring mobile device and system |
US7493592B2 (en) * | 2003-10-24 | 2009-02-17 | Microsoft Corporation | Programming interface for a computer platform |
US7296072B2 (en) * | 2003-12-12 | 2007-11-13 | International Business Machines Corporation | Enhanced port type agnostic proxy support for web services intermediaries |
JP2005242994A (en) * | 2004-01-27 | 2005-09-08 | Ricoh Co Ltd | Device, method and program for providing service, device, method and program for processing information, and recording medium |
US20050198206A1 (en) * | 2004-01-30 | 2005-09-08 | International Business Machines Corporation | Method and apparatus for dynamically selecting functionally equivalent Web services through a single autonomic proxy |
US7596622B2 (en) * | 2004-02-26 | 2009-09-29 | Research In Motion Limited | Apparatus and method for processing web service descriptions |
US8533737B2 (en) * | 2004-03-18 | 2013-09-10 | Global Infotek, Inc. | System and method for interfacing distributed systems with different frameworks |
US7966396B2 (en) * | 2004-10-08 | 2011-06-21 | Sharp Laboratories Of America, Inc. | Methods and systems for administrating imaging device event notification |
US8051140B2 (en) * | 2004-10-08 | 2011-11-01 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device control |
US20060077119A1 (en) * | 2004-10-08 | 2006-04-13 | Sharp Laboratories Of America, Inc. | Methods and systems for receiving content at an imaging device |
US8230328B2 (en) * | 2004-10-08 | 2012-07-24 | Sharp Laboratories Of America, Inc. | Methods and systems for distributing localized display elements to an imaging device |
US7633644B2 (en) * | 2004-10-08 | 2009-12-15 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device job management |
US8001586B2 (en) * | 2004-10-08 | 2011-08-16 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential management and authentication |
US8015234B2 (en) * | 2004-10-08 | 2011-09-06 | Sharp Laboratories Of America, Inc. | Methods and systems for administering imaging device notification access control |
US20060095536A1 (en) * | 2004-10-08 | 2006-05-04 | Rono Mathieson | Methods and systems for imaging device remote location functions |
US8018610B2 (en) * | 2004-10-08 | 2011-09-13 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device remote application interaction |
US7827563B2 (en) * | 2004-11-03 | 2010-11-02 | Kyocera Mita Corporation | Open architecture and interfaces for workflow applications in office document systems |
US7911626B2 (en) * | 2004-11-08 | 2011-03-22 | Sharp Laboratories Of America, Inc. | Systems and methods for providing a configurable user interface on an imaging device |
WO2006063118A2 (en) * | 2004-12-07 | 2006-06-15 | Pure Networks, Inc. | Network management |
JP2006313526A (en) * | 2005-04-07 | 2006-11-16 | Canon Inc | Software evaluating method and software evaluating system |
EP1872204A4 (en) * | 2005-04-18 | 2008-06-11 | Research In Motion Ltd | System and method for flexible visual representation of presentation components |
US7702746B2 (en) * | 2005-04-21 | 2010-04-20 | International Business Machines Corporation | Web services response templates |
US7509374B2 (en) * | 2005-09-09 | 2009-03-24 | Alchemic Solutions Group, Inc. | Systems and methods for creating customized applications |
US20070067458A1 (en) * | 2005-09-20 | 2007-03-22 | Rockwell Software, Inc. | Proxy server for integration of industrial automation data over multiple networks |
JP4756994B2 (en) * | 2005-10-27 | 2011-08-24 | キヤノン株式会社 | Network print system, network peripheral device, information processing device and program |
US7565682B2 (en) * | 2005-10-31 | 2009-07-21 | Microsoft Corporation | Web service UI information guide |
JP4335206B2 (en) * | 2005-12-22 | 2009-09-30 | シャープ株式会社 | Multifunction device control system, control method of multifunction device control system, program, and recording medium |
JP5441303B2 (en) * | 2006-01-20 | 2014-03-12 | キヤノン株式会社 | Information processing apparatus and information processing method |
US8070059B2 (en) * | 2006-02-07 | 2011-12-06 | Hewlett-Packard Development Company, L.P. | Authorization for device interaction with a remote service |
KR20070083028A (en) * | 2006-02-20 | 2007-08-23 | 삼성전자주식회사 | Apparatus for processing a variety of data and method for displaying user interface |
US8151323B2 (en) * | 2006-04-12 | 2012-04-03 | Citrix Systems, Inc. | Systems and methods for providing levels of access and action control via an SSL VPN appliance |
US20070255719A1 (en) * | 2006-04-28 | 2007-11-01 | Sap Ag | Method and system for generating and employing a generic object access model |
US7587425B2 (en) * | 2006-04-28 | 2009-09-08 | Sap Ag | Method and system for generating and employing a dynamic web services invocation model |
US7590661B2 (en) * | 2006-07-31 | 2009-09-15 | Ricoh Company, Ltd. | Advanced Web Services on a legacy platform |
US7843586B2 (en) * | 2006-09-28 | 2010-11-30 | Sharp Laboratories Of America, Inc. | Systems and methods for facilitating direct scanning to network destinations by clients |
US8345272B2 (en) * | 2006-09-28 | 2013-01-01 | Sharp Laboratories Of America, Inc. | Methods and systems for third-party control of remote imaging jobs |
US20080084576A1 (en) * | 2006-10-10 | 2008-04-10 | Nehal Dantwala | System and method to remotely control the front panel of a multi-function peripheral from an embedded web server |
US7664887B2 (en) * | 2006-11-15 | 2010-02-16 | Ricoh Company, Ltd. | Device architecture to support multiple protocols |
US7873647B2 (en) * | 2006-12-18 | 2011-01-18 | Ricoh Company, Ltd. | Web services device profile on a multi-service device: device and facility manager |
US7680877B2 (en) * | 2006-12-18 | 2010-03-16 | Ricoh Company, Ltd. | Implementing a web service application on a device with multiple threads |
US8321546B2 (en) * | 2007-01-10 | 2012-11-27 | Ricoh Company, Ltd. | Integrating discovery functionality within a device and facility manager |
US7729630B2 (en) * | 2007-01-24 | 2010-06-01 | Kabushiki Kaisha Toshiba | System and method for generating a user customizable default user interface for a document processing device |
US20080227440A1 (en) * | 2007-03-16 | 2008-09-18 | Vinay Kumar Chowdary Settepalli | Methods and apparatus for discovering and updating a mobile device via user behavior |
US20080263071A1 (en) * | 2007-04-19 | 2008-10-23 | Sharp Laboratories Of America, Inc. | Systems and methods for driverless imaging of documents |
US20090150789A1 (en) * | 2007-12-10 | 2009-06-11 | Alain Regnier | Dynamic multi-platform monitoring client for WSD-enabled devices |
-
2007
- 2007-04-24 US US11/739,598 patent/US20080270911A1/en not_active Abandoned
-
2008
- 2008-03-07 KR KR1020080021561A patent/KR101238364B1/en not_active IP Right Cessation
- 2008-04-18 CN CNA2008100933126A patent/CN101296285A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004355413A (en) * | 2003-05-29 | 2004-12-16 | Itochu Techno-Science Corp | Mainframe open system for computer network system |
KR20070012544A (en) * | 2004-05-14 | 2007-01-25 | 사이트릭스 시스템스, 인크. | Methods and apparatus for displaying application output on devices having constrained system resources |
Also Published As
Publication number | Publication date |
---|---|
KR20080095745A (en) | 2008-10-29 |
CN101296285A (en) | 2008-10-29 |
US20080270911A1 (en) | 2008-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101238364B1 (en) | System and method to customize for a image forming apparatus | |
JP5199761B2 (en) | Information processing apparatus, image input apparatus, document distribution system, and control method therefor | |
US8711411B2 (en) | Print control server, print controlling method, and print control program | |
CN102035978B (en) | Information processor and control method thereof | |
JP5462610B2 (en) | Information processing system, information processing apparatus, control method therefor, and program | |
CN101866292B (en) | Information processing apparatus and control method | |
US9531893B2 (en) | Screen image providing apparatus, screen image providing method, and computer readable medium | |
JP5230472B2 (en) | Web server, processing method, program | |
US20090091791A1 (en) | Methods and systems for third-party administrative control of remote imaging jobs and imaging devices | |
JP2021028130A (en) | Printing device, and printing system | |
US10455101B2 (en) | Server, image processing unit, and non-transitory recording medium for displaying error screen | |
US9756203B2 (en) | Image processing apparatus, method for controlling the same, and storage medium | |
JP4501723B2 (en) | Image processing apparatus, image processing method, and program | |
JP6790797B2 (en) | Image processing systems, image forming devices, application execution methods, and computer programs | |
JP5176806B2 (en) | Image forming apparatus, information processing apparatus, information processing system, information processing method, and program | |
JP6492711B2 (en) | Relay device, operation screen providing device, and program | |
EP2951709B1 (en) | Use of resource server for imaging device application payload | |
JP2006285840A (en) | Document management system | |
JP2009205262A (en) | Application program installation device, application program installation method, program, and recording medium | |
JP2006302145A (en) | Document registration system, image forming device and information processor | |
JP2004133926A (en) | Device, method and program for generating cooperative information and document processing system | |
JP2010055559A (en) | Document management device, document management method, and program | |
JP4787655B2 (en) | Information processing apparatus, display control apparatus, information processing system, information processing method, display control method, information processing program, and display control program | |
JP4378338B2 (en) | Information processing apparatus, device setting method, storage medium, and program | |
JP7374625B2 (en) | Printing system and control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |