KR20010105756A - Application programming interface for developing computer telephony interface service program and operating method thereof - Google Patents
Application programming interface for developing computer telephony interface service program and operating method thereof Download PDFInfo
- Publication number
- KR20010105756A KR20010105756A KR1020000026637A KR20000026637A KR20010105756A KR 20010105756 A KR20010105756 A KR 20010105756A KR 1020000026637 A KR1020000026637 A KR 1020000026637A KR 20000026637 A KR20000026637 A KR 20000026637A KR 20010105756 A KR20010105756 A KR 20010105756A
- Authority
- KR
- South Korea
- Prior art keywords
- module
- prompt
- service program
- service
- voice
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
Abstract
Description
본 발명은 네트워크 상에서 서비스를 제공하는 서비스 시스템의 음성, 팩스, 호 정보를 처리하기 위한 하드웨어를 제어하는 방법에 관한 것으로서, 특히 기술의 발전과 사용자의 요구에 따라서 서비스 시스템의 하드웨어를 변경하는 경우에도, 하드웨어 독립적인(hardware-independent) 하드웨어 제어 시스템에 관한 것이다.The present invention relates to a method of controlling hardware for processing voice, fax, and call information of a service system that provides a service on a network. In particular, when the hardware of the service system is changed according to the development of technology and the user's request, It relates to a hardware-independent hardware control system.
네트워크 상에서 서비스를 제공하는 서비스 시스템의 음성, 팩스, 호 정보 처리를 위한 하드웨어를 제어하기 위하여, 각 하드웨어를 공급하는 회사에서 제공하는 API(application programming interface) 라이브러리(library)를 사용하여 하드웨어 제어 프로그램을 개발하거나, 하드웨어 공급 회사에서 제공하는 하드웨어 제어 프로그램을 사용하는 방식이 사용되고 있다.In order to control hardware for processing voice, fax, and call information of service system that provides service on network, hardware control program is used by using API (application programming interface) library provided by each hardware supplier. The development or use of a hardware control program provided by a hardware supplier is used.
미합중국 특허 제5,826,030호 및 제5,892,950호에 개시되어 있는 서비스 시스템 제어 함수 제공을 위한 API 생성 기술은 특정 하드웨어를 제어하기 위한 API를 개발하는 데 있어서, C 또는 C++ 프로그래밍 언어를 통하여 사용할 수 있는 API를 제공함으로서, 서비스 프로그램 개발자는 API에 등록되어 있는 하드웨어 제어 함수를 사용하여 프로그램을 개발하고, 개발된 프로그램은 특정 하드웨어를 직접 제어할 수 있게 하는 방식을 사용하고 있다.API generation techniques for providing service system control functions disclosed in US Pat. Nos. 5,826,030 and 5,892,950 provide APIs that can be used through C or C ++ programming languages in developing APIs for controlling specific hardware. By doing so, a service program developer develops a program using a hardware control function registered in an API, and the developed program uses a method of directly controlling specific hardware.
그런데, 전술한 미합중국 특허에 개시되어 있는 서비스 프로그램 개발을 위한 API 생성 기술은 특정 하드웨어만을 제어할 수 있는 API를 제공할 수 있으며, 같은 역할을 수행하는 다른 종류의 하드웨어를 사용하게 될 경우 하드웨어 제어를 위한 API를 다시 개발하고, 이를 사용한 서비스 프로그램을 다시 개발해야 한다는 문제점이 있다.However, the API generation technology for developing a service program disclosed in the above-described US patent may provide an API capable of controlling only specific hardware, and when using other types of hardware performing the same role, hardware control may be performed. There is a problem in that the API must be re-developed and the service program using the same must be re-developed.
더욱이, 서비스 프로그램을 개발하여 서비스 시스템을 운영하던 중에 하드웨어를 변경하게 되는 경우, 서비스 프로그램을 다시 개발해야 한다는 문제점에 부가하여 서비스 프로그램 개발자는 변경된 하드웨어를 제어하는 API를 직접 개발하거나 하드웨어 제작 업체에서 제공하는 API를 다시 습득하여 서비스 프로그램을 개발해야 한다는 부담을 감당하여야 한다.Furthermore, in the event that hardware is changed while operating a service system by developing a service program, in addition to the problem of re-developing the service program, the service program developer may develop an API to control the changed hardware or provide it from a hardware manufacturer. It must bear the burden of re-learning APIs to develop service programs.
따라서, 하드웨어의 종류 또는 하드웨어의 변경에 따라서 각 하드웨어를 제어하는 명령어 체계를 습득하고 서비스 프로그램을 개발해야 하는 개발자의 입장에서는, 통일된 하드웨어 제어 명령을 사용하여 서비스 프로그램을 개발할 수 있는 방법의 출현이 절실히 요구되고 있다.Therefore, in view of a developer who needs to acquire a command system for controlling each hardware according to a kind of hardware or a change of hardware and develop a service program, the emergence of a method of developing a service program using a unified hardware control command has occurred. There is an urgent need.
따라서, 본 발명의 제1 목적은 네트워크 상에서 서비스를 제공하는 서비스 시스템을 구축하고 관리하는데 있어서, 생산성과 효율성을 높일 수 있는 음성, 팩스 정보 처리를 위한 하드웨어 제어 프로그램 개발 방법 및 시스템을 제공하는 데 있다.Accordingly, a first object of the present invention is to provide a method and system for developing a hardware control program for processing voice and fax information that can increase productivity and efficiency in constructing and managing a service system for providing a service on a network. .
본 발명의 제2 목적은 제1 목적에 부가하여, 네트워크 상에서 서비스를 수행하는 서비스 시스템에서 음성, 팩스 정보 처리를 위한 각 하드웨어를 제어하는 명령어 체계를 하드웨어 종류에 따라서 생성해 놓음으로서, 하드웨어 제작사 또는 종류와 무관하게 하드웨어 제어 프로그램을 개발할 수 있는 방법 및 시스템을 제공하는 데 있다.The second object of the present invention is, in addition to the first object, by creating a command system for controlling each hardware for voice, fax information processing in a service system that performs a service on a network, depending on the type of hardware, To provide a method and system for developing a hardware control program regardless of the type.
도1은 본 발명에 따른 통합 API 시스템의 구성의 일 실시예를 나타낸 도면.1 is a view showing an embodiment of the configuration of the integrated API system according to the present invention.
도2는 본 발명에 따른 통합 API 시스템을 구동시키는 방법을 나타낸 작업 흐름도의 일 실시예를 나타낸 도면.Figure 2 illustrates one embodiment of a work flow diagram illustrating a method of driving an integrated API system in accordance with the present invention.
도3은 본 발명에 따른 리소스 서버의 RMP 모듈을 운용하는 방법을 나타낸 작업 흐름도의 일 실시예를 나타낸 도면.Figure 3 illustrates an embodiment of a work flow diagram illustrating a method of operating an RMP module of a resource server in accordance with the present invention.
도4는 본 발명에 따른 리소스 서버의 PMP 모듈을 운용하는 방법을 나타낸 작업 흐름도의 일 실시예를 나타낸 도면.Figure 4 illustrates an embodiment of a work flow diagram illustrating a method of operating a PMP module of a resource server in accordance with the present invention.
상기 목적을 달성하기 위하여, 본 발명은 네트워크 서비스 시스템에 있어서 다양한 하드웨어 제작사에서 제공하는 음성 처리 보드(board)와 팩스 처리 보드들에 대하여, 하드웨어 종류와는 독립적으로 하드웨어를 제어하는 서비스 프로그램을 개발할 수 있는 통합 API(application programming interface) 시스템을 제공한다.In order to achieve the above object, the present invention can develop a service program for controlling the hardware independently of the type of hardware for voice processing board (board) and fax processing boards provided by various hardware manufacturers in the network service system Provide an integrated application programming interface (API) system.
본 발명에 따른 통합 API 시스템은 서비스 시스템에서 사용될 수 있는 다양한 종류의 음성 처리 보드와 팩스 처리 보드들에 대하여, 각 하드웨어 보드를 제어하는 명령어 체계를 미리 생성해 놓음으로서, 음성 처리 보드와 팩스 처리 보드의 종류에 따른 제어 명령어 생성 작업이 필요 없는 서비스 프로그램 개발 환경을 제공한다.The integrated API system according to the present invention generates a command system for controlling each hardware board in advance for various types of voice processing boards and fax processing boards that can be used in a service system, thereby creating a voice processing board and a fax processing board. Provides service program development environment that does not need control command generation work according to type.
본 발명에 따른 통합 API 시스템은 음성 처리 보드 및 팩스 처리 보드와, 음성 및 팩스 정보를 지칭하는 리소스(resource)를 처리하기 위한 리소스 제어 프로세스 모듈과, 리소스 제어 프로세스 모듈을 관리하는 리소스 관리 프로세스(resource management process; 이하 'RMP'라 칭함) 모듈과, 리소스 제어 프로세스 모듈들이 공통으로 사용하는 음성 안내 메시지에 해당하는 프롬프트 (prompt)를 생성하고 관리하는 프롬프트 관리 프로세스(prompt management process; 이하 'PMP'라 칭함) 모듈과, 프롬프트 데이터를 저장하고 리소스 제어 프로세스에서 공유하여 사용하기 위한 공유 메모리(shared memory) 모듈 등을 포함하는 리소스 서버를 구성함으로서, 서비스 프로그램과는 제어 메시지만을 통신하도록 하여 다양한 프로그래밍 언어를 사용하여 서비스 프로그램을 개발할 수 있는 환경을 제공한다.The integrated API system according to the present invention includes a resource processing process module for managing a voice processing board and a fax processing board, a resource referring to voice and fax information, and a resource control process module. management process (hereinafter referred to as RMP) module and prompt management process (PMP) to create and manage prompts corresponding to voice prompt messages commonly used by resource control process modules. By configuring a resource server including a module and a shared memory module for storing prompt data and sharing and using it in a resource control process, it is possible to communicate only control messages with a service program so that various programming languages can be used. To develop a service program Provide an environment.
본 발명에 따른 통합 API 시스템은 리소스 제어 프로세스 모듈을 통하여 음성 처리 보드 및 팩스 처리 보드를 제어하도록 하여, 음성 처리 보드 또는 팩스 처리 보드의 변경에 대하여 리소스 제어 프로세스 모듈만을 변경하도록 함으로써, 서비스 프로그램 개발자는 하드웨어 변경에 따른 제어 명령어 수정에 소요되는 시간과 노력을 단축시킨다.The integrated API system according to the present invention allows the voice processing board and the fax processing board to be controlled through the resource control process module so that only the resource control process module is changed in response to the change of the voice processing board or the fax processing board. Reduce the time and effort required to modify control instructions due to hardware changes.
본 발명에 따른 통합 API 시스템은 하드웨어 변경에 따른 제어 함수의 변경을 리소스 서버의 리소스 제어 프로세스 모듈에서만 수행하면 되도록 하고, 서비스 프로그램은 리소스 서버의 외부 터미널에서 본 발명에 따른 통합 API를 사용하여 작성하고 제어 메시지만을 리소스 서버로 전송하는 방법을 사용함으로써, 서비스 프로그램 개발자는 음성 처리 보드 또는 팩스 처리 보드의 변경에 따른 새로운 제어 명령을 생성할 필요가 없다.The integrated API system according to the present invention only needs to perform a change of a control function according to a hardware change only in a resource control process module of a resource server, and a service program is written using an integrated API according to the present invention in an external terminal of the resource server. By using the method of transmitting only control messages to the resource server, the service program developer does not need to generate a new control command according to the change of the voice processing board or the fax processing board.
이하, 본 발명에 따른 통합 API 시스템 및 서비스 프로그램 개발 방법의 양호한 실시예를 첨부 도면 도1 내지 도4를 참조하여 상세히 설명한다.Hereinafter, preferred embodiments of the integrated API system and service program development method according to the present invention will be described in detail with reference to the accompanying drawings.
도1은 본 발명에 따른 통합 API 시스템의 구성을 나타낸 도면이다. 도1을 참조하면, 네트워크 상에서 서비스를 제공하는 서비스 시스템의 서비스 프로그램을 개발하기 위한 통합 API 시스템을 구성하는 클라이언트 시스템(100)과 리소스 서버(130)가 도시되어 있다.1 is a view showing the configuration of an integrated API system according to the present invention. Referring to FIG. 1, there is shown a client system 100 and a resource server 130 constituting an integrated API system for developing a service program of a service system that provides a service on a network.
본 발명에 따른 리소스 서버(130)에서는 음성 정보를 처리하는 음성 처리 보드(180, 181)들과 각 음성 처리 보드를 제어하는 음성 제어 프로세스(voice control process; 이하 VCP라 칭함) 모듈(170, 171), 팩스 정보를 처리하는 팩스 처리 보드(182)들과 각 팩스 처리 보드를 제어하는 팩스 제어 프로세스(fax control process; 이하 FCP라 칭함) 모듈(172), VCP 모듈 및 FCP 모듈들을 지칭하는 리소스 제어 모듈들을 관리하는 RMP 모듈(140), 서비스 수행 시에 사용하게 될 음성 안내 메시지를 지칭하는 프롬프트를 관리하는 PMP 모듈(150), 리소스 제어 모듈들이 프롬프트 정보를 공유하여 사용할 수 있도록 프롬프트 정보를 저장하는 공유 메모리(shared memory)(160) 모듈 등을 사용하여, 네트워크 상에서 음성 서비스 및 팩스 서비스를 수행한다.In the resource server 130 according to the present invention, the voice processing boards 180 and 181 for processing voice information and a voice control process (hereinafter referred to as VCP) modules 170 and 171 for controlling the respective voice processing boards. Resource control refers to the fax processing boards 182 for processing fax information and the fax control process (hereinafter referred to as FCP) module 172, the VCP module, and the FCP modules that control each fax processing board. RMP module 140 for managing the module, PMP module 150 for managing a prompt indicating a voice prompt message to be used when performing the service, resource control module to store the prompt information to share the prompt information for use Using a shared memory 160 module or the like, voice and fax services are performed on the network.
본 발명에 따른 VCP 모듈(170, 171) 및 FCP 모듈(172)은 음성 처리 보드(180, 181) 및 팩스 처리 보드(182)의 종류에 따라서 제조 업체에서 제공하는 API를 사용하여 음성 처리 보드 및 팩스 처리 보드를 직접 제어하는 함수들로 구성된다.The VCP modules 170 and 171 and the FCP module 172 according to the present invention use a voice processing board using an API provided by a manufacturer according to the type of the voice processing boards 180 and 181 and the fax processing board 182. It consists of functions that directly control the fax processing board.
본 발명에 따른 RMP 모듈(140)은 리소스 서버(130)의 초기 구동 시에 생성되어 PMP 모듈(150)을 생성하고, 서비스 프로그램의 요청에 따라서 음성 처리 보드 및 팩스 처리 보드를 제어하기 위한 VCP 모듈(170, 171) 및 FCP 모듈(172)을 생성하고 관리한다. 본 발명에 따른 양호한 실시예로서, RMP 모듈(140)은 생성한 VCP 모듈(170, 171) 및 FCP 모듈(172)들을 통합 API(120)와 TCP/IP 연결을 맺어준다.The RMP module 140 according to the present invention is generated when the resource server 130 is initially driven to generate the PMP module 150, and a VCP module for controlling the voice processing board and the fax processing board according to a request of a service program. Create and manage 170, 171 and FCP module 172. In a preferred embodiment according to the present invention, the RMP module 140 establishes the TCP / IP connection with the integrated API 120 with the generated VCP modules 170 and 171 and the FCP modules 172.
본 발명에 따른 PMP 모듈(150)은 리소스 서버의 초기 구동 시에 파일 시스템으로부터 프롬프트로 사용될 음성 메시지 파일들을 읽어서 공유 메모리(160)에 저장한다. 본 발명에 따른 양호한 실시예로서, 공유 메모리에 저장하는 프롬프트 데이터는 서비스의 종류에 대응하는 프롬프트의 종류를 구분하는 프롬프트 세트 테이블(prompt set table)과 프롬프트 세트에 속하는 프롬프트 데이터의 목록을 저장하는 프롬프트 목록 테이블(prompt index table)과 프롬프트를 저장하는 프롬프트 데이터 테이블(prompt data table)로 구성될 수 있다.The PMP module 150 according to the present invention reads voice message files to be used as prompts from the file system when the resource server is initially started and stores them in the shared memory 160. In a preferred embodiment according to the present invention, the prompt data stored in the shared memory includes a prompt set table that distinguishes the types of prompts corresponding to the types of services and a list of prompt data belonging to the prompt set. It may consist of a prompt index table and a prompt data table that stores prompts.
본 발명에 따른 클라이언트 시스템(100)에서는 TCP/IP를 사용하여 리소스 서버(130)와 메시지를 주고받으면서 리소스 서버를 구성하는 각 모듈들을 제어하는 함수들로 구성된 통합 API(120)와 서비스 개발자가 통합 API를 사용하여 작성하는 서비스 프로그램(110)을 통하여 리소스 서버를 제어한다.In the client system 100 according to the present invention, a service API is integrated with an integrated API 120 composed of functions for controlling each module constituting a resource server while exchanging a message with the resource server 130 using TCP / IP. The resource server is controlled through the service program 110 written using the API.
본 발명에 따른 통합 API(120)는 TCP/IP를 통하여 리소스 서버와 메시지를 주고받으면서 리소스 서버에서 서비스를 수행하도록 제어하는 함수들의 모임으로 구성된다. 본 발명에 따른 양호한 실시예로서, 통합 API(120)는 리소스 서버와 메시지만을 통신하면 되므로, C, C++, Java 등과 같은 다양한 프로그래밍 언어로 생성할 수 있다.Integration API 120 according to the present invention consists of a collection of functions that control the service performed by the resource server while sending and receiving messages with the resource server via TCP / IP. As a preferred embodiment in accordance with the present invention, since the integration API 120 only needs to communicate with the resource server and the message, it can be generated in various programming languages such as C, C ++, Java, and the like.
본 발명에 따른 서비스 프로그램(110)은 서비스 개발자가 서비스를 수행할 시나리오에 따라서 리소스 서버를 제어하기 위하여, 통합 API(120)를 사용하여 리소스 서버와 통신하면서 서비스를 수행하기 위한 프로그램 모듈이다.The service program 110 according to the present invention is a program module for performing a service while communicating with a resource server using the integrated API 120 to control a resource server according to a scenario in which a service developer performs a service.
도2는 본 발명에 따른 통합 API 시스템을 구동시키는 방법을 나타낸 작업 흐름도이다. 도2를 참조하면, 리소스 서버의 초기 구동 시에 리소스 서버를 구성하는 각 프로세스 모듈들을 생성하고 관리하는 기능을 수행하는 RMP 모듈을 생성한다(S201).2 is a flowchart illustrating a method of driving an integrated API system according to the present invention. Referring to FIG. 2, an RMP module that generates and manages each process module constituting the resource server when the resource server is initially driven is generated (S201).
본 발명에 따른 양호한 실시예로서, RMP 모듈은 리소스 서버가 구동된 후, 클라이언트 시스템이 리소스 서버와 TCP/IP를 통하여 접속하는 통로가 되며, 클라이언트 시스템은 RMP 모듈을 통하여 리소스 서버를 구성하는 다른 모듈과 TCP/IP를 통하여 직접 연결하기 위한 정보를 수신한다.In a preferred embodiment according to the present invention, the RMP module is a path through which the client system connects to the resource server through TCP / IP after the resource server is driven, and the client system is another module configuring the resource server through the RMP module. Receive information to connect directly via TCP / IP.
이어서, RMP 모듈은 리소스 서버에서 프롬프트 데이터를 관리하기 위한 PMP모듈을 생성한다(S202). 생성된 PMP 모듈은 파일 시스템의 지정된 위치로부터 프롬프트로 사용할 음성 데이터 파일들을 읽어서 공유 메모리에 저장한다(S203).Subsequently, the RMP module generates a PMP module for managing the prompt data in the resource server (S202). The generated PMP module reads the voice data files to be used as a prompt from the designated location of the file system and stores them in the shared memory (S203).
본 발명에 따른 양호한 실시예로서, PMP 모듈은 리소스 서버의 초기 구동 시에 생성되면서, 네트워크 파일 시스템(network file system; 이하 NFS라 칭함)의 지정된 위치로부터 음성 파일을 읽어서 공유 메모리에 프롬프트 세트 테이블, 프롬프트 목록 테이블에 등록하고, 실제 음성이 저장되는 프롬프트 데이터 테이블을 저장한다.In a preferred embodiment according to the present invention, the PMP module is created at initial startup of a resource server, and reads a voice file from a designated location of a network file system (hereinafter referred to as NFS) to a set of prompts in shared memory, Register in the prompt list table and save the prompt data table in which the actual voice is stored.
본 발명에 따른 양호한 실시예로서, 통합 API는 리소스 서버를 구성하는 각 모듈로 서비스 수행을 위한 메시지만을 전달하는 기능을 수행하게 하고, 서비스 수행을 위하여 음성 처리 보드 및 팩스 처리 보드를 제어하는 역할은 리소스 서버에서 담당하게 함으로써, 하드웨어 보드의 변경에 따라서 서비스 프로그램 개발자가 하드웨어를 제어하는 함수를 추가적으로 개발하는 데 소모되는 시간과 노력을 감소시킨다.In a preferred embodiment according to the present invention, the integration API performs a function of delivering only a message for performing a service to each module constituting the resource server, and the role of controlling the voice processing board and the fax processing board to perform the service is By taking charge of the resource server, service program developers reduce the time and effort spent developing additional functions to control the hardware in response to changes in the hardware board.
본 발명에 따른 또다른 실시예로서, 서비스 제어 함수를 제공하는 통합 API는 리소스 서버의 RMP 모듈로 음성 처리 보드 및 팩스 처리 보드의 작동 시작 메시지를 전송하기 위하여, 보드의 종류, 보드의 슬롯 번호, 보드의 최대 채널 개수 등의 정보를 포함하는 보드 작동 시작 함수와, VCP 모듈 및 FCP 모듈로부터 음성 처리 보드 및 팩스 처리 보드 작동 시작 정보를 수신하는 보드 작동 시작 완료 함수와, 서비스 프로그램이 PMP 모듈과 서비스 제어 메시지를 통신하기 위한 서비스 제어 함수와, 서비스 제어 프로그램이 VCP 모듈 및 FCP 모듈과 통신하면서 음성 처리보드 및 팩스 처리 보드를 제어하기 위한 서비스 제어 함수 등을 포함하는 서비스 제어 함수들로 구성된다.In another embodiment according to the present invention, an integrated API providing a service control function is a board type, a slot number, a board type, for transmitting an operation start message of a voice processing board and a fax processing board to an RMP module of a resource server. A board operation start function that includes information such as the maximum number of channels on the board; a board operation start completion function that receives voice processing board and fax processing board operation start information from the VCP module and FCP module; And a service control function for communicating a control message, and a service control function including a service control function for controlling a voice processing board and a fax processing board while the service control program communicates with the VCP module and the FCP module.
이어서, 서비스 프로그램이 작동하면서, 서비스 프로그램이 리소스 서버의 RMP 모듈로 VCP 모듈 및 FCP 모듈 생성 요청 메시지를 전송하면, 리소스 서버의 RMP 모듈이 VCP 모듈 및 FCP 모듈을 생성하고 클라이언트 시스템과 TCP/IP 연결을 설정한다(단계 S205).Subsequently, when the service program is running, the service program sends a request for creating a VCP module and FCP module to the RMP module of the resource server, and the RMP module of the resource server generates the VCP module and FCP module and establishes a TCP / IP connection with the client system. Is set (step S205).
도3은 본 발명에 따른 리소스 서버의 RMP 모듈을 운용하는 방법을 나타낸 작업 흐름도이다. 도3을 참조하면, 리소스 서버의 초기 작동 시에 시스템 설정에 따라서 RMP 모듈이 생성되고, RMP 모듈은 PMP 모듈을 생성시킨 후에 외부로부터의 TCP/IP 접속을 대기한다(단계 S301).3 is a flowchart illustrating a method of operating an RMP module of a resource server according to the present invention. Referring to Fig. 3, an RMP module is generated according to system settings at the initial operation of the resource server, and the RMP module waits for an external TCP / IP connection after generating the PMP module (step S301).
이어서, 서비스 프로그램이 음성 처리 보드 및 팩스 처리 보드를 제어하여 서비스를 수행하기 위하여, 리소스 서버의 RMP 모듈과 접속하여 음성 처리 보드 구동 메시지 및 팩스 처리 보드 구동 메시지를 전송한다(S302). 본 발명에 따른 양호한 실시예로서, 서비스 프로그램이 제어하고자 하는 음성 처리 보드 및 팩스 처리 보드의 종류, 보드의 슬롯 번호, 보드의 최대 채널 개수 등의 정보를 포함하는 보드 작동 시작 메시지를 RMP 모듈로 전송한다.Subsequently, in order to perform a service by controlling a voice processing board and a fax processing board, the service program transmits a voice processing board driving message and a fax processing board driving message by accessing the RMP module of the resource server (S302). In a preferred embodiment according to the present invention, a board operation start message including information on types of voice processing boards and fax processing boards to be controlled by a service program, slot numbers of boards, and maximum number of channels of a board is transmitted to the RMP module. do.
이어서, RMP 모듈은 서비스 프로그램의 요청에 따라서 VCP 모듈과 FCP 모듈을 생성하고 클라이언트 시스템과 연결시킨다(S303). 본 발명에 따른 양호한 실시예로서, RMP 모듈은 음성 처리 보드를 제어하기 위한 VCP 모듈과 팩스 처리 보드를 제어하기 위한 FCP 모듈을 생성하고, 생성된 VCP 모듈 및 FCP 모듈로 서비스 프로그램과의 연결 소켓(socket) 정보를 넘겨주어 서비스 프로그램과의 TCP/IP 접속을 유지한다.Subsequently, the RMP module generates a VCP module and an FCP module according to a request of the service program and connects the client system with the client system (S303). According to a preferred embodiment of the present invention, the RMP module generates a VCP module for controlling a voice processing board and an FCP module for controlling a fax processing board, and generates a connection socket with a service program using the generated VCP module and FCP module. socket) to maintain the TCP / IP connection with the service program.
이어서, 리소스 서버에 생성된 VCP 모듈과 FCP 모듈을 관리하기 위하여 리소스 제어 프로세스 모듈들의 목록 정보를 저장하는 리소스 프로세스 테이블(resource process table)을 생성한다(S304). 본 발명에 따른 양호한 실시예로서, 리소스 프로세스 테이블은 RMP 모듈이 생성한 VCP 모듈 및 FCP 모듈들의 종류 및 슬롯 아이디(slot ID)와, 음성 처리 보드 및 팩스 처리 보드가 처리할 수 있는 최대 채널 개수 등으로 구성할 수 있다.Subsequently, in order to manage the VCP module and the FCP module generated in the resource server, a resource process table for storing list information of resource control process modules is generated (S304). In a preferred embodiment according to the present invention, the resource process table includes the type and slot ID of the VCP module and the FCP modules generated by the RMP module, the maximum number of channels that the voice processing board and the fax processing board can handle, and the like. It can be configured as.
도4는 본 발명에 따른 리소스 서버의 PMP 모듈을 운용하는 방법을 나타낸 작업 흐름도이다. 도4를 참조하면, PMP 모듈은 서비스 프로그램의 프롬프트 생성 요청 메시지를 수신하여, NFS의 특정 디렉토리로부터 프롬프트로 사용할 음성 파일들을 읽어서 공유 메모리에 프롬프트 세트 테이블, 프롬프트 목록 테이블, 프롬프트 데이터 테이블로 저장한다(S401).4 is a flowchart illustrating a method of operating a PMP module of a resource server according to the present invention. Referring to FIG. 4, the PMP module receives a prompt generation request message of a service program, reads voice files to be used as prompts from a specific directory of NFS, and stores them in a shared memory as a prompt set table, a prompt list table, and a prompt data table ( S401).
본 발명에 따른 양호한 실시예로서, 프롬프트 세트 테이블은 공유 메모리에 저장할 프롬프트 세트 번호, 프롬프트 세트 아이디, 프롬프트 목록 테이블이 저장된 위치, 프롬프트 저장 경로 등으로 구성될 수 있고, 프롬프트 목록 테이블은 프롬프트 번호, 프롬프트 데이터 테이블이 저장된 위치 등의 정보로 구성될 수 있고, 프롬프트 데이터 테이블은 NSF로부터 읽어들인 음성 파일인 프롬프트 데이터들로 구성될 수 있다.In a preferred embodiment according to the present invention, the prompt set table may be configured with a prompt set number to be stored in shared memory, a prompt set ID, a location where the prompt list table is stored, a prompt storage path, and the like. The data table may be configured with information such as a location where the data table is stored, and the prompt data table may be configured with prompt data, which is a voice file read from the NSF.
이어서, PMP 모듈이 서비스 프로그램으로부터 프롬프트 세트 아이디와 NFS에음성 파일이 저장된 경로를 포함한 프롬프트 세트 추가 요청 메시지를 수신하는 경우, 프롬프트 세트 아이디가 프롬프트 세트 테이블에 존재하지 않고 음성 파일 저장 경로에 프롬프트 세트 아이디를 파일 이름으로 가지는 음성 파일들이 존재하면 디렉토리에 존재하는 모든 음성 파일들을 읽어서 공유 메모리에 프롬프트 데이터 테이블을 생성하고 저장하고, 프롬프트 데이터 테이블을 지정하는 프롬프트 목록 테이블을 생성하고, 프롬프트 세트 테이블에 새로운 프롬프트 세트를 추가하고 프롬프트 세트 아이디와 프롬프트 목록 테이블이 공유 메모리에 저장된 위치 정보를 저장하고, 프롬프트 세트 테이블 추가 완료 메시지를 서비스 프로그램으로 전송한다.Subsequently, when the PMP module receives a prompt set request message from the service program, including the prompt set ID and the path where the voice files are stored on the NFS, the prompt set ID does not exist in the prompt set table and the prompt set ID does not exist in the voice file storage path. If there are voice files with the file name, read all voice files in the directory to create and save a prompt data table in shared memory, create a prompt list table specifying the prompt data table, and create a new prompt in the prompt set table. Adds a set, stores the location information stored in shared memory by the prompt set ID and prompt list tables, and sends a prompt set table add completion message to the service program.
본 발명에 따른 PMP 모듈이 서비스 프로그램으로부터 프롬프트 세트 아이디와 NSF의 음성 파일 저장 경로 정보를 포함한 프롬프트 세트 수정 요청 메시지를 수신하는 경우, 프롬프트 세트 아이디가 프롬프트 세트 테이블에 존재하고 음성 파일 저장 경로에 프롬프트 목록 파일이 존재하면 프롬프트 목록 파일에 등록되어 있는 음성 파일들을 읽어서 공유 메모리에 프롬프트 데이터 테이블을 생성하고, 프롬프트 데이터 테이블을 지정하는 새로운 프롬프트 목록 테이블을 생성하고, 새로운 프롬프트 목록 테이블을 프롬프트 세트 테이블에 등록하고, 일정 시간이 지난 후 수정 전에 프롬프트 세트 테이블이 지정하고 있던 프롬프트 목록 테이블과 프롬프트 데이터 테이블을 공유 메모리에서 제거한 후, 프롬프트 세트 테이블 수정 완료 메시지를 서비스 프로그램으로 전송한다.When the PMP module according to the present invention receives a prompt set modification request message including a prompt set ID and NSF voice file storage path information from a service program, the prompt set ID exists in the prompt set table and the prompt list is stored in the voice file storage path. If the file exists, read the voice files registered in the prompt list file to create a prompt data table in shared memory, create a new prompt list table specifying the prompt data table, register a new prompt list table in the prompt set table, After a period of time has elapsed, the prompt list table and the prompt data table that were specified by the prompt set table were removed from shared memory. Send in grams.
본 발명에 따른 PMP 모듈이 서비스 프로그램으로부터 프롬프트 세트 아이디를 포함한 프롬프트 세트 제거 요청 메시지를 수신하는 경우, 프롬프트 세트 아이디가 프롬프트 세트 테이블에 존재하면 프롬프트 세트 아이디가 지정하는 프롬프트 목록 테이블과 프롬프트 데이터 테이블을 제거하고, 프롬프트 세트 제거 완료 메시지를 서비스 프로그램으로 전송한다(S402).When the PMP module according to the present invention receives a prompt set removal request message including a prompt set ID from a service program, if the prompt set ID exists in the prompt set table, the prompt list table and prompt data table designated by the prompt set ID are removed. In operation S402, the prompt set removal completion message is transmitted to the service program.
이어서, PMP 모듈이 서비스 프로그램으로부터 프롬프트 세트 아이디와 프롬프트 아이디를 포함하는 프롬프트 추가 요청 메시지를 수신하는 경우, 프롬프트 세트 아이디가 프롬프트 세트 테이블에 존재하고 프롬프트 아이디에 해당하는 음성 파일이 NFS의 데이터 파일 저장 경로에 존재하면 프롬프트 데이터 테이블에 음성 파일을 추가하고, 프롬프트 데이터 테이블에 추가된 프롬프트의 저장 위치를 프롬프트 목록 테이블에 추가하고, 프롬프트 추가 완료 메시지를 서비스 프로그램으로 전송한다.Subsequently, when the PMP module receives a prompt add request message containing a prompt set ID and a prompt ID from a service program, the prompt set ID exists in the prompt set table and the voice file corresponding to the prompt ID is stored in NFS's data file storage path. If exists, adds the voice file to the prompt data table, adds the storage location of the prompt added to the prompt data table to the prompt list table, and sends the prompt addition completion message to the service program.
본 발명에 따른 PMP 모듈이 서비스 프로그램으로부터 프롬프트 세트 아이디와 프롬프트 아이디를 포함한 프롬프트 수정 요청 메시지를 수신하는 경우, 프롬프트 세트 아이디가 프롬프트 세트 테이블에 존재하고 프롬프트 아이디가 프롬프트 목록 테이블에 존재하면 프롬프트 데이터 테이블에 수정된 프롬프트를 추가하고, 프롬프트 목록 테이블에 추가된 프롬프트 데이터가 공유 메모리에 저장된 위치 정보를 추가하고, 서비스 프로그램으로 프롬프트 수정 완료 메시지를 전송한다(S430).When the PMP module according to the present invention receives a prompt modification request message including a prompt set ID and a prompt ID from a service program, if the prompt set ID exists in the prompt set table and the prompt ID exists in the prompt list table, The modified prompt is added, the prompt data added to the prompt list table is added to the location information stored in the shared memory, and the prompt modification completion message is transmitted to the service program (S430).
본 발명에 따른 양호한 실시예로서, 수정 요청된 기존의 프롬프트 데이터를 수정된 프롬프트 데이터로 대체하지 않고, 수정된 프롬프트 데이터를 추가함으로써, 수정되기 전의 프롬프트 데이터와 수정된 프롬프트 데이터를 모두 사용할 수 있다.As a preferred embodiment according to the present invention, it is possible to use both the prompt data and the modified prompt data before the modification by adding the modified prompt data without replacing the existing prompt data with the modification request with the modified prompt data.
전술한 내용은 후술할 발명의 특허 청구 범위를 보다 잘 이해할 수 있도록 본 발명의 특징과 기술적 장점을 다소 폭넓게 개설하였다. 본 발명의 특허 청구 범위를 구성하는 부가적인 특징과 장점들이 이하에서 상술될 것이다. 개시된 본 발명의 개념과 특정 실시예는 본 발명과 유사 목적을 수행하기 위한 다른 구조의 설계나 수정의 기본으로서 즉시 사용될 수 있음이 당해 기술 분야의 숙련된 사람들에 의해 인식되어야 한다.The foregoing has outlined rather broadly the features and technical advantages of the present invention to better understand the claims of the invention which will be described later. Additional features and advantages that make up the claims of the present invention will be described below. It should be appreciated by those skilled in the art that the conception and specific embodiments of the invention disclosed may be readily used as a basis for designing or modifying other structures for carrying out similar purposes to the invention.
또한, 본 발명에서 개시된 발명 개념과 실시예가 본 발명의 동일 목적을 수행하기 위하여 다른 구조로 수정하거나 설계하기 위한 기초로서 당해 기술 분야의 숙련된 사람들에 의해 사용되어질 수 있을 것이다. 또한, 당해 기술 분야의 숙련된 사람에 의한 그와 같은 수정 또는 변경된 등가 구조는 특허 청구 범위에서 기술한 발명의 사상이나 범위를 벗어나지 않는 한도 내에서 다양한 변화, 치환 및 변경이 가능하다.In addition, the inventive concepts and embodiments disclosed herein may be used by those skilled in the art as a basis for modifying or designing other structures for carrying out the same purposes of the present invention. In addition, such modifications or altered equivalent structures by those skilled in the art may be variously changed, substituted, and changed without departing from the spirit or scope of the invention described in the claims.
이상과 같이, 본 발명에 따른 통합 API 시스템 및 서비스 프로그램 생성 방법은 네트워크 상에서 서비스를 수행하는 서비스 시스템에서 사용하는 다양한 종류의 음성 처리 보드와 팩스 처리 보드를 제어하는 서비스 프로그램을 개발하는 데 있어서, 음성 처리 보드와 팩스 처리 보드를 제어하는 프로세스 모듈과 서비스 프로그램을 개발하는 데 직접 사용하게 되는 제어 함수를 분리시키고, 서비스 프로그램에서는 통합 API에서 제공되는 제어 함수를 사용하게 하여, 서비스 프로그램 개발자는 변경되는 음성 처리 보드 및 팩스 처리 보드의 종류와는 독립적으로, 서비스 프로그램을 개발할 수 있다.As described above, the integrated API system and the service program generation method according to the present invention in developing a service program for controlling various types of voice processing boards and fax processing boards used in a service system that performs a service on a network, Separates the process modules that control the processing board and the fax processing board from the control functions that are used directly to develop the service program, and allows the service program to use the control functions provided by the integrated API, so that the service program developer can change the voice Independent of the type of processing board and fax processing board, a service program can be developed.
그 결과, 다양한 제품을 사용하는 음성 처리 보드 및 팩스 처리 보드에 대한 제어 함수를 개발하거나 보드의 변경에 따른 서비스 프로그램 개발에 소요되는 시간과 노력을 감소시킬 수 있다.As a result, it is possible to reduce the time and effort required to develop control functions for voice processing boards and fax processing boards using various products or to develop service programs according to the change of the board.
Claims (26)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020000026637A KR20010105756A (en) | 2000-05-18 | 2000-05-18 | Application programming interface for developing computer telephony interface service program and operating method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020000026637A KR20010105756A (en) | 2000-05-18 | 2000-05-18 | Application programming interface for developing computer telephony interface service program and operating method thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20010105756A true KR20010105756A (en) | 2001-11-29 |
Family
ID=19669049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020000026637A KR20010105756A (en) | 2000-05-18 | 2000-05-18 | Application programming interface for developing computer telephony interface service program and operating method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20010105756A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020031511A (en) * | 2000-10-20 | 2002-05-02 | 김영돈, 정춘보 | Method for producting pda application availible of variety hardware |
KR100462876B1 (en) * | 2002-03-14 | 2004-12-17 | 삼성전자주식회사 | Method for using standard platform of network equipments |
KR100487217B1 (en) * | 2003-01-06 | 2005-05-04 | 삼성전자주식회사 | Method and apparatus for performing common call processing management using common software platform |
KR100948750B1 (en) * | 2001-03-30 | 2010-03-22 | 콸콤 인코포레이티드 | Communication method and apparatus with quantized power in qam communication system |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR960032167A (en) * | 1995-02-28 | 1996-09-17 | 김광호 | How to create firmware |
KR970012172A (en) * | 1995-08-01 | 1997-03-29 | 구자홍 | BUS CONTROLLER DEVICE FOR MULTI-Microprocessors |
JPH0991143A (en) * | 1995-07-14 | 1997-04-04 | Sony Corp | Method and device for processing data |
KR0119286B1 (en) * | 1994-11-30 | 1997-10-04 | 양승택 | Static analyzer for supporting signal information |
KR20000019790A (en) * | 1998-09-15 | 2000-04-15 | 윤종용 | Module device in mpc860 processor |
KR20000027208A (en) * | 1998-10-27 | 2000-05-15 | 구자홍 | Multimedia middleware of a distributed processing system |
-
2000
- 2000-05-18 KR KR1020000026637A patent/KR20010105756A/en not_active Application Discontinuation
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR0119286B1 (en) * | 1994-11-30 | 1997-10-04 | 양승택 | Static analyzer for supporting signal information |
KR960032167A (en) * | 1995-02-28 | 1996-09-17 | 김광호 | How to create firmware |
JPH0991143A (en) * | 1995-07-14 | 1997-04-04 | Sony Corp | Method and device for processing data |
KR970012172A (en) * | 1995-08-01 | 1997-03-29 | 구자홍 | BUS CONTROLLER DEVICE FOR MULTI-Microprocessors |
KR20000019790A (en) * | 1998-09-15 | 2000-04-15 | 윤종용 | Module device in mpc860 processor |
KR20000027208A (en) * | 1998-10-27 | 2000-05-15 | 구자홍 | Multimedia middleware of a distributed processing system |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020031511A (en) * | 2000-10-20 | 2002-05-02 | 김영돈, 정춘보 | Method for producting pda application availible of variety hardware |
KR100948750B1 (en) * | 2001-03-30 | 2010-03-22 | 콸콤 인코포레이티드 | Communication method and apparatus with quantized power in qam communication system |
KR100462876B1 (en) * | 2002-03-14 | 2004-12-17 | 삼성전자주식회사 | Method for using standard platform of network equipments |
KR100487217B1 (en) * | 2003-01-06 | 2005-05-04 | 삼성전자주식회사 | Method and apparatus for performing common call processing management using common software platform |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11483689B1 (en) | Electronic subscriber identity module (eSIM) management platform | |
US20120158839A1 (en) | Wireless network interface with infrastructure and direct modes | |
US20130315235A1 (en) | Buffer transfer service | |
KR102441236B1 (en) | Software update management method, server, terminal, device, and storage medium | |
WO2017016210A1 (en) | Software version management method and apparatus | |
JP2010152917A (en) | System and method for establishing communication between peripheral device and wireless device | |
CN109547524B (en) | User behavior storage method, device, equipment and storage medium based on Internet of things | |
EP1843550B1 (en) | Transport medium selection to optimize device operation | |
JP2010501139A (en) | Database management in wireless communication systems | |
US20100291913A1 (en) | Remote control method between mobile phones | |
CN110324193A (en) | A kind of terminal upgrade management method and device | |
CN113572862A (en) | Cluster deployment method and device, electronic equipment and storage medium | |
KR20180100371A (en) | Data transfer method and device | |
TWI418178B (en) | Technique for controlling external communication of embedded device using proxy server | |
CN111435318A (en) | Dex optimization method of application program and terminal | |
KR20010105756A (en) | Application programming interface for developing computer telephony interface service program and operating method thereof | |
CN112261147A (en) | Method, device, terminal and storage medium for implementing high-rate coexisting network mode | |
KR101264315B1 (en) | Method, apparatus and record carrier for interworking between applications on a mobile platform | |
KR20110122996A (en) | Apparatus for executing application, method thereof and computer recordable medium storing the method | |
CN112380411B (en) | Sensitive word processing method, device, electronic equipment, system and storage medium | |
CN110650071B (en) | Access management method and device of user equipment and management server | |
CN114007202A (en) | Method for establishing binding relationship and related equipment | |
CN102077169A (en) | Handling messages in a computing device | |
KR100593843B1 (en) | An application program management system for a mobile telecommunication terminal | |
CN111885564A (en) | Data transmission method, equipment upgrading method and computer readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |