Communication devices have traditionally been used to facilitate oral communication (e.g., talking) over a telecommunications network. However, non-oral communication remains important in today's society. For example, some people simply prefer texting over talking, while others, such as the hearing and speech impaired, may be physically unable to communicate orally.
Teletypewriter (TTY) technology was developed in the 1960's to allow the hearing and speech impaired to communicate using text over standard telephone lines. TTY was later implemented in wireless networks for use with mobile handsets, but as wireless networks evolved from a circuit-switched (CS) architecture to a packet-switched (PS) architecture, TTY technology became unsuitable for use in wireless networks, which are primarily based on Internet Protocol (IP) communications. This led to a decision by the Federal Communications Commission (FCC) to mandate that carriers replace legacy TTY technology with real time text (RTT) technology.
RTT allows for a near instantaneous transmission of text content between IP-based terminals. As a user of a source device types a RTT message, the text content of the RTT message is displayed on a destination device in real-time, without requiring the user of the source device to select a “send” button. This near instantaneous transmission of text content resembles a more natural conversation that is preferred by the hearing and speech impaired over traditional text messaging (e.g., Short Message Service (SMS) text). RTT also allows both parties of a communication session to type concurrently (e.g., allowing one user to interrupt the other user), and RTT can be implemented as an add-on to voice, which enables simultaneous voice and RTT media streams. However, technical limitations of RTT technology only allow a user to create and send RTT messages after a communication session is successfully established. Furthermore, because of RTT's newness, the networking implementations of RTT technology are rather limited today.
The detailed description is set forth with reference to the accompanying figures, in which the left-most digit of a reference number identifies the figure in which the reference number first appears. The use of the same reference numbers in different figures indicates similar or identical items or features.
Described herein are, among other things, techniques and systems for exchanging text content in a real time text (RTT) message during setup of, and prior to establishing, a primary communication session over a telecommunications network. This disclosure describes various scenarios in which terminals can exchange text content in “early” RTT messages. In an example scenario, an originating UE can send an early RTT message to a terminating UE. In another example scenario, an originating UE can send an early RTT message to a PSAP, such as when a calling party dials an emergency short code (e.g., 911 in the United States). On the receiving end, a terminal (e.g., a terminating UE, a PSAP terminal, etc.) may receive an early RTT message during session setup, and the terminal may be configured to reply to the originating device with an early RTT message prior to establishing the primary communication session.
A process to be implemented by an originating UE can include receiving user input requesting to establish a primary communication session, sending, over a telecommunications network, a session request to establish the primary communication session. Prior to establishing the primary communication session, however, the originating UE can send, during an early media communication session, text content in a RTT message. After sending the text content in the RTT message, the originating UE may establish the primary communication session.
A process to be implemented by a terminal that receives an incoming request (e.g., a terminating UE, a PSAP terminal, etc.) can include receiving, over a telecommunications network, a session request to establish a primary communication session, and initiating a session setup for the primary communication session. Prior to completing the session setup for establishing the primary communication session, however, the terminal may receive, during an early media communication session, a RTT message, and may display, on a display of the terminal, text content of the RTT message. Thereafter, the terminal may receive user input indicating that a user of the terminal accepts the request to establish the primary communication session, and the terminal may establish the primary communication session after having displayed the text content of the RTT message, and in response to receiving the user input accepting the request.
By enabling early exchange of text content in RTT messages prior to establishing a primary communication session, one or more devices can be configured to conserve resources with respect to communications bandwidth resources, processing resources, memory resources, power resources, and/or other resources. These technical effects may be downstream effects from the utilization of early transmission of text content in RTT messages. For instance, text content of RTT messages can provide contextual information to a called party. When such contextual information is received prior to establishing a primary communication session (e.g., prior to the called party accepting the incoming request), the called party is likely to be better informed, which may, for instance, reduce and/or eliminate repeated attempts by the calling party to contact the called party, thereby conserving communications bandwidth resources and other resources (both on the terminals and in the telecommunications network) that may be required to handle repeated attempts at establishing a communication session. Additional technical effects can also be realized from an implementation of the technologies disclosed herein.
Also described herein are techniques and systems for automatically sending, without user interaction, text content by an originating UE in a first RTT message of many possible RTT messages that can be sent during the communication session. This automatically-generated RTT message may be used to inform a PSAP representative of the capabilities of the originating UE (e.g., that the originating UE supports RTT calling) as a first message of the communication session. This technique is beneficial in instances where the terminal on the receiving end (e.g., a PSAP terminal) does not support early media, thereby precluding the receiving terminal from displaying RTT messages prior to establishing the communication session.
Also described herein are systems and devices comprising one or more processors and one or more memories, as well as non-transitory computer-readable media storing computer-executable instructions that, when executed, by one or more processors perform various acts and/or processes disclosed herein.
In accordance with various embodiments described herein, the to “user equipment (UE),” “communication device,” “device,” “wireless communication device,” “wireless device,” “mobile device,” “terminal,” “wireless terminal,” “mobile terminal,” and “client device,” may be used interchangeably herein to describe any UE (e.g., the originating UE 100, the terminating UE 102, etc.) that is capable of transmitting/receiving data, wirelessly and/or over wired networks, using any suitable communications/data technology, protocol, or standard, such as Global System for Mobile Communications (GSM), Time Division Multiple Access (TDMA), Universal Mobile Telecommunications System (UMTS), Evolution-Data Optimized (EVDO), Long Term Evolution (LTE), Advanced LTE (LTE+), Generic Access Network (GAN), Unlicensed Mobile Access (UMA), Code Division Multiple Access (CDMA), Orthogonal Frequency Division Multiple Access (OFDM), General Packet Radio Service (GPRS), Enhanced Data GSM Environment (EDGE), Advanced Mobile Phone System (AMPS), High Speed Packet Access (HSPA), evolved HSPA (HSPA+), Voice over IP (VoIP), Voice over LTE (VoLTE), IEEE 802.1x protocols, WiMAX, Wi-Fi, Data Over Cable Service Interface Specification (DOCSIS), digital subscriber line (DSL), and/or any future IP-based network technology or evolution of an existing IP-based network technology.
Furthermore, the originating UE 100 and the terminating UE 102 may individually be implemented as any suitable type of communication device configured to communicate over a telecommunications network, including, without limitation, a mobile phone (e.g., a smart phone), a tablet computer, a laptop computer, a portable digital assistant (PDA), a wearable computer (e.g., electronic/smart glasses, a smart watch, fitness trackers, etc.), an in-vehicle (e.g., in-car) computer, and/or any similar communication device. In addition, the originating UE 100 and the terminating UE 102 may be mobile devices, or they may be non-mobile (or situated) communication devices including, without limitation, a television (smart television), a set-top-box (STB), a game console, a desktop computer, and the like.
In general, a user can utilize a UE 100/102 to communicate with other users and associated terminals via the telecommunications network 104. A user of the originating UE 100 is often referred to herein as the “calling party,” while a user of the terminating UE 102 is often referred to herein as the “called party.” The telecommunications network 104 may represent a network comprising a plurality of network nodes disposed between the originating UE 100 and the terminating UE 102. It is to be appreciated that the telecommunications network 104 can include any suitable types, and number, of network nodes to enable the transmission of IP multimedia over the telecommunications network 104. For example, the telecommunications network 104 may include, without limitation, various radio access networks (RANs) (e.g., eNodeB, cell towers, wireless access points, etc.), an evolved packet core (EPC), as well as a multimedia telephony (MMTel) and IP Multimedia Subsystem (IMS) architecture (sometimes referred to as the “IMS core network,” the “IMS network,” the “Core Network (CN),” or the “IM CN Subsystem”). The IMS is an architectural framework defined by the 3rd Generation Partnership Project (3GPP) for delivering IP multimedia to UEs, such as the originating UE 100 and the terminating UE 102.
Various portions of the telecommunications network 104 can be maintained and/or operated by one or more service providers, such as one or more wireless carriers (sometimes referred to as “operators”), that provide IMS-based services to users (sometimes called “subscribers”) who are associated with UEs for accessing the IMS-based services to which they have subscribed. For example, a service provider may offer multimedia telephony services that allow a subscribed user to call or message other users via the telecommunications network 104 using his/her UE 100/102. A user can also utilize an associated UE 100/102 to receive, provide, or otherwise interact with various different IMS-based services by accessing the IMS core of the telecommunications network 104. In this manner, a carrier may offer any type of IMS-based service, such as, telephony services, emergency services (e.g., E911), gaming services, instant messaging services, presence services, video conferencing services, social networking and sharing services, location-based services, push-to-talk services, WiFi calling services, RTT calling services, RTT video calling services, and so on. In order to access one or more of these services, an originating UE 100 is configured to request establishment of a communication session. Although many of the examples described herein relate to the originating UE 100 accessing RTT calling services in order to setup a communication session with a voice media stream and a RTT media stream, it is to be appreciated that the originating UE 100 may request establishment of any type of communication session. In addition, RTT can be used as an add-on service for any suitable type of communication session, such as RTT video calling.
Before requesting establishment of a communication session, both the originating UE 100 and the terminating UE 102 can request registration for one or more IMS-based services while the UE's 100/102 are in idle mode. Registration can involve identifying a proxy call session control function (P-CSCF) node of the telecommunications network 104, sending a registration request via a RAN (e.g., an LTE RAN) to the identified P-CSCF node, and receiving a response indicating a result of the registration request. In instances where a legacy network (e.g., a CS network) is available to the UE 100/102, the registration procedure may be in the form of a “combined attach” procedure where the UE 100/102 performs registration for both a legacy (e.g., CS (non-LTE) network) and PS e.g., (LTE) network. By being “combined attached,” the UE 100/102 can implement fallback procedures to reattempt establishment of a communication session via a legacy network in the event that an LTE-based communication session (e.g., a VoLTE-based RTT call) fails on the LTE network. In some embodiments, when the setup of the voice component of an RTT call is successful, but the setup of the text component of the RTT call is unsuccessful, the communication session may be established as a normal voice call. In some embodiments, TTY over a CS network can be used as a fallback in the event that the setup of the text component of the RTT call is unsuccessful over a PS (e.g., LTE) network.
Session Initiation Protocol (SIP) may be used for transmitting SIP messages in the signaling portion of the communication session, as opposed to the data or media stream portion of the communication session. Such SIP messages may include, without limitation, registration messages, communication session messages, and the like, which are sent to the IMS core of the telecommunications network 104, and received therefrom. SIP is a signaling protocol that can be used to establish, modify, and terminate communication sessions over packet networks, and to authenticate access to IMS-based services. As used herein, a “SIP request” is a message that is sent from a UE 100/102 to the IMS core of the telecommunications network 104 using SIP protocol, and a “SIP response” is a message that is sent from the IMS core of the telecommunications network 104 to a UE 100/102 using SIP protocol.
When a user of the originating UE 100 wants to establish a communication session (e.g., a RTT call), the user may provide user input to the originating UE 100. Thus,
In response to receiving the user input at 106, the originating UE 100 may attempt to establish a primary communication session. To establish the requested communication session, the originating UE 100 can send a session request 108 over the telecommunications network 104 (e.g., to the IMS core). The session request 108 can comprise a SIP message using the SIP INVITE method to request that a primary communication session be established with a terminating UE 102. Ultimately, the session request 108 can be forwarded to the terminating UE 102, as shown in
The session request 108 may include a header that contains information indicating that the originating UE 100 supports early media, such as RTT early media. This information can be used by particular nodes of the telecommunications network 104 and/or by the terminating UE 102 to determine that the originating UE 100 is not only an RTT-capable device, but a device that also supports RTT early media. A device that supports RTT early media can exchange RTT messages with another device during an early media communication session, prior to establishing the primary communication session, and while the primary communication session is being setup. The information included in the header can include one or more feature tags, at least one of the feature tags indicating that the originating UE 100 supports RTT early media. For example, a feature tag with a Feature_tag value=‘sip.RTTearlymedia’ may be included in a session request 108 header to indicate that the originating UE 100 supports RTT early media. It is to be appreciated that this capability (e.g., RTT early media) can additionally be sent by the originating UE 100 during the registration procedure, such as by including the aforementioned feature tag in a SIP REGISTER message, prior to the originating UE 100 receiving the user input at 106.
In response to sending the session request 108, the originating UE 100 can perform additional setup procedures 110 for establishing the primary communication session. Similarly, in response to receiving the session request 108, the terminating UE 102 can perform its own additional setup procedures 112 for establishing the primary communication session from the terminating UE's 102 perspective. Initiating additional setup procedures (e.g., the setup procedures 110 and 112) is sometimes referred to herein as “initiating a session setup.” As will be described in more detail below, the additional setup procedures 110 and 112 that commence after the transmission and receipt of the session request 108 can comprise various actions and message transmissions by and between the UEs 100 and 102, and by and between each UE 100/102 and various network nodes of the telecommunications network 104 (e.g., IMS nodes).
It is to be appreciated that capability discovery with respect to whether a UE (e.g., the originating UE 100, the terminating UE 102) supports RTT early media or not may be exchanged between the UEs 100 and 102 in other ways, without departing from the basic characteristics of the techniques and systems described herein. For instance, the originating UE 100 may send a SIP OPTIONS message in response to receiving the user input at 106, but separately from the session request 108, where the SIP OPTIONS message contains information indicating whether the originating UE 100 supports early media, such as RTT early media. The terminating UE 102 in this example may respond with a 200 (OK) message, which may include its own capability information, indicating whether the terminating UE 102 supports early media, such as RTT early media, or the terminating UE's 102 capabilities may be sent in a SIP OPTIONS message from the terminating UE 102. As another example, capability exchange can occur with the use of a presence service. For example, one or both of the UE's 100 and/or 102 may publish capabilities, such as whether they individually support RTT early media, to a presence server. The other or both of the UE's 100 and/or 102 may also subscribe to the capability info that is published by the other UE. Once a UE, such as the terminating UE 102, subscribes to the presence information of the other UE, such as the originating UE 100, the capabilities (e.g., RTT early media supported) published by the other UE are known to the subscribing UE. This presence server based capability exchange can be done before the originating UE 100 receives the user input at 106 and before it sends the session request 108.
Eventually, during the session setup of the primary communication session, the originating UE 100 can send a Session Description Protocol (SDP) offer 114 in order to negotiate initialization parameters for text content that is to be transmitted during an early media communication session (i.e., prior to establishing the primary communication session). SDP is a format for describing streaming media initialization parameters. SDP does not deliver media itself, but is used between end points for negotiation of media type, format, and associated properties thereof. The terminating UE 102 may send a SDP answer 116 in order to negotiate the initialization parameters for text content that is to be transmitted during the early media communication session. The SDP answer 116 may be sent in response to the SDP offer 114.
As shown in
Accordingly, the originating UE 100 may send text content in a RTT message 122, as shown in
It is to be appreciated that the text content included in the RTT message 122 can be user-generated text content, user-selected, or machine-generated (i.e., without user interaction). The calling party can create user-generated text content, on-the-fly, by providing appropriate user input to an input mechanism (e.g., a microphone(s), a text entry field on a touchscreen, etc.) enabled on the originating UE 100. The originating UE 100 may enable such an input mechanism for inputting user-generated text content after the early media session is established at 120.
Alternatively, the calling party can select predefined text content that is displayed on the display of the originating UE 100 for selection by the user, which causes the user-selected text content to be inserted in the RTT message 122. For example, stored text content may be available to the originating UE 100, and the originating UE 100 may retrieve and display at least some of the stored text content for the user to select for the RTT message 122. As an example, available text content for user selection may include the following: “This is urgent, please pick up!” Presenting predefined text content for user selection can allow for even quicker transmission of RTT messages, seeing as how there is a limited window of time until the setup of the primary communication session is resolved (e.g., successfully connected, directed to voicemail, etc.).
Alternatively, the text content of the RTT message 122 can be selected, by the originating UE 100, without any user interaction, from stored text content available to the originating UE 100. In other words, the RTT message 122 may be automatically generated by the originating UE 100 and sent by the originating UE 100 without any user interaction other than the received user input at 106 to request the establishment of the communication session. This may be useful for various reasons, as will be described in more detail below.
However the text content is generated, the terminating UE 102 may receive the RTT message 122 in real time, as the calling party is typing the text content of the RTT message 122. As used herein, “real-time” or “substantially real-time” means that a time period measured from the moment text content is input on a source device to a moment the same text content is displayed on a target/receiving device is sufficiently short to experience, at the target/receiving device a display of text content as the calling party is entering the text content at the source device. This period of time may be on the order of a few seconds, and it is recognized that there will be some amount of time delay between inputting text content on the source device and displaying the text content on the target/receiving device. Accordingly, the terminating UE 102 may display the RTT message 122 at 124 in real-time.
To this end, the additional setup procedures 110/112/126/128 may represent any type of setup procedures, in any suitable number, that may be performed to setup and establish the primary communication session. Some examples of the additional setup procedures 110/112/126/128 include, without limitation, sending/receiving a session progress message (sometimes called a “183 response”), establishing a radio resource control (RRC) connection with a preferred RAT (e.g., an LTE RAT), sending/receiving a 100 Trying message (indicating the session request 108 has been received at the terminating UE 102), sending/receiving a 180 Ringing message (indicating that a terminating party of the terminating UE 102 is being alerted), sending/receiving an UPDATE message, sending/receiving various “ACK” message (e.g., a PRACK message), and so on. Thus, the additional setup procedures 110/112/126/128 may represent various setup procedures that occur during particular setup phases for a communication session, such as a pre-alerting phase, an alerting phase, and so on. A person having ordinary skill in the art will readily recognize that additional setup procedures 110/112/126/128 are not limited to the examples described herein, and that other (e.g., different and/or additional) setup procedures may be performed in order to setup the primary communication session over a telecommunication network 104. Furthermore, some of the example setup procedures described herein may be omitted or unnecessary for setting up a primary communication session.
In some embodiments, at least some of the signaling involved in establishing the early media communication session at 120 can be the same signaling used for setting up and establishing the primary communication session at 132. In some embodiments, the signaling involved in establishing the early media communication session at 120 may be separate and independent form the signaling used for setting up and establishing the primary communication session at 132. As an example, the SDP offer 114 and the SDP answer 116 may be utilized to negotiate initialization parameters for media streams of both the early media communication session and the primary communication session without sending a separate SDP offer and SDP answer for the primary communication session. As another example, the dedicated bearer that is established at 118 may be utilized for both the early media communication session and the primary communication session, rather than establishing a separate dedicated bearer for the primary communication session. Thus, the dedicated bearer assigned to the RTT media stream of the early media communication session may, in some instance, be a same dedicated bearer that is assigned to a voice media stream for the primary communication session.
Thus,
Although
In response to receiving the user input at 206, the originating UE 200 may attempt to establish a primary communication session with the appropriate PSAP 202 by sending a session request 208 over the telecommunications network 204. The session request 208 can comprise a SIP message using the SIP INVITE method to request that a primary communication session be established with the PSAP 202. The PSAP 202 may receive the session request 208 (e.g., in the form of a SIP INVITE) requesting to establish a primary communication session. As used herein “PSAP” 202 may represent a terminal at the PSAP 202.
Some existing PSAP terminals may not support RTT calls or be configured to process incoming RTT calls with RTT technology. In this case, one or more nodes of the telecommunications network 204 may be configured to transcode RTT signaling and/or messaging into TTY format, thereby enabling the PSAP to handle the incoming session request 208 as a TTY call. To this end, although the PSAP 202 receives the session request 208 from an originating UE 200 that supports RTT calling, the session request 208 received by the PSAP 202 may nevertheless be transcoded from RTT-to-TTY before receipt by the PSAP 202. Accordingly, a PSAP 202 representative (e.g., a 911 operator) may not know whether the incoming call is from a TTY device or a RTT device.
The session request 208 may include a header that contains information indicating that the originating UE 200 supports early media, such as RTT early media. In response to sending the session request 208, the originating UE 200 can perform additional setup procedures 210 for establishing the primary communication session. Similarly, in response to receiving the session request 208, the PSAP 202 can perform its own additional setup procedures 212 for establishing the primary communication session from the PSAP's 202 perspective.
The originating UE 200 can send a SDP offer 214, and the PSAP 202 may send a SDP answer 216 in order to negotiate the initialization parameters for text content that is to be transmitted during an early media communication session. The SDP answer 216 may be sent in response to the SDP offer 214.
A dedicated bearer may be established at 218 for the early media communication session. Subsequently, the early media communication session may be established at 220, and, thereafter, the UEs 100/102 may commence the exchange of RTT messages while the primary communication session is still being setup.
Accordingly, the originating UE 200 may send text content in a RTT message 222, as shown in
As shown in
As with the example of
Thus,
Accordingly, the UE 300 (acting as an originating UE) may receive user input at 306 in the form of an emergency short code, which causes a request for the primary communication session to be routed to an appropriate (e.g., nearest) PSAP 302. In response to receiving the user input at 306, the UE 300 may attempt to establish a first primary communication session with the appropriate PSAP 302 by sending a first session request 308(1) over the telecommunications network 304. The first session request 308(1) can comprise a SIP message using the SIP INVITE method to request that a primary communication session be established with the PSAP 302. The PSAP 302 may receive the first session request 308(1) (e.g., in the form of a SIP INVITE) requesting to establish a primary communication session.
If an issue occurs in setting up the first primary communication session, however, the UE 300 and the PSAP 302 may respectively receive a failure response 309(A) and 309(B), which may indicate that the setup procedures have been terminated. The failure responses 309(A)/(B) can include a 5xx response, for example. Alternatively, the first primary communication session may have been successfully established, but subsequently dropped (e.g., due to poor radio conditions). In either case, responsive to the failure response 309(B), the PSAP 302 may initiate a callback to the user of the UE 300 to re-establish a communication session. Thus, the PSAP 302 can send a second session request 308(2), and the UE 300 may receive the second session request 308(2). Thereafter, the procedures and signaling are similar to those described with respect to
Whether the user selected a normal calling function or a RTT calling function to invoke the user interface 400, the user interface 400 may optionally include a RTT selection element 402 that, upon selection, enables an input mechanism for allowing the user to send an early RTT message 122 during setup of, and prior to establishing, a primary communication session (e.g., a RTT call).
The user interface 500 may present, in a first region 502, selectable text content 504 for selection by the user.
A user may also type out user-generated text content in the free form text input mechanism 506 using a soft keyboard 508 and/or using a microphone as an input mechanism with voice recognition. Thus, a user of the originating UE 100 is able to create user-generated text content, and/or select from available text content 504, using the user interface 500. Because the user interface 500 is presented during the setup of the primary communication session, and prior to establishing the primary communication session, the user is able to send early RTT messages, such as the RTT message 122, to the calling party before the calling party accepts the request to establish the primary communication session.
It is to be appreciated that the user interfaces 400, 500, and 600 are merely exemplary for illustrative purposes, and that other similar user interfaces may be presented for the various other scenarios described herein. For example, a user interface of a PSAP 202 terminal may be presented similarly to
The processes described in this disclosure may be implemented by the architectures described herein, or by other architectures. These processes are illustrated as a collection of blocks in a logical flow graph. Some of the blocks represent operations that can be implemented in hardware, software, or a combination thereof. In the context of software, the blocks represent computer-executable instructions stored on one or more computer-readable storage media that, when executed by one or more processors, perform the recited operations. Generally, computer-executable instructions include routines, programs, objects, components, data structures, and the like that perform particular functions or implement particular abstract data types. The order in which the operations are described is not intended to be construed as a limitation, and any number of the described blocks can be combined in any order or in parallel to implement the processes. It is understood that the following processes may be implemented on other architectures as well.
At 702, an originating UE 100/200 may receive user input requesting to establish a primary communication session. As described, the user input may be provided in various ways via any suitable input mechanism enabled by the originating UE 100/200. In the case of a non-emergency call, the user input may correspond a number of another subscriber of IMS-based services, the subscriber being associated with a terminating UE 102. In the case of an emergency call, the user input may be in the form of an emergency short code (e.g., 911 in the United States).
At 704, the originating UE 100/200 may send, over a telecommunications network 104/204, a session request 108/208 to establish the primary communication session. This may be in the form of a SIP INVITE. In a non-emergency context, the session request 108 may be ultimately forwarded to a terminating UE 102. In an emergency context, the session request 208 may be ultimately forwarded to a PSAP 202.
At 706, prior to establishing the primary communication session, and during an early media communication session, the originating UE 100/200 may send text content in a RTT message 122/222. In a non-emergency context, the text content of the RTT message 122 may be received by, and displayed on, a terminating UE 102. In an emergency context, a PSAP 202 terminal may receive and display the text content of the RTT message 222. The text content of the RTT message 122/222 may be machine-generated or user-generated (e.g., created or selected by the user), as described herein.
For example, at 708, the originating UE 100/200 may select, without user interaction, the text content from stored text content available to the originating UE 100/200 prior to sending the text content at 706. In some embodiments, the automatic selection of the text content at 708 may occur in response to determining that the user input received at 702 includes an emergency short code. In other words, user input corresponding to an emergency short code (e.g., 911 in the United States) may trigger the machine-generation of text content (e.g., “This is a RTT call”) that is to be sent to the PSAP 202 in an early RTT message 222. In other examples, there may be other triggers for the originating UE 100/200 selecting text content automatically and without user interaction. In some cases, the originating UE 100/200 may be configured to send an automatic RTT message by default, unless settings are changed by the user.
As another example, at 710, the originating UE 100/200 may displaying, on a display of the originating UE 100/200, (i) a text input mechanism 506 for entering user-generated text content, such as a free form text entry field, and (ii) selectable text content 504 for selection by a user of the originating UE 100/200. Following the display of the input mechanism 506 and the selectable text content 504 at 710, the originating UE 100/200 may, at 712, receive additional user input that causes at least one of the user-generated text content or the selectable text content to be entered into the text input mechanism 506. Thus, optional sub-blocks 710 and 712 allow for the text content to include text content created or selected by the user of the originating UE 100/200, while optional sub-block 708 allows of the text content to include machine-selected text content that does not involve user interaction.
At 714, the originating UE 100/200 may establish the primary communication session after the sending of the text content in the RTT message 122/222. The primary communication session (e.g., a RTT call) may be established over the telecommunications network 104/204.
At 802, an originating UE 100/200 may receive user input requesting to establish a primary communication session. The operation(s) at block 802 may be similar to the operation(s) described with respect to block 702 of the process 700 of
At 804, the originating UE 100/200 may send, over a telecommunications network 104/204, a session request 108/208 to establish the primary communication session. The operation(s) at block 804 may be similar to the operation(s) described with respect to block 704 of the process 700 of
At 806, the originating UE 100/200 may send, over the telecommunications network 104/204, a SDP offer 114/214 to negotiate initialization parameters for text content of an early RTT media session. As mentioned herein, the SDP offer 114/214 sent at block 806 may be the same SDP offer used to negotiate initialization parameters for voice content of the primary communication session, or, alternatively, the early media communication session and the primary communication session may be setup using separate SDP offers.
At 808, an early media communication session may be established with a dedicated bearer for a RTT media stream of the early media communication session. The dedicated bearer may be assigned by one or more nodes of the telecommunications network 104/204, and may be a same dedicated bearer as the dedicated bearer assigned to a media stream for the primary communication session (e.g., a dedicated bearer for voice data), but the early media and primary sessions do not have to use the same dedicated bearer.
At 810, prior to establishing the primary communication session, and during an early media communication session, the originating UE 100/200 may send text content in a RTT message 122/222. The operation(s) at block 810 may be similar to the operation(s) described with respect to block 706 of the process 700 of
At 812, the originating UE 100/200 may receive a 2xx response 130/230 indicating a successful connection with a terminating device. In a non-emergency context, the terminating device may be a terminating UE 102. In an emergency context, the terminating device may be a PSAP 202.
At 814, the originating UE 100/200 may establish the primary communication session after the sending of the text content in the RTT message 122/222. The operation(s) at block 814 may be similar to the operation(s) described with respect to block 714 of the process 700 of
At 902, a terminal may receive, over a telecommunications network 104/204/304, a session request 108/208/308(2) to establish a primary communication session. The session request may be in the form of a SIP INVITE.
At 904, the terminal may initiate a session setup for the primary communication session. This may involve performing one or more setup procedures of various setup procedures described herein.
At 906, prior to completing the session setup for establishing the primary communication session, the terminal may receive, during an early media communication session, text content of a RTT message 122/222/322.
At 908, the terminal may display, on a display of the terminal during the early media communication session, the text content of the RTT message 122/222/322. An example of this is shown in the user interface 600 of
At 910, the terminal may receive user input indicating that a user of the terminal accepts the request to establish the primary communication session. For example, this may involve the user selecting an “accept” soft button 602 on a touch screen of the terminal.
At 912, the primary communication session may be established after the displaying of the text content of the RTT message 122/222/322, and in response to the receiving of the user input at block 910.
At 1002, a terminal may receive, over a telecommunications network 104/204/304, a session request 108/208/308(2) to establish a primary communication session. The operation(s) at block 1002 may be similar to the operation(s) described with respect to block 902 of the process 900 of
At 1004, the terminal may initiate a session setup for the primary communication session. This may involve performing one or more setup procedures of various setup procedures described herein.
At 1006, the terminal may send a SDP answer 116/216/316 to negotiate initialization parameters for text content of an early RTT media session. As mentioned herein, the SDP answer 116/216/316 sent at block 1006 may be the same SDP answer used to negotiate initialization parameters for voice content of the primary communication session, or, alternatively, the early media communication session and the primary communication session may be setup using separate SDP answers.
At 1008, an early media communication session may be established with a dedicated bearer for a RTT media stream of the early media communication session. The dedicated bearer may be assigned by one or more nodes of the telecommunications network 104/204/304, and may be a same dedicated bearer as the dedicated bearer assigned to a media stream for the primary communication session (e.g., a dedicated bearer for voice data), but the early media and primary sessions do not have to use the same dedicated bearer.
At 1010, prior to completing the session setup for establishing the primary communication session, the terminal may receive, during an early media communication session, text content of a RTT message 122/222/322. The operation(s) at block 1010 may be similar to the operation(s) described with respect to block 906 of the process 900 of
At 1012, the terminal may display, on a display of the terminal during the early media communication session, the text content of the RTT message 122/222/322. The operation(s) at block 1012 may be similar to the operation(s) described with respect to block 908 of the process 900 of
At 1014, the terminal may display, on a display of the terminal, (i) a text input mechanism (e.g., a text entry field similar to the input mechanism 506 of
At 1016, the terminal may receive user input indicating that a user of the terminal accepts the request to establish the primary communication session. The operation(s) at block 1016 may be similar to the operation(s) described with respect to block 910 of the process 900 of
At 1018, the terminal may send a 2xx response 130/230/330 indicating a successful connection with an originating terminal.
At 1020, the primary communication session may be established after the displaying of the text content of the RTT message 122/222/322 at block 1012, and in response to the receiving of the user input at block 1016 and the sending of the final 2xx response at block 1018. The operation(s) at block 1020 may be similar to the operation(s) described with respect to block 912 of the process 900 of
At 1102, a terminal (e.g., the UE 300 of
At 1104, the terminal 300 may receive at least one of (i) an indication of a failure to establish the communication session with the PSAP 302, or (ii) an indication that the communication session with the PSAP 302 has been dropped after establishment.
At 1106, the terminal 300 may receive, over a telecommunications network 304, a session request 308(2) to establish a primary communication session. This session request may be a callback from the PSAP 302 in response to the failed initial communication session. The operation(s) at block 1106 may be similar to the operation(s) described with respect to block 902 of the process 900 of
At 1108, the terminal may initiate a session setup for the primary communication session. This may involve performing one or more setup procedures of various setup procedures described herein.
At 1110, prior to completing the session setup for establishing the primary communication session, the terminal 300 may receive, during an early media communication session, text content of a RTT message 322. The operation(s) at block 1110 may be similar to the operation(s) described with respect to block 906 of the process 900 of
At 1112, the terminal 300 may display, on a display of the terminal 300 during the early media communication session, the text content of the RTT message 322. For example, text content, such as “This is a PSAP callback” or “This is the 911 operator,” may be displayed on a terminal 300 that receives a callback from a PSAP 302. The operation(s) at block 1112 may be similar to the operation(s) described with respect to block 908 of the process 900 of
At 1114, the terminal 300 may receive user input indicating that a user of the terminal 300 accepts the request to establish the primary communication session. The operation(s) at block 1114 may be similar to the operation(s) described with respect to block 910 of the process 900 of
At 1116, the primary communication session may be established after the displaying of the text content of the RTT message 322, and in response to the receiving of the user input at block 1114. The operation(s) at block 1116 may be similar to the operation(s) described with respect to block 912 of the process 900 of
At 1202, an originating UE 200 may receive user input requesting to establish a primary communication session. The operation(s) at block 1202 may be similar to the operation(s) described with respect to block 702 of the process 700 of
At 1204, the originating UE 200 may send, over a telecommunications network 204, a session request 208 to establish the primary communication session. The operation(s) at block 1204 may be similar to the operation(s) described with respect to block 704 of the process 700 of
At 1206, the originating UE 100/200 may receive a 2xx response 130/230 indicating a successful connection with a terminating device. The operation(s) at block 1206 may be similar to the operation(s) described with respect to block 812 of the process 800 of
At 1208, the originating UE 200 may establish the primary communication session. The operation(s) at block 1208 may be similar to the operation(s) described with respect to block 714 of the process 700 of
At 1210, the originating UE 200 may select, without user interaction, text content from stored text content available to the originating UE 200 for use in a RTT message 222. The operation(s) at block 1210 may be similar to the operation(s) described with respect to block 708 of the process 700 of
At 1212, the originating UE 200 may send the text content in a RTT message 222 before enabling an input mechanism (e.g., the text input mechanism 506 of
As shown, the UE 1300 may include one or more processors 1302 and one or more forms of computer-readable memory 1304. The UE 1300 may also include additional storage devices. Such additional storage may include removable storage 1306 and/or non-removable storage 1308.
The UE 1300 may further include input devices 1310 and output devices 1312 communicatively coupled to the processor(s) 1302 and the computer-readable memory 1304. The UE 1300 may further include communications interface(s) 1314 that allow the UE 1300 to communicate with other computing devices 1316 (e.g., IMS nodes, other UEs) such as via a network. The communications interface(s) 1314 may facilitate transmitting and receiving wired and/or wireless signals over any suitable communications/data technology, standard, or protocol, as described herein. For example, the communications interface(s) 1314 can comprise one or more of a cellular radio, a wireless (e.g., IEEE 802.1x-based) interface, a Bluetooth® interface, and so on. In some embodiments, the communications interface(s) 1314 may include radio frequency (RF) circuitry that allows the UE 1300 to transition between different RATs, such as transitioning between communication with a 4G or 5G LTE RAT and a legacy RAT (e.g., 3G/2G). The communications interface(s) 1314 may further enable the UE 1300 to communicate over circuit-switch domains and/or packet-switch domains.
In various embodiments, the computer-readable memory 1304 comprises non-transitory computer-readable memory 1304 that generally includes both volatile memory and non-volatile memory (e.g., random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EEPROM), Flash Memory, miniature hard drive, memory card, optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium). The computer-readable memory 1304 may also be described as computer storage media and may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data. Computer-readable memory 1304, removable storage 1306 and non-removable storage 1308 are all examples of non-transitory computer-readable storage media. Computer-readable storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, compact disc read-only memory (CD-ROM), digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the UE 1300. Any such computer-readable storage media may be part of the UE 1300.
The memory 1304 can include a RTT client 1318 (i.e., computer-executable instructions (or logic)) that, when executed, by the processor(s) 1302, perform the various acts and/or processes disclosed herein. The UE 1300 may store text content 1320 in the memory 1304 of the UE 1300 for access in performing the various acts and/or processes disclosed herein.
The environment and individual elements described herein may of course include many other logical, programmatic, and physical components, of which those shown in the accompanying figures are merely examples that are related to the discussion herein.
The various techniques described herein are assumed in the given examples to be implemented in the general context of computer-executable instructions or software, such as program modules, that are stored in computer-readable storage and executed by the processor(s) of one or more computers or other devices such as those illustrated in the figures. Generally, program modules include routines, programs, objects, components, data structures, etc., and define operating logic for performing particular tasks or implement particular abstract data types.
Other architectures may be used to implement the described functionality, and are intended to be within the scope of this disclosure. Furthermore, although specific distributions of responsibilities are defined above for purposes of discussion, the various functions and responsibilities might be distributed and divided in different ways, depending on circumstances.
Similarly, software may be stored and distributed in various ways and using different means, and the particular software storage and execution configurations described above may be varied in many different ways. Thus, software implementing the techniques described above may be distributed on various types of computer-readable media, not limited to the forms of memory that are specifically described.