1. Field
Various embodiments are directed to server-initiated duplex transitions.
2. Description of the Related Art
Communication sessions can conventionally be initiated either as half-duplex sessions (e.g., PTT) or full-duplex sessions (e.g., VoIP). When a synchronous, full-duplex communication is desired between two telecommunication devices, such as a telephone call between two telephones, it is common to have one device attempt to start the communication and bridge the connection by contacting the other device. The telephone system then will either send a signal and/or bridge a full-duplex communication channel on a circuit switch to the other device, and the contacted device will then broadcast an alert, such as a ring or other audible alert, and can also give a visual alert, such as flashing lights or activity on a display, to inform a person near the device that another communication device is attempting to bridge a communication. A person will then answer the contacted device and the full-duplex communication will then be bridged, or if the communication was already bridged, the channel will be maintained.
In existing phone systems, the system overhead to start and then attempt to bridge the full-duplex phone call can be significant. The call-commencing process typically begins with a person signifying that they intend to make a phone call, such as by lifting up a telephone handset or pressing a button for an active line, and then the telephone system accepts the telephone number, determines the intended number, sends the appropriate alerting signal or bridges a communication channel to the other device, and waits for acceptance of the call. This process averages 10 seconds and utilizes system overhead during the entire process. There exists some functionality in the calling devices, such as speed dialing, that can hasten parts of the calling process, but this only partially reduces the calling time.
There is a wireless telecommunication service that provides a quick one-to-one or one-to-many communication half-duplex voice communication that is generically referred to as “Push-To-Talk” (PTT) capability. The specific PTT group of recipient devices for the communicating wireless device is commonly set up by the carrier, and a PTT communication connection is typically initiated by a single button-push on the wireless device that activates a half-duplex communication link between the speaker and each member device of the group, and once the button is released, the device can receive incoming PTT transmissions. In some arrangements, the PTT speaker will have the “floor” where no other group member can speak while the speaker had engaged the PTT button at his or her device. Once the speaker releases the PTT button, any other individual member of the group can engage their PTT button and they will have the floor.
A PTT communication system does not utilize a “ringing” system similar to a standard telephone system, but rather opens up a communication channel to a target wireless device upon a group member being granted the floor to talk, and the floor-holder simply starts to talk with the voice being received at and broadcasted to the target devices. Thus, in a “walkie-talkie” style, the voice from the originating wireless device is simply broadcast from the receiving wireless device, with no “answer” required at the receiving wireless device. As the original voice communication was half-duplex, for a target device to talk back to the originating wireless device (or other group members), the user of the target device presses the PTT button sends a floor-request to attempt to get the floor for the session. Thus, multiple group member devices of a PTT group do not concurrently exchange media in a half-duplex session, as in full-duplex.
In some embodiments, a server conducts a communication session between an originating device and at least one target device via a first duplex characteristic (e.g., half-duplex, full-duplex, media share, etc.). The server monitors a set of session parameters while the communication session has the first duplex characteristic. Based on the monitoring, the server detects one or more changes to at least one session parameter in the set of session parameters. The server automatically determines to transition the communication session from the first duplex characteristic to a second duplex characteristic (e.g., half-duplex, full-duplex, media share, etc.) in response to the detection. The server transitions the communication session from the first duplex characteristic to the second duplex characteristic in response to the determination.
Aspects are disclosed in the following description and related drawings directed to specific embodiments. Alternate embodiments may be devised. Additionally, well-known elements of the various embodiments will not be described in detail or will be omitted so as not to obscure the relevant details of the various embodiments.
In this description, the terms “communication device,” “wireless device,” “wireless communications device,” “PTT communication device,” “handheld device,” “mobile device,” and “handset” are used interchangeably. The terms “call” and “communication” are also used interchangeably. The term “application” as used herein is intended to encompass executable and non-executable software files, raw data, aggregated data, patches, and other code segments. The term “half-duplex” means communication of data in only one direction at a time (not simultaneously or bi-directionally), thus, once a communicating device begins receiving a half-duplex signal, it must wait for the transmitter to stop transmitting, before replying, as is common in a PTT communication system. The term “full-duplex” means that communications can simultaneously occur in both directions between communicating devices, as is common in a voice telephone call. Further, like numerals refer to like elements throughout the several views, and the articles “a” and “the” includes plural references, unless otherwise specified in the description.
The words “exemplary” and/or “example” are used herein to mean “serving as an example, instance, or illustration.” Any embodiment described herein as “exemplary” and/or “example” is not necessarily to be construed as preferred or advantageous over other embodiments. Likewise, the term “various embodiments” does not require that all embodiments include the discussed feature, advantage or mode of operation.
Further, many embodiments are described in terms of sequences of actions to be performed by, for example, elements of a computing device. It will be recognized that various actions described herein can be performed by specific circuits (e.g., application specific integrated circuits (ASICs)), by program instructions being executed by one or more processors, or by a combination of both. Additionally, these sequence of actions described herein can be considered to be embodied entirely within any form of computer readable storage medium having stored therein a corresponding set of computer instructions that upon execution would cause an associated processor to perform the functionality described herein. Thus, the various embodiments may be embodied in a number of different forms, all of which have been contemplated to be within the scope of the claimed subject matter. In addition, for each of the embodiments described herein, the corresponding form of any such embodiments may be described herein as, for example, “logic configured to” perform the described action.
A High Data Rate (HDR) subscriber station, referred to herein as an access terminal (AT), may be mobile or stationary, and may communicate with one or more HDR base stations, referred to herein as modem pool transceivers (MPTs) or base stations (BS). An access terminal transmits and receives data packets through one or more modem pool transceivers to an HDR base station controller, referred to as a modem pool controller (MPC), base station controller (BSC) and/or packet control function (PCF). Modem pool transceivers and modem pool controllers are parts of a network called an access network. An access network transports data packets between multiple access terminals.
The access network may be further connected to additional networks outside the access network, such as a corporate intranet or the Internet, and may transport data packets between each access terminal and such outside networks. An access terminal that has established an active traffic channel connection with one or more modem pool transceivers is called an active access terminal, and is said to be in a traffic state. An access terminal that is in the process of establishing an active traffic channel connection with one or more modem pool transceivers is said to be in a connection setup state. An access terminal may be any data device that communicates through a wireless channel or through a wired channel, for example using fiber optic or coaxial cables. An access terminal may further be any of a number of types of devices including but not limited to PC card, compact flash, external or internal modem, or wireless or wireline phone. The communication link through which the access terminal sends signals to the modem pool transceiver is called a reverse link or traffic channel. The communication link through which a modem pool transceiver sends signals to an access terminal is called a forward link or traffic channel. As used herein the term traffic channel can refer to either a forward or reverse traffic channel.
With reference to the figures in which like numerals represent like elements throughout,
Also, in one embodiment, voice can be sent from the originating device 10 along the half-duplex PTT communication channel to audibly send information to the user at the target device 12 at the quick call request. The “alert” for the quick call request can be similar to a typical telephone “ring” but can be an audible or physical (e.g. vibration) alert and can last for a predetermined duration, such as 5 seconds, in order to give the user of the target device 12 a reasonable time to determine if he/she desires to complete the quick call. Thus, if the alert from the initial PTT call is an audible ringer being sent from the originating wireless communication device 10, the target device 12 can simply hit the “answer” button as would be done with a regular phone call, and the use of the PTT communication to setup the phone call could be completely transparent to the users of the devices 10 and 12.
In this embodiment, once the acceptance of the quick call is received, a full-duplex channel C is established between the communication device 10 and 12, as shown in
In an example, as will be described in more detail below, the channels C of the full-duplex communication session may correspond to the call originator maintaining its half-duplex channel A and having the initial call target(s) obtain their own channel. In this manner, the call originator's half-duplex channel need not be torn down and brought up again during the transition from half-duplex to full-duplex.
In an embodiment, a group communication computer device, shown here as group communication server 74, which is present on a server-side LAN 72 across the wireless network 70, is configured to indicate that the wireless device is present, i.e. accessible, on the wireless network 70. The group communication server 74 can share this information with the set of target wireless telecommunication devices designated by the first wireless telecommunication device, or can also share this information with other computer devices resident on the server-side LAN 72 or accessible across the wireless network 70. The group communication server 74 can have an attached or accessible database 76 to store the group identification data for the wireless devices. Thus, the group communication server 74 handles the arbitration of group communication sessions within the network. Further, the group communication server 74 can be representative of multiple group communication servers 74 within the network, with each group communication server 74 arbitrating sessions in different regions of the network. It should be appreciated that the number of computer components resident on server-side LAN 72, or across the wireless network 70, or Internet generally, are not limited.
In an example, a direct communication, such as a PTT communication, can be established through a half-duplex channel between the communicating wireless telecommunication device 64, 66, 68 and one or more other wireless telecommunication devices of the target set. The group communication computer device 74 can also inform the wireless telecommunication device 64, 66, 68 of the inability to bridge a direct communication to the target set 62 upon none of the wireless telecommunication devices (or at least one) of the target set not having informed the group communication computer device 74 of their presence on the wireless network 70. Further, while the group communication computer device 32 is shown here as having the attached database 76 of group identification data, the group communication computer device 74 can have group identity data resident thereupon, and perform all storage functions described herein.
Thus, in an embodiment, an attempt to ultimately bridge a full-duplex synchronous communication is accomplished by initially sending a half-duplex push-to-talk communication request from an originating member of a PTT group 62, to another target communication device, such as mobile phone 65. The target communication device 65 will then receive the PTT communication with the quick call data from the originating communication device (or not if the target communication devices are embodied so as to control such functionality) and determine whether or not to “answer” the quick call, as shown in
Also in the embodiment in
Although a group communication is typically half-duplex voice data among members of the communication group 62, the group communication can be voice, applications, graphic media, such as pictures in JPEG, TIF, and the like, or audio files such as MP3, MP4, WAV, and the like. The media can also be streaming media, such as a multimedia application (PowerPoint, MOV file, and the like).
Thus, in overview, there is provided a system 60 for bridging a full-duplex communication channel between two wireless communication devices, such as communication devices 10 and 12 in
In one embodiment, the half-duplex communication and ultimate establishment of a full duplex communication occur from the exchange of voice-over-Internet-Protocol (VoIP) data packets between the communicating devices. Consequently, the group communication server 74 can be further configured to obtain the assigned network addresses (typically assigned by a PDSN 82) to the originating wireless communication device 10 and target wireless communication device 12 to relinquish control of the full-duplex communication once established. In the case of full-duplex, it will be appreciated that the group communication server 74 still receives media from group members and forwards the media to other group members, but the group communication server 74 is not responsible for floor arbitration when operating in full-duplex. As shown in
In one embodiment, the originating wireless communication device 10 can be further configured to selectively force the target wireless communication device 12 to accept the full-duplex or half-duplex communication and cause the communication to be established. For example, a mobile device that is intended to be used by a child can be configured to allow the parent to cause the mobile device to open up the full-duplex or half-duplex communication to the originating device such that the parent can force the child's phone to answer. The parent can use this feature to monitor the activity of the child, for example, this feature can also be used in child abduction cases in which the child retains his/her mobile device.
The group communication server(s) 74 are connected to a wireless service provider's packet data service node (PDSN), such as PDSN 82, shown here resident on a carrier network 84. Each PDSN 82 can interface with a base station controller 94 of a base station 90 through a packet control function (PCF) 92. The PDSN 82 will typically assign network addresses to wireless communication devices, such as IP network addresses for VoIP communications. The PCF 82 is typically located in the base station 90. The carrier network 84 controls messages (generally in the form of data packets) sent to a mobile switching center (“MSC”) 88. The carrier network 84 communicates with the MSC 88 by a network, the Internet and/or POTS (“plain ordinary telephone system”). Typically, the network or Internet connection between the carrier network 84 and the MSC 88 transfers data, and the POTS transfers voice information. The MSC 88 can be connected to one or more base stations 90. In a similar manner to the carrier network, the MSC 88 is typically connected to the base transceiver station (sometimes referred to as “branch-to-source”) (BTS) 96 by both the network and/or Internet for data transfer and POTS for voice information. The BTS 96 ultimately broadcasts and receives messages wirelessly to and from the wireless devices, such as cellular telephones 100,102,104,106, by short messaging service (“SMS”), or other over-the-air methods known in the art. It should also be noted that carrier boundaries and/or PTT operator network boundaries do not inhibit or prohibit the sharing of data as described herein.
Cellular telephones and mobile telecommunication devices, such as wireless telephone 100, are being manufactured with increased computing capabilities and are becoming tantamount to personal computers and hand-held PDAs. These “smart” cellular telephones allow software developers to create software applications that are downloadable and executable on the processor of the wireless device. The wireless device, such as cellular telephone 100, can download many types of applications, such as web pages, applets, MIDlets, games and data. In wireless devices that have designated a communication group 62 (
The wireless device 110 includes a computer platform 116 that can handle voice and data packets, and receive and execute software applications transmitted across the wireless network 70 to include the group communications. The computer platform 116 includes, among other components, an application-specific integrated circuit (“ASIC”) 122, or other processor, microprocessor, logic circuit, programmable gate array, or other data processing device. The ASIC 122 is installed at the time of manufacture of the wireless device and is not normally upgradeable. The ASIC 122 or other processor executes an application programming interface (“API”) layer 124, which includes the resident application environment, and can include the operating system loaded on the ASIC 122. Resident programs can be held in the memory 126 of the wireless device. An example of a resident application environment is the “binary runtime environment for wireless” (BREW) software developed by QUALCOMM® for wireless device platforms.
As shown here, while the wireless device can be a mobile telephone 110, with a graphics display 114, in alternative embodiments the wireless device can correspond to any type of wireless device with a computer platform 116 as known in the art, such as a personal digital assistant (PDA), a pager with a graphics display 114, or even a separate computer platform 116 that has a wireless communication portal, and may otherwise have a wired connection to a network or the Internet. Further, the memory 116 can include read-only or random-access memory (RAM and ROM), EPROM, EEPROM, flash cards, or any memory common to computer platforms. The computer platform 116 can also include a local database 118 for storage of software applications not actively used in memory 126. The local database 118 is typically comprised of one or more flash memory cells, but can be any secondary or tertiary storage device as known in the art, such as magnetic media, EPROM, EEPROM, optical media, tape, or soft or hard disk.
In this embodiment of the wireless device, the computer platform 116 of
In an example, when embodied as the target wireless communication device 12 including a microphone 115 for recording sound and the target wireless communication device 12 able to be forced to respond to the request for a quick call and open up the full-duplex communication, the originating wireless communication device 10 can further be configured to selectively activate the microphone 115 at the target communication device 12 upon the forcing of the full-duplex communication. The target communication device 12 can accordingly be further configured to selectively allow the forcing of the establishment of the full-duplex channel, and selectively allow the activation of the microphone 115, such as through a predetermined setting on the device.
The session target (e.g., PTT Client 138) receives the incoming call announce message in 512, and then determines whether the session target is busy such that the call cannot be accepted, 516. For example, if the session target is already engaged in another communication session, the session target may reject the announced session. Otherwise, if the session target determines that it is not busy, the session target sends a call accept message on a reverse link channel (e.g., a reverse link access channel) to the BSC 136 to be forwarded to the GCS 134,520. In an example, the call acceptance of 516 and 520 can be ‘automatic’ or forced in the sense that a user of the PTT client 138 need not be given an opportunity to reject the session. Alternatively, the user of the PTT client 138 can voluntarily elect to accept the session. Assuming that the BSC 136 determines that sufficient resources are available for supporting the communication session, 524, the BSC 136 forwards the call accept message to the GCS 134, 528. Upon receiving a call accept message from a first responder to the announce message, 528, 532, the GCS 134 sends a floor-grant message to the session originator, 536, and the session originator acknowledges receipt of the floor-grant message, 540.
At this point, along with the floor-grant ACK message, the session originator begins forwarding media to be sent to the at least one session target in a half-duplex manner. In other words, the session target does not necessarily yet have a traffic channel (TCH) on which to transmit media back to the session originator in a full-duplex manner. Thus, at this point, once the session originator has the floor, the communication session at this point is half-duplex even though the session requested for initiation at 500 was a full-duplex session. Accordingly, a temporary half-duplex session is established to facilitate the forwarding of initial media from the session originator to the session target before the full-duplex session is established.
Accordingly, the GCS 134 receives the media (e.g., voice and/or other data) from the session originator and forwards the media to the BSC 136, 544, for transmission to the session target, 548. While participating in the half-duplex session that is initially set up between the session originator and session target, the session target either (i) automatically ‘answers’ the call to obtain call resources for full-duplex participation, or alternatively (ii) prompts a user of the session target to request whether the user wishes to participate in the session as a listener-only or as an active participant. In this example, assume that the session target determines to answer the call and partake in the session in a full-duplex manner. Accordingly, at some point, assume that the session target obtains the requisite resources to participate in the session in a full-duplex manner. In other words, if necessary, the session target can obtain a TCH on which to send media back to the session originator (e.g., although the session target may already have a TCH, in which case bringing up an additional TCH is not necessary). At this point, the session target sends another call accept message to the BSC 136, 552, which is forwarded to the GCS 134, 556. As will be appreciated, the call accept messages of 520 and 552 are both sent in response to the announce message from 512, with the first call accept message of 520 indicating the target's acceptance of the temporary half-duplex session, and the second call accept message of 552 indicating the target's acceptance and readiness to participate in the session via full-duplex. In an alternative embodiment, while not shown in
The GCS 134 then becomes aware that the half-duplex session can transition to a full-duplex session. As such, the GCS 134 sends a call-grant message to each active session participant (e.g., the session originator and session target), 560 and 564. The call-grant message includes instructions with regard to the network entity that will be handling the arbitration of the full-duplex session, which is not necessarily the GCS 134. For example, the session can be handed over to an active call controller 78 or to the PTT clients 132 and 138, 568 (such as, for example, if embodied with network address assignment for VoIP communications). In an example, the call resources allocated to the session originator for the temporary half-duplex session can be maintained and re-used during the full-duplex session, such that the originator's call resources need not be torn down and brought up again. Thus, the half-duplex session may only be terminated in the sense that a return-path is added upon conversion to full-duplex in an example.
Accordingly,
After accepting the half-duplex communication session in 154, the session target determines whether the announced half-duplex communication session has the potential to be transitioned to a full-duplex session. In other words, announced half-duplex communication sessions are typically half-duplex in nature. Indeed, even in
Alternatively, if the session target determines that the communication session is initially a half-duplex session but has the further potential of being transitioned to a full-duplex session in 156, then the session target prompts a user thereof with regard to whether the user wishes to ‘answer’ the call, 164. In other words, to answer the call in this case means to participate in the communication session as another speaker, which means to transition the session to full-duplex. In an alternative example, the prompting of 164 can be skipped and the session target can be forced to transition the session to full-duplex (e.g., if the incoming communication request of 150 is configured to force acceptance of the session). The session target determines whether the user has accepted the prompt, 158. If not, the session target either transmits a call reject message to the GCS 134, 160. In this case, the call reject message can be configured either (i) to reject the full-duplex nature of the call while permitting the session target to continue to participate in the PTT session in a half-duplex nature as a listener, or (ii) to reject the session entirely and drop the session altogether. Alternatively, instead of transmitting a call reject message, the session target can simply refrain from sending a second call accept message at 162, where the GCS 134 will interpret the lack of a second call accept message as a rejection of the full-duplex transition. In another embodiment, the second call accept (full duplex) is made optional and the originator can consider reception of media from the target as an implicit acknowledgment that the target has accepted full duplex mode.
Otherwise, if the session target determines to answer the call (e.g., either automatically or upon request by a user thereof) and participate in the full-duplex session, the session target sends a call accept message to the GCS 134 that indicates that the temporary half-duplex session can now transition to a full-duplex session (e.g., as in 552 of
After sending the announce message to the target device 12 in 178, the group communication server 134 determines whether the target device 12 has accepted the full-duplex communication session, 180. For example, the determination of 180 can be that the target device 12 has accepted the full-duplex communication session if the target device 12 sends a call acceptance message in 162 of
While
In this embodiment, it is assumed that the call originator 200 and call target 206 are both provisioned with PTT/full-duplex clients for selectively switching their session between full-duplex and half-duplex. In particular, the example of
While
Returning to
Next, the regional dispatcher 202 sends instructions to a media control unit 204 (e.g., a server that works with the regional dispatcher 202 for handling the exchange of media for a particular communication session) to handle the actual exchange of media between the call originator 200 and call target 206 during the communication session, 827. The media control unit 204 sends a CONTACT (mcu_info) message to the call originator 200, 830, and the call target 206, 833, that includes information with regard to how each call participant can send information to the media control unit 204. The call originator 200 and call target 206 each send CONTACT ACK (accept) messages responsible to the CONTACT messages from 830 and 833 in 836 and 839, respectively. Next, the media control unit 204 arbitrates the exchange of media between the call participants during a full-duplex portion of the communication session, 842. In other words, the media exchanged between the call originator 200 and call target 206 can flow in either direction, or in both directions.
In the embodiment of
Accordingly, the call originator 200 determines whether to request that the communication session be transitioned from full-duplex to half-duplex with the call originator 200 to be the floor-holder after the duplex transition, 845. As noted above, a transition from full-duplex to half-duplex can be desired so as to conserve system resources (e.g., if only the call originator 200 has been doing most of the speaking), to reduce the cost of the session to the call originator 200, etc. While this determination is shown in 845 as being made by the call originator 200, it will be appreciated that the call target 206 may also have the option of requesting such a transition in at least one embodiment, although this aspect has been omitted from
If the call originator 200 determines not to request that the communication session be transitioned from full-duplex to half-duplex in 845, the process returns to 842 and the full-duplex session continues. Otherwise, if the call originator 200 determines to request that the communication session be transitioned from full-duplex to half-duplex in 845, the call originator 200 sends an ASK (half-duplex) message to the media control unit 204, 848, and the media control unit sends an ATN (half-duplex) message to the call target 206, 851. The ATN (half-duplex) message functions as a request for the call target 206 to consent to the transition from full-duplex to half-duplex, or at least to inform the call target 206 that the duplex transition is taking place. Accordingly, assume the target device 206 responds to the ATN (half-duplex) message by sending an ATX (accept) message, 854, and the media control unit 204 sends a FYI (updated) message to the call originator 200 to indicate that the communication session can now be transitioned to half-duplex, 857. The call originator 200 thereby sends a floor-request message to the media control unit 204, 860, and the media control unit 204 sends a floor-grant message back to the call originator 200, 863. The call originator 200 thereafter sends media over its allocated half-duplex channel to the media control unit 204, 866, which then forwards the media to the call target 206, 869.
During this half-duplex portion of the communication session, the call target 206 determines whether to transition the call back to full-duplex (e.g., so that a user of the call target 206 can speak), 872. If the call target 206 determines not to request that the communication session be transitioned from half-duplex to full-duplex in 872, the process returns to 869 and the half-duplex session continues. Otherwise, if the call target 206 determines to request that the communication session be transitioned from half-duplex to full-duplex in 872, the call target 206 sends an ASK (full-duplex) message to the media control unit 204, 875, and the media control unit sends an ATN (full-duplex) message to the call originator 200, 878. The ATN (full-duplex) message functions as a request for the call originator 200 to consent to the transition from half-duplex to full-duplex, or at least to inform the call originator 200 that the duplex transition is taking place. Accordingly, assume the call originator 200 responds to the ATN (full-duplex) message by sending an ATX (accept) message, 881, and the media control unit 204 sends a FYI (updated) message to the call originator 200 to indicate that the communication session can now be transitioned to full-duplex, 884. Thereafter, media can be exchanged between the call originator 200 and call target 206 via full-duplex protocols, 887.
In the embodiment of
While
Referring to
Referring to
Otherwise, if the group communication server 134 determines that the full-duplex channel for the full-duplex communication session is established in 216, then the communication session is handed over to an appropriate device (such as active call controller 78) and the communication session is thereafter supported as a full-duplex session at least between devices 10 and 12, 220, and the process of
Otherwise, if the target device is available at 232, the group communication server 134 sets-up the half-duplex communication session, 236. Half-duplex media (e.g., such as voice data) from the requesting device is received and buffered at the group communication server 134, 238, and then the initial full-duplex communication session is requested by the group communication server 74 to be terminated by the appropriate device controlling the full-duplex communication session (e.g., such as active call controller 78), 240. Alternatively, if the group communication server 134 itself was controlling the full-duplex communication session, it is appreciated that the request of 240 need not be sent and the full-duplex communication session can simply be dropped by the group communication server 134.
After terminating the full-duplex portion of the session in 240, the buffered half-duplex media from 238 is delivered to the target device(s), 242.
Referring to
In another embodiment the target communication device 12 is embodied with selective control of forcing the full-duplex communication, the method can include the target communication device 12 selectively allowing the forcing of the establishment of the full-duplex communication, and thereby selectively allowing the activation of the microphone 115 (e.g., in contrast to
Further, while above-described embodiments include references to signaling messages that are specific to particular implementations and/or protocols (e.g., ASK, ATN, CALL, ANNOUNCE, etc.) it will be appreciated that these signals can be modified as appropriate in embodiments directed to other implementations and/or protocols. In other words, the CALL message may correspond to any type of call request message in other embodiments, the ANNOUNCE message may correspond to any type of messages that announces a communication session in other embodiments, and so on.
A client device, referred to herein as a user equipment (UE), may be mobile or stationary, and may communicate with a radio access network (RAN). As used herein, the term “UE” may be referred to interchangeably as an “access terminal” or “AT,” a “wireless device,” a “subscriber device,” a “subscriber terminal,” a “subscriber station,” a “user terminal” or UT, a “mobile terminal,” a “mobile station” and variations thereof. Generally, UEs can communicate with a core network via the RAN, and through the core network the UEs can be connected with external networks such as the Internet. Of course, other mechanisms of connecting to the core network and/or the Internet are also possible for the UEs, such as over wired access networks, WiFi networks (e.g., based on IEEE 802.11, etc.) and so on. UEs can be embodied by any of a number of types of devices including but not limited to PC cards, compact flash devices, external or internal modems, wireless or wireline phones, and so on. A communication link through which UEs can send signals to the RAN is called an uplink channel (e.g., a reverse traffic channel, a reverse control channel, an access channel, etc.). A communication link through which the RAN can send signals to UEs is called a downlink or forward link channel (e.g., a paging channel, a control channel, a broadcast channel, a forward traffic channel, etc.). As used herein the term traffic channel (TCH) can refer to either an uplink/reverse or downlink/forward traffic channel.
Referring to
A server 1370 is shown as connected to the Internet 1375, the core network 1340, or both. The server 1370 can be implemented as a plurality of structurally separate servers, or alternately may correspond to a single server. The server 1370 is configured to support one or more communication services (e.g., Voice-over-Internet Protocol (VoIP) sessions, Push-to-Talk (PTT) sessions, group communication sessions, social networking services, etc.) for UEs that can connect to the server 1370 via the core network 1340 and/or the Internet 1375, and/or to provide content (e.g., web page downloads) to the UEs.
The communication device 1400 includes logic configured to receive and/or transmit information 1405. In an example, if the communication device 1400 corresponds to a wireless communications device (e.g., UE 10, 12, 100, 102 or 110, AP 1325, a BS, Node B or eNodeB in the RAN 1320, etc.), the logic configured to receive and/or transmit information 1405 can include a wireless communications interface (e.g., Bluetooth, WiFi, 2G, CDMA, W-CDMA, 3G, 4G, LTE, etc.) such as a wireless transceiver and associated hardware (e.g., an RF antenna, a MODEM, a modulator and/or demodulator, etc.). In another example, the logic configured to receive and/or transmit information 1405 can correspond to a wired communications interface (e.g., a serial connection, a USB or Firewire connection, an Ethernet connection through which the Internet 1375 can be accessed, etc.). Thus, if the communication device 1400 corresponds to some type of network-based server (e.g., server 1370, etc.), the logic configured to receive and/or transmit information 1405 can correspond to an Ethernet card, in an example, that connects the network-based server to other communication entities via an Ethernet protocol.
In a further example, the logic configured to receive and/or transmit information 1405 can include sensory or measurement hardware by which the communication device 1400 can monitor its local environment (e.g., an accelerometer, a temperature sensor, a light sensor, an antenna for monitoring local RF signals, etc.). The logic configured to receive and/or transmit information 1405 can also include software that, when executed, permits the associated hardware of the logic configured to receive and/or transmit information 1405 to perform its reception and/or transmission function(s). However, the logic configured to receive and/or transmit information 1405 does not correspond to software alone, and the logic configured to receive and/or transmit information 1405 relies at least in part upon hardware to achieve its functionality.
The communication device 1400 further includes logic configured to process information 1410. In an example, the logic configured to process information 1410 can include at least a processor. Example implementations of the type of processing that can be performed by the logic configured to process information 1410 includes but is not limited to performing determinations, establishing connections, making selections between different information options, performing evaluations related to data, interacting with sensors coupled to the communication device 1400 to perform measurement operations, converting information from one format to another (e.g., between different protocols such as .wmv to .avi, etc.), and so on. For example, the processor included in the logic configured to process information 1410 can correspond to a general purpose processor, a digital signal processor (DSP), an ASIC, a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein.
A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. The logic configured to process information 1410 can also include software that, when executed, permits the associated hardware of the logic configured to process information 1410 to perform its processing function(s). However, the logic configured to process information 1410 does not correspond to software alone, and the logic configured to process information 1410 relies at least in part upon hardware to achieve its functionality.
The communication device 1400 further includes logic configured to store information 1415. In an example, the logic configured to store information 1415 can include at least a non-transitory memory and associated hardware (e.g., a memory controller, etc.). For example, the non-transitory memory included in the logic configured to store information 1415 can correspond to RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. The logic configured to store information 1415 can also include software that, when executed, permits the associated hardware of the logic configured to store information 1415 to perform its storage function(s). However, the logic configured to store information 1415 does not correspond to software alone, and the logic configured to store information 1415 relies at least in part upon hardware to achieve its functionality.
The communication device 1400 further optionally includes logic configured to present information 1420. In an example, the logic configured to present information 1420 can include at least an output device and associated hardware. For example, the output device can include a video output device (e.g., a display screen, a port that can carry video information such as USB, HDMI, etc.), an audio output device (e.g., speakers, a port that can carry audio information such as a microphone jack, USB, HDMI, etc.), a vibration device and/or any other device by which information can be formatted for output or actually outputted by a user or operator of the communication device 1400. For example, if the communication device 1400 corresponds to UE 110 as shown in
The communication device 1400 further optionally includes logic configured to receive local user input 1425. In an example, the logic configured to receive local user input 1425 can include at least a user input device and associated hardware. For example, the user input device can include buttons, a touchscreen display, a keyboard, a camera, an audio input device (e.g., a microphone or a port that can carry audio information such as a microphone jack, etc.), and/or any other device by which information can be received from a user or operator of the communication device 1400. In a further example, the logic configured to receive local user input 1425 can be omitted for certain communication devices, such as network communication devices that do not have a local user (e.g., network switches or routers, remote servers such as the server 1370, etc.). The logic configured to receive local user input 1425 can also include software that, when executed, permits the associated hardware of the logic configured to receive local user input 1425 to perform its input reception function(s). However, the logic configured to receive local user input 1425 does not correspond to software alone, and the logic configured to receive local user input 1425 relies at least in part upon hardware to achieve its functionality.
While the configured logics of 1405 through 1425 are shown as separate or distinct blocks, it will be appreciated that the hardware and/or software by which the respective configured logic performs its functionality can overlap in part. For example, any software used to facilitate the functionality of the configured logics of 1405 through 1425 can be stored in the non-transitory memory associated with the logic configured to store information 1415, such that the configured logics of 1405 through 1425 each performs their functionality (i.e., in this case, software execution) based in part upon the operation of software stored by the logic configured to store information 1415. Likewise, hardware that is directly associated with one of the configured logics can be borrowed or used by other configured logics from time to time. For example, the processor of the logic configured to process information 1410 can format data into an appropriate format before being transmitted by the logic configured to receive and/or transmit information 1405, such that the logic configured to receive and/or transmit information 1405 performs its functionality (i.e., in this case, transmission of data) based in part upon the operation of hardware (i.e., the processor) associated with the logic configured to process information 1410.
Generally, unless stated otherwise explicitly, the phrase “logic configured to” as used throughout this disclosure is intended to invoke an embodiment that is at least partially implemented with hardware, and is not intended to map to software-only implementations that are independent of hardware. Also, it will be appreciated that the configured logic or “logic configured to” in the various blocks are not limited to specific logic gates or elements, but generally refer to the ability to perform the functionality described herein (either via hardware or a combination of hardware and software). Thus, the configured logics or “logic configured to” as illustrated in the various blocks are not necessarily implemented as logic gates or logic elements despite sharing the word “logic.” Other interactions or cooperation between the logic in the various blocks will become clear to one of ordinary skill in the art from a review of the embodiments described below in more detail.
The various embodiments may be implemented on any of a variety of commercially available server devices, such as server 1500 illustrated in
Most of the embodiments described above generally relate to server-implemented duplex transitions for sessions that are triggered by input from the UEs participating in a communication session. For example, in
Referring to
While the communication session is being conducted with the first duplex characteristic at 1600, the server monitors a set of session parameters 1605. The set of session parameters monitored by the server at 1605 can include, but is not limited to, one or more of (i) a number of implied floor interruptions that occur within a given time period (e.g., floor requests that are denied by the server, whereby the server tracks floor request signaling from participants or non-talkers and can optionally convey the rejected floor request indications to the requestor as well as other participants in the communication session including the floorholder, etc.), (ii) a number of actual floor interruptions that occur within a given period of time (e.g., a number of granted floor requests, etc.), (iii) a number of session participants providing high-rate media (e.g., speech media, video media, etc.), (iv) a population statistic that characterizes vocoders (e.g., whether the session participants share a common vocoder type, have many different vocoder types, etc.), channel types (e.g., dedicated LTE bearers, default LTE bearers, WiFi connections, etc.) or device characteristics (e.g., whether or not one or more of the session participants are provisioned with particular call button types such as a soft PTT button, a physical or dedicated PTT button, a physical or dedicated Media Share button, a physical or dedicated instant call button, or any combination thereof, whether or not one or more of the session participants are provisioned with farfield speaker which can imply a PTT association, while a lack of a farfield speaker could imply a PTX call or Instant call association because an earpiece can potentially be better suited for non-PTT sessions such as Instant calls or PTX calls, whether or not one or more of the session participants have audio capability, etc.) of session participants participating in the communication session, (v) an amount of media activity exchanged during the communication session, such as a media-less period during the communication session, (vi) a duplex preference of one or more high-priority session participants that have either joined or exited the given communication session, (vii) a session quality of the given communication session, (viii) a number of session participants in the communication sessions reaching a threshold or falling below the threshold during the communication session, or (ix) any combination thereof.
At 1610, the server detects one or more changes to at least one session parameter in the set of session parameters based on the monitoring of 1605. In response to the detection of 1610, the server automatically determines to transition the communication session from the first duplex characteristic to a second duplex characteristic, 1615. As used herein, the determination of 1615 is “automatic” in the sense that the server is not simply instructed to initiate the duplex transition by an outside entity, such as the originating device or any of the target devices for the communication session. Rather, the determination of 1615 is made by the server itself, such as the duplex transition decision is server-initiated. Also, it will be appreciated that the second duplex characteristic is different than the first duplex characteristic. For example, if the first duplex characteristic is half-duplex, the second duplex characteristic can be full-duplex, and if the first duplex characteristic is full-duplex, the second duplex characteristic can be half-duplex. Also, it is possible for duplex transitions to occur between half-duplex (single floorholder) and half-duplex (multiple floorholders, or hybrid-duplex) sessions. So, the first and/or second duplex characteristics can be half-duplex (single floorholder), half-duplex (multiple floorholders, or hybrid-duplex), full-duplex or even a non-duplex media share which is discussed below in more detail. In response to the determination of 1615, the server transitions the communication session from the first duplex characteristic to the second duplex characteristic, 1620. In order to facilitate the transition of 1620, the server 1370 can optionally send signaling to the session participants that notifies them of the session type change (i.e., half-duplex to full-duplex, full-duplex to half-duplex, etc.).
The process can be executed on a call-basis or a group-basis. For example, a first group may wish to implement server-triggered duplex transitions based on different criteria than a second group, and the server can implement different duplex transition rules for different groups. Alternatively, each call can be configured with call-specific transition rules, which can be set up when the session is initiated by an originating or administrative user. In an example, a certain session participant (e.g., a high ranking busy user) carries a bias of preference (e.g., for media share) and therefore any party or group communicating with the high ranking busy user will trigger the server to establish or transition an associated communication session to Media Share as the preferred duplex mode. This preference can potentially move with the aforementioned user to all calls (1-1 and 1-N) and can be triggered whenever the server ascertains a transition to another duplex mode is mandated.
Further, as will be discussed below in more detail with respect to
When the communication session is switched to the media share session, the server can continue to monitor one or more of the set of session parameters or other call conditions to determine whether to transition the media share session back to a real-time duplex communication (e.g., full-duplex or half-duplex). For example, the server can determine that poor call conditions that prompted the media share transition at 1625 are no longer present, such that the real-time duplex communication can be resumed. Accordingly, the server can optionally transition the communication session from media share to real-time duplex communication at 1630. As will be described below (e.g., with respect to
At this point, the server 1370 determines that the number of floor requests (e.g., four) received within a given period of time (e.g., 30 seconds) exceeds a floor request threshold, 1745 (e.g., as in 1605-1615 of
As will be appreciated,
At this point, the server 1370 determines that the number of floor transfers or changes (e.g., three, UE 1 to UE 2, then UE 2 to UE 3, then UE 3 to UE 1) received within a given period of time (e.g., 30 seconds) exceeds a floor change threshold, 1760B (e.g., as in 1605-1615 of
At some point during the full-duplex communication session, the server 1370 determines that the number of session participants providing high-rate media exceeds a threshold, 1810. For example, ten (10) different session participants may be talking at the same time, which causes difficulties in mixing the media and also potentially produces garbled media output frames. Alternatively, four (4) different session participants may be providing video feeds which can consume significant resources to mix in real-time. The threshold evaluated at 1810 can thereby be media-type specific (e.g., three for session participants providing video feeds, four for session participants providing audio feeds, etc.).
Based on the determination of 1810, the server 1370 transitions the communication session from full-duplex to half-duplex, 1815 (e.g., as in 1620 of
Based on the determination of 1905, the server 1370 sets up the communication session between UEs 1 . . . N as half-duplex with UE 1 as floorholder, 1910 (e.g., as in 1600 of
Based on the determination of 1920, the server 1370 transitions the communication session from half-duplex to full-duplex, 1925 (e.g., as in 1620 of
At some point during the full-duplex phase of the communication session, the server 1370 determines that the population statistic of participating UEs is again more suitable for half-duplex instead of full-duplex, 1935 (e.g., similar to 1905). Based on the determination of 1935, the server 1370 transitions the communication session from full-duplex to half-duplex with UE 1 as the floorholder, 1940 (e.g., as in 1620 of
Referring to
At some later point in time, UE X joins the communication session, 2020, and the server 1370 determines that UE X does not support Vocoder 1. In this case, to avoid vocoder translation for full-duplex, the server 1370 transitions the communication session from full-duplex to half-duplex with UE X as floorholder, 2025. In order to facilitate the transition of 2025, the server 1370 can optionally send signaling to the session participants that notifies them of the session type change (i.e., full-duplex to half-duplex). UE X provides half-duplex media to the server 1370 using a different vocoder (“Vocoder 2”), 2030, the server 1370 converts UE X's media into Vocoder 1, 2035, and the server 1370 forwards the converted half-duplex media to UEs 1 . . . N using Vocoder 1, 2040. Eventually, UE X leaves the communication session, 2045, which triggers the server 1370 to transition the communication session back to full-duplex because the session participants (i.e., UEs 1 . . . N) once again share the common vocoder (i.e., Vocoder 1), 2050. After the full-duplex transition of 2050, UEs 1 . . . N once again transmit full-duplex media to each other via the server 1370 using Vocoder 1, 2055. In order to facilitate the transition of 2050, the server 1370 can optionally send signaling to the session participants that notifies them of the session type change (i.e., half-duplex to full-duplex).
At some later point in time during the full-duplex phase of the communication session, the server 1370 determines that UE 1 has joined the communication session, 2105 and that UE 1 is a high-priority user with a half-duplex preference, 2110. Based on the determination of 2110, the server 1370 transitions the communication session to half-duplex with UE 1 as floorholder, 2115 (e.g., as in 1600 of
At some point during the half-duplex phase of the communication session, UE 1 leaves the communication session, 2125. Because the communication session was previously transitioned to half-duplex due to UE 1's half-duplex preference, UE 1 leaving the communication session causes the server 1370 to transition the communication session from half-duplex to full-duplex, 2130 (e.g., as in 1620 of
At some point during the half-duplex phase of the communication session, the server 1370 determines that UE 1 has joined the communication session, 2205, and that UE 1 is a high-priority user with a full-duplex preference, 2210. This contrasts with
At some point during the full-duplex phase of the communication session, UE 1 leaves the communication session, 2225. Because the communication session was setup as full-duplex due to UE 1's full-duplex preference, UE 1 leaving the communication session causes the server 1370 to transition the communication session from full-duplex to half-duplex with one of UEs 2 . . . N as floorholder, 2230 (e.g., as in 1620 of
At some point during the full-duplex phase of the communication session, the server 1370 determines that one or more session quality parameters have dropped below a first session quality threshold, 2310. For example, the one or more session quality parameters can include an average frame error rate (FER), packet error rate (PER) experienced by UEs 1 . . . N, Link Quality Feedback (e.g., calculated from application layer estimation of a percentage of voice/Vocoder frames lost vs. delivered), bandwidth available relative to a threshold level of bandwidth required for a certain call type, packet arrival rate (e.g., a High Standard Deviation on packet arrival rate implies higher level of jitter), QoS state changes, radio technology state changes (e.g., too many WiFi/3g/4g transitions causing client to register with new IP addresses, when this happens server decide to transition to a media share session to exchange voice notes or text to avoid bad user experience on real-time voice communication, etc.) or any combination thereof.
In response to the determination of 2310, the server 1370 transitions the communication session from full-duplex to half-duplex with UE 1 as floorholder, 2315 (e.g., as in 1620 of
At some point during the half-duplex phase of the communication session, the server 1370 determines that one or more session quality parameters have dropped below a second session quality threshold, 2325. The one or more session quality parameters evaluated at 2325 may be the same or different than the one or more session quality parameters evaluated at 2310. Generally, the second session quality threshold will be lower than the first session quality threshold.
In response to the determination of 2325, the server 1370 terminates the real-time phase of the communication session and sets up a media share session between UEs 1 . . . N, 2330. During the media share session, UEs 1 . . . N can send media files to each other, but the target UEs may not receive these media files at the same time and also may not be capable of real-time communication, 2335 and 2340. In order to facilitate the transition of 2330, the server 1370 can optionally send signaling to the session participants that notifies them of the session type change (i.e., half-duplex to media share).
While
Table 1 (below) illustrates a number of duplex transitions that may occur based on various session parameters, some of which have already been described in detail above with respect to
Referring to Table 1 (above), Examples 1 through 12 map to aspects from
Referring to Table 1 (above), with respect to Example 15, a media-less period (or silent period) that exceeds a threshold while the communication session is being conducted via full-duplex can trigger a transition to half-duplex so as to conserve resources. With respect to Example 16, a number of session participants with a half-duplex device characteristic (e.g., a Physical PTT button, farfield speaker(s), the lack of a dedicated Instant call button or Media Share button, etc.) exceeding a number of session participants without the half-duplex device characteristic (e.g., a Soft PTT button instead of a Physical PTT button, an earpiece instead of farfield speaker(s), presence of a physical or dedicated Instant call button or physical or dedicated Media share button, etc.) while the communication session is being conducted via full-duplex can trigger a transition to half-duplex. For example, in an example where the half-duplex device characteristic is a Physical PTT button, operators of UEs with Physical PTT buttons can be expected to prefer half-duplex PTT-type sessions over full-duplex VoIP-type sessions. Likewise, with respect to Example 17, a number of session participants without the half-duplex device characteristic (e.g., a Soft PTT button instead of a Physical PTT button, an earpiece instead of farfield speaker(s), presence of a physical or dedicated Instant call button or a physical or dedicated Media share button, etc.) exceeding a number of session participants with the half-duplex device characteristic (e.g., a Physical PTT button, farfield speaker(s), the lack of a physical or dedicated Instant call button or a physical or dedicated Media Share button, etc.) while the communication session is being conducted via half-duplex can trigger a transition to full-duplex.
Referring to Table 1 (above), with respect to Example 18, a number of session participants with Dedicated LTE Bearers (QoS) exceeding a number of session participants with Default LTE Bearers (no QoS) while the communication session is being conducted via half-duplex can trigger a transition to full-duplex. Likewise, with respect to Example 19, a number of session participants with Default LTE Bearers (no QoS) exceeding a number of session participants with Dedicated LTE Bearers (QoS) while the communication session is being conducted via full-duplex can trigger a transition to half-duplex. Similarly, in Example 20, a threshold number or percentage of session participants being connected via WiFi while the communication session is being conducted via half-duplex can trigger a transition to full-duplex (e.g., or conversely, a lack of the threshold number or percentage of session participants being connected via WiFi while the communication session is being conducted via full-duplex can trigger a transition to half-duplex).
Referring to Table 1 (above), with respect to Example 21, a threshold number or percentage of session participants lacking audio capability (e.g., tablet PCs without microphones or speakers, etc.) while the communication session is being conducted via half-duplex or full-duplex can trigger a transition to a media share session. Likewise, with respect to Example 22, a threshold number or percentage of session participants having audio capability (e.g., tablet PCs drop out of media share session, etc.) while the communication session is being conducted via media share can trigger a transition to back to either half-duplex or full-duplex.
Those of skill in the art will appreciate that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
Further, those of skill in the art will appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the various embodiments.
The various illustrative logical blocks, modules, and circuits described in connection with the embodiments disclosed herein may be implemented or performed with a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
The methods, sequences and/or algorithms described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal (e.g., access terminal). In the alternative, the processor and the storage medium may reside as discrete components in a user terminal.
In one or more exemplary embodiments, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage media may be any available media that can be accessed by a computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. Also, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. Disk and disc, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk and blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
While the foregoing disclosure shows illustrative embodiments, it should be noted that various changes and modifications could be made herein without departing from the scope of the various embodiments as defined by the appended claims. The functions, steps and/or actions of the method claims in accordance with the various embodiments described herein need not be performed in any particular order. Furthermore, although elements of the various embodiments may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated.
The present application for patent is a Continuation-in-Part of U.S. patent application Ser. No. 13/955,896, entitled “SETTING UP A FULL-DUPLEX COMMUNICATION SESSION AND TRANSITIONING BETWEEN HALF-DUPLEX AND FULL-DUPLEX DURING A COMMUNICATION SESSION WITHIN A WIRELESS COMMUNICATION SYSTEM,” filed on Jul. 31, 2013, which is a divisional of U.S. patent application Ser. No. 12/538,618, entitled “SETTING UP A FULL-DUPLEX COMMUNICATION SESSION AND TRANSITIONING BETWEEN HALF-DUPLEX AND FULL-DUPLEX DURING A COMMUNICATION SESSION WITHIN A WIRELESS COMMUNICATION SYSTEM,” filed on Aug. 10, 2009, which in turn claims priority to Provisional Application No. 61/188,590 entitled “SYSTEM AND METHOD FOR TRANSITIONING BETWEEN HALF-DUPLEX AND FULL-DUPLEX COMMUNICATION SESSIONS BETWEEN WIRELESS COMMUNICATION DEVICES” filed on Aug. 11, 2008, each of which is assigned to the assignee of the subject application and is incorporated herein by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
61188590 | Aug 2008 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 12538618 | Aug 2009 | US |
Child | 13955896 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13955896 | Jul 2013 | US |
Child | 14497800 | US |