CA2002055C - Telecommunications database accessing method - Google Patents

Telecommunications database accessing method

Info

Publication number
CA2002055C
CA2002055C CA002002055A CA2002055A CA2002055C CA 2002055 C CA2002055 C CA 2002055C CA 002002055 A CA002002055 A CA 002002055A CA 2002055 A CA2002055 A CA 2002055A CA 2002055 C CA2002055 C CA 2002055C
Authority
CA
Canada
Prior art keywords
accessing
call
data
list
database means
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
Application number
CA002002055A
Other languages
French (fr)
Other versions
CA2002055A1 (en
Inventor
Van-Ban Le
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AT&T Corp
Original Assignee
American Telephone and Telegraph Co Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by American Telephone and Telegraph Co Inc filed Critical American Telephone and Telegraph Co Inc
Publication of CA2002055A1 publication Critical patent/CA2002055A1/en
Application granted granted Critical
Publication of CA2002055C publication Critical patent/CA2002055C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/0016Arrangements providing connection between exchanges
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/0016Arrangements providing connection between exchanges
    • H04Q3/0029Provisions for intelligent networking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13512800 - freefone
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13547Indexing scheme relating to selecting arrangements in general and for multiplex systems subscriber, e.g. profile, database, database access

Abstract

Method and apparatus for reducing call setup time for calls to Advanced 800 customers by eliminating one database query. (Toll charges for 800 calls arepaid by the called customer.) In the prior art, a call to an Advanced 800 customer required accessing a Basic 800 database, then, using data obtained therefrom, accessing an Advanced 800 database. In accordance with this invention, a table of the most frequently called Advanced 800 numbers and the corresponding data normally obtained from the Basic 800 database is dynamically maintained in each toll switching system. When an 800 call is received at a toll switching system, the table is examined to see if the Advanced 800 service accessing data is stored therein.
If so, the advanced 800 database is directly accessed without first accessing the Basic 800 database; if not, the call is processed as in the prior art, plus updating the table if the call is to an Advanced 800 customer. Advantageously, such an arrangement reduces call setup time to frequently called Advanced 800 customers by about 1.5seconds.

Description

IMPROVED TELECOMMUNICATIONS DATABASE ACCESSING METHOD

Technical Field This invention relates to methods and apparatus for ~ces~ing databases in a distributed d~t~b~e system of a telec~..n.~ tions r,~ ~wolL.
S Pl~obl~
Inward Wide Area Telephone Service, otherwise known as 800 service, allows callers to call a destination customer of the service on a toll free basis. A
special block of numbers prefixed by 800 has been set aside for this purpose. These 800 numbers have the attribute that there is no area code to inAic~te the portion of 10 the COullll.y that is the destin~tion for the call. This problem has been solved by creating a d~t~b~se that is queried for 800 calls to make a tran~l~tion bet~.cell a dialed 800 number and a destin~tion. When a toll switch receives an 800 call, itsends a CO~llOIl channel sign~ling (CCS) mesc~ge to an INWATS d~tab~e or Basic 800 tl~t~b~e. The message includes the area code from which the call origin~te~l15 The INWATS d~tab~e sends back an ~lnli~ted telephone number to the switch to route the call.
The 800 service has been enh~n~ed by becoming an advanced 800 service which includes a large number of features including, for example, Call ~UIllpt~ service which routes calls to customized recorded announce.llellta based on 20 a caller's additional dialed digit(s). A r~cor~ed anno.lncem~nt will request the caller to key a code nu~l to specify the ~yr~pliate routing. The cualulll~. will specify a default route for invalid numbers or no l~i,~nse. The ~;u~lO~ may also specify difL.e.~t routing for dirr~..,.~t times of the day or dirre.e.lt days of the week or holidays. The Ad~nccd 800 service le~ui,.s a very large additional d~t~b~se For 25 econu~ of development effort, a s~z,~ t~b~e was est~bli~hed to store the data l~Uil~d for Advanced 800 C~ u...-, a. The 800 numbers for Advanced 800 CUSlO~la and Basic 800 c~l~lo.~ are in the same range so that it is not possible to eY~mine that num~. in order to dete...-.l-e whether a particular 800 num~r l~se.ltà Advanced 800 or Basic 800 seIvice, unless a tr~n~l~tion is provided in 30 each toll switch for all 800 numbers, a solution which requires a large and costly additional tranCl~tion database that must be frequendy ~lp~ted Moreover, some CuSlCml,-a switch from Basic 800 to Advanced 800 service and do not wish to havetheir 800 number changed at the time they make this switch. Consequently, Advanced 800 service is h~n-llP~ today by first querying the Basic 800 (3~t~base: if 35 Basic 800 service is being offered to the destin~tion customer, then the basic ,~

translation, in this case, an llnli~te~l ten digit null~r for routing the call, is provided.
If the customer has Advanced 800 service the inf ,llllation that is provided is a special number which triggers a query to the Advanced 800 d~AtAbAce when that nulllb~, is trAn~lAted at the switch. The toll switch h~ndling the call then must S request the Advanced 800 trAn~lAtion data from the Advanced 800 l~tAb~e, using that special number. This has the disadvantage of slowing down all Advanced 800 service calls by a~pl~ ~imalely 1.5 seconds, the period of time that has elapsed in h~n-1ling the query to the basic 800 ~at~b~e and the l~,spollse to this query. Such a long additional delay is considered undesirable, especially by large, rl~u~,ntly called 10 Advanced 800 service ~;u~lo~e~. Consequently, a problem of the prior art is that all Advanced 800 service calls, and other calls having the ~l~ly that the choice of a d~t~bA~e must be i~l~ntifiçd through access of another ~At~b~e, are delayed by an appreciable period of time in order to make an extra ~l~t~bA~e query, in order to identify the ~atAb~se where the desired hlrc,lma~ion is to be found.
15 Solution In accordance with the principles of my invention, illustratively, each toll switch ,..ain~in~ a list of the most frequently dialed Advanced 800 or other service numbers and before making the initial ~1Atab~e access, checks that list to see if the list contAin~ inrolll.alion as to where the data for the desired number is to be 20 found. nlllstnA~tively~ both-the initial l~tAb~se and the Advanced 800 ~iAtAb~e are shared among a plurality of toll swilches. Advantageously, .~Ainte~nce of such alist avoids the nece~ y for a~cess;.lg the initial dAt~bA~e in a large fraction of the times that the initial ~at~bA~e would have to be otherwise queried. Advantageously, the table responds to the dynamic ch~ua~ istics of the traffic, thus requiring no 25 en~ . h.g and ~nmrinF that the table contains those entries most likely to be of use.
In accol~ ce with one specific embodiment of the invention, each entry has an A~ociAted bit in~iicator. This inrlif~At~r is initially zero, and kept at that value when an entry is first made in the table. The in~licAtor is set to one on any 30 subsequent reference to the coll~nding entry. A new entry may be made where the cc,ll~,i,~nding intlicAtor is in the .. "a~ 1 or reset state. Marked in~ tQrs are reset when h~lnting for an available slot for a new entry. A circular pointer is used to in~ te which indicator is to be eYAmine~ first when a new entry is to be placed in the table, the pointer being advanced after every reset action and after making a new 35 entry. Advantageously, such an arrangement ensures that the most f~uenlly used numbers are I~Ai~ it~ed in the table most of the time.

In accordallce with another aspect of the invention, the table is cleared from time to time. Advantageously, such an arrangem~-nt ensures that the data for such table is up to date since the response from the basic data table is required to form every entry in the table.
In accordance with another aspect of the invention, the table provides indivitln~li7~ data, otherwise provided by the Basic 800 .1~t~bæce for each Advanced 800 number in response to the initial dflt~h~ce entry, for making the subsequent dflt~b~ce query. In another application, this data represents the i-lentifiç~tion of one of a plurality of d~t~baces. Advantageously, providing this 10 indivirl~l~li7s~ data makes it possible to avoid the query of the initial (Basic 800) d~tnb~ce In accordance with another aspect of this invention, an AVL tree structure is used to link the entries in the table. Advantageously, such an ~ng~omPnt provides an effl~ ient arr~ng~m~nt for hllnting for entries in the table, 15 and for deleting old entries and adding new entries.
In accordal ce with another aspect of the invention, the toll switch mqint~inc a list of customer identifi~tion numbers and coll~,~ollding data. The list is checked on an inco.l~ing call to see whether the cu~lo,llcr identifi~atiQn number corresponds to a .. hf ~ of the list; if so, the same type of actions are pclro~ ed, 20 namely, bypassing an initial l~t~b~ce quer,v and sllbstit~lting the corresponding data from the list for the data that would otherwise be fetched from the inidal l~t~b~ce.
Accordingly, this invention relates to m~thoflc and app~lus for ~ccessing a first dflt~h~ce means in l~s~nse to a request, and, responsive to a class of responses from the _rst rl~t~h~ce means, aCcescing a second dflt~bace means, 25 wh~ , responsive to prescribed h)fo"llation in the request, the ~ccessing of the first dflt~h~ce means is bypassed.
Brief Description of the Dl a~
FIG. 1 is a block diagram of an ~rrangem~nt of switching SyS~ S and ~l~t~h!~ce,c for implC...f n~ g the present invention;
FIG. 2 is a more det~iled diagram of one of the switches showing a processor and a table in the processor;
FIG. 3 is an example of entries in that table; and FIGS. 4-6 are flow diagrams for a method of imple ..--~ the invention.

