Service control device and method
18 claims: 9 independent, 9 dependent
- 1A method for controlling service execution in a control point of a communication network, said method comprising the steps of:a) loading a service script for a user in response to the receipt of an incoming protocol message, wherein said service script including information about service descriptions and triggering information for the user;b) checking whether an internet protocol (IP) based service is triggered based on a comparison of said incoming protocol message with said loaded service script;and c) activating the internet protocol (IP) based service in an external service execution environment if a service triggering has been determined in said checking step.
- 5A method according to any one of the preceding claims, wherein said service description comprises an IP address of an external execution point and/or an IP address of an external logic repository server.
- 6A method according to any one of the preceding claims, further comprising the step of invoking and coordinating service execution in at least two external execution points.
- 8A method according to any one of the preceding claims, further comprising the step of performing a firewall function towards service execution in other service execution environments.
- 9A method according to any one of the preceding claims, further comprising the step of terminating an active service in response to the receipt of a corresponding request from said communication network.
- 10A method according to any one of the preceding claims, further comprising the step of handling both mobile-originated and mobile-terminated calls for said user in said control point.
- 11A device for controlling service execution in a communication network, said device comprising:a) service script execution means (2) for loading a service script in response to the receipt of an incoming protocol message, and for checking whether an internet protocol (IP) based service is triggered based on a comparison of said incoming protocol message with said loaded service script, wherein said service script includes information about service descriptions and triggering information for the user;and b) service activating means (3) for activating the internet protocol (IP) based service in an external service execution environment in response to the receipt of a request for service invocation from said service script executing means (2).
Independent claims10
32 paragraphs in 5 sections, as filed
FIELD OF THE INVENTION
0001The present invention relates to a service control device and method for controlling service execution in a communication network, e.g. an execution of a service such as VoIP (Voice over IP), multimedia, e-mail, instant messaging, WEB browsing, WAP and the like in an IP-based network.
BACKGROUND OF THE INVENTION
0002In a communication environment, service scripts provide a means to create and manage value added services in a centralized session but distribute fully the service execution. The service logic is defined with a script which can be moved between functional elements in a communication network and which is executed in a suitable functional element. Usable script languages can be, for example, CPL (Call Processing Language), SIP Servlets (SIP:Session Initiation Protocol) representing executable instructions which handle SIP messages, or CGI (Common Gateway Interface).
0003The CPL language scripts are distributed to the servers participating in the handling of calls that need to be effected using these supplementary services. The scripts are inserted to these servers by the network management system, end-users or administrators. There can be several CPL script instances participating to the handling of a given call. The individual script instances are triggered and executed on signaling events conforming to predefined trigger conditions such as caller or callee identification. For example, when there is an incoming call to a subscriber who has defined an incoming call screening script, the script is executed because the callee identification matches.
0004In general, service scripts provide an efficient, portable and powerful tool for executing control instructions in a distributed network. Service scripts are for example used in Internet Web pages to create different kinds of effects for users. A service script is transferred or downloaded from a Web server to the local computer and executed there.
0005Moreover, using CPL scripts in connection with SIP Invite messages provides an opportunity to execute services in proxy nodes as specified by a user in an IN (Intelligent Network) network type.
0006However, due to the fact that the service scripts are stored and executed at a plurality of call control functional units or servers, especially in case of widely used services, a high amount of signaling is required to update service scripts or to adapt service scripts to new service features. Additionally, the fast evolution of IP (Internet Protocol) networks leads to an increased range of user-specific services leading to a demand for a higher flexibility of creating and configuring new services in the network with minimal disruption.
0007However, the traditional IN model is not flexible enough to integrate Internet type of services, such as Web browsing, presence, instant messaging, click2dial, and e-mail modifications, and to provide attractive and diverse services to users. Thus, a new solution for triggering and controlling services in an IP based service architecture is required.
0008<patcit id="pcit0001" dnum="WO0042760A"><text>WO 00/42760</text></patcit> discloses a system and method for providing access to service nodes from entities disposed in an integrated telecommunications network. This solution provides a generalized service invocation and realization architecture for use with an integrated telecommunications network that is operable with any known IP standard.
0009<patcit id="pcit0002" dnum="WO9933285A"><text>WO 99/33285</text></patcit> discloses an architecture independent application invocation over a telephony network. This solution provides a telephony network wherein applications are stored in a node of a signaling network, which applications may be requested and downloaded by subscribers during a voice call over the telephony network.
SUMMARY OF THE INVENTION
0010It is an object of the present invention to provide a method and device for controlling service execution in a communication network, by means of which a flexible service provision and control can be obtained.
0011This object is achieved by a method for controlling service execution in a control point of a communication network, said method comprising the steps of: <ul id="ul0001" list-style="none" compact="compact"><li>loading a service script for user in response to the receipt of an incoming message;</li><li>checking whether a service is triggered based on a comparison of the incoming message with the loaded service script; and</li><li>activating a service in an external service execution environment if a service triggering has been determined in said checking step.</li></ul>
0012Additionally, the above object is achieved by a device for controlling service execution in a communication network, said device comprising: <ul id="ul0002" list-style="none"><li>service script executing means for loading a service script in response to the receipt of an incoming message, and for checking whether a service is triggered based on a comparison said incoming message with said loaded service script; and</li><li>service activating means for activating a service in an external service execution environment in response to the receipt of a request for service invocation from said service script executing means.</li></ul>
0013Accordingly, the service is activated in some external service execution environment and not directly in the service control point. Thus, the service logic does not have to be contained in the service script and can be distributed over the communication network or core network without any restriction to a particular language or logic. This provides a flexible way to define, execute, and control user-specific, operator, and third party services combining various SIP/IP-based service capabilities.
0014The activating step may comprise a message processing step if an existing message is to be modified or if a new message is to be created. To achieve this, the service activating means may be arranged to contact a message processing means if a message processing is required. This message processing means may be e.g. an SIP message processor. Furthermore, the message processing means may be arranged to modify an existing message or to create a new message in response to a corresponding request from the service activating means.
0015Additionally, a protocol engine means may be provided for receiving and transmitting protocol messages, and for passing incoming messages to the service script executing means. This protocol engine means may be e.g. an SIP engine.
0016Preferably, service scripts of active users may be stored in a temporary storing means. In particular, the service script may comprise a service description and triggering information, needed to invoke said service activation in said external environment. A service may be triggered when a match is determined for a given trigger condition in the triggering information. The service description may comprise an IP address of an external execution point and/or an IP address of an external logic repository server. The invocation and coordination of service execution may be performed in at least two external execution points. In this case, a service interaction information may be coded in the service script. Furthermore, a firewall function may be performed towards service execution in other service execution environments.
0017An active service may be terminated in response to the receipt of a corresponding request from the communication network.
0018The control point may be arranged to handle both mobile-originated and mobile-terminated calls for an active user.
BRIEF DESCRIPTION OF THE DRAWINGS
0019In the following, the present invention will be described in greater detail bases on a preferred embodiment with reference to the drawing figures, in which: <ul id="ul0003" list-style="none"><li><figref idref="f0001">Fig. 1</figref> shows a schematic block diagram of a service control point according to the preferred embodiment, and</li><li><figref idref="f0002">Fig. 2</figref> shows a basic flow diagram of a service activation procedure according to the preferred embodiment.</li></ul>
DESCRIPTION OF THE PREFERRED EMBODIMENT
0020The preferred embodiment will now be described based on a service execution management functional unit or control point in an IP-based service architecture which may be implemented in any IP-based network or third generation mobile communication network such as a UMTS (Universal Mobile Telecommunications System) network.
0021<figref idref="f0001">Fig. 1</figref> shows a schematic block diagram of the service execution management functional unit of the IP-based service architecture which is capable of supporting multimedia and integrating different types of IP-based services. This service triggering and control point comprises an SIP engine 1 responsible for receiving and sending SIP (Session Initiation Protocol) messages, wherein incoming messages are passed to a service script executor 2 for service triggering. The service script executor 2 is arranged to load a service script for the active user of the incoming message from a service script storage 5 arranged for temporarily storing service scripts of active or registered users. Based on a comparison between the information received from the SIP engine 1 and the information given in the loaded service script, services are invoked and executed in external execution environments.
0022The service script is a unique script for a user and it includes information about service descriptions and triggering information for that particular user. The service script may be written using some XML-like language and may be pushed from a central database to the service script storage 5 e.g. for update purposes. The service description part in the service script includes information needed in order to execute the service in the external environment, e.g. IP addresses of an external execution point and a service logic repository server in which service codes or logics for implementing services are stored. The service logic can be transferred from the repository server to the execution point either offline or dynamically during service invocation. The external execution point may be any execution environment for different forms or languages of logic (e.g. Java, TPL, XML, CGI etc.).
0023In particular, a service is triggered by the service script executor 2 when a match is determined for a given condition in the triggering information of the concerned service script. To achieve this, the Service script executor 2 matches the information received from the SIP engine 1 with the triggering conditions of the service script.
0024The service script storage 5 is a temporary storage for keeping service scripts of active users. The service scripts may be pushed and updated by an external network element, such as a service script database.
0025If the Service script executor 2 determines that a service is triggered, a request for service invocation is issued by the service script executor 2 to a service activator 3 with all the necessary information for service invocation. The service activator 3 activates the service in the indicated external service execution environment and controls the execution. However, it does not directly execute the service. It only invokes and controls the service execution in the external environment based on corresponding messages submitted to the external network via the SIP engine 1. If a SIP message processing is required before service execution, the service activator 3 contacts a SIP message processor 4 which is responsible to modify an existing SIP message or to create a new message if it receives a corresponding request from the service activator 3.
0026In particular, the service activator 3 may invoke and coordinate service execution in one or more external execution points based on a corresponding address information in the service script and by corresponding messages issued via the SIP engine 1. For service interaction in the external environment, a service interaction information may be coded in the concerned service script. Furthermore, the control point shown in <figref idref="f0001">Fig. 1</figref> may be arranged to perform firewall functions towards the service execution in other and third party service execution environments to thereby prevent any distribution of harmful contents through the network environment.
0027Furthermore, a function may be provided to terminate some or all active services upon request from the core or external network via the SIP engine 1. Moreover, the control point may be arranged to handle both mobile-originated and mobile-terminated calls for an active user to allow possible mobile-originated and mobile-terminated call interactions.
0028In the following, a user registration is described based on the block diagram of <figref idref="f0001">Fig. 1</figref>. When a SIP Register message is received by the SIP engine 1, it is routed to a corresponding service script database of the service architecture. The service script database may respond with a 200 OK message comprising the service script of the new active user. When the SIP engine 1 receipts the 200 OK message with the service script, it routes the message to the service script executor 2 which loads the received new service script in the temporary service script storage 5. Thereby, the new user is registered as an active user in the control point. When the user is de-registered or cancelled, the service script is removed from the temporary service script storage 5.
0029<figref idref="f0002">Fig. 2</figref> shows a flow diagram of a service activation procedure. A service script is loaded based on an incoming SIP message, when a message event occurs and a message is routed via the SIP engine 1 to the service script executor 2. Then, it is checked by the service script executor 2 based e.g. on the triggering condition defined in the loaded service script whether a service is triggered (step S101). If no service triggering is determined in step S101, the procedure returns to step S100 until a new message event occurs.
0030If a service is determined to be triggered in step S101, the service script executor 2 issues a request for service invocation in step S102. In response to this request, the service activator 3 checks whether a message processing is required (step S103) to invoke the service. If such a message processing is required, the service activator 3 contacts the SIP message processor 4 to modify an existing message or to create a new message (step S104). Then, the process proceeds to step S105. If no message processing is required in step S103, the service activator activates and controls service invocation in the external environment by issuing a corresponding message or signaling (step S105). The service invocation may be signaled to a plurality of external application execution engines which may themselves invokate services in other application execution engines so as to provide serial or parallel services in the network environment. Thus, there is no need to maintain a relation between the call state of the received main call and the calls generated by the IP-based service architecture.
0031Thereby, a flexible way is provided to combine various SIP- or IP-based service capabilities in the external network, while the required service logic does not have to be provided at the service control point.
0032It is noted that the present invention can be applied to any service architecture in any network and is not restricted to a SIP messaging environment. The preferred embodiment may thus vary within the scope of the attached claims.
Contents5
2 sheets
Sheet 1 Sheet 2
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| WO9933285A1 | Cites | World Intellectual Property Organization (WIPO) | Examiner |
| EP0873029A | Cites | European Patent Office (EPO) | – |
| WO0042760A | Cites | World Intellectual Property Organization (WIPO) | – |
| WO0219732A | Cites | World Intellectual Property Organization (WIPO) | – |
| WO9933285A1 | Cites | World Intellectual Property Organization (WIPO) | – |
| US6226516B1 | Cites | United States of America | – |
7 members in 4 offices
Priority claims3
| Document | Office | Kind | Date |
|---|---|---|---|
| 792705 | United States of America | – | |
| 79270501 | United States of America | A | |
| 0200559 | International Bureau of the World Intellectual Property Organization (WIPO) | W |
Members7
| Document | Office | Kind | |
|---|---|---|---|
| US2002120691A1 | United States of America | A1 | |
| WO02067597A2 | World Intellectual Property Organization (WIPO) | A2 | |
| AU2002232070A1 | Australia | A1 | |
| WO02067597A3 | World Intellectual Property Organization (WIPO) | A3 | |
| EP1364539A2 | European Patent Office (EPO) | A2 | |
| US7953799B2 | United States of America | B2 | |
| EP1364539B1This record | European Patent Office (EPO) | B1 |
67 legal events, as 8 offices reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | Office | |
|---|---|---|---|
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Patent expired after termination of 20 yearsExpiredPE20 | PE20 | GB | |
| Patent expired because of reaching the maximum lifetime of a patentExpiredMK | MK | NL | |
| Expiry of rightR071 | R071 | DE | |
| Amendment of ipc main classPREVIOUS MAIN CLASS: H04L0029060000R079 | R079 | DE | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Fee paymentPLFP | PLFP | FR | |
| Fee paymentPLFP | PLFP | FR | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Fee paymentPLFP | PLFP | FR | |
| Modifications of names of proprietors of patentsTD | TD | NL | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Change of name or company nameCD | CD | FR | |
| Patent lapsedLapsedMM4A | MM4A | IE | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Patent ceasedCeasedPL | PL | CH | |
| No opposition filed against granted patent, or epo opposition proceedings concluded without decisionGrantedR097 | R097 | DE | |
| Change of applicant/patenteeR081 | R081 | DE | |
| Change of applicant/patenteeR081 | R081 | DE | |
| Change of applicant/patenteeR081 | R081 | DE | |
| No opposition filedOpposition26N | 26N | EP | |
| No opposition filed within time limitOppositionORIGINAL CODE: 0009261PLBE | PLBE | EP | |
| Information on the status of an ep patent application or granted ep patentGrantedSTATUS: NO OPPOSITION FILED WITHIN TIME LIMITSTAA | STAA | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Deletion acc. to par. 5 (withdrawal of the translation of the ep patent)MK05 | MK05 | AT | |
| AssignmentPUE | PUE | CH | |
| Party data changed (patent owner data changed or rights of a patent transferred)RAP2 | RAP2 | EP | |
| Translation filed for an european patent granted for nl, confirming art. 52 par. 1 or 6 of the patents act 1995GrantedT3 | T3 | NL | |
| Dpma publication of mentioned ep patent grantGrantedR096 | R096 | DE | |
| European patents granted designating irelandGrantedFG4D | FG4D | IE | |
| European patent takes effect as a national patent in ch/liEP | EP | CH | |
| Reference to at number (ep patent validated in austria)REF | REF | AT | |
| Designated contracting statesAK | AK | EP | |
| European patent grantedGrantedFG4D | FG4D | GB | |
| (expected) grantORIGINAL CODE: 0009210GRAA | GRAA | EP | |
| Grant fee paidORIGINAL CODE: EPIDOSNIGR3GRAS | GRAS | EP | |
| Information provided on ipc code assigned before grantRIC1 | RIC1 | EP | |
| Despatch of communication of intention to grant a patentORIGINAL CODE: EPIDOSNIGR1GRAP | GRAP | EP | |
| Amendment of ipc main classPREVIOUS MAIN CLASS: H04Q0003000000R079 | R079 | DE | |
| Party data changed (applicant data changed or rights of an application transferred)RAP1 | RAP1 | EP | |
| First examination report despatched17Q | 17Q | EP | |
| Information on inventor provided before grant (corrected)RIN1 | RIN1 | EP | |
| Information on inventor provided before grant (corrected)RIN1 | RIN1 | EP | |
| Information on inventor provided before grant (corrected)RIN1 | RIN1 | EP | |
| Information on inventor provided before grant (corrected)RIN1 | RIN1 | EP | |
| Information on inventor provided before grant (corrected)RIN1 | RIN1 | EP | |
| Information on inventor provided before grant (corrected)RIN1 | RIN1 | EP | |
| Request for examination filed17P | 17P | EP | |
| Designated contracting statesAK | AK | EP | |
| Request for extension of the european patentAX | AX | EP | |
| Public reference made under article 153(3) epc to a published international application that has entered the european phaseORIGINAL CODE: 0009012PUAI | PUAI | EP |
Numbers
- Publication
- 1364539
- Application
- 27121821
Titles3
- German
- DIENSTSTEUEREINRICHTUNG UND -VERFAHREN
- English
- SERVICE CONTROL DEVICE AND METHOD
- French
- DISPOSITIF DE CONTROLE DE SERVICES ET PROCEDE
Classification
- CPC, 6
- H04Q3/0045
- H04L67/306
- H04L67/10
- H04L69/329
- H04L67/51
- H04L9/40
- IPC, 3
- H04L29 06
- H04L29 08
- H04Q3 00
Designated states20
- Contracting states, 20
- Austria
- Belgium
- Switzerland
- Cyprus
- Germany
- Denmark
- Spain
- Finland
- France
- United Kingdom
- Greece
- Ireland
- Italy
- Liechtenstein
- Luxembourg
- Monaco
- Netherlands (Kingdom of the)
- Portugal
- Sweden
- Türkiye
