Wireless communication networks typically provide a number of different services, such as voice and data communication services. Most wireless communication networks offer a single type of voice communication services known as interconnect voice communication services (also referred to as circuit-switched voice communication services). Interconnect voice calls typically utilize full-duplex communications, and allow parties participating in the call to listen and talk simultaneously. Interconnect voice calls require setting up a connection between the parties prior to beginning communications, and accordingly do not allow for casual communications to be sent to other parties on the network without first dialing up the parties.
Another type of voice communication services is push-to-talk (PTT) voice communication services (also referred to as dispatch or walkie-talkie communication services). Like a walkie-talkie, PTT calls utilize half-duplex communication between parties. PTT calls require floor control to ensure that only one party has permission to talk at any particular time during the call. For example, Sprint Nextel Corporation's Direct Connect® service provides PTT communications supported on the Integrated Digital Enhanced Network (iDEN®), which is a Time Division Multiple Access (TDMA) network. PTT communication services have also been employed in private wireless communication networks, such as those deployed by taxi cab companies or emergency service agencies (e.g. police and fire departments).
PTT services such as Direct Connect® can support PTT communications between a pair of users (i.e., a private call) and PTT communications among a group of users (i.e., a group call). A PTT device is identifiable in a PTT network by a PTT network address, such as a Universal Fleet Member Identifier (UFMI) associated with the iDEN® network. In order to make or receive a PTT call to and from the iDEN® network, a device must be assigned a UFMI.
In addition to mobile devices, desktop dispatch clients have been developed that allow a user to establish a PTT connection over the Internet via a personal computer using a dedicated application executed on the computer. However, existing desktop dispatch clients have several disadvantages. For example, a permanent network ID, such as a UFMI that enables PTT connections, must be assigned to each desktop dispatch client. There is a substantial cost associated with providing and managing each UFMI on the network, such that it is costly to assign a permanent UFMI to many desktop dispatch clients. Also, the need for a permanent UFMI inhibits casual users from making PTT calls from their personal computers. In addition, desktop dispatch clients reside on a specific personal computer, and cannot be accessed from other devices. Therefore, the user is limited to making and receiving PTT calls from a single computer. Moreover, the dedicated application is written for a specific operating system, and can only be used on computers running the specific operating system (e.g. Windows or Mac OS).
According to an aspect of the invention, there is provided a method of enabling a PTT connection between a first user on a first network and a second user on a second network. According to the method, a web application registration server on the first network receives and authenticates login information from the first user, forwards the login information to a PTT application server, and assigns a temporary network identity from a pre-allocated pool of network identities to a client of the first user. The second network is a multiple-access network for cellular devices.
The temporary network identity may be valid only during a registered PTT session that begins with the assigning of the temporary network identity by the web application registration server. The PTT registration session may expire if the registered PTT session is inactive for a predetermined duration. Alternatively, the PTT registration session may expire if the first user logs out of the client and a registration timer expires. If the registered PTT session expires, the temporary network identity may be returned to the pool of network identities that is managed by the web application registration server. The temporary network identity may be a UFMI or any valid PTT identifier.
The login information may include a user name and a password. The login information may be received from the first user via the client on a website that hosts the web application registration server. Alternatively, the login information may be received from the first user via a desktop PTT client.
The first network may be an Internet protocol-based network. The second network may be a TDMA network. The web application registration server may also receive a permanent network identity from the provisioning server after assigning the temporary network identify to the client of the first user.
According to another aspect of the invention, there is provided a method of conducting a PTT call between a first user on a first network and a second user on a second network. Before initiating the call, the first user logs into a client that registers with a web application registration server on the first network, and a temporary network identify is assigned to the client by the web application registration server. According to the method, a PTT connection is established between the first user and the second user when the first user successfully initiates a call. For example, the first user may select the second user's address from the address book or the recent calls list, or manually enter the second user's address. After a predetermined length of time, it is determined whether the temporary network identity remains valid. If the temporary network identity has become invalid, the PTT registration is disabled.
The temporary network identity may be valid only during a registered PTT session that begins with the assignment of the temporary network identity to the client by the web application registration server. The registered PTT session may expire if the client is inactive for a predetermined duration and a registration timer expires. Alternatively, the registered PTT session may expire if the first user logs out of the PTT client and a registration timer expires. If the registered PTT session expires, the temporary network identity may be returned to a pool of network identities that is managed by the web application registration server. For example, the temporary network identity may be a UFMI, a Mobile Directory Number (MDN), a Session Initiation Protocol (SIP) address, or any other PTT identity.
The first network may be an Internet protocol-based network. The second network may be a TDMA network or any other digital network.
Other objects, advantages, and novel features of the present invention will become apparent from the following detailed description of the invention when considered in conjunction with the accompanying drawings.
As shown in
As shown in
Once the registration is complete, the web application registration server 100 issues a message 95 to the web PTT client 115 to confirm that the service registration is complete. The message 95 includes the temporary UFMI and the registration timer T2. The web application registration server 100 also sends a message 90 with a copy of the service registration information to the web PTT server 300, which responds with a message 97 acknowledging the service registration. The web application registration server 100 then waits for the web PTT client 115 to re-register before the registration timer T2 expires. If the web application registration server 100 does not receive a re-registration message from the web PTT client 115 before the registration timer T2 expires, the web application registration server 100 will delete the registration, reclaim the temporary UFMI, and inform the web PTT server 300 of the expired registration status of the web PTT client 115. If the web application registration server 100 receives a re-registration for the same web PTT client 115 before the registration timer T2 expires, the web application registration server 100 updates the registration database, resets the registration timer T2, and informs the web PTT server 300 of the updated registration status.
Once the web PTT client 115 receives a confirmation message from the web application registration server 100 that the registration is complete, the web PTT client 115 obtains the address of the web PTT server 300, the assigned temporary UFMI, and the registration timer T2. The web PTT client 115 will keep track of two timers: an activity timer and the registration timer T2. The activity timer is user-selectable, and allows the Internet user 10 to log back into the web PTT client 115 before the registration timer T2 expires to activate the session again. If the Internet user 10 does not utilize the web PTT client 115 before the activity timer expires, the web PTT client 115 will automatically log out the Internet user 10 until the Internet user 10 logs back in. However, the web PTT client 115 does not deregister the web PTT client 115 until the registration timer T2 expires. The registration timer T2 will expire if the Internet user 10 is not logged in and the web PTT client 115 does not re-register with the web application registration server 100. If the Internet user 10 is logged in to the web PTT client 115 and the registration timer T2 expires, the Internet user 10 may be prompted to continue the session and the web PTT client 115 may re-register on behalf of the Internet user 10. A similar process will apply for the desktop PTT client 120 regarding user login, but the activity timer and the registration timer T2 timer can be different for the desktop PTT client 120.
Both the web PTT client 115 and the desktop PTT client 120 access the web PTT server 300 for PTT services. The web application registration server 100 may provide many of the address book functions of the Direct Connect® service, such as accessing an online contacts list and a group list. The web PTT server 300 provides many of the functions of the Direct Connect® service, such as initiating Call Alerts, PTT calls, and group calls. The web PTT client 115 and desktop PTT client 120 may provide multiple dialog boxes that include a contact list, a call history list, a call origination/reception dialog including a PTT button for call initiation, a Call Alert mechanism, and buttons for ringer volume, speaker volume, and muting. The default window for the web PTT client 115 or desktop PTT client 120 may be the contacts list or the call history list, and mapped keyboard keys may be designated to operate specific functions. Individual icons may be used to designate call types, such as Direct Call, Group Call, and Call Alert. Users of the web PTT client 115 and the desktop PTT client 120 can also communicate via PTT dialogs with each other in accordance with exemplary embodiments of the present invention.
Before a PTT session, the presence status of the Internet user 10 may be designated as Available, Not Available, Busy On A Call, or Do Not Disturb. The Internet user 10 may designate his status as Do Not Disturb. The other status designations are automatically assigned based on the status of the Internet user 10. Icons may be used to designate the presence status of other web PTT clients 115.
As shown in
Specifically, the web PTT client 115 sends a call message 140 to the web PTT server 300 that includes the UFMIs of the web PTT client 115 and the destination party. The web PTT server 300 determines routing to the destination party at 145 and routes the call to the iDEN GW 370. The iDEN GW 370 then sends a call request to the DAP 310, which in turn pages and finds the destination party (i.e. the mobile station 360) at 155. The DAP 310 returns a call success message 160 to the iDEN GW 370, which in turn sends a floor grant message 170 to the web PTT server 300. The web PTT server 300 sends the floor grant message 170 to the web PTT client 115 and sets up a voice path to the iDEN GW 370. The web PTT client 115 then provides a “chirp” tone to the Internet user 10 at 175, signaling that the PTT call has been successfully set up and the Internet user 10 can begin speaking. Once the PTT call has been established, the dialog box at the web PTT client 115 may identify all PTT participants, including the Talker, and indicate when the floor is open and when the PTT call has ended. When the Internet user 10 speaks, the audio will be captured by the web PTT client 115 and a message 180 with the audio will be sent to the mobile station 360 via the web PTT server 300 along the speech path.
The Internet user 10 may terminate the PTT call by closing the dialog box or by depressing the End key within the dialog box. Further, if the PTT call is inactive for a predetermined length of time, such as six seconds, a hang timer at the web PTT server 300 will terminate the PTT connection between the users. The Internet user 10 may reestablish the PTT connection by pressing the PTT button from the address book or call history list as long as the registration remains valid. The Internet user 10 may be notified of the need to log into the web PTT client 115 again in order to maintain the web PTT registration. Alternatively, the registration information may be sent automatically to the web application registration server 100 upon any action by the Internet user 10, such as an automatic login. In this case, the Internet user 10 may or may not be notified that an additional login was performed.
In exemplary embodiments of the present invention, a PTT connection begins with the successful login of the Internet user 10 to the web PTT client 115, which in turn registers for PTT service with the web application registration server 100. The completed registration will cause the assignment of the temporary UFMI that remains valid during the PTT registration timer T2, allowing the Internet user 10 to originate PTT calls via the web PTT server 300 and to receive calls from any device or client that knows the temporary UFMI assigned to the web PTT client 115. For example, if the Internet user 10 logs into the web PTT client 115, registers with the web application registration server 100, and initiates a call to the mobile station 360, the web PTT server 300 will identify the Internet user 10 by the temporary UFMI. The mobile station 360 can then return the call by selecting the temporary UFMI from the call history list, as long as the temporary UFMI remains valid (i.e. the registration remains valid).
However, once the temporary UFMI assigned to the web PTT client 115 becomes invalid, the temporary UFMI can no longer be used to enable a PTT connection with the Internet user 10. The temporary UFMI becomes invalid when the PTT registration session is terminated by the registration timer T2. The registration timer T2 allows the temporary UFMI to remain valid only for a predetermined length of time after the web PTT client login session has become inactive, as indicated by the expiration of the activity timer. For example, the expiration of the registration timer T2 may cause the temporary UFMI to become invalid if the web PTT client 115 does not re-register before then. The activity timer may be set in advance for the web PTT client 115 to ensure that the Internet user 10 is timed out, and the web PTT client 115 will only have to re-register before the expiration of the registration timer T2 if the user 10 is actively logged in. In addition, the temporary UFMI may become invalid when the Internet user 10 logs out of the web PTT client 115 or desktop PTT client 120 and the registration timer T2 expires. However, the mere termination of a PTT connection by the hang timer described above does not invalidate the temporary UFMI until the registration timer T2 expires at the web PTT client 115 or desktop PTT client 120.
As discussed above, once the temporary UFMI becomes invalid, the Internet user 10 can no longer use the temporary UFMI to enable a PTT connection. Instead, if the Internet user 10 wishes to enable a new PTT connection, the Internet user 10 will be required to again log into the web PTT client 115 or desktop PTT client 120, which in turn registers with the web application registration server 100 again in order to obtain a new temporary UFMI, in accordance with the method shown in
Once the temporary UFMI becomes invalid, the temporary UFMI is returned to a pre-allocated pool of UFMIs and may be recycled to enable another web PTT registration at the web application registration server 100. Using temporary UFMIs reduces the cost of providing PTT service to many users, because many web PTT users can be accommodated with a smaller pre-allocated pool of UFMIs. For example, a pool including several hundred thousand temporary UFMIs can be used to enable PTT connections for several million users at various times, thereby reducing the cost in comparison with a system that uses only permanent UFMIs. Another advantage of using a temporary pool of network IDs is that the web PTT users can obtain PTT service via self-registration, and do not need to rely on the network providers to provision them into the web application registration server 100, unlike a desktop client with a permanent network ID.
However, if the Internet user 10 prefers to have a dedicated UFMI, a permanent UFMI may be assigned to the Internet user 10 via the web application registration server 100. The Internet user 10 may request a permanent UFMI after a temporary UFMI has been assigned by the web application registration server 100 with an appropriate billing agreement. Once a permanent UFMI has been assigned, the web PTT client 115 or desktop PTT client 120 can make and receive PTT calls at any time, and no temporary UFMI reassignment will be necessary. The web PTT client 115 or desktop PTT client 120 will longer receive temporary UFMIs from the web application registration server 100 and can cache the permanent UFMI. Along with managing the pool of UFMIs, the web application registration server 100 determines whether a web PTT client 115 or desktop PTT client 120 has been assigned a temporary UFMI or a permanent UFMI, and provides the appropriate services to these clients.
The web PTT server 300 may also provide interoperability between the Internet user 10 and a private wireless communication network, such as a land mobile radio (LMR) network. As shown in
In addition, the web PTT client 115 and the desktop PTT client 120 may support an open Application Programming Interface (API) via a Software Development Kit (SDK). The web PTT client 115 may be embeddable in other web applications to support PTT calls to and from iDEN® users. The desktop PTT client 120 may be embeddable in other desktop applications like an Office suite to support PTT calls to and from iDEN® users in addition to the normal office functions.
Although exemplary embodiments have been described in connection with iDEN® as the radio access network, the present invention can employ any type of radio access network. For example, the radio access network can be a Code Division Multiple Access (CDMA) network or High Speed Packet Access (HSPA) network that supports PTT over Cellular (POC). In this case the call identifier would be a Mobile Directory Number or a Session Initiation Protocol (SIP) address instead of a UFMI.
The foregoing disclosure has been set forth merely to illustrate the invention and is not intended to be limiting. Since modifications of the disclosed embodiments incorporating the spirit and substance of the invention may occur to persons skilled in the art, the invention should be construed to include everything within the scope of the appended claims and equivalents thereof.