The present invention relates to push-to-talk (PTT) communications between mobile terminals, and more particularly to PTT communications with local mobile terminals in a local area of an inviting mobile terminal.
PTT communication between groups of mobile terminals, such as cellular telephones, personal data assistants, etc., is becoming increasingly popular with wireless communication customers. Currently, these capabilities support two different types of group sessions: instant group sessions and chat group sessions.
An instant group session enables a user of an inviting mobile terminal to establish a group session with a predefined group of mobile terminals. For example, a user may populate one or more user groups in advance by selecting and storing a list of mobile terminals for each user group in the memory of a PTT controller in a wireless network. Each predefined user group has an associated group ID. To establish the instant group session, the inviting mobile terminal selects one of the predefined user groups and requests that the PTT controller establish the group session with the selected user group. In response, the PTT controller retrieves the selected user group from memory using the associated group ID, evaluates any access requirements, and sends an invite message to each mobile terminal identified by the selected user group that satisfies any access requirements. The PTT controller then establishes the group session between the inviting mobile terminal and any invited mobile terminals that accept the invitation.
The instant group session also enables a user of an inviting mobile terminal to establish a group chat with an ad hoc group of manually selected mobile terminals. The inviting mobile terminal provides the ad hoc group to the PTT controller and requests that the PTT controller establish a group session with the selected mobile terminals. In response, the PTT controller sends an invite message to each mobile terminal identified in the ad hoc request that satisfies any access requirements. The PTT controller then establishes the group session between the inviting mobile terminal and any invited mobile terminals that accept the invitation.
Alternatively, a chat group session enables a user of an inviting mobile terminal to participate in a group chat that focuses on a particular subject of interest. In this type of group session, the PTT controller does not send invite messages. Instead, the PTT controller establishes a group session based on the subject of interest so that other mobile terminals may join and leave the group session at will. The structure of such group chats may be based on open or closed groups. When the established group session involves an open group, any mobile terminal with PTT capabilities may join the group session. When the established group session involves a closed group, only mobile terminals associated with the closed group may join the group session.
In all instances, conventional PTT systems establish group sessions based on defined groups of other POC users known to the inviting user and/or defined topics of interest. However, current PTT systems do not have the capability to establish group sessions based on the geographical location of mobile terminals relative to the location of an inviting mobile terminal.
The present invention comprises a method and apparatus that establishes a local ad hoc group session between an inviting mobile terminal and local mobile terminals in the proximity of the inviting mobile terminal. According to an exemplary embodiment, the inviting mobile terminal activates a push-to-talk (PTT) input to initiate a local ad hoc group session between the inviting mobile terminal and one or more local mobile terminals within a local area of the inviting mobile terminal. The inviting mobile terminal then sends a request to a network PTT controller to establish the local ad hoc group session. The PTT controller comprises a presence server and a PTT server. The presence server identifies local mobile terminals within a local area of the inviting mobile terminal. In response to receiving the PTT request from the inviting mobile terminal, the PTT server establishes the group session between the inviting mobile terminal and one or more local mobile terminals within the local area.
In exemplary embodiments of the present invention, the PTT server establishes the local ad hoc group session by sending an invite message to local mobile terminals identified by the presence server. The local ad hoc group session is established between the inviting mobile terminal and one or more local mobile terminals that accept to the invite message.
Some embodiments of the PTT controller also include a core server and/or a group server. The group server filters the list of local mobile terminals, identified by the presence server, to identify preferred local mobile terminals, e.g. based on access options. The core server receives the request from the inviting mobile terminal and forwards a list of the local mobile terminals identified by the presence server to the PTT server.
The wireless communication network 5 includes a Radio Access Network (RAN) 10, a core network 70, a Packet Data Network (PDN) 84, and a plurality of mobile terminals 22. The core network 70 includes a Serving GPRS Support Node (SGSN) 72, a Gateway GPRS Support Node (GGSN) 74, an Equipment Identity Register (EIR) 76, a Mobile Switching CenterNisitor Location Register (MSC/VLR) 78, a Location Register (LR) 80, and a Home Location Register (HLR) 82. SGSN 72 routes packet data traffic between the RAN 10 and the PDN 84 via GGSN 74, where the GGSN 74 is the gateway between the core network 70 and external PDNs 84. EIR 76 registers equipment data regarding the mobile terminals 22 currently in the network 5, and typically is used for security purposes. MSC/VLR 78 allows efficient coordination between the SGSN 72 of the GPRS system and the MSC of the GSM system. HLR 82 stores a user profile, a packet data protocol address, an SGSN address, and the current location of each mobile terminal whose home network is the current core network 70. LR 80 stores the user profile and the current location of each mobile terminal 22 whose home network is a core network different from the current core network 22. Additional details regarding the operation of a GPRS network are not pertinent to the present invention, and therefore, are not discussed further herein. However, the interested reader may read “GSM Phase 2+General Packet Radio Service GPRS: Architecture, Protocols, and Air Interface,” published in IEEE Communications Surveys, Third Quarter 1999, Vol. 2 No. 3 for further details.
The core network 70 communicates with one or more mobile terminals 22 via RAN 10. RAN 10 includes one or more base station controllers (BSC) 12 that communicate with one or more base transceiver stations (BTS) 14. Each BSC 12 is responsible for managing the BTSs 14 that communicate with BSC 12. Each BTS 14 communicates with each mobile terminal 22 located within the geographic cell of the BTS 14 via BTS antenna 16.
Mobile terminals 22 communicate with PTT controller 90 within PDN 84 via BTS 14, BSC 12, SGSN 72, and GGSN 74. As discussed further below, PTT controller 90 within PDN 84 establishes a group session between two or more mobile terminals 22 based on PTT options selected by the user of an inviting mobile terminal 22. It will be appreciated that any of the mobile terminals 22 shown in
Transceiver 32 is a fully functional cellular radio transceiver for transmitting signals to and receiving signals from BTS 14. Those skilled in the art will appreciate that transceiver 32 may operate according to any known standard, as discussed above. Memory 34 represents the entire hierarchy of memory in a mobile terminal 22, and may include both random access memory (RAM) and read-only memory (ROM). Data and computer program instructions required for operation are stored in non-volatile memory, such as EPROM, EEPROM, and/or flash memory, which may be implemented as discrete devices, stacked devices, or integrated with microprocessor 36.
Microprocessor 36 controls the operation of mobile terminal 22 according to the programs stored in memory 34, and further may control the operation of a location processor 37 incorporated with microprocessor 36. Location processor 37 may determine the location of mobile terminal 22 and may comprise any known position locating system, such as a Global Positioning System (GPS). Further, the location processor 37 may define a local area 20 relative to the location of mobile terminal 22. More than one local area 20 may be defined for the inviting mobile terminal 22, and the defined local area may be based on a standard local area definition stored in memory 34 or based on user input. As used herein, the term “local area” describes any geographic region surrounding an inviting mobile terminal 22 by a defined distance. For example, a local area 20 may be defined as all or some portion of a BTS cell currently servicing the inviting mobile terminal 22 (as shown in
Microprocessor 36 may also include a PTT processor 52 that initiates a PTT session according to user specified options, as discussed further below. While location processor 37 and PTT processor 52 are shown as part of microprocessor 36, it will be understood that location processor 37 and/or PTT processor 52 may be separate components within mobile terminal 22. In any event, microprocessor 36 may comprise a single microprocessor or multiple microprocessors. Suitable microprocessors may include, for example, both general purpose and special purpose microprocessors and digital signal processors.
User interface 40 enables a user to exchange information with the mobile terminal 22, and includes a display 42, a microphone 44, a speaker 46, and an input device 50. Display 42, such as a liquid crystal display, allows operators to see dialed digits, images, call status, menu options, and other service information. Microphone 44 converts speech into electrical audio signals for processing by audio processing circuit 38. Speaker 46 converts audio signals provided by audio processing circuit 38 into audible sounds that are projected from mobile terminal 22. Input device 50 enables the user to enter data, to enter commands, and to select options, and may comprise a keypad 54, a touchpad, joystick 56, pointing device, switches, pushbuttons 58, or any other form of computer input device. The mobile terminal 22 may use two or more input devices to perform the same or different functions.
Some embodiments of the present invention may also include voice activation capabilities that enable a user to select and activate features of the mobile terminals 22 with voice commands. In these embodiments, the user may access the PTT processor and initiates a group session by issuing one or more voice commands into microphone 44. It will be understood that other means for accessing the PTT processor 52, such as separate control buttons on housing 46, may also be used. For example, housing 46 may include a multi-directional control button 58, or optionally, a dedicated control button (not shown), that the user manipulates to select desired PTT option(s).
In any event, after the user selects the desired PTT option(s), the associated mobile terminal 22 becomes an inviting mobile terminal and sends a request to the PTT controller 90 to establish the selected group session. The mobile terminal 22 may communicate with PTT controller 90 using Session Initiation Protocol (SIP), defined in IETF RFC 3050, 3264, 3265, 3311, etc., by The Internet Engineering Task Force. Alternatively, the mobile terminal 22 may communicate with PTT controller 90 using some other industry standard protocol, such as defined in the PTT over Cellular (PoC) Standard by the Open Mobile Association standardization group, for example. PTT controller 90 establishes the group session for the inviting mobile terminal 22 based on the selected PTT option, as discussed further below. Once the group session is established, the user may, for example, control the communications with the group with multi-directional control button 58 by pressing and releasing multi-directional control button 58 to send and receive PTT communications, respectively.
Group server 94, also known as the Group and List Management Server (GLMS), is responsible for managing the various PTT groups, contact lists, and access lists associated with each mobile terminal 22. Each PTT group comprises a collection of PoC user identities defined by a potential inviting mobile terminal 22, as discussed above. A contact list is a kind of address book accessible by mobile terminals 22 for establishing ad hoc group sessions. Contact list management, as performed by group server 94, includes operations that allow a mobile terminal 22 to store and retrieve the contact list(s) stored in group server 94.
The access lists in group server 94 define access restrictions for each mobile terminal 22. A mobile terminal 22 uses the access lists maintained by group server 94 to provide or deny access to other mobile terminals 22 for future group sessions. In general, an access list may include a block list and a grant list. The block list contains a list of mobile terminals 22 that are blocked from contacting a mobile terminal 22 using PTT communications or are otherwise blocked from participating in a group session with the mobile terminal 22. The grant list contains a list of mobile terminals 22 that are allowed to contact a mobile terminal 22 using PTT communications or are otherwise allowed to participate in a group session with the mobile terminal 22. For example, user J may decide to permanently block user K and user L from participating in any group sessions with user J. To implement this decision, the user updates their block list to include user J and user K. The updated list is then stored in group server 94. In some embodiments, the group server 94 may provide these lists directly to the PoC server 98.
In some PTT controllers 90, the group server 94 and the core server 92 exchange information directly. However, as shown in
In addition to managing the presence and location information, presence server 96 may also define a local area 20 associated with each inviting mobile terminal 22. In an exemplary embodiment, the presence server may use information provided by a GPS, Cell Id, or other position locating system to locate the inviting mobile terminal 22 and define a local area 20 surrounding the inviting mobile terminal 22, as described above. Alternatively, the presence server 96 may store a location of the inviting mobile terminal 22 and/or a local area 20 defined by the inviting mobile terminal 22 in memory 97.
Once the local area 20 is defined, the presence server 96 may identify mobile terminals 22 located within the local area 20 and may group them into a local ad hoc group 24 (
For each mobile terminal 22 located in local area 20 in
Once the group of mobile terminals 22 has been identified, the core server 92 forwards the appropriate identification information for the group of mobile terminals 22, along with a group session establishment request, to the PoC server 98. Alternatively, the POC server may have a direct interface to the presence server and may negotiate the identification and reception of the group of terminals 22 over that interface. In response, the PoC server 98 sends an invite message to each identified mobile terminal 22. The PoC server 98 then establishes and manages the PTT connection between the inviting mobile terminal 22 and one or more mobile terminals 22 that accept the invitation.
Turning now to
To establish a chat group session, as shown in
While not shown in
Turning now to
The PTT controller 90 then processes the request and identifies local mobile terminals 22, indicated by letter B in
The presence server 96 may then optionally send an access request to the group server 94 for an evaluation of the local mobile terminals 22-B identified by the presence server 96 (arrow 1B). The group server 94 then provides an access response that identifies all mobile terminals in the list of local mobile terminals 22-B that satisfy one or more group server requirements, such as media type restrictions, access control restrictions, topic of interest restrictions identified by the user (arrow 1C). Further, because the access restrictions may include a new access type related to local ad hoc group sessions, the group server 94 may also provide an access response that identifies all mobile terminals in the list of local mobile terminals 22-B that satisfy the local ad hoc group session access requirements. The presence server 96 returns a list of local mobile terminals 22-B to the core server 92. The list includes mobile terminals 22-B in the local area 20 of the inviting mobile terminal 22-A that satisfy the requirements of the group server 94 (arrow 1D). Core server 92 then sends the resulting group list to the PoC server 98 with a group setup request to establish a local ad hoc group session (arrow 1E).
The present application provides a method and apparatus for establishing a local ad hoc group session between an inviting mobile terminal 22-A and one or more local mobile terminals 22-B, which may be unknown to the inviting mobile terminal 22-A, in a local area 20 of the inviting mobile terminal 22-A. Private citizens as well as local authorities may disseminate information and/or provide assistance using these local ad hoc group sessions. For example, an end user who is lost in an unfamiliar city may use a local ad hoc group session to request directions from nearby end users who may be more familiar with the region. In addition, local authorities may notify any end users proximate an accident or a new construction site of lane closings or slow traffic. Local ad hoc group sessions may also enable end users in a given local area 20 with a common interest, such as sports, politics, etc., to converse on their favorite topics. As such, the local ad hoc group sessions described herein provide useful and valuable options for cellular customers interested in additional PTT capabilities.
The present invention may, of course, be carried out in other ways than those specifically set forth herein without departing from essential characteristics of the invention. The present embodiments are to be considered in all respects as illustrative and not restrictive, and all changes coming within the meaning and equivalency range of the appended claims are intended to be embraced therein.