WO1996004742A1 - Intelligent communications networks - Google Patents

Intelligent communications networks Download PDF

Info

Publication number
WO1996004742A1
WO1996004742A1 PCT/GB1995/001850 GB9501850W WO9604742A1 WO 1996004742 A1 WO1996004742 A1 WO 1996004742A1 GB 9501850 W GB9501850 W GB 9501850W WO 9604742 A1 WO9604742 A1 WO 9604742A1
Authority
WO
WIPO (PCT)
Prior art keywords
resource
service
customer
announcement
call
Prior art date
Application number
PCT/GB1995/001850
Other languages
French (fr)
Inventor
Andrew Paxton Taylor
Steven Hollywood
Original Assignee
British Telecommunications Public Limited Company
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
Priority to EP95927846A priority Critical patent/EP0774190B1/en
Priority to DK95927846T priority patent/DK0774190T3/en
Priority to AU31844/95A priority patent/AU683580B2/en
Priority to DE69506716T priority patent/DE69506716T2/en
Priority to JP8506339A priority patent/JPH10503902A/en
Priority to US08/776,529 priority patent/US5912961A/en
Application filed by British Telecommunications Public Limited Company filed Critical British Telecommunications Public Limited Company
Priority to CA002195664A priority patent/CA2195664C/en
Priority to KR1019970700777A priority patent/KR970705276A/en
Publication of WO1996004742A1 publication Critical patent/WO1996004742A1/en
Priority to NO970470A priority patent/NO970470D0/en
Priority to FI970439A priority patent/FI970439A0/en
Priority to HK98114844A priority patent/HK1013558A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/4228Systems providing special services or facilities to subscribers in networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/50Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
    • H04M3/53Centralised arrangements for recording incoming messages, i.e. mailbox systems
    • H04M3/533Voice mail systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/0016Arrangements providing connection between exchanges
    • H04Q3/0029Provisions for intelligent networking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/38Graded-service arrangements, i.e. some subscribers prevented from establishing certain connections
    • H04M3/382Graded-service arrangements, i.e. some subscribers prevented from establishing certain connections using authorisation codes or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/1313Metering, billing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13517SLEE - service logic execution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13526Indexing scheme relating to selecting arrangements in general and for multiplex systems resource management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13546Intelligent Peripheral

