KR101238364B1 - System and method to customize for a image forming apparatus - Google Patents

System and method to customize for a image forming apparatus Download PDF

Info

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
Application number
KR1020080021561A
Other languages
Korean (ko)
Other versions
KR20080095745A (en
Inventor
네알 단트와라
샤흐자드 바티
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Publication of KR20080095745A publication Critical patent/KR20080095745A/en
Application granted granted Critical
Publication of KR101238364B1 publication Critical patent/KR101238364B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00501Tailoring a user interface [UI] to specific requirements
    • H04N1/00503Customising to a particular machine or model, machine function or application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/10Office automation; Time management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/567Integrating 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

화상 형성 장치의 커스터마이즈 방법 및 시스템{System and method to customize for a image forming apparatus}System and method to customize for a image forming apparatus

본 발명은 화상 형성 장치에 관한 것으로서, 더욱 상세하게는 화상 형성 장치의 커스터마이즈 방법에 관한 것이다.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 customizable MFP system 100 includes an MFP device 101 capable of performing unique functions 102 such as copying or faxing and application specific functions 103. This MFP device 101 is in data communication with a proxy device 104 that communicates with custom applications running on host servers 106. The administrator can then access the proxy device 104 via the client device 108. And although not shown, the MFP device 101, proxy device 104, host servers 106 and client device 108 may be the Internet, a local intranet, a wireless network, a wired network, local area networks (LANs), WANs. They are interconnected through various networks, including Wide Area Networks. And while each custom application is shown to be running on each host server 106, in another embodiment, multiple custom applications can be run on a single host server 106 given. Also, when provided to computing devices via a distributed network, one custom application can be run on a plurality of host servers 106. In this case, the custom applications may be web services. In addition, as an embodiment, the interface between the MFP device 101, the proxy device 104, and the custom applications may be described in a Web Service Description Language (WSDL). Although in the illustrated embodiment the MFP system 100 includes a proxy device 104, in some embodiments the functionality of the proxy device 104 may be provided by the MFP device 101 or custom applications. .

MFP 장치(101), 프록시 장치(104), 호스트 서버(106) 및 클라이언트 장치(108)는 각각 장치 또는 서버의 하나 이상의 프로세서에 의해 실행되는 하나 이상의 소프트웨어 프로그램들을 포함할 수 있다. 그리고, 이러한 프로세서들은 인텔 계열의 마이크로프로세서에 기반의 구성을 가질 수 있다. 그리고, MFP 장치(101), 프록시 장치(104), 호스트 서버(106) 및 클라이언트 장치(108)는 각각 하드웨어 또는 펌웨어에 내장된 논리 또는 소프트웨어 명령들을 포함할 수 있다. 그리고 하드웨어는 게이트들(gates)이나 플립-플랍들(flip-flops)과 같은 논리 유닛들이 연결된 구성들이나 EPROM이나 EEPROM 과 같은 프로그램이 가능한 유닛들, 프로그램이 가능한 게이트 어레이들 또는 프로세서들로 구성될 수 있다. 게다가, 하드웨어는 독립형의 전용 장치나 소프트웨어를 가진 범용 컴퓨터로 구성될 수 있다.MFP device 101, proxy device 104, host server 106, and client device 108 may each include one or more software programs executed by one or more processors of the device or server. In addition, these processors may have a configuration based on Intel-based microprocessors. In addition, the MFP device 101, the proxy device 104, the host server 106, and the client device 108 may each include logic or software instructions embedded in hardware or firmware. And hardware may consist of configurations in which logical units such as gates or flip-flops are connected, programmable units such as EPROM or EEPROM, programmable gate arrays or processors. have. In addition, the hardware may consist of a standalone dedicated device or a general purpose computer with software.

도 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 MFP device 101 has two application specific functions 103 registered. These two applications, APP1 and APP2, respectively, correspond to custom applications running on host servers 106 located above each other as shown. Since these custom applications are already registered with the MFP device 101, the respective host servers 106 and the proxy device 104 are indicated by solid arrows. On the other hand, connecting the proxy device 104 and the host server 106 located at the bottom with a dotted line indicates that the custom application running on the host server 106 is currently in the state registered with the MFP device 101. will be. As one embodiment, the administrator may log in to the client device 108 and request that the proxy device 104 begin registration of a custom application running on the lowest-most host server 106. This registration process will be described in more detail later with reference to FIG. 4. FIG. 1B shows a state in which a custom application running on the lowest host server 106 has been registered with the MFP 101. In this case, the lowest host server 106 and the proxy device 104 are connected by a solid line, and three custom application functions 103 can be shown to the user in the MFP device 101, and the functions ( 103 can also be used.

도 1c는 MFP의 커스터마이즈 방법의 일 실시예를 흐름도로 도시한 것이다.1C illustrates a flowchart of one embodiment of a method for customizing an MFP.

122 단계에서, 등록하고자 하는 커스텀 애플리케이션에 대한 정보를 호스트 서버(106)에 알린다. 일 예로서, 관리자 등의 MFP 사용자는 클라이언트 장치(108)를 통하여 프록시 장치(104)에 접근할 수 있으며, 이 프록시 장치(104)를 통하여 호스트 서버(106)에 등록하고자 하는 커스텀 애플리케이션에 대한 정보를 알린다. 이 경우, 웹 서비스 기술 언어로 기술되는 소프트웨어 인터페이스를 통하여 등록하고자 하는 커스텀 애플리케이션에 대한 정보를 알릴 수 있으며, 이때의 커스텀 애플리케이션은 웹 서비스일 수 있다.In step 122, the host server 106 is notified of information about the custom application to be registered. As an example, an MFP user, such as an administrator, may access the proxy device 104 through the client device 108, and information about the custom application that is about to register with the host server 106 through the proxy device 104. Inform. In this case, information about a custom application to be registered may be notified through a software interface described in a web service description language, and the custom application may be a web service.

124 단계에서, 프록시 장치(104)에 커스텀 애플리케이션을 등록한다. 일 예로서, 122 단계에서 호스트 서버(106)에게 알려진 커스텀 애플리케이션에 대한 정보에 따른 커스텀 애플리케이션이 프록시 장치(104)에 등록된다. 도 4는 커스텀 애플리케이션을 MFP에 등록하기 위한 웹 클라이언트 인터페이스의 대화창의 일 예를 도시한 것이다. 일 실시예로서, 관리자 등의 사용자는 프록시 장치(104) 고유의 사용자 인터페이스를 이용하여 프록시 장치(104)와 직접적으로 연결할 수 있다. 또한 일 실시예로서, 프록시 장치(104)를 통한 등록을 막고, 커스텀 애플리케이션들이 MFP 장치(101)에 직접적으로 등록되도록 할 수도 있다.In step 124, the custom application is registered with the proxy device 104. As an example, in step 122, the custom application according to the information about the custom application known to the host server 106 is registered with the proxy device 104. 4 illustrates an example of a dialog of a web client interface for registering a custom application with the MFP. As an example, a user such as an administrator may directly connect with the proxy device 104 using a user interface specific to the proxy device 104. Also, as an example, registration may be prevented through the proxy device 104 and custom applications may be registered directly with the MFP device 101.

126 단계에서, 커스텀 애플리케이션이 프록시 장치(104)에 등록되었음을 MFP 장치(101)에 알려서 사용자들이 등록된 커스텀 애플리케이션을 이용할 수 있도록 된다. 이 경우, MFP 장치(101)는 커스텀 애플리케이션의 등록을 반영하여 업데이트된다.In step 126, the MFP device 101 is notified that the custom application has been registered with the proxy device 104 so that users can use the registered custom application. In this case, the MFP device 101 is updated to reflect the registration of the custom application.

128 단계에서, 사용자는 MFP 장치(101)에 알려진 커스텀 애플리케이션 중 이용하고자 하는 커스텀 애플리케이션을 선택함으로써 MFP(101)와 커스텀 애플리케이션 사이의 메시지 교환을 시작하게 하는 사용 가능한 커스텀 애플리케이션을 요청한다. 이러한 교환은 버튼 응답 시스템이라고 불린다. 이러한 사용자의 요청에 응답하여, MFP(101)는 커스텀 애플리케이션의 서비스를 요청한다. 일 실시예로서, 이 커스텀 애플리케이션들은 MFP 장치(101) 이외의 장치에서 작동하는 웹 서비스들일 수 있으며, 이러한 교환은 도 2 및 도 3a를 참조하여 다음에 보다 상세하게 설명한다.In step 128, the user requests the available custom application to start message exchange between the MFP 101 and the custom application by selecting the custom application to use from among the known custom applications of the MFP device 101. This exchange is called a button response system. In response to the user's request, the MFP 101 requests the service of the custom application. As one embodiment, these custom applications may be web services running on a device other than MFP device 101, and this exchange is described in more detail below with reference to FIGS. 2 and 3A.

130 단계에서, 커스텀 애플리케이션은 등록에서 제거된다. 일 실시예로서, 관리자 등의 사용자는 클라이언트 장치(108)를 통해 프록시 장치(104)와 연결하여 커스텀 애플리케이션을 등록에서 제거할 수 있다. 다른 일 실시예로서, 등록 뿐만 아니라 등록 제거는 자동적으로, 주기적으로, 또는 고정적이나 동적으로 일어날 수 있다.In step 130, the custom application is removed from registration. In one embodiment, a user, such as an administrator, may connect with the proxy device 104 via the client device 108 to remove the custom application from registration. In another embodiment, deregistration as well as registration may occur automatically, periodically, or statically or dynamically.

132 단계에서, MFP 장치(101)는 커스텀 애플리케이션이 등록에서 제거된 것을 반영하여 업데이트된다. 이 등록에서 제거된 애플리케이션은 다시 재등록되기 전에는 MFP(101)의 사용자들에 의해 사용될 수 없다.In step 132, the MFP device 101 is updated to reflect that the custom application has been removed from registration. Applications removed from this registration cannot be used by users of MFP 101 until they are re-registered again.

도 2는 MFP 장치(101), 프록시 장치(104), 호스트 서버(106) 및 클라이언트 장치(108)간의 메시지 교환을 도시한 것이다. 도 2의 빗금 친 버튼들은 사용자로부터 선택된 버튼들을 표시한 것이다.2 illustrates a message exchange between the MFP device 101, the proxy device 104, the host server 106, and the client device 108. The hatched buttons in FIG. 2 represent buttons selected by the user.

202 단계에서, 관리자 등의 사용자는 클라이언트 장치(108)에서 작동되는 웹 클라이언트 프로그램을 통해 커스텀 애플리케이션을 프록시 장치(104)에 등록시킨다. 이러한 등록 과정은 도 4를 참조하여 다음에 상세히 설명하기로 한다.In step 202, a user such as an administrator registers the custom application with the proxy device 104 through a web client program running on the client device 108. This registration process will be described in detail later with reference to FIG. 4.

204 단계에서, MFP 장치(101)는 프록시 장치(104)에게 새롭게 등록된 커스텀 애플리케이션이 있는지를 의미하는 업데이트 여부를 문의한다.In step 204, the MFP device 101 asks the proxy device 104 for an update indicating that there is a newly registered custom application.

206 단계에서, 프록시 장치(104)는 MFP 장치(101)에게 새 커스텀 애플리케이션이 등록되었음을 알리는 메시지를 보낸다. 이때, 새 커스텀 애플리케이션을 APP1 애플리케이션이라 칭하기로 한다. 그리고, 도시된 바와 같이 MFP 장치(101)는 APP1 커스텀 애플리케이션을 MFP 사용자들이 사용할 수 있도록 한다. 일 실시예로서, MFP 장치(101)와 APP1 애플리케이션 사이의 인터페이스는 웹 서비스 기술 언어(WSDL)로서 규정될 수 있다. 전에 언급한 바와 같이, 비록 도시된 실시예에 의하면 등록 과정은 프록시 장치(104) 상에서 이루어지나, 다른 실시예에 의하면 등록 과정은 MFP 장치(101)상에서 이루어질 수도 있다. In step 206, the proxy device 104 sends a message to the MFP device 101 indicating that a new custom application has been registered. In this case, the new custom application will be referred to as an APP1 application. As shown, the MFP device 101 enables the MFP users to use the APP1 custom application. In one embodiment, the interface between the MFP device 101 and the APP1 application may be defined as a web service description language (WSDL). As mentioned above, although the registration process is performed on the proxy device 104 according to the illustrated embodiment, the registration process may be performed on the MFP device 101 according to another embodiment.

208 단계에서, 사용자가 APP1 커스텀 애플리케이션을 선택함으로써 APP1 애플리케이션에 대한 버튼 응답 시스템을 시작하게 하면, MFP 장치(101)는 프록시 장치(104)에게 APP1 커스텀 애플리케이션에 의한 명령들을 요청하는 메시지를 보낸다. 그러면, 프록시 장치(104)는 이 APP1 커스텀 애플리케이션에 대응되는 호스트 서버(106)에 이 메세지를 전송한다.In step 208, if the user starts the button response system for the APP1 application by selecting the APP1 custom application, the MFP device 101 sends a message to the proxy device 104 requesting commands by the APP1 custom application. The proxy device 104 then sends this message to the host server 106 corresponding to this APP1 custom application.

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 step 210, the APP1 custom application operating in the host server 106 transmits the user interface to the MFP device 101 via the proxy device 104. The user interface at this time includes instructions for the UI screen displayed on the MFP device 101, and as shown, these UI commands satisfy XML-based templates configured to be recognized by the MFP device 101. do. In one embodiment, the requirements of this template may be disclosed to application developers, where the application developers refer to those who write UI commands that meet defined templates that are programmed to be recognized by the MFP device 101. As one embodiment, custom applications may pass template parameters in a constant parameter list and may pass template parameters of files corresponding to a format recognized by MFP device 101. When the proxy device 104 transmits UI commands to the MFP device 101, the MFP device 101 parses the received UI commands and displays these UI commands to the user. When the MFP device 101 displays the UI commands, the user may input data through an input unit (not shown) of the MFP device 101. At this time, the data input by the user is called user data. For example, the user can type a keyboard or number pad, select buttons that appear on the screen interface, use the stylus to enter numbers, letters, and symbols, and use a variety of other means. You can enter data. The user data thus input is then transmitted to the host server 106 via the proxy device 104. Although in the illustrated embodiment the MFP device 101 and the custom applications exchange UI commands and user data input by the user, in other embodiments the MFP device and the custom applications exchange other information through a proxy device. can do. For example, custom applications can send data extracted from an application-specific database, omit UI commands, or send dynamically generated data. In addition, the MFP device may process the user data and transmit the result, omit transmission of the user data, or transmit statically or dynamically generated data irrelevant to the data input by the user.

이러한 처리는 호스트 서버(106)가 사용자 데이터 전부를 전송받을 때까지 반복될 수 있다. 커스텀 애플리케이션이 사용자 데이터 전부를 전송받으면, 커스텀 애플리케이션은 MFP 장치(101)가 각 고유의 기능을 사용자가 사용할 수 있게 하도록 한다. 즉, 스캔된 이미지를 수신하면, 커스텀 애플리케이션은 스캔된 이미지와 UI 스크린들에 대응하여 입력된 데이터를 포함하는 사용자로부터 제출된 데이터를 처리한다. 예를 들면, 커스텀 애플리케이션은 스캔된 이미지로부터 OCR 소프트웨어를 사용하여 데이터를 추출하고, 추출된 데이터를 데이터 베이스에 저장할 수 있다. 또한, 일 실시예로서, 커스텀 애플리케이션들은 이 MFP 장치 고유의 기능과는 독립적으로 사용자 인터페이스를 통해 작동할 수도 있다.This process may be repeated until the host server 106 has received all of the user data. When the custom application receives all of the user data, the custom application causes the MFP device 101 to make each unique function available to the user. That is, upon receiving the scanned image, the custom application processes the data submitted from the user, including the input data corresponding to the scanned image and the UI screens. For example, a custom application can extract data from the scanned image using OCR software and store the extracted data in a database. In addition, as one embodiment, custom applications may operate via a user interface independently of the functionality specific to this MFP device.

사용자로부터 제출된 데이터를 처리한 후, 212 단계에서 호스트 서버(106)는 홈 스크린(home screen)으로 되돌아가라는 메시지를 송신한다. 그리고, 관리자는 214 단계에서 도시된 바와 같이, APP1 커스텀 애플리케이션을 등록에서 제거하는 것을 결정할 수 있다. APP1 커스텀 애플리케이션을 등록에서 제거한 후에, MFP 장치(101)는 프록시 장치(104)에 정기적인 업데이트 문의를 한다. 이 업데이트 문의를 받으면, 프록시 장치(104)는 MFP 장치(101)에 APP1 커스텀 애플리케이션이 더 이상 이용가능하지 않다는 것을 알리는 메시지를 전송한다.After processing the data submitted from the user, in step 212 the host server 106 sends a message to return to the home screen. The administrator can then decide to remove the APP1 custom application from registration, as shown in step 214. After removing the APP1 custom application from registration, the MFP device 101 makes a regular update query to the proxy device 104. Upon receiving this update query, proxy device 104 sends a message to MFP device 101 indicating that the APP1 custom application is no longer available.

도 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 step 302, when the MFP device 101 receives an instruction from the user to start a custom application, the MFP device 101 transmits a next UI screen request to the proxy device 104. In step 304, the proxy device 104 receives the next UI screen request and sends it to the host server 106. In step 306, the custom application running on the host server 106 receives this next UI screen request. In step 308, the custom application sends the following screen commands. As one example, the screen instructions may be an XML based UI template. In step 310, the proxy device 104 receives screen commands from the host server 106 and sends them to the MFP device 101. In step 312, the MFP device 101 receives these screen commands and displays a screen according to the received screen commands to a user of the MFP device 101. In step 314, the user inputs user data through the currently displayed screen, and the MFP device 101 receives the user data and transmits the user data to the proxy device 104. In step 316, the proxy device 104 receives this user data from the MFP device 101 and sends it to the host server 106. In step 318, the host server 106 receives this user data, and each custom application processes this user data on the host server 106. In step 320, if all of the screens are complete, the custom application proceeds to step 322. If the screens are not yet complete, the custom application proceeds to step 308 to send the next screen and wait for user input data.

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 proxy device 104 to receive data according to the inherent functionality of the MFP device 101. For example, the custom application can send instructions to receive the scanned data from the MFP device 101. In step 324, the proxy device 104 receives the commands from the host server 106 and transmits these commands to the MFP device 101. In step 326, the MFP device 101 receives these commands. In step 328, the MFP device 101 requests an image from the user and transmits the scanned data according to the image to the proxy device 104. In operation 330, the proxy apparatus 104 receives the scanned data from the MFP apparatus 101 and transmits the scanned data to the host server 106. In step 332, the host server 106 receives the scanned data. In step 334, the custom application processes the scanned data and sends a command to the MFO device 101 to return to the home screen. In step 336, the proxy device 104 sends this command to the MFP device 101. In step 338, the MFP device 101 receives a command to return to the home screen. In step 340, the MFP device 101 returns to the home screen.

도 3b는 이러한 버튼 응답 시스템에 따른 MFP 장치(101)의 일 예를 블록도로 도시한 것이다. 도 3b에 도시된 바와 같이, MFP 장치(101)는 인터페이스부(352), 제어부(354), 디스플레이부(356) 및 사용자 입력부(358)로 구성된다.3B is a block diagram illustrating an example of the MFP device 101 according to the button response system. As shown in FIG. 3B, the MFP device 101 includes an interface unit 352, a controller 354, a display unit 356, and a user input unit 358.

인터페이스부(352)는 호스트 서버(106)의 커스텀 애플리게이션으로부터 발송된 사용자 인터페이스를 프록시 장치(104)를 통해 수신하여, 제어부(354)에 전달하며, 제어부(354)의 제어에 따른 사용자 데이터를 프록시 장치(104)를 통해 호스트 서버(106)에 송신한다. 제어부(354)는 인터페이스부(352)를 통해 수신된 사용자 인터페이스를 디스플레이하도록 제어하고, 사용자 입력부(358)로부터 입력된 사용자 데이터를 인터페이스부(352)를 통해 호스트 서버(106)에 전송되도록 제어한다. 디스플레이부(356)는 제어부(354)의 제어를 받아, 인터페이스부(352)를 통해 수신된 사용자 인터페이스를 디스플레이한다. 사용자 입력부(358)는 사용자로부터 사용자 데이터를 입력받아 이를 제어부(354)에 전달한다.The interface unit 352 receives the user interface sent from the custom application of the host server 106 through the proxy device 104, transmits the user interface to the control unit 354, and transmits user data under the control of the control unit 354. It transmits to the host server 106 via the proxy apparatus 104. The controller 354 controls to display the user interface received through the interface unit 352, and transmits the user data input from the user input unit 358 to the host server 106 through the interface unit 352. . The display unit 356 displays the user interface received through the interface unit 352 under the control of the controller 354. The user input unit 358 receives user data from the user and transfers the user data to the controller 354.

도 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 registration dialog window 400. Referring to FIG. 4, the MFP device "Device Name_1" has two registration applications 402 called ePRO and Status Report. This registration dialog window 400 includes a Register button (Register New Application: 404) used to register a new application. This registration dialog window 400 also includes a registration data field 406. In the registration data field 406, a user such as an administrator can input an application name, an URL indicating the location of the custom application, and a related device such as "Device Name_1". Then, when the user clicks the "Apply" button, a new custom application is registered. In the illustrated embodiment, the new custom application is named "Patent Process", which is located in "// PatentWebService". This registration dialog window 400 also includes a registration removal data field 408. To remove registration, the administrator enters the application ID of the registered device and clicks the Unregister button.

도 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 Screen 1 502 includes the graphical interface components of TextBox1, TextBox2, ComboBox1, OkButton, and CancelButton. A UI template called Screen 2 504 includes the graphical interface components of TextBox1, ComboBox1, OkButton, and CancelButton. A UI template called Screen 3 506 includes the graphical interface components of Button1, Button2, Button3, and CancelButton. The UI template called screen 4 508 includes TextBox1, TextBox2, TextBox3, TextBox4, OkButton and CancelButton. UI templates called scan screen 510 include PaperSize, Orientation, ScanSide, Resolution, ScanMode, Darkness, EraseBackground, EraseEdge, Collate, FileFormat, FileQuality, Scaling, OkButton, CancelButton, ImageData, NumOfPages, TimStamp and Status.

도 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 device 101 of the MFP. FIG. 6A illustrates an example of an application dialog 600 showing a list 602 of workflows and custom applications 604 available. 6B, 6C, 6D, and 6E are also dialogs for the "Patent Process" custom application. The original chat window 620 provides an interface that allows the user to choose between new and existing publications. This initial chat window 620 corresponds to the Screen 2 504 template. The type dialog 640 provides an interface that allows the user to enter whether the new release is about software, hardware, or unknown. This type chat window 640 corresponds to the Screen 3 506 template. The scan dialog 660 shows a number of data inputs corresponding to the "Patent Process" custom application. The current public dialog 680 shows an existing public group. This dialog appears when the user selects an existing publishing option in the initial dialog 620. This current public dialog 680 corresponds to the Screen 2 504 template.

본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 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 MFP device 101, the proxy device 104, the host server 106, and the client device 108.

도 3a는 도 2의 208 단계 내지 212 단계에 따른 버튼 응답 시스템을 더욱 상세하게 도시한 것이다.3A illustrates in more detail the button response system according to steps 208 to 212 of FIG.

도 3b는 도 3a의 버튼 응답 시스템에 따른 MFP 장치(101)의 일 예를 블록도로 도시한 것이다.3B is a block diagram illustrating an example of the MFP device 101 according to the button response system of FIG. 3A.

도 4는 등록 대화 창(400)의 일 실시예를 도시한 것이다.4 illustrates one embodiment of a registration dialog window 400.

도 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)

프록시 장치(proxy device)를 이용한 화상 형성 장치의 커스터 마이즈 방법에 있어서, 상기 프록시 장치는,In the method of customizing an image forming apparatus using a proxy device, the proxy apparatus, 등록하고자 하는 소정 애플리케이션에 대한 정보를 상기 소정 애플리케이션을 구비하는 호스트 서버에 알리는 단계;Informing a host server including the predetermined application of information on a predetermined application to be registered; 상기 알려진 소정 애플리케이션을 상기 프록시 장치(proxy device)에 등록하는 단계; 및Registering the known predetermined application with the proxy device; And 상기 소정 애플리케이션이 상기 프록시 장치에 등록되었음을 화상 형성 장치에 알리는 단계를 포함하는 것을 특징으로 하는 화상 형성 장치의 커스터마이즈 방법.Informing the image forming apparatus that the predetermined application has been registered with the proxy apparatus. 제 1 항에 있어서, 상기 호스트 서버에 알리는 단계는The method of claim 1, wherein the notifying the host server 상기 프록시 장치가 웹 서비스 기술 언어(WSDL)로 기술되는 소프트웨어 인터페이스를 통하여 알리고, 상기 소정 애플리케이션은 웹 서비스인 것을 특징으로 하는 화상 형성 장치의 커스터마이즈 방법.Wherein said proxy device is informed via a software interface described in a web service description language (WSDL), said predetermined application being a web service. 제 2 항에 있어서, 상기 소프트웨어 인터페이스는The method of claim 2, wherein the software interface is 상기 소정 애플리케이션이 사용할 수 있는 XML 기반의 사용자 인터페이스 템플릿들에 대한 규정을 포함하는 것을 특징으로 하는 화상 형성 장치의 커스터마이즈 방법.And a rule for XML-based user interface templates that can be used by the given application. 호스트 서버의 어플리케이션이 프록시 장치에 등록되었음을 알리는 메세지를 수신하는 단계;Receiving a message indicating that an application of the host server has been registered with the proxy device; 상기 호스트 서버의 애플리케이션으로부터 발송된 사용자 인터페이스를 상기 프록시 장치를 통하여 제공받는 단계; 및Receiving a user interface sent from an application of the host server through the 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 apparatus; 상기 제공된 데이터는 상기 애플리케이션에 의해 처리되는 것을 특징으로 하는 화상 형성 장치의 애플리케이션 실행 방법.And said provided data is processed by said application. 제 4 항에 있어서,5. The method of claim 4, 상기 애플리케이션에 필요한 데이터가 모두 제공될 때까지, 상기 화상 형성 장치와 상기 호스트 서버 간에 상기 사용자 인터페이스 및 상기 데이터를 교환하는 것을 특징으로 하는 화상 형성 장치의 애플리케이션 실행 방법.And exchanging the user interface and the data between the image forming apparatus and the host server until all data necessary for the application is provided. 제 4 항에 있어서,5. The method of claim 4, 상기 사용자 인터페이스는 상기 화상 형성 장치 상의 사용자 인터페이스 스크린을 구성하기 위한 XML 기반의 명령을 포함하고, The user interface includes XML-based instructions for constructing a user interface screen on the image forming apparatus; 상기 사용자 인터페이스 스크린은 데이터를 입력받을 수 있도록 구성되는 것을 특징으로 하는 화상 형성 장치의 애플리케이션 실행 방법.And the user interface screen is configured to receive data. 제 4 항에 있어서,5. The method of claim 4, 상기 사용자 인터페이스는 상기 화상 형성 장치상에 디스플레이되는 UI 스크린을 위한 명령들을 포함하며, 상기 포함된 명령들은 XML 기반의 템플릿을 충족시키는 것을 특징으로 하는 화상 형성 장치의 애플리케이션 실행 방법.And the user interface includes instructions for a UI screen displayed on the image forming apparatus, wherein the included instructions satisfy an XML based template. 등록하고자 하는 소정 애플리케이션을 상기 소정 애플리케이션을 구비하는 호스트 서버에 알리는 클라이언트 장치;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 상기 등록된 소정 애플리케이션을 디스플레이하는 화상 형성 장치를 포함하는 것을 특징으로 하는 커스텀 애플리케이션 제공 시스템.And an image forming apparatus for displaying the registered predetermined application. 제 8 항에 있어서, 상기 호스트 서버에 알리는 것은9. The method of claim 8, wherein informing the host server is 웹 서비스 기술 언어(WSDL)로 기술되는 소프트웨어 인터페이스를 통하여, 알리는 것을 특징으로 하는 커스텀 애플리케이션 제공 시스템.A custom application providing system, characterized by informing via a software interface described in Web Services Description Language (WSDL). 제 9 항에 있어서, 상기 소프트웨어 인터페이스는10. The system of claim 9, wherein the software interface is 상기 소정 애플리케이션이 상기 화상 형성 장치의 사용자 인터페이스 디스플레이를 구성하기 위해 사용하는, XML 기반의 사용자 인터페이스 템플릿을 규정하는 것을 특징으로 하는 커스텀 애플리케이션을 제공하는 시스템.A system for providing a custom application, characterized in that it defines an XML-based user interface template that the given application uses to configure a user interface display of the image forming apparatus. 호스트 서버의 어플리케이션이 프록시 장치에 등록되었음을 알리는 메세지를 수신하고, 상기 호스트 서버의 애플리케이션으로부터 발송된 사용자 인터페이스를 상기 프록시 장치를 통하여 제공받는 인터페이스부; 및An interface unit receiving a message indicating that an application of a host server is registered with a proxy device, and receiving a user interface sent from an application of the host server through the proxy device; And 상기 제공된 사용자 인터페이스를 디스플레이하도록 제어하는 제어부를 포함하며,A control unit for controlling to display the provided user interface, 상기 인터페이스부는 상기 디스플레이된 사용자 인터페이스를 이용하여 데이터가 입력되면, 상기 입력된 데이터를 상기 프록시 장치를 통하여 상기 호스트 서버의 애플리케이션에 제공하는 것을 특징으로 하고, 상기 제공된 데이터는 상기 애플리케이션에 의해 처리되는 데이터인 것을 특징으로 하는 화상 형성 장치.When the data is input using the displayed user interface, the interface unit provides the input data to the application of the host server through the proxy apparatus, and the provided data is data processed by the application. An image forming apparatus, characterized in that. 제 11 항에 있어서,The method of claim 11, 상기 사용자 인터페이스는 웹 서비스 기술 언어(WSDL)로 기술되고, 상기 소정 애플리케이션은 웹 서비스인 것을 특징으로 하는 화상 형성 장치.The user interface is described in a web service description language (WSDL), and the predetermined application is a web service. 제 11 항에 있어서, 상기 사용자 인터페이스는The method of claim 11, wherein the user interface is 상기 사용자 인터페이스 디스플레이를 배열하는 XML 기반의 명령으로 구성되는 것을 특징으로 하는 화상 형성 장치.And an XML-based command for arranging the user interface display. 제 1 항 내지 제 3 항의 방법 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.A computer-readable recording medium having recorded thereon a program for executing the method of any one of claims 1 to 3 on a computer.
KR1020080021561A 2007-04-24 2008-03-07 System and method to customize for a image forming apparatus KR101238364B1 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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