`
`WORLD INTELLECTUAL PROPERTY ORGANIZATION
`International Bureau
`
`
`
`INTERNATIONAL APPLICATION PUBLISHED UNDER THE PATENT COOPERATION TREATY (PCT)
`
`(51) International Patent Classification 6 =
`
`(11) International Publication Number:
`
`WO 98/13993
`
`H04M 3/50, H04L 12/58, H04M 3/42
`
`_
`.
`_
`(43) International Publication Date:
`
`.
`2 April 1998 (02.04.98)
`
`(21) International Application Number:
`
`PCT/GB97/02608
`
`(22) International Filing Date:
`
`25 September 1997 (25.09.97)
`
`(30) Priority Data:
`96199583
`97077127
`
`25 September 1996 (25.09.96)
`16 April 1997 (16.04.97)
`
`GB
`GB
`
`(71) Applicant (for all designated States except US): BRITISH
`TELECOMMUNICATIONS PUBLIC LIMITED COM-
`PANY [GB/GB]; 81 Newgate Street, London ECIA 7A1
`(GB).
`
`(72) Inventor; and
`(75) Inventor/Applicant (for US only): GIBSON, David, Lynton
`[GB/GB]; "Firleigh", Struggler‘s Lane, Witnesham, Ipswich,
`Suffolk IP6 9H8 (GB).
`
`(74) Agent: DU'I'I‘ON, Erica, Lindley, Graham; BT Group Legal
`Services, Intellectual Property Dept., Holbom Centre, 8th
`floor, 120 Holbom, London ECIN 2TE (GB).
`
`(81) Designated States: AL, AM, AT, AU, AZ, BA, BB, BG, BR,
`BY, CA, CH, CN, CU, CZ, DE, DK, EE, ES, FI, GB, GE,
`GH, HU, ID, IL, IS, JP, KE, KG, KP, KR, KZ, LC, LK,
`LR, LS, LT, LU, LV, MD, MG, MK, MN, MW, MX, NO,
`NZ, PL, PT, RO, RU, SD, SE, 80, SI, SK, SL, TJ, TM, TR,
`Tl", UA, UG, US, UZ, VN, YU, ZW, ARIPO patent (GH,
`KE, LS, MW, SD, 82, U0, ZW), Eurasian patent (AM, AZ,
`BY, KG, KZ, MD, RU, TJ, TM), European patent (AT, BE,
`CH, DE, DK, ES, FI, FR, GB, GR, IE, IT, LU, MC, NL,
`PT, SE), OAPI patent (BF, BJ, CF, CG, CI, CM, GA, GN,
`ML, MR, NE, SN, TD, TG).
`
`Published
`With international search report.
`
`incoming telephony line.
`
`(54) Title: APPARATUS FOR COMMUNICATIONS SERVICE PROVISION
`
`TCP/IP
`
`(57) Abstract
`
`A computer applications platform (150) provides an interface between telecommunications networks, such as the Public Switched
`Telecommunications Network (160) in the UK, and data networks such as the Internet (155). Applications which run on the platform (150)
`can be used to call up resources, for instance for the delivery of recorded messages. Because the applications platform (ISO) bridges data
`and telecommunications networks, the services provided can be via either type of network. Therefore a user of the telecommunications
`network can trigger a fax or electronic mail message to be sent to a user on a data network. The service being requested by a user can
`be identified by the applications platform from a data field in an incoming data message, or by the direct dialled digits associated with an
`
`GTL 1007
`
`IPR of US. Patent 7,324,637
`
`GTL 1007
`IPR of U.S. Patent 7,324,637
`
`
`
`FOR THE PURPOSES OF INFORMATION ONLY
`
`Codes used to identify States party to the PCT on the front pages of pamphlets publishing international applications under the PCT.
`
`Zimbabwe
`
`Albania
`Armenia
`Austria
`Australia
`Azerbaijan
`Bosnia and Herzegovina
`Barbados
`Belgium
`Burkina Faso
`Bulgaria
`Benin
`Brazil
`Belarus
`Canada
`Central African Republic
`Congo
`Switzerland
`Cate d'lvoire
`Cameroon
`China
`Cuba
`Czech Republic
`Germany
`Denmark
`Estonia
`
`ES
`FI
`FR
`GA
`GB
`GE
`GH
`GN
`
`HU
`[E
`[L
`
`IT
`JP
`
`KG
`KP
`
`KR
`KZ
`LC
`Ll
`LK
`LR
`
`Spain
`Finland
`France
`Gabon
`United Kingdom
`Georgia
`Ghana
`Guinea
`Greece
`Hungary
`Ireland
`Israel
`Iceland
`Italy
`Japan
`Kenya
`Kyrgyzstan
`Democratic People‘s
`Republic of Korea
`Republic of Korea
`Kaukstan
`Saint Lucia
`Liechtenstein
`Sri Lanka
`Liberia
`
`LS
`LT
`LU
`LV
`MC
`MD
`MG
`MK
`
`ML
`MN
`MR
`MW
`MX
`NE
`NL
`NO
`NZ
`
`[’1‘
`R0
`RU
`SD
`SE
`
`Lesotho
`Lithuania
`Luxembourg
`Lalvia
`Monaco
`Republic of Moldova
`Madagascar
`The former Yugoslav
`Republic of Macedonia
`Mali
`Mongolia
`Mauritania
`Malawi
`Mexico
`Niger
`Netherlands
`Norway
`New Zealand
`Poland
`Portugal
`Romania
`Russian Federation
`Sudan
`Sweden
`Singapore
`
`SI
`SK
`SN
`SZ
`TD
`
`TJ
`TM
`TR
`TT
`UA
`UG
`US
`
`VN
`YU
`ZW
`
`Slovenia
`Slovakia
`Senegal
`Swaziland
`Chad
`'l‘ogo
`'l'ajikistan
`Turkmenistan
`Turkey
`Trinidad and Tobago
`Ukraine
`Uganda
`United States of America
`Uzbekistan
`Viet Nam
`Yugoslavia
`
`
`
`W0 98/13993
`
`PCT/GB97/02608
`
`The present invention relates to the provision of communications services and find
`
`particular application in the integration of different service types, such as voice
`
`telephony and messaging.
`
`In conducting their everyday work, people need to communicate with each other.
`
`The nature of the communication will often reflect the nature of what it is wished
`
`to impart and the facilities available to both the sender and the recipient. Thus, at
`
`present, a typical office will contain a facsimile (FAX) machine, with telephones
`
`and personal computers (PCs) at each desk so that each employee has these
`
`facilities at their disposal on a personal or shared basis.
`
`These facilities are generally not well integrated - for example, if a user keeps a
`
`directory of regularly used telephone or FAX numbers on his PC he will typically
`
`have to re-enter these numbers on the telephone keypad when he wants to
`
`contact people by telephone or FAX.
`
`Indeed, having identified the person he needs
`
`to contact, the user is often uninterested in knowing the number to dial, he merely
`
`wishes to be put in touch. This lack of integration is more apparent should he be
`
`away from his office and wish to access any received messages.
`
`in this
`
`circumstance he will generally have to ring different numbers for each messaging
`
`service, using different terminal equipment for each service which, on some
`
`occasions, may not be readily available.
`
`There is a requirement, therefore, for a system which can provide improved access
`
`to both telephony and other services, such as messaging.
`
`It is known to provide an interface between a computer network and a Public
`
`Switched Telephone Network (PSTN) for this purpose. Apparatus which provides
`
`such an interface is a speech platform, such as that used by the present applicant
`
`to provide the ”Callminder” Service in the United Kingdom.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`
`
`W0 98/13993
`
`PCT/GB97I02608
`
`2
`
`The ”Callminder" service is a network-based answering machine service.
`
`It
`
`records voice messages for a user who is not there to receive an incoming call.
`
`The speech platform which supports it clearly has to have substantial capacity to
`
`deal with the volume of traffic generated by the PSTN. However, there are other
`
`services which can be supported from a speech platform.
`
`According to the present invention, there is provided an applications platform for
`
`providing communications services, the platform comprising:
`
`i)
`
`a connection channel interface, for providing access to two or more connection
`
`channels to a network for carrying voice signals;
`
`ii)
`
`a data network interface, for providing access to a network for carrying data;
`
`iii) access to resources for use in providing communications services, including at
`
`least one speech-related resource from the group comprising voice recognition,
`
`recordal of incoming sound signals and transmission of outgoing sound signals;
`
`iv) means for receiving service requests at the connection channel interface;
`
`v)
`
`interpretation means for use in relating a service request received at the
`
`connection channel interface to a computer-based application for use in provision
`
`of that service; and
`
`vi)
`
`initiating means for identifying and initiating the running of one or more
`
`computer—based applications in response to service requests received at the
`
`connection channel interface, said applicationls) being identified by reference to
`
`the interpretation means, which one or more computer-based applicationls) is
`
`adapted to call on at least one of said resources to provide a communications
`
`service in response to a received service request,
`
`such that the applications platform is able to respond to a received service request
`
`by identifying one or more computer—based applications for use in provision of that
`
`service and initiating the running of the identified applicationls).
`
`1O
`
`15
`
`20
`
`25
`
`30
`
`
`
`WO 98/13993
`
`PCT/GB97IOZ608
`
`The word "application" is used in this context in its computer-related meaning and
`
`indicates computer software for providing and controlling processes such as
`
`communications services.
`
`The network for carrying voice signals and the network for carrying data may be
`
`provided by the same network infrastructure, for instance where different
`
`protocols provide different transmission capabilities. However, the scenario
`
`primarily envisaged is that the network for carrying voice signals comprises a voice
`
`network of the telecommunications type, providing substantially real-time voice
`
`communication over channels for which a connection (established for instance by
`
`maintaining route and/or bandwidth but more usually route) is guaranteed (within
`
`practical limits) for the course of a communications session.
`
`Preferably, the network for carrying voice signals is provided by a public network
`
`such as the Public Switched Telecommunications Network (PSTN) in the United
`
`Kingdom. This gives very broad accessibility to services provided by embodiments
`
`of the present invention. The network for carrying data meanwhile may be
`
`provided by any appropriate network, such as a Local or Wide Area Network, or by
`
`a complex of interconnected networks such as that known as the internet.
`
`10
`
`15
`
`20
`
`Preferably, the means for receiving service requests is able to receive service
`
`requests at either one of the connection channel and data network interfaces. This
`
`allows users of either type of network to access services provided by use of
`
`25
`
`embodiments of the present invention.
`
`Preferably, any of a plurality of different applications may be run, depending on the
`
`service requested, and the services may be provided over one or both of the voice-
`
`supporting and the data networks. Thus embodiments of the invention can provide
`
`30
`
`a powerful and flexible bridge for service requests coming in from either network
`
`and being provisioned over whichever network is relevant. For instance, Internet
`
`service requests can be provisioned over the PSTN and vice versa. Further the
`
`nature of the service may be simple or complex, being determined by the individual
`
`applications and the resource availability.
`
`
`
`WO 98/13993
`
`PCT/GB97/02608
`
`For instance, in an embodiment of the present invention, if a service request is
`
`received via the connection channel interface, it will usually comprise a telephone
`
`number and it will be received on one of the connection channels. Preferably, one
`
`or more digits of the telephone number represent the service being requested. An
`
`applications platform according to an embodiment of the present invention will
`
`then refer to the interpretation means to identify the relevant service and thus the
`
`applicationis) required to support the service.
`
`1O
`
`15
`
`20
`
`25
`
`30
`
`Such an embodiment has the advantage that a service request incoming from the
`
`voice carrying network can come in on any of several connection channels. This is
`
`not the case where it is the incoming channel itself which identifies the service
`
`required.
`
`If the service request can come in on any of several connection
`
`channels, then better use of the connection channels can be made.
`
`Preferred embodiments of the present invention are provided with resource
`
`allocation means. The applications will then need resources such as connection
`
`channels, processing capacity and algorithms in order to support services. The
`
`resource allocation means can identify the application required to support a
`
`service, for instance by reference to interpretation means as described above, and
`
`subsequently allocate resources for running the relevant application.
`
`In these preferred embodiments, it is advantageous if the resource allocation
`
`means can make use of ”Direct Dialled Digits”. That is, the user dials a telephone
`
`number which comprises the number for the applications platform, plus one or
`
`more extra digits identifying (with the help of the interpretation means) the
`
`required application. This is in the manner of dialling in to an extension number on
`
`a private branch exchange. The incoming service request in this case can access
`
`the applications platform by any of the plurality of connection channels. The one or
`
`two extra digits dialled by the user comprise a “Direct Dialled Digits” field which
`
`the resource allocation means can process to identify a relevant application by
`
`reference to the interpretation means.
`
`
`
`WO 98/13993
`
`PCT/GB97/02608
`
`5
`
`By providing the resource allocation means with such data processing capability,
`
`and by including connection channels as allocatable resources,
`
`it is possible to
`
`allocate in real time any of the plurality of connection channels to an application
`
`necessary to provide a service, rather than having to pre—allocate channels. This
`
`flexibility in resource allocation is extremely advantageous, particularly as the
`
`number and types of services to be provided, and therefore of the different
`
`applications which need to be launched, increase.
`
`10
`
`15
`
`20
`
`25
`
`Preferably, the resource allocation means can operate in at least one other mode in
`
`allocating channels to applications. For instance, a user may make a request for a
`
`service by dialling the telephone number. The telephone number may be specific
`
`to a particular incoming channel. The interpretation means, in order to support this
`
`mode, stores the relationship between incoming channels and applications required
`
`to supply the requested service. The resource allocation means then can refer to
`
`the interpretation means to identify which application is relevant to that particular
`
`incoming channel. This provides interpretation of the request for service into a
`
`requirement for the relevant application by simply looking at which channel the
`
`request came in on.
`
`Clearly, it is preferable that the applications platform is provided with means for
`
`receiving service requests at the interface for providing access to the data
`
`network.
`
`The interface to the data-carrying network may advantageously be adapted to
`
`receive electronic mail messages. For instance, it may be provided by a gateway
`
`such as an SMTP gateway.
`
`In this way, users may request services by means of
`
`sending electronic mail messages to the applications platform.
`
`ln preferred embodiments of the invention, service requests incoming from the
`
`30
`
`data-carrying network comprise electronic mail messages, each message
`
`comprising an identifier for a respective service and data for use in running the
`
`service, and there is further provided a data store for storing said electronic mail
`
`messages, at least one of the computer—based applications having access to the
`
`data store and having means to select a mail message carrying an identifier for a
`
`
`
`W0 98/13993
`
`PCT/GB97/02608
`
`6
`
`service the application provides and to use the data from the selected mail
`
`message to provide the service.
`
`For instance, a mail message may incorporate an identifier for a paging service.
`The data it will carry will then usually comprise an identifier for a party to be
`
`paged. An application for use in providing the paging service will select the mail
`
`message because it carries the paging service identifier.
`
`It will then read the
`
`identifier for the party to be paged. The application will then act on the data to run
`
`the paging service to the relevant party.
`
`Preferably, mail messages sharing a common service identifier may have more than
`
`one structure and the applications which select and act on those mail messages
`will have means to recognise the relevant structure and to respond by providing
`
`the relevant service appropriately.
`
`For instance, a first mail message structure may be as described above,
`
`incorporating lat least) a specified field for the service identifier and a specified
`
`field for an identifier for a called party. The relevant application will provide the
`
`service identified, to the called party. A second mail message structure may then
`
`have a further specified field, for instance for "unstructured data", the application
`
`being triggered to access the further specified field by a predetermined
`
`characteristic of the mail message. For instance, the pre—determined characteristic
`
`may be that the specified field for the identifier for the called party is empty.
`
`Preferably the application has access to parsing means to parse unstructured data
`
`in the further specified field. This allows the further specified field to be used in a
`
`particularly flexible manner in the requesting of services.
`
`10
`
`15
`
`20
`
`25
`
`Preferably, as mentioned above, the applications platform is provided with resource
`
`allocation means to allocate resources to an application for use in providing a
`service.
`
`30
`
`Such allocation may be made in advance in relation to the running of an
`
`application, such that the allocated resource is unavailable to any other application,
`
`during the running of that application. Preferably, however, the resource allocation
`
`
`
`WO 98/13993
`
`PCT/GB97/02608
`
`7
`
`means is equipped to receive and respond to a request from an application for the
`
`allocation of one or more resources, during the running of the application.
`
`This has the advantage that resources that rely on relatively high processing
`
`capacity but which are only required for a relatively short proportion of the running
`
`time of an application, such as speech recognition algorithms, are not rendered
`
`unavailable to other applications throughout the running time of any single
`
`application.
`
`10
`
`15
`
`As mentioned above, the provision of interpretation means to relate applications to
`
`service requests allows flexibility in the allocation of channels to applications.
`
`Preferably, the interpretation means, for instance an interpretation table, is
`
`updatable and, more preferably, it is updatable while the applications platform is in
`
`use. This can be done by storing the interpretation means as an editable file, for
`
`instance in ASCII on hard disk, rather than in the memory of a PC. Although this
`
`may be expected to lead to a response bottleneck, it has been realised that the
`
`files concerned are relatively small and the bottleneck does not occur in practice.
`
`Also, currently available disk controllers are provided with local memory for simple
`
`”read" commands. Hence access to the interpretation means does not always
`
`20
`
`necessitate access to the disk itself.
`
`”Channel" in this context means a communication path of a type used to carry
`
`speech signals for a user. Such signals are usually carried in channels where the
`
`route through a network is set up and maintained during the course of a
`
`25
`
`communication session between the user and another network address such as a
`
`telephone number.
`
`"Channel" may therefore mean for instance a single time slot
`
`in a 30 speech channel ISDN connection. However, it is conceivable that other
`
`forms of channel which are capable of carrying speech might be used, such as a
`
`connection in which bandwidth rather than a particular route in a network is
`
`30
`
`reserved for the duration of a session.
`
`A speech platform referred to as the ”Minor Applications Platform” (MAP) will now
`
`be described as a specific embodiment of the invention, by way of example only,
`
`with reference to the accompanying drawings in which:
`
`
`
`WO 98/13993
`
`PCT/GB97/02608
`
`Figure 1 shows a schematic block diagram of components of the MAP;
`
`Figure 2 shows a block diagram of the contents of a speech card as shown in
`
`Figure 1;
`
`Figure 3 shows a schematic block diagram of two MAPS according to Figure 1,
`
`having some shared platform;
`
`Figure 4 shows a functional block diagram of a MAP management system for
`
`managing overall process flow in the MAP of Figure 1;
`
`Figure 5 shows a schematic representation of an example of data provision at
`
`‘10
`
`startup for the MAP shown in Figure 1;
`
`Figure 6 shows a flow diagram of events occurring in the MAP of Figure 1, at
`
`launch of an application in response to a service request;
`
`Figure 7 shows a schematic overview of service and resource queues in the MAP
`
`of Figure 1;
`
`Figure 8 shows a cyclic buffer for use in providing traffic statistics for the MAP of
`
`Figure 1; and
`
`Figures 9 and 10 show in block diagrams two alternative approaches to providing
`
`multiple MAPs in order to support increased connections to the PSTN.
`
`Wm
`
`15
`
`20
`
`API
`
`ASCll
`
`Applications Programming Interface
`
`American Standard Code for information Interchange
`
`ASIIWR
`
`Automatic Speaker Independent isolated Word Recogniser
`
`25
`
`BT
`
`British Telecommunications plc (the present applicant)
`
`CDHMM
`
`Continuous Density Hidden Markov Model
`
`CSS
`
`Customer Support Systems
`
`DASSZ
`
`Digital Automatic Signalling System No. 2 (used in UK with
`
`30
`
`DDI
`
`Direct Dialled In
`
`provision of primary rate ISDN)
`
`DLIC
`
`Digital Line Interface Card
`
`DPNSS
`
`Digital Private Network Signalling System (generally used between
`
`PABXs, has core capabilities and manufacturer — specific extensions).
`
`DSP
`
`Digital Signal Processor
`
`
`
`WO 98/13993
`
`PCTIGB97/02608
`
`9
`
`DTMF
`
`DX CPU
`
`Dual Tone Multi-Frequency
`
`DX Central Processing Unit
`
`EMC
`
`GUI
`
`IDE
`
`ISA
`
`lSDN
`
`LAN
`
`MAP
`
`Electromagnetic Compatibility
`
`Graphical User interface
`
`Industry Standard Architecture
`
`Integrated Services Digital Network
`
`Local Area Network
`
`Minor Applications Platform
`
`1O
`
`MVIP
`
`Multi-Vendor Interface Protocol
`
`NIC
`
`NT
`
`ODBC
`
`PABX
`
`Network Interface Card
`
`Trade Mark
`
`Open Database Connectivity
`
`Private Automatic Branch Exchange
`
`15
`
`PC
`
`Personal Computer
`
`PCM
`
`PlN
`
`PSTN
`
`SC
`
`Pulse Code Modulation
`
`Personal Identification Number
`
`Public Switched Telecommunications Network
`
`Speech Card
`
`20
`
`SIC
`
`Service Identity Code
`
`SMS
`
`SMTP
`
`STAP
`
`T120
`
`Short Messaging Service
`
`Simple Mail Transfer Protocol
`
`Speech Technology Applications Processor
`
`An ITU standard
`
`25
`
`TCP/IP
`
`Transmission Control Protocol/Internet Protocol
`
`TLI
`
`Transfer Line Identity
`
`TTSlM/Fl
`
`Text to Speech (Male/Female)
`
`VM
`
`Voice Messaging
`
`WWW
`
`World Wide Web
`
`30
`
`Referring to Figure 1, the MAP 150 sits between a data network 155, such as the
`
`Internet, and a telecommunications network 160 such as the PSTN.
`
`It comprises
`
`primarily one or more speech cards 110 and one or more digital line interface cards
`
`105, managed by applications running on a PC 120. A network interface card
`
`
`
`W0 98/13993
`
`PCT/GB97/02608
`
`1O
`
`(NIC) 130 provides connection to the data network 155, for instance by means of
`TCP/lP, and the DLICS 105 provide connection to an exchange 250, in this case a
`PABX, via an ISDN link 210.
`
`The speech cards 1 1O carry a set of algorithms for detecting, recognising,
`recording and generating speech signals and tones. The speech cards 110 can
`also deal with modern signals. The PC 120 also carries some of the more
`
`sophisticated algorithms, such as the speech recognition and text to speech
`conversion algorithms. These are the resources which allow the MAP to recognise
`and convert between different signal media, such as between spoken messages,
`recorded voice messages, electronic mail messages and the like. Additionally,
`there are one or more FAX cards 165 for providing the capability of sending and
`receiving by facsimile.
`
`The network interface card(s) 130 may of course support different communication
`
`protocols. As shown, the network interface card 130 supports TCP/IP and
`
`provides an interface to the Internet 155. This can give access to services
`
`provided by the MAP to any user having a connection to the lnternet 155.
`
`The digital line interface cards 105, the speech cards 1 10 and the FAX cards 165
`
`are connected to each other by a (known) multi-vendor interface protocol link 100
`
`and to one or more personal computers 120 by lSA links 115.
`
`General control of operation of the MAP 150 is provided by a computer application
`running on the PC 120.
`In particular, this application controls flow of processing in
`the MAP 150. Actual process execution to provide services is primarily (but not
`exclusively) carried out by processors of the Speech cards 110.
`
`1O
`
`15
`
`20
`
`25
`
`30
`
`Referring to Figure 2, each speech card 110 carries seven speech processors. The
`first of these, a Motorola 68,000 speech processor 205, provides processing
`power and gives overall control of what is happening on the speech card 1 10. The
`
`other six speech processors are Motorola 56,000 speech processors 200 which
`
`provide DSP capability. The 56,000 processors 200 provide some of the
`
`resources, particularly algorithms, used in running services on the MAP 150.
`
`
`
`WO 98/13993
`
`PCT/GB97I02608
`
`11
`
`These algorithms provide functions such as MF4 detection, playing out messages
`
`at 8 kbits/sec, recording messages at 64 or 8kbits/sec, and speech recognition.
`
`Overall control of the MAP 150 is provided by the "MAP Manager”. This is
`
`software which generally will reside on the PC 120. The MAP Manager has
`
`knowledge of the resources available, in terms of ISBN channels and the
`
`processors 200, 205, and it determines where resources will be made available to
`
`meet demand by applications.
`
`In particular, the MAP Manager has control over
`
`time switches 215 in the processors of the speech card 110 and allocates streams
`
`1O
`
`for processing by means of the MVIP 100.
`
`Referring to Figure 3, the basic architecture of a MAP 150 can be multiplied up so
`
`that there are at least two PCs 120, connected to their respective MAP speech
`
`cards 110. The DLICs 105 may share a common platform, as shown. Each PC
`
`15
`
`120 is connected via the ISA bus 115 to a network interface card 130 and thus to
`
`the Internet 155 via a network link 125. Further processing power can be
`
`provided by a UNIX processor 300, also connected to the ISA bus 115 and hard
`
`disk storage 305 is provided. Further memory 310 is associated with the P05
`
`120.
`
`In this arrangement, one MAP 150 can communicate with, and exploit
`
`20
`
`resources of, another MAP 150.
`
`A MAP will now be described in more detail.
`
`W
`
`25
`
`30
`
`Referring to Figures 1 to 3, the Minor Applications Platform (MAP) 150 described
`
`below is a PC—based speech platform capable of providing multiple speech
`
`applications on multiple telephone lines. The heart of the system is the speechcard
`
`8C2 110 which provides speech and signal processing based on algorithms. The
`
`MAP 150 supports multiple digital links to public and private telephone exchanges
`
`using its Digital Line Interface Card lDLlC) 105. The MAP 150 supports resource
`
`sharing and is dynamically reconfigurable to run different applications on the same
`
`hardware.
`
`Internally the DLIC 105 and 8C2 110 cards are interconnected using an
`
`industry standard speech bus 100 called Multi Vendor Interface Protocol (MVIP)
`
`
`
`W0 98/13993
`
`PCT/GB97/02608
`
`1 2
`
`and this capability may be used to build MAP systems using other commercially
`available cards. MAP systems may also be built in shelves with passive
`backplanes and use plug-in processor cards. Such backplanes may be split in
`which case MAP hardware and software resources may be shared between
`processors.
`
`The MAP system has a single manager and can provide traffic statistics.
`
`its
`
`operating system is UNIX.
`WINDOWS and Netware.
`
`It has an archival facility which has direct links to DOS,
`
`THE NETWORK SERVER
`
`The MAP system 150 provides a 30 channel digital connection 210 to a public or
`
`private telephone switch 250, such as a PABX, using a variety of protocols. The
`
`MAP 150 allows connection to be made to a public exchange using signalling
`
`systems such as the DASSZ or A1 B1 signalling systems, or to a private exchange
`using the DPNSS protocol. For the embodiment described below, the MAP 150 is
`
`connected to a private PABX using DPNSS which allows service provision based
`
`on TLl (and possibly SIC) codes. These codes have analogues in the PSTN where
`
`the known C7 signalling system is used, and thus services provided on the MAP as
`
`described herein can be implemented over the PSTN.
`
`In this implementation 3 PCs 120, 300 are used to provide the MAP system. One
`
`PC 120A provides system management and connection to the PABX 250, whilst
`
`the other two PCs 1208, 300 provide advanced speech recognition and text to
`
`speech conversion services. A fourth PC (not shown) provides connectivity to the
`
`lnternet 155 through an SMTP gateway, thereby enabling messages to be sent to
`and received from the LAN.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`MAP Manager
`
`The MAP manager provides control software for starting and terminating
`
`applications and co—ordinating their requests for services on line cards 105 and
`
`speechcards 110. The MAP manager resides on one of the PCs 120A and
`
`
`
`WO 98/13993
`
`PCT/GB97/02608
`
`13
`
`provides a screen—based user interface. From the manager screen the MAP system
`
`can be started, parked or shutdown and the state of resources examined. The
`
`manager uses a small number of tables which may be examined to control
`
`allocation of resources and application selection.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`A MAP "Traffic Statistics" screen can be invoked from the manager and provides
`
`basic information on platform use by applications, notably number of
`
`calls/application, average call holding time and busy hour.
`
`Referring to Figure 4, the MAP Manager 400 comprises control software 440 and
`a set of agents 405, 410, 415, 420, 425. Each agent is generally allocated to a
`
`functional entity, which may be hardware and/or software, and provides a control
`
`link thereto. Hence there is a DLlC agent 405, a speech card agent 410, a fax
`
`agent 415, a text to speech agent 420 and a speech technology applications
`
`processor agent 425. The DLlC, speech card and fax agents 405, 410, 415 are
`
`provided with Applications Programming Interfaces lAPIs) 430 and with plural
`
`drivers 435 for driving the relevant pieces of hardware (cards). Each API is
`
`provided by the suppliers of the relevant hardware cards. The MAP Manager
`
`control software 440 provides overall control of the agents and acts as a
`
`sophisticated message switch in that substantially all messages go via the MAP
`
`Manager control software 440.
`
`The drivers 425 receive incoming data and control outgoing communications for
`
`example by controlling interrupts on the relevant bus.
`
`The MAP Manager 400 provides overall resource allocation. To do this, at start
`
`up, it constructs a world view. This is checked and updated at intervals.
`
`It
`
`obtains the world View through its resource agents. For instance, referring to
`
`Figure 5 which shows a representation of a small part of the MAP Manager’s world
`
`view, the speech card agent 410 may have reported that two digital signal
`
`processors 500, 505 are loaded respectively with a multi-frequency detection
`
`algorithm 510 and an 8K coding scheme 515. These two digital speech
`
`processors 500, 505 will therefore deal with signals on the MVlP 100 which are
`
`incoming and outgoing respectively.
`
`
`
`W0 98/13993
`
`PCT/GB97/02608
`
`14
`
`MAP Processor
`
`MAP can be potentially hosted on most standard PCs with a 33 Mhz 486 PC or
`
`better and having a minimum of 8 Mbyte of memory. The standard processor used
`
`within the BT network is the Compaq 5133, a Pentium based machine having 5 full
`
`length lSA slots for MAP and other hardware cards.
`
`As an alternative, a processor card manufactured by Aculab plc can be used. This
`
`is intended for use in a shelf unit where the need is to provide a multi-processor
`
`MAP system in a single enclosure with minimal non-MAP components. Outline
`
`features include
`
`5"; 80486 DX CPU operating at 25,33 or 50 Mhz
`
`?
`
`, Internally clock doubled parts may be fitted
`
`iii- Pentium ready
`
`1) 256 kByte cache
`
`'7 lSA Bus
`
`On-card Ethernet LAN interface
`
`L: Serial and Parallel Ports
`
`lDE Hard Disk and Floppy Disk Interface
`
`Ci Keyboard Interface
`
`1O
`
`15
`
`20
`
`25
`
`MAP Algorithms
`
`Speech algorithms for use on the speech cards 1 10 and processors 120, 300
`
`include:
`
`30
`
`64kbit/s speech HO
`
`8 kbit/s speech l/O
`
`Silence detection
`
`DTMF Detection
`
`DTMF Generation
`
`
`
`WO 98/13993
`
`PCT/GB97/02608
`
`Network Tone Detection
`
`15
`
`ASIIWR CDHMM Isolated Word Recognition Yes/No, Digits, alphas
`
`ASIIWR Rapid Vocabulary Generation
`
`STAP CDHMM Connected Recognition
`
`STAP Rapid Vocabulary Generation
`
`Fast/Slow Speech
`
`Pulse Recognition
`
`Noise Interrupt
`
`Text to Speech
`
`10
`
`V21/V23 Modem
`
`Audioconferencing
`
`MAP Speech Card
`
`15
`
`20
`
`The Speechcard is manufactured by Aculab plc and provides a UNlX-based
`
`environment for algorithm execution, with a VX Works real-time kernel.
`
`it contains
`
`six Motorola 56001A DSPs clocked at 27MHz for digital signalling processing each
`
`of which connects to the MVIP bus. The on-board 40 MHz Motorola 68000
`
`coordinates communication between the DSPs and the MAP host processor over
`
`the ISA bus.
`
`It is also used in some instances for further algorithmic processing.
`
`The card is EMC approved and also provides a single analogue port for local speech
`
`recording/playback facilities.
`
`25
`
`MAP Operatin