KR100265912B1 - Arrangement and method for telecommunication call processing - Google Patents
Arrangement and method for telecommunication call processing Download PDFInfo
- Publication number
- KR100265912B1 KR100265912B1 KR1019920020139A KR920020139A KR100265912B1 KR 100265912 B1 KR100265912 B1 KR 100265912B1 KR 1019920020139 A KR1019920020139 A KR 1019920020139A KR 920020139 A KR920020139 A KR 920020139A KR 100265912 B1 KR100265912 B1 KR 100265912B1
- Authority
- KR
- South Korea
- Prior art keywords
- call
- string
- symbol string
- function
- network
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M11/00—Telephonic communication systems specially adapted for combination with other electrical systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q3/00—Selecting arrangements
- H04Q3/42—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
- H04Q3/47—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker using translators
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q3/00—Selecting arrangements
- H04Q3/0016—Arrangements providing connection between exchanges
- H04Q3/0029—Provisions for intelligent networking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q3/00—Selecting arrangements
- H04Q3/42—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
- H04Q3/54—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
- H04Q3/545—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
- H04Q3/54508—Configuration, initialisation
- H04Q3/54533—Configuration data, translation, passwords, databases
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13541—Indexing scheme relating to selecting arrangements in general and for multiplex systems routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Signal Processing (AREA)
- Exchange Systems With Centralized Control (AREA)
- Telephonic Communication Services (AREA)
Abstract
호출 처리 장치(200)는 네트워크 번호 방식을 수학적/전자계산기과학적 의미의 언어로 간주하며 호출 처리에 대해 사전 편찬식 어프로우치를 한다. 번호 방식 구문은 트리 데이타 구조(320, 330)의 데이타에 의해 정의되며, 번호 방식 문법은 매트릭스 데이타 구조(400, 410)에서의 데이타에 의해 정의된다. 데이타 구조는 호출 관련 숫자 스트링의 의미를 결정하기 위해 그리고 상기 의미를 토대로 호출에 부여되는 처리(예, 루팅, 기능)를 지정하기 위해 번호 방식과는 독립된 기능에 의해 사용된다. 스트링 식별 기능(340)은 번호를 구성하는 숫자 스트링을 정의하는 리프(312)를 발견하기 위해 상기 트리 및 매트릭스로 수집된 숫자를 인가한다. 스트링 작용 기능(341)은 호출에 대해 호출 경로 지정 또는 호출 기능 지정 인덱스(254)를 형성하기 위해 발견된 리프에서 정의를 사용한다. 일반화 경로 선택 기능(343)은 다차원 매트릭스(1200, 1202)로부터 기동될 기능 모듈(205)이나 루팅 패턴번호(1201)중 하나를 선택하도록 경로/기능 지정 인덱스를 포함하는 제1 호출 특성들의 세트를 이용하고, 후자의 경우에는 루팅 패턴 우선도 테이블(1300)로부터 경로 우선도(1701)를 선택하기 위해 루팅 패턴 번호를 포함하는 제 2 호출 특성들의 세트를 이용한다. 숫자 송신 기능(344)은 송신 테이블(1700)로부터 숫자 송신정보(1701)의 엔트리를 선택하기 위해 경로 우선도를 사용하며, 호출 경로를 설정하고 숫자를 펄스 출력하기 위해 송신 정보를 사용한다. 숫자 수정 기능(343) 및 숫자 수정 테이블(1000) 또한 이를테면 하나 이상 정의되는 경우 다른 네트워크 번호 방식간의 번호 변환을 위해 제공된다.The call processing apparatus 200 regards the network numbering scheme as a language of mathematical / electronic calculator scientific meaning and performs a dictionary compilation approach to call processing. The numbering syntax is defined by the data in the tree data structures 320 and 330, and the numbering syntax is defined by the data in the matrix data structures 400 and 410. The data structure is used by a function independent of the numbering method to determine the meaning of the call-related numeric string and to specify the processing (e.g. routing, function) assigned to the call based on the meaning. The string identification function 340 applies the collected numbers into the tree and matrix to find the leaf 312 that defines the numeric string that makes up the number. The string action function 341 uses the definition in the leaf found to form a call routing or call function specification index 254 for the call. The generalization path selection function 343 selects a first set of call characteristics comprising a path / function specification index to select one of the function module 205 or the routing pattern number 1201 to be activated from the multidimensional matrix 1200, 1202. In the latter case, a second set of call characteristics, including the routing pattern number, is used to select the route priority 1701 from the routing pattern priority table 1300. The numeric transmission function 344 uses the path priority to select an entry of the numeric transmission information 1701 from the transmission table 1700, and uses the transmission information to set the call path and pulse the number. The number correction function 343 and the number correction table 1000 are also provided for number conversion between different network numbering schemes, for example when more than one is defined.
Description
제 1 도는 본 발명의 실시예를 구체화한 전화 시스템을 도시하는 블럭도.1 is a block diagram showing a telephone system embodying an embodiment of the present invention.
제 2 도는 제 1 도에 도시되어 있는 전화 시스템의 네트워크 번호 방식의 규약을 도시하는 블럭도.2 is a block diagram showing the protocol of the network numbering system of the telephone system shown in FIG.
제 3 도는 제 1 도에 도시되어 있는 전화 시스템의 스위칭 시스템의 메모리의 선택된 내용을 도시하는 블럭도.3 is a block diagram showing selected contents of a memory of the switching system of the telephone system shown in FIG.
제 4 도 내지 제 6 도는 제 3 도에 도시되어 있는 네트워크 숫자 분석의 구문 정의 데이타 구조를 도시하는 블럭도.4 through 6 are block diagrams showing the syntax definition data structure of the network number analysis shown in FIG.
제 7 도 및 제 8 도는 제 3 도에 도시되어 있는 네트워크 숫자 분석의 문법정의 데이타 구조를 도시하는 블럭도.7 and 8 are block diagrams showing the grammar definition data structure of the network number analysis shown in FIG.
제 9 도 내지 제 12 도는 제 3 도에 도시되어 있는 네트워크 숫자 분석의 스트링(string) 식별 기능에 대한 흐름도.9 through 12 are flow charts for the string identification function of the network numerical analysis shown in FIG.
제 13 도는 제 3 도에 도시되어 있는 네트워크 숫자 분석의 스트링 작용 기능에 대한 흐름도.FIG. 13 is a flow chart for the string functioning function of the network numerical analysis shown in FIG.
제 14 도는 제 3 도에 도시되어 있는 숫자 수정의 데이타 구조를 도시하는 블럭도.FIG. 14 is a block diagram showing the data structure of the numerical correction shown in FIG.
제 15 도는 제 3 도에 도시되어 있는 숫자 수정의 기능에 대한 흐름도.FIG. 15 is a flow chart for the function of numeric correction shown in FIG.
제 16 도 내지 제 18 도는 제 3 도에 도시되어 있는 일반화 루트(route) 선택의 데이타 구조를 도시하는 블럭도.16 through 18 are block diagrams showing the data structure of the generalized route selection shown in FIG.
제 19 도는 제 3 도에 도시되어 있는 일반화 루트 선택의 기능에 대한 흐름도19 is a flow chart for the function of the generalized route selection shown in FIG.
제 20 도 및 제 21 도는 제 3 도에 도시되어 있는 숫자 송신의 데이타 구조를 도시하는 블럭도.20 and 21 are block diagrams showing the data structure of the numeric transmission shown in FIG.
제 22 도는 제 3 도에 도시되어 있는 숫자 송신의 기능에 대한 흐름도.FIG. 22 is a flow chart for the function of numeric transmission shown in FIG.
* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
10 : 시스템 11 : 프로세서10: system 11: processor
13 : 조직 12 : 메모리13: organization 12: memory
14 : 서비스 회로 16 : 트렁크14: service circuit 16: trunk
17 : 사용자 터미널 18 : 네트워크17: user terminal 18: network
본 발명은 전자 통신에 관한 것으로, 특히 전화 호출 처리 장치에 관한 것이다.TECHNICAL FIELD The present invention relates to electronic communications, and more particularly, to a telephone call processing apparatus.
[발명의 배경][Background of invention]
네트워크 번호 방식이란 원하는 서비스 및 접속을 얻기 위하여 사용자 터미널 등과 같은 통신 시스템의 한 부분이 스위칭 시스템 등과 같은 시스템의 또다른 한 부분에 제공해야 하는 신호를 정의하는 규약이다. 네트워크 숫자 번호 방식의 예는 미국과 캐나다의 공중 전화 네트워크에서 사용되는 7 내지 10 숫자의 북미 번호 방식과, 미국의 사설(예, 회사내) 전화 네트워크에서 사용되는 3 내지 7 숫자의 번호 방식이다. 각 번호 방식은 사전에 정의되어 있고, 엄격한 내부 논리 구조를 갖고 있다.Network numbering is a protocol that defines the signals that a part of a communication system, such as a user terminal, must provide to another part of a system, such as a switching system, in order to obtain desired services and connections. Examples of network numbering methods are the 7-10 numbered North American numbering method used in public telephone networks in the United States and Canada, and the 3-7 numbered numbering method used in private (eg, corporate) telephone networks in the United States. Each numbering scheme is predefined and has a strict internal logic structure.
스위칭 시스템의 호출 처리 장치는 종래에는, 특정 네트워크 번호 방식 또는 시스템에 대체 루팅 배치(본질적으로는 제 2 독립 호출 처리 장치)를 부가한 두 개의 방식을 지원하도록 설계되어 있다. 태스크(task)를 보다 용이하게 하고 보다 관리 가능하게 하기 위해서, 호출 처리 장치의 설계자들은 지원하고자 하는 번호 방식의 엄격한 구조를 이용한다. 설계자들은 호출 처리 장치의 기능 요소(예, 저장 프로그램 제어 스위칭 시스템의 경우에는 소프트웨어)의 설계에, 지원된 번호 방식의 구조로부터 도출될 수 있는 가설 및 규칙을 반영한다. 이것에 의해 설계자들은 지원된 번호 방식이 포함하지 않는 데이타, 논리 구성, 변화, 치환, 및 능력을 고려하여 그들을 설계에 포함시키지 않아도 된다. 이로서 호출 처리 장치는 보다 소형이며, 신속하며, 경제적으로 태스크의 처리를 합리화시킨다.The call processing apparatus of the switching system is conventionally designed to support a specific network number scheme or two schemes in which an alternative routing arrangement (essentially a second independent call processing apparatus) is added to the system. In order to make the task easier and more manageable, the designers of the call processing apparatus employ a strict structure of numbering to support. Designers incorporate hypotheses and rules in the design of functional elements of the call processing device (eg, software in the case of stored program controlled switching systems) that can be derived from the supported numbered scheme. This frees designers from considering data, logical constructs, changes, substitutions, and capabilities that are not included in the supported numbering schemes, and therefore does not include them in the design. This makes the call processing device more compact, faster, and economical to streamline task processing.
그러나, 호출 처리 장치의 설계에 대한 상기와 같은 어프로우치(approach)의 불리한 결과는, 결과로서 생기는 호출 처리 장치가 이것이 지원하는 번호 방식에 본질적이고 절대 필요하게 결합된다는 것이다. 이는 지원된 번호 방식의 변경 또는 확장을 지원하도록 상기 장치를 적합하게 하는 것이 매우 곤란하다는 것을 의미한다. 예를 들어, 사설 네트워크의 소유자는 네트워크의 번호 방식을 커스터마이즈(customize)하거나, 개인 전용화 하거나, 또는 확장시킬 수 없지만, 스위칭 시스템 제조자가 제공하는 것에 적합하다고 생각한 어떠한 능력이든지 강요당하게 된다. 또한, 예를 들어 제조자에 의해서 외국 판매용으로 스위칭 시스템을 개조할때 등의 일반적으로 발생하는 지원된 번호 방식의 전체적 변경은 일반적으로 호출처리 장치의 완전한 변경을 필요로 한다. 즉, 최초의 호출 처리 장치는 무시되어 새로운 번호 방식을 지원하도록 설계되어진 완전히 새로운 호출 처리 장치로 대체되어야 하는 것이다.However, the disadvantageous consequence of such an approach to the design of a call processing device is that the resulting call processing device is intrinsically and absolutely necessary to the numbering scheme it supports. This means that it is very difficult to fit the device to support a change or extension of the supported numbering scheme. For example, the owner of a private network cannot customize, personalize, or expand the numbering scheme of the network, but is forced to any ability that the switching system manufacturer considers suitable for providing. In addition, a general change in the generally supported numbering scheme, such as, for example, by a manufacturer for adapting a switching system for foreign sale, generally requires a complete change of the call processing device. In other words, the original call processing unit should be replaced with an entirely new call processing unit designed to support the new numbering scheme.
종래 기술은 상기 문제점을 인식하여, 호출 처리 장치가 번호 방식의 변형 또는 확장에 적합하도록 이 장치에 유연성을 제공하려는 시도가 행해졌다. 그러나, 이것은 일반적으로 그렇게 하여 얻어진 유연성의 양에 비하여 실현하기가 곤란하며 비경제적이었다. 이것은 대부분 호출 처리가 실현되어지는 방법에 대한 종래의 어프로우치로 인해, 간단히 말해서, 호출 처리는 일반적으로 거대한 패턴 매칭동작으로서 고려되어졌다. 패턴 매칭에 있어서, 가변 패턴 특징의 허용 가능한 모든 조합이 규정될 필요가 있으며 비교를 위해 사용 가능하게 되어야 한다. 이것은 번호 방식의 유연성의 모든 항목-적합하게 되는 모든 특징 및 특징 변화-은 호출처리 장치의 크기와 복잡도를 지수함수적으로 증가시키는 것을 의미한다. 그러므로, 종래 기술에서는 단지 제한된 번호 방식의 유연성만이 실현되었다.The prior art recognizes the above problem and attempts have been made to provide flexibility to the call processing device so that it is suitable for modification or extension of the numbering scheme. However, this was generally difficult to realize and uneconomical relative to the amount of flexibility thus obtained. This is largely due to the conventional approach to how call processing is realized, in short, call processing has generally been considered as a huge pattern matching operation. In pattern matching, all allowable combinations of variable pattern features need to be defined and made available for comparison. This means that every item of flexibility in numbering—all features and feature changes that fit—exponentially increases the size and complexity of the call processing device. Therefore, only limited number flexibility is realized in the prior art.
[발명의 요지][Summary of invention]
본 발명은 종래 기술의 상기 문제점 및 기타 다른 문제점들을 해결하기 위한 것이다. 본 발명에 의하면, 전체적으로 실제적인 번호 방식의 유연성을 지원하는 호출 처리 아기텍쳐가 제공되어 있다. 즉, 본 발명에 따라 구성된 호출 처리 장치는 실제적인 제한없이 임의의 번호 방식이라도 지원할 수 있으며, 또한 완전히 상이한 다수의 번호 방식 모두를 동시에 지원할 수 있다. 상기 아키텍쳐는 번호 방식이 수학적/계산기과학적 의미의 언어로서 마땅히 간주될 수도 있다는 발명자의 인식에 근거한 것이다. 그러므로 이러한 아키텍쳐는 호출 처리에 대해 사전 편찬식 어프로우치를 하는데, 이것은 번호 방식의 문법 및 구문을 정의하고, 하나 이상의 심볼 스트링(예, 호출된 번호)의 수신된 심볼(예, 숫자) 스트링을 구문 해석하기 위해 정의된 문법 및 구문을 독립된 번호 방식으로 사용하여 네트워크 번호 방식 내에서의 그들의 의미를 도출해 낸다. 심볼 스트링은 네트워크 번호 방식의 규정된 요소이다. 구문 해석이란 포함된 심볼 스트링을 언어의 요소로서 확인하고 심볼 스트림의 의미에 대한 정의를 내리도록 주어진 언어에 대하여 구문적 및 문법적 규칙을 이용하여 심볼 스트림을 분석하는 것이다. 패턴 매칭과는 다르게, 구문해석은 심볼 스트림내 심볼 스트링의 문맥에 의존하는 심볼 스트림을 정의한다. 아키텍쳐는 도출된 의미와 문법 및 구문을 독립된 번호 방식으로 사용하여 호출에 제공되어질(예, 호출 특징 및 호출에 대한 호출 루트를 선택하기 위해)처리를 지정하게 된다.The present invention is directed to solving the above and other problems of the prior art. In accordance with the present invention, a call handling architecture is provided that supports the flexibility of the actual numbering scheme as a whole. That is, the call processing apparatus constructed in accordance with the present invention can support any number scheme without practical limitations, and can simultaneously support all of a plurality of completely different number schemes. The architecture is based on the inventor's recognition that the numbering scheme may be regarded as a language of mathematical / calculating meaning. Therefore, this architecture defines a precompiled approach to call handling, which defines a numbered grammar and syntax, and parses the received symbol (eg, number) string of one or more symbol strings (eg, called number). In order to derive their meaning within the network numbering scheme, we use the defined grammar and syntax as a separate numbering scheme. The symbol string is a defined element of the network numbering scheme. Syntactic parsing is to identify symbol strings as elements of a language and to analyze symbol streams using syntactic and grammatical rules for a given language to define the meaning of the symbol stream. Unlike pattern matching, parsing defines a symbol stream that depends on the context of the symbol string in the symbol stream. The architecture uses the derived semantics, grammar, and syntax in a separate numbered manner to specify the processing to be provided for the call (eg, to select call characteristics and call routes for the call).
본 발명에 따라 구성된 호출 처리 장치는 번호 방식의 구문 및 문법의 정의 및 규칙을 각각 저장하는 트리 및 매트릭스 데이타 구조, 및 심볼 스트림을 해석하고 호출 처리를 지정하도록 데이타 구조의 내용을 이용하는 기능 수단을 포함한다. 상기 구문은 개개의 심볼 스트링의 특성을 정의하는 반면, 문법은 상이한 심볼 스트링간의 관계를 정의한다. 상기 수단은 모든 번호 방식 및 소정의 번호 방식에 완전히 독립적이며 일반적이다라는 점에서 순수하게 기능적이다. 모든 번호 방식 의존성은 데이타 구조의 데이타 내용에 지정된다. 그러므로, 정의된 번호 방식을 변경하거나 확장하기 위해서는, 데이타 구조 내에 포함되어 있는 번호 방식의 정의를 변경 또는 확장만을 필요로 한다(예를 들면, 북미 네트워크 번호 방식에서 비협약 지역 코드, 즉 중앙 숫자로서 0 또는 1 이외의 숫자를 갖는 코드를 포함하기 위해서는, 단지 데이타 구조 내에 이러한 지역 코드의 정의를 포함시키는 것이 요구됨). 또한, 번호 방식을 완전히 변경하기 위해서는 단지 데이타 구조의 내용을 대치하는 것이 필요하다. 이것은 이와 같은 호출 처리 장치를 포함하는 임의의 스위칭 시스템을 임의의 번호 방식을 실행하고 복수의 다양한 시장에 사용하는데 적합한 것을 매우 용이하게 한다. 또한 이러한 스위칭 시스템의 소유자들은 데이타 구조의 내용을 통제만 함으로써 그들 자신의 사설 네트워크의 번호 방식을 커스터마이즈하거나 정의하는 것이 가능하다. 따라서, 개개의 소유자들은 번호 방식을 그들이 원하는 대로 정의할 수 있다. 호출 처리 장치는 네트워크 번호가 네트워크 "언어"의 요소로서 해석되게 함으로써 전체 번호 방식의 유연성을 제공한다.A call processing apparatus constructed in accordance with the present invention comprises a tree and matrix data structure for storing definitions and rules of numbered syntax and grammar, respectively, and functional means for interpreting the symbol stream and using the contents of the data structure to specify call processing. do. The syntax defines the characteristics of individual symbol strings, while the grammar defines relationships between different symbol strings. The means are purely functional in that they are completely independent and general in all numbering schemes and predetermined numbering schemes. All numbering dependencies are specified in the data content of the data structure. Therefore, in order to change or extend the defined numbering scheme, it is only necessary to change or extend the definition of the numbering scheme included in the data structure (for example, in the North American network numbering scheme, as a non-contracted area code, that is, a central number). To include codes with numbers other than 0 or 1, it is only necessary to include the definition of these area codes in the data structure). Also, to completely change the numbering scheme, it is only necessary to replace the contents of the data structure. This makes it very easy for any switching system comprising such call processing apparatus to be suitable for implementing any numbering scheme and for use in a plurality of different markets. In addition, owners of these switching systems can customize or define their own private network numbering scheme by only controlling the content of the data structures. Thus, individual owners can define the numbering scheme as they wish. The call processing device provides full numbering flexibility by having the network number interpreted as an element of the network "language".
또한, 이러한 호출 처리 장치에 의해서 이 장치를 사용하는 스위칭 시스템이 각각 하나의 방식에 대한 번호 방식 문법 및 구문의 정의를 포함하는 데이타 구조만을 제공함으로써 동시에 다수의 번호 방식을 모두 처리할 수 있다. 이들 데이타 구조를 이용하는 기능 수단은 모든 번호 방식과는 일반적이고 독립적이므로, 단지 한 세트의 기능 수단만이 다양한 번호 방식의 모든 데이타 구조와 함께 사용하는데 필요하다. 가급적이면, 호출 처리 장치는 또한 기능 수단으로 사용하기 위하여 그 내용이 심볼 스트링 변환-예, 하나의 번호에서 또다른 번호로-을 정의하는 데이타 구조를 포함한다. 정의된 변환은 동일 번호 방식의 다른 심볼 스트링으로의 심볼 스트링 변환 또는, 어느 한 번호 방식의 심볼 스트링을 또다른 번호 방식의 심볼 스트링으로의 변환일 수도 있다. 따라서 이러한 데이타 구조의 내용은 스위칭 시스템이 지원하는 복수의 번호 방식간의 직접적인 인터페이스를 제공한다.In addition, such a call processing apparatus enables a switching system using this apparatus to process all of a plurality of number schemes simultaneously by providing only a data structure each containing a definition of a number scheme grammar and syntax for one scheme. Since functional means using these data structures are generic and independent of all numbering schemes, only one set of functional means is required for use with all data structures of various numbering schemes. Preferably, the call processing apparatus also includes a data structure whose contents define symbol string conversions, eg, from one number to another, for use as a functional means. The defined conversion may be a symbol string conversion to another symbol string of the same number method or a symbol string of one number method to another symbol string of another number method. Thus, the contents of this data structure provide a direct interface between the multiple numbering schemes supported by the switching system.
본 발명의 이들 장점 및 다른 장점들이 첨부된 도면을 참조하여 기술된 본 발명의 실시예로부터 명백해질 것이다.These and other advantages of the invention will be apparent from the embodiments of the invention described with reference to the accompanying drawings.
본 발명의 실시예는 제 1 도에 도시되어 있는 전자 통신 시스템으로 구현된다. 제 1 도의 시스템은 스위칭 시스템(10)을 포함하는 전화 시스템이며, 이 시스템(10)은 전화 회선(15)에 의해 스위칭 시스템(10)에 접속되어 있는 사용자 터미널(17)에 전화 서비스를 제공한다. 이 스위칭 시스템(10)은 터미날(17)을 상호 접속시키며 또한 제 1 도에서 네트워크(18)로 도시되어 있는 전화 시스템의 나머지부와 상호접속되어 있으며, 스위칭 시스템(10)은 전화 트렁크(16)를 통해 네크워크(18)에 접속되어 있다. 네트워크(18)는 일반적으로 하나 이상의 다른 스위칭 시스템(10)과 사용자 터미널(17)을 포함한다.An embodiment of the present invention is implemented with the electronic communication system shown in FIG. The system of FIG. 1 is a telephone system comprising a switching system 10, which provides telephone service to a user terminal 17 connected to the switching system 10 by telephone line 15. . This switching system 10 interconnects the terminals 17 and is also interconnected with the rest of the telephone system, which is shown as network 18 in FIG. 1, which switches system 10 to telephone trunk 16. It is connected to the network 18 via. Network 18 generally includes one or more other switching systems 10 and user terminals 17.
제 1 도의 전화 시스템은 하나 이상의 네트워크 번호 방식을 구현한다. 네트워크 번호 방식은 종래 기술로 널리 공지되어 있다. 이에 대한 예가 북미 공중전화 시스템의 북미 네트워크 번호 방식이다. 네트워크 번호 방식은, 사용자들이 호출이 수신되기를 원하는 처리를 네트워크에 대해 정의하도록 심볼(예, 다이얼 숫자)을 사용할 수 있는 협약이다. 네트워크 번호 방식의 일반적 특징을 제 2 도에서 도시한다. 도시된 바와 같이, 네트워크 번호 방식(100)은 복수의 정의된 심볼 스트링(101 내지 150)으로 구성되어 있다. 각각의 정의된 심볼 스트링은 하나 이상의 심볼로 구성되며, 정의된 의미를 갖는다. 지역 코드, 오피스 코드, 확장 번호, 장거리 캐리어 코드 및 특징 지정 코드가 심볼 스트링의 실례이다. 정의된 심볼 스트링은 심볼 시퀀스(151 내지 199) (예, 네트워크 번호, 다이얼된 번호)를 구성하는 구성 요소이다. 각각의 유효 심볼 시퀀스는 하나 이상의 정의된 심볼 스트링으로 구성되며, 네트워크 번호 방식 내의 의미를 갖는다. 심볼 시퀀스는 대응하는 호출이 수신되어질 처리를 정의한다. 심볼 시퀀스가 유효(즉, 시퀀스의 구성 심볼 스트링의 정의와 그들의 허용가능 문맥을 위반하지 않음)하면, 네트워크 번호방식에 포함되는 것으로 한다.The telephone system of FIG. 1 implements one or more network numbering schemes. Network numbering is well known in the art. An example of this is the North American network numbering scheme for public telephone systems in North America. Network numbering is an convention in which users can use symbols (eg, dial numbers) to define for the network the processing they want to receive calls. A general feature of the network numbering scheme is shown in FIG. As shown, the network numbering scheme 100 consists of a plurality of defined symbol strings 101-150. Each defined symbol string consists of one or more symbols and has a defined meaning. Area codes, office codes, extension numbers, long range carrier codes, and feature designation codes are examples of symbol strings. Defined symbol strings are the components that make up the symbol sequence 151-199 (e.g., network number, dialed number). Each valid symbol sequence consists of one or more defined symbol strings and has meaning within the network numbering scheme. The symbol sequence defines the process by which the corresponding call will be received. If a symbol sequence is valid (ie does not violate the definition of the constituent symbol strings of the sequence and their acceptable context), then it is assumed to be included in the network numbering scheme.
종래에 제 1 도에서 도시된 것과 같은 네트워크에서는, 시스템(10) 등과 같은 스위칭 시스템은 제 1 도의 시스템의 일부분에 이용되는 단지 하나의 번호 방식만을 이해한다. 스위칭 시스템은 제 1 도의 시스템의 다른 부분에서 사용된 다른 번호 방식에 관한 신호를, 자기 번호 방식에 기초하여 설정되는 통신 경로를 통해 사용하기 위한 부분으로 전송한다.In a network as conventionally shown in FIG. 1, a switching system, such as system 10, understands only one numbering scheme used for part of the system of FIG. The switching system transmits a signal relating to another number method used in another part of the system of FIG. 1 to a part for use via a communication path established based on the self number method.
스위칭 시스템(10)은 AT&T DefinityG2PBX 등의 저장 프로그램 제어 시스템이다. 이것은 종래의 스위칭 조직(13), 조직(fabric; 13)의 동작을 제어하는 프로세서(11), 제어 기능을 수행하는데 프로세서(11)에 의해 사용하는 데이타와 실행프로그램을 기억하는 메모리(12)를 포함한다. 스위칭 시스템(10)은 또한 다이얼 숫자 수집 레지스터, 출력 펄스 회로, 톤 발생기 등과 같은 종래의 서비스 회로(14)를 구비하는데, 이 서비스 회로는 프로세서 (11)의 제어하에서 동작하며 호출접속을 설정하는데 사용하기 위해 조직(13)에 접속되며 호출 특징 및 다른 전기 통신 서비스를 사용자 터미널(17)에 제공한다.Switching system 10 is AT & T Definity Store program control system such as G2PBX. This includes a conventional switching organization 13, a processor 11 for controlling the operation of the fabric 13, and a memory 12 for storing data and executable programs used by the processor 11 to perform control functions. Include. The switching system 10 also includes conventional service circuitry 14, such as dial digit acquisition registers, output pulse circuits, tone generators, etc., which operate under the control of the processor 11 and are used to set up a call connection. It is connected to the organization 13 to provide calling features and other telecommunications services to the user terminal 17.
이 설명에 관련이 있는 메모리(12)의 내용은 제 3 도에 도시되어 있다. 메모리(12)에 의해서 보존된 대부분의 프로그램 및 데이타 구조는 종래의 것이다. 이들은 펄스 출력 신호 수집 프로그램 모듈(201), 접속 설정 프로그램 모듈(202), 시각(time of day) 프로그램(203), 예컨대 트렁크(16), 라인(15), 및 터미널(17)의 번역 및 상태(204), 기능 프로그램 모듈(205), 및 개별 호출의 호출 기록(271)을 보존하기 위한 작업용 메모리 부분(250)을 포함한다. 그러나, 본 발명에 따라서, 월드 클래스 루팅(world-class-routing ; WCR) (200)이라고 언급되는, 새로운 호출처리 장치가 제공되며, 이는 사용자 제공의 호출 목적지 어드레스 또는 기능 선택 코드-사용자 터미널(17)로부터의 전화 회선(15)을 통해 또는 다른 스위칭 시스템으로부터의 트렁크(16)를 통해 수신되는 숫자 또는 다른 심볼-를, 스위칭 조직(13) 및 네트워크(18)에 의해서 설정하기 위해 그리고 모듈(205) 및 회로(14)에 의한 설비를 위해 호출 루트 및 기능 액세스 접속으로 번역한다. 월드 클래스 루팅(200)은 그 자체의 입력으로서, 터미널(17)이나 트렁크(16)의 타단에 펄스출력되고 종래의 펄스 출력된 신호 수집 모듈(201)에 의해서 수집되어온 심볼 표시 신호를 수신한다. 그 수신된 신호를 루트 식별 정보, 기능 식별 정보, 기타 다른 접속 식별 및 기능 식별 정보로, 그리고 목적지 식별 펄스 출력 숫자로 변환하고, 이들을 그 자체의 출력으로서, 예컨대 종래의 접속 설정 프로그램(202) 또는 기능 모듈(205)에 보낸다.The contents of the memory 12 related to this description are shown in FIG. Most of the program and data structures preserved by the memory 12 are conventional. These include the translation and status of the pulse output signal acquisition program module 201, the connection setup program module 202, the time of day program 203, such as the trunk 16, the line 15, and the terminal 17. 204, functional program module 205, and a working memory portion 250 for keeping a call record 271 of an individual call. However, in accordance with the present invention, there is provided a new call processing apparatus, referred to as world-class-routing (WCR) 200, which is a user-provided call destination address or function selection code-user terminal 17. To set by the switching organization 13 and the network 18 and the module 205 a number or other symbol received via telephone line 15 from) or via trunk 16 from another switching system. And translate into call routes and functional access connections for installation by circuitry 14. The world class routing 200 receives, as its input, a symbol display signal that has been pulsed at the other end of the terminal 17 or trunk 16 and collected by a conventional pulsed signal collection module 201. Converts the received signal into route identification information, function identification information, other connection identification and function identification information, and to destination identification pulse output numbers, and converts them as their own output, e.g., the conventional connection setting program 202 or To the functional module 205.
월드-클래스 루팅(200)은 네트워크 번호 방식의 개념을 수학적/계산기 과학적 의미에서, 언어로서 실행한다. 그러한 것으로서, 월드 클래스 루팅(200)은 네트워크 번호 방식을 구성하는 심볼 스트링의 문법 및 구문에 관해 임의의 네트워크번호 방식을 정의하고, 이들의 심볼 시퀀스를 해석하고 정의된 문법 및 구문의 이용으로 해석된 심볼 시퀀스를 분석함으로써 회선(15) 및 트렁크(16)로부터 수신된 심볼의 시퀀스로부터의 의미를 도출한다. 따라서, 문법 및/또는 구문을 재정의하는 조치를 통하여, 월드 클래스 루팅(200)은 존재하는 번호 방식을 변경 또는 재정의하거나 또는 전체적으로 상이한 번호 방식에 적합하다.World-class routing 200 implements the concept of network numbering as a language, in a mathematical / calculator scientific sense. As such, world class routing 200 defines arbitrary network numbering schemes with respect to the grammar and syntax of the symbol strings constituting the network numbering scheme, interprets their symbol sequences, and interprets them with the use of the defined grammar and syntax. Analyzing the symbol sequence derives meaning from the sequence of symbols received from circuit 15 and trunk 16. Thus, through the action of redefining grammar and / or syntax, world class routing 200 is suitable for changing or redefining existing numbering schemes or for entirely different numbering schemes.
월드 클래스 루팅(200)은 모듈러 구조를 갖고, 자기 충족적이지만 협력적인 4 개의 모듈, 즉 제 4 도 내지 제 13 도에 도시된 네크워크 숫자 분석(NDA) 모듈(210), 제 16 도 내지 제 19 도에 도시된 일반화 루트 선택(GRS) 모듈(220), 제 14도 및 제 15 도에 도시된 숫자 수정(DM) 모듈(230), 및 제 20 도 내지 제 22 도에 도시된 숫자 송신(DS) 모듈(240)을 포함한다. 간단히, 월드 클래스 루팅(200)은 다음과 같은 기능을 한다.The world class routing 200 has a modular structure and has four modules that are self-sufficient but cooperative, namely the Network Numerical Analysis (NDA) module 210 shown in FIGS. 4 through 13, 16 through 19. Generalized Route Selection (GRS) module 220 shown in FIG. 220, numeric correction (DM) module 230 shown in FIGS. 14 and 15, and numeric transmission (DS) shown in FIGS. 20-22. ) Module 240. Briefly, world class routing 200 functions as follows.
네트워크 숫자 분석(210)은 하나 이상의 네트워크 번호 방식의 구문 및 문법을 실행한다. 네트워크 숫자 분석(210)은 펄스 출력 신호 수집 프로그램(201)으로부터 수신된 수신 심볼 시퀀스의 구문 해석기 및 분석기로서 기능하고, 구문 해석 및 분석 기능을 행하기 위해 구문 및 문법을 사용한다. 이하에서, 간단히 하기 위해, 심볼은 개별적으로 다이얼 숫자라고 언급되고, 수신된 심볼 시퀀스는 집합적으로 다이얼 번호라고 언급된다. 분석은 톤(tone)이 다이얼 번호의 소스에 되돌아가게 될 필요성이 있다는 것을 나타낸다. 이러한 목적 달성을 위하여, 네트워크 숫자 분석(210)은 톤발생 설비(262)와의 접속을 가지며, 상기 설비는 일예로 서비스 회로(14)들중 하나이다. 분석은 또한 다이얼 번호가 변경될 필요성이 있고 그 다음 재분석될 필요성이 있다는 것을 나타내는데, 즉 이러한 목적을 위하여, 네트워크 숫자 분석(210)은 필요한 수정을 수행하도록 숫자 수정(230)에 의존한다. 분석의 결과는 결과 다이얼 번호, 호출자가 도달하려 하는 종단점(endpoint)이나 기능의 인덱스(VNI), 및 호출의 허가 정보이다. 네트워크 숫자 분석(210)은 이들을 일반화 루트 선택부(220)에 공급한다.Network number analysis 210 executes one or more network numbering syntax and grammar. Network number analysis 210 functions as a parser and analyzer of received symbol sequences received from pulse output signal collection program 201 and uses syntax and grammar to perform syntax interpretation and analysis functions. In the following, for simplicity, the symbols are individually referred to as dial numbers, and the received symbol sequences are collectively referred to as dial numbers. The analysis indicates that the tone needs to go back to the source of the dial number. To accomplish this goal, network number analysis 210 has a connection with tone generating facilities 262, which is one of the service circuits 14, for example. The analysis also indicates that the dial number needs to be changed and then needs to be reparsed, ie for this purpose, network number analysis 210 relies on numeric modification 230 to perform the necessary modifications. The result of the analysis is the resulting dial number, the endpoint or function index (VNI) the caller is trying to reach, and the call's permission information. The network number analysis 210 supplies them to the generalized route selector 220.
일반화 루트 선택부(220)는 호출에 사용될 기능이나 최적의 선택 루트를 결정한다. 이것은 수신된 식별자를 기능 번호 또는 루팅 패턴 번호로 변환하도록 시각 프로그램(203)과 번역 및 상태(204)로부터 얻어진 종단점 식별자 및 정보를 사용하고, 호출이 루트가 정해지게 될 트렁크 그룹을 선택하도록 패턴 번호를 사용한다. 일반화 루트 선택부(220)의 기능의 결과는 기능 모듈(205)의 기동(invocation), 또는 숫자 송신 인덱스, 선택 트렁크 그룹, 및 신호 특성에 관한 정보중 어느 하나이다. 일반화 루트 선택(220)은 루트 관련 결과를 숫자 송신(240)에 공급한다.The generalized route selector 220 determines the function or optimal selection route to be used for the call. It uses the endpoint identifier and information obtained from the time program 203 and the translation and status 204 to convert the received identifier into a function number or routing pattern number, and the pattern number to select the trunk group to which the call will be routed. Use The result of the function of the generalized route selector 220 is any one of the invocation of the function module 205, or information about the numeric transmit index, the selected trunk group, and the signal characteristics. Generalized route selection 220 supplies route related results to numeric transmission 240.
숫자 송신(240)은 숫자 송신 인덱스를 사용하여 호출 설정 신호 특성에 관한 또 다른 정보를 검색하고, 다음으로 수신 정보의 전수(fully complement; 全數)를 사용하여 펄스 출력될 제어 신호를 정의한다. 이것은 숫자 수정(230)을 사용하여 결과 다이얼 번호를 펄스 출력하기 위한 펄스 출력 번호로 변환한다. 다음으로 숫자 송신(240)에 의해 접속 설정 프로그램(202)이 선택된 트렁크를 통해 필요한 특성을 갖는 필요한 접속을 설정한다.Numeric transmit 240 uses the numeric transmit index to retrieve further information about the call setup signal characteristics and then defines a control signal to be pulsed out using a fully complement of the received information. This uses numeric correction 230 to convert the resulting dial number into a pulse output number for pulse output. Next, by the number transmission 240, the connection setting program 202 establishes the necessary connection having the necessary characteristics through the selected trunk.
수신된 펄스 출력 제어 신호의 전체는 네트워크 다이얼 액세스 코드(DAC)에 의해 전치(前置)되거나 또는 전치되지 않는 다이얼 번호로 구성되어 있다. 다이얼 액세스 코드는 사용자가 도달하려고 시도하는 네트워크를 식별한다. 다이얼 액세스 코드의 부재(absence)는 디폴트 네트워크의 선택으로서 해석된다. 이것은 예컨대, 많은 다수의 사설 구내 네트워크에서는 공중 전화 네트워크 또는 사설 네트워크를 사용하고 싶은 신호를 각각 보내기 위해서는 최초로 "9" 또는 "8" 을 다이얼하는 것이 공통적인데, 즉 "9" 또는 "8"의 부재는 다이얼 번호가 수신 스위칭 시스템(10) 자체의 신장 또는 기능에 관하여 설명해 주는 것을 나타내며, 일반적으로 내부 다이얼링 방식이라고 부른다. 또는, 공중 네트워크에서는, 사용자가 도달하고자 하는 인터 LATA 캐리어의 네트워크를 나타내도록 최초에 "10XXX" 를 다이얼하는 것이 일반적인데, 즉 "10XXX" 접두부가 존재하지 않을 때에는 호출이 디폴트 캐리어의 네트워크에 루트된다. 상기 예에 있어서, "9", "8", 및 "10XXX" 는 다이얼 액세스 코드로서 작용한다. 최초에, 네트워크 숫자 분석(210)은 단순히 다이얼 액세스 코드나 그의 부재를 사용자가 사용하려고 시도하는 네트워크를 네트워크 숫자분석(210)에 대해 지정하는 네트워크 번호로 변환한다. 그러나 보다 일반적으로, 상기와 같은 변환은 네트워크 숫자 분석(210)에 펄스 출력 신호 수집 프로그램 모듈(201)을 인터페이스하도록 사용될 수 있는 독립 내부 다이얼 방식 프로그램(도시 되어 있지 않음)에 의해서 행해질 수도 있다. 모든 네트워크는 자체 문법과 구문을 각각 갖는 상이한 번호 방식을 사용하고, 따라서 네트워크 번호는 다이얼 번호를 분석하는데 최초에 사용될 수 있는 번호 방식을 네트워크 숫자 분석(210)에 대해 지정한다.The entirety of the received pulse output control signal consists of a dial number that is transposed or not transposed by the network dial access code (DAC). The dial access code identifies the network the user is trying to reach. The absence of a dial access code is interpreted as the selection of the default network. This is common, for example, in many many private premises networks, dialing "9" or "8" for the first time in order to send a signal to use a public telephone network or a private network, respectively, ie the absence of "9" or "8". Indicates that the dial number describes the extension or function of the reception switching system 10 itself, and is generally referred to as internal dialing. Or, in a public network, it is common to first dial "10XXX" to indicate the network of inter LATA carriers the user wishes to reach, i.e., when no "10XXX" prefix is present, the call is routed to the network of the default carrier. do. In the above example, "9", "8", and "10XXX" serve as dial access codes. Initially, network number analysis 210 simply translates the network the user attempts to use the dial access code or its absence into a network number that is specified for network number analysis 210. More generally, however, such conversion may be done by an independent internal dialing program (not shown) that can be used to interface the pulse output signal collection program module 201 to the network number analysis 210. Every network uses a different numbering scheme, each with its own grammar and syntax, so that the network number specifies to network number analysis 210 a numbering scheme that can be used initially to parse the dial number.
네트워크 숫자 분석(NDA; 210)의 데이타 구조가 제 4 내지 8 도에 도시되어 있다. 네트워크 숫자 분석(210)은 다수의 네트워크 구문 트리(320)를 포함한다. 네트워크 구문 트리(320)는 레코드가 계층 트리 구조로 조직되어 있는 데이타 구조체이다. 각 네트워크 번호는 그와 관련된 고유 네트워크 트리(320)를 갖는다. 네트워크 트리(320)의 레코드는 네트워크의 다이얼링 방식의 구문을 정의한다. 각 네트워크 트리(320)는 3 가지 유형-내트워크 루트(root)(310), 브랜치 노드(311), 및 리프(leaf)(312)-의 레코드를 갖는다. 레코드(310-312)는 경로(313)에 의해서 계층적으로 상호 접속된다. 네트워크 루트(310)는 네트워크 트리(320)로의 엔트리 포인트이다. 브랜치 노드(311) 및 리프(312)는 네트워크 루트(310)에 종속하는 다수의 계층적으로 조직된 레벨내에 존재한다. 각각의 브랜치 노드(311)는 단순히 네트워크 트리(320)내의 판단 포인트이다. 네트워크 트리(320)내의 어느 브랜치 노드(311)가 도달되느냐는 다이얼 숫자의 함수이다. 마찬가지로, 상기 노드(311)에서 취하는 경로(313)는 그 다음 다이얼 숫자의 함수이다. 이것은 "와일드 카드(wild card)" 경로(313)를 포함할 수도 있으며, 이것은 다른 경로(313)가 특정 다이얼 숫자에 대해 구체적으로 정의되어 있지 않는 경우, 또는 후속 다이얼 숫자가 구체적으로 정의된 경로를 부당하게 하는 경우에 취해진다. 이것에 의해 "디폴트"스트링 식별자가 가능해지며, 이 "디폴트" 스트링에 대해서는 특정 숫자가 처리되지 않는다. 노드(311)로부터의 각 경로(313)는 또다른 브랜치 노드(311)나 리프(312)중 어느 쪽에서 종단한다. 리프(312)가 도달되게 하는 다이얼 숫자의 특정세트는 스트링 식별자라고 언급된다. 다시 말해, 스트링 식별자는 네트워크 루트(310)로부터 리프(312)까지 네트워크 트리(320)를 지나는데 사용되는 다이얼 숫자로 이루어져 있다. 예컨대, 제 4 도에서, 도면의 우측에 도시되어 있는 리프(312)의 스트링 식별자는 "PNC" 이다. 이것은 예를 들어 북미 공중 네트워크 번호 방식의 특정 지역 코드에 대응된다.The data structure of Network Numerical Analysis (NDA) 210 is shown in FIGS. Network number analysis 210 includes a number of network syntax trees 320. Network syntax tree 320 is a data structure in which records are organized in a hierarchical tree structure. Each network number has a unique network tree 320 associated with it. The records in network tree 320 define the syntax of the dialing scheme of the network. Each network tree 320 has a record of three types: network root 310, branch node 311, and leaf 312. Records 310-312 are hierarchically interconnected by path 313. Network route 310 is the entry point to network tree 320. Branch node 311 and leaf 312 reside within a number of hierarchically organized levels that depend on network root 310. Each branch node 311 is simply a decision point in the network tree 320. Which branch node 311 is reached in network tree 320 is a function of dial number. Similarly, the path 313 taken by the node 311 is a function of the next dial number. This may include a “wild card” route 313, which may be a path where the other route 313 is not specifically defined for a particular dial number, or where a subsequent dial number is specifically defined. It is taken in case of injustice. This allows for a "default" string identifier and no specific number is processed for this "default" string. Each path 313 from node 311 terminates at either another branch node 311 or leaf 312. The particular set of dial numbers that cause leaf 312 to be reached is referred to as a string identifier. In other words, the string identifier consists of a dial number used to traverse the network tree 320 from the network root 310 to the leaf 312. For example, in FIG. 4, the string identifier of the leaf 312 shown on the right side of the figure is "PNC". This corresponds, for example, to a specific area code of the North American public network numbering scheme.
스트링 식별자는 스트링이라고 언급되는 숫자 시퀀스의 최상위 숫자를 형성한다. 스트링은 네트워크 번호 방식에 대해 정의되어 있는, 즉 의미를 지니는, 숫자 또는 다른 심볼의 시퀀스이다. 따라서, 이들은 네트워크 번호 방식의 구성 요소이다. 각각의 리프(312)는 스트링을 정의한다. 그러므로 정의된 각각의 스트링은 대응하는 리프(312)를 갖는다.The string identifier forms the highest digit of a sequence of numbers referred to as a string. A string is a sequence of numbers or other symbols defined for the network numbering scheme, that is, meaningful. Thus, they are a component of network numbering. Each leaf 312 defines a string. Thus each string defined has a corresponding leaf 312.
제 5 도에 도시된 바와 같이, 리프(312)는 대응하는 스트링을 정의하는 정보엔트리(330-339)를 보존하는 데이타베이스 레코드로서 실현된다. 각 리프(312)에 의해서 보존된 정보 엔트리는 리솔루션(resolution)(330), 스트링 유형(331), 스트링 길이(332), 분석 재개(333), 가상 노드 포인트 인덱스(VNI)(334), 연속 수집 옵션(335), 톤(tone) 옵션(336), 무허가 호출 제어 설비 제한 레벨(UCCFRL)(337), VNI 동결 옵션(338), 및 VNI 결합 옵션(339)을 구비한다.As shown in FIG. 5, leaf 312 is realized as a database record that holds information entries 330-339 that define corresponding strings. The information entries preserved by each leaf 312 include resolution 330, string type 331, string length 332, resumption analysis 333, virtual node point index (VNI) 334, A continuous collection option 335, a tone option 336, an unlicensed call control facility restriction level (UCCFRL) 337, a VNI freeze option 338, and a VNI combine option 339.
리솔루션(330)은 리프(312)가 호출 경로 지정 또는 호출 기능 지정 스트링에 대응하는지의 여부를 지정한다. 스트링 유형(331)은 스트링 유형을 식별하는 번호를 유지한다. 상술한 북미 공중 네트워크 번호 방식의 예에서, 스트링 유형(331)은 지역 코드로서 상기 스트링 유형을 식별하는 번호를 유지한다. 스트링 유형(331)은 인터페이스로서 제 7 도 및 제 8 도의 데이타 구조에 의해 정의된 번호 방식 문법으로 작용한다. 상기 문법은 다양한 스트립 유형의 허용 문맥 또는 이들간의 허용 가능한 관계(예컨대, 허용 가능한 결합 및 순서)를 정의한다.The resolution 330 specifies whether the leaf 312 corresponds to a call routing or call function specification string. String type 331 maintains a number that identifies the string type. In the above example of North American public network numbering scheme, string type 331 maintains a number that identifies the string type as a region code. The string type 331 acts as a numbered grammar defined by the data structures of FIGS. 7 and 8 as an interface. The grammar defines the permissible contexts of the various strip types or the permissible relationships (eg, permissible combinations and order) between them.
스트링 길이(332)는 최대 및 최소 길이 범위 경계를 지정함으로써 스트링 길이의 허용 범위를 지정한다. 스트링 길이는 스트링 식별자의 길이를 포함하는-상기 예보다 크거나 같은-임의의 범위가 될 수 있다. 상기 북미 공중 네트워크 번호방식의 예에 있어서, 스트링 길이(332)는 10 개의 숫자(지역 코드:3, 오피스 코드:3, 가입자 번호:4)로된 고정된 스트링 길이에 대응하는 동일한 최소 및 최대 길이 범위 경계를 지정하게 될 것이다.String length 332 specifies the allowable range of string length by specifying maximum and minimum length range boundaries. The string length can be any range including the length of the string identifier—greater than or equal to the above example. In the North American public network numbering example, the string length 332 is the same minimum and maximum length corresponding to a fixed string length of ten numbers (area code: 3, office code: 3, subscriber number: 4). You will specify a range boundary.
분석 재개(333)는 상이한 번호 방식을 서로 인터페이스하거나, 관련시키는 정보를 보존한다. 이것은 스트링의 다이얼 숫자를 수정하는 방식을 지정하는 숫자 수정 인덱스(DMI)를 보존한다. 숫자 수정(230)은 실제 수정을 행하고, DMI는 수행될 숫자 수정을 지정하는 숫자 수정 테이블 엔트리(제 14 도에 도시함)에 대한 포인터로서 작용한다. 분석 재개(333) 역시 재분석의 네트워크, 즉 네트워크 트리(320)가 자체 수정에 이어 스트링을 재분석하는데 사용되는 네트워크 번호를 식별한다. 분석 재개(333)는 또한 수정된 스트링이 재분석되는지 또는 분석되지 않는지의 여부를 지정하며, 전자가 표준 상태이다. 상술한 북미 공중 네트워크 번호방식의 예에 있어서, 지정된 지역 코드가 내부적으로 7 개의 숫자 번호를 사용하는 사설 네트워크에 대응하는 경우, 분석 재개(333)는 적절한 10 대 7의 행수(數, number of digit) 변환 알고리즘을 나타내는 DMI를 보존하고, 종속 사설 네트워크에 대응하는 네트워크 번호를 식별하고, 재분석이 수행되는 것을 지정한다.Resumption analysis 333 preserves information that interfaces or associates different numbering schemes with each other. This preserves a numeric modification index (DMI) that specifies how to modify the dial's number of strings. Numeric modification 230 makes the actual modifications, and the DMI acts as a pointer to the numeric correction table entry (shown in FIG. 14) specifying the numeric correction to be performed. Resumption analysis 333 also identifies the network of the reanalysis, that is, the network number used by the network tree 320 to reparse the string following its modification. Resume analysis 333 also specifies whether the modified string is reanalyzed or not, with the former in standard state. In the example of the North American public network numbering scheme described above, if the designated area code corresponds to a private network that uses seven numeric numbers internally, analysis resume 333 is performed with an appropriate number of lines of ten to seven ( Number of digit) preserves the DMI representing the conversion algorithm, identifies the network number corresponding to the dependent private network, and specifies that reparse is to be performed.
VNI(334), 즉 가상 노드 포인트 인덱스는 호출에 대한 기능이나 경로중 어느 한쪽을 탐색하도록 일반화 경로 선택(220)에 의해 사용되는 인덱스와 관련하여, 스트링에 대한 호출 기능 또는 네트워크 경로 정보를 지정한다. VNI(334)는 호출에 대한 기능 또는 경로의 선택에 대한 스트링의 영향을 나타내는 일부이다.The VNI 334, ie the virtual node point index, specifies the call function or network path information for the string with respect to the index used by the generalization path selection 220 to search either the function or path to the call. . The VNI 334 is the portion that indicates the effect of the string on the choice of function or path to the call.
연속 수집(335)은 상기 스트링의 수신 후에, 펄스 출력 숫자 수집-기능 201에 의해 수행된-이 정지 또는 연속하는지의 여부를 나타냄으로써, 임의의 부가적 스트링이 다이얼 번호의 시퀀스에서 상기 스트링에 후속하는지의 여부를 표시한다.Continuous collection 335 indicates whether, after reception of the string, whether the pulse output number collection-performed by function 201-is stopped or continuous, so that any additional string follows the string in a sequence of dial numbers. Indicates whether or not to
톤(336)은 만약 있다면 상기 스트링의 수집에 이어 펄스 출력 요소(예, 터미널(17)에서의 사용자에게)로의 피드백으로서 복귀되는 톤 또는 기타 다른 호출자 인식가능 신호의 유형을 나타낸다.Tone 336 represents the type of tone or other caller recognizable signal, if any, that is returned as feedback to the pulse output element (eg, to the user at terminal 17) following collection of the string.
UCC FRL(337)은 사용자가 스트링에 대응하는 서비스 또는 종단점을 액세스 가능하도록 순서대로 가져야만 하는 허가 레벨을 지정한다. 이것은 예컨대, 900가지 유형의 번호에 대한 소정의 사용자의 액세스를 방지하는데 사용된다.UCC FRL 337 specifies the permission level that a user must have in order to make the service or endpoint corresponding to the string accessible. This is used, for example, to prevent certain users' access to 900 types of numbers.
VNI 동결 옵션(338)은 상기 스트링이 다이얼 번호의 경로-결정 스트링/기능 결정 스트링인지의 여부를 나타낸다. 만약 상기 스트링인지를 나타내는 경우, 다이얼 번호에서 상기 스트링에 후속하는 소정의 다른 스트링의 VNI는 폐기된다. 이것은 상기 후속 스트링중의 임의의 스트링의 VNI 동결 옵션(338)이 설정될지라도 성립한다. VNI 동결 옵션(338)은 또한 호출 기능이나 경로 선택에 대한 스트링의 영향을 표현하는 일부이다.VNI freeze option 338 indicates whether the string is a path-decision string / function decision string of dial numbers. If it is the string, then the VNI of any other string following the string in the dial number is discarded. This holds true even if the VNI freeze option 338 of any of the subsequent strings is set. The VNI freeze option 338 is also part of expressing the impact of the string on the call function or path selection.
VNI 결합 옵션(339)은 스트링의 VNI가 다이얼 번호에서의 스트링에 선행하는 스트링의 VNI와 결합되는지의 여부-또한 결합되는 경우에는 그 방법-를 나타낸다. 따라서 VNI 결합 옵션(339)은 경로 선택이, 식별되는 특정 스트링에 기초하여 누적적으로 영향을 받는 것이 가능하다. VNI를 결합하는데, 생각할 수 있는 바로는, 임의의 함수를 사용할 수 있지만, 대부분 연결 및 부가가 사용된다. VNI 결합 옵션(339) 또한 호출 기능 또는 경로 선택에 대한 스트링의 영향을 표현하는 일부이다.VNI concatenation option 339 indicates whether the VNI of the string is combined with the VNI of the string preceding the string in the dial number, and if so, how. Thus, the VNI concatenation option 339 allows path selection to be cumulatively affected based on the particular string identified. To combine VNIs, you can use any function you can think of, but mostly connections and additions are used. The VNI join option 339 is also part of expressing the effect of strings on call function or path selection.
스트링 길이 엔트리(332)가 암암리에 의미하는 바와 같이, 스트링은 다른 길이, 즉 상이한 행수로 구성될 수도 있다. 그러므로, 브랜치 노드(311)로부터 연장되는 다른 경로(313)들은 동일한 다이얼 숫자에 의해 도달될 수도 있으며, 경로(313)가 다이얼 숫자에 의해 도달되는 것은 다이얼 숫자들의 번호에 대한 함수이다. 예로, 네트워크 번호(300)에 대응하는 네트워크 트리(320)에 도시된 것과 같이, "AB" 와 "ABCD" 는 모두 정의된 스트링이다. 두번째로 다이얼 숫자 "B" 가 스트링 "AB" 중 하나를 정의하는 리프(312)에 도달하거나, 또는 스트링 "ABCD"를 정의하는 리프(312)로 통하는 경로 상의 브랜치 노드(311)에 단순히 도달하는가의 여부는 오히려 숫자 "B" 이후에 다이얼된 것이 무엇인지가 문제이다. 이것은 하기에서 보다 상세히 설명될 것이다.As the string length entry 332 implicitly implies, the string may consist of different lengths, i.e., different rows. Therefore, other paths 313 extending from the branch node 311 may be reached by the same dial number, and it is a function of the number of dial numbers that the path 313 is reached by the dial number. For example, as shown in network tree 320 corresponding to network number 300, "AB" and "ABCD" are both defined strings. Secondly, does the dial digit "B" reach the leaf 312 defining one of the strings "AB", or simply reach the branch node 311 on the path leading to the leaf 312 defining the string "ABCD"? Rather, it is rather what is dialed after the number "B". This will be explained in more detail below.
또한, 동일한 스트링은 복수 개의 네트워크 트리(320)로 정의될 수도 있다. 또한, 동일한 스트링은 복수의 트리(320)에서 동일한 정의나 상이한 정의로 가질 수도 있다.Also, the same string may be defined as a plurality of network trees 320. In addition, the same string may have the same or different definitions in the plurality of trees 320.
번호 방식의 구문 정의는 네트워크 구문 트리(320)에 의한다. 번호 방식의 구문을 정의하기 위하여, 시스템 관리자는 단순히 네트워크 트리(320)를 작성하고 그것의 리프 엔트리(330∼339)를 입력한다. 존재하는 번호 방식을 변경하거나 확장하기 위해, 시스템 관리자는 단순히 네트워크 트리(320)에 브랜치 노드(311)와 리프(312)를 덧붙이거나, 또는 단순히 네트워크 트리(320)내의 특정한 경로(313)에 대응하는 다이얼 숫자를 변경하거나, 또는 단순히 하나 이상의 리프(312)의 하나 이상의 엔트리(330-339)에 저장된 정보를 단지 변경한다. 그 구조는 완전한 유연성을 가지고 있기 때문에 관리자는 필요한 임의 수의 레코드를 제공할 수 있다. 브랜치 정의용 및 리프 정의용 메모리자원이 필요하게 됨에 따라, 이들은 브랜치와 리프를 나타내는 데이타베이스 레코드의 공통 풀(pool)로부터 제거되므로, 각각의 네트워크 다이얼 방식은 메모리 자원을 가장 효율적으로 사용하는 반면에 필요한 만큼 복잡하거나 단순해질 수 있다.The syntax definition of the number method is by the network syntax tree 320. To define a numbered syntax, the system administrator simply creates a network tree 320 and enters its leaf entries 330-339. To change or extend the existing numbering scheme, the system administrator simply adds branch node 311 and leaf 312 to network tree 320 or simply corresponds to a specific path 313 within network tree 320. Change the dial number, or simply change the information stored in one or more entries 330-339 of one or more leaves 312. The structure is so flexible that the administrator can provide any number of records needed. As memory resources for branch and leaf definitions are needed, they are removed from a common pool of database records representing branches and leaves, so that each network dialing method uses memory resources most efficiently, as needed. It can be complicated or simple.
트리 구조는 다이얼 숫자의 분석을 매우 간단하게 한다. 다이얼 숫자는 단순히 한개 이상의 리프(312)에 도달될 때까지, 루트(310)에서부터 트리(320) 하방으로 인덱스하는데 하나씩 사용된다. 리프(312)의 도달은 다이얼 번호에서의 스트링이 아마도 식별었음을 의미한다. 도달된 리프(312)에 의해 정의된 스트링은 "후보"로 일컬어진다. 후보는 그 적합성을 판정하기 위해 제 7 도의 데이타 구조에 의해 정의된 문법 규칙에 대하여 검사 받는다. 후속 다이얼 숫자는 도달된 다수의 리프(312)들 사이에서 선택하는데 사용된다. 일단 한 개의 후보 리프(312)가 선택되면, 소정의 후속 다이얼 숫자는 다음의 개별적인 스트링의 일부분으로 간주되고, 인덱스 과정이 반복된다. 그러므로, 숫자 분석을 위해 분류나 검색이 필요하지 않다. 오히려, 레코드 판독의 소정의 최대 수-최대 스트링 식별자 길이에 대응함-만이 분석 종단점에 도달하는데 필요하며, 이에 따라 임의의 심볼 스트링의 구문 해석이 공지의 최대 시간 기간에 실행될 수 있도록 보장한다. 번호 방식이 다수의 다이얼 번호들의 선두 다이얼 숫자가 반복되도록 하는 경우-예, 지역 코드와 오피스 코드는 모두 동일한 세 개의 숫자로된 시퀀스일 수 있음-에, 기역 영역은 중복되지 않고 따라서 매우 콤팩트하다. 또한 스트링 식별자는 결코 명시적으로 격납되는 것이 불필요하므로 메모리 공간을 절약할 수 있다. 오히려, 다이얼 숫자는 단순히 데이타베이스 레코드의 시퀀스에 대한 포인터로서 작용한다.The tree structure greatly simplifies the analysis of dial numbers. Dial numbers are used one by one to index down the tree 320 from the root 310 until simply one or more leaves 312 are reached. The arrival of leaf 312 means that the string in the dial number was probably identified. The string defined by the reached leaf 312 is called "candidate." The candidate is checked against the grammar rules defined by the data structure of FIG. 7 to determine its suitability. Subsequent dial numbers are used to select between the multiple leaves 312 reached. Once one candidate leaf 312 is selected, any subsequent dial number is considered part of the next individual string, and the indexing process is repeated. Therefore, no classification or search is necessary for numerical analysis. Rather, only a predetermined maximum number of record reads, corresponding to the maximum string identifier length, are needed to reach the analysis endpoint, thus ensuring that the parsing of any symbol string can be performed in a known maximum time period. If the numbering scheme causes the leading dial number of multiple dial numbers to be repeated—eg, the area code and the office code can all be the same three digit sequence—the base area is not redundant and therefore very compact. Also, string identifiers never need to be stored explicitly, which saves memory space. Rather, the dial number simply acts as a pointer to the sequence of database records.
대응하는 네트워크 구문 트리(320)를 갖는 것 이외에, 각각의 네트워크 번호는 제 6 도에 도시된 대응하는 예외 포레스트(forest; 350)를 갖는다. 예외 포레스트(350)는 네트워크 구문 트리(360)의 리프(312)에 존재하는 스트링 정의에 대한 예외를 식별하도록 작용한다. 각각의 예외 포레스트(350)는 하나 이상의 예외 구문 트리(360)를 포함한다. 각 예외 구문 트리(360)는 네트워크 트리(320) (제 4도에 도시된 것과 같이)와 동일하게 구성되어 있다. 네트워크 트리(320)와 동일하게, 네트워크 번호는 대응하는 예외 포레스트(350)를 식별하도록 작용한다. 효율적 액세스를 위해, 원하는 예외 트리(360)는 스트링 유형과 스트링 길이에 의해 식별된다. 예외 포레스트(350)내에 인덱스하는데 사용되는 스트링 유형과 스트링 길이는 분석되고 있는 스트링에 대응하도록 네트워크 트리(320)에서 발견된 후보 리프(312)의 엔트리(331, 332)에 대한 내용이다.In addition to having a corresponding network syntax tree 320, each network number has a corresponding exception forest 350 shown in FIG. The exception forest 350 serves to identify exceptions to string definitions that exist in the leaf 312 of the network syntax tree 360. Each exception forest 350 includes one or more exception syntax trees 360. Each exception syntax tree 360 is configured identically to the network tree 320 (as shown in FIG. 4). As with the network tree 320, the network number serves to identify the corresponding exception forest 350. For efficient access, the desired exception tree 360 is identified by string type and string length. The string type and string length used to index in the exception forest 350 are the contents of entries 331 and 332 of the candidate leaf 312 found in the network tree 320 to correspond to the string being analyzed.
이미 언급한 바와 같이, 네트워크 숫자 분석(210)은 또한 네트워크 번호 방식의 문법을 정의하는 개별적인 데이타 구조를 포함한다. 이것은 제 7 도 및 제 8 도에 도시되어 있다. 각각의 네트워크 번호는 고유의 제 7 도의 시퀀스 문법 매트릭스(400) 및 제 8 도의 결합 문법 매트릭스(410)를 갖는다. 각각의 매트릭스(400, 410)는 복수의 행(401, 411)과 열(402, 412)로 구성되어 있다. 각각의 행(401, 411)은 네트워크 다이얼링 방식을 위한 정의된 스트링 유형(제 5 도의 331)중 상이한 하나의 스트링 유형에 대응하며, 각 열(402, 412) 또한 마찬가지이다. 그러므로, 행(401, 411)과 열(402, 412)의 수는 정의된 스트링 유형의 수에 의존한다. 소정의 행(401, 411)과 열(402, 412)의 교점은 엔트리(405)-엔트리(415, 416)-를 형성하며, 그 내용은 대응하는 스트링 유형들 간의 허용 문맥 및 관계를 정의한다.As already mentioned, network number analysis 210 also includes a separate data structure that defines the network numbering grammar. This is shown in FIGS. 7 and 8. Each network number has a unique sequence grammar matrix 400 of FIG. 7 and a combined grammar matrix 410 of FIG. 8. Each matrix 400, 410 consists of a plurality of rows 401, 411 and columns 402, 412. Each row 401, 411 corresponds to a different string type from the defined string type (331 in FIG. 5) for the network dialing scheme, and each column 402, 412 is likewise. Therefore, the number of rows 401, 411 and the columns 402, 412 depends on the number of string types defined. The intersection of a given row 401, 411 and column 402, 412 forms an entry 405-an entry 415, 416, the content of which defines the permissible context and relationships between the corresponding string types. .
한편, 교차하는 행(401)과 열(402)에 의해 형성된 시퀀스 문법 매트릭스(400)의 엔트리(405)는, 열(402)에 대응하는 스트링 유형-다음 수신 스트링 유형(404)이라 언급됨-이 다이얼 번호에 있어서 행(401)에 대응하는 스트링 유형-마지막 수신 스트링 유형(403)으로 일컬어짐-에 후속하도록 허용되는지의 여부를 정의한다. 따라서, 매트릭스(400)는 다이얼 번호내의 스트링 유형의 허용 가능한 순차적 순서를 정의한다. 제 7 도에 도시된 시퀀스 문법 매트릭스(400)는 북미 공중네트워크 번호 방식에 적용할 수 있는 정보가 예로서 기입되어 있다.On the other hand, the entry 405 of the sequence grammar matrix 400 formed by the intersecting rows 401 and columns 402 is the string type corresponding to the column 402-referred to as the next received string type 404. Defines whether this dial number is allowed to follow the string type corresponding to row 401, referred to as the last received string type 403. Thus, the matrix 400 defines an allowable sequential order of the type of string in the dial number. In the sequence grammar matrix 400 shown in FIG. 7, information applicable to the North American public network numbering method is written as an example.
다른 한편, 교차하는 행(411)과 열(412)에 의해 형성된 결합 문법 매트릭스(410)의 제1 엔트리(415)는 열에 대응하는 스트링 유형-수신 스트링 유형(414)으로 언급됨-의 VNI(334)-제 5 도 참조-가, 행에 대응하는 스트링 유형-유지 스트링유형(413)으로 언급됨-의 VNI(334)와 결합되도록 허용되는지 여부를 정의한다. 그리고, 제 1 엔트리(415)와 동일한 행(411)과 열(412)에 의해 형성된 제 2 엔트리(416)는 유지되고 결합된 VNI에 대응하는 스트링 유형을 정의한다. 제 2 엔트리(416)에 의해 정의된 스트링 유형은 다음 유지 스트링 유형(413)이 된다. 그리하여 매트릭스(410)는 호출 기능이나 호출 경로를 정의할 때 공유할 수 있는 스트링 유형의 결합을 정의한다. 제 8 도에 도시된 최상단의 결합 문법 매트릭스(410)는 북미 공중 네트워크 번호 방식의 스트링 유형이 예로 기입된다. 이런 특정 방식에서, 엔트리 (415)는 제 7 도의 시퀀스 문법 매트릭스(400)의 대응하는 엔트리(405)와 같은 값을 취하는데 반하여, 엔트리(416)는 수신 스트링 유형(414)의 값을 취한다.On the other hand, the first entry 415 of the combining grammar matrix 410 formed by the intersecting rows 411 and columns 412 is the VNI of the string type corresponding to the column, referred to as the receiving string type 414, 334) —see FIG. 5—is allowed to be combined with the VNI 334 of the string type corresponding to the row—referred to as the retaining string type 413. And, the second entry 416 formed by the same row 411 and column 412 as the first entry 415 defines the string type that corresponds to the retained and combined VNI. The string type defined by the second entry 416 becomes the next holding string type 413. Thus, matrix 410 defines a combination of string types that can be shared when defining a call function or call path. In the uppermost combined grammar matrix 410 shown in FIG. 8, the string type of the North American public network numbering system is written as an example. In this particular manner, entry 415 takes the same value as the corresponding entry 405 of the sequence grammar matrix 400 of FIG. 7, while entry 416 takes the value of receive string type 414. .
제 8 도의 또다른 실현예는 각 네트워크 번호에 대해 복수의 결합 문법 매트릭스(410)를 가지며, 그 각각은 상기 네트워크 번호에 대해 네트워크 구문 트리(320)의 리프(312)의 VNI 결합 옵션(339)에 의해 지정가능한 각각의 결합 기능에 대응한다.Another embodiment of FIG. 8 has a plurality of combined grammar matrices 410 for each network number, each of which has a VNI combining option 339 of the leaf 312 of the network syntax tree 320 for that network number. Corresponds to each coupling function that can be specified by
네트워크 숫자 분석(210)의 기능은 제 4 도 내지 8 도의 데이타 구조의 사용법을 포함하여 제 9 도 내지 12 도에 도시되어 있다. 네트워크 숫자 분석(210)은 두가지 기능, 즉 제 9 도 내지 12 도에 도시되어 있는 스트링 식별 기능(340)과 제 13 도에 도시되어 있는 스트링 작용 기능(341)을 포함한다.The function of network number analysis 210 is shown in FIGS. 9-12, including the usage of the data structures of FIGS. Network number analysis 210 includes two functions: string identification function 340 shown in FIGS. 9-12 and string action function 341 shown in FIG.
스트링 식별 기능(340)은 다이얼 숫자, 스트링 길이 및 스트링 문맥(선행하는 스트링의 식별 정보, 스트링 유형)을 기초로한 스트링을 식별한다. 이 기능은 다이얼 호출 제어 심볼 시퀀스의 모든 스트링을 인식-예, 식별하고 확인-하는데 사용된다. 이 기능은 최초에 단계(500)에서 프로그램(201)으로부터의 수집 숫자의 수신에 응답하여 호출에 대해 기동된다. 기능(340)은 단계(502)에서 호출에 대한 격납 정보를 취득하기 위해 상기 호출의 호출 레코드(271)-제 3 도 참조-를 액세스한다. 호출에 대한 기능(340)의 초기 기동 시에 상기 호출의 레코드(271)는 비어있다. 이 호출에 대하여 이전에 어떠한 다이얼 숫자도 수신되지 않았고 격납되지 않았으므로, 단계(504)는 제로 단계이며, 기능(340)은 단계(506)로 진행한다.The string identification function 340 identifies the string based on the dial number, string length, and string context (identification information of the preceding string, string type). This function is used to recognize-eg, identify and confirm-all the strings of the dial call control symbol sequence. This function is initially activated for a call in response to the receipt of a collection number from program 201 in step 500. Function 340 accesses the call record 271-see FIG. 3-of the call to obtain containment information for the call in step 502. Upon initial activation of function 340 for a call, record 271 of the call is empty. Since no dial numbers have been previously received and not stored for this call, step 504 is zero and function 340 proceeds to step 506.
상술된 바와 같이, 다이얼 숫자는 다이얼 액세스 코드나 네트워크 번호중 어느 하나에 의해 수반되고, 단계(506)에서 기능(340)은 최초에 수신 정보로부터 현재 사용되는 네트워크 번호를 결정하여 호출 레코드(271)의 네트워크 번호 엔트리(252)에 격납한다. 다음으로 기능(340)은 단계(508)에서 결정 네트워크 번호에 대응하는 네트워크 트리(320)에 단계(504)에서 취득한 다이얼 숫자 세트를 인가한다. 기능(340)은 다이얼 숫자를 하나씩 사용하여 네트워크 트리(320)의 경로(313)를 선택하고 통과한다. 단계(510)에서, 기능(340)은 트리(320)의 경로(313)를 통과할때, 현재의 호출에 대한 호출 레코드(271)-제 3 도 참조-의 스택(251)에, 스트링의 식별 정보에 대한 후보를, 사전식 일치의 순서로 기입한다. 다시 말해서, 기능(340)은 다이얼 숫자에 기초하여, 리프(312)를 탐색하면서 트리(320)의 경로(313)를 진행한다. 기능(340)은 진행 도중에 조우하는 소정의 리프(312)를 조우한 순서로 스택(251)에 기입한다. 스택(251)은 호출마다 생성된 통상의 후입선출 버퍼 데이타 구조체이다. 가장 막연히 적합한 정의를 제공하는 가장 일반적인 리프(312)는 네트워크 트리(320)에서 먼저 조우하게 되며, 그리하여 그것은 스택(251)의 최하부에 위치하게 되고, 반면에 가장 정확한 정의를 제공하는 보다 특정한 리프(312)는 네트워크 트리(320)에서 나중에 조우하게 되며 그리하여 그것은 스택(251)의 최상부에 더 가까이 위치하게 된다. 기능(340)은 가능한 모든 경로의 종단부에 있는 리프(312)에 도달할 때까지 또는 어느 것이든 먼저 다이얼 숫자가 바닥날 때 까지 네트워크 트리(320)를 계속하여 진행한다. 예를 들어, 제 4 도에 관해 설명하면, 현재 사용된 네트워크 번호가 "a" 이고 수신된 다이얼 숫자가 "ABC" 인 경우, 단계(510)에 이어서, 스택(251) 내용은 스택(251)의 최하부로부터 상부로 숫자 "AB"에 의해 도달된 두 개의 리프(312), 및 숫자 "ABC" 에 의해 도달된 중간 노드(311)를 포함한다. 다른 한편, 만일 수신된 다이얼 숫자가 "ABCDE"인 경우, 스택(251) 내용은 숫자 "AB"에 의해 도달된 두 개의 리프(312), 및 숫자 "ABCD"에 의해 도달된 리프(312)를 포함한다. 숫자 "AB"에 의해 도달된 두 개의 리프(312)중 어느 것이 스택(251)에서 최하부에 있는가는 각각의 스트링 길이 엔트리(332)-스트링 길이가 짧을수록, 정의가 보다 일반적-의 내용에 의해 결정된다. 그러므로, 보다 짧은 스트링 길이를 지정하는 리프(312)는 스택(251)의 보다 하부에 위치할 것이다. 기능(340)은 또한 수신된 다이얼 숫자가 모두 바닥날 때에 도달된 소정의 브랜치 노드(311)를 스택(251)에 들여놓는다.As described above, the dial number is accompanied by either a dial access code or a network number, and in step 506 the function 340 initially determines the network number currently used from the received information to call page 271. Is stored in the network number entry 252. Function 340 then applies the dial number set obtained in step 504 to network tree 320 corresponding to the determined network number in step 508. The function 340 selects and passes through the path 313 of the network tree 320 using the dial numbers one by one. In step 510, as function 340 passes through path 313 of tree 320, the stack of strings 251 in the call record 271-see FIG. Candidates for identification information are written in the order of lexical matching. In other words, the function 340 proceeds the path 313 of the tree 320 while searching for the leaf 312 based on the dial number. The function 340 writes the stack 251 in the order in which the predetermined leaf 312 encounters in progress. Stack 251 is a normal last-in first-out buffer data structure created per call. The most common leaf 312 that provides the most vaguely suitable definition is first encountered in the network tree 320, so that it is located at the bottom of the stack 251, while the more specific leaf (which provides the most accurate definition) 312 will later encounter in the network tree 320 so that it is located closer to the top of the stack 251. Function 340 continues through network tree 320 until it reaches leaf 312 at the end of every possible path, or until either dial number first runs out. For example, with reference to FIG. 4, if the currently used network number is "a" and the received dial number is "ABC", following step 510, the stack 251 contents may be stacked 251. Two leaves 312 reached by the number "AB" from the bottom to the top of, and an intermediate node 311 reached by the number "ABC". On the other hand, if the received dial digit is "ABCDE", the stack 251 contents are divided into two leaves 312 reached by the number "AB" and leaf 312 reached by the number "ABCD". Include. Which of the two leaves 312 reached by the number " AB " is at the bottom of the stack 251, by the content of each string length entry 332-the shorter the string length, the more general the definition is. Is determined. Therefore, a leaf 312 that specifies a shorter string length will be located at the bottom of the stack 251. The function 340 also injects into the stack 251 any branch node 311 reached when the received dial number runs out.
이제 제 9 도를 다시 설명하면, 단계(510)에 이어서, 기능(340)은 단계(514)에서, 호출 레코드(271)의 필요한 행수 엔트리(258)를 약간 큰 숫자 예를 들면 무한대로 초기화시킨다. 다음으로 기능(340)은 단계(516) 이하에서 후보 선택 동작으로 진행한다. 단계(516)에서, 기능(340)은 스택(251)을 액세스하여 그것으로부터 최상위 스택 엔트리를 검색한다. 스택(251)이 비어 있기 때문에 스택 엔트리를 사용할 수 없는 경우, 단계(518)에서 결정된 것과 같이, 단계(520)에서 기능(340)은 호출 레코드(271)의 후보 잔류 플래그(259)를 체크한다. 이 플래그는 수신된 다이얼 숫자에 대해 발견된 스트링 정의에 대한 어떤 다른 가능성이 있는가를 가리킨다. 플래그(259)는 호출에 대해 최초로 클리어(clear)되어, 단계(520)에서 부정응답을 한다. 그러므로 단계(522)에서, 기능(340)은 호출이, 호출자에게 재주문 톤을 복귀시키는 등의 디폴트 처리를 하게 한다. 따라서 단계(524)에서, 호출에 대한 호출 처리 기능은 완료되고, 기능(340)은 종료된다.Referring now to FIG. 9 again, following step 510, function 340 initializes, at step 514, the required row count entry 258 of the call record 271 to a slightly larger number, for example, to infinity. . Function 340 then proceeds to a candidate selection operation at step 516 and below. In step 516, function 340 accesses stack 251 and retrieves the top stack entry therefrom. If the stack entry is not available because the stack 251 is empty, then as determined at step 518, at step 520 the function 340 checks the candidate residual flag 259 of the call record 271. . This flag indicates what other possibilities exist for the string definition found for the dial number received. The flag 259 is initially cleared for the call, negatively responding at step 520. Thus, at step 522, function 340 allows the call to perform default processing, such as returning a reorder tone to the caller. Thus, in step 524, the call processing function for the call is completed, and the function 340 is terminated.
단계(518)로 복귀할 때에는, 스택(251)이 비어 있지 않은 경우, 기능(340)은 단계(526)에서, 리프(312) 또는 브랜치 노드(311)인지의 여부를 결정하기 위해 검색된 최상위 스택 엔트리를 체크한다. 만일 검색된 스택 엔트리가 브랜치 노드(311)인 경우, 단계(528)에서 기능(340)은 그 브랜치 노드(311)로부터 가장 가까운 리프(312)에 도달하는데 필요한 행수를 네트워크 트리(320)로부터 결정한다. 다음으로 가능(340)은 단계(530)에서 호출 레코드(271)의 필요한 행수 엔트리(258)의 내용과 상기 숫자를 비교한다. 만일 결정된 행수가 엔트리(258)의 내용보다 작다면, 단계(532)에서, 기능(340)은 엔트리(258)의 내용을 결정된 행수로 설정한다. 단계(532)에 이어서, 또는 단계(530)에서의 체크가 결정된 행수가 엔트리(258)의 내용보다 작지 않은 경우, 기능(340)은 단계(536)에서 검색된 스택 엔트리를 폐기하고 다음의 스택(251) 엔트리를 검색하기 위해 단계(516)로 복귀한다.When returning to step 518, if stack 251 is not empty, function 340 retrieves, at step 526, the highest stack retrieved to determine whether it is a leaf 312 or branch node 311. Check the entry. If the retrieved stack entry is a branch node 311, at step 528 the function 340 determines from the network tree 320 the number of rows needed to reach the leaf 312 closest to that branch node 311. . Possible 340 then compares the number in step 530 with the contents of the required row count entry 258 of the call record 271. If the determined number of rows is less than the contents of entry 258, then at step 532, function 340 sets the contents of entry 258 to the determined number of rows. Following step 532, or if the number of rows for which the check in step 530 has been determined is not less than the content of entry 258, function 340 discards the stack entry retrieved in step 536 and the next stack ( 251 Return to step 516 to retrieve the entry.
단계(526)로 복귀시, 검색된 스택 엔트리가 리프(312)인 경우, 단계(534)에서 기능(340)은 검색된 리프(312)의 스트링 유형(331)이 시퀀스 문법의 요구 조건을 만족시키는지 체크한다. 기능(340)은 호출 레코드(271)의 네트워크 번호 엔트리(252)에 의해 유지된 네트워크 번호의 시퀀스 문법 매트릭스(400)를 액세스함으로써 상기 체크를 행한다. 다음으로 기능(340)은 다음 수신 스트링 유형(404)으로서의 검색 리프(312)의 스트링 유형(331)의 내용을 상기 매트릭스(400)에 적용하며, 마지막 수신된 스트링 유형(403)으로서의 호출 레코드(271)의 마지막 수신된 스트링 유형 엔트리(255)의 내용을 상기 매트릭스(400)에 적용한다. 다음에 기능(340)은 긍정 응답이나 또는 부정 응답을 포함하는지를 판정하기 위해 매트릭스(400)의 대응하는 엔트리(405)를 조사한다. 만일 마지막 수신된 스트링 유형 엔트리(255)가 비어 있다면, 이 스트링은 호출에 대하여 수신되는 최초의 스트링이며, 따라서 시퀀스 문법의 요구 조건은 그것에 의해 충족되어야 한다. 그러므로, 가입자 번호에 대응하는 임의의 후보 스트링은 북미 번호 방식의 경우에는 폐기될 것이다. 만일 단계(534)에서 얻어진 응답이 부정이라면, 기능(340)은 단계(536)에서 검색된 리프(312)를 폐기하고, 다음 스택 엔트리를 검색하기 위해 단계(516)로 진행한다. 그러나 만일 단계(534)에서 얻어진 응답이 긍정적이라면, 기능(340)은 제 11 도의 단계로 진행한다.Upon returning to step 526, if the retrieved stack entry is a leaf 312, then at step 534 the function 340 determines whether the string type 331 of the retrieved leaf 312 satisfies the requirements of the sequence grammar. Check it. The function 340 makes this check by accessing the sequence grammar matrix 400 of the network number held by the network number entry 252 of the call record 271. Function 340 then applies the contents of string type 331 of search leaf 312 as next received string type 404 to the matrix 400, and the call record (as last received string type 403). Apply the contents of the last received string type entry 255 of 271 to the matrix 400. Function 340 then examines the corresponding entry 405 of matrix 400 to determine whether it contains a positive or negative response. If the last received string type entry 255 is empty, this string is the first string received for the call, so the requirements of the sequence grammar must be met by it. Therefore, any candidate string corresponding to the subscriber number will be discarded in the case of the North American numbering scheme. If the response obtained in step 534 is negative, function 340 discards the leaf 312 retrieved in step 536 and proceeds to step 516 to retrieve the next stack entry. However, if the response obtained in step 534 is positive, then function 340 proceeds to step 11.
제 9 도의 단계(520)로 되돌아가서, 기능(340)이 호출 레코드(271) 세트의 후보 잔류 플래그(candidates-remain flag)(249)를 발견하는 경우, 제 10 도의 단계들로 진행한다. 기능(340)은 단계(580)에서, 호출 레코드(271)의 필요한 행수 엔트리(258}의 내용이 0 인지의 여부를 체크한다. 만일 0 인 경우, 기능(340)은 단계(582)에서 펄스 출력 신호 수집 모듈(201)(제 3 도 참조)과 관련된 단시간(예, 3 초) 행간(間, inter-digit) 타이머(261)를 설정하고, 단계(584)에서 하나의 행(,digit) 수집을 모듈(20에 지시한다. 단계(580)에서 엔트리(258)의 내용이 0 인 것으로 발견되지 못하면, 기능(340)은, 단계(586)에서 펄스 출력 신호 수집 모듈(201) (제 3 도 참조)과 관련된 장시간(예, 10 초) 행간 타이머(260)를 설정하고, 단계(588)에서 엔트리(258)의 내용에 의해 표시된 행수 수집을 모듈(201)에 지시한다.Returning to step 520 of FIG. 9, if function 340 finds the candidates-remain flag 249 of the set of call records 271, proceed to the steps of FIG. Function 340 checks at step 580 whether the contents of the required row count entry 258 of call record 271 is 0. If 0, function 340 pulses at step 582. Short time (e.g., 3 seconds) leading to the output signal acquisition module 201 (see Figure 3) Inter set an inter-digit timer 261, and in step 584 one row ( , digit) instructs module 20. If at step 580 the content of entry 258 is not found to be zero, function 340, at step 586, outputs pulse output signal collection module 201. A long time (e.g., 10 seconds) interline timer 260 associated with (see FIG. 3) is set, and in step 588, the module 201 is instructed to collect the number of rows indicated by the contents of the entry 258. FIG.
타이머(260, 261)는 사용자에 의해 각 행의 다이얼링 사이를 경과하도록 허용된 시간의 최대치를 프로그램(201)에 지시한다. 장시간 행간 타이머(260)는 사용자가 더 많은 숫자를 다이얼하지 못해 논리적인 에러가 유발되어 호출을 디폴트 처리하는 경우 때때로 설정된다. 반대로, 단시간 행간 타이머(261)는 사용자가 다이얼링을 완료하는 것이 허용 가능한 경우 이따금 설정되므로, 사용자의 입력에 응답하기 전에 오랜 기간 동안 대기하는 것은 바람직하지 못하다.The timers 260 and 261 instruct the program 201 of the maximum amount of time allowed by the user to pass between dialing of each row. The long time interlining timer 260 is sometimes set when the user fails to dial more numbers, causing a logical error to default the call. Conversely, short-term interlining timer 261 is sometimes set when the user is allowed to complete dialing, so it is not desirable to wait for a long period of time before responding to user input.
단계(584, 또는 588)에 이어서, 단계(590)에서 기능(340)은 필요한 행수가 모듈(201)에 의해 수집되어 복귀된 후에 미래의 사용을 위해 호출 레코드(271)의 다이얼 숫자 엔트리(253)에 이전에 수신한 다이얼 숫자를 격납한다. 그 다음, 기능 (340)은 단계(592)에 복귀한다.Following step 584, or 588, the function 340 in step 590 may return the dial number entry 253 of the call record 271 for future use after the required number of rows has been collected and returned by the module 201. ) Stores the previously received dial number. Function 340 then returns to step 592.
모듈(201)은 필요한 행수를 수집하도록 함으로써 숫자 수집 요구에 응답한다. 강시간 행간 타이머(260)가 설정되고 복수 행의 수집임이 요구된 경우에, 각 행의 수신에 응하여, 모듈(201)은 장시간 행간 타이머(260)를 재설정한다. 프로그램(201)이 행간 타이머(260, 261)중 하나가 설정이 만료되지 않고서 필요한 행수를 수집하는 경우, 프로그램(201)은 제 9 도의 단계(500)에서 기능(340)을 재기동시키고 그것을 추가로 수집된 숫자를 통과시킨다. 장시간 행간 타이머(260)가 프로그램(201)이 필요한 행수를 수집하기 이전에 만료하는 경우, 프로그램(201)은 단계(500)에서 기능(340)을 재기동시키고 장시간 타이머(260)가 만료되었음을 통지함에 따라 설정된 숫자가 무엇이든 지간에 상기 기능을 통과시킨다. 단시간 행간 타이머(261)가 설정되었고 모듈(201)이 요구받은 한 다이얼 숫자를 수집하기 전에 만료된 경우, 모듈(201)은 기능(340)을 재기동시키고 만료된 단시간 타이머(261)의 통지를 복귀시킨다.Module 201 responds to the number collection request by having it collect the required number of rows. When the strong time interlining timer 260 is set and required to be a collection of a plurality of rows, in response to receiving each row, the module 201 resets the long time interlining timer 260. If program 201 collects the required number of rows without one of the leading timers 260, 261, the setting is not expired, program 201 restarts function 340 in step 500 of FIG. Pass the collected numbers. If the long time interlining timer 260 expires before the program 201 collects the required number of rows, the program 201 restarts the function 340 in step 500 and notifies that the long time timer 260 has expired. Whatever the number set accordingly, pass the above function. If short-term interlining timer 261 has been set and has expired before module 201 has collected a requested dial number, module 201 restarts function 340 and returns a notification of the expired short-term timer 261. Let's do it.
제 9 도로 돌아가면, 단계(500)에서의 재기동 이후에, 기능(340)은 단계(502)에서 호출 레코드(271)를 검색하고, 제 10 도의 단계(590)에서 엔트리(253)내에 격납되었던 호출에 대해 이전에 수신되어 수집된 숫자들과 방금 수신되어 수집된 숫자를 연결시킨다. 그 다음, 기능(340)은 단계(506)이하로 진행하여 스트링 정의의 후보로 스택(251)에 재충전하고 이로부터 후보를 선택하고자 한다.Returning to FIG. 9, after restarting at step 500, function 340 retrieves the call record 271 at step 502, and has been stored within entry 253 at step 590 of FIG. 10. Concatenates the previously received and collected numbers for the call with the numbers just received and collected. Function 340 then proceeds to step 506 and proceeds to recharge stack 251 with candidates for string definition and select candidates therefrom.
단계(534)로 되돌아가면, 스택(251)으로부터 검색되었던 리프(312)의 스트링 유형(331)이 제 7 도의 시퀀스 문법 매트릭스(400)에 나타내어진 조건을 만족하는 것을 상기 체크가 나타내는 경우, 기능(340)은 제 11 도의 단계들로 진행한다. 먼저, 단계(550)에서 기능(340)은 다이얼 숫자가 상기 리프(312)의 스트링 길이(332)에 의해 지정된 검색된 리프의 길이 조건을 만족할 수 있는지를 체크한다. 이 결정은 수신된 다이얼 숫자의 행수가 스트링 길이(332)에 의해 지정된 범위내에 들어가는지 아니면 초과하는지를, 또는 수신된 다이얼 숫자의 행수가 스트링 길이(332)에 의해 지정된 범위 이하로 들어가는지를 검사하므로써 이루어지지만, 그러나 펄스출력 숫자 수집이 종료(호출자가 다이얼링 종료 신호, 예컨대 "#"를 다이얼하는 것과 같음)되었다는 표시는 수신되지 않았다. 다이얼 숫자가 리프의 길이 조건을 만족할 수 없음을 결정한다면, 기능(340)은 제 9 도의 단계(536)로 되돌아가서 검색된 리프(312)를 폐기하고 단계(516)로 진행하여 다음 스택 엔트리를 검색한다.Returning to step 534, if the check indicates that the string type 331 of the leaf 312 that was retrieved from the stack 251 satisfies the condition shown in the sequence grammar matrix 400 of FIG. 340 proceeds to the steps of FIG. First, at step 550 the function 340 checks whether the dial number can satisfy the length condition of the retrieved leaf specified by the string length 332 of the leaf 312. This decision is made by checking whether the number of received dial digits falls within or exceeds the range specified by string length 332, or whether the number of received dial digits falls within the range specified by string length 332. However, no indication has been received that the pulse output number collection has ended (such as the caller dialing a dialing end signal, eg, "#"). If the dial number determines that the leaf length condition cannot be met, function 340 returns to step 536 of FIG. 9 to discard the retrieved leaf 312 and proceed to step 516 to retrieve the next stack entry. do.
단계(550)에서 다이얼 숫자가 검색된 리프의 길이 조건들을 만족할 수 있음을 결정한다면, 기능(340)은 단계(552)에서 다이얼 숫자가 사실상 상기 조건을 만족하는지를 체크한다. 이 결정은 수신된 다이얼 숫자의 행수가 검색된 리프(312)의 스트링 길이(332)에 의해 지정된 범위내에 있는지 아니면 초과하는지 여부를 체크함으로써 내려진다. 만일 그렇지 않다면, 기능(340)은 단계(554)에서 리프의 스트링 길이 조건들을 만족하기 위해 얼마나 많은 추가 행수가 필요한지를 결정하고, 단계(556)에서 이 행수를 호출 레코드(271)의 필요한 행수 엔트리(258)의 내용과 비교한다. 리프의 길이 조건들을 만족시키는데 필요한 추가 행수가 더 작은 경우, 단계(558)에서 기능(340)은 필요한 행수 엔트리(258)의 내용을 상기 행수로 설정한다. 단계(558)이후에, 또는 리프의 길이 조건들을 만족시키는데 필요한 추가 행수가 엔트리(258)의 내용보다 작다면, 기능(340)은 단계(560)에서 호출 레코드(271)의 후보 잔류 플래그(259)를 설정한 다음 제 9 도의 단계(536)로 되돌아가서 다른 스택(251) 엔트리들을 검사한다.If at step 550 the dial number determines that the length conditions of the retrieved leaf can be satisfied, function 340 checks at step 552 if the dial number actually meets the condition. This determination is made by checking whether the number of rows of dial numbers received is within or exceeds the range specified by the string length 332 of the retrieved leaf 312. If not, function 340 determines in step 554 how many additional rows are needed to satisfy the leaf's string length conditions, and in step 556 the number of rows needed in the call record 271 entry. Compare with the contents of (258). If the additional number of rows needed to satisfy the length conditions of the leaf is smaller, then at step 558, function 340 sets the content of the required number of rows entry 258 to that number of rows. After step 558, or if the number of additional rows needed to satisfy the length conditions of the leaf is less than the content of entry 258, then function 340 in step 560 the candidate residual flag 259 of the call record 271. ) And then return to step 536 of FIG. 9 to examine other stack 251 entries.
단계(552)로 돌아가서, 다이얼 숫자가 리프의 길이 조건들을 만족하는 것으로 결정되면, 단계(562)에서 기능(340)은 기동시에 장시간 행간 타이머(260)의 만료에 대한 통지를 수신했는지의 여부를 체크한다. 수신한 경우, 기능(340)은 제 12 도로 진행한다. 단계(562)에서의 검사에 대한 응답이 "아니오(no)" 라면, 단계(564)에서 기능(340)은 기동시에 단시간 행간 타이머(261)의 만료 통지를 수신했는지의 여부를 체크한다. 만일 수신한 경우, 단계(566)에서 기능(340)은 다이얼 숫자의 행수가 검색된 리프(312)의 길이 조건과 동일한지의 여부를 체크한다. 다이얼 숫자의 행수가 그 길이 조건과 동일할 수 있는 유일한 방법은, 검색된 리프(312)의 스트링 길이(332)에 의해 지정된 스트링 길이 범위가 하나이며 그 범위 경계가 다이얼 숫자의 행수와 동일한 경우이다. 단계(566)에서의 응답이 "예(yes)"이면, 기능(340)은 제 12 도로 진행한다. 응답이 "아니오"이면, 기능(340)은 제 9도의 단계(536)로 복귀한다.Returning to step 552, if it is determined that the dial number satisfies the length conditions of the leaf, then at step 562 the function 340 determines whether it has received a notification about the expiration of the long time interlining timer 260 at startup. Check it. If so, function 340 proceeds to the twelfth degree. If the answer to the check at step 562 is no, then at step 564 the function 340 checks whether an expiration notification of the short time interlining timer 261 has been received at startup. If so, at step 566 function 340 checks whether the number of rows of dial digits is equal to the length condition of leaf 312 retrieved. The only way in which the number of lines of the dial number can be equal to its length condition is when there is one string length range specified by the string length 332 of the retrieved leaf 312 and the range boundary is the same as the number of rows of the dial number. If the answer to step 566 is yes, then function 340 proceeds to the twelfth degree. If the answer is no, then function 340 returns to step 536 of FIG.
단계(564)로 복귀하면, 기능(340)이 단시간 행간 타이머(261)의 만료에 응답하여 기동되지 않은 것이 결정되는 경우, 단계(568)에서 기능(340)은 호출 레코드(271)의 후보 잔류 플래그(259)가 설정되는지의 여부를 체크한다. 설정되어 있지 않은 경우, 기능(340)은 제 12 도로 진행하고, 설정된 경우, 단계(570)에서 기능(340)은 호출 레코드(271)의 필요 행수 엔트리(258)의 내용을 0으로 설정하고, 그 다음에 제 9 도의 단계(536)로 복귀한다.Returning to step 564, if it is determined that function 340 has not been activated in response to the expiration of the short time interlining timer 261, then at step 568 the function 340 remains a candidate of call record 271. It is checked whether the flag 259 is set. If not set, the function 340 proceeds to the twelfth degree, and if set, the function 340 sets the content of the required row count entry 258 of the call record 271 to 0, in step 570, Then return to step 536 of FIG.
제 12 도에서는, 예외 트리(360) 후보 리프가 네트워크 트리(320)로부터 선택된 후보 리프(312)와 치환되어야 하는지를 결정하도록 스트링 식별 기능(340)이 실행되는 동작을 도시하고 있다. 기능(340)은 단계(800)에서 예외 포레스트(350)(제 6 도 참조)를 선택하기 위해 호출 레코드(271)의 네트워크 번호 엔트리(252)에 기억된 네트워크 번호를 사용한다. 그 다음으로 기능(340)은 단계(802)에서 상기 선택된 예외 포레스트(350)로부터 예외 트리(360)를 선택하기 위해 상기 선택된 후보 리프(312)의 스트링 유형(331) 및 스트링 길이(332) 엔트리를 사용한다. 마지막으로, 단계(806)에서 트리(360)가 수신된 다이얼 숫자의 스트링에 대응하는 예외리프(312)를 포함하는지를 결정하기 위해, 제 9 도의 단계(508)에 대해 기술된 것과 동일한 방식으로 기능(340)은 단계(804)에서 상기 수신된 다이얼 숫자의 스트링을 선택된 예외 트리(360)에 적용한다. 이 스트링에 대응하는 예외 리프(312)가 존재하는 경우, 기능(340)은 단계(808)에서 이것을, 제 9 도 내지 제 11 도에서 선택되었던 리프(312) 대신에 스트링을 위한 후보로서 선택한다. 단계(806 또는 808)에 이어서, 기능(340)은 단계(810)에서 호출 레코드(271)의 마지막 수신 스트링 유형 엔트리(255)에서 선택된 모든 리프(312)의 스트링 유형의 내용들을 격납한다. 그 다음으로, 기능(340)은 단계(812)에서 제 13 도의 스트링 작용 기능(341)을 기동시키고, 단계(814)에서 현재 사용중인 네트워크 번호, 스트링, 및 선택된 리프(312)를 통과시키고 복귀한다.In FIG. 12, the string identification function 340 is illustrated to determine whether the exception tree 360 candidate leaf should be replaced with the candidate leaf 312 selected from the network tree 320. The function 340 uses the network number stored in the network number entry 252 of the call record 271 to select the exception forest 350 (see FIG. 6) at step 800. Function 340 then enters string type 331 and string length 332 entries of the selected candidate leaf 312 to select exception tree 360 from the selected exception forest 350 in step 802. Use Finally, in step 806, to determine whether the tree 360 includes an exception leaf 312 corresponding to the string of dial numbers received, function in the same manner as described for step 508 of FIG. 340 applies the received string of dial numbers to the selected exception tree 360 at step 804. If there is an exception leaf 312 corresponding to this string, function 340 selects it in step 808 as a candidate for the string instead of the leaf 312 that was selected in FIGS. 9-11. . Following step 806 or 808, function 340 stores the contents of the string type of all the leaves 312 selected in the last received string type entry 255 of the call record 271 in step 810. Next, function 340 activates the string action function 341 of FIG. 13 at step 812, and passes and returns the network number, string, and selected leaf 312 currently in use at step 814. FIG. do.
제 13 도의 단계(900)에서 기동될 때, 스트링 작용 기능(341)은 단계(902)에서 무엇을 실행해야 할지를 결정하기 위해 수신 리프(312)의 엔트리(330-339)를 검사한다. 단계(904)에서 피이드백 신호(본 예에서는 톤)가 사용자에게 제공되도록 톤 엔트리(336)에 의해 지정되는 경우, 기능(341)은 단계(906)에서 톤 생성(262)서비스 회로(제 3 도 참조)가 상기 지정된 톤을 사용자에게 제공할 수 있게 한다. 리프(312)의 분석 재개 엔트리(333)가 숫자 수정 인덱스(DMl)를 포함하는 경우, 그것은 단계(908)에서 숫자 수정이 지정된 것을 표시하고, 따라서 기능(341)은 단계(910)에서 숫자 수정(230)을 기동시킨다. 기동의 일부로서, 기능(341)은 수신된 스트링, 및 수신된 리프(312)의 엔트리(333)로부터의 DMI를 숫자 수정에 지나게 한다. 그 다음으로, 기능(341)은 단계(912)에서 숫자 수정 결과의 수신을 대기한다.When invoked in step 900 of FIG. 13, the string action function 341 examines entries 330-339 of the receiving leaf 312 to determine what to do in step 902. If in step 904 a feedback signal (tone in this example) is specified by tone entry 336 such that it is provided to the user, function 341 may include tone generation 262 service circuitry (third) in step 906. A reference tone can be provided to the user. If the analysis resume entry 333 of the leaf 312 includes a numeric modification index DMl, it indicates that numeric modification was specified in step 908, and thus the function 341 modifies the numeric modification in step 910. Activate (230). As part of the activation, function 341 causes the received string, and the DMI from entry 333 of the received leaf 312 to undergo numerical modification. Next, function 341 waits at step 912 to receive the result of the numeric modification.
숫자 수정(230)은 제 14 도에 도시된 데이타 구조와 제 15 도에 도시된 기능으로 구성된다. 데이타 구조는 수신된 DMI(1020)에 의해 액세스되는 엔트리(1001)의 테이블(1000)이다. 각각의 엔트리는 3 개의 필드(1010-1012)로 구성된다. 삭제 행 범위 필드(1010)는 스트링으로부터 삭제되어야 할 수신 스트링내의 행위치에 대하여 행의 범위를 지정한다. 삽입행 범위 필드(1011)는 삽입될 수신 스트링내의 행위치와 관련하여 행의 범위를 지정하고, 삽입 숫자 필드(1001)는 삽입될 실제숫자를 지정한다.Numeric modification 230 is comprised of the data structure shown in FIG. 14 and the functionality shown in FIG. The data structure is a table 1000 of entries 1001 accessed by the received DMI 1020. Each entry consists of three fields 1010-1012. The Delete Row Range field 1010 specifies the range of rows for the behavior in the receive string that should be deleted from the string. The insertion row range field 1011 specifies the range of rows in relation to the behavior value in the received string to be inserted, and the insertion number field 1001 specifies the actual number to be inserted.
제 15 도의 단계(1100)에서의 기동시에, 숫자 수정 기능(342)은 단계(1102)에서, 테이블(1000)의 특정 엔트리(1001)를 발견하고 액세스하기 위해 기동의 일부로서 수신된 DMI(1020)를 사용한다. 그 다음으로, 기능(342)은 단계(1104 및 1106)에서 기동의 일부로서 수신되였던 스트링에 대하여 액세스 엔트리(1001)에 의해 지정된 수정을 실행한다. 그 다음으로, 기능(342)은 단계(1108)에서 상기 수정된 수신 스트링을 수정 요구자에게 되돌려 보내고 단계(1110)에서 종료한다.Upon startup in step 1100 of FIG. 15, the number correction function 342 is received at step 1102 by the DMI 1020 received as part of the startup to find and access a particular entry 1001 of the table 1000. ). Function 342 then executes the modifications specified by access entry 1001 on the string that was received as part of the activation in steps 1104 and 1106. Function 342 then returns the modified received string to the modification requester at step 1108 and ends at step 1110.
제 13 도에서, 기능(341)은 단계(914)에서 수정 스트링을 수신하고, 단계(916)에서는 단계(900)에서 수신한 스트링 대신 호출 레코드(271)의 다이얼 숫자 엔트리(253)내에 상기 수정 스트링을 격납한다.In FIG. 13, function 341 receives a modification string in step 914 and in step 916 the modification in the dial number entry 253 of the call record 271 instead of the string received in step 900. Contains the string
후보 리프(312)의 분석 재개 엔트리(333)가 단계(908)에서 결정된 DMI를 포함하지 않는 경우, 또는 단계(916)에서 수정된 스트링의 격납 후에, 스트링 작용기능(341)은 단계(918) 이하로 진행하여 호출에 대해 VNI를 계산한다. 기능(341)은 단계(918)에서 호출(제 3 도 참조)의 호출 레코드(271)의 "동결" 지시자(257)가 설정되었는지를 체크한다. 설정된 경우에는, 호출에 대한 VNI 계산은 동결되었으므로, VNI 계산은 계속되지 않으며, 기능(341)은 단계(950) 이하로 진행한다. 만일 호출 레코드의 "동결" 지시자(257)가 설정되지 않은 경우, 단계(930)에서 기능(341)은 수신된 리프(312)의 VNI 결합 엔트리(339)가 세트된 것인지를 결정하기 위하여 이 VNI 결합 엔트리를 체크한다. 또한 설정되어 있지 않은 경우, 기능(341)은 단계(934)에서 호출 레코드(271)의 호출 VNI 필드(254)에 리프(312)의 VNI 엔트리(334) 내용들을 격납시키고, 이 과정에서 VNI 필드(254)에 앞서 격납되었던 모든 VNI를 폐기한다. 또한 기능(341)은 단계(946)에서 호출 레코드(271)의 유지 스트링 유형 필드(255)에 리프(312)의 스트링 유형 엔트리(331) 내용을 격납한다. 그다음으로 기능(341)은 단계(948)로 진행한다.If the analysis resume entry 333 of the candidate leaf 312 does not include the DMI determined in step 908, or after the containment of the modified string in step 916, the string function 341 is step 918. Proceed below to calculate the VNI for the call. The function 341 checks at step 918 whether the "freeze" indicator 257 of the call record 271 of the call (see FIG. 3) is set. If set, the VNI calculation for the call is frozen, so the VNI calculation does not continue, and function 341 proceeds below step 950. If the "freeze" indicator 257 of the call record is not set, then at step 930 the function 341 may determine that the VNI join entry 339 of the received leaf 312 is set. Check the join entry. Also, if not set, the function 341 stores the contents of the VNI entry 334 of the leaf 312 in the call VNI field 254 of the call record 271 at step 934, in the process. Discard all VNIs previously stored (254). Function 341 also stores the contents of string type entry 331 of leaf 312 in maintenance string type field 255 of call record 271 at step 946. Function 341 then proceeds to step 948.
단계(930)에서, 후보 리프(312)의 VNI 결합 엔트리(339)가 설정되는 경우, 기능(341)은 단계(932)에서 결합 문법이 상기 결합을 허용하는가의 여부를 체크한다. 기능(341)은 호출 레코드(271)의 네트워크 번호 엔트리(252)에 의해 유지된 네트워크 번호의 결합 문법 매트릭스(410)(제 8 도 참조)를 액세스함으로써 상기 단계를 실행한다. 그 다음으로, 기능(341)은 수신 스트링 유형(414)으로서 수신리프(312)의 스트링 유형(331) 내용들을 상기 매트릭스(410)에 공급하고, 유지 스트링 유형(413)으로서 호출 레코드(271)의 유지 스트링 유형 엔트리(256) 내용들을 상기 매트릭스(410)에 공급한다. 그 다음으로, 기능(341)은 긍정 응답 또는 부정응답을 포함하는지를 결정하기 위해 매트릭스(411)의 대응 엔트리(415)를 검사한다. 호출 레코드(271)의 유지 스트링 유형 엔트리(256)가 비어 있는 경우, 이 스트링이 호출에 대해 수신되는 최초의 스트링이며, 따라서 결합할 것이 존재하지 않기 때문에 결합이 항상 허용되지는 않는다. 단계(932)에서 얻어진 응답이 부정이라면, 기능(341)은 단계(934)로 진행한다. 단계(932)에서 얻어진 응답이 긍정이라면, 기능(341)은 단계(940)에서 호출 레코드(271)의 VNI 필드(254)에 격납된 임의의 VNI를, VNI 결합 엔트리(339)에 의해 지정되는 방식으로 수신 리프(312)의 VNI 엔트리(334) 내용들과 결합시킨다. 그 다음으로, 기능(341)은 단계(942)에서 호출 레코드(271)의 VNI 필드(254)에 그 결합 VNI를 격납시키고, 그 과정 동안에 VNI 필드(254)의 이전 내용들을 폐기한다. 또한 기능(341)은 단계(944)에서, 단계(940)에서 생성된 VNI와 연관되고 유지될 새로운 스트링 유형을 검색한다. 기능(341)은 단계(932)의 경우처럼 진행함으로써 상기 단계를 실행하지만, 엔트리(415)를 검사하는 대신에, 대응 엔트리(416)를 엑세스하여 상기 유지 스트링 유형을 얻는다. 그 다음으로 기능(341)은 단계(945)에서 상기 검색된 유지 스트링 유형(416)을 유지 스트링 유형 엔트리(256)에 격납하고, 단계(948)로 진행한다.In step 930, if the VNI join entry 339 of the candidate leaf 312 is set, the function 341 checks in step 932 whether the join grammar allows the join. The function 341 executes the above steps by accessing the association grammar matrix 410 (see FIG. 8) of the network number held by the network number entry 252 of the call record 271. Function 341 then supplies the string 331 contents of receive leaf 312 as receive string type 414 to the matrix 410 and call record 271 as retained string type 413. Supply the contents of the retention string type entry 256 of the matrix 410. Next, function 341 examines the corresponding entry 415 of the matrix 411 to determine whether it contains a positive or negative response. If the maintenance string type entry 256 of the call record 271 is empty, this string is the first string received for the call, and thus join is not always allowed because there is nothing to join. If the response obtained in step 932 is negative, function 341 proceeds to step 934. If the response obtained in step 932 is affirmative, the function 341 is assigned by the VNI join entry 339 any VNI stored in the VNI field 254 of the call record 271 in step 940. In conjunction with the contents of the VNI entry 334 of the receiving leaf 312. Next, function 341 stores the combined VNI in the VNI field 254 of the call record 271 at step 942 and discards the previous contents of the VNI field 254 during the process. Function 341 also retrieves, at step 944, the new string type to be associated and maintained with the VNI generated at step 940. Function 341 performs this step by proceeding as in the case of step 932, but instead of checking entry 415, accesses corresponding entry 416 to obtain the retention string type. Function 341 then stores the retrieved maintenance string type 416 in a maintenance string type entry 256 in step 945 and proceeds to step 948.
단계(948)에서, 기능(341)은 수신 리프(312)의 VNI 동결 엔트리(338)를 체크하여 그 지시자가 설정되는지를 판정한다. 만일 설정되는 경우, 이는 이후 수신 스트링들의 VNI가 호출의 VNI에 영향을 미치지 않음을 의미한다. 그러므로 기능(341)은 단계(949)에서 호출 레코드(271)의 "동결" 지시자(257)를 설정하여 호출 VNI 엔트리(254)의 내용들이 변화되는 것을 방지한다. 그 다음으로, 기능(341)은 단계(950)로 진행한다. 만일 수신 리프(312)의 VNI 동결 엔트리(338)가 세트되어 있지 않으면, 기능(341)은 곧바로 단계(950)로 진행한다.In step 948, function 341 checks the VNI freeze entry 338 of the receiving leaf 312 to determine if the indicator is set. If set, this means that the VNI of the received strings then does not affect the VNI of the call. Therefore, function 341 sets the "freeze" indicator 257 of the call record 271 at step 949 to prevent the contents of the call VNI entry 254 from changing. Function 341 then proceeds to step 950. If the VNI freeze entry 338 of the receiving leaf 312 is not set, the function 341 proceeds directly to step 950.
단계(950)에서, 기능(341)은 수신 리프(312)의 분석 재개 엔트리(333)가 단계(912-914)에서 얻어진 수정 스트링이 재분석되어야 함을 나타내는지 여부를 체크한다. 재분석됨을 나타내는 경우, 기능(341)은 단계(952)에서 분석 재개 엔트리(333)가 새로운 네트워크 번호를 지정해야 하는지의 여부를 체크한다. 그렇게 되는 경우, 기능(341)은 단계(954)에서 호출 레코드(271)의 네트워크 번호 필드(252)에 이 새로운 네트워크 번호를 격납한다. 단계(954)에 이어서, 또는 새로운 네트워크 번호가 단계(952)에서 지정되지 않는 경우, 기능(341)은 단계(958)에서 스트링 식별 기능을 기동시키고, 수정 스트링, 모든 새로운 네트워크 번호, 및 다이얼링을 종료한 모든 지시를 다시 지나가게 한다. 그 다음으로 기능(341)은 단계(960)에서 그것의 기동 포인트로 복귀한다.In step 950, function 341 checks whether the analysis resume entry 333 of the receiving leaf 312 indicates that the modified string obtained in steps 912-914 should be reparsed. If so, the function 341 checks in step 952 whether the resume analysis entry 333 should specify a new network number. If so, the function 341 stores this new network number in the network number field 252 of the call record 271 at step 954. Subsequent to step 954, or if a new network number is not specified in step 952, function 341 activates the string identification function in step 958, and revises the modification string, all new network numbers, and dialing. Let all the instructions you have passed pass again. Function 341 then returns to its start point at step 960.
단계(950)로의 복귀시에, 재분석이 이루어지지 않았다는 것이 알게 되면, 기능(341)은 단계(970)에서 방금 수신된 스트링이 다이얼 번호에 또다른 스트링이 후속하는지를 수신 리프(312)의 연속 수집 엔트리(335)가 나타내는지의 여부를 체크한다. 만일 그러한 경우, 네트워크 숫자 분석 업무가 아직 완료되지 않아, 기능(341)은 단계(974)에서 펄스 출력 신호 수집 모듈(201)을 재기동시켜서 더 많은 숫자를 수집하도록 촉구한다. 그러나 엔트리(335)가 방금 수신한 스트링이 다이얼숫자에 또다른 스트링이 뒤따르지 않는다는 것을 나타내는 경우, 네트워크 숫자 분석(210) 업무가 실행되고, 기능(341)은 단계(972)에서 일반화 경로 선택(220)을 기동시키며, 다이얼 숫자 엔트리(253)에 격납된 수정 다이얼 숫자 및 호출 레코드(271)의 호출 VNI 엔트리(254)를 지나가게 한다. 단계(974 또는 972)에 이어서, 기능(341)은 단계(976)에서 종료한다.Upon returning to step 950, if it is found that no reparse has been made, the function 341 can determine if the string just received in step 970 is followed by another string following the dial number. It is checked whether or not the entry 335 is indicated. If so, the network number analysis task has not yet been completed, function 341 urges pulse output signal collection module 201 to collect more numbers at step 974. However, if the entry 335 just indicates that the string just received indicates that another string is not followed by the dial digit, the network numeric analysis 210 task is executed, and the function 341 performs the generalization path selection (step 972). 220 is activated, passing the modified dial number stored in the dial number entry 253 and the call VNI entry 254 of the call record 271. Following step 974 or 972, function 341 ends at step 976.
일반화 경로 선택(GRS)(220)이 제 16 내지 19 도에 도시되어 있다. GRS(220)의 데이타 구조는 제 16 내지 18 도에 도시되어 있다. GRS(220)은 제 16도에 있는 한 쌍의 다차원-본 실시예에서는 4 차원- 매트릭스(1200과 1202)를 포함한다. 경로 매트릭스(1200)는 루팅 패턴 번호(1201)로 되어 있고, 반면 기능 매트릭스(1202)는 기능 번호(1203)로 되어 있다. 매트릭스(1200 과 1202)로의 인덱스는 각 매트릭스 차원에 대해 하나의 요소를 갖는 다요소 엔터티(entity)이다. 제 16 도의 4 차원 매트릭스에 대한 실시예에서, 매트릭스 인덱스는 예를 들어, 호출 VNI(254), 시각 루팅 방식(1230), 조건 루팅 카운트(1231) 및 테넌트 분할(1232)을 포함한다. 호출 VNI(254)는 NDA(210)으로부터 GRS(220)에 의해 얻어진다. 시각 루팅 방식(1230)은 종래의 것이며 종래의 시각 프로그램(203)(제 3 도 참조)으로부터 GRS(220)에 의해 얻어진다. 조건 루팅 카운트(1231) 역시 종래의 것이며, 다이얼 숫자로의 전치행으로서 착신 호출 트렁크(16), 또는 이 착신 호출 트렁크(16)나 단말 회선(15)의 트렁크 그룹과 관련있는 번역(204)(제 3 도 참조)으로부터 GRS(220)에 의해 얻어진다. 테넌트 분할(1232)도 마찬가지로 종래의 것이며, 착신 호출 트렁크(16) 또는 호출 스테이션(17)과 관련있는 번역(204)으로부터 GRS(220)에 의해 얻어진다. 호출 VNI(254)는 두 매트릭스(1200 과 1202)중 하나가 인덱스에 의해 액세스되는 것을 결정한다. 임의의 문맥 파라미터가 다차원 매트릭스의 요소로서 사용될 수도 있다.Generalization path selection (GRS) 220 is shown in FIGS. 16-19. The data structure of the GRS 220 is shown in FIGS. 16-18. The GRS 220 includes a pair of multi-dimensional, four-dimensional, matrices 1200 and 1202 in this embodiment. The path matrix 1200 is in routing pattern number 1201, while the function matrix 1202 is in function number 1203. The indices into matrices 1200 and 1202 are multielement entities with one element for each matrix dimension. In the embodiment for the four-dimensional matrix of FIG. 16, the matrix index includes, for example, a call VNI 254, a visual routing scheme 1230, a condition routing count 1231, and a tenant partition 1232. Calling VNI 254 is obtained by GRS 220 from NDA 210. The time routing scheme 1230 is conventional and is obtained by the GRS 220 from a conventional time program 203 (see FIG. 3). The conditional routing count 1231 is also conventional and includes a translation 204 associated with an incoming call trunk 16 or a trunk group of the incoming call trunk 16 or the terminal line 15 as a transposition to the dial number. From the GRS 220). Tenant partition 1232 is likewise conventional and is obtained by GRS 220 from translation 204 associated with incoming call trunk 16 or call station 17. The calling VNI 254 determines that one of the two matrices 1200 and 1202 is accessed by the index. Any context parameter may be used as an element of the multidimensional matrix.
기능 매트릭스(1202)로부터 호출에 대해 얻은 기능 번호(1203)는 기동되어야하는 기능 모듈(205)(제 3 도 참조)중 하나를 식별한다. 또는, 매트릭스(1202)로부터 얻은 기능 번호(1203)는 하기에서와 같이, 루팅 패턴 번호(1201)가 사용되는 방법과 유사하게, 기능 패턴 테이블로의 인덱스의 요소로서 사용될 수도 있다.The function number 1203 obtained for the call from the function matrix 1202 identifies one of the function modules 205 (see FIG. 3) to be activated. Alternatively, the function number 1203 obtained from the matrix 1202 may be used as an element of an index into the function pattern table, similar to how the routing pattern number 1201 is used, as follows.
매트릭스(1200)로부터의 호출에 대해 얻어진 루팅 패턴 번호(1201)는 제 17도의 복수의 루팅 패턴 테이블(1300)중 하나에 대해 포인터로서 작용한다. 각각의 루팅 패턴 테이블(1300)은 루팅 우선도를 정의하는 복수의 엔트리(1301)를 갖는다. 루팅 우선도는 상대적 우선도의 순서로 순차적으로 각각의 테이블(1300)에 기입된다. 이하의 호출 특성은 예를 들면 특정한 루팅 우선도(즉, 테이블(1300)의 엔트리(1301))를 선택하기 위한 기준으로 작용한다 : 설비 제한 레벨(FRL)(1330), 테넌트 분할(1232), 베어러 능력(1331), 시외 허가(1332), ISDN 필요/희망(1333), 및 DSC 요구/희망(1334). 이들 기준을 만족시키고, 또한 호출을 전송하는데 비어 있고 사용가능한 회로를 갖는데 대한 부가 조건(1335)을 만족하는 최고의 우선도가 호출에 대해 선택된다.The routing pattern number 1201 obtained for the call from the matrix 1200 acts as a pointer to one of the plurality of routing pattern tables 1300 of FIG. 17. Each routing pattern table 1300 has a plurality of entries 1301 that define routing priorities. Routing priorities are written to each table 1300 sequentially in order of relative priority. The following call characteristics serve as criteria for selecting a particular routing priority (i.e., entry 1301 of table 1300): facility restriction level (FRL) 1330, tenant partition 1232, Bearer Capabilities 1331, Long Distance Authors 1332, ISDN Needs / Wishes 1333, and DSC Requests / Wishes 1334. The highest priority that satisfies these criteria and also satisfies the additional condition 1335 for having an empty and available circuit for sending the call is selected for the call.
FRL(1330)은 종래의 것이며, 다이얼 숫자로의 전치행으로서 착신 호출 트렁크(16)로부터 또는 이 착신 호출 트렁크(16)의 트렁크 그룹이나 발신 스테이션(17)과 관련있는 번역(204)(제 3 도 참조)으로부터 GRS(220)에 의해 얻어진다. 테넌트 분할(1232)은 제 16 도와 관련하여 언급한 바와 동일하다. 베어러 능력(1331) 역시 종래의 것이며, 트렁크(16) 상에 착신 호출을 수반하는 ISDN 메세지로부터, 또는 디폴트값으로서 착신 트렁크(16)나 발신 스테이션(17)의 번역(204)으로부터 GRS(220)에 의해 얻어진다. 시외 허가(1332) 역시 종래의 것이며, 발신 스테이션(17)이나 착신 호출 트렁크(16)의 번역으로부터 GRS(220)에 의해 얻어진다. ISDN 설비 상의 루팅이 요구되는지 또는 희망되는지(1331) 역시 마찬가지로 종래의 정보항목이며, 발신 스테이션(17)의 번역(204)으로부터 GRS(220)에 의해 얻어지거나, 착신 호출 트렁크(16) 상의 호출을 수반하는 메세지로부터 도출된다. DCS 요구/희망(1334)은 요구되는 기능이 네트워크 내의 교환기들 간의 기능 투과성을 제공하는 설비 상의 루팅을 필요로 하는 분산 통신 기능(DCS)인지의 여부를 지정한다(기능 투과성에 대한 설명은 미국 특허 제 4,488,004 호를 참조). 그 정보는 스테이션간의 호출 기능 모듈로부터 GRS에 의해 얻어진다. 마지막으로, 회로 이용 가능성(1335)은 번역 및 상태(204)의 회선(15) 및 트렁크(16) 상태 기록으로부터 결정된다.The FRL 1330 is conventional and translates 204 (third) associated with a trunk group or originating station 17 of the incoming call trunk 16 as a transposition to the dial number. From the GRS 220). Tenant partition 1232 is the same as mentioned with respect to the sixteenth degree. The bearer capability 1331 is also conventional and the GRS 220 from an ISDN message with an incoming call on the trunk 16 or from translation 204 of the destination trunk 16 or originating station 17 as a default value. Is obtained by. The long distance permission 1332 is also conventional and is obtained by the GRS 220 from the translation of the originating station 17 or the incoming call trunk 16. Whether a routing on an ISDN facility is required or desired (1331) is likewise a conventional information item, obtained by the GRS 220 from a translation 204 of the originating station 17, or making a call on the incoming call trunk 16. It is derived from the accompanying message. DCS request / desire 1334 specifies whether the required function is a distributed communication function (DCS) that requires routing on a facility that provides functional permeability between exchanges in the network (a description of functional permeability is described in US patents). 4,488,004). The information is obtained by the GRS from the calling function module between stations. Finally, circuit availability 1335 is determined from the line 15 and trunk 16 state records of the translation and state 204.
전술한 기준에 기초하여 호출에 대해 선택되는 루팅 우선도(1301)는 호출에 대한 우선 경로를 정의하고 호출을 루팅하기 위해 GRS(220)에 의해서 사용된다. 제 18 도에 루팅 우선도(1301)의 예가 도시되어 있다. 이것은 다수의 정보 필드(1401-1406)로 이루어져 있다. 트렁크 그룹 번호(1401)는 호출이 루팅될 수 있는 트렁크 그룹(16)을 지정한다. 송신 조건(1402)은 호출을 수반하는 피호출 번호 정보가 송신되는 방법-예, 숫자 송신 이전에 구문 해석이 필요하고, 숫자 송신 이전에 시스템이 다이얼 톤을 청취해야 하고, 숫자들은 구문 해석과 함께 그룹화될 필요가 있고, 각각의 숫자 그룹은 다이얼 펄스나 터치 톤 펄스를 통해 송신됨-을 지정한다. 요금 정보(1403)는 상기 트렁크 그룹에 대해 무료 전화 번호를 지정하는 예외 테이블이다. ISDN 송신 포맷(1404)은 ISDN 메세지의 정보 요소(IE)가 상호 교환 호출에 사용될 것과 IE에서 송신될 번호의 종류(CCITT 사양에 기초함)를 지정한다. 또는, 요금 정보(1403) 및 ISDN 송신 포맷(1404)은 모두 관련 테이블로의 인덱스로서 실현될 수 있다. 숫자 수정 인덱스(DMI)(1405)는 수신 다이얼 번호가 송신되기 전에 수정되는 방법을 지정한다. 이것은 제 5 도의 리프(312)의 분석 재개 엔트리(333)와 관련하여 설명한 DMI와 동등하다. 그리고 숫자 송신 인덱스(DSI)(1406)는 호출에 대해 부가 숫자 송신 기준을 정의할 때에 숫자 송신(240)에 의해 사용하기 위한 인텍스이다. 숫자 송신(240)에 관련하여 더 설명한다.The routing priority 1301 selected for the call based on the criteria described above is used by the GRS 220 to define the preferred path for the call and to route the call. An example of routing priority 1301 is shown in FIG. 18. This consists of a number of information fields 1401-1406. Trunk group number 1401 designates the trunk group 16 to which a call can be routed. The transmission condition 1402 is a method in which the called number information accompanying the call is transmitted—e.g., Before parsing the number, parsing is required, the system must listen to the dial tone before the number is sent, and the numbers are parsed together. It needs to be grouped, and each group of numbers specifies that it is sent via dial pulse or touch tone pulse. Toll information 1403 is an exception table for specifying a toll free number for the trunk group. The ISDN transmission format 1404 specifies the information element (IE) of the ISDN message to be used for the interchange call and the type of number (based on the CCITT specification) to be transmitted in the IE. Alternatively, the toll information 1403 and the ISDN transmission format 1404 may both be realized as indexes into an associated table. A numeric modification index (DMI) 1405 specifies how the incoming dial number is modified before it is transmitted. This is equivalent to the DMI described in connection with the analysis resume entry 333 of the leaf 312 of FIG. And numeric transmission index (DSI) 1406 is an index for use by numeric transmission 240 in defining additional numeric transmission criteria for a call. Further explanation is made with respect to numeric transmission 240.
일반화 경로 선택 기능(343)이 제 19 도에 도시되어 있다. 단계(1500)에서 기동될 때에, 기능(343)은 단계(1502)에 진행하여 시각 루팅 방식(1230), 조건 루팅 카운트(1231), 및 테넌트 분할(1232)을 얻는다. 그 다음으로 기능(343)은 단계(1504)에서 다차원 매트릭스(1200 과 1202)로의 네 개의 성분 인덱스로서 호출 VNI(254)에 따라 취득한 정보를 사용하고, 단계(1506)에서 매트릭스(1200 또는 1202)중 어드레스 지정된 것으로부터 인덱스 엔트리(1201 또는 1203)를 검색한다. 그 다음으로 기능(343)은 검색된 매트릭스 엔트리를 검사하여 루팅 패턴 번호(1201) 또는 기능 번호(1203)인지의 여부를 결정한다. 검색된 엔트리가 기능 번호(1203)인 경우, 기능(343)은 단계(1540)에서 대응하는 기능 모듈(205)을 기동시키고, 단계(1500)에서 수신된 수정 다이얼 번호를 지나가게 한다. 다음으로 기능(343)은 단계(1542)에서 종료한다.Generalized path selection function 343 is shown in FIG. When activated at step 1500, function 343 proceeds to step 1502 to obtain a time routing scheme 1230, a condition routing count 1231, and a tenant partition 1232. The function 343 then uses the information obtained according to the calling VNI 254 as four component indices into the multidimensional matrices 1200 and 1202 in step 1504, and the matrix 1200 or 1202 in step 1506. The index entry 1201 or 1203 is searched for from the addressed one. The function 343 then examines the retrieved matrix entry to determine whether it is a routing pattern number 1201 or a function number 1203. If the retrieved entry is a function number 1203, the function 343 activates the corresponding function module 205 in step 1540 and passes the modified dial number received in step 1500. Function 343 then ends at step 1542.
단계(1507)로 돌아가서, 검색된 매트릭스 엔트리가 루팅 패턴 번호(1201)인 경우, 기능(343)은 단계(1508)로 진행하여, FRL(1330), 베어러 능력(1331), 시외 허가(1332), ISDN 요구/희망(1333), 및 DCS 요구/희망(1334)을 얻는다. 그 다음에 기능(343)은 단계(1510)에서 검색된 루팅 패턴 번호(1201)에 의해 지시된 하나의 루팅 패턴 테이블(1300)을 액세스하고, 단계(1512)에서, 앞서 취득한 테넌트 분할(1232)에 따라 획득한 정보를 사용하여 적합한 우선도(1301)를 위해 액세스된 패턴 테이블(1300)을 검사한다. 단계(1514)에서 결정된 바와 같이, 적합한 우선도(1301)가 발견되는 경우, 기능(343)은 단계(1516)에서 상기 우선도(1301)의 회로가 호출에 대해 사용가능한지의 여부를 판정하도록 번역 및 상태(204)를 체크한다. 회로가 사용가능하지 않은 경우, 기능(343)은 단계(1512)로 복귀하여 또다른 적합한 우선도(1301)를 검색한다. 회로가 사용 가능한 경우, 기능(343)은 단계(1518)에서 우선도(1301) 정보를 검색한다.Returning to step 1507, if the retrieved matrix entry is a routing pattern number 1201, the function 343 proceeds to step 1508, where the FRL 1330, bearer capability 1331, out-of-field permission 1332, ISDN request / desire 1333 and DCS request / desire 1334 are obtained. The function 343 then accesses one routing pattern table 1300 indicated by the routing pattern number 1201 retrieved in step 1510, and in step 1512, the tenant partition 1232 obtained previously. The information obtained accordingly is used to examine the accessed pattern table 1300 for proper priority 1301. As determined at step 1514, if a suitable priority 1301 is found, the function 343 translates at step 1516 to determine whether the circuit of the priority 1301 is available for the call. And state 204 is checked. If the circuit is not available, function 343 returns to step 1512 to retrieve another suitable priority 1301. If circuitry is available, function 343 retrieves priority 1301 information at step 1518.
단계(1514)로 돌아가서, 적합한 우선도(1301)가 발견되지 않는 경우, 기능(343)은 단계(1520)에서 디폴트 우선도(1301)를 정의하는 정보를 검색한다. 단계(1518 또는 1520)에 이어서, 기능(343)은 단계(1522)에서 검색된 우선도(1301)의 DMI(1405)를 체크하여 숫자 수정이 그것에 의해 지정되는지를 결정한다. DMI(1405)가 비어 있는 경우, 숫자 수정은 필요하지 않고, 기능(343)은 단계(1530)로 진행한다. DMI(1405)가 비어 있지 않은 경우, 숫자 수정이 요구되므로, 기능(343)은 단계(1524)에서 제 15 도의 숫자 수정 기능(342)을 기동시킨다. 기동의 일부로서, 기능(343)은 단계(1500)에서 수신한 수정 다이얼 번호 및 DMI(1405)의 내용을 숫자 수정 기능(342)으로 보낸다. 그 다음으로 기능(343)은 단계(1526)에서 숫자 수정 결과의 수신을 대기한다.Returning to step 1514, if a suitable priority 1301 is not found, the function 343 retrieves information defining a default priority 1301 at step 1520. Following step 1518 or 1520, function 343 checks the DMI 1405 of the priority 1301 retrieved at step 1522 to determine if a numeric correction is specified by it. If the DMI 1405 is empty, no number correction is necessary, and the function 343 proceeds to step 1530. If the DMI 1405 is not empty, a number correction is required, so the function 343 activates the number correction function 342 of FIG. 15 at step 1524. As part of the activation, the function 343 sends the correction dial number and the contents of the DMI 1405 received at step 1500 to the number correction function 342. Function 343 then waits at step 1526 to receive the result of the number correction.
숫자 수정 기능(342)은 제 15 도와 관련하여 설명한 방식으로 응답한다. 단계(1528)에서, 결과의 다이얼 번호가 기능(343)으로 복귀될 때, 기능(343)은 단계(1530)로 진행한다.The number correction function 342 responds in the manner described in connection with the fifteenth degree. At step 1528, when the resulting dial number returns to function 343, function 343 proceeds to step 1530.
단계(1530)에서, 기능(343)은 숫자 송신(240)을 기동시키고, 결과의 다이얼번호(단계(1522)에서 지정되는 부가 숫자 수정이 없을 경우 단계(1500)에서 수신된 수정 다이얼 번호 일수 있음)와 검색된 우선도(1301)를 파라미터로서 지나가게 한다. 그 다음으로 기능(343)은 단계(1532)에 종료한다.In step 1530, the function 343 activates the numeric transmission 240 and may be the modified dial number received in step 1500 if there is no additional numeric modification specified in the resulting dial number (step 1522). ) And the retrieved priority 1301 as parameters. Function 343 then ends at step 1532.
숫자 송신(240)이 제 20 내지 22 도에 도시되어 있다. 이것은 제 20 도의 송신 테이블(1700) 및 제 22 도의 숫자 송신 기능(344)으로 이루어져 있다. 송신 테이블(1700)은 복수의 송신 엔트리(1701)를 포함하고, 이 각각의 송신 엔트리는 숫자 송신 정보들로된 집합이다. 송신 엔트리(1701)는 DSI(1406)에 의해 인덱스된다. 송신 엔트리(1701)의 예가 제 21 도에 도시되어 있다. 이것은 복수의 필드(1801 내지 1808)로 이루어져 있다. 송신 번호(1801)는 수신 결과 다이얼 번호 대신에 송신되어야 하는 번호를 지정하고, 송신 번호(1801)가 비어 있는 경우 수신결과 다이얼 번호가 송신된다. 시외 프리픽스(1802)는 번호와 함께 송신되는 시외 지시-예, "1"-를 지정한다. 이것은 또한 시외 프리픽스가 시외 호출만으로 송신되는지 또는 모든 호출로 송신되는지를 지정한다. 교환국간 캐리어 코드(IXC)(1803)는 호출에 대하여 "10XXX" 캐리어 I.D. 코드가 송신되는지를 지정한다. 다이얼 액세스 코드(DAC)(1804)는 DAC가 상기 호출에 대해 송신되는지를 지정한다. DAC는 NDA(210)과 관련하여 상술하였다. 다이얼 종료 문자(1805)는 "#"와 같은 다이얼종료 문자가 송신된 번호의 종료시에 송신되는지를 지정한다. 각 필드(1802 내지 1805)는 상기 필드의 정보 유형에 대해 다음과 같은 옵션을 지정한다:Numeric transmission 240 is shown in FIGS. 20-22. This consists of the transmission table 1700 of FIG. 20 and the numeric transmission function 344 of FIG. The transmission table 1700 includes a plurality of transmission entries 1701, each of which is a set of numeric transmission information. The transmission entry 1701 is indexed by the DSI 1406. An example of a transmission entry 1701 is shown in FIG. This consists of a plurality of fields 1801 to 1808. The transmission number 1801 designates a number to be transmitted instead of the reception result dial number, and when the transmission number 1801 is empty, the reception result dial number is transmitted. The long distance prefix 1802 specifies the long time indication, eg, "1", that is sent with the number. It also specifies whether long distance prefixes are sent in long distance calls or in all calls. Inter-Carrier Carrier Code (IXC) 1803 is a " 10XXX " carrier I.D. Specifies whether a code is sent. Dial Access Code (DAC) 1804 specifies whether a DAC is sent for the call. The DAC has been described above in connection with the NDA 210. The dial ending character 1805 specifies whether a dial ending character such as "#" is transmitted at the end of the transmitted number. Each field 1802-1805 specifies the following options for the information type of the field:
* 호출자가 다이얼했음에도 불구하고 그 정보 유형을 송신하지 않는다Does not send that type of information even if the caller has dialed
* 호출자가 상기 정보 유형을 다이얼하지 않음에도 불구하고 필드의 내용을 항상 송신한다Always transmit the contents of the field even if the caller does not dial the above information type
* 호출자가 정보 유형을 다이얼했을 경우 호출자가 다이얼한 정보를 송신하거나, 그렇지 않으면 필드의 내용을 송신한다.Send the information the caller dialed if the caller dialed the information type, or the contents of the field.
그룹 숫자(1806)는 송신 숫자의 그룹을 분리하기 위해 구문 해석을 사용해야 하고, 사용한 경우 길이의 정도, 및 상기 그룹에 대한 숫자 송신 모드(예, 로터리 또는 펄스)를 지정한다. ISDN 메세지 유형(1807)은 번호를 송신하는데 사용될 ISDN 메세지의 유형을 지정한다. 그리고 순회 클래스 마크(TCM)(1808)는 호출의 FRL과 조건 루팅 카운트를 반영하고, 번호와 함꼐 송신되어야할 0 이상의 TCM들을 지정한다.The group number 1806 should use parsing to separate groups of transmitted numbers, and specify the degree of length if used, and the numeric transmission mode (eg, rotary or pulse) for the group. ISDN message type 1807 specifies the type of ISDN message to be used to send the number. And the traversal class mark (TCM) 1808 reflects the FRL and condition routing count of the call and specifies zero or more TCMs to be transmitted with the number.
제 22 도는 숫자 송신 기능(344)의 동작 흐름도이다. 단계(1900)에서 기동될 시에, 기능(344)은 단계(1902)에서 송신 테이블(1700)로의 인텍스로서 수신 우선도(1301)의 DSI(1406)를 이용하고, 단계(1904)에서 상기 인덱스된 송신 엔트리(1701)를 테이블(1700)로부터 검색한다. 그 다음으로 기능(344)은 단계(1906)에서, ISDN, 트렁크 그룹인지의 여부를 결정하기 위해, 수신 우선도(1301)의 필드(1401)에 의해 지정되는 트렁크 그룹과 관련된 번역 및 상태(204)를 이용한다. ISDN 트렁크 그룹인 경우, 기능(344)은 우선도(1301)에 포함된 정보에 따라 호출경로를 설정하는데 필요한 ISDN 메세지를 생성하고, 종래 방식으로 단계(1908)에서 송신 엔트리(1701)에 의해 지정된 정보로 그들의 정보 필드를 채운다. 다음에, 기능(344)은 단계(1910)에서 다시 종래 방식으로, 접속 설정 모듈(202)을 사용하여 우선도(1301)의 필드(1401)에 의해 지정된 트렁크 그룹의 트렁크(16)를 통해 ISDN 메세지를 송신함으로써 원하는 호출 경로를 설정한다. 일단 필요한 호출 경로가 설정되면, 월드 클래스 루팅(200)의 작업은 완료되며, 기능(344)은 단계(1930)에서 종료한다.22 is a flowchart of operation of the numeric transmission function 344. When activated in step 1900, function 344 uses the DSI 1406 of reception priority 1301 as an index to transmission table 1700 in step 1902, and the index in step 1904. The received transmission entry 1701 from the table 1700. Function 344 then proceeds to step 1906 with the translation and status 204 associated with the trunk group specified by field 1401 of reception priority 1301 to determine whether it is an ISDN, a trunk group. ). In the case of an ISDN trunk group, the function 344 generates the ISDN message required to set up the call path according to the information contained in the priority 1301 and, in a conventional manner, specified by the transmission entry 1701 in step 1908. Fill in their information fields with information. The function 344 then returns in step 1910 via the trunk 16 of the trunk group specified by the field 1401 of the priority 1301 using the connection establishment module 202 again in a conventional manner. Set the desired call path by sending a message. Once the required call path is established, the work of world class routing 200 is complete and function 344 ends at step 1930.
단가(1906)로 돌아가서, 지정된 트렁크 그룹이 ISDN 트렁크 그룹이 아닌 경우, 기능(344)은 검색된 송신 엔트리(1701)의 필드(1806)를 체크하여 단계(1920)에서 숫자가 그룹화되는지의 여부를 판정한다. 만일 그룹화되는 경우, 기능(344)은 단계(1922)에서 접속 설정 모듈(202)을 사용하여 종래의 방법으로, 우선도(1301) 및 송신 엔트리(1701)에 포함되어 있는 정보를 사용함으로써, 검색된 송신 엔트리(1701)의 필드(1806)에 의해 지정되는 숫자 송신 모드 및 제 1 숫자 그룹을 이용하여 호출 경로를 설정한다. 이어서, 기능(344)은 단계(1923)에서 접속 설정 모듈(202)에 의하여, 지정된 숫자 송신 모드를 사용하고, 검색된 송신 엔트리(1701)의 필드(1806)에 의해 지정된 길이의 구문 해석에 의해 분리된 잔류 숫자 그룹을 송신한다. 이어서 기능(344)은 단계(1930)에서 종료한다.Returning to unit price 1906, if the designated trunk group is not an ISDN trunk group, function 344 checks field 1806 of the retrieved transmission entry 1701 to determine whether the numbers are grouped in step 1920. do. If grouped, the function 344 may be retrieved by using the information contained in the priority 1301 and the transmission entry 1701 in a conventional manner using the connection establishment module 202 in step 1922. The call path is established using the first transmission group and the number transmission mode specified by field 1806 of the transmission entry 1701. The function 344 then uses the numeric transmission mode specified by the connection establishment module 202 in step 1923, and separates by parsing the length specified by the field 1806 of the retrieved transmission entry 1701. The remaining group of digits. Function 344 then ends at step 1930.
단계(1920)로 돌아가서, 숫자가 그룹화되지 않을 경우, 기능(344)은 단계(1924)에서 또다시 종래 방법으로, 접속 설정 모듈(202)에 의하여, 우선도(1301) 및 송신 엔트리(1701)에 포함된 정보를 이용함으로써, 검색된 송신 엔트리(1701)의 필드(1806)에 의해 지정된 숫자 송신 모드를 사용하여 호출 경로를 설정한다. 이어서, 기능(344)은 단계(1930)에서 종료한다.Returning to step 1920, if the numbers are not grouped, the function 344, in step 1924, is again in a conventional manner, by the connection establishment module 202, priorities 1301 and transmission entries 1701. By using the information contained in, the call path is set using the numeric transmission mode specified by the field 1806 of the retrieved transmission entry 1701. Function 344 then ends at step 1930.
따라서, 상술된 실시예에 대한 다양한 변형예 및 수정예가 당업자에게는 명백할 것임을 이해해야 한다. 예컨대, VNI를 루팅 패턴 번호로 변환하게 하는 GRS 매트릭스에 부가적인 파라미터들이 포함될 수 있다. 또는 부가적인 파라미터들이 GRS 루팅 패턴 테이블에 포함될 수 있고 최종 우선도 선택을 보조하도록 우선도와 관련될 수 있다. 또한, 부가적인 스트링 유형 및 스트링 유형 관계에 대한 문법규칙이 정의될 수 있다. 또한, 복수의 허용 가능한 스트링 길이가 소정 스트링 유형에 대해 정의되고, 숫자 이외에, 스트링내의 알파벳이나 기타 다른 문자들이 이용될 수 있다. 게다가, 예외 트리의 내용은 주네트워크 구문 트리에 포함될 수도 있다. 이러한 변형예 및 수정예가 본 발명의 의도 및 범위에서 벗어나지 않고 본 발명의 장점을 유지하면서 실시될 수 있다. 그러므로 이러한 모든 변형예 및 수정예들을 다음의 특허청구의 범위에 포함하고자 한다.Accordingly, it should be understood that various modifications and variations to the embodiments described above will be apparent to those skilled in the art. For example, additional parameters may be included in the GRS matrix to convert the VNI into a routing pattern number. Or additional parameters may be included in the GRS routing pattern table and associated with priority to assist in final priority selection. In addition, grammar rules for additional string types and string type relationships may be defined. Also, a plurality of allowable string lengths are defined for a given string type, and in addition to numbers, alphabets or other characters within the string may be used. In addition, the contents of the exception tree may be included in the main network syntax tree. Such modifications and variations can be made while maintaining the advantages of the invention without departing from the spirit and scope of the invention. Therefore, all such modifications and variations are intended to be included in the scope of the following claims.
Claims (22)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/786,167 US5311584A (en) | 1991-10-31 | 1991-10-31 | Telecommunications call-processing arrangement |
US786,167 | 1991-10-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR930009316A KR930009316A (en) | 1993-05-22 |
KR100265912B1 true KR100265912B1 (en) | 2000-09-15 |
Family
ID=25137784
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019920020139A Expired - Fee Related KR100265912B1 (en) | 1991-10-31 | 1992-10-30 | Arrangement and method for telecommunication call processing |
Country Status (8)
Country | Link |
---|---|
US (1) | US5311584A (en) |
EP (1) | EP0540256A2 (en) |
JP (1) | JP2651095B2 (en) |
KR (1) | KR100265912B1 (en) |
CN (1) | CN1055597C (en) |
CA (1) | CA2076361C (en) |
SG (1) | SG42327A1 (en) |
TW (1) | TW213524B (en) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5311586A (en) * | 1991-10-31 | 1994-05-10 | At&T Bell Laboratories | Dynamic routing-administration |
US5289535A (en) * | 1991-10-31 | 1994-02-22 | At&T Bell Laboratories | Context-dependent call-feature selection |
US5329582A (en) * | 1991-10-31 | 1994-07-12 | At&T Bell Laboratories | Dynamic tone-administration |
US5343517A (en) * | 1991-10-31 | 1994-08-30 | At&T Bell Laboratories | Use-code based call-treatment selection |
US5333188A (en) * | 1991-10-31 | 1994-07-26 | At&T Bell Laboratories | Dialed number recognition arrangement |
US5404395A (en) * | 1992-02-24 | 1995-04-04 | At&T Corp. | External-to-internal numbering plan aliasing |
US5412714A (en) * | 1992-02-24 | 1995-05-02 | At&T Corp. | Mnemonic and synonymic addressing in a telecommunications system |
US5299261A (en) * | 1992-02-24 | 1994-03-29 | At&T Bell Laboratories | Arrangement for effecting segmentation of a dialed number |
US5321743A (en) * | 1992-02-24 | 1994-06-14 | At&T Bell Laboratories | Shared-tenant services arrangement providing numbering-plan independence and cross-plan access to tenant groups |
US5787160A (en) * | 1994-12-08 | 1998-07-28 | Mci Communications Corporation | Intelligent routing of special service calls |
US5623541A (en) * | 1995-02-17 | 1997-04-22 | Lucent Technologies Inc. | Apparatus to manipulate and examine the data structure that supports digit analysis in telecommunications call processing |
CA2147776C (en) * | 1995-04-25 | 1997-09-02 | George W. Turner | Number translation services matrix |
US5892821A (en) * | 1995-06-02 | 1999-04-06 | Bell Sygma Inc. | Virtual wide area centrex |
US5887058A (en) * | 1996-03-18 | 1999-03-23 | Alcatel Usa Sourcing, L.P. | Digit parsing for a flexible dial plan capability in a telecommunications switch |
US5754790A (en) * | 1996-05-01 | 1998-05-19 | 3Com Corporation | Apparatus and method for selecting improved routing paths in an autonomous system of computer networks |
US5828665A (en) * | 1996-05-01 | 1998-10-27 | 3Com Corporation | Apparatus and method for selecting improved routing paths in an emulated lan over an ATM network |
DE19644787C1 (en) * | 1996-10-28 | 1998-04-02 | Siemens Ag | Method and device for connecting subscribers of a telecommunications network in a switching center |
US6122258A (en) * | 1997-08-29 | 2000-09-19 | Nortel Networks Corporation | Method for creating a numbering plan-independent directory structure for telecommunications applications |
US7222087B1 (en) * | 1997-09-12 | 2007-05-22 | Amazon.Com, Inc. | Method and system for placing a purchase order via a communications network |
US5960411A (en) * | 1997-09-12 | 1999-09-28 | Amazon.Com, Inc. | Method and system for placing a purchase order via a communications network |
US7113585B1 (en) * | 2000-03-15 | 2006-09-26 | Breckenridge John L | Method and apparatus for an intelligent telephone prefix dialer |
US20060159246A1 (en) * | 2005-01-14 | 2006-07-20 | Avaya Technology Corp. | Private branch exchange with remote access to features |
US8072903B2 (en) * | 2006-05-30 | 2011-12-06 | Genband Us Llc | Methods, systems, and computer program products for performing range-based directory number (DN) screening |
KR101662025B1 (en) * | 2015-04-23 | 2016-10-05 | 주식회사 진명 에프 엠 씨 | Apparatus For Aligning Noodle |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4314342A (en) * | 1971-04-16 | 1982-02-02 | Texas Instruments Incorporated | Unsafe machines without safe positions |
US4706212A (en) * | 1971-08-31 | 1987-11-10 | Toma Peter P | Method using a programmed digital computer system for translation between natural languages |
US4259549A (en) * | 1976-10-21 | 1981-03-31 | Wescom Switching, Inc. | Dialed number to function translator for telecommunications switching system control complex |
US4256926A (en) * | 1976-10-21 | 1981-03-17 | Wescom Switching, Inc. | Microprocessor control complex for a telecommunication switching system |
US4191860A (en) * | 1978-07-13 | 1980-03-04 | Bell Telephone Laboratories, Incorporated | Data base communication call processing method |
US4577066A (en) * | 1983-08-03 | 1986-03-18 | At&T Bell Laboratories | Telephone interexchange call routing |
US4600812A (en) * | 1984-11-23 | 1986-07-15 | At&T Information Systems Inc. | Communication system having abbreviated dialing access |
US4695977A (en) * | 1985-12-23 | 1987-09-22 | American Telephone And Telegraph Company And At&T Bell Laboratories | Control of real-time systems utilizing a nonprocedural language |
US4782519A (en) * | 1986-05-22 | 1988-11-01 | Network Access Corporation | Method and apparatus for enhancing the operating capabilities of a telephone switching system |
US5021943A (en) * | 1988-08-01 | 1991-06-04 | Motorola, Inc. | Content independent rule based options negotiations method |
US5017917A (en) * | 1988-12-30 | 1991-05-21 | At&T Bell Laboratories | Restriction of communication service accessibility among subscriber communities |
US4987587A (en) * | 1989-07-26 | 1991-01-22 | International Business Machines Corporation | Method and apparatus for providing 800 number service |
AU631276B2 (en) * | 1989-12-22 | 1992-11-19 | Bull Hn Information Systems Inc. | Name resolution in a directory database |
US5311586A (en) * | 1991-10-31 | 1994-05-10 | At&T Bell Laboratories | Dynamic routing-administration |
US5333188A (en) * | 1991-10-31 | 1994-07-26 | At&T Bell Laboratories | Dialed number recognition arrangement |
US5289535A (en) * | 1991-10-31 | 1994-02-22 | At&T Bell Laboratories | Context-dependent call-feature selection |
US5343517A (en) * | 1991-10-31 | 1994-08-30 | At&T Bell Laboratories | Use-code based call-treatment selection |
US5329582A (en) * | 1991-10-31 | 1994-07-12 | At&T Bell Laboratories | Dynamic tone-administration |
-
1991
- 1991-10-31 US US07/786,167 patent/US5311584A/en not_active Expired - Lifetime
-
1992
- 1992-08-08 TW TW081106285A patent/TW213524B/zh active
- 1992-08-19 CA CA002076361A patent/CA2076361C/en not_active Expired - Fee Related
- 1992-10-23 EP EP92309707A patent/EP0540256A2/en not_active Withdrawn
- 1992-10-23 SG SG1996000713A patent/SG42327A1/en unknown
- 1992-10-30 CN CN92112606A patent/CN1055597C/en not_active Expired - Fee Related
- 1992-10-30 JP JP4314315A patent/JP2651095B2/en not_active Expired - Lifetime
- 1992-10-30 KR KR1019920020139A patent/KR100265912B1/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CA2076361C (en) | 1996-08-27 |
CN1055597C (en) | 2000-08-16 |
JPH0670026A (en) | 1994-03-11 |
CA2076361A1 (en) | 1993-05-01 |
EP0540256A3 (en) | 1994-08-31 |
JP2651095B2 (en) | 1997-09-10 |
CN1074572A (en) | 1993-07-21 |
EP0540256A2 (en) | 1993-05-05 |
KR930009316A (en) | 1993-05-22 |
US5311584A (en) | 1994-05-10 |
SG42327A1 (en) | 1997-08-15 |
TW213524B (en) | 1993-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100265912B1 (en) | Arrangement and method for telecommunication call processing | |
JP2792797B2 (en) | Call processing apparatus and call processing method | |
JP3066205B2 (en) | Call processing arrangement and call processing method | |
JP2792796B2 (en) | Switching system and call processing method | |
JP2795298B2 (en) | Call processing apparatus and call processing method | |
US5289535A (en) | Context-dependent call-feature selection | |
US5404395A (en) | External-to-internal numbering plan aliasing | |
JP2795299B2 (en) | Shared tenant service device and method | |
JP2651096B2 (en) | Call processing apparatus and call processing method | |
JP2851978B2 (en) | Symbol sequence conversion device and conversion method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
St.27 status event code: A-0-1-A10-A12-nap-PA0109 |
|
R17-X000 | Change to representative recorded |
St.27 status event code: A-3-3-R10-R17-oth-X000 |
|
PG1501 | Laying open of application |
St.27 status event code: A-1-1-Q10-Q12-nap-PG1501 |
|
A201 | Request for examination | ||
P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
P13-X000 | Application amended |
St.27 status event code: A-2-2-P10-P13-nap-X000 |
|
PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
R17-X000 | Change to representative recorded |
St.27 status event code: A-3-3-R10-R17-oth-X000 |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
St.27 status event code: A-1-2-D10-D22-exm-PE0701 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
St.27 status event code: A-2-4-F10-F11-exm-PR0701 |
|
PR1002 | Payment of registration fee |
St.27 status event code: A-2-2-U10-U11-oth-PR1002 Fee payment year number: 1 |
|
PG1601 | Publication of registration |
St.27 status event code: A-4-4-Q10-Q13-nap-PG1601 |
|
R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 4 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 5 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 6 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 7 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 8 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 9 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 10 |
|
FPAY | Annual fee payment |
Payment date: 20100610 Year of fee payment: 11 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 11 |
|
LAPS | Lapse due to unpaid annual fee | ||
PC1903 | Unpaid annual fee |
St.27 status event code: A-4-4-U10-U13-oth-PC1903 Not in force date: 20110620 Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE |
|
PC1903 | Unpaid annual fee |
St.27 status event code: N-4-6-H10-H13-oth-PC1903 Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE Not in force date: 20110620 |