This invention relates in general to communications and, more particularly, to a system and a method for executing a multi-modal transfer in a session initiation protocol (SIP) environment.
The field of communications has become increasingly important in today's society. In particular, the ability to quickly and accurately communicate data presents a significant obstacle for component manufacturers, system designers, and network operators. This obstacle is made even more difficult due to the plethora of diverse technologies that exist in the current marketplace.
As new communication platforms (such as session initiation protocol (SIP), for example) become available to the consumer, new protocols need to be developed in order to appropriately interface with these emerging technologies. For example, certain devices may be ill-equipped to interface with network components such that collected information cannot be suitable relayed from the Internet to a given endpoint. In other scenarios, data transmission and data propagation present a complicated and an arduous task for the end user to complete. Without effective interfacing capabilities, these new platforms are stymied in their operations and inhibited in their performance, as they are unable to take full advantage of the benefits of complimentary network components.
From the foregoing, it may be appreciated by those skilled in the art that a need has arisen for an improved data communication process that accommodates multi-modal transmissions. In accordance with an embodiment of the present invention, a system and a method for transmitting and receiving multi-modal data are provided that substantially eliminate or greatly reduce disadvantages and problems associated with conventional data exchange strategies.
According to an embodiment of the present invention, a method for communicating data in a session initiation protocol (SIP) environment is provided that includes initiating a SIP communication session that involves a first endpoint and a second endpoint. The method also includes identifying a portion of data that resides in a network and communicating the data to the second endpoint. In more particular embodiments, the method may further include identifying a uniform resource locator that includes the data and directing the second endpoint to the uniform resource locator.
Certain embodiments of the present invention may provide a number of technical advantages. For example, according to one embodiment of the present invention, an architecture and a process are provided that can be used to deliver accurate data, which originated from a network environment, to a targeted end user (or endpoint). Moreover, such a data propagation protocol may be performed with minimal individual effort from the either the sender or the receiver of the information. This would allow high-quality data to be quickly obtained and clearly displayed in the context of any SIP session.
Moreover, such an architecture can readily be extended to conference call scenarios involving multiple participants. The present invention provides exceptional flexibility in its applications, as any suitable data or information may be properly exchanged between two or more endpoints. Hence, the multi-modal capabilities of the present invention may readily accommodate video, voice, HTML, audio, streaming, real-time (or any combination of these) or any other suitable data type. This, in turn, allows the present invention to be used in a host of environments, such as: in healthcare offices for record keeping purposes, in billing scenarios where a conversation exists between a consumer and a service provider, in offering directions from one location to another, and in virtually any other environment where it may be beneficial to provide some information that would supplement the SIP session that is occurring.
Certain embodiments of the present invention may enjoy some, all, or none of these advantages. Other technical advantages may be readily apparent to one skilled in the art from the following figures, description, and claims.
To provide a more complete understanding of the present invention and features and advantages thereof, reference is made to the following description, taken in conjunction with the accompanying figures, wherein like reference numerals represent like parts, in which:
Endpoint 12a represents a residential location, which consists of a computer 40 and several telephones 42. Telephones 42 may be an Internet protocol (IP) telephone or a standard telephone that is operable to interface with computer 40 such that one or more capabilities of SIP are enabled through telephone 42. Accordingly, two types of telephones are illustrated in
In accordance with the teachings of the present invention, commutation system 10 offers a new voice technology service that allows for the transfer of a voice call in order to accommodate a different communication mode. This allows the transferor (e.g., an attendant, an agent, a co-worker, etc.) to transfer a caller to a web site (or to network data) during the course of the call. For example, the transferor may have input data to provide specific information to the caller (e.g., directions to a location of interest). The voice technology service of the present invention takes advantage of a traditional call transfer service and, further, extends this service to take advantage of other modes of communication to which the caller has access.
In some call transfer paradigms, the call transfer occurs between voice call legs. Leveraging SIP technology, it is possible to transfer a call from one mode of communication (such as voice) to another mode of communication (e.g., web server, instant messaging service, etc.) such that the caller is seamlessly integrated into this new communication mode with the device to which it is transferred. The call transfer is extended beyond voice-to-voice scenarios, allowing it to accommodate voice-to-web supported services. This valuable tool may be utilized and executed with minimal effort from either endpoint involved in the session. In addition, the data (reflecting a different mode or format) may be pushed to a given endpoint while the existing voice session continues. Hence, the original SIP session is not inhibited or encumbered by this multi-mode feature. Virtually, any network data may be retrieved and pushed to a given endpoint.
Endpoints 12a-d are SIP-compatible elements that include hardware and/or software that is operable to receive and to transmit data (directly or indirectly). Note that the term “endpoint” encompasses a myriad of potential devices and infrastructure that may benefit from the operations of communication system 10. Endpoints 12a-d may be a personal digital assistant (PDA), a cellular telephone, a standard telephone (which may be coupled to a personal computer) an IP telephone, a personal computer, a laptop computer, a mobile telephone, or any other suitable device or element (or any appropriate combination of these elements (any of which may be inclusive of a browser)) that is operable to receive data or information. Each endpoint may also include suitable network equipment and appropriate infrastructure (e.g., switches, routers, LANs, gateways, etc.) to facilitate a SIP session.
It should also be noted that the internal structure of endpoints 12a-d are malleable and can be readily changed, modified, rearranged, or reconfigured in order to achieve their intended operations. As identified supra, software and/or hardware may reside in endpoints 12a-d in order to achieve the teachings of the data exchange feature of the present invention. However, due to their flexibility, these elements may alternatively be equipped with (or include) any suitable component, device, application specific integrated circuit (ASIC), processor, microprocessor, algorithm, read-only memory (ROM) element, random access memory (RAM) element, erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), field-programmable gate array (FPGA), or any other suitable element or object that is operable to facilitate the operations thereof. Considerable flexibility is provided by the structure of endpoints 12a-d in the context of communication system 10 and, accordingly, it should be construed as such.
For purposes of teaching and discussion, it is useful to provide some overview as to the way in which the following invention operates in a SIP environment. The following foundational information may be viewed as a basis from which the present invention may be properly explained. Such information is offered earnestly for purposes of explanation only and, accordingly, should not be construed in any way to limit the broad scope of the present invention and its potential applications.
There are many applications of the Internet that require the creation and management of a session, where a session is considered an exchange of data between an association of participants. The implementation of these applications is complicated by the practices of participants: users may move between endpoints, they may be addressable by multiple names, and they may communicate in several different media: in many cases simultaneously. Certain protocols have been developed to carry various forms of real-time multimedia session data such as voice, video, or text messages.
The SIP features of communication system 10 work in concert with these protocols by enabling endpoints (generally referred to as “user agents”) to discover one another and to agree on a characterization of a session they would like to share. For locating prospective session participants, and for other functions, SIP enables the creation of an infrastructure of network hosts (generally referred to as proxy servers) to which user agents can send registrations, invitations to sessions, and other requests. SIP is an agile, general-purpose tool for creating, modifying, and terminating sessions. SIP works independently of underlying transport protocols and without dependency on the type of session that is being established.
SIP is an application-layer control protocol that can establish, modify, and terminate multimedia sessions (conferences) such as Internet telephony calls. SIP can also invite participants to already existing sessions, such as multicast conferences. Media can be added to (and removed from) an existing session. SIP transparently supports name mapping and redirection services, which supports personal mobility. End users can maintain a single externally visible identifier regardless of their network location.
SIP supports five facets of establishing and terminating multimedia communications: 1) user location: determination of the end system to be used for communication; 2) user availability: determination of the willingness of the called party to engage in communications; 3) user capabilities: determination of the media and media parameters to be used; 4) session setup: “ringing” establishment of session parameters at both called and calling party locations; and 5) session management: including transfer and termination of sessions, modifying session parameters, and invoking services.
A standard SIP platform does not provide services. Rather, SIP provides primitives that can be used to implement different services. For example, SIP can locate a user and deliver an opaque object to his current location. If this primitive is used to deliver a session description written in SDP, for instance, the endpoints can agree on the parameters of a session. If the same primitive is used to deliver a photo of the caller as well as the session description, a “caller ID” service can be easily implemented.
SIP currently does not offer conference control services such as floor control or voting and does not prescribe how a conference is to be managed. SIP can be used to initiate a session that uses some other conference control protocol. Since SIP messages and the sessions they establish can pass through entirely different networks, SIP cannot, and does not, provide any kind of network resource reservation capabilities. Quality of service (QoS) parameters may also be accommodated by SIP (e.g., see RFC 3311).
The nature of the services provided make security particularly important. To that end, SIP provides a suite of security services, which include denial-of-service prevention, authentication (both user to user and proxy to user), integrity protection, and encryption and privacy services.
In this example, Mike initiates a call to a lobby ambassador 90 at step one. Lobby ambassador 90 is SIP-enabled in that it is capable of recognizing messages endemic to the SIP platform. At this point in the process, display 86 may depict standard call information such as: who Mike is calling, the number dialed, a photograph of any of the participants, one or more time parameters, etc. Lobby ambassador 90 may be using a similar IP telephone or be equipped with a simple computer, as is illustrated in
At step 2, lobby ambassador 90 initiates a browser (which may be included in any endpoint) and retrieves an appropriate uniform resource locator (URL) (such as Map Quest, for example) that offers the requested directions. The refer method in this example could have Mike's endpoint set up with a unique SIP session that links to Map Quest. This could include a unique identifier or a web-link to a page lobby ambassador 90 has previously established after progressing through the Map Quest site. Lobby ambassador 90 may simply transfer or link Mike to that website. This could be executed using a refer method, which is available in SIP. The refer method could also indicate to Mike to send an invite message, or the refer method could send an invite with the SIP session, or the refer method could directly position the URL using Mike's browser such that a link to Map Quest is provided. In effect, all of these approaches are integrating voice and web technology in order to offer enhanced services to Mike.
Note that the retrieval of directions is only one of a number of possible application for the execution of multi-modal communications in the present invention. Other data applications could involve medical applications, whereby records can readily be displayed to an end user quickly and accurately. Other applications could involve quarterly financial conference calls, whereby a participant in the conference call can easily bring up specific portions of the 10K, 10Q, etc. Hence, a participant could highlight relevant portions of the quarterly or annual report for discussion purposes. This would achieve a multi-modal conference call, whereby any number of participants may readily be accommodated by the call.
Still other applications could involve disputes concerning normal billing cycles. For example, in the context of a billing question between a customer and a service provider, the representative of the service provider could bring up a previous bill or the contract terms on which the customer and the service provider agreed. Yet other applications could include work environment scenarios where colleagues can effectively interact with each other. Other applications could include non-business calls where two people simply desire to share some type of multi-media data. Note that any such arrangements and configurations, and applications are clearly within the broad scope of the present invention. Communication system 10 is replete with such alternatives and permutations and, accordingly, should be construed as such.
It should be noted that the internal structure of the system of
It is also important to note that the stages and steps in
Although the present invention has been described in detail with reference to particular embodiments, it should be understood that various other changes, substitutions, and alterations may be made hereto without departing from the spirit and scope of the present invention. For example, the illustrated network architecture of
It should also be noted that in contrast to other technologies, SIP establishes a session, not a voice path. When the session is negotiated, the type of session to be facilitated is identified. For example, the session type could be a web session, an IP video session, a voice session, etc. Hence, provided that the two endpoints understand the session to be executed, the session may be transferred to any suitable format or media. Hence, virtually any two endpoints may be used to effectuate these operations and others as detailed herein. What is of critical importance is the interoperability of the two endpoints. If both endpoints understand the mode or the media (e.g. video, XML, HTML, audio, streaming) then any suitable transfer can be effectuated.
Numerous other changes, substitutions, variations, alterations, and modifications may be ascertained to one skilled in the art and it is intended that the present invention encompass all such changes, substitutions, variations, alterations, and modifications as falling within the spirit and scope of the appended claims.