Definitions

  • This invention relates to a method of and a service node for providing services in an intelligent communications network.
  • SPC stored program controlled
  • PSTN Public Switched Telephone Network
  • electromechanical exchanges such as Strowger and Crossbar exchanges
  • electronic exchanges such as TXE2 and TXE4 exchanges.
  • TXE2 and TXE4 exchanges electronic exchanges
  • TXE2 and TXE4 exchanges electronic exchanges
  • SPC exchanges enabled customers to control various supplementary services via signals entered on their telephone keypad using the * and # buttons.
  • DMSU Digital Main Switching Unit
  • local exchanges connected to the DMSU's (usually with each local exchange connected to two DMSU's for network resilience in the event of an DMSU failure), and with services being provided and controlled by discrete service nodes at various positions in the network.
  • Each service node is connected to an DMSU of the network, which recognises service access digits dialled by a customer and routes the call to the service node for the provision of the requested service for the customer.
  • a service node for use in an intelligent communications network for providing services for customers, comprising: service defining means arranged to define a plurality of services; a resource means comprising means for recognising customer-provided data and for storing such recognised data, and a speech segment store containing, in use, speech segments, each segment having a corresponding identity, and resource means controlling means arranged to convert a received command signal to a corresponding succession of speech segment identities for a speech announcement corresponding to the command signal, to access the speech segment store in accordance with said speech segment identities, to generate the corresponding speech segments for the speech announcement and to provide an announcement finished signal when a last speech segment of the announcement has been generated; a switch arranged to connect the resource means to an incoming call routed by the network to the service node; and node controlling means arranged to respond to such an incoming call to pass details of the call to the service defining means for processing, queueing the call as necessary, to pass signals from the service defining means to the resource
  • the service defining means If the service defining means has total control of the service, it will construct an announcement by commanding a resource to generate a first segment, wait for receipt of a segment generated signal from the resource, and then send the command for the next segment, and so on.
  • An advantage of the present invention is that the gaps between segments can be determined for optimum speech reproduction and controlled directly by the resource, rather than being determined by the transmission and processing delays that these signals are subject to because the node controlling means has to communicate with the resource over a communications link.
  • a further advantage is that by placing the recognition and storing of customer-provided data in the resource means, the service defining means is not concerned with that function but merely issues a command to the resource means to return data provided by the customer.
  • said resource means comprises a first resource containing said speech segment store, and a separate second resource containing said means for recognising customer-provided data and for storing such recognised data, and wherein the first resource is arranged to command a connection between the second resource and the incoming call and to command the second resource to activate its recognising and storing means and to provide such stored data to the first resource.
  • the first resource may be arranged to make said connection via itself.
  • the resource means further comprises a database of customer- related data and means arranged to validate recognised customer-provided data by comparison with corresponding data stored in the database for the customer.
  • said resource means comprises a separate third resource containing said database of customer-related data and said means arranged to validate recognised customer-provided data by comparison with corresponding data stored in the database for the customer, and the first resource is arranged to provide recognised data to the third resource and to command it to validate the provided data and provide to the first resource a signal indicative of the result of the validation.
  • a first resource may send the data to the service defining means or, as the case may be, command the second resource to send the data to the service defining means.
  • the first resource may be arranged to generate an announcement offering the customer a plurality of numbered service-related options and to generate a further respective announcement offering a different plurality of numbered service-related options on receipt of a recognised number from the customer.
  • the resource means of a service node will comprise a multiplicity of such first resources, with or without second resources (and third resources, as the case may be), so as to be able to handle many simultaneous calls to that service.
  • the resource means will have sufficient intelligence to perform a significant proportion of the service and gain the advantage of reduced communication with the service defining means and yet not be so intelligent that the resources become an unduly high proportion of the cost of the service node.
  • a method of operating a service node in an intelligent communications network for providing services for customers comprising the steps of: receiving an incoming call routed by the network to the service node and passing details of the incoming call to a service defining means for processing, queueing the call as necessary; connecting a resource means to the incoming call in response to a request from the service defining means; sending a command signal from the service defining means to the resource means; converting the command signal received by the resource means to a corresponding succession of speech segment identities; accessing a speech segment store in accordance with said speech segment identities; generating the corresponding speech segments; providing an announcement finished signal when a last speech segment of the announcement has been generated; receiving, at the resource means, customer-provided data; recognising the received customer-provided data; and storing such recognised data.
  • said converting, accessing, generating and providing steps are performed by a first resource of said resource means, and said recognising and storing steps are performed by a separate second resource of said resource means, and including the step of connecting the separate second resource to the incoming call in response to a command from the first resource.
  • said step of validating recognised customer- provided data may be further provided.
  • the validating step may be performed by a separate third resource of the resource means.
  • Figure 1 is a schematic diagram of a Service Logic Execution Environment of the service node
  • Figure 2 is a diagram showing the storage locations of a Call Instance used in services provided by the service node
  • Figure 3 is a diagram showing the processing of a Call Event
  • Figure 4 is a diagram showing initialisation of the Call Instance
  • Figure 5 is a diagram showing the allocation of a resource to the Call
  • Figure 6 is a diagram showing the connection of a speech path between the resource and a caller
  • Figure 7 is a diagram showing the command of the resource by an application
  • Figure 8 is a diagram showing the response of the resource
  • Figure 9 is a diagram showing the procedure when the application has finished
  • Figure 10 is a diagram showing the procedure when the call clears
  • Figure 1 1 is a diagram showing the procedure when the resource clears down.
  • the major part of the service node of the present invention is the central control function which is designated the Service Logic Execution Environment (SLEE) 10 and which constitutes a controlling means of the present invention.
  • SEE Service Logic Execution Environment
  • the SLEE 10 comprises a respective Application Programming Interface (API) process, 1 1 a to 1 1 n, for each of a plurality of Application Instances (constituting service defining means of the present invention), 12a to 12n, in each of a plurality of Application Types, 13a to 13n, a Call Model process 14, a Scheduler process 15, and a handler process for each of a plurality of subsystems of the service node, namely SLEE Management System 16, Switch 17, Billing System 18, a plurality of Intelligent Peripheral (IP) Resources 19 having a common handler 19H, and a plurality of Conversation Resources 20 having a common handler 20H.
  • the Resources 1 9 and 20 together constitute a resource means of the present invention.
  • Intelligent Peripheral and Service Node are to be taken as having the same effective meaning, although, in practice, a Service Node is constituted by an Intelligent Peripheral together with a switch 17.
  • each of the IP Resources 1 9 (constituting a first resource of the present invention) is a speech applications platform (SAP) containing its own digit collection means.
  • SAP speech applications platform
  • there is a plurality of digit collection means (each constituting a second resource of the present invention) which can be reserved and associated with a SAP as and when needed for services involving digit collection.
  • Each of the Conversation Resources 20 is a non-speech resource, i.e. a resource which is not connected to a port of the switch 1 7 and which is not arranged to send or receive signals from the customer (MF signals or speech).
  • Examples of types of Conversation Resources 20 are personal identification number (PIN) validation, protocol conversion for when the service node needs to communicate with a remote resource or system, and management logic for managing entries in database 28.
  • PIN personal identification number
  • protocol conversion for when the service node needs to communicate with a remote resource or system
  • management logic for managing entries in database 28.
  • Handler 1 9H has an internal part 1 9Hint which interfaces signals between applications and a
  • Each of the component parts of the SLEE 10 is implemented as a UNIX ( a trade mark of AT & T) process on a platform which need not be described in detail but which is in the form of a multi-processor, multi-tasking, fault tolerant UNIX environment. Where appropriate, these processes comprise sub-processes for both-way communication of messages. Such sub-processes are well known to the skilled person in the art and will not be mentioned specifically, apart from Switch Message Handler 26, which constitutes a message receiving sub-process of the Switch Handler 17H.
  • the component processes of the SLEE 10 communicate with each other through a block of the Shared Memory 21 which they can all access. This arrangement of separate processes working in parallel greatly reduces the likelihood of serious bottlenecks.
  • Each Call Instance 22 holds data specific to a respective call, and the various categories of data shown in Figure 2 are Mapped IP Resources, Mapped Conversations, Switch Dialogues, Clearing Flags, Context Memory, Charge Record, and API Events. Some of these categories have more than one storage location in the Call Instance, e.g. IP Resource and API Events.
  • Each Application Type 13 can provide one or more defined services, and different calls (possibly using different services) can all share any one Application Instance 13 by being cut in and out as the application requires.
  • the Context Memory of a Call Instance 22 is used by an application to keep track of the state that a call is in.
  • the Scheduler 15 of the SLEE 10 manages the allocation of calls to the Application Instances 12 so that call events can be processed. As external events occur, the handlers queue them on their respective Call
  • Figure 3 shows the various steps by which these call events are retrieved and sent to an application for processing.
  • the Scheduler 1 5 decides which service will be the next to run on the basis of the relative priorities of each Service Instance 23. These priorities are recalculated each time that the Scheduler 15 is activated such as to ensure that whilst all services will run at some time, those with higher service priorities (which are set by the SLEE Management System 16) will run more often.
  • the Service Instance with the highest relative priority and with Executable Calls queued on it is chosen to be run (step 1 ).
  • the Scheduler 15 retrieves the service's owning Application Type (step 2) and adds the Service Instance 23 to the bottom of the Service Queue 24 (step 3).
  • a Blocking Semaphore in the Application Type 13 is increased by the Scheduler 1 5 (step 4), signalling that another call is ready to be processed by one of the Application Instances 12 belonging to this Application Type 13.
  • the next Service Instance 23 is moved off the queue 24 (step 5) and the next Call Instance 22 is removed from its Executable Call Queue 25 (step 6).
  • the first API Event belonging to this Call Instance 22 is sent together with the call's Context Memory to the application to be processed (step 7).
  • the application performs the tasks necessary to act upon this event, and upon completion of those application tasks it issues an API Suspend command and then an API Provide Instruction command, and modifies the Context Memory (step 8) to reflect the change of state of the call. Any Management Events queued for the application are issued to it (step 9) before the process blocks on its semaphore (step 10) ready for the next call event.
  • the application sends the API Suspend command to the SLEE 10 to release (dissociate) the Call Instance 22 from the application, and sends the API Provide Instruction command to cause the application to become blocked ready for the next call.
  • voicemail messages any desired spoken messages
  • the voicemail platform will send information about the voicemail messages (customer account number, caller's name) to the application in the service node for storage in the database 28, which increments the stored calls register associated with that account number and stores the name in association with an index representing the current position of that voicemail message in the voicemail platform database.
  • the customer When the customer wishes to find out if he has any voicemail messages waiting for him, he dials the service access digits for gaining access to the voicemail service and the PSTN routes the call (regardless of where it has originated on the network) to the service node.
  • the Call Model 14 initialises the call's Charge Record by recording the incoming call or event with a time stamp (step 13) in the Charge Record location of the Call Instance 22.
  • the SLEE 10 then puts an API Incoming Call event on the call's API Events queue (step 14) and queues the Call Instance 22 as an Executable Call on the appropriate Service Instance 23 (step 15).
  • the Scheduler 15 is triggered and the call event processing phase is entered, as described with reference to Figure 5.
  • the Scheduler 15 decides that it is time for a call to execute, the SLEE 10 sends to the Application 13 the API Incoming Call Event from the Call Instance's API Events queue (step 16).
  • the application receives this event, refers to a state table of events (not shown) and runs from the next following position, which in this case of a new call is from the beginning of the service.
  • the application will require the use of at least one IP Resource other than
  • IP Resource 0 First, it must reserve a resource on a free one of the call's application-mapped IP Resources (e.g. Resource 3) by sending an API Reserve Resource message to the SLEE 10 (step 17).
  • the application will itself select the free IP Resource in the Call Instance 22 and ask the SLEE 10 to reserve a free resource and map its identity to the selected IP Resource.
  • the SLEE's Internal API Resource Handler 19Hint receives the message, finds a free (unused) resource of the correct type in the Free Resources store (Resource X) and maps it to the call by moving the resource identity from Free Resources to the Call Instance's IP Resource 3 (step 18).
  • the resource may be actually removed from Free Resources, or it may be effectively removed by setting a flag to mark that resource as in use and not free.
  • a success message is returned to the application as a return code (step 19).
  • the application To make use of the resource the application must connect its speech channel to that of the call as shown in Figure 6. It does this by sending an API Connect message (step 20) with reference to the two resources it wants to connect (i.e. IP Resource 0, the incoming call, and IP Resource 3, the required resource).
  • the SLEE's API Switch Handler 17H receives the message, allocates
  • a free Switch Dialogue Id to the Call Instance 22 (step 21 ) and uses it to send a request for connection to the switch 17 (step 22).
  • the switch 17 receives the request and connects the call to Resource X (step 23). It signals success back to a Switch Message Handler 26 of the SLEE 10 (step 24). Having reserved a resource, the application now communicates with it, for example in this scenario it requests that the resource play a recorded announcement to the customer. It does this, as shown in Figure 7, by sending an API IP Resource Command to the SLEE 10 with the announcement type included (step 25).
  • the SLEE's External API Resource Handler 19Hext receives this message and sets up a dialogue with the resource by allocating an Id from the Free Dialogue Id's store to the call's Application IP Resource (step 26). It then associates this Dialogue Id with the command and sends it to the mapped resource (step 27).
  • the application Having sent such a command, the application will leave the resource to generate the announcement and proceed to handle another call under the control of the Scheduler 15. To do this, the application must suspend the call by first sending an API Suspend command to the SLEE 10, and then sending an API Provide Instruction command.
  • this first API Resource Command is for generating a "Welcome” announcement and for collecting twelve digits representing the customer's account number and personal identification number (PIN).
  • Resource X receives the application's command and starts generating the Welcome announcement, "Welcome to Voicemail. Please enter your account number and PIN.” (step 28). Resource X is arranged to identify digits received at any time after the start of the Welcome announcement, and to stop generating the announcement at the time that the first of these digits is received and recognised. On receipt of the first digit, Resource X sends to the SLEE 10 an API
  • Event message including the value of the first received digit.
  • This message is queued on the API Events section of the Call Instance 22.
  • this application requires the first digit to perform an initial part of the account number processing, and that not all applications involving account numbers require the first digit for initial processing.
  • the dialogue between the application and the Resource X has not yet finished, i.e. it remains open, so the Dialogue Id is permitted to remain associated with the Call Instance's IP Resource.
  • Resource X contains means to perform validation of the customer's account number and PIN, by accessing a database of customer-related data and comparing a retrieved customer-associated PIN with the customer's dialled PIN.
  • dialled includes both digits manually entered via a telephone instrument or equivalent, and digits spoken by the customer and recognised by Resource X.
  • these means may be provided in one of the Conversation Resources 20 constituting a third resource of the present invention.
  • the customer will enter his eight digit account number and his four digit PIN within a timeout started at the beginning of the announcement, and when twelve digits have been collected the Resource X will send to the SLEE 10 (step 29) a Digits Collected message containing the digits, this message being associated with the same Dialogue Id as was sent to the Resource X by the SLEE 10 with the command.
  • Resource X would have sent a Collection Failure message to the SLEE 10.
  • the application will deem the dialogue finished upon receipt of either the Digits Collected message or the Collection Failure message and will proceed to remove the Dialogue Id and to place it back in the list of free Dialogue Id's.
  • the SLEE's External IP Resource Message Handler 19Hext receives the message and retrieves the Call Instance 22 by means of the association with the Dialogue Id (step 30). The message is then added to the Call Instance's API Events queue as an API IP Resource Message (Msg) event (step 31 ) and the Call Instance 22 itself is added to the list of Executable Calls of the owning Service Instance (step 32).
  • the Scheduler 15 is now triggered once again. When the Scheduler 15 decides that it is the call's turn once more, the
  • API IP Resource Msg event and the message itself, are sent to the application (step 33), as shown in Figure 9.
  • the application now proceeds to the next following state in the state table for the service and accesses a database 28 associated with that application type using the collected account number to retrieve a PIN stored with the account number and to compare the retrieved PIN with the collected PIN.
  • the application accesses the database again to retrieve the customer style of address and the time (including date) when the last retrieve access was made, and to overwrite that time with the time of the present retrieval access.
  • the application now sends a second API Resource command including two fields containing respective variable parameters, the first being the customer's address style and the second being the last retrieval time (including date).
  • the application then sends an API Suspend command and an API Provide Instruction command and waits for the Scheduler 15 to send it details from the next selected Call Instance 22.
  • the SLEE 10 now allocates a new Dialogue ID, by the External IP Resource Handler 19Hext, and passes this second API Resource command to the Resource X in the same way as for the first API Resource command.
  • the Resource X On receipt, the Resource X generates an announcement having a number of fixed components and a number of variable components, namely, "Hello” (fixed), “Andy.” (variable, the customer's style of address), "You last used voicemail at” (fixed), “three thirty pm” (variable), “on the” (fixed), “tenth” (variable), “of” (fixed), “June.” (variable).
  • This provides a measure of security, because if the customer had not accessed voicemail on that occasion he will now know that someone else was in possession of his PIN and can take steps to change his PIN. This can be done by the customer contacting an operator who, after making appropriate security investigations, will make a call into the service node and via a management logic type of Conversation Resource 20 modify the database 28, this resource making a "call" request via its handler 20H to create a call instance in which its identity is entered at Conversation Resource 0.
  • the application When the application next processes this Call Instance it will go to the next state which is to inform the customer how many voicemail messages have been deposited in his voicemail store.
  • the application accesses the database to retrieve the number of deposited voicemail messages and sends a third API Resource command including a field containing this number and another field containing the time. Again, the application then sends an API Suspend command and an API Provide Instruction command.
  • the SLEE 10 sends this third command to Resource X, which is still reserved for this call, by allocating a free Dialogue ID in the same manner as before.
  • Resource X responds to this third command by generating an announcement comprising a plurality of components, two of which are variable components.
  • the first component is "Good", which is fixed.
  • the second component is variable and is selected from “Morning", “Afternoon”, or “Evening” depending upon the value in the time field of the received command, i.e. the Resource X has three time windows, midnight to midday, midday to 6.00 pm, and 6.00 pm to midnight, and makes the selection by comparing the time value with the window boundaries to determine the appropriate window and hence the corresponding component.
  • the third component is "Welcome to voicemail. You have", which is fixed.
  • the fourth component is variable and is selected from a range of words (speech segments) corresponding to the possible number of voicemail messages in the voicemail message database, in other words, from "no" to, for example, "twenty”.
  • the fifth component is "new", which is fixed.
  • the sixth component is variable and is selected from “message” or “messages” depending upon whether there is a single voicemail message or a plurality of voicemail messages or no voicemail messages.
  • the application will have further stages, e.g. asking the customer if he wants to know the names of the people who have deposited voicemail messages (when depositing a voicemail message they would have been asked to state their name), informing the customer of those names (possibly in association with voicemail message numbers), receiving the customer's selection and generating the voicemail message (by retrieval from the voicemail platform database via a protocol conversion type of Conversation Resource 20 over a communications link between the service node and the remote platform), asking the customer if he wants to delete the voicemail message or leave it or archive it, and managing the voicemail message database in the event that the customer hangs up (terminates his call) during generation of a deposited voicemail message.
  • the skilled person in the art will understand the operation of the service node and its SLEE sufficiently without a detailed description of such further stages of the voicemail service.
  • the Resource X has sufficient intelligence by virtue of its controlling program to generate an announcement offering the customer a plurality of numbered service-related options, e.g. "For service option A, press one, for service option B, press two, etc.” and to generate a further respective announcement offering a different plurality of numbered service-related options on receipt of a recognised number from the customer.
  • the resource plays tree-structured menus to ascertain what the customer wants, and either provides the requested service if it has that capability or sends a command with appropriate customer-associated data to the SLEE for action by the appropriate Application Type.
  • the application When the application reaches a final state, e.g. has received from the customer a positive indication that he is terminating his access to the service or has received from the Resource X that a timeout has occurred, then it sends an API Finished signal to the SLEE 10. This is received by an API Finished Handler 27 of the SLEE 10 which commences to clear down the call. First, the SLEE 10 must disconnect the speech paths. It allocates a free
  • Switch Dialogue to the Call Instance 22 (step 35) and sends a message to the switch 17 requesting the disconnection of Resource X and the caller (step 36).
  • the switch 17 performs the disconnection (step 37) and returns a Disconnection Complete message back to the SLEE 10 (step 38).
  • Resource X is still in open dialogue with the SLEE 10 then it must be cleared down.
  • the SLEE 10 does this as shown in Figure 10, by first sending the mapped IP Resource 3 into clearing by moving the mapped resource into the Call Instance's Clearing Resources location (step 39), and then sending a Clear Down message to Resource X (step 40).
  • the incoming call is cleared in a similar way through the Call Model 14 and the call is marked as currently being cleared down (step 41 ).
  • Resource X receives the message and initiates its clear down procedure as shown in Figure 1 1. When it has finished clearing down, it sends a Clear Down Complete message to the SLEE 10 (step 42). This message is received by the SLEE's External IP Resource Message Handler 19Hext which retrieves the Call Instance by means of the association with the Dialogue Id. This Dialogue Id is removed from the resource and placed back in the Free Dialogue Ids store (step 43). The resource itself is moved out of the Call Instance 22 and back into the Free Resources store (step 44).

Abstract

A service node is described for use in an intelligent communications network for providing services for customers. The node comprises service defining means arranged to define a plurality of services; a first resource comprising a speech segment store containing, in use, speech segments, each segment having a corresponding identity, and resource controlling means arranged to convert a received command signal to a corresponding succession of speech segment identities for a speech announcement corresponding to the command signal, to access the speech segment store in accordance with said speech segment identities, to generate the corresponding speech segments for the speech announcement and to provide an announcement finished signal when a last speech segment of the announcement has been generated; a switch arranged to connect the first resource to an incoming call routed by the network to the service node; and node controlling means arranged to respond to such anincoming call to pass details of the call to the service defining means for processing, queueing the call as necessary, to pass signals from the service defining means to the first resource and to the switch, and to pass announcement finished signals from the first resource to the service defining means.

Description

INTELLIGENT COMMUNICATIONS NETWORKS
This invention relates to a method of and a service node for providing services in an intelligent communications network. Before the advent of the stored program controlled (SPC) exchange, the
Public Switched Telephone Network (PSTN) comprised electromechanical exchanges, such as Strowger and Crossbar exchanges, and electronic exchanges, such as TXE2 and TXE4 exchanges. However, even the most advanced of these types was only capable of performing a limited number of functions over and above merely switching a call, i.e. making a connection between an incoming channel or line and an outgoing channel. Furthermore, such additional functions were limited to operations for improving the performance of the network, for example, repeat attempt at reaching a destination number via an alternative outgoing route in the event that the first-choice route is busy. SPC exchanges enabled customers to control various supplementary services via signals entered on their telephone keypad using the * and # buttons. However, the introduction of a new service, or the modification of an existing service, meant that the control program had to be updated in each of the SPC exchanges. The current concept of an intelligent communications network is based on a core of interconnected Digital Main Switching Units (DMSU's), with local exchanges connected to the DMSU's (usually with each local exchange connected to two DMSU's for network resilience in the event of an DMSU failure), and with services being provided and controlled by discrete service nodes at various positions in the network.
Each service node is connected to an DMSU of the network, which recognises service access digits dialled by a customer and routes the call to the service node for the provision of the requested service for the customer.
According to a first aspect of the present invention there is provided a service node for use in an intelligent communications network for providing services for customers, comprising: service defining means arranged to define a plurality of services; a resource means comprising means for recognising customer-provided data and for storing such recognised data, and a speech segment store containing, in use, speech segments, each segment having a corresponding identity, and resource means controlling means arranged to convert a received command signal to a corresponding succession of speech segment identities for a speech announcement corresponding to the command signal, to access the speech segment store in accordance with said speech segment identities, to generate the corresponding speech segments for the speech announcement and to provide an announcement finished signal when a last speech segment of the announcement has been generated; a switch arranged to connect the resource means to an incoming call routed by the network to the service node; and node controlling means arranged to respond to such an incoming call to pass details of the call to the service defining means for processing, queueing the call as necessary, to pass signals from the service defining means to the resource means and to the switch, and to pass announcement finished signals from the resource means to the service defining means.
If the service defining means has total control of the service, it will construct an announcement by commanding a resource to generate a first segment, wait for receipt of a segment generated signal from the resource, and then send the command for the next segment, and so on. An advantage of the present invention is that the gaps between segments can be determined for optimum speech reproduction and controlled directly by the resource, rather than being determined by the transmission and processing delays that these signals are subject to because the node controlling means has to communicate with the resource over a communications link. A further advantage is that by placing the recognition and storing of customer-provided data in the resource means, the service defining means is not concerned with that function but merely issues a command to the resource means to return data provided by the customer. Such a distribution of service components between the service defining means and the resource means enables faster service operation and simpler software code than if the service were controlled totally by the service defining means. Preferably, said resource means comprises a first resource containing said speech segment store, and a separate second resource containing said means for recognising customer-provided data and for storing such recognised data, and wherein the first resource is arranged to command a connection between the second resource and the incoming call and to command the second resource to activate its recognising and storing means and to provide such stored data to the first resource.
The first resource may be arranged to make said connection via itself.
Preferably the resource means further comprises a database of customer- related data and means arranged to validate recognised customer-provided data by comparison with corresponding data stored in the database for the customer.
More preferably said resource means comprises a separate third resource containing said database of customer-related data and said means arranged to validate recognised customer-provided data by comparison with corresponding data stored in the database for the customer, and the first resource is arranged to provide recognised data to the third resource and to command it to validate the provided data and provide to the first resource a signal indicative of the result of the validation.
A first resource may send the data to the service defining means or, as the case may be, command the second resource to send the data to the service defining means.
In such a service node, the first resource may be arranged to generate an announcement offering the customer a plurality of numbered service-related options and to generate a further respective announcement offering a different plurality of numbered service-related options on receipt of a recognised number from the customer.
The resource means of a service node will comprise a multiplicity of such first resources, with or without second resources (and third resources, as the case may be), so as to be able to handle many simultaneous calls to that service. The resource means will have sufficient intelligence to perform a significant proportion of the service and gain the advantage of reduced communication with the service defining means and yet not be so intelligent that the resources become an unduly high proportion of the cost of the service node. In accordance with a second aspect of the present invention there is provided a method of operating a service node in an intelligent communications network for providing services for customers, comprising the steps of: receiving an incoming call routed by the network to the service node and passing details of the incoming call to a service defining means for processing, queueing the call as necessary; connecting a resource means to the incoming call in response to a request from the service defining means; sending a command signal from the service defining means to the resource means; converting the command signal received by the resource means to a corresponding succession of speech segment identities; accessing a speech segment store in accordance with said speech segment identities; generating the corresponding speech segments; providing an announcement finished signal when a last speech segment of the announcement has been generated; receiving, at the resource means, customer-provided data; recognising the received customer-provided data; and storing such recognised data. Preferably, said converting, accessing, generating and providing steps are performed by a first resource of said resource means, and said recognising and storing steps are performed by a separate second resource of said resource means, and including the step of connecting the separate second resource to the incoming call in response to a command from the first resource. There may be further provided the step of validating recognised customer- provided data.
The validating step may be performed by a separate third resource of the resource means.
There may be further provided the step of generating an announcement offering the customer a plurality of numbered service-related options and generating a further respective announcement offering a different plurality of numbered service-related options on receipt of a recognised number from the customer. A specific embodiment of a service node in accordance with the present invention will now be described by way of example with reference to the drawings in which:-
Figure 1 is a schematic diagram of a Service Logic Execution Environment of the service node;
Figure 2 is a diagram showing the storage locations of a Call Instance used in services provided by the service node;
Figure 3 is a diagram showing the processing of a Call Event;
Figure 4 is a diagram showing initialisation of the Call Instance; Figure 5 is a diagram showing the allocation of a resource to the Call
Instance;
Figure 6 is a diagram showing the connection of a speech path between the resource and a caller;
Figure 7 is a diagram showing the command of the resource by an application;
Figure 8 is a diagram showing the response of the resource;
Figure 9 is a diagram showing the procedure when the application has finished;
Figure 10 is a diagram showing the procedure when the call clears; and Figure 1 1 is a diagram showing the procedure when the resource clears down.
As can be seen in Figure 1 , the major part of the service node of the present invention is the central control function which is designated the Service Logic Execution Environment (SLEE) 10 and which constitutes a controlling means of the present invention.
The SLEE 10 comprises a respective Application Programming Interface (API) process, 1 1 a to 1 1 n, for each of a plurality of Application Instances (constituting service defining means of the present invention), 12a to 12n, in each of a plurality of Application Types, 13a to 13n, a Call Model process 14, a Scheduler process 15, and a handler process for each of a plurality of subsystems of the service node, namely SLEE Management System 16, Switch 17, Billing System 18, a plurality of Intelligent Peripheral (IP) Resources 19 having a common handler 19H, and a plurality of Conversation Resources 20 having a common handler 20H. The Resources 1 9 and 20 together constitute a resource means of the present invention.
In this specification the terms Intelligent Peripheral and Service Node are to be taken as having the same effective meaning, although, in practice, a Service Node is constituted by an Intelligent Peripheral together with a switch 17.
In this embodiment, each of the IP Resources 1 9 (constituting a first resource of the present invention) is a speech applications platform (SAP) containing its own digit collection means. In alternative embodiments, there is a plurality of digit collection means (each constituting a second resource of the present invention) which can be reserved and associated with a SAP as and when needed for services involving digit collection.
Each of the Conversation Resources 20 is a non-speech resource, i.e. a resource which is not connected to a port of the switch 1 7 and which is not arranged to send or receive signals from the customer (MF signals or speech). Examples of types of Conversation Resources 20 are personal identification number (PIN) validation, protocol conversion for when the service node needs to communicate with a remote resource or system, and management logic for managing entries in database 28.
For convenience, the above processes will generally be referred to by the process name, and each handler will be identified as 16H, 17H, etc. Handler 1 9H has an internal part 1 9Hint which interfaces signals between applications and a
Shared Memory 21 of the SLEE, and an external part 19Hext which interfaces signals to and from the IP Resources 1 9.
Each of the component parts of the SLEE 10 is implemented as a UNIX ( a trade mark of AT & T) process on a platform which need not be described in detail but which is in the form of a multi-processor, multi-tasking, fault tolerant UNIX environment. Where appropriate, these processes comprise sub-processes for both-way communication of messages. Such sub-processes are well known to the skilled person in the art and will not be mentioned specifically, apart from Switch Message Handler 26, which constitutes a message receiving sub-process of the Switch Handler 17H.
The component processes of the SLEE 10 communicate with each other through a block of the Shared Memory 21 which they can all access. This arrangement of separate processes working in parallel greatly reduces the likelihood of serious bottlenecks.
Application Instances are started up by the SLEE Management System 16 at the initialisation of the SLEE 10 and each new call entering the platform creates a new Call Instance 22 (Figure 2) in the Shared Memory 21.
Each Call Instance 22 holds data specific to a respective call, and the various categories of data shown in Figure 2 are Mapped IP Resources, Mapped Conversations, Switch Dialogues, Clearing Flags, Context Memory, Charge Record, and API Events. Some of these categories have more than one storage location in the Call Instance, e.g. IP Resource and API Events.
Each Application Type 13 can provide one or more defined services, and different calls (possibly using different services) can all share any one Application Instance 13 by being cut in and out as the application requires. The Context Memory of a Call Instance 22 is used by an application to keep track of the state that a call is in.
Multiple Application Instances 12 of the same Application Type 13 are provided in order that a number of calls using the same service can run in parallel. The Scheduler 15 of the SLEE 10 manages the allocation of calls to the Application Instances 12 so that call events can be processed. As external events occur, the handlers queue them on their respective Call
Instances 22. Figure 3 shows the various steps by which these call events are retrieved and sent to an application for processing.
The Scheduler 1 5 decides which service will be the next to run on the basis of the relative priorities of each Service Instance 23. These priorities are recalculated each time that the Scheduler 15 is activated such as to ensure that whilst all services will run at some time, those with higher service priorities (which are set by the SLEE Management System 16) will run more often. The Service Instance with the highest relative priority and with Executable Calls queued on it is chosen to be run (step 1 ). The Scheduler 15 retrieves the service's owning Application Type (step 2) and adds the Service Instance 23 to the bottom of the Service Queue 24 (step 3). A Blocking Semaphore in the Application Type 13 is increased by the Scheduler 1 5 (step 4), signalling that another call is ready to be processed by one of the Application Instances 12 belonging to this Application Type 13. When this happens, the next Service Instance 23 is moved off the queue 24 (step 5) and the next Call Instance 22 is removed from its Executable Call Queue 25 (step 6). The first API Event belonging to this Call Instance 22 is sent together with the call's Context Memory to the application to be processed (step 7).
The application performs the tasks necessary to act upon this event, and upon completion of those application tasks it issues an API Suspend command and then an API Provide Instruction command, and modifies the Context Memory (step 8) to reflect the change of state of the call. Any Management Events queued for the application are issued to it (step 9) before the process blocks on its semaphore (step 10) ready for the next call event.
The application sends the API Suspend command to the SLEE 10 to release (dissociate) the Call Instance 22 from the application, and sends the API Provide Instruction command to cause the application to become blocked ready for the next call.
There now follows a description of the processes which occur for a typical call scenario for a message recording service provided by the service node. Whilst there are many difference tasks that can occur, every call using the platform proceeds in a similar way to the following description. Assume that a customer has subscribed to a network-based message recording service (hereinafter referred to as "voicemail service"), the platform (not shown) for which includes a database for storing deposited spoken messages and is associated with an DMSU of the PSTN. When the customer has activated the voicemail service, calls to the customer are automatically connected by the network to the platform and any desired spoken messages (hereinafter referred to as "voicemail messages") are recorded for later retrieval by the customer, and the voicemail platform will send information about the voicemail messages (customer account number, caller's name) to the application in the service node for storage in the database 28, which increments the stored calls register associated with that account number and stores the name in association with an index representing the current position of that voicemail message in the voicemail platform database.
When the customer wishes to find out if he has any voicemail messages waiting for him, he dials the service access digits for gaining access to the voicemail service and the PSTN routes the call (regardless of where it has originated on the network) to the service node.
Referring to Figure 4, in which the steps are numbered starting from 1 1 , when this call arrives at the service node the digits are passed via a signalling link from the switch 17 to the Call Model 14 which recognises the dialled service access digits for the voicemail service and, in response, creates and initialises a new Call Instance 22 (step 1 1 ) within the SLEE's Shared Memory 21 and maps the incoming call to its first IP Resource, namely IP Resource 0 (step 12). The actual IP resource will be the incoming channel on which the incoming call appears and it will be the identity of this channel that will be mapped to the IP Resource 0 location of the Call Instance 22. The Call Model 14 initialises the call's Charge Record by recording the incoming call or event with a time stamp (step 13) in the Charge Record location of the Call Instance 22. The SLEE 10 then puts an API Incoming Call event on the call's API Events queue (step 14) and queues the Call Instance 22 as an Executable Call on the appropriate Service Instance 23 (step 15).
The Scheduler 15 is triggered and the call event processing phase is entered, as described with reference to Figure 5.
Referring to Figure 5, when the Scheduler 15 decides that it is time for a call to execute, the SLEE 10 sends to the Application 13 the API Incoming Call Event from the Call Instance's API Events queue (step 16). The application receives this event, refers to a state table of events (not shown) and runs from the next following position, which in this case of a new call is from the beginning of the service. The application will require the use of at least one IP Resource other than
IP Resource 0. First, it must reserve a resource on a free one of the call's application-mapped IP Resources (e.g. Resource 3) by sending an API Reserve Resource message to the SLEE 10 (step 17). The application will itself select the free IP Resource in the Call Instance 22 and ask the SLEE 10 to reserve a free resource and map its identity to the selected IP Resource. The SLEE's Internal API Resource Handler 19Hint receives the message, finds a free (unused) resource of the correct type in the Free Resources store (Resource X) and maps it to the call by moving the resource identity from Free Resources to the Call Instance's IP Resource 3 (step 18). In this step, the resource may be actually removed from Free Resources, or it may be effectively removed by setting a flag to mark that resource as in use and not free. A success message is returned to the application as a return code (step 19). To make use of the resource the application must connect its speech channel to that of the call as shown in Figure 6. It does this by sending an API Connect message (step 20) with reference to the two resources it wants to connect (i.e. IP Resource 0, the incoming call, and IP Resource 3, the required resource). The SLEE's API Switch Handler 17H receives the message, allocates
(reserves) a free Switch Dialogue Id to the Call Instance 22 (step 21 ) and uses it to send a request for connection to the switch 17 (step 22). The switch 17 receives the request and connects the call to Resource X (step 23). It signals success back to a Switch Message Handler 26 of the SLEE 10 (step 24). Having reserved a resource, the application now communicates with it, for example in this scenario it requests that the resource play a recorded announcement to the customer. It does this, as shown in Figure 7, by sending an API IP Resource Command to the SLEE 10 with the announcement type included (step 25). The SLEE's External API Resource Handler 19Hext receives this message and sets up a dialogue with the resource by allocating an Id from the Free Dialogue Id's store to the call's Application IP Resource (step 26). It then associates this Dialogue Id with the command and sends it to the mapped resource (step 27).
Having sent such a command, the application will leave the resource to generate the announcement and proceed to handle another call under the control of the Scheduler 15. To do this, the application must suspend the call by first sending an API Suspend command to the SLEE 10, and then sending an API Provide Instruction command.
In this scenario, this first API Resource Command is for generating a "Welcome" announcement and for collecting twelve digits representing the customer's account number and personal identification number (PIN).
In Figure 8, Resource X receives the application's command and starts generating the Welcome announcement, "Welcome to Voicemail. Please enter your account number and PIN." (step 28). Resource X is arranged to identify digits received at any time after the start of the Welcome announcement, and to stop generating the announcement at the time that the first of these digits is received and recognised. On receipt of the first digit, Resource X sends to the SLEE 10 an API
Event message including the value of the first received digit. This message is queued on the API Events section of the Call Instance 22. For the purposes of the present invention it is sufficient to state that this application requires the first digit to perform an initial part of the account number processing, and that not all applications involving account numbers require the first digit for initial processing. The dialogue between the application and the Resource X has not yet finished, i.e. it remains open, so the Dialogue Id is permitted to remain associated with the Call Instance's IP Resource.
In alternative embodiments Resource X contains means to perform validation of the customer's account number and PIN, by accessing a database of customer-related data and comparing a retrieved customer-associated PIN with the customer's dialled PIN. The term "dialled" includes both digits manually entered via a telephone instrument or equivalent, and digits spoken by the customer and recognised by Resource X. In embodiments in which Resource X does not include such validation means, these means may be provided in one of the Conversation Resources 20 constituting a third resource of the present invention.
Normally, the customer will enter his eight digit account number and his four digit PIN within a timeout started at the beginning of the announcement, and when twelve digits have been collected the Resource X will send to the SLEE 10 (step 29) a Digits Collected message containing the digits, this message being associated with the same Dialogue Id as was sent to the Resource X by the SLEE 10 with the command.
If the customer had failed to enter twelve digits before the timeout, or if for any other reason Resource X had not collected twelve recognised digits within the timeout, Resource X would have sent a Collection Failure message to the SLEE 10. The application will deem the dialogue finished upon receipt of either the Digits Collected message or the Collection Failure message and will proceed to remove the Dialogue Id and to place it back in the list of free Dialogue Id's.
The SLEE's External IP Resource Message Handler 19Hext receives the message and retrieves the Call Instance 22 by means of the association with the Dialogue Id (step 30). The message is then added to the Call Instance's API Events queue as an API IP Resource Message (Msg) event (step 31 ) and the Call Instance 22 itself is added to the list of Executable Calls of the owning Service Instance (step 32). The Scheduler 15 is now triggered once again. When the Scheduler 15 decides that it is the call's turn once more, the
API IP Resource Msg event, and the message itself, are sent to the application (step 33), as shown in Figure 9.
The application now proceeds to the next following state in the state table for the service and accesses a database 28 associated with that application type using the collected account number to retrieve a PIN stored with the account number and to compare the retrieved PIN with the collected PIN.
If the PINs match, the application accesses the database again to retrieve the customer style of address and the time (including date) when the last retrieve access was made, and to overwrite that time with the time of the present retrieval access. The application now sends a second API Resource command including two fields containing respective variable parameters, the first being the customer's address style and the second being the last retrieval time (including date). The application then sends an API Suspend command and an API Provide Instruction command and waits for the Scheduler 15 to send it details from the next selected Call Instance 22.
The SLEE 10 now allocates a new Dialogue ID, by the External IP Resource Handler 19Hext, and passes this second API Resource command to the Resource X in the same way as for the first API Resource command. On receipt, the Resource X generates an announcement having a number of fixed components and a number of variable components, namely, "Hello" (fixed), "Andy." (variable, the customer's style of address), "You last used voicemail at" (fixed), "three thirty pm" (variable), "on the" (fixed), "tenth" (variable), "of" (fixed), "June." (variable). This provides a measure of security, because if the customer had not accessed voicemail on that occasion he will now know that someone else was in possession of his PIN and can take steps to change his PIN. This can be done by the customer contacting an operator who, after making appropriate security investigations, will make a call into the service node and via a management logic type of Conversation Resource 20 modify the database 28, this resource making a "call" request via its handler 20H to create a call instance in which its identity is entered at Conversation Resource 0.
When the Resource X has finished generating this second announcement it will send an API IP Resource Message to the SLEE 10 which will enter it in the Call Instance's API Events queue.
When the application next processes this Call Instance it will go to the next state which is to inform the customer how many voicemail messages have been deposited in his voicemail store. The application accesses the database to retrieve the number of deposited voicemail messages and sends a third API Resource command including a field containing this number and another field containing the time. Again, the application then sends an API Suspend command and an API Provide Instruction command.
The SLEE 10 sends this third command to Resource X, which is still reserved for this call, by allocating a free Dialogue ID in the same manner as before.
Resource X responds to this third command by generating an announcement comprising a plurality of components, two of which are variable components. The first component is "Good", which is fixed. The second component is variable and is selected from "Morning", "Afternoon", or "Evening" depending upon the value in the time field of the received command, i.e. the Resource X has three time windows, midnight to midday, midday to 6.00 pm, and 6.00 pm to midnight, and makes the selection by comparing the time value with the window boundaries to determine the appropriate window and hence the corresponding component. The third component is "Welcome to voicemail. You have", which is fixed. The fourth component is variable and is selected from a range of words (speech segments) corresponding to the possible number of voicemail messages in the voicemail message database, in other words, from "no" to, for example, "twenty". The fifth component is "new", which is fixed. The sixth component is variable and is selected from "message" or "messages" depending upon whether there is a single voicemail message or a plurality of voicemail messages or no voicemail messages.
In practice, the application will have further stages, e.g. asking the customer if he wants to know the names of the people who have deposited voicemail messages (when depositing a voicemail message they would have been asked to state their name), informing the customer of those names (possibly in association with voicemail message numbers), receiving the customer's selection and generating the voicemail message (by retrieval from the voicemail platform database via a protocol conversion type of Conversation Resource 20 over a communications link between the service node and the remote platform), asking the customer if he wants to delete the voicemail message or leave it or archive it, and managing the voicemail message database in the event that the customer hangs up (terminates his call) during generation of a deposited voicemail message. However, the skilled person in the art will understand the operation of the service node and its SLEE sufficiently without a detailed description of such further stages of the voicemail service.
In alternative embodiments the Resource X has sufficient intelligence by virtue of its controlling program to generate an announcement offering the customer a plurality of numbered service-related options, e.g. "For service option A, press one, for service option B, press two, etc." and to generate a further respective announcement offering a different plurality of numbered service-related options on receipt of a recognised number from the customer. In other words the resource plays tree-structured menus to ascertain what the customer wants, and either provides the requested service if it has that capability or sends a command with appropriate customer-associated data to the SLEE for action by the appropriate Application Type.
When the application reaches a final state, e.g. has received from the customer a positive indication that he is terminating his access to the service or has received from the Resource X that a timeout has occurred, then it sends an API Finished signal to the SLEE 10. This is received by an API Finished Handler 27 of the SLEE 10 which commences to clear down the call. First, the SLEE 10 must disconnect the speech paths. It allocates a free
Switch Dialogue to the Call Instance 22 (step 35) and sends a message to the switch 17 requesting the disconnection of Resource X and the caller (step 36).
The switch 17 performs the disconnection (step 37) and returns a Disconnection Complete message back to the SLEE 10 (step 38).
If Resource X is still in open dialogue with the SLEE 10 then it must be cleared down. The SLEE 10 does this as shown in Figure 10, by first sending the mapped IP Resource 3 into clearing by moving the mapped resource into the Call Instance's Clearing Resources location (step 39), and then sending a Clear Down message to Resource X (step 40). The incoming call is cleared in a similar way through the Call Model 14 and the call is marked as currently being cleared down (step 41 ).
Resource X receives the message and initiates its clear down procedure as shown in Figure 1 1. When it has finished clearing down, it sends a Clear Down Complete message to the SLEE 10 (step 42). This message is received by the SLEE's External IP Resource Message Handler 19Hext which retrieves the Call Instance by means of the association with the Dialogue Id. This Dialogue Id is removed from the resource and placed back in the Free Dialogue Ids store (step 43). The resource itself is moved out of the Call Instance 22 and back into the Free Resources store (step 44).
If this was the last resource to clear belonging to the call (i.e. the incoming call has also finished clearing) then the call is complete. The Charge Record is time stamped and then sent out to the Billing System 18 (step 45).

Claims

1 . A service node for use in an intelligent communications network for providing services for customers, comprising: service defining means arranged to define a plurality of services; a resource means comprising means for recognising customer-provided data and for storing such recognised data, and a speech segment store containing, in use, speech segments, each segment having a corresponding identity, and resource means controlling means arranged to convert a received command signal to a corresponding succession of speech segment identities for a speech announcement corresponding to the command signal, to access the speech segment store in accordance with said speech segment identities, to generate the corresponding speech segments for the speech announcement and to provide an announcement finished signal when a last speech segment of the announcement has been generated; a switch arranged to connect the resource means to an incoming call routed by the network to the service node; and node controlling means arranged to respond to such an incoming call to pass details of the call to the service defining means for processing, queueing the call as necessary, to pass signals from the service defining means to the resource means and to the switch, and to pass announcement finished signals from the resource means to the service defining means.
2. A service node as claimed in claim 1 , wherein said resource means comprises a first resource containing said speech segment store, and a separate second resource containing said means for recognising customer-provided data and for storing such recognised data, and wherein the first resource is arranged to command a connection between the second resource and the incoming call and to command the second resource to activate its recognising and storing means and to provide such stored data to the first resource.
3. A service node as claimed in claim 2, wherein the first resource is arranged to make said connection via itself.
4. A service node as claimed in any one of claims 1 to 3, wherein said resource means further comprises a database of customer-related data and means arranged to validate recognised customer-provided data by comparison with corresponding data stored in the database for the customer.
5. A service node as claimed in claim 4, when dependent upon either claim 2 or claim 3, and wherein said resource means comprises a separate third resource containing said database of customer-related data and said means arranged to validate recognised customer-provided data by comparison with corresponding data stored in the database for the customer, and wherein the first resource is arranged to provide recognised data to the third resource and to command it to validate the provided data and provide to the first resource a signal indicative of the result of the validation.
6. A service node as claimed in any one of claims 1 to 5, wherein the resource means is arranged to generate an announcement offering the customer a plurality of numbered service-related options and to generate a further respective announcement offering a different plurality of numbered service-related options on receipt of a recognised number from the customer.
7. A method of operating a service node in an intelligent communications network for providing services for customers, comprising the steps of: receiving an incoming call routed by the network to the service node and passing details of the incoming call to a service defining means for processing, queueing the call as necessary; connecting a resource means to the incoming call in response to a request from the service defining means; sending a command signal from the service defining means to the resource means; converting the command signal received by the resource means to a corresponding succession of speech segment identities; accessing a speech segment store in accordance with said speech segment identities; generating the corresponding speech segments; providing an announcement finished signal when a last speech segment of the announcement has been generated; receiving, at the resource means, customer-provided data; recognising the received customer-provided data; and storing such recognised data.
8. A method as claimed in claim 7, wherein said converting, accessing, generating and providing steps are performed by a first resource of said resource means, and said recognising and storing steps are performed by a separate second resource of said resource means, and including the step of connecting the separate second resource to the incoming call in response to a command from the first resource.
9. A method as claimed in either claim 7 or claim 8, and further comprising the step of validating recognised customer-provided data.
10. A method as claimed in claim 9, when dependent upon claim 8, wherein the validating step is performed by a separate third resource of the resource means.
1 1 . A method as claimed in any one of claims 7 to 10, and further comprising the step of generating an announcement offering the customer a plurality of numbered service-related options and generating a further respective announcement offering a different plurality of numbered service-related options on receipt of a recognised number from the customer.
PCT/GB1995/001850 1994-08-04 1995-08-04 Intelligent communications networks WO1996004742A1 (en)

Priority Applications (11)

Application Number Priority Date Filing Date Title
DK95927846T DK0774190T3 (en) 1994-08-04 1995-08-04 Intelligent communication networks
AU31844/95A AU683580B2 (en) 1994-08-04 1995-08-04 Intelligent communications networks
DE69506716T DE69506716T2 (en) 1994-08-04 1995-08-04 INTELLIGENT COMMUNICATION NETWORKS
JP8506339A JPH10503902A (en) 1994-08-04 1995-08-04 Intelligent communication network
US08/776,529 US5912961A (en) 1994-08-04 1995-08-04 Intelligent communications networks
EP95927846A EP0774190B1 (en) 1994-08-04 1995-08-04 Intelligent communications networks
CA002195664A CA2195664C (en) 1994-08-04 1995-08-04 Intelligent communications networks
KR1019970700777A KR970705276A (en) 1994-08-04 1995-08-04 INTELLIGENT COMMUNICATIONS NETWORKS
NO970470A NO970470D0 (en) 1994-08-04 1997-02-03 Intelligent communication networks
FI970439A FI970439A0 (en) 1994-08-04 1997-02-03 Intelligent telecommunications networks
HK98114844A HK1013558A1 (en) 1994-08-04 1998-12-22 Intelligent communications networks

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP94305854.5 1994-08-04
EP94305854 1994-08-04

Publications (1)

Publication Number Publication Date
WO1996004742A1 true WO1996004742A1 (en) 1996-02-15

Family

ID=8217806

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/GB1995/001850 WO1996004742A1 (en) 1994-08-04 1995-08-04 Intelligent communications networks

Country Status (14)

Country Link
US (2) US5537466A (en)
EP (1) EP0774190B1 (en)
JP (1) JPH10503902A (en)
KR (1) KR970705276A (en)
AU (1) AU683580B2 (en)
CA (1) CA2195664C (en)
DE (1) DE69506716T2 (en)
DK (1) DK0774190T3 (en)
ES (1) ES2127543T3 (en)
FI (1) FI970439A0 (en)
HK (1) HK1013558A1 (en)
NO (1) NO970470D0 (en)
NZ (1) NZ290888A (en)
WO (1) WO1996004742A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19622007A1 (en) * 1996-05-31 1997-12-04 Ericsson Telefon Ab L M USSD scheduler for mobile switching center MSC
EP1075133A1 (en) * 1998-03-27 2001-02-07 BRITISH TELECOMMUNICATIONS public limited company Billing system
US6263883B1 (en) 1995-11-02 2001-07-24 Philip Morris Incorporated Interchange apparatus for a pneumatic conveying system

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5537466A (en) * 1994-08-04 1996-07-16 British Telecommunications, Plc. Intelligent communications networks
US5915131A (en) * 1995-05-05 1999-06-22 Apple Computer, Inc. Method and apparatus for handling I/O requests utilizing separate programming interfaces to access separate I/O services
DE19535958C2 (en) * 1995-09-27 1998-05-14 Siemens Ag Method for determining free agent communication terminals in communication networks with automatic call distribution
US5875242A (en) * 1996-07-26 1999-02-23 Glaser; Lawrence F. Telecommunications installation and management system and method
US6014437A (en) * 1997-02-03 2000-01-11 International Business Machines Corporation Multi service platform architecture for telephone networks
US6425005B1 (en) * 1997-10-06 2002-07-23 Mci Worldcom, Inc. Method and apparatus for managing local resources at service nodes in an intelligent network
US6594355B1 (en) 1997-10-06 2003-07-15 Worldcom, Inc. Method and apparatus for providing real time execution of specific communications services in an intelligent network
US6393481B1 (en) 1997-10-06 2002-05-21 Worldcom, Inc. Method and apparatus for providing real-time call processing services in an intelligent network
US7024450B1 (en) * 1997-10-06 2006-04-04 Mci, Inc. Method and apparatus for deploying service modules among service nodes distributed in an intelligent network
US6363411B1 (en) 1998-08-05 2002-03-26 Mci Worldcom, Inc. Intelligent network
US6804711B1 (en) 1997-10-06 2004-10-12 Mci, Inc. Method and apparatus for managing call processing services in an intelligent telecommunication network
US6779030B1 (en) * 1997-10-06 2004-08-17 Worldcom, Inc. Intelligent network
US6148069A (en) 1997-11-04 2000-11-14 Ameritech Corporation System and method for mixed mode communications in an advanced intelligent network telephone system
NO313027B1 (en) 1998-03-06 2002-07-29 Ericsson Telefon Ab L M Steps to improve a network structure, especially an intelligent network
US7929516B2 (en) 1998-06-12 2011-04-19 Mci Communications Corporation Intelligent services network using a switch controller
US6480597B1 (en) 1998-06-12 2002-11-12 Mci Communications Corporation Switch controller for a telecommunications network
US7142650B1 (en) * 1998-06-12 2006-11-28 Mci Communication Corporation System and method for resource management
US6587890B1 (en) 1998-06-12 2003-07-01 Mci Communications Corporation Switch controller application programmer interface
US6788649B1 (en) 1998-08-03 2004-09-07 Mci, Inc. Method and apparatus for supporting ATM services in an intelligent network
US6411955B1 (en) * 1998-12-29 2002-06-25 At&T Corp. Method and apparatus for providing service announcements
US20040052343A1 (en) * 1999-02-16 2004-03-18 Glaser Lawrence F. Telecommunications installation and management system and method
WO2000051329A1 (en) * 1999-02-26 2000-08-31 Lucent Technologies, Inc. Voice messaging platform as intelligent peripheral
US6714978B1 (en) * 1999-12-04 2004-03-30 Worldcom, Inc. Method and system for processing records in a communications network
WO2001059999A1 (en) * 2000-02-11 2001-08-16 Convergent Networks, Inc. Service level executable environment for integrated pstn and ip networks and call processing language therefor
KR100438235B1 (en) * 2000-07-06 2004-07-02 엘지전자 주식회사 Method of Supplement Service in Intelligent Network
US8255961B2 (en) * 2000-10-11 2012-08-28 United Video Properties, Inc. Systems and methods for caching data in media-on-demand systems
US6996224B2 (en) * 2001-04-30 2006-02-07 Pratyush Dasgupta Peripheral apparatus for intelligent networks and method for providing user services in intelligent networks
US7917906B2 (en) * 2004-07-02 2011-03-29 Seagate Technology Llc Resource allocation in a computer-based system
US8320529B2 (en) * 2006-02-16 2012-11-27 Verizon Services Corp. Sending urgent messages to multiple recipients via a single call

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1581477A (en) * 1978-05-19 1980-12-17 Post Office Apparatus for synthesising verbal announcements
EP0378694A1 (en) * 1988-06-14 1990-07-25 Fujitsu Limited Response control system
WO1991017616A1 (en) * 1990-05-07 1991-11-14 Unisys Corporation Digital computer platform for supporting telephone network applications
US5243643A (en) * 1990-11-01 1993-09-07 Voiceples Corporation Voice processing system with configurable caller interfaces

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5199062A (en) * 1988-01-20 1993-03-30 Phone Base Systems Inc. Telephone communications system including a digital telephone switch, a voice response unit and a stored program sequence for controlling both the switch and the voice response unit
US4878240A (en) * 1988-01-25 1989-10-31 Bell Communications Research, Inc. Multi-service telephone switching system
US5029200A (en) * 1989-05-02 1991-07-02 At&T Bell Laboratories Voice message system using synthetic speech
US5153909A (en) * 1989-05-25 1992-10-06 At&T Bell Laboratories Resource control and data handling for central office based automatic call distributors
US5113430A (en) * 1990-10-01 1992-05-12 United States Advanced Network, Inc. Enhanced wide area audio response network
US5239577A (en) * 1990-12-03 1993-08-24 Bell Communications Research, Inc. Network and method for providing cross-media connections
US5241588A (en) * 1990-12-18 1993-08-31 Bell Communications Research, Inc. Systems and processes providing programmable or customized customer telephone information services
US5179585A (en) * 1991-01-16 1993-01-12 Octel Communications Corporation Integrated voice messaging/voice response system
DE69213436T2 (en) * 1991-02-21 1997-01-09 Vmx Inc INTEGRATED APPLICATION CONTROLLED CALL PROCESSING AND MESSAGE SYSTEM
US5299259A (en) * 1991-09-27 1994-03-29 At&T Bell Laboratories Distributing calls over serving centers of a large customer
US5222125A (en) * 1991-09-03 1993-06-22 At&T Bell Laboratories System for providing personalized telephone calling features
US5329578A (en) * 1992-05-26 1994-07-12 Northern Telecom Limited Personal communication service with mobility manager
US5375164A (en) * 1992-05-26 1994-12-20 At&T Corp. Multiple language capability in an interactive system
US5386467A (en) * 1992-07-31 1995-01-31 At&T Corp. Intelligent network communication system
US5537466A (en) * 1994-08-04 1996-07-16 British Telecommunications, Plc. Intelligent communications networks

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1581477A (en) * 1978-05-19 1980-12-17 Post Office Apparatus for synthesising verbal announcements
EP0378694A1 (en) * 1988-06-14 1990-07-25 Fujitsu Limited Response control system
WO1991017616A1 (en) * 1990-05-07 1991-11-14 Unisys Corporation Digital computer platform for supporting telephone network applications
US5243643A (en) * 1990-11-01 1993-09-07 Voiceples Corporation Voice processing system with configurable caller interfaces

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
PAUL VAN HAL ET AL: "SERVICE SCRIPT INTERPRETER, AN ADVANCED INTELLIGENT NETWORK PLATFORM", ERICSSON REVIEW, vol. 67, no. 1, STOCKHOLM SE, pages 12 - 22 *
PETER O REILLY ET AL: "EXPERIENCES IN PROTOTYPING THE INTELLIGENT NETWORK", IEEE GLOBAL TELECOMMUNICATIONS CONFERENCE-NOV.29-DEC 2 1993, vol. 3/4, HOUSTON(US), pages 1923 - 1930 *
R.E.BRIGHT ET AL: "SERVICE CREATION IN AN INTELLIGENT NETWORK", IEEE GLOBAL TELECOMMUNICATIONS CONFERENCE & EXHIBITION- NOV 27-30 1989, vol. 1/3, DALLAS(US), pages 137 - 140 *
S.HOLLYWOOD: "SCP DEVELOPMENT IN A MULTI-PROCESSOR UNIX ENVIRONMENT", PROC. INT. COUNCIL FOR COMPUTER COMMUNICATIONS- 4-6 MAY 1992, TAMPA, pages 278 - 287 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6263883B1 (en) 1995-11-02 2001-07-24 Philip Morris Incorporated Interchange apparatus for a pneumatic conveying system
DE19622007A1 (en) * 1996-05-31 1997-12-04 Ericsson Telefon Ab L M USSD scheduler for mobile switching center MSC
DE19622007C2 (en) * 1996-05-31 1998-11-19 Ericsson Telefon Ab L M USSD scheduler for mobile switching center MSC
US5999825A (en) * 1996-05-31 1999-12-07 Telefonaktiebolaget Lm Ericsson USSD-scheduler in MSC
EP1075133A1 (en) * 1998-03-27 2001-02-07 BRITISH TELECOMMUNICATIONS public limited company Billing system

Also Published As

Publication number Publication date
US5912961A (en) 1999-06-15
ES2127543T3 (en) 1999-04-16
NO970470L (en) 1997-02-03
US5537466A (en) 1996-07-16
FI970439A (en) 1997-02-03
NZ290888A (en) 1997-05-26
JPH10503902A (en) 1998-04-07
DK0774190T3 (en) 1999-08-23
CA2195664C (en) 1999-10-12
NO970470D0 (en) 1997-02-03
EP0774190B1 (en) 1998-12-16
EP0774190A1 (en) 1997-05-21
HK1013558A1 (en) 1999-08-27
KR970705276A (en) 1997-09-06
DE69506716D1 (en) 1999-01-28
DE69506716T2 (en) 1999-05-20
AU3184495A (en) 1996-03-04
CA2195664A1 (en) 1996-02-15
FI970439A0 (en) 1997-02-03
AU683580B2 (en) 1997-11-13

Similar Documents

Publication Publication Date Title
AU683580B2 (en) Intelligent communications networks
AU689298B2 (en) Intelligent communications networks
US5311583A (en) International priority calling system with callback features
US5920621A (en) System and method for distributing calls to customer service operators based on automatic determination of operator availability
US5404396A (en) Feature interaction manager
US5848132A (en) Telecommunications network having resident ability to pre-book scheduled call back services
JPH0636534B2 (en) Communication network and method for realizing the same
US7623644B2 (en) System for executing advanced interactive voice response services using service-independent building blocks
US6895087B2 (en) Flexible software architecture for a call processing system
JPH03140089A (en) Plural-position waiting queue for telephone calling
US6430281B1 (en) Intelligent telecommunications network providing automated call booking, call reconnection and diary booking services
CA2242094C (en) Call center integration with operator services databases
AU728685B2 (en) Telecommunications networks and services
JP4307712B2 (en) Data exchange system
US6529483B1 (en) Communication system, method and processing means for switching calls via a transmission network disposed between two local networks
EP1269734B1 (en) Communications
JPH01293053A (en) Busy tone incoming connecting system

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 95194532.7

Country of ref document: CN

AK Designated states

Kind code of ref document: A1

Designated state(s): AM AT AU BB BG BR BY CA CH CN CZ DE DK EE ES FI GB GE HU IS JP KE KG KP KR KZ LK LR LT LU LV MD MG MN MW MX NO NZ PL PT RO RU SD SE SG SI SK TJ TM TT UA UG US UZ VN

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): KE MW SD SZ UG AT BE CH DE DK ES FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 290888

Country of ref document: NZ

WWE Wipo information: entry into national phase

Ref document number: 2195664

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 1995927846

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 970439

Country of ref document: FI

Ref document number: 1019970700777

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 1995927846

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

WWE Wipo information: entry into national phase

Ref document number: 08776529

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 1019970700777

Country of ref document: KR

WWG Wipo information: grant in national office

Ref document number: 1995927846

Country of ref document: EP

WWR Wipo information: refused in national office

Ref document number: 1019970700777

Country of ref document: KR