Detailed Description FIG. 1 is a diagram illustrating the operation of prior art systems. A
customer at ~;uSLo~,l station 1 dials an 800 number into a local switch 2. The local switch fo.~s this number to toll switch 3. Toll switch 3 recognizing that this is 5 an 800 number first queries INWATS l~t~b~e network control point S to find the data required to route the basic 800 service call or to find out that the customer has dialed an Advanced 800 number and to fetch a number for ~cces~ing the Advanced 800 ~l~t~b~e If the customer has dialed an Advanced 800 number, the toll switch 3 receives a r~j~ol se from INWATS ~t~b~e n~ lwu~L control point 5. After 10 tr~n~l~ting the clull.cd number, the toll switch recognizes that the call is an Advanced 800 call, and sends a query con plising the ~lu lled number to n~,lw.~.], control point 4 to obtain the info.lllation needed to process the Advanced 800 call.
FIG. 2 illustrates the improvement of the present invention. Toll switch 3 has a processor 10 co ll~liSil g a central proces~;ng unit 15 and a 15 ll~moly 17. In the ~ .lo ~ 17 is a table 20. This table has a plurality of entries, 21,...,22,23, each comprising an 800 number and a special number, for example, anumber with prefix 195, for ~cces~ing or querying network control point 4 and each with an associated in~ tor 24,...,2S,26. When toll switch 3 receives a call setup request comrri~ing an 800 nllmber, it selectively ~ccesses NCP 4 by first hllnting 20 over table 20, and co.~ the received number with each entry of the table, to see if that 800 nu~ber is in table 20. If so, toll switch 3 directly accesses the direct sign~ling dialing (DSD) network control point (NCP) 4. This request is Ll~n~
over a CO~Ol ch~rlnel si~ling (CCS) l1etw~ 6. ~ltern~tely, if the number is not in the table 20, then pl~cei,s~r 10 queries INWATS ~t~h~e NCP 5. If NCP S
2S respor-~s with a nu~ which triggers a query to DSD NCP 4, then processor 10 not only sends a query message to NCP 4, but also inserts a c~ ding entry in table 20 so that the next time the same Advanced 800 numbe~ is dialed there is likely to be an entry in table 20 and the toll switch 3 will not be l~Ui~`~d to query NCP 5.
M~ u~ 17 of p-vcessor 10 also compri~es a pointer 30 for "~ i"g 30 a record of which in~ tor has been most recently .oY ~ ed for the purpose of inserting a new entry. Each entry of taUe 20 comprises an 800 number, a co .~ ,onding special number for querying nctwo 1~ control point 4; and AVL treestructure data 28 used for hllntin~ an entry in table 20 and for deleting an entry and inserting a new entry in table 20. This process is described with respect to FIG. 5.

A typical example of the numeric part of the entries in the table 20 is shown in FIG. 3. Three entries are shown l~l-,sellLing the numbers 800-222-2323 (entry 21), 800-275-2457 (entry 22) and 800-287-1930 (entry 23), and thei-r c~ ~ollding special numbers, 195- 123- 1111, 195- 123-2222, and 195- 123-3333, S respecdvely. The cc~ ollding in~ic~tors for these three entries are zero, one, and zero. The zero for in-liçator 24 in~icates that the coll~,i,ponding nulll~l (entry 22) 800-287-1930 had not been processed since the last dme that its in~icator had been reset. The one for in-liç~tors 24 and 26 infli~tes that the coll~sl,ollding entries 21 and 23, telephone nulllb~ 800-222-2333 and 800-287- 1930, had been processed 10 since the last time in-lic~tors 24 and 26 were reset. If, for example, at this point a request was made for processing a telephone call with a dialed number 800-274-1233, a number not cwl~llLly in table 20, the ~tabace 5 would be queried. If thepollse from ~t~bace S in~ ted that this number was for a cu~Lolllel who had Advanced 800 service, and l~,tullled the special nwllber 195-123-4444, then the 15 nwll~l 274-1233 and the special nulll~l 195-123-4444 would be subsdtuted for entry 23, as di~scl~ssed below with respect to FIG. 5. The indicator 26 is not marked when an entry is made to ensure that a rarely dialed Advanced 800 nulllber is not retained for a long dme in table 20.
FIG. 4 is a flow diagram of the pertinent ~JlU~Slal~S and acdons for 20 pl~cess;,-g 800 calls. Only the blocks in~ic~te~ as being within dashed lines 110, and blocks 128 and 130 (the latter being described more fully with respect to FIG. S) are new. The rest l~pl~,sent present arran~.nellts for processing 800 calls. A toll switch recognizes that it must process an 800 call by cheçlrin~ the first three digits of the called nwu~ (acdon block 100). Then, in accol~lce with the invention, the 25 acdons of blocks 111, 112, 114 and 116 in-licated inside dashed line 110 are ec~lt~l Each toll switch 3 ~ inl;.inc a short list of numbers which are exemptedfrom the process initi~te~ by acdon block 112. The 800 number is first colll~aled with all the nllmbPrs in this exempdon (test 111). If the 800 number does not match any of these nulllb~ , then acdon block 112 is entered. If the 800 number does 30 match one of the numbers on the exelll~ n list, then a request is imm~ tely sent to the INWATS d~t~h~ce NCP (action block 120). The pulpose of the exempdon list is to permit traffic data to be ~rc-lmlll~tetl at the INWATS d~t~h~ce NCP for Illoniluling and analysis of dialing pa~ernc to INWATS CuS~O~l:, eXperienein~
trouble.

The table 20 is searched to look for a match between the dialed number and an entry in the table (action block 112). Test 114 checks to see whether a match was found. If so, then the in~ tor co,l~*,onding to that entry is m~rk~1 in the table (action block 116) and the toll switch directly accessed NCP 4 by sending a request 5 message to NCP 4 thus bypassing the need to send a request mess~ge to NCP 5.
Effectively, this process selectively ~cesses NCP 4 directly if the match is found. If no match is found, then, in accordance with the practice of the prior art, a request meSS~ge is sent to NCP 5 (action block 120). After a response is received from NCP 5 (action block 122), this response is then tr~n~l~te~ to see if the response 10 indic~tes Advanced 800 service (test 124). If not, the call is processed, again, in accordance with the methods of the prior art (action block 126).
If the result of test 124 is that Advanced 800 service is detected, then a new test 128 is ~J~.rulllled to see if the 800 number of this call is a number that can be entered in table 20 (test 128). This test is based on information l~ulllcd from 15 NCP 5. It may be desirable for offering certain services to provide a feature wherein toll switch 3 receives data both from the NCP 5 and NCP 4; for these services, it is illl~lktnt not to bypass the origin~l request for data from the NCP 5. If the result of test 128 is negative, i.e., that the numbc. cannot be entered into table 20, then action block 130 is bypassed and the request m~os~ge is sent to NCP 4 (action block 140).
20 Otherwise, action block 130 is e~ l~ The actions of this block are inc~ in greater detail in FIG. 5 but consist subst~nti~lly of ent~-ring this 800 number in the table. Action block 130 is also new. Following action block 130 or in response to having found a match in the table in test 114, a request mess~ge is sent to NCP 4 to fetch the data needed to process the particular Advanced 800 service call.
FIG. 5 is an eYr~n~ion of block 130. Each entry in table 20 cc,ll~s~ollds to a node of an AVL tree. AVL trees are well known in the prior art and are ~es~ibe~l for example, in D. F. Stubbs et al.: Data Structures, Brooks Cole Publishing G~ -r, 1985, pages 225-234. The p~cesses of hllnting for an entry in such a tree structure, deleting an entr,v from such a tree structure, and adding such an 30 entry to such a tree structure are all well-known straighlrulwdrd pl~ cesses which can be carried out in a small ~ ber of steps pl~lLional to the log,~ l.... (base 2) of the total nulllb~,r of nodes on the tree. In this case, each node of the tree cc.ll~s~ ds to one ent~y (an 800 number and a special nulllber for querying NCP 4 and AVL tree data) in table 20. The AVL tree data 281 (and c~ ,ûnding data for other entries)35 comrrises pointers to successor entries (nodes of the tree) and an inrlir~tor of whether the successor tree is bpl~nce~ longer to the left, or longer to the right. The successor node pointel~ are used in hllnting for an entry. The process of hunting for an entry comprises the steps of checking whether the entry in the parent node isequal, greater, or less than the entry being hunted, and if no match is found, repeating the process for the successor node col~ .onding to the greater or lesser 5 condition as found in the test. This process is repeated until a match is found or until no successor nodes exist; in the first case, the entry is on the list and in the second case, there is no entry corresponding to the number being hunted.
When an eYi~ting entry is to be deleted and another entry is to be substinlt~l, this process takes place in two phases. First, the nnm~ric entry of the 10 sçlçct~ node is deleted from the tree structure and the tree is re-balanced. Next the substitute entry is inserted in its proper position within the tree structure and the tree is re-bAlAn~e~l The tree is bAlAnce~l after every insertion and deletion. This l~.AintAil~ an oplilllulll hunting time and simplifies subsequent deletions and insertions.
A pointer 30 is I l lAi lltA i l~ed for eYAmining the inc~ o~ ~ in an ordered fashion and is arranged to be a circular pointer such that the first indicator is eYAmine~l after the last indicator has been e~Amined When a new entry is to be inserted into the data structure of table 20 a search is made for an ~n~ .kçrl in~1icA~tor. The first step is to fetch the in~ Ator ~le~i nAted by the pointer 30 and to 20 test that i n~ p~or to see if it is marked (test 132). If so, the in~ AtQr is llnl l lAI l~Ç~l (action block 133), the pointer advanced (action block 134) and test 132 repeA~tecl for the in~ Ator now pointed to by the pointer. If the in-lic~Ator is ~nn.;~ Y3, then the entry, if any, c~ ,~ndillg to that in-liCAtor is deleted from the tree data sll~c~
the new entry is entered in the slot coll~,i,~n~ing to the sele~te~l in~lic~Ator and the 25 bAlAncerl tree data s~,u~;lure is ~lpdAte~1 (action block 135). The pointer is then advanced (action block 136).
In the example of FIG. 3, the pointer 30 originAlly points to in~licAtQr 25, which is mqrkPA This inflicAtor is cleared, and the pointer advanced to point toin~lirAtor 26. This in-licator is .. n~ d The entry is then made in ~ muly 30 location 23, cc~ ling to indicator 26, inrlirAtor 26 remains ..n...~ d until the ul~lbel 800-274- 1233 is later received in toll switch 3.
FIG. 6 indicates that perioflicAlly, perhaps once per day so...~-,l;.ne after mitlnight, all entries in the table are cleared. This ensures that 800 nulll~l~ for which the translA~tion data has changed are not IIIAit~lAI~ed in-1efinitely in table 20.

This approach can also be used for accessing a d~t~b~e for serving sorlwal~e defined nelw{lks. For large CU~ dhe data describing their softwaredefined network is spread over several d~t~b~es. When a call is received from such a large customer, an initial d~t~b~ce is ~ccesse~l This search may lead to a request to S access a dirr~,~en~ d~t~b~e. The identity of this dirr~,enL l~t~b~e is stored in a table, similar to table 20. In this case, dhe table is seal.;hcd using the caller directory number as received by toll switch 3. Subsequent calls having the same caller di~lUl~y number, which may represent a group of callers widlin the private network, can dhen direcdy access dhe correct l~t~b~e.
It is to be understood dhat the above description is only of one plerc;ll~d embodL~,nt of the invention. Null~e.vus other arr~n~u~ may be devised by one skilled in the art widhout departing from the spirit and scope of the invention. The invention is dhus limited only as defined in dhe acco~anying claims.

Claims (28)

1. A method of accessing first and second database means for a switching system for routing a first or second type of call, comprising:
in response to receipt of a first or second type of call, selectively accessing said second database means directly in response to data of said first or second type of call and data stored in said switching system, for deriving routing data for a second type of call;
alternately, accessing said first database means for deriving routing data for a first type of call; and subsequently accessing said second database means, in response to receiving one of a class of responses from said first database means, for deriving routing data for a second type of call.
2. In a system comprising a telecommunications switching system and a first and a second database means, a method of accessing said first and second database means for said switching system for routing a first or second type of call, comprising:
in response to receipt of a first or second type of call, selectively accessing said second database means directly from said switching system in response to data of said first or second type of call and to data stored in saidswitching system, for deriving routing data for a second type of call;
alternately, accessing said first database means from said switching system for deriving routing data for a first type of call;
transmitting data from said first database means to said switching system;
subsequently accessing said second database means from said switching system, in response to data received from said first database means, for deriving routing data for a second type of call;
responsive to said steps of alternately accessing said first database means and subsequently accessing said second database means, storing data in said switching system for said second type of call for which data was accessed from said first database means and said second database means, whereby a subsequent secondtype of call having the same data of said second type of call will not require accessing said first database means.
3. The method of claim 2 wherein said data of said first or second type of call comprises a number, and wherein said step of storing data comprises the step of:
storing said number in a list of numbers; and wherein said step of selectively accessing comprises the steps of:
comparing said number against said list of numbers; and if said comparison yields a match, directly accessing said second database means.
4. The method of claims 1 or 2 wherein said data of said first or second type of call comprises a number, wherein said data stored in said system comprises a list of numbers, and wherein said selectively accessing step comprises the steps of:
comparing said number against said list of numbers; and if said comparison yields a match, directly accessing said second database means.
5. The method of claim 4 wherein said data stored in said system comprises data corresponding to each of the numbers of said list, and wherein said selectively accessing step further comprises the step of:
if said comparison yields a match, fetching said data of said system, corresponding to a number of said list matching said number of said call, for accessing the second database means.
6. The method of claim 4 wherein said comparing step comprises the step of:
comparing a called number of said data of said first or second type of call against said list of numbers.
7. The method of claim 4 wherein said comparing step comprises the step of:
comparing a calling customer identification number of said data of said first or second type of call against said list of numbers.
8. The method of claim 4 wherein said comparing step comprises the step of:
hunting in said list of numbers for said number of said call, wherein said list of numbers is organized in an AVL tree structure.
9. The method of claim 4 wherein said list comprises a plurality of entries, each entry having a different number, further comprising the step of:
if said comparison yields a match, marking an indicator corresponding to an entry of said list which matches said number of said call setup request.
10. The method of claim 4 wherein said selectively accessing step comprises the step of:
accessing said second database means via a common channel signaling network.
11. The method of claim 1 wherein said data of said first or second type of call comprises a number, wherein said data stored in said system comprises a list of numbers, and wherein said selectively accessing step comprises the steps of:
comparing said number against said list of numbers; and if said comparison yields a match, directly accessing said second database means;
and further comprising the step of:
responsive to said steps of alternately accessing said first database means and subsequently accessing said second database means, storing data in said list for said second type of call for which data was alternately accessed from said first database means and subsequently accessed from said second database means, whereby a subsequent second type of call having the same number of said second type of call will not require accessing said first database means.
12. The method of claims 3 or 11 wherein said list comprises a plurality of entries each having a corresponding indicator, each indicator having a marked and an unmarked state, and wherein said step of storing data comprises the steps of: searching for an unmarked indicator; and storing an entry in said list in an entry location of said list corresponding to said unmarked indicator.
13. The method of claim 12 wherein said searching step comprises the steps of:
examining an indicator specified by a pointer;

if said indicator specified by said pointer is marked, setting that indicator to unmarked, advancing said pointer and repeating said examining step;if said indicator specified by said pointer is unmarked terminating the search.
14. The method of claim 12 wherein said step of storing an entry comprises the step of:
advancing a pointer for specifying which indicator is to be examined in said searching step.
15. The method of claim 12 further comprising the step of:
if said comparison yields a match, marking an indicator corresponding to an entry of said list which matches said number of said call setup request.
16. In a switching system, apparatus for controlling the accessing of first and second database means in response to receiving a call setup request, comprising:
means for storing data;
means responsive to data on the call setup request and to said data stored in said system for selectively directly accessing the second database means; andmeans for accessing the first database means in the absence of said data on the call setup request and said data stored in said system for specifying a direct access of the second database means; and means responsive to a class of responses from the first database means, for accessing the second database means.
17. The system of claim 16 wherein said means for storing data comprises:
means for storing a table, said table comprising a plurality of entries, each entry comprising a number, and wherein said data of said call setup request comprises a number; and wherein said means for directly accessing comprises:
means for comparing said number of said call setup request against numbers comprised in entries of said table; and means responsive to said means for comparing for directly accessing said second database means if said comparing yields a match.
18. The system of claim 17 wherein each entry of said table further comprises data for accessing said second database means.
19. The system of claim 17 wherein said table comprises data for organizing said plurality of entries in an AVL tree structure.
20. The system of claim 17 further comprising an indicator corresponding to each entry of said plurality of entries.
21. The system of claim 20 wherein said means for comparing comprises means for marking one of said indicators corresponding to an entry of said plurality comprising a number which matches said number of said call setup request.
22. The system of claim 17 wherein said means responsive to a class of responses from the first database means for accessing the second database means comprises means for making an entry comprising the number of the call setup request.
23. The system of claim 22 further comprising a plurality of indicators each corresponding to one of the entries, each indicator having a marked and an unmarked state, wherein said means for making an entry comprises means for searching for an unmarked indicator and means for making the entry in the list in an entry location of the list corresponding to the unmarked indicator.
24. The system of claim 23 wherein the means for searching comprises:
a pointer for pointing to one of the indicators;
means for examining an indicator specified by the pointer; and if the indicator is unmarked, making an entry in the corresponding entry location of the list; and if the indicator is marked, setting the indicator to unmarked, advancing the pointer, and examining an indicator specified by the pointer.
25. The system of claim 23 wherein the means for searching comprises a pointer for pointing to one of the indicators; and the means for making an entry comprises means for advancing the pointer.
26. The system of claim 22 wherein said means for comparing comprises means for marking an indicator corresponding to an entry of the list which matches the number of the call setup request.
27. The system of claim 17 wherein the means for accessing the second database means comprises means for sending messages to a common channel signaling network.
28. A method of accessing first and second database means in response to a call setup request comprising a number for a special service call comprising the steps of:
hunting in a list of numbers for said number of said call setup request, wherein said list of numbers is organized in an AVL tree structure;
if said hunting finds said number in one of the entries of the list, each entry having a corresponding indicator having a marked and an unmarked state, marking an indicator corresponding to that entry of said list and fetching data of that entry corresponding to that number for accessing the second database means;
accessing the second database means via a common channel signaling network;
if said hunting does not find said number in said list, accessing the first database means via a common channel signaling network;
responsive to receiving one of a class of responses from the first database means, accessing the second database means;
responsive to receiving said one of a class of responses from the first database means, making an entry comprising said number of said call setup request and data received from the first database means in said list;
wherein the step of making an entry comprises the steps of:
searching for an unmarked indicator;
making said entry in said list in an entry location corresponding to said unmarked indicator; and advancing a pointer for specifying which indicator is to be examined in said searching step;

wherein the searching step comprises the steps of:
examining an indicator specified by said pointer;
if said indicator specified by said pointer is marked, setting that indicator to unmarked, advancing said pointer and repeating said examining step;and if said indicator specified by said pointer is unmarked, terminating the search.
CA002002055A 1988-12-28 1989-11-02 Telecommunications database accessing method Expired - Fee Related CA2002055C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US290,795 1988-12-28
US07/290,795 US4924510A (en) 1988-12-28 1988-12-28 Telecommunications database accessing method

Publications (2)

Publication Number Publication Date
CA2002055A1 CA2002055A1 (en) 1990-06-28
CA2002055C true CA2002055C (en) 1996-07-09

Family

ID=23117601

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002002055A Expired - Fee Related CA2002055C (en) 1988-12-28 1989-11-02 Telecommunications database accessing method

Country Status (4)

Country Link
US (1) US4924510A (en)
EP (1) EP0376542B1 (en)
CA (1) CA2002055C (en)
DE (1) DE68925957T2 (en)

Families Citing this family (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4896350A (en) * 1989-03-29 1990-01-23 American Telephone And Telegraph Company Arrangement for providing a call-connection service
US5095505A (en) * 1990-02-28 1992-03-10 Mci Communications Corp. Efficient flexible special service call processing
AU634264B2 (en) * 1990-02-28 1993-02-18 Mci Communications Corporation Efficient flexible special service call processing
US5222120A (en) * 1990-04-23 1993-06-22 Mci Communications Corporation Long distance telephone switching system with enhanced subscriber services
US5136636A (en) * 1991-02-07 1992-08-04 At&T Bell Laboratories Telephone connection to a nearby dealer
US5353331A (en) * 1992-03-05 1994-10-04 Bell Atlantic Network Services, Inc. Personal communications service using wireline/wireless integration
US5805689A (en) * 1992-07-31 1998-09-08 800 Adept, Inc. Geographically mapped telephone routing method and system
US5588048A (en) * 1992-07-31 1996-12-24 800 Adept, Inc. Geographically mapped telephone routing method and system
US5434914A (en) * 1992-12-31 1995-07-18 At&T Corp. Name translation in communications networks
US5515425A (en) * 1993-01-19 1996-05-07 At&T Corp. Telecommunications system with active database
US5381471A (en) * 1993-01-29 1995-01-10 At&T Corp. Centralized service circuit deployment
US5848131A (en) * 1993-02-22 1998-12-08 Murex Securities, Ltd. Automatic information and routing system for telephonic services
US6385312B1 (en) 1993-02-22 2002-05-07 Murex Securities, Ltd. Automatic routing and information system for telephonic services
US5982868A (en) * 1993-02-22 1999-11-09 Murex Securities, Ltd. Automatic routing and information system for telephonic services
US5506897C1 (en) * 1993-02-22 2001-12-11 Murex Securities Ltd Automatic routing system for telephonic services
US5481603A (en) * 1993-09-28 1996-01-02 At&T Corp. Intelligent call processing based upon complete identification of calling station
US5373553A (en) * 1993-10-29 1994-12-13 At&T Corp. Automatic generation of control messages for a communication network based on input of parameters to be modified
US5425090A (en) * 1993-12-07 1995-06-13 Bell Communications Research, Inc. System and method for providing advanced intelligent network services
US5465293A (en) * 1993-12-30 1995-11-07 At&T Corp. Apparatus and method for screening foreign incollect calls to domestic non-collect call telephone numbers to reduce fraud
US5594792A (en) * 1994-01-28 1997-01-14 American Telecorp Methods and apparatus for modeling and emulating devices in a network of telecommunication systems
US5420914A (en) * 1994-02-28 1995-05-30 U S West Technologies, Inc. System and method for real time carrier selection
US5533107A (en) * 1994-03-01 1996-07-02 Bellsouth Corporation Method for routing calls based on predetermined assignments of callers geographic locations
US5533108A (en) * 1994-03-18 1996-07-02 At&T Corp. Method and system for routing phone calls based on voice and data transport capability
KR100346342B1 (en) * 1994-04-01 2002-11-22 텔레폰아크티에볼라게트 엘엠 에릭슨 Mobility in Telecommunication Networks
KR960016653B1 (en) * 1994-05-14 1996-12-19 재단법인 한국전자통신연구소 Access method to the subscribers location information
EP0710042A2 (en) * 1994-10-26 1996-05-01 AT&T Corp. Means and method for providing local telephone number portability
EP0710041A2 (en) * 1994-10-28 1996-05-01 AT&T Corp. Means and method for updating databases supporting local telephone number portability
US5550911A (en) * 1994-11-29 1996-08-27 Lucent Technologies Inc. Adjunct call handling for accessing adjunct-based capabilities platform
US7058067B1 (en) 1995-03-13 2006-06-06 Cisco Technology, Inc. Distributed interactive multimedia system architecture
US5838683A (en) * 1995-03-13 1998-11-17 Selsius Systems Inc. Distributed interactive multimedia system architecture
EP0819360A1 (en) * 1995-03-22 1998-01-21 BRITISH TELECOMMUNICATIONS public limited company Service provision in a telecommunications network
US5978464A (en) * 1995-06-30 1999-11-02 Siemens Information And Communications Networks, Inc. Method for updating a local switch internal database in system having different service providers within a common numbering plan area
US5748724A (en) * 1995-06-30 1998-05-05 Siemens Stomberg-Carlson Method for transferring a subscriber to a new local service provider
US5887056A (en) * 1995-06-30 1999-03-23 Siemens Information And Communication Networks Method for routing telephone calls to subscribers of different service providers within a common numbering plan area
US5970131A (en) * 1995-06-30 1999-10-19 Siemens Information And Communication Networks, Inc. Method for providing location/geographic portability in a system having different service providers within a common numbering plan area
US5991388A (en) * 1995-06-30 1999-11-23 Siemens Information And Communication Networks, Inc. Method and system for routing calls to a party
US6009160A (en) * 1995-06-30 1999-12-28 Siemens Information And Communication Networks, Inc. Method for routing a call
US5566235A (en) * 1995-10-05 1996-10-15 Bell Atlantic Network Services, Inc. Customer controlled service mediation management
US5835583A (en) * 1995-10-05 1998-11-10 Bell Atlantic Network Services, Inc. Mediated AIN control of short code access to information service providers
US5917897A (en) * 1997-02-24 1999-06-29 Summit Telecom System, Inc. System and method for controlling a telecommunication network in accordance with economic incentives
US6269157B1 (en) 1995-11-06 2001-07-31 Summit Telecom Systems, Inc. Bidding for telecommunications traffic with request for service
US6373929B1 (en) 1995-11-06 2002-04-16 Summit Telecom, Inc. Bidding for telecommunications traffic
GB9603582D0 (en) 1996-02-20 1996-04-17 Hewlett Packard Co Method of accessing service resource items that are for use in a telecommunications system
US5878126A (en) * 1995-12-11 1999-03-02 Bellsouth Corporation Method for routing a call to a destination based on range identifiers for geographic area assignments
KR100414916B1 (en) * 1995-12-30 2004-04-03 삼성전자주식회사 Method for call distribution routing by call rate
US5901214A (en) 1996-06-10 1999-05-04 Murex Securities, Ltd. One number intelligent call processing system
GB2315639B (en) * 1996-07-19 2000-09-13 Ericsson Telefon Ab L M Method for handling telephone calls
US5848145A (en) * 1996-12-20 1998-12-08 Lucent Technologies Inc. Automatic learning of network routing using random routes
US6130937A (en) 1997-05-08 2000-10-10 Telemark Technology, Inc. System and process for automatic storage, enforcement and override of consumer do-not-call requests
US6041108A (en) * 1997-06-03 2000-03-21 Daewoo Telecom, Ltd. Method and apparatus for intelligent network call handling in a telephone exchange
US5907537A (en) * 1997-07-18 1999-05-25 Northern Telecom Limited OA&M system
US6058177A (en) * 1997-07-21 2000-05-02 Nortel Networks Corporation Mechanism to support multiple versions of toll free service
US8208613B1 (en) * 1997-12-16 2012-06-26 At&T Intellectual Property I, L.P. Method and apparatus for controlling routing of calls to pay services
US6154535A (en) * 1998-05-15 2000-11-28 Bellsouth Corporation Methods and system for obtaining processing information relating to a communication
US6343124B1 (en) 1998-06-22 2002-01-29 Lucent Technologies Inc. Telephone networking system
US7079530B1 (en) * 1999-02-25 2006-07-18 Sprint Communications Company L.P. System and method for caching toll free number information
WO2003023735A2 (en) * 2001-09-07 2003-03-20 Truetel Communications, Inc. Telecommunications system service logic data model
US7240068B2 (en) * 2002-09-06 2007-07-03 Truetel Communications, Inc. Service logic execution environment (SLEE) that is running on a device, supporting a plurality of services and that is compliant with a telecommunications computing standard for SLEES
US7680833B1 (en) * 2002-11-22 2010-03-16 Bmc Software, Inc. System and method for database structure comparison
CN100349413C (en) * 2004-11-15 2007-11-14 华为技术有限公司 Service calling method in intelligent network
GB2465380A (en) * 2008-11-14 2010-05-19 Abid T Rashid Pre-call interactive voice response system
US8238538B2 (en) 2009-05-28 2012-08-07 Comcast Cable Communications, Llc Stateful home phone service
US11595527B2 (en) 2021-03-16 2023-02-28 Bank Of America Corporation Dynamic routing for communication systems
US11715056B2 (en) 2021-03-16 2023-08-01 Bank Of America Corporation Performance monitoring for communication systems
US20230164270A1 (en) * 2021-11-24 2023-05-25 Rakuten Mobile, Inc. Systems and methods of providing automated resolutions

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4191860A (en) * 1978-07-13 1980-03-04 Bell Telephone Laboratories, Incorporated Data base communication call processing method
US4611094A (en) * 1983-12-01 1986-09-09 At&T Bell Laboratories Method for customer definable telephone capability
US4757267A (en) * 1987-06-17 1988-07-12 Applied Telematics, Inc. Telephone system for connecting a customer to a supplier of goods

Also Published As

Publication number Publication date
EP0376542A2 (en) 1990-07-04
CA2002055A1 (en) 1990-06-28
DE68925957T2 (en) 1996-10-24
DE68925957D1 (en) 1996-04-18
US4924510A (en) 1990-05-08
EP0376542A3 (en) 1992-07-15
EP0376542B1 (en) 1996-03-13

Similar Documents

Publication Publication Date Title
CA2002055C (en) Telecommunications database accessing method
EP0868096B1 (en) Automatic updating of a local database supporting local number portability
US5740239A (en) Method and apparatus using bit maps to access data for processing telephone calls
US5898760A (en) Method and apparatus for automating the management of a database
EP0820683B1 (en) Routing traffic in a node of a telecommunication network
US6178336B1 (en) Subscriber identity module for a mobile telecommunications terminal, and a mobile telecommunications terminal
WO1997035445A2 (en) Digit parsing for a flexible dial plan capability in a telecommunications switch
EP1781005B1 (en) Centralized personal directory scheme for communications networks
JP2001211258A (en) TRANSLATION PATTERN MAPPING METHOD IN No.7 GATE STATION SIGNAL NETWORK
KR100553652B1 (en) Connection information management system for managing connection information used in communications between ic cards
JP2988442B2 (en) Home location register and subscriber data management method for mobile communication system
WO1997031489A2 (en) Telephone call handling system
KR100262343B1 (en) Device of directory service using calling number and method thereof
KR100293143B1 (en) Method and System for Flexible Call Recorder
JPH07264288A (en) Method and device for transferring message in connectionless communication
JPS63204958A (en) Management system for incoming call information
JP2910686B2 (en) Tower type translation station data
KR0156830B1 (en) Information managing/retrieving device
GB2315576A (en) Telecommunications one-dimensional database structure
JP2636093B2 (en) Multiple message management output method
JP3409073B2 (en) Transfer data order alignment method
KR100824145B1 (en) Call control system using structured number translation server seperated from software switch and method thereof
JPS6120460A (en) Selector key registration type telephone service system
KR20020044915A (en) Number Translation Method In Exchange System
JPH03270538A (en) Electronic bulletin board information down-loading and automatic up-loading system

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed