FIELD OF THE INVENTIONEmbodiments of the present invention relate to integrated data networks. More particularly, embodiments of the present invention relate to methods and systems for converged service creation environment applications.
BACKGROUND OF THE INVENTIONA known communications system architecture is described in the Telecommunications Information Networking Architecture Consortium (“TINA-C”) document entitled “Overall Concepts and Principles of TINA,” version 1.0, issued Feb. 17, 1995 (hereinafter the “TINA overview”). The overall TINA architecture can include a service architecture having a session model, a network architecture related to transport networks, and a computing architecture having a distributed processing environment (DPE) architecture.
The TINA overview describes a service session concept, where the “session” is defined as representing “a temporal period during which activities are carried out with the purpose of achieving a goal.” Four types of sessions are identified: (i) a service session that represents a single activation of a service, (ii) a user session that represents a single user's interaction with a service session; (iii) a communications session that represents the connections associated with a service session; and (iv) an access session that represents a user's attachment to a system and the user's involvement in services.
A service session, as described by the TINA overview, is a single activation of a service that relates users of the service together so that they can interact. The TINA service session can be controlled at least in part by a TINA service session manager, which offers two types of operational interfaces: (a) a generic session control interface that allows users to join and leave a service session; and (b) service specific operations that are dictated by the capabilities offered by service logic of the service session.
FIG. 1 is an illustration of a known system described in the TINA overview. In particular,FIG. 1 depicts a view of the access and the session concepts. User agents21 and22 andterminal agents31 and32 represent service independent objects, and the remaining system objects (e.g., TINAservice session manager100, TINAcommunications session manager110,user sessions11 and12, andend user application51 and52) depict service specific objects. When a first user is to engage in a document editing session with another user, the first user can select a terminal on which he will access the network (e.g., a workstation with windowing capabilities). As part of a login procedure, theterminal agent31 and user agent21 are found (e.g., using trading services of the DPE) and associated with each other. The user can then be presented with a menu of capabilities and can select a document editing option. A request is passed to the user agent21 to establish a document editing service session. The user agent21 creates a document editing TINAservice session manager100, and joins the user to the session, causing a user session11 to be created. Another menu is presented to the user requesting the identification of the other user to be called. After the user agent receives the identification, the user agent21 requests that the TINAservice session manager100 join the other user in the session. The TINAservice session manager100 uses the identification to locate (e.g., again via trading) the other user agent22, and a request to join is sent to the user agent22. After determining which terminal to alert, the user agent22 alerts theterminal agent32 of the incoming session request. Theterminal agent32 then alerts the terminal (e.g., by presenting a window on the user's terminal when the user is already logged on). The other user accepts the request, and the acceptance is sent back to the TINAservice session manager100. After receiving the acceptance, the TINAservice session manager100 creates auser session12 for the other user. The first user then requests the TINAservice session manager100 to set-up an audio-visual connection to the other user, so that the two users can discuss edits to be made before carrying them out. The TINAservice session manager100 requests the TINAcommunication session manager110 to establish astream111 between end-user applications51 and52 (computational objects) residing on the users' terminals (the interface identities of which were passed over in an earlier request or acceptance). When thestream111 is established, a response is passed back to the first user. The two users can then engage in an audio-video conversation, where they discuss the changes to be made to the document. The first user can direct the TINAservice session manager100 to open the document, and the document appears on the users' screens. Commands to edit the document are sent to the TINAservice session manager100, and the changes are reflected back on the users' screens. At any time, either party may leave the session, which will result in the other party being notified and the deletion of the service session. During the service session, subject to permission, each user may request another user to join.
FIG. 2 shows an illustration of another known system. In particular,FIG. 2 shows a system based on the Reference Service Architecture of the International Softswitch Consortium. Softswitch220 andsignaling gateway230 can be coupled to an Advanced Intelligent Network (“AIN”)/Signaling System 7 (“SS7”)signaling network270 of the public switched telephone network (“PSTN”)260 to perform call control operations of calls placed over the PSTN260. In an embodiment, the term PSTN encompasses the interconnected collection of local and long distance phone companies in the United States. Amedia gateway240 can receive voice data (e.g., PSTN format data) from a telephone via PSTN260 and convert the voice data into Internet Protocol (“IP”) data.Data network250 can be coupled tosoftswitches220 and can carry data from onemedia gateway240 tosecond media gateway240. In an embodiment,data network250 can be an Asynchronous Transfer Mode (“ATM”) network, an IP network, a MultiProtocol Label Switching (“MPLS”) network, a combination thereof, and so forth. For example, a long-distance call can originate from a first telephone. Softswitch220 can communicate withsecond softswitch220 to set-up the long-distance call acrossnetwork250 to a second telephone, wheremedia gateways240 convert the voice communications between the PSTN format and the IP format.
Application server200 can be coupled to softswitches220 to provide a service creation platform. Examples of services that can be created and managed byapplication server200 include Internet call waiting, a multimedia conferencing, click-to-dial, and so forth. Amedia server210 can also be coupled toapplication server200 and to network250 to provide audio announcements with respect to service applications. For example, amedia server210 can provide announcements to users in setting up a conference bridge for a conference call.Media server210 can also send audio and/or video streams to one or more users and/or IP endpoints. In an embodiment, the signaling betweensoftswitch220 andsignaling gateway230 can be ISUP (integrated services digital network user part) signaling, TALI (transport adaptive layer interface) signaling, SIGTRAN (signaling transport) signaling, and so on.Media gateway240 can be a Media Gateway Control Protocol (“MGCP” or “Megaco”) compliant gateway, and signaling between softswitch220 andmedia gateway240 can be MGCP/Megaco signaling. Communications betweendata network250 andmedia server210 ormedia gateways240 can be RTP (realtime transport protocol) communications. Communications betweenapplication server240 andsoftswitches220 can be according to the Session Initiation Protocol (“SIP”).
The AIN/SS7 service creation and execution environment (“SCE”) illustrated inFIG. 2, however, is not adequate for broadband and hybrid messaging services. A softswitch220 is a voice-oriented call processing engine. Softswitch220 can behave as a PSTN/IP service creation bridge that allows narrowband service creation (e.g., with IP connectivity via the protocol adaption layer). For converged broadband and/or hybrid messaging services, a softswitch call model is not adequate. Also, converged services with flexible billing (e.g., bill by the minute, bill based on throughput, etc.) and/or user-specified Quality of Service (“QoS”) can not be adequately provided by the softswitch call model. Moreover, a softswitch does not provide session control at the service level, and softswitch vendors typically have different architectures and proprietary Application Programming Interfaces (“APIs”). A large base of hybrid services exist in the IP domain currently, and that base is increasing. Converged service creation, user-specified QoS, and flexible billing can become key service differentiators for communications service providers (e.g., regional communications service providers, data communications service providers, long-distance communications service providers, and so on). In view of the foregoing, it can be appreciated that a substantial need exists for methods and systems for converged service creation environment applications.
SUMMARY OF THE INVENTIONEmbodiments of the present invention relate to methods and systems for converged service creation environment applications. According to an embodiment of the present invention, a system includes an application server, where the application server is coupled to an application. One or more open application programming interfaces are coupled to the application server, and service session management logic is also coupled to the application server.
BRIEF DESCRIPTION OF THE DRAWINGSFIG. 1 is an illustration of a known TINA system.
FIG. 2 shows an illustration of another known system.
FIG. 3 is a schematic diagram of an overview of an embodiment of the present invention.
FIG. 4 shows an illustration of an embodiment of the present invention.
FIG. 5 illustrates an embodiment of a converged service creation and execution environment for a broadband service between a media server and a customer IP device.
FIG. 6 illustrates an embodiment of a converged service creation and execution environment for a narrowband service between a telephone and customer IP device.
FIG. 7 illustrates an embodiment of a converged service creation and execution (“CSCE”) environment for a messaging services from and to a customer IP device.
FIG. 8 shows an embodiment of a CSCE service session model.
FIG. 9 is an illustration of CSCE messaging operations in accordance with an embodiment of the present invention.
FIG. 10 shows an illustration of CSCE conferencing operations in accordance with an embodiment of the present invention.
FIG. 11 shows an embodiment of a CSCE environment providing multimedia on demand services.
FIG. 12 shows another embodiment of a CSCE environment providing multimedia on demand services.
FIG. 13 shows an illustration of an embodiment of the present invention related to a demonstration application of an online real estate agency service.
FIG. 14 shows an illustration of a portion of operations in accordance with the embodiment illustrated inFIG. 13.
FIG. 15 shows an illustration of an additional portion of operations in accordance with the embodiment illustrated inFIG. 13.
FIG. 16 shows another illustration of the operations illustrated inFIG. 15.
FIG. 17 shows an illustration of an additional portion of operations in accordance with the embodiment illustrated inFIG. 13.
FIG. 18 shows another embodiment of communications operations of a CSCE architecture related to a message sequence for a Click2Show application.
FIG. 19 shows another embodiment of communications operations of a CSCE architecture related to a message sequence for a Click2Conference application.
DETAILED DESCRIPTION OF THE INVENTIONAccording to an embodiment of the present invention, methods and systems provide for a converged service creation environment (“CSCE”) applications. The integrated data network can include an ATM network, an IP network, an MPLS network or a combination thereof. The integrated data network can include and/or be coupled to a PSTN network that includes an AIN/SS7 signaling network. CSCE processes can provide a vendor independent service creation and execution framework. In an embodiment, new network functional components can be easy to add, and upgrading technology without a major impact to service creation and execution can be easy. AIN service creation infrastructure can be interfaced with the CSCE infrastructure, and a service session control mechanism can facilitate converged service creation and execution. The CSCE system and processes can provide a modular, scalable and extensible architecture.
FIG. 3 is a schematic diagram of an overview of an embodiment of the present invention. Acommunications service provider300 can operate an Next Generation Network (“NGN”)service control complex305. Examples of acommunications service provider300 include a regional communications service provider, a data communications service provider, a long-distance communications service provider, and so on. In an embodiment of the present invention, NGN service control complex305 can provide a converged service creation and execution environment. The CSCE can provide converged services to acustomer320 based at least in part onapplications310. Examples of converged services provided by the NGN service control complex305 include narrowband voice call services, broadband audio/video streaming, hybrid messaging services, a combination thereof, and so forth.
In an embodiment, the NGN service control complex305 can establish a common converged service creation and execution platform. It can provide open APIs to support third party e-commerce applications. Support for traditional class 4/5 services and value-added narrowband services can also be supported. In an embodiment, the NGNservice control complex305 interacts with application service servers (e.g., network resource service servers) that provide broadband services and can control end user CPEs/IADs (customer premises equipment/integrated access devices) that receive network services. The NGNservice control complex305, in an embodiment, can coordinate network service components and allow component level service interactions.
FIG. 4 shows an illustration of an embodiment of the present invention.PSTN260 can be coupled to and/or include AIN/SS7 signaling network270. As used to describe embodiments of the present invention, the term “coupled” encompasses a direct connection, an indirect connection, or a combination thereof. Moreover, two devices that are coupled can engage in direct communications, in indirect communications, or a combination thereof.
AIN/SS7 signaling network270 can be coupled to and/or include a Service Control Point (“SCP”)272.SCP272 includes a database and supplies the translation and routing data needed to deliver advanced network services. AIN/SS7 signaling network270 can also be coupled to Service Switching Point (“SSP”)274. In an embodiment,SSP274 is a PSTN switch that can recognize intelligent network (“IN”) calls and route and connect the calls under the direction of an SCP.PSTN260 can also be coupled toService Node276. A plurality of AIN services277-279 can be provided viaSCP272. Examples of AIN services include intelligent call routing, privacy management, call-screening, and so on.
A wireless communications device261 (e.g., a wireless phone, a cellular phone, wireless messaging device, and so on) can be coupled toPSTN260 viabase station262.PSTN260 can also be coupled to atelephone263. Atrunking gateway251, aline gateway252, and an H.323gateway253 can bridge thePSTN260 to thedata network250. Communications betweendata network250 and gateways251-253 can be RTP communications, RTCP (real time control protocol) communications, and so forth.Trunking gateway251 can be coupled to the PSTN via a trunk such as an intermachine trunk (“IMT”).Line gateway252 can be coupled to the PSTN via an interface such as a primary rate interface (“PRI”) and/or a plain old telephone service (“POTS”) interface. H.323gateway253 can be coupled to the PSTN via a PRI.
Data network250 can be coupled to a subscriber premises via a digital subscriber line access multiplexer (“DSLAM”)255 and aresidential gateway491. Residential gateway (“RGW”)491 can be a MGCP/Megaco compliant gateway. In an embodiment, the subscriber premises can include a home networking system490 (e.g., a Home Phoneline Networking Alliance (“HPNA”) network, an Ethernet network, a wireless network, etc.) coupled toresidential gateway491.Data network250 can also be coupled to a subscriber premises via theInternet280 and anIP telephony system281. The IP telephony system can communicate using an H.323 standard or SIP.
Embodiments of the present invention relate to data communications via one or more networks. The data communications can be carried by communications channels of the one or more networks. A network can include wired communication links (e.g., coaxial cable, copper wires, optical fibers, and so on), wireless communication links (e.g., satellite communication links, terrestrial wireless communication links, wireless LANs, and so on), or a combination thereof.
Softswitch430 can include an Application Programming Interface (“API”)435, which can be a Java Telephony API (“JTAPI”), a SIP API, a Java AIN API (“JAIN”), a combination thereof, and so on.Softswitch430 can also include a one or more protocol stacks such as anSS7 protocol stack431, a MCGP/Megaco protocol stack432, an H.323protocol stack433, aSIP protocol stack434, and so on. Using the one or more protocol stacks, thesoftswitch430 can perform generalized call processing for each of the protocol stacks, and calls and services can be delivered to a POTS telephone using the SS7 protocol stack, to an H.323 device using the H.323 protocol stack, to a SIP phone using the SIP protocol stack, and so on.
In accordance with an embodiment of the present invention, a converged service creation environment is provided. Known softswitches typically include a call processing engine that is based largely on a PSTN domain call processing engine and that handles only narrow band services. For example, PSTN domain call processing includes sending signaling messages on one or more SSPs, circuit creation and determining whether there is a call reject, no response, busy indication, etc. In an embodiment of the present invention, signaling for converged services creation is provided. For example, to deliver a movie via a broadband network to a home networking environment, the signaling involved can include notifying two parties such as the source of the movie and the destination of the movie, determining the IP address of the movie source, determining the IP address of the movie destination, and allocating of resources to stream the movie from the source to the destination.
To provide a converged services creation environment,softswitch430 can be coupled to aservice session manager400 via a converged services creation and execution environment (“CSCE”)messaging bus440.CSCE messaging bus440 can be a Common Object Request Broker Architecture (“CORBA”) bus, Remote Method Invocation (“RMI”) bus, a JINI bus, a combination thereof, and so on. Theservice session manager400 can be part of a converged service creation and execution platform that includes one or moreopen APIs410 and anApplication Server420.Application Server420 can be a UNIX-based server, a Microsoft Windows® NT server, and so on. In an embodiment, theservice session manager400 is coupled via theCSCE bus440 to a server farm including one or more service servers. For example, the server farm can include one or more of a thirdparty information server441, a Wireless Application Protocol (“WAP”)server442, ahome networking server443, ane-mail server444, amessaging server445, adirectory server446, an Operation Administration Maintenance and Provisioning (“OAMP”)/billing server447, avoice recognition server448, a text-to-speech server449, a facsimile (“fax”)mail server450, avoice mail server451, aconference server452, amedia server453, a Quality-of-Service (“QoS”)/Policy server454, a combination thereof, and so forth. The service servers of the server farm can also be coupled to thedata network250 and communicate with thedata network250 using RTP communications, RTCP communications, and so forth.
In an embodiment, a server (e.g., an application server, a service server, an application service server, a network resource server) includes a processor and a memory. A processor can be, for example, an Intel Pentium® IV processor, manufactured by Intel Corp. of Santa Clara, Calif. As another example, the processor can be an Application Specific Integrated Circuit (ASIC). A server can be, for example, a UNIX server from Sun Microsystems, Inc. of Palo Alto, Calif. Memory may be a random access memory (RAM), a dynamic RAM (DRAM), a static RAM (SRAM), a volatile memory, a non-volatile memory, a flash RAM, a cache memory, a hard disk drive, a magnetic storage device, an optical storage device, a magneto-optical storage device, or a combination thereof. The memory of the server can store a plurality of instructions adapted to be executed by the processor.
Servers of the server farm can be application service provider (“ASP”) servers that at least in part can provide services to users (e.g., subscribers, customers, etc.). The servers of the server farm can also include applications that, for example, manage aspects of delivery of services to the users. Thus, a QoS/Policy server454 can include an application that manages providing a quality of service for delivery of an application such as a media application frommedia server453. As another example, OAMP/billing server447 can provide a billing application that manages billing related to delivery of an application such as e-mail frome-mail server444, messages frommessaging server445, voice mail fromvoice mail server451, conference services fromconference server452, and so on.
Acustomer profile database401 and aservice profile database402 can also be coupled to theCSCE bus440. Thecustomer profile database401 can store customer profile information such as customer name, customer service delivery information (e.g., mobile phone number, landline phone number, IP phone IP address, home networking IP address, and so forth), customer billing information, and services to which the customer has subscribed. Theservice profile database402 can store service profile information about the various services to which a customer can subscribe. For example, the customer profile database can include a data record corresponding to a customer, where the data record identifies the customer as a subscriber of a media service and includes the customer's IP address for delivery of media application. Theservice profile database402 can include information about the media service to which the customer has subscribed, such as information that identifies media applications ofmedia server453 to which the customer has subscribed.
Each ofcustomer profile database401 andservice profile database402 can be accessed byapplication server420 of theservice session manager400.Application server420 can store applications that interface with customers to manage delivery of application services provided at least in part by one or more of the service servers of the server farm. For example,application server420 can include a generic media delivery application that can be accessed by a customer to specify delivery of one or more media services. The generic media delivery application can include specific interfaces that interface with the media applications ofmedia server453.
Theservice session manager400 ofapplication server420 thereby provides for a modularized converged services creation and execution environment. A modularized environment can allow a service provider greater latitude in assembling a converged services creation and execution environment. Known providers of applications typically provide a unified application solution, i.e., an integrated application solution. For example, Cisco Systems of San Jose, Calif. can provide service providers with a unified messaging solution. Unified application solutions, however, are typically a proprietary solution aimed at a broad range of service providers and are not particularly designed for any particular service provider. Thus, while a service provider may ultimately select a unified application solution as the best amongst a plurality of unified application solutions, that unified application solution may not be optimized for the service provider's environment. Modularizing the delivery of application services in a converged services creation and execution environment can allow a service provider to implement discrete application solutions instead of implementing a service provider's unified application solution.
In an embodiment of the present invention,service session manager400 can also include anopen API410 that can provide one or more open application programming interfaces to one or more web-basedapplications462, which a customer can access via aportal466. Examples of web-basedapplications462 can include click to dial, click to show, click to conference, and so on. In another example, a web-based service provide subscriber services management application can allow a subscriber to select and configure services provided by the service provider. A customer can access the portal via a network (e.g., the Internet) and can subscribe to a personal call management service that can include fax messaging, e-mail messaging, call messaging, and so on. The fax messaging service can allow a customer to indicate that a fax received from a particular fax number should be converted to an e-mail attachment and e-mailed to a particular e-mail address. As another example, the subscriber might specify to the call messaging service that a call received during a certain time period and/or from a certain telephone number should be blocked, or forwarded to a voice mail messaging system, or forwarded to a mobile telephone number, and so on. A further example can include specifying that an e-mail message from a particular sender and/or regarding a certain topic should be forwarded to a mobile phone number after a text-to-speech application has converted the e-mail message to a spoken message. In a still further example, a voice mail message can be converted to a text message and included in an e-mail to be sent to a specified e-mail address. These examples are merely illustrative of the types of applications that can be provided via a portal coupled to a CSCE.
In another embodiment of the present invention,open API410 ofservice session manager400 can include one or more open application programming interfaces to one or moreE-center service applications466 of ane-Center465. For example, an e-Center465 can include a call center that handles customer service calls and data processing. In an embodiment, an e-Center465 can handle voice calls, voice mail messages, messaging, video calls, and other types of customer service communications.
Service session manager400, in an embodiment, can manage delivery of services to and from network devices (e.g., customer data devices) coupled to ahome networking system490. Examples of network devices coupled tohome networking system490 include IP appliances (i.e., IP devices) such as anIP telephone281, an IP-based refrigerator, an IP-based audio entertainment system, an IP-based microwave, an IP-based home theater, IP-based home security devices, IP-based video monitoring (e.g., babysitting monitoring, nanny monitoring, child monitoring, etc.), and so on. The home networking system can include aresidential gateway491 that can communicate withservice session manager400 for delivery of services. Operation of the IP appliances can be configured directly via the respective IP appliance or indirectly via theresidential gateway491. For example, operation of an IP-based alarm system can be configured to notify not only an alarm company (e.g., a monitoring center) and/or a law enforcement authority, but also an owner and/or resident of the alarmed property via an e-mail address, a voice mail message, a text message, and so on. The owner and/or resident of the alarmed property can configure operation of the IP-based alarm system with respect to delivery of status information (e.g., alarms, operational status, and so on).
According to an embodiment of the present invention, the network appliances that can communicate with theservice session manager400 for the delivery of services can include an embedded local agent that communicates withservice session manager400. The embedded local agent can be a user applet that is downloaded to an IP device. In another embodiment, the embedded local agent can be downloaded to a residential gateway that is coupled to an IP device. In a further embodiment, the embedded local agent can be downloaded to a PC.
Theservice session manager400, in an embodiment, can behave as a service broker among application servers, client devices (e.g., IP appliances), and converged services. Traditionally disjointed front-end systems (e.g., Web, call center, e-mail, fax, etc.) can be integrated by theservice session manager400. Theservice session manager400 can present a unified infrastructure for customer-centric service creation and execution. Service session management and control is provided by theservice session manager400, and theservice session manager400 can include a common API to allow converged service creation and execution. Theservice session manager400 can also provide capability controls for application servers and client devices (e.g., IP devices) and provide a portability layer to insulate the converged service creation environment form vendor-specific APIs. Thesoftswitch430 can act as a voice-oriented communication server and bridge PSTN and IP domains for call processing. In an embodiment, thesoftswitch430 can provide connectivity control for IP devices to access network resources and services.
The server farm (e.g., one or more servers441-454) coupled to theservice session manager400 via theCSCE messaging bus440 can include network resource servers. For example,messaging server445 can be a network resource server. As another example,media server453 can be a network resource server. The network resource servers can include self-contained service modules which register themselves with theservice session manager400. The network resource servers can make services available to the CSCE via COBRA, RMI or JINI technology and can be technologically transparent to the CSCE. In an embodiment of the present invention, the AIN service creation and execution platform (e.g., SCP272) is able to interact with the CSCE via TCP/IP or other suitable communications protocols.
FIG. 5 shows another illustration of an embodiment of the present invention.Service session manager400 can include a plurality of open APIs, including an openbroadband service API411, an opennarrowband service API412, and an openmessaging service API413. In the embodiment illustrated inFIG. 5,softswitches530 and531 can be network resource servers of a server farm. For example,softswitch530 can include a Java Telephony API (“JTAPI”), andsoftswitch531 can include a SIP API.Service session manager400 can communicate viaCSCE messaging bus440 with the network resource servers of the server farm (e.g., servers530-531,441,443-45,447,452-54).
Theservice session manager400 can also communicate withcustomer IP devices510. Acustomer IP device510 can be a PC, a residential gateway, an IP appliance, and so forth. Acustomer IP device510 can include auser applet511 and auser agent512. Auser applet511 can be downloaded from a web-based application server (e.g., after delivery of a service has been ordered, during a setup ofcustomer IP device510, etc.). Theuser applet511 can interact with an end user to collect the end user's service request, pass the service request to the service manager, and display the result of the service request processing to the end user.
User agent512 can be manage delivery of an application service to thecustomer IP device510. For example, when theIP device510 is an audio-video device, theuser agent512 can manage receipt of audio-video data and instructions. Examples ofother user agents512 include an instant messaging user agent, a unified messaging user agent, an always-on user agent, and so on.
FIG. 5 illustrates an embodiment of a converged service creation and execution environment for an end-to-end QoS channel for audio/video steaming between a media server and a customer IP device. A service request fromcustomer IP device510 can be sent viaportal466 tobroadband service API411, and a service response based in part on the service request can be generated and transmitted to thecustomer IP device510.User applet511 can be downloaded tocustomer IP device510 and can communicate withuser agent512 regarding the service request/response.User agent512 can receive a service instruction fromservice session manager400, andservice session manager400 can communicate another service instruction to themedia server453 andQoS policy server454 of the server farm viaCSCE messaging bus440. Themedia server440 andQoS policy server454 can return one or more service acknowledgements toservice session manager400, and service acknowledgements can be received from theuser agent512 ofcustomer IP device510. In an embodiment, an event notification can be sent to theuser applet511 frombroadband service API411 via portal566, and an event confirmation can be returned from theuser applet511 to thebroadband service API411. In another embodiment, the service request/response and the event notification/confirmation are communicated in part bye-Center465. As a result, an end-to-end quality of service (QoS) channel for audio/video streaming can be established betweencustomer IP device510 andmedia server453.
FIG. 6 illustrates an embodiment of a converged service creation and execution environment for a narrowband service between a telephone and a customer IP device. A service request fromcustomer IP device510 can be sent viaportal466 tonarrowband service API412, and a service response based in part on the service request can be generated and transmitted to thecustomer IP device510.User applet511 can be downloaded tocustomer IP device510 and can communicate withuser agent512 regarding the service request/response.User agent512 can receive a service instruction fromservice session manager400, andservice session manager400 can also communicate another service instruction to, for example, one ofsoftswitch530 andsoftswitch531 of the server farm viaCSCE messaging bus440. In an embodiment,softswitch530 can return a service acknowledgement toservice session manager400, and another service acknowledgement can be sent from theuser agent512 ofcustomer IP device510. In an embodiment, an event notification can be sent to theuser applet511 fromnarrowband service API412 viaportal466, and an event confirmation can be returned from theuser applet511 to thenarrowband service API412. In another embodiment, the service request/response and the event notification/confirmation are communicated in part bye-Center465. As a result, a narrowband service can be created and managed betweentelephone263 andcustomer IP device510.
FIG. 7 illustrates an embodiment of a converged service creation and execution environment for a messaging service from and to a customer IP device. A service request fromcustomer IP device510 can be sent viaportal466 tomessaging service API413, and a service response based in part on the service request can be generated and transmitted to thecustomer IP device510.User applet511 can be downloaded tocustomer IP device510 and can communicate withuser agent512 regarding the service request/response.User agent512 can receive a service instruction fromservice session manager400, andservice session manager400 can communicate the service instruction to, for example, one of a plurality of messaging service servers such asvoice mail server445,email server444, andfax mail server443 viaCSCE messaging bus440. In an embodiment, thevoice mail server445,email server444, orfax mail server443 can return a service acknowledgement toservice session manager400, and another service acknowledgement can be received from theuser agent512 ofcustomer IP device510. In an embodiment, an event notification can be sent to theuser applet511 frommessaging service API413 viaportal466, and an event confirmation can be returned from theuser applet511 to themessaging service API413. In another embodiment, the service request/response and the event notification/confirmation are communicated in part bye-Center465. As a result, a messaging services can be created and managed between a messaging service server of a server farm (e.g., one ofvoice mail server445,email server444, or fax mail server443) andcustomer IP device510.
In accordance with embodiments of the present invention, a CSCE environment can be a fully distributed architecture which bridges applications, network resource servers, and end-user devices. It can provide a common service control platform to allow an application to control network resource servers and end user integrated access devices (“IADs”) (e.g., a residential gateway, an ADSL modem, etc.) for converged services delivery through open APIs. Commercial off-the-shelf (“COTS”) server technology can be used to allow growing server farms quickly, evolving server technology smoothly, and providing converged services in a seamless manner. A plurality of extensible open APIs can be utilized where each extensible open API can target a different service characteristic (e.g., broadband, narrowband, messaging, and so forth). In an embodiment, an internal API for controlling resource servers and user agents can be embedded in an IAD or a residential gateway. The internal APIs may be Open Services Gateway Initiative (“OSGi”) compliant. The CSCE architecture can be compatible with NGN QoS on demand infrastructure and provide support for flexible billing on a per use basis.
FIG. 8 shows an embodiment of a CSCE service session model. Auser application800 can createmultiple service sessions810,811, and812. Examples of auser application800 include audio streaming, video streaming, voice chat, and online chat. Each of service sessions810-812 can contain multiple different sub-sessions, such asmedia sessions821 and822,communication session831 and832,messaging session841 and842, and/orother information sessions851 and852. For example, aservice session810 can have amedia session821 having a first session identifier, acommunication session831 having a second session identifier, amessaging session841 having a third session identifier, and anotherinformation session851 having a fourth session identifier. In an embodiment, each sub-session may havemultiple participants801,802, and803. The CSCE environment allows for billing of services at different levels of granularity such as customer characteristics, session characteristics, sub-session characteristics, and participant characteristics. In an embodiment, the CSCE environment is flexible, scalable, and straightforward to implement and expand. It can support multiple service sessions for each user, different types of working sessions for each service session, and multiple participants for each working session.
FIG. 9 is an illustration of CSCE messaging operations in accordance with an embodiment of the present invention. An incoming voice call associated with H.323phone915 is processed at least in part bysoftswitch905, andsoftswitch905 sends a call notification toservice manager900. Theservice manager900 generates and sends a send to voice mail request to the softswitch905 (e.g., when the called party's phone is busy, the called party has directed incoming calls to voice mail, etc.). Thesoftswitch905 then sends a send to voice mail response toservice manager900 and directs the incoming voice call to voicemail server920. After receiving at least a part of a voice mail message, thevoice mail server920 can send a voice mail notification message toservice manager900, and theservice manager900 can generate a send voice mail message to e-mail request to voice mail service920 (e.g., based at least in part on a user profile, user instructions, and so forth). Thevoice mail server920 can send a send voice mail message to e-mail response toservice manager900 and send the voice mail message as an attachment to an e-mail toe-mail server930. Thee-mail server930 can send an email notification message toservice manager900, and theservice manager900 may process the e-mail notification and determine that no action based on the e-mail notification is required (e.g., according to a user profile or user instructions).
An incoming fax call associated withPSTN phone910 can be received byfax server925.Fax server925 can send a fax notification toservice manager900, and based at least in part on a user profile in an embodiment,service manager900 can generate and send a send fax to e-mail request to faxserver925. Thefax server925 can attach the received fax to an e-mail message and send the e-mail message toe-mail server930. Thee-mail server930 can send an e-mail notification toservice manager900, and in an embodiment based at least in part on a user profile theservice manager900 can send a redirect e-mail request toe-mail server930. For example, a user profile can specify that e-mail having certain characteristics (e.g., subject, sender, date/time) be redirected to a different destination (e.g., e-mail address, fax address, etc.). Thee-mail server930 can redirect the e-mail message and send a redirect e-mail response toservice manager900.
In an embodiment, CSCE messaging can converge messaging resources and events (e.g., voice calls, voice mail, e-mail, personal financial messages, home security messages, and so on) into a messaging service. Different types of messaging resources can interact with each other under a pre-defined service logic. Service providers and/or subscribers can modify services (e.g., subscribe, unsubscribe) via a web interface by specifying messaging resources. For example, a service provider and/or subscriber can use a web-based service logic definition interface to define and/or modify a service logic on-line for each individual messaging resource. In an embodiment, a rule/policy-based service logic processing engine can be part of the CSCE messaging operations. In another embodiment, flexible billing on a per use basis can be provided.
FIG. 10 shows an illustration of CSCE conferencing operations in accordance with an embodiment of the present invention. In an embodiment, an incoming call associated with H.323phone915 is processed at least in part bysoftswitch905, andsoftswitch905 sends a call notification toservice manager900. Theservice manager900 sends an authorization request to softswitch905, and the authorization request is sent to the H.323phone915. The H.323 phone generates and sends an authorization response tosoftswitch905, and the authorization response is then sent toservice manager900.Service manager900 generates and sends a resource request toconference server935, which returns a resource response toservice manager900. Theservice manager900 then sends a conference request tosoftswitch905, which directs the incoming call associated with the H.323phone915 to theconference server935 to join the conference related tosession1 and sends a conference response toservice manager900.
An incoming call associated with aPSTN phone910 can be processed at least in part bysoftswitch905, which can send a call notification toservice manager900. Theservice manager900 can generate and send an authorization request to softswitch905. Depending on the capabilities ofPSTN phone910, thesoftswitch905 may send an authorization request to, and receive an authorization response from,PSTN phone910. Thesoftswitch905 can send an authorization response toservice manager900, andservice manager900 can generate and send a conference request tosoftswitch905. Thesoftswitch905 can then direct the incoming call associated withPSTN phone910 toconference server935 to join the conference related tosession1 and send a conference response to theservice manager900. When the calls associated with the H.323 phone and the PSTN phone leave the conference,softswitch905 can send leave conference notifications to theservice manager900.Session2 shown inFIG. 10 may be a session related to a different conference being managed according to the present invention.
In an embodiment, the CSCE conferencing operations can allow service subscribers to schedule and conduct a web-based conference call. It can allow different types of users from the PSTN domain and the IP domain (e.g., H.323 phone users, PSTN phone users, SIP phone users, and so forth) to participate in the same conference. In an embodiment, video capability and/or flexible billing mechanisms can be supported.
FIG. 11 shows an embodiment of a CSCE environment providing multimedia on demand services. In the embodiment illustrated inFIG. 11, the CSCE multimedia on demand environment includes softswitch support. Ahome networking environment1100 can include aresidential gateway1110 coupled to ahome PC1112, an IP-basedsound system1114, and an IP-basedtelevision system1116. Thehome PC1112 can communicate with a movie-on-demand web application1120, e.g., via a network such as the Internet, a WAN, a LAN, and so on. Thehome PC1112 can communicate login and service subscription information to the movie-on-demand web application1120, and based at least in part on that login and service subscription information the movie-on-demand web application1120 can communicate withservice session manager400 to create a service session. Alternatively a set-top device could be used to provide login and subscription information. Theservice session manager1100 can then direct establishment of a communication session viasoftswitch1130, where thesoftswitch1130 can include callcoordination logic1132 andSIP Proxy logic1134. Call setup information can be communicated between IP-basedtelevision system1116 andmovie server1150 viasoftswitch1130, where themovie server1150 includes aresource access interface1152. A media channel can then be established between themovie server1150 and the IP-basedtelevision system1116. In an embodiment, themovie server1150 is a SIP client. A music server1140 (having resource access interface1142) is another example of a SIP client that can deliver a multimedia service as part of a CSCE multimedia on demand environment.
FIG. 12 shows another embodiment of a CSCE environment providing multimedia on demand services. In the embodiment illustrated inFIG. 12, the CSCE multimedia on demand environment does not include softswitch support. Thehome PC1112 can communicate login and service subscription information to the movie-on-demand web application1120, and based at least in part on that login and service subscription information the movie-on-demand web application1120 can communicate withservice session manager1100 to create a service session. Theservice session manager1100 can then establish a media session by communicating media session information between IP-basedtelevision system1116 andmovie server1150. A media channel can thereby be established between themovie server1150 and the IP-basedtelevision system1116.
The CSCE multimedia on demand environment can allow service subscribers to select a multi-media content provider on-line and direct the multimedia (e.g., movie, music, and so forth) to a registered IP device such as IP-based television systems, IP-based sound systems, and so on. Embodiments of the present invention can deliver sophisticated applications in addition to movies on demand and music on demand. In an embodiment, the CSCE multimedia on demand environment can provide for flexible billing.
According to an embodiment of the present invention, a CSCE includes one or more APIs. In an embodiment, the APIs are open APIs. Open APIs of the CSCE can have multiple phases and be scalable and extensible. Embodiments of open APIs can be simple, lightweight, and designed for high performance. Moreover, the open APIs can support third party service development and follow industry API trends and standards. In an embodiment, the open APIs utilize distributed object computing technology and are vendor platform independent. Open APIs can be compatible with NGN QoS on demand infrastructure. In an embodiment, the APIs can be proprietary. In another embodiment, the APIs can be non-proprietary.
In an embodiment, a service session manager API can be structured as follows:
- void registerUser (String userName, String userPasswd)
- void deregisterUser (String userName, String userPasswd)
- void registerUserAgent (String agentName, int agentType, UserAgentInf agent, String contactNumber)
- void deregisterUserAgent (String agentName)
- void registerMediaServer (String serverName, String serverType, MediaServerInf server)
- void deregisterMediaServer (String serverName)
- void registerConfServer (String serverName, String serverType, ConfServerInf server)
- void deregisterConfServer (String serverName).
In an embodiment, a broadband service API can be structured as follows:
- int startServiceSession (String userName, String userpasswd, String ServiceID, int QoS)
- void endServiceSession (String userName, String userPasswd, int serviceSessionID)
- int startMediaTransmit (String[ ] receiverList, String fileName, int serviceSessionID)
- void endMediaTransmit (int serviceSessionID, int mediaSessionID, int userType)
- void addMediaTransmitUser (String userName, int serviceSessionID, int mediaSessionID)
- void removeMediaTransmitUser (String userName, int serviceSessionID, int mediaSessionID)
- int startAudioCall (String callerName, String calleeName, int serviceSessionID)
- void endAudioCall (int serviceSessionID, int mediaSessionID, int userType)
- int startCameraTransmit (String senderName, String receiverName, int serviceSessionID)
- void endCameraTransmit (int serviceSessionID, int mediaSessionID, int userType)
- int startAudioConf (String userName, String[ ] confPartyList, int serviceSessionID)
- void endAudioConf (int serviceSessionID, int confSessionID, int userType)
- void addAudioConfUser (String userName, int serviceSessionID, int mediaSessionID)
- void removeAudioConfUser (String userName, int serviceSessionID, int mediaSessionID)
A narrowband service API, in an embodiment, can provide narrowband voice oriented call processing capability and map the capability into a vendor specific softswitch API. For example, a narrowband service API can have the following structure:
- int startAudioCall (String callerName, String calleeName, int serviceSessionID)
- void endAudioCall (int serviceSessionID, int mediaSessionID, int userType)
- int startAudioConf (String userName, String[ ] confPartyList, int serviceSessionID)
- void endAudioConf (int serviceSessionID, int confSessionID, int userType)
- void addAudioConfUser (String userName, int serviceSessionID, int mediaSessionID)
- void removeAudioConfUser (String userName, int serviceSessionID, int mediaSessionID)
In an embodiment, a converged messaging service API can provide messaging oriented event interaction and processing capability and converge different types of messaging sources into one common messaging processing platform.
Another broadband service API, in an embodiment, can be structured as follows:
- int allocateMediaPort (int serviceSessionID, mediaSessionID)
- void releaseMediaPort (int serviceSessionID, int mediaSessionID)
- void receiveMedia (MediaSession origAddr, MediaSession destAddr, int sSessionID, int mSessionID)
- void stopReceiveMedia (int serviceSessionID, int mediaSessionID)
- void transmitCamera (MediaSession origAddr, MediaSession destAddr, int sSessionID, int mSessionID)
- void stopTransmitCamera (int serviceSessionID, int mediaSessionID)
Another narrowband service API, in an embodiment, can be structured as follows:
- int makeAudioCall (String destAddr, int serviceSessionID)
- void stopAudioCall (int serviceSessionID, int audioCallID)
- int callNotification (String callerID, int serviceSessionID)
In an embodiment, a media server API, can have the following structure:
- int [ ] allocateMediaPort (int numOfPorts, int serviceSessionID, mediaSessionID)
- void releaseMediaPort (int [ ] portList, int serviceSessionID, int mediaSessionID)
- void transmitMedia (String fileName. MediaSession[ ] origAddr, MediaSession[ ] destAddr, int serviceSessionID, int mediaSessionID)
- void stopTransmitMedia (int serviceSessionID, int mediaSessionID)
A conference server API, in an embodiment, can have the following structure:
- int allocateAudioConfPort (int confSessionID)
- void releaseAudioConfPort (int confSessionID)
- void startAudioConf (int confPort, int confSessionID)
- void stopAudioConf (int confSessionID)
- void addAudioConfUser (String userID, int confSessionID)
- void revomeAudioConfUser (String userID, int confSessionID)
FIG. 13 shows an illustration of an embodiment of the present invention. In the embodiment illustrated inFIG. 13, an example of a system in accordance with operations of an online real estate agency service within a CSCE is illustrated. An online realestate agency service1330 can be accessible via aweb portal1320. In another embodiment, an online real estate agency service can be accessed via a URL.
A first user can search the Internet looking for a new house by using amultimedia PC1381 that has IP telephony capabilities. The first user can find an interesting site, enter the site, and browse listings on one or more web pages. He can find an illustration of an interesting house on a web page and click a “Click2Show” button associated with the illustration of the house on the web page. A video window pops up on the video display of first user'sPC1381, and video clips of the house are shown in the video window. In an embodiment, the first user can talk to a live realtor about the house by clicking a “Click2Talk” button associated with the illustration of the house on the web page. A service request is sent to theapplication server410 which can work withsoftswitch430 to setup a call between the first user atPC1381 and a realtor atPC1382. After the call is setup and completed, the first user atPC1381 can talk to the realtor atPC1382. In an embodiment, the call can be a video call whenPCs1381 and1382 have video call equipment and software. After some discussion, the realtor can show some video clips of other houses to the first user by clicking a “Click2Show” button so that the realtor and the first user can both see the house that the realtor is showing via video clips. The first user may want to invite a second user (e.g., a spouse of the first user) to join the discussion with the realtor. The first user can click a “Click2Conference” button and provide the phone number of the second user (e.g., a phone number of aPSTN phone263, a phone number of an IP phone/PC1380) After the call is setup and completed into the conference, the second user can talk to the first user and the realtor. For example, they can have some discussion and decide when to meet over the weekend to view the actual house. The call to the second user may comprise a video call when PCs1380-1382 have video call equipment and software.
FIG. 14 shows an illustration of a portion of operations in accordance with the embodiment illustrated inFIG. 13. The first user is searching the web and would like to enter the online real estate agency service web site, for example, via application server420 (communication1401). In an embodiment, the first user can be asked to access the service as a customer or as an realtor. When entering as a customer, the first user can be required to provide information such as his name, phone number, and email address. When entering as an realtor, the first user can be required to give his name and password. Information collected from the first user including the IP address of the first user'sPC1381 can be sent to theservice session manager1100 running in theapplication server420. Once the first user is registered (e.g., as a customer, as an realtor), a user agent is downloaded into the first user'sPC1381 for handling service requests. Then the first user is then able to browse the real estate listings (e.g., displayed on web pages). The first user finds the house he is interested in and clicks “Click2Show” button displayed under the illustration of the house (e.g., on a web page). A service request is sent to the service session manager1100 (communication1402). Theservice session manager1100 sends a request message to the user agent running in the first user's PC1381 (communication1403) and asks the user agent to start the JMF (Java Media Framework) client for receiving the video. After the request is received, the user agent starts the JMF client (communication1404) and responds to the service manager for request completion. After the response from the user agent is received, the service session manager sends a request to theQoS server454 to reserve the bandwidth between two end-points for the video streaming (communication1405). In an embodiment, QoS on demand is not implemented. In this case, theservice session manager1100 sends the video streaming request to themedia server453 where the video clips are stored (communication1406). Themedia server453 starts to stream video into the first user's PC1481 based on the IP address and clip ID provided by the service session manager (communication1407).
FIG. 15 shows an illustration of an additional portion of operations in accordance with the embodiment illustrated inFIG. 13. After review of one or more video clips, the first user decides to talk to a live realtor and clicks a “Click2Talk” button associated with an illustration of a house on a web page. In an embodiment, the first user can select a realtor he would like to talk to, and a service request is sent to the service session manager400 (communication1501). After the service request is received, the service session manager sends a request to the user agents (communications1502) running in the first user'sPC1381 and the realtor'sPC1382 to ask the respective user agents to start the NetMeeting (“NM”) and JMF clients running in therespective PCs1381 and1382 (communications1503).
In an embodiment, the NetMeeing/JMF clients can be started when the realtor decides to “accept” the incoming call. After the request is received, the user agent of the realtor'sPC1382 can pop up a call notification window that can display the caller's number and name. The notification window can include several options (such as Accept, Reject, VoiceMail, and Ignore) that the realtor can select. If the realtor selects the Accept option, the user agent can notify theservice session manager400 to complete the call. In an embodiment including video telephony, the video show/JMF logic sends a local face image and waits to receive the face image of the other party to form a multimedia call. In another embodiment in which a softswitch doesn't support a multi-media call, the video portion of the call can go through a different channel (e.g., a JMF channel). When the softswitch430 can make the third party call, the Accept message can be sent back to theservice session manager400, which can notify thesoftswitch430 to setup the two parties call.
After receiving “accept” confirmation from the user agent (e.g., from the user agent of the realtor's PC1382), the service manager sends the third party call request to softswitch430 (communication1504). In an embodiment, thesoftswitch430 makes calls to the two parties (communications1505) and routes the calls to theconference server1310 where the two parties are bridged together. In an embodiment, the call can be routed to an IP-based conference server. A bearer channel is established between two NetMeeting end-points (communications1506). The user agent starts the video streaming (of face images) and send the stream to each other. Both parties receive the face image of the other party of the call. Now a multi-media call session is established between the first user atPC1381 and the realtor at PC1382 (communications1507).
After some discussion, the realtor would like to show some other houses to the first user and clicks a “Click2Show” button. A service request is thereby sent to the service session manager400 (communication1508). Theservice session manager400 sends another request to the user agent in first user'sPC1381 and the realtor'sPC1382 to start the JMF clients (communications1509). The respective user agents start the respective JMF clients (communications1510). The service session manager sends a request to themedia server453 to send video clip streams to the two parties so that the two parties can view the same video clips (communication1511). Themedia server453 sends the video stream to the first user's PC1381 (communication1512) and to the realtor's PC1382 (communication1513).
FIG. 16 shows another illustration of the operations illustrated inFIG. 15. After review of one or more video clips, the first user decides to talk to a live realtor and clicks a “Click2Talk” button associated with an illustration of a house on a web page. In an embodiment, the first user can select a realtor he would like to talk to, and a service request is sent to the service session manager400 (communication1601). After the service request is received, theservice session manager400 sends a request to the user agent running in the first user'sPC1381 and the realtor's PC1382 (communications1602) to ask the respective user agents to start the NetMeeting (“NM”) and JMF clients running in therespective PCs1381 and1382 (communications1603). In the embodiment illustrated inFIG. 16, thesoftswitch430 does not support a third-party initiated call, and the service session manager asks the NetMeeting clients of thePCs1381 and1382 to initiate calls into thesoftswitch430
After the request is received, the user agent of the realtor'sPC1382 can pop up a call notification window that can display the caller's number and name. The notification window can include several options (such as Accept, Reject, VoiceMail, and Ignore) that the realtor can select. If the realtor selects the Accept option, the user agent can launch the NetMeeting and JMF clients, and the NetMeeting clients can call the softswitch. In another embodiment in which a softswitch doesn't support a multi-media call, the video portion of the call can go through a different channel (e.g., a JMF channel). When the softswitch430 can make the third party call, the Accept message can be sent back to theservice session manager400, which can notify thesoftswitch430 to setup the two parties call.
In an embodiment, H.323 call signaling is sent to the softswitch430 (communications1604), and the softswitch430 routes the call toconference server1310, which can be implemented in a service node in an embodiment. In an embodiment, the call can be routed to an IP-based conference server. A bearer channel is established between two NetMeeting end-points (communications1605). Theservice session manager400 can instruct the user agents to start video streaming (of face images) and send the streams to each other (communications1606). Both parties receive the face image of the other party of the call (communications1607). Now a multi-media call session is established between the first user atPC1381 and the realtor atPC1382.
After some discussion, the realtor would like to show some other houses to the first user and clicks a “Click2Show” button. A service request is thereby sent to the service session manager400 (communication1608). Theservice session manager400 sends another request to the user agent in first user'sPC1381 and the realtor'sPC1382 to start the JMF clients (communications1609). The respective user agents start the respective JMF clients (communications1610). Theservice session manager400 sends a request to themedia server453 to send video clip streams to the two parties so that the two parties can view the same video clips (communication1611). Themedia server453 sends the video stream to the first user's PC1381 (communication1612) and to the realtor's PC1382 (communication1613).
FIG. 17 shows an illustration of an additional portion of operations in accordance with the embodiment illustrated inFIG. 13. After some discussion and video viewing with the realtor, the first user can decide to get a second user (e.g., the first user's spouse) on the phone. The first user can click a displayed “Click2Conference” button and provide the phone number of the second user. A service request is thereby sent to the service session manager400 (communication1714). Theservice session manager400 can send a request to theconference server1310 to invite another party to join the conference (communication1715). In an embodiment, a CSCE can use a service node as its conference server. In another embodiment, the CSCE can use an IP-based conference server. Theconference server1310 can make a call to the second user based on the information provided by the service session manager400 (communication1716). After the call is answered by the second user, the second user can be brought into the conference (communication1717).
FIG. 18 shows another embodiment of communications operations of a CSCE architecture. In the embodiment illustrated inFIG. 18, communications operations of a Click2Show service session (single receiver) and Click2Show service session (multi-receiver) are shown in a CSCE architecture including portal1320,user applet1801,user agent1802,service session manager400,realtor agent1812,realtor applet1811,media server453, andconference server1310.FIG. 19 shows another embodiment of communications operations of a CSCE architecture. In the embodiment illustrated inFIG. 19, communications operations of a Click2Talk/Conf service session are shown in a CSCE architecture including portal1320,user applet1801,user agent1802,service session manager400,realtor agent1812,realtor applet1811,media server453, andconference server1310.
In accordance with an embodiment of the present invention, instructions adapted to be executed by a processor to perform a method are stored on a computer-readable medium. The computer-readable medium can be a device that stores digital information. For example, a computer-readable medium includes a compact disc read-only memory (CD-ROM) as is known in the art for storing software. The computer-readable medium is accessed by a processor suitable for executing instructions adapted to be executed. The terms “instructions adapted to be executed” and “instructions to be executed” are meant to encompass any instructions that are ready to be executed in their present form (e.g., machine code) by a processor, or require further manipulation (e.g., compilation, decryption, or provided with an access code, etc.) to be ready to be executed by a processor.
Systems and methods in accordance with the embodiments of the present invention disclosed herein can advantageously provide a converged service creation and execution environment (“CSCE”) for an integrated data network. The integrated data network can include an ATM network, an IP network, an MPLS network or a combination thereof. The integrated data network can include and/or be coupled to a PSTN network that includes an AIN/SS7 signaling network. A vendor independent service creation and execution framework can be provided by a CSCE architecture. In an embodiment, it can be easy to add new network functional components. A CSCE architecture can provide for upgrading technology without a major impact to service creation and execution. The CSCE infrastructure can be interfaced with an AIN service creation infrastructure, and a service session control mechanism can facilitate converged service creation and execution. The CSCE architecture can be modular, scalable and extensible.
Embodiments of systems for an integrated data network converged service creation and execution environment have been described. In the foregoing description, for purposes of explanation, numerous specific details are set forth to provide a thorough understanding of the present invention. It will be appreciated, however, by one skilled in the art that the present invention may be practiced without these specific details. In other instances, structures and devices are shown in block diagram form. Furthermore, one skilled in the art can readily appreciate that the specific sequences in which methods are presented and performed are illustrative and it is contemplated that the sequences can be varied and still remain within the spirit and scope of the present invention.
In the foregoing detailed description, systems and methods in accordance with embodiments of the present invention have been described with reference to specific exemplary embodiments. Accordingly, the present specification and figures are to be regarded as illustrative rather than restrictive.