Abstract: The invention concerns a call control system (CCS) having trunks to receive setup signaling messages tor setting up call sessions in a communication network, means to detect that a setup signaling message corresponds to a service requiring a vocal announcement to be played to the originator ot the setup signaling message, and means to retrieve a vocal announcement associated to this service from a memory location ot a media server (MS). This invention is characterized in that it further comprises means for determining the memory location according to the language of the vocal announcement to be played, this language being determined from the setup signaling message.
Language selection for vocal announcements within a call control system
The present invention relates to the so-called « Next Generation Networks)) (NGN). This concept of "next generation networking" is a broad term for emerging communication network architectures and technologies, which encompass the pure data networks and the plain old voice networks (PSTN for "Public Switched Telephone Network").
Typically, in a NGN architecture, the information is transmitted via data packets, generally based on the IP (Internet protocol) technologies, being pure IP or MPLS (for "Multi-Protocol Label Switching"). The acronym "VoIP" (Voice over IP) is often used to refer to this transmission of voice traffic over an IP-packets infrastructure.
According to the nature of the transmitted information (data, voice, video...), the packets could be handled differently by the communication network equipments, according to some QoS (Quality of Service) policies.
But in general, the transport-layer equipments (IP routers...) are not aware of this nature of the transmitted information, since the NGN architecture relies on a separation between the transport layer (or connectivity) and the call control layer.
Call sessions are typically handled by dedicated apparatus that are called differently according to manufacturers and standards. Usual terms comprise "Softswitch" or "call controller". Hereafter, we will refer to this kind of apparatus as a call control system (CCS).
In addition to the control of call sessions per se, the call control systems are also responsible for higher-level services, like specific billing, call redirections and the like.
Some of these high-level services may require the call control system to play a pre-recorded announcement to the caller.
For instance, when a call is subject to a specific billing rate, it is usual to warn the caller about his/her call being billed higher than usual.
Some services may also require the caller to enter a pin code before allowing him/her the access.
However, a problem lies in the choice of the language of the announcement to be played.
Similar issues existed in the plain old voice networks (PSTN), but the subscribers are physically connected to the local exchanges, and since both are located in the same geographical area, the solution was straightforward and consisted in having the exchanges playing the announcements in the language corresponding to their location.
But this co-location of the subscriber premises and call control systems does not exist anymore in NGN architecture.
It is especially the case when operator beholds to a multi-language country like India, Belgium etc. The same call control system can cater to different cities or states where different languages are spoken. Another typical case would be a subscriber from a different geographical area calling a local subscriber and the announcement being played in the local language. These two examples show the need for the operator as well as the subscriber for the announcement to be played in a language understandable by the calling subscriber.
It is of higher importance when the announcement prompts the calling subscriber to enter a pin-code or requires him/her to react in some way.
Some solutions have been proposed so far to solve this issue.
A first kind ot solution consists in prompting the calling subscriber to let him/her choose the language to be used.
This solution has the drawback ot requiring the subscriber to always choose the language, which may be cumbersome and delay the access to the service. Further, this requires some intelligence in the network architecture (e.g. in the call control system) to understand the language chosen by the calling subscriber. In addition, when a new language is to be added, the prompting announcement has to be modified, as well as the intelligence for understanding the choice of the subscriber. These modifications impact the flexibility of the solution.
Another solution consists in using the information provided by a SCP (Service Control Point) in an IN (Intelligent Network) architecture. The SCP can know about the origin of the call, and thus determine in which language the announcement should be played.
However, such a solution is only possible when there is an IN configuration involved. Out of any IN based call, there would be no communication between the call control system and any SCP, so that no determination of the right announcement could be made on the basis of the information provided by the SCP.
The aim of the invention is to solve these issues.
A first object of the invention is a call control system having
- trunks to receive setup signaling messages for setting up call
sessions in a communication network,
- means to detect that a setup signaling message
corresponds to a service requiring a vocal announcement to
be played to the originator of the setup signaling message,
and
- means to retrieve a vocal announcement associated to this
service from a memory location of a media server (MS).
The invention is new over the prior art in that it further comprises means for determining the memory location according to the language of the vocal announcement to be played, this language being determined from the setup signaling message.
According to embodiments of the invention, this determination of the memory location depends on a Calling Line Identity contained in the setup signaling message, and/or on the identifier of the trunk from which the setup signaling message has arrived.
The Call Control system may comprise matching tables for mapping values of the Calling Line Identities and/or identifiers of the trunks and languages.
The invention consists also in a communication network comprising such a call control system.
According to one embodiment of the invention, each geographical area having a determined language corresponds to a local communication networks, and the call control system is arranged to determine the memory location according to the identifier of the trunk linking said Call Control System to the local network areas.
At last, another object of the invention is a method for controlling calls comprising
- a step of transmitting setup signaling message to a call
control system for setting up call sessions in a communication
network,
- a step of detection that a setup signaling message
corresponds to a service requiring a vocal announcement to
be played to the originator of the setup signaling message,
and
- a step of retrieving a vocal announcement associated to
this service from a memory location of a media server,
This method is characterized in that it further comprises a step of determining this memory location according to the language of the vocal announcement to be played, the language being determined from the setup signaling message.
The invention would be more clearly explained in the following description, with the help of the annexed figures.
The figure 1 illustrates a communication network comprising a call control system according to the invention.
The figure 2 is a schematic representation of the content of the media server, according to the invention.
In the figure 1, the communication network CN comprises a call control system CCS. This call control system can receive setup signaling message from various calling devices (telephone, IP terminals, etc.), located in local communication networks, LN1, LN2, LN3.
These setup signaling messages may be compliant with the SIP protocol ("Session Initiation Protocol") as defined by the RFC 3261 of the IETF (Internet Engineering Task Force). In case of a converged call control system, like a media gateway control (MGC), the setup signaling messages can arrive from plain-old telecommunication networks (POTN) and be compliant with the ISUP protocol ("ISDN User part").
The aim of the setup signaling messages (for example, the "Invite" message of the SIP protocol) is to set up a call session between the calling device and a called device (not shown in the figure). As said previously, before establishing the call session, some services may be needed requiring a vocal announcement to be played to the calling party. In such a situation, it is the responsibility of the call control system CCS to trigger the play of this vocal announcement.
Typically again, the vocal announcements are stored in a media server MS, separated from the call control system itself. This media server is basically a database comprising many vocal announcements (and possibly other kind of media). Each vocal announcement is stored in a memory location of this media server and could be retrieved thanks to a memory address.
The communication between the call control server CCS and the media server MS could be based on the HTTP protocol (HyperText Transfer Protocol). In such a case, the memory address could be an URL (Uniform Resource Locator).
Knowing the memory address of the announcement to be played, the call control server CCS can retrieve it from the media server MS and play it to the calling party that has emitted the setup signaling message.
The determination of the vocal announcement to be played depends on the service corresponding to the setup signaling message (i.e. requested by the calling party) and on the language to be chosen for said calling party.
In the example shown on the figure 2, the database of the media server MS is split in several clusters Cl, C2, C3.... Each of these
memory clusters corresponds to a service. For instance, the cluster 1 corresponds to the announcements related to a specific billing policy; the cluster 2 corresponds to the announcements related to the unavailability of the called party etc.
Each of these clusters could be further subdivided into several subclusters corresponding to languages. In addition to the available languages, it could be added a default announcement and combinations of announcements.
For instance, the cluster 1 is subdivided into a subcluster SCI for the default announcement; subcluster SC2 for an announcement in Portuguese; subcluster SC3 for an announcement in English; and subcluster SC4 for an announcement in English and Portuguese.
The choice of the appropriate language (i.e. of the appropriate subcluster) is determined from the signaling message that has been received.
In a preferred embodiment of the invention, this determination of the language to be used depends on the Calling Line Identity contained in said setup signaling message
This Calling Line Identity CLI is typically the number of the party initiating the call, as defined by the recommendation E.I64 of the ITU-T (International Telecommunication Union). This number is made of several parts as defined by the numbering plan. The prefix of the Calling Line identity CLI can represent a geographical area.
Using this prefix, the call control system CCS can therefore determine the language to apply and the announcement to play.
Also, the numbering scheme could be organized by the operator in a hierarchical way, so that the determination of the geographic areas can be based on shorter parts than the prefixes. For instance, "04" may always mean "south area", and "04123" represent
a first area, "04124" a second area etc. For this scheme, it is possible to adapt the mapping between the CLI and the language in a way more relevant to the reality: depending of the diversity of a region, it could be subdivided in areas, and the languages could be mapped to different levels of the regions/areas.
The Calling Line Identity has the advantage of providing an exact location of the calling terminal, so that the language is selected with the highest relevancy.
The mapping between the Calling Line Identity and the language to be selected may be done by using only a prefix of the Calling Line identity.
For instance, the Call Control System CCS may contain a table like the following one:
(Table Remove)
Such a table means that for all Call Line Identity beginning with the prefix "044", the subcluster SCI should be use; for all Call Line Identity beginning with the prefix "011", the subcluster SC2 should be used, and for the Call Line Identity "07728591030", the subcluster SC3 should be used.
As previously described, these subclusters represent memory locations and correspond to a language. With such a matching table, both single Call Line Identity and groups of Call Line Identities could be mapped to languages.
Obviously other arrangement could be possible for the matching table to map the Call Line identities values and the languages.
In addition to the previous-mentioned advantages, using Call Line Identities CLI makes the invention independent of the network architecture.
However, this calling line identity CLI is not mandatory and could be not present in the setup signaling message.
The invention proposes to solve also this supplementary problem, by using in stead of in addition to the Call Line Identity, the identifier of the Trunk from which the setup signaling message has arrived.
As shown in the figure 1, trunk Tl links the call control system CCS to the local communication network LN1; the trunk T2 links it to the local communication network LN2; and the trunk T3 links it to the local communication network LN3.
According to the trunk identifier, the call control server CCS can determine which language is to be played. For instance, if the local communication network LN1 is located in a geographical area where the Portuguese language is mainly spoken, then the subcluster SC2 would be chosen. As it was described for the Call Line identity, the Call Control System CCS can contain a matching table, mapping the trunk identifiers and the subclusters to be used; or more generally mapping the trunk identifiers and the languages.
This arrangement is peculiarly useful when the communication networks are designed so that each local communication network LN1, LN2, LN3 corresponds to a geographical area having a
determined language, and when all the traffic coming from a local communication network arrives to the Call Control System CCS through the same trunk.
In such a situation, knowing the identifier of the trunk enables to know which language is to be selected. The Call Control System CCS is arranged to determine the memory location according to the identifier of the trunk linking the Call Control System to the local network areas.
There is even no need anymore of using the Calling Line Identifier, and it could be decided by the operator of the network to not use at all a determination based on the Calling Line Identifier. Doing this allows to reduce the size of the matching tables and to save some memory resources within the Call Control System CCS.
According to one embodiment of the invention, the Calling Line Identity CLI is used when it is present in the setup-signaling message. When it is not, then the trunk identifier is used instead for determining which language to use.
The call control system CCS can contain matching tables to determine the appropriate subcluster to be used according both to the Calling Line Identity and the Trunk identifiers.
Using such a matching table makes it easy for the operator of the system to modify it in order to change a language to another, to add a new language etc.
REVENDICATIONS
1) Call control system (CCS) having trunks to receive setup
signaling messages for setting up call sessions in a communication
network, means to detect that a setup signaling message corresponds
to a service requiring a vocal announcement to be played to the
originator of said setup signaling message, and means to retrieve a
vocal announcement associated to said service from a memory
location of a media server (MS), characterized in that it further
comprises means for determining said memory location according to
the language of the vocal announcement to be played, said
language being determined from said setup signaling message.
2) Call control system according to claim 1, in which said
determination of said memory location depends on a Calling Line
Identity contained in said setup signaling message.
3) Call Control system according to claim 1 or 2, in which said
determination of said memory location depends on the identifier of
the trunk from which said setup signaling message has arrived.
4) Call control system according to claim 2, further comprising
a matching table, mapping values of said Calling Line Identity and
languages.
5) Call Control System according to claim 3, further comprising
a matching table, mapping values of said identifiers of trunk and
languages.
6) Communication network comprising a call control system
according to one of the previous claims.
7) Communication network according to the previous claim,
wherein each geographical area having a determined language
corresponds to a local communication networks (LN1, LN2, LN3), and
wherein said call control system (CCS) is arranged to determine said
memory location according to the identifier of the trunk linking said
Call Control System (CCS) to said local network areas.
8) Method for controlling calls comprising a step of transmitting
setup signaling message to a call control system (CCS) for setting up
call sessions in a communication network, a step of detection that a
setup signaling message corresponds to a service requiring a vocal
announcement to be played to the originator of said setup signaling
message, and a step of retrieving a vocal announcement associated
to said service from a memory location of a media server (MS),
characterized in that it further comprises a step of determining said
memory location according to the language of the vocal
announcement to be played, said language being determined from
said setup signaling message.
| # | Name | Date |
|---|---|---|
| 1 | 1164-del-2006-Correspondence-others-(10-05-2006).pdf | 2006-05-10 |
| 1 | 1164-DEL-2006_EXAMREPORT.pdf | 2016-06-30 |
| 2 | 1164-del-2006-GPA-(27-12-2006).pdf | 2006-12-27 |
| 2 | 1164-del-2006-abstract.pdf | 2011-08-21 |
| 3 | 1164-del-2006-Correspondence-others-(27-12-2006).pdf | 2006-12-27 |
| 3 | 1164-del-2006-claims.pdf | 2011-08-21 |
| 4 | 1164-del-2006-description (complete).pdf | 2011-08-21 |
| 4 | abstract.jpg | 2011-08-21 |
| 5 | 1164-del-2006-form-5.pdf | 2011-08-21 |
| 5 | 1164-del-2006-drawings.pdf | 2011-08-21 |
| 6 | 1164-del-2006-form-3.pdf | 2011-08-21 |
| 6 | 1164-del-2006-form-1.pdf | 2011-08-21 |
| 7 | 1164-del-2006-form-2.pdf | 2011-08-21 |
| 7 | 1164-DEL-2006-Form-18.pdf | 2011-08-21 |
| 8 | 1164-del-2006-form-2.pdf | 2011-08-21 |
| 8 | 1164-DEL-2006-Form-18.pdf | 2011-08-21 |
| 9 | 1164-del-2006-form-3.pdf | 2011-08-21 |
| 9 | 1164-del-2006-form-1.pdf | 2011-08-21 |
| 10 | 1164-del-2006-drawings.pdf | 2011-08-21 |
| 10 | 1164-del-2006-form-5.pdf | 2011-08-21 |
| 11 | 1164-del-2006-description (complete).pdf | 2011-08-21 |
| 11 | abstract.jpg | 2011-08-21 |
| 12 | 1164-del-2006-Correspondence-others-(27-12-2006).pdf | 2006-12-27 |
| 12 | 1164-del-2006-claims.pdf | 2011-08-21 |
| 13 | 1164-del-2006-GPA-(27-12-2006).pdf | 2006-12-27 |
| 13 | 1164-del-2006-abstract.pdf | 2011-08-21 |
| 14 | 1164-DEL-2006_EXAMREPORT.pdf | 2016-06-30 |
| 14 | 1164-del-2006-Correspondence-others-(10-05-2006).pdf | 2006-05-10 |