U.S. patent application number 15/469259 was filed with the patent office on 2017-07-13 for synchronizing floor control and media sharing in a half-duplex ptt system.
The applicant listed for this patent is QUALCOMM Incorporated. Invention is credited to Kameron Kerger, Mark Aaron Lindner, Gabriel Moura Da Silva.
Application Number | 20170201552 15/469259 |
Document ID | / |
Family ID | 47993063 |
Filed Date | 2017-07-13 |
United States Patent
Application |
20170201552 |
Kind Code |
A1 |
Lindner; Mark Aaron ; et
al. |
July 13, 2017 |
SYNCHRONIZING FLOOR CONTROL AND MEDIA SHARING IN A HALF-DUPLEX PTT
SYSTEM
Abstract
The disclosure is directed to synchronizing media sharing in a
communication group. An embodiment transmits one or more media
files to one or more members of the communication group, receives,
after the transmitting, a selection of one of the one or more media
files, and transmits, in response to the receiving, a request to
start a group call with the one or more members of the
communication group or a request to acquire the floor of the group
call. An embodiment receives, at a user device, one or more media
files from a member of the communication group, receives, after the
receiving the one or more media files, a talk spurt from the member
and a reference to one of the one or more media files, and displays
the one of the one or more media file during the talk spurt.
Inventors: |
Lindner; Mark Aaron;
(Verona, WI) ; Kerger; Kameron; (San Diego,
CA) ; Moura Da Silva; Gabriel; (San Diego,
CA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
QUALCOMM Incorporated |
San Diego |
CA |
US |
|
|
Family ID: |
47993063 |
Appl. No.: |
15/469259 |
Filed: |
March 24, 2017 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
13686383 |
Nov 27, 2012 |
|
|
|
15469259 |
|
|
|
|
12141493 |
Jun 18, 2008 |
9210202 |
|
|
13686383 |
|
|
|
|
60945102 |
Jun 20, 2007 |
|
|
|
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
H04L 5/14 20130101; H04W
76/45 20180201; H04W 4/10 20130101; H04L 65/403 20130101; H04L
65/4061 20130101 |
International
Class: |
H04L 29/06 20060101
H04L029/06; H04W 4/10 20060101 H04W004/10; H04L 5/14 20060101
H04L005/14 |
Claims
1. A method for selectively sending one or more group-directed
media originated from an originating wireless communication device
to one or more target wireless communication devices across a
wireless communication network, comprising: receiving a data
notification at a group communication server that is configured to
control group communications between a group of wireless
communication devices that are members of a communication group,
wherein the data notification has the one or more group-directed
media embedded within, and is received from the originating
wireless communication device and directed to the one or more
target wireless communication devices of the members of the
communication group across the wireless communication network;
determining a media-handling capability of the one or more target
wireless communication devices, wherein upon a determination that a
group-directed media sent from the originating wireless
communication device to at least one target wireless communication
device of the members of the communication group is not of a type
known as receivable by the at least one target wireless
communication device, the method further comprises: not
distributing the group-directed media to the at least one target
wireless communication device; sending the group-directed media to
a data store; and sending a link to the stored group-directed media
to the at least one target wireless communication device.
2. The method of claim 1, further comprising sending the data
notification received from the originating wireless communication
device to the one or more target wireless communication devices
across the wireless communication network.
3. The method of claim 1, further comprising sending the
group-directed media from a computer device on the wireless
communication network through a dispatch call handler (DCH) to the
at least one target wireless communication device.
4. The method of claim 1, further comprising: storing, by a
computer device on the wireless communication network, information
on the media-handling capability of each of the target wireless
communication devices; and retrieving, by a dispatch call handler
(DCH), the information on the media-handling capability of the at
least one target wireless communication device upon receiving the
data notification containing the one or more group-directed media
intended for the at least one target wireless communication
device.
5. The method of claim 1, further comprising sending a preview of
the group-directed media to the at least one target wireless
communication device.
6. The method of claim 1, further comprising: receiving a request
to add a new media type to a group communication from the
originating wireless communication device; verifying the at least
one target wireless communication device supports the new media
type; and notifying the at least one target wireless communication
device of addition of the new media type to the group
communication.
7. The method of claim 1, further comprising selectively permitting
the at least one target wireless communication device to access the
stored group-directed media based on identifiying the at least one
target wireless communication device as a member of the
communication group.
8. A group communication server configured for selectively sending
one or more group-directed media originated from an originating
wireless communication device to one or more target wireless
communication devices across a wireless communication network, the
group communication server configured to: receive a data
notification that is configured to control group communications
between a group of wireless communication devices that are members
of a communication group, wherein the data notification has the one
or more group-directed media embedded within, and is received from
the originating wireless communication device and directed to the
one or more target wireless communication devices of the members of
the communication group across the wireless communication network;
determine a media-handling capability of the one or more target
wireless communication devices, wherein upon a determination that a
group-directed media sent from the originating wireless
communication device to at least one target wireless communication
device of the members of the communication group is not of a type
known as receivable by the at least one target wireless
communication device, the group communication server is further
configured to: not distribute the group-directed media to the at
least one target wireless communication device; send the
group-directed media to a data store; and send a link to the stored
group-directed media to the at least one target wireless
communication device.
9. The group communication server of claim 8, further configured to
send the data notification received from the originating wireless
communication device to the one or more target wireless
communication devices across the wireless communication
network.
10. The group communication server of claim 8, further configured
to send the group-directed media through a dispatch call handler
(DCH) to the at least one target wireless communication device.
11. The group communication server of claim 8, further configured
to: store information on the media-handling capability of each of
the target wireless communication devices; and retrieve the
information on the media-handling capability of the at least one
target wireless communication device upon receiving the data
notification containing the one or more group-directed media
intended for the at least one target wireless communication
device.
12. The group communication server of claim 8, further configured
to send a preview of the group-directed media to the at least one
target wireless communication device.
13. The group communication server of claim 8, further configured
to: receive a request to add a new media type to a group
communication from the originating wireless communication device;
verify the at least one target wireless communication device
supports the new media type; and notify the at least one target
wireless communication device of addition of the new media type to
the group communication.
14. The group communication server of claim 8, further comprising
selectively permitting the at least one target wireless
communication device to access the stored group-directed media
based on identifying the at least one target wireless communication
device as a member of the communication group.
15. A group communication server configured for selectively sending
one or more group-directed media originated from an originating
wireless communication device to one or more target wireless
communication devices across a wireless communication network, the
group communication server comprising: means for receiving a data
notification that is configured to control group communications
between a group of wireless communication devices that are members
of a communication group, wherein the data notification has the one
or more group-directed media embedded within, and is received from
the originating wireless communication device and directed to the
one or more target wireless communication devices of the members of
the communication group across the wireless communication network;
means for determining a media-handling capability of the one or
more target wireless communication devices, wherein upon a
determination that a group-directed media sent from the originating
wireless communication device to at least one target wireless
communication device of the members of the communication group is
not of a type known as receivable by the at least one target
wireless communication device, the group communication server
further comprises: means for not distributing the group-directed
media to the at least one target wireless communication device;
means for sending the group-directed media to a data store; and
means for sending a link to the stored group-directed media to the
at least one target wireless communication device.
16. The group communication server of claim 15, further comprising
means for sending the data notification received from the
originating wireless communication device to the one or more target
wireless communication devices across the wireless communication
network.
17. The group communication server of claim 15, further comprising
means for sending the group-directed media through a dispatch call
handler (DCH) to the at least one target wireless communication
device.
18. The group communication server of claim 15, further comprising:
means for storing information on the media-handling capability of
each of the target wireless communication devices; and means for
retrieving the information on the media-handling capability of the
at least one target wireless communication device upon receiving
the data notification containing the one or more group-directed
media intended for the at least one target wireless communication
device.
19. The group communication server of claim 15, further comprising:
means for sending a preview of the group-directed media to the at
least one target wireless communication device; and means for
selectively permitting the at least one target wireless
communication device to access the stored group-directed media
based on identifying the at least one target wireless communication
device as a member of the communication group.
20. The group communication server of claim 15, further comprising:
means for receiving a request to add a new media type to a group
communication from the originating wireless communication device;
means for verifying the at least one target wireless communication
device supports the new media type; and means for notify the at
least one target wireless communication device of addition of the
new media type to the group communication.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation of U.S. application Ser.
No. 13/686,383, filed on Nov. 27, 2012, which is a
continuation-in-part of U.S. application Ser. No. 12/141,493, filed
on Jun. 18, 2008, which claims the benefit of U.S. Provisional
Patent Application Ser. No. 60/945,102, filed on Jun. 20, 2007. The
contents of these documents are incorporated herein by
reference.
BACKGROUND OF THE INVENTION
[0002] 1. Field of the Invention
[0003] The present invention relates to point-to-point or
point-to-multipoint wireless communications systems. More
specifically, the present invention relates to systems and methods
for sharing various forms of media between members of a
communicating group of wireless telecommunication devices.
[0004] 2. Description of the Related Art
[0005] In wireless telecommunication devices, such as cellular
phones, PDAs, mini-laptops, and advanced pagers, the devices
typically communicate over long distances by bridging telephone
calls through existing cellular telephone networks and passing data
packets across the network. These wireless devices often have
limited to significant data processing and computing capability,
and can accordingly send and receive software programs, in addition
to voice, across the telephone network.
[0006] There exists a wireless telecommunication service that
provides a quick one-to-one or one-to-many 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. A PTT
communication connection is typically initiated by a single
button-push on the wireless device that activates a half-duplex
link between the speaker and each member device of the group and
once the button is released, the device can receive incoming PTT
transmissions once the button is released. In some arrangements,
the PTT speaker will have the "floor" where no other group member
can speak while the speaker is speaking. 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.
[0007] In existing PTT systems, member devices will only
communicate voice data between the devices in an active group
communication. It is difficult to include other data in the group
communication because of the size of the data and the device
resources necessary to handle non-voice data. The existing mobile
devices therefore send non-voice data, such as graphics, multimedia
and other data files, through specific data channels established
between the device and a wireless communication network.
[0008] Accordingly, it would be advantageous to provide a system
and method for a wireless device member of a group to send media to
others member of the PTT target group. The system and method should
be able to accommodate group-directed media data of large size
without compromising the integrity of other PTT communications or
unduly utilizing device resources. It is thus to the provision of
such a system and method to allow group-directed media among
wireless devices in a PTT group that the present invention is
primarily directed.
SUMMARY OF THE INVENTION
[0009] Briefly described, the present invention includes a system,
method, and wireless communication device that allows the sharing
of media between communication groups on wireless communication
networks. In the system, the user can attach a data file, data
block, or other application-specific data, which can be a picture,
an audio clip, a voice mail message, and the like, and send it to
one or more other member's wireless devices. The distribution data
path for the group-direct media can be independent from the same
data path of the PTT voice communications, or can be independent of
it such that the feature can be accessed at any time, whether the
user is participating in a PTT call or not. In one embodiment, the
originator of the group-directed media can select a target list of
members to receive the data file, and the target list can be one or
more user addresses, one or more group addresses, or a combination
of the two.
[0010] In one embodiment, if the originator of the group-directed
media is participating in a PTT call, the originator can elect to
send the file to one or more participants of the same PTT call by
uploading the file to a server and then the server or the
originator can notify the target wireless devices that a file is
available for download. The target users are provided the option to
allow or decline the downloading of the file on to the target
client. Alternately, the target users are provided a pointer, such
as a hyperlink, to the stored file where they can later obtain that
file without necessarily downloading to the wireless communication
device. Furthermore, the system can be embodied such that the
target user can periodically browse or poll the file server to
check and see if media is available for download.
[0011] In one embodiment, the system for sharing media in a group
communication among a plurality of wireless communications devices
includes at least one wireless communication device that is a
member of a communication group of wireless communication devices
that communicate with each other in direct group communications
across a wireless communication network, such as PTT voice
communications. The wireless communication device will selectively
send group-directed media to other members of the communication
group, and at least one group communication computer device stores
information on communication groups on the wireless communication
network that includes the member wireless communication devices of
one or more communication groups. The group communication computer
device selectively receives group-directed media from a sending
wireless communication device of a communication group and sends
the group-directed media to the other member wireless communication
devices of the communication group for the sending wireless
communication device. The group communication computer device can
be selectively in communication with a data store to store the
group-directed media for the member wireless communication devices
to access the media. The wireless communication device may also be
a desktop, laptop or other stationary computer platform that can
have a wired connection to Internet or other network, and otherwise
engage in group-communications with the other wireless
communication devices.
[0012] In one embodiment, the method for sharing media in a group
communication among a plurality of wireless communications devices
on a wireless communication network includes receiving at a group
communication computer device the group-directed media sent from a
wireless communication device to other members of the communication
group for the wireless communication device, with the wireless
communication device a member of a communication group of wireless
communication devices that communicate with each other in direct
group communications across a wireless communication network The
group communication computer device storing information including
the member wireless communication devices of one or more
communication groups, and then sending the group-directed media
from the group communication computer device to one or more of the
other member wireless communication devices of the communication
group for the sending wireless communication device.
[0013] Various embodiments are directed to synchronizing media
sharing in a communication group. An embodiment transmits one or
more media files to one or more members of the communication group,
receives, after the transmitting, a selection of one of the one or
more media files, and transmits, in response to the receiving, a
request to start a group call with the one or more members of the
communication group or a request to acquire the floor of the group
call. An embodiment receives, at a user device, one or more media
files from a member of the communication group, receives, after the
receiving the one or more media files, a talk spurt from the member
and a reference to one of the one or more media files, and displays
the one of the one or more media file during the talk spurt.
[0014] The present system and method are therefore advantageous in
that a wireless communication device member of a communication
group has the ability to share media among the other member devices
of the communication group, such as a PTT target group, either
during an ongoing group communication or separately therefrom. The
system and method allows the group-directed media of any size to be
communicated without unduly utilizing device resources. Moreover,
the group-directed media can be in virtually any data type and
include active and accessible computer applications.
[0015] Other objects, features, and advantages of the present
invention will become apparent after review of the Brief
Description of the Drawings, Detailed Description of the Invention,
and the Claims.
BRIEF DESCRIPTION OF THE DRAWINGS
[0016] FIG. 1 is a representative diagram of a wireless network
with a designated PTT group of wireless telecommunication devices
communicating with a group communication server and other computer
devices across the wireless network.
[0017] FIG. 2 is a representative diagram of one embodiment of a
wireless network in a common cellular telecommunication
configuration, having a group communication server control
communications between the wireless telecommunication devices of
PTT group members.
[0018] FIG. 3 is a block diagram illustrating the computer platform
of the wireless telecommunication device with PTT capability.
[0019] FIG. 4 is a diagram of one embodiment of the software layers
of the communication group application, with a PTT client and a
group-directed media client.
[0020] FIG. 5 is a call flow diagram of one embodiment of the
establishment of a PTT communication and a group-directed media
transmission between communication group member wireless
communication devices.
[0021] FIG. 6 is a call flow diagram of one embodiment of the
group-directed media transmission occurring during a shared floor
as a PTT client on the transmitting wireless communication
device.
[0022] FIG. 7 is a call flow diagram of one embodiment of the
group-directed media transmission occurring on a different floor
from a PTT client on the transmitting wireless communication
device.
[0023] FIG. 8 is a call flow diagram of one embodiment of the
system establishing immediate group-directed media transmission to
multiple target devices across the wireless communication
network.
[0024] FIG. 9 is a call flow diagram of one embodiment of the
distribution to target members of a file preview of a
group-directed media.
[0025] FIG. 10 is a call flow diagram of one embodiment of a file
retrieval of stored group-directed media by a member of the
communication group to which the group-directed media was
originally sent.
[0026] FIG. 11 is a flowchart of one embodiment of a method for a
wireless communication device sending group-directed media to a
communication group.
[0027] FIG. 12 is a flowchart of one embodiment of a group
communication computer device receiving and selectively storing or
transmitting group-directed media.
[0028] FIG. 13 is a flowchart of an exemplary group communication
in which media files are pre-shared before a group call is
setup.
[0029] FIG. 14 is a flowchart of an exemplary group communication
in which media files are pre-shared before a group call is
setup.
[0030] FIG. 15 is a flowchart of an exemplary group communication
in which media files are not pre-shared before a group call is
setup.
[0031] FIG. 16 is a flowchart of an exemplary group communication
in which media files are shared before or during a group call.
[0032] FIG. 17 is a flowchart of an exemplary group communication
in which media files are shared before a group call is setup.
[0033] FIG. 18 is a flowchart of exemplary first and second group
communications, where media files are shared before the first group
communication.
DETAILED DESCRIPTION OF THE INVENTION
[0034] Aspects of the various embodiments are disclosed in the
following description and related drawings directed to specific
embodiments are illustrated. Alternate embodiments may be devised
without departing from the scope of the invention. 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.
[0035] The word "exemplary" is used herein to mean "serving as an
example, instance, or illustration." Any embodiment described
herein as "exemplary" is not necessarily to be construed as
preferred or advantageous over other embodiments Likewise, the term
"embodiments" or "embodiments of the invention" does not require
that all embodiments include the discussed feature, advantage or
mode of operation.
[0036] The terminology used herein is for the purpose of describing
particular embodiments only and is not intended to be limiting of
the various embodiments. As used herein, the singular forms "a,"
"an," and "the" are intended to include the plural forms as well,
unless the context clearly indicates otherwise. It will be further
understood that the terms "comprises," "comprising," "includes,"
and/or "including," when used herein, specify the presence of
stated features, integers, steps, operations, elements, and/or
components, but do not preclude the presence or addition of one or
more other features, integers, steps, operations, elements,
components, and/or groups thereof.
[0037] 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 aspects of 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.
[0038] 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.
[0039] With reference to the figures in which like numerals
represent like elements throughout, FIG. 1 illustrates one
embodiment of the system 10 for sharing group media among one or
more wireless telecommunication devices in a PTT group 12, such as
the wireless telephone 14, smart pager 16 and personal digital
assistant (PDA) 18, with other wireless telecommunication devices
across a wireless network 20. In the system 10, each wireless
telecommunication device 14,16,18 is capable of selectively
directly communicating across the wireless communication network 20
with a target set of one or more other wireless telecommunication
devices of the plurality. For example, the target set for mobile
telephone 14 can be all devices in the communication group 12 or a
subset thereof, such as pager 16 and PDA 18.
[0040] In this embodiment, the wireless telecommunication device
(such as mobile telephone 14) sends a flag to at least the group
communication computer device, shown here as server 32, which is
present on a server-side LAN 30 across the wireless network 20, to
indicate that the wireless device is present, i.e. accessible, on
the wireless network 20. The group communication computer device 32
can share this information with the set of target wireless
telecommunication devices designated by the first wireless
telecommunication device, or can also share is with other computer
devices resident on the server-side LAN 30 or accessible across the
wireless network 20. The group communication computer device 32 can
have an attached or accessible database 34 to store the group
identification data for the wireless devices. A data store 36,
shown here as file management server, is also present on the
server-side LAN 30. It should be appreciated that the number of
computer components resident on server-side LAN 30, or across the
wireless network 20, or Internet generally, are not limited.
[0041] The direct communication, such as a PTT communication, can
be established through a half-duplex channel between the
communicating wireless telecommunication device 14,16,18 and the
one or more other wireless telecommunication devices of the target
set. Also, the group communication computer device 32 can attempt
to bridge the requested direct communication with the target set if
at least one of the wireless telecommunication devices of the
target set have informed the group communication computer device 32
of their presence on the wireless network 20.
[0042] The group communication computer device 32 can also inform
the wireless telecommunication device 14,16,18 of the inability to
bridge a direct communication to the target set 12 upon none of the
wireless telecommunication devices (or at least one) of the target
set not having informed the group communication computer device 32
of their presence on the wireless network 20. Further, while the
group communication computer device 32 is shown here as having the
attached database 34 of group identification data, the group
communication computer device 32 can have group identity data
resident thereupon, and perform all storage functions described
herein.
[0043] In overview, the system 10 includes at least one wireless
communication device, such as mobile telephone 14, that is a member
of a communication group 12 of wireless communication devices that
communicate with each other in direct group communications across a
wireless communication network 20, the at least one wireless
communication device configured to selectively send group-directed
media to other members of the communication group 12. At least one
group communication computer device 32 is configured to store
information on communication groups 12 on the wireless
communication network 20, the information including the identity of
the specific member wireless communication devices of one or more
communication groups. The group communication computer device 32 is
further configured to selectively receive group-directed media from
a sending wireless communication device, such as mobile telephone
14, of a communication group 12 and send the group-directed media
to the other member wireless communication devices of the
communication group 12 for the sending wireless communication
device.
[0044] The system 10 can further include a data store 36 in
communication with the group communication computer device(s) 32,
with the group communication computer device 32 configured to send
group-directed media to the data store 36, as is further described
herein. The data store 36 configured to receive the
group-designated media from the wireless communication device (such
as mobile phone 14) and selectively permit members of the
communication group 12 for which the group-directed media was sent
to access the stored group-directed media across the wireless
communication network 20.
[0045] The group-directed media can be any type of media. For
example, the group-directed media can be graphic media, such as
pictures in JPEG, TIF, and the like, 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), and
other application-specific data or custom data for an application,
either resident at the wireless communication device 14,16,18 or in
communication therewith. The group-directed media can also be
streaming media, or an interactive session on another computer
device on the wireless communication network 20, such as a game
hosted on data store 36 or private bulletin board. For example,
participants in a game can chat via the group-communication about
the ongoing game. Also, the group-directed media could be
half-duplex video conferencing among members of the communication
group wherein the picture of the speaker is broadcast to the other
group members in substantial real-time, or in delay. The
group-directed media can also be location information, such as the
GPS coordinates or network location of the wireless communication
device 14,16,18.
[0046] The size of these media files can be very large, and because
of the potential delay of sending the media, or inability of the
receiving wireless communication device to handle the sent media,
the system 10 can use a data store 36 (or file management server or
other computer device) to store the group-directed media such that
target members of the communication group 12 can selectively access
the stored media without interrupting other PTT communications. The
data store 36 can be configured to automatically send the
group-directed media to each of the member wireless devices of the
communication group 12 upon establishing a communication link
therewith. Alternatively, in one embodiment, if the group-directed
media is stored at the data store 36, the group communication
computer device 32 or the data store 36 can send a hyperlink to the
other member wireless communication devices of the communication
group 12, that will provides a link to the stored group-directed
media at the data store 36. Upon receipt of the group-directed
media by at least one of the member wireless devices of the
communication group, the group communication computer device 32 can
send to the wireless communication device 14,16,18 sending the
group-directed media an acknowledgement that at least one member
wireless communication device of the communication group 12
received the group-directed media.
[0047] The wireless communication device 14,16,18 can send
communication group identification data to the group communication
computer device 32 at the time of requesting the group-directed
media to be sent, e.g. send a target list, and thus, the group
communication device 32 will send or store the group-directed media
to the member wireless communication devices identified in the
communication group identification data based upon a variety of
criteria as is further discussed herein. Alternately, prior to the
wireless communication device sending group-directed media, the
wireless communication device 14,16,18 can request member data for
a communication group 12 from the group communication computer
device 32, and the group communication computer device 32 can send
one or more addresses or communication group addresses to the
wireless communication device 14,16,18. In one embodiment, the
communication group computer device 32 can filter the potential
communication groups available based upon their member devices'
capability to received group-directed media.
[0048] As is further described herein, the wireless communication
device 14,16,18 can be engaged in a group communication with the
member wireless communication devices of the communication group
12, and send group-directed media during the group communication in
the same communication session, or independently therefrom.
Alternately, the group-directed media can be sent independently of
the group-communication session.
[0049] FIG. 2 is a representative diagram of one embodiment of a
wireless network in a common cellular telecommunication
configuration, having a series of group communication computer
devices (group communication servers) 32 that control
communications between the wireless communication devices of set
group members (devices 70,72,74,76) in a PTT system. The wireless
network is merely exemplary and can include any system whereby
remote modules communicate over-the-air between and among each
other and/or between and among components of a wireless network 20,
including, without limitation, wireless network carriers and/or
servers. A series of group communication servers 32 are connected
to a group communication server LAN 50. Wireless telephones can
request packet data sessions from the group communication server(s)
32 using a data service option.
[0050] The group communication server(s) 32 are connected to a
wireless service providers packet data service node (PDSN) such as
PSDN 52, shown here resident on a carrier network 54. Each PSDN 52
can interface with a base station controller 64 of a base station
60 through a packet control function (PCF) 62. The PCF 62 is
typically located in the base station 60. The carrier network 54
controls messages (generally in the form of data packets) sent to a
messaging service controller ("MSC") 58. The carrier network 30
communicates with the MSC 32 by a network, the Internet and/or POTS
("plain ordinary telephone system"). Typically, the network or
Internet connection between the carrier network 54 and the MSC 58
transfers data, and the POTS transfers voice information. The MSC
58 can be connected to one or more base stations 60. In a similar
manner to the carrier network, the MSC 58 is typically connected to
the branch-to-source (BTS) 66 by both the network and/or Internet
for data transfer and POTS for voice information. The BTS 66
ultimately broadcasts and receives messages wirelessly to and from
the wireless devices, such as cellular telephones 70,72,74,76, 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.
[0051] Cellular telephones and mobile telecommunication devices,
such as wireless telephone 14, 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 14, can download many types of applications, such as web
pages, applets, MIDlets, games and data. In wireless devices that
have designated a communication group 12 (FIG. 1), the wireless
communication device can directly connect with the other member of
the set and engage in voice and data communication. However, all
such direct communications will occur through, or at the control
of, the group communication computer device 32. All data packets of
the devices do not necessarily have to travel through the group
communication computer device 32 itself, but the group
communication computer device 32 must be able to ultimately control
the communication because it will typically be the only server-side
30 component that is aware of and/or can retrieve the identity of
the members of the communication group, or direct the identity of
the members of the communication group 12 to another computer
device
[0052] FIG. 3 is a block diagram illustrating one embodiment of the
wireless telecommunication device being a mobile telephone 14 with
a PTT button 78 that opens the direct communication to a target set
of devices, i.e. other members of the communication group 12. Other
devices and methods can be alternately used to engage in a PTT
communication, such as a "soft key" on a touch screen display,
voice command, or other methods as known in the art. The wireless
device 14 is also shown as having a graphics display 80 to the user
of the wireless device 14. The wireless device 14 includes a
computer platform 82 that can handle voice and data packets, and
receive and execute software applications transmitted across the
wireless network 20 to include the group-directed media. The
computer platform 82 includes, among other components, an
application-specific integrated circuit ("ASIC") 84, or other
processor, microprocessor, logic circuit, programmable gate array,
or other data processing device. The ASIC 84 is installed at the
time of manufacture of the wireless device and is not normally
upgradeable. The ASIC 84 or other processor executes an application
programming interface ("API") layer 86, which includes the resident
application environment, and can include the operating system
loaded on the ASIC 84. The resident application environment
interfaces with any resident programs in the memory 88 of the
wireless device. An example of a resident application environment
is the "binary runtime environment for wireless" (BREW) software
developed by QUALCOMM.RTM. for wireless device platforms.
[0053] As shown here, the wireless device can be a mobile telephone
14, with a graphics display 80, but can also be any wireless device
with a computer platform 82 as known in the art, such as a personal
digital assistant (PDA), a pager with a graphics display 80, or
even a separate computer platform 82 that has a wireless
communication portal, and may otherwise have a wired connection to
a network or the Internet. Further, the memory 88 can be comprised
of read-only memory (ROM) or random-access memory (RAM), erasable
programmable ROM (EPROM), electrically erasable programmable ROM
(EEPROM), flash cards, or any memory common to computer platforms.
The computer platform 82 can also include a local database 90 for
storage of software applications not actively used in memory 88.
The local database 90 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. The graphics display 80 can
present not only information about the ongoing group call, but also
the information on the group-directed media, to include a file
preview as is more fully described herein.
[0054] In this embodiment of the wireless device, the computer
platform 82 also includes a direct communication interface 92 that
can open the direct communication channel from the wireless device.
The direct communication interface 92 can also be part of the
standard communication interface for the wireless device which
ordinarily carries the voice and data transmitted to and from the
wireless device. The direct communication interface 92 typically is
comprised of hardware as is known in the art.
[0055] FIG. 4 is a diagram of one embodiment of the software layers
of the group application client, with a PTT facility and a
group-directed media facility. In this embodiment, the computer
platform 82 in the mobile device environment consists of a series
of software "layers" developed on top of the Mobile Station Modem
(MSM) 100 and the Advanced Mobile Subscriber Software (AMSS) 102,
developed by QUALCOMM.RTM., drives the underlying MSM chipset and
implements the software protocol stack for the entire suite of CDMA
communication technologies that include CDMA2000 1.times. and
CDMA2000 1.times.EV-DO. There is a mobile operating system layer
104, which in this embodiment is BREW.RTM., also developed by
QUALCOMM.RTM.. The mobile operating system layer 104 application
programming interfaces for chip- or device-specific operations,
while providing an isolation layer that eliminates direct contact
to the AMSS 100 and any OEM software on the computer platform. The
mobile operating system layer 104 enables application development
that uses mobile device features without having to rewrite the
application each time a new release of the device-specific software
is released. It should be noted that other software layer
configurations can be alternately used on the wireless
communication device 14,16,18 computer platform 82, such as a
Linux.RTM., Windows.RTM., or other operating system or
architecture, to implement the sharing of media as described
herein.
[0056] The PTT Client 108 is an application that offers access to
PTT services through an external interface, here shown at a
PTT-aware user interface (UI) 106. The PTT Client includes all the
functions required to enable mobile operating system 104
applications, such as the Group Media Client 110. In addition to
providing access to PTT services with the PTT Client 108, the PTT
Client 108 preferably acts as an isolation layer between all
PTT-aware applications and the interface to the group communication
computer device 102. In this embodiment, the PTT Client 108
maintains access to PTT services, responds to group communication
requests, processes all PTT-aware mobile operating system
applications requests for PTT services, processes all outgoing PTT
requests, collects and packages vocoder packets for originating PTT
talk spurts, and parses packets of vocoder data for terminated PTT
talk spurts.
[0057] The Group Media Client 110 is a mobile operating
system-based application that extends PTT services for access to
media types other than the traditional half duplex voice
communications (VoIP-PTT media). The Group Media Client 110
provides access to group-media services through an external
interface, in one embodiment being a separate API, such as a Group
Media Aware API. The Group Media Aware UI is an application that
may be developed entirely as a mobile operating system-based
application or used in combination with an AMSS 102 interface. The
Group Media Aware UI responds to user requests for group-directed
media services by invoking the appropriate APIs, such as those from
other resident PTT and group media applications 112. The Group
Media Client 110 services the requests from the user and informs
the user the result of any group-directed media request. The user
can also have setting on the Group Media Client 110, that specify
how to handle an incoming notification that indicates there is a
file to be downloaded from the file management server (data store
36). For example, the Group Media Client 110 can elect to have the
file download commence immediately or to allow the target user to
be prompted to determine whether to download the file.
[0058] Once a user has identified which contacts to include in a
PTT group communication, the user selects a media file to transmit.
From within UI 106, the user can browse to a particular media file
or search for a particular media file. For example, the user can
browse to the particular media file using a hierarchical folder
structure or a listing of PTT-able media files. Files within the
folders or search results can be displayed as filenames,
thumbnails, icons, etc. The listing can be a gallery of thumbnails,
for example, representing the various media files.
[0059] Each thumbnail, icon, filename, etc. is independently
actionable as a PTT press. Once the user selects a media file, it
is automatically transmitted to the target users as part of a talk
spurt. The user may select the media file by, for example, touching
the thumbnail representing the media file if wireless communication
device 14, 16, 18 is a touch screen device. Alternatively, the user
may press PTT button 78 after selecting the media file. Upon
selecting the media file, a PTT Call/Floor-request would be sent to
the target users with the media file or a link thereto, as
discussed below.
[0060] FIG. 5 is a call flow diagram of one embodiment of the
establishment of a PTT communication and a group-directed media
transmission between communication group member wireless
communication devices. Resident on a communicating wireless device
14,16,18, a Group Media Client 130 requests that the PTT Client 132
establish a direct PTT call to share group-directed media and voice
with the target device, shown here as having resident PTT Client
138 and Group Media Client 140. As shown, the Group Media Client
indicates that the same floor control mechanism can be used for
both the voice media and the group-directed media. The Group Media
Client 130 determines that data can be shared during subsequent
talk bursts from the PTT usage, and thus, there is a single floor
control mechanism used for both the voice call and the sharing of
the group-directed media. The Group Media Client 130 requests that
the PTT Client 132 establish a PTT direct call with the target user
and include a group-directed media type to the PTT call. The call
setup request can contain, for instance, the target user address,
the Group Media application ID, the media type, and an indication
that the group-directed media data is to be shared using the same
floor control mechanism as the PTT call. The call setup request may
also be sent with a DataOverSignaling Access channel message. The
Dispatch Call Handler (DCH) 134 performs the PTT call setup
functions, including locating the target, applying call
restrictions, selecting a vocoder and assigning Media Control Unit
(MCU) 136 resourced. In addition, the DCH 134 verifies that the
target client can support the group-directed media type. Then the
DCH 134 notifies the target member that a PTT call is being
established with group-media data included.
[0061] The target PTT Client 138 verifies that the target user is
available to participate in the call and that the Group Media
Client 140 associated with the group-directed media application ID
is present on the target client device. The target PTT Client 138
sends an acknowledgement to the DCH 134 indicating that the call
has been accepted. Once the acknowledgement is received from the
target PTT Client 138, the DCH 134 sends a floor grant message to
the originating PTT Client 132, which indicates the call is being
established and the PTT Client 132 can start collecting media. The
PTT Client 132 notifies the Group Media Client 130 that the call
setup was successful and group-directed media can be sent. The PTT
Client 132 also notifies the user that the user can begin speaking.
The PTT Client 132 collects and buffers both the voice media (the
user's talk spurt) and the group-directed media that is received
from the group Media Client 130. Once the MCU 136 contact
information message is received and acknowledged by the originating
PTT Client 132, the buffered media is sent to the MCU 136. The MCU
136 waits for the target PTT Client's 138 acknowledgment of the MCU
136 contact information message prior to forwarding the media to
the target. When the target PTT Client 138 receives the media, it
may filter the media based on the synchronization source (SSRC) and
payload type to process the PTT media correctly. The group-directed
media is forwarded to the Group Media Client 140, which may also be
responsible for processing that data.
[0062] FIG. 6 is a call flow diagram of one embodiment of the
group-directed media transmission occurring during a shared floor
as the PTT client on the transmitting wireless communication
device. A Group Media Client 150 requests to share a group-directed
media with PTT call participants using the same floor control
mechanism as the PTT call, one member device shown as having
resident PTT Client 156 and Group Media Client 158. The
group-directed media is sent in conjunction with the voice media
during a PTT talk spurt. The Group Media Client 150 requests
permission to talk and send data at the same time. In this
scenario, the user is participating in a PTT call, and the user
performs a function to the Group Media Client 150 that results in
the Group Media Client 150 requesting to share data with the PTT
call participants. The Group Media Client 150 determines that the
data can be shared during a subsequent talk bust from the user.
That is, there is only a single floor control mechanism that is
used for both the PTT call and the sharing of group-directed
media.
[0063] The Group Media Client 150 requests the PTT Client 152 to
add group-directed media to the existing PTT call. The add-media
request contains an indication that the data is to be shared using
the same floor control mechanism as the PTT Client 152. The PTT
Client 152 requests the MCU 154 to add a new media type to the
existing call. The MCU 154 verifies that the PTT call participants
can support the new media type, e.g. contacts Group Media Client
158, and notifies the call participants that a new media type is
being added to the PTT call. After the new media type has been
successfully added to the PTT call, the user (Group Media Client
150) can request permission to talk and send group-directed media
at the same time. The Group Media Client 150 notifies the PTT
Client 152 that a group-directed media request has been received.
The PTT Client 152 requests permission to talk and send
group-directed media from the MCU 154. The MCU 154 verifies the
floor is available prior to granting the floor request. The PTT
Client 152 notifies the Group Media Client 150 that the floor
request was granted.
[0064] FIG. 7 is a call flow diagram of one embodiment of the
group-directed media transmission occurring on a different floor
from the PTT client on the transmitting wireless communication
device. The Group Media Client 160 requests to share group-directed
media with PTT call participants using a different floor control
mechanism than the PTT call. The group-directed media is
accordingly sent independently of the voice media. The user must
request permission to send data any time there is data that is
ready to be shared with the PTT call participants. In this
scenario, the user is participating in a PTT call and performs a
function on the Group Media Client 160 that results in the Group
Media Client 160 requesting to share data with the PTT call
participants. The Group Media Client 160 determines that the data
is intended to be shared using a separate floor control mechanism
than the PTT call, i.e. independent of the floor control mechanism
being used for the PTT call.
[0065] The Group Control Client 160 requests that the PTT Client
162 add a new media type to the existing PTT call. The add media
requests contains an indication that the data is to be shared using
a different floor control mechanism than the PTT call. The PTT
Client 162 requests the MCU 164 to add a new media type to the
existing call. The MCU 164 verifies that all of the call
participants can support the new media type and notifies the call
participants that a new media type is being added to the call. In
this embodiment, the notification to the call participants contains
a floor identifier for the group-directed media floor, in addition
to a new destination port number on the MCU 164 for the
distribution of the group-directed media. The PTT Client 166 of the
target device assigns a new media port for sending or receiving
group-directed media and sends the new port identifier in the
acknowledgement to the MCU 164.
[0066] When the PTT Client 166 receives the request to add new
media, the PTT Client 166 verifies that the application associated
with the group media application ID is available on the client. If
the Group Media Client 168 associated with the group media
application ID is already active on the client, the PTT Client 166
sends a notification to the Group Media Client 168 that media was
added to an existing PTT call. If the application associated with
the group media application ID is not already active on the target
client, the PTT Client 166 requests the mobile operating system to
start the appropriate application and then notifies the Group Media
Client 168 to prepare for incoming group-directed media.
[0067] After the new media type is successfully added to the PTT
call, the user can request permission to send group-directed media.
The Group Media Client 160 notifies the PTT Client 162 that a
group-directed media send request has been received. The PTT Client
requests permission to send group directed media from the MCU 164.
The PTT request from the PTT Client 162 contains the floor
identifier assigned to the group-directed media floor. The MCU 164
verifies the data floor is available prior to granting the floor
request. The PTT Client 162 notifies the Group Media Client 160
that the floor request was granted.
[0068] FIG. 8 is a call flow diagram of one embodiment of the
system establishing immediate group-directed media transmission to
multiple target devices across the wireless communication network.
In FIG. 8, a user has requested immediate distribution of
group-directed media to multiple target users. The group-directed
media does not exceed the operator-defined data distribution limit
and therefore, it can immediately be provided to the target
endpoints. In this embodiment, the user selects a list of target
users to which group-directed media is to be delivered. The user
has also requested, at the Group Media Client 170, immediate
delivery of the group-directed media to the targets. The PTT Client
172 examines the delivery option specified in the request and
determines that the data is required to be immediately delivered.
The Group Media Client 170 compares the size of the group-directed
data to make sure that it is within the operator-defined limit.
Because the size is less than the data distribution limit, the
Group Media Client 170 requests that the PTT Client 172 distribute
the data to the targets. The PTT Client 172 verifies the data is
small enough to fit into a UDP MTU containing the appropriate
signaling headers and the group-directed media. The PTT Client 172
requests the DCH 174 to send an incoming data notification
containing the group-directed media to the specified targets.
[0069] The DCH 174 locates each of targets in the target list and
formulates an incoming data notification for each target. The
group-directed media is embedded in the notification. The DCH 174
sends the notification to each target. For targets that are
registered on the local carrier network, Local Gateway 180, the
notification is sent directly to the PTT Client 176 at the target.
For targets that are registered on a foreign carrier network, the
notification may be sent to the Foreign Regional Gateway 182, which
in turn converts the notification into a session initiation
protocol (SIP) Message method and the group-directed media is
included in the body of the SIP Message. Each target determines
whether to accept or reject the incoming data notification. The
notification may be rejected if the Group Media Client 178 target
client cannot process the group-directed media or the target user
has placed a communication restriction on the originator of the
data distribution request.
[0070] In FIG. 8, the notification is assumed to be accepted by the
targets. Because at least one target received the notification
successfully, the originator is notified that the group directed
distribution was successful. Alternatively, the originator can be
notified of which targets received the notification and which did
not. When the PTT Client 176 receives the notification with the
group-directed media, the PTT Client 176 examines the group media
application ID, which indicates the application that is to receive
the group-directed media. If the application associated with the
group media application ID is already active on the client, the PTT
Client 176 forwards the group-directed media to the application. If
the application associated with the group media application ID is
not already active on the client, the PTT Client requests the
mobile operating system to start the Group Media Client 178 and
then forwards the group-directed media. For targets that do not
support processing the group-directed media data type, the DCH 174
will not distribute the incoming data notification to targets that
are incapable of processing the group-directed media contained in
the message. Optionally, the DCH 174 will remove the group-directed
media from the incoming data notification and send the revised
notification to the targets that do not support the data type.
[0071] It should also be noted that Foreign Regional Gateway 182
with another computer device, such as desktop which could have a
PTT client resident thereupon. The signaling between the Local
Gateway 180 and the Foreign Regional Gateway 182 could be the same
as the signaling between a Local Gateway 180 and the PC-Based
client, such as a Windows based client at a desktop, laptop, or
other computer platform, that could also have a wired connection to
the Internet or other gateway. However, the resident PTT Client at
such computer platform is required to handle the half-duplex
communications in the group communication environment.
[0072] FIG. 9 is a call flow diagram of one embodiment of the
distribution to target members of a file preview of a
group-directed media. A user has requested immediate distribution
of a file to multiple target users. Here, the file exceeded the
operator-defined data distribution limit and therefore, it cannot
immediately be distributed to the targets. However, a preview of
the file can be distributed to the targets immediately. Therefore,
the file is stored at the FMS 192 and then truncated or reduced to
provide a preview of the file to the target recipients. The preview
portion of the file is part of the incoming data notification to
the targets. The preview can be a small picture, such as a
thumbnail, or a portion of the file name, or can be the file type
extension, e.g. .mov, .tif, .ppt, such that the target can
determine in the first instance if they want to download media of
that type.
[0073] In this embodiment, the user selects a list of target users
to which the group-directed media is to be delivered. In this
scenario, the group-directed media selected is a large file. The
user has also requested immediate delivery of the group-directed
media to the targets. The Group Media Client 190 examines the
delivery option specified in the request from the user and
determines that the file is required to be delivered immediately.
The Group Media Client 190 compares the size of the file with the
operator-defined data distribution limit. Because the file size
exceeds the data distribution limit, the Group Media Client 190
contacts the FMS 192 (data store) to store the file with the target
list. After the Group Media Client 190 has successfully stored the
file at the FMS 192, the Group Media Client 190 creates a preview
of the original file. The Group Media Client 190 then requests the
PTT Client 194 to deliver the preview of the group-directed media
file and the file descriptor to the specified list of targets.
[0074] The PTT Client 194 verifies the preview data is small enough
to fit into a UDP MTU containing the appropriate signaling header
and the group-direct media preview. The PTT Client 194 requests
that the DCH 196 send an incoming data notification containing the
preview and the file descriptor to the specified targets. The DCH
196 locates each of the targets in the target list and formulates
an incoming data notification for each target. The group-media
preview data (preview and the file descriptor) is embedded in the
notification. The DCH 196 sends the notification to each target.
Such notification can also include a hyperlink or other pointer to
direct the target to the stored data. Each target determines
whether to accept or reject the incoming data notification. The
notification may be rejected if the target user has placed a
communication restriction on the originator of the data
distribution request. In this scenario, the notification is
accepted by the targets. Because at least one target received the
notification successfully, the originator is notified that notice
of the group-directed media distribution was successful.
[0075] When the PTT Client 198 receives the notification with the
preview, the PTT Client 198 examines the group media application
ID, which indicates the application that is to receive the
group-directed media. If the application associated with the group
media application ID is already active on the client, the PTT
Client 198 forwards the group-directed media to the application. If
the application associated with the incoming group-directed media
application is not already active on the client, the PTT Client 198
requests the mobile operating system to start the application and
then forwards the group-directed media onto the Group Media Client
200. When the Group Media Client 200 receives the group-directed
media, the Group Media Client 200 determines whether to download
the file containing the group-directed media automatically as
identified by the file descriptor in the data or to prompt the user
to determine if they want a download. The Group Media Client 200
can also download the preview file from the FMS 192.
[0076] FIG. 10 is a call flow diagram of one embodiment of a file
retrieval of stored group-directed media by a member of the
communication group 12 to which the group-directed media was
originally sent. When a Group Media Client 212 receives a
notification from the PTT Client 210 indicating that there is a
group-directed media available at the FMS 216, the Group Media
Client 212 determines, based on user settings, whether to download
the group-directed media immediately or to notify the
Group-Directed Media UI 214 that the group-directed media file is
available for download. In the latter case, the Group-Directed
Media UI 214 is responsible for prompting the user to decide when
to download the file.
[0077] If the Group Media Client 212 is not configured to download
the group-directed media file automatically, Group-Directed Media
UI 214 prompts the user to download the file. When the user decides
to download the file, the Group-Directed Media UI 214 notifies the
Group Media Client 212, which proceeds to retrieve the file from
the FMS 216. The FMS 216 verifies the user is on the target list
(or file distribution list) prior to allowing the file download to
proceed. It should be noted that the download of the stored data
need not to occur substantially instantaneously or only during a
PTT communication, but can occur at the discretion of the target
user. Further, other embodiments may use different methods to
determine whether the user is allowed or authorized to download the
file.
[0078] FIG. 11 is a flowchart of one embodiment of a method at a
wireless communication device 14,16,18 to send group-directed media
to a communication group 12. A request is made at the wireless
communication device 14,16,18 to send the group-directed media, as
shown at step 220, and then a determination is made as to whether
the group-directed media can be sent directly to members of the
group, as shown at decision 222. If the group-directed media cannot
be sent directly at decision 222, then the group-directed media is
sent to the file management server 224, and the process ends as
shown at termination 228. Otherwise, if the group-directed media
can be sent directly to the other members of the group, then the
group-directed media is sent to the group communication computer
device (server) 32, as shown at step 226, e.g. the group
communication computer device will receive and relay the
group-directed media to the other members of the communication
group. It should be noted that the group communication computer
device 32 can be the sole arbiter of determining how to relay the
group-directed media, and thus, no determinations on sending group
communication data will occur at the wireless communication device
14,16,18, as it will solely send out the group-directed media if an
appropriate communication channel is available. Then the process
ends, as shown at termination 228.
[0079] FIG. 12 is a flowchart of one embodiment of a group
communication computer device 32 receiving and selectively storing
or transmitting group-directed media. The group communication
computer device 32 receives a request to send group-directed media
from wireless communication device 14,16,18, as shown at step 230,
and then a determination is made as to whether the group members
for the sending wireless communication device can receive the
group-directed data directly, as shown at decision 232. For any
member of the group that cannot receive the group-directed media,
the group-directed media is sent to a data store 36, as shown at
step 234, and a notice and link to the stored media is sent to the
target wireless device unable to directly receive the
group-directed media that the group-directed media is stored and
awaiting download, as shown at step 236.
[0080] Otherwise, for each member of the group who can receive the
group-directed media at decision 232, a determination is then made
as to whether the group-directed media is too large to be directly
sent, as shown at decision 238. If the media is too large at 238,
the group-directed media is sent to the data store 36, as shown at
step 234, and the notice and link are sent to the target device as
shown at step 236. Otherwise, if the media is not too large to send
at decision 238, a determination is made as to whether the media is
a correct type to send to the target member, as shown at decision
240. If the media is not a type known as receivable by the target
device, then the group-directed media is stored at the data store
36 (step 234) and notice and link sent to the target device (step
236). Otherwise, if the group-directed media is of a type that can
be received by the target member, the group-directed media is sent
to the member device(s), as shown at step 242. Then the process
terminates (termination 244) after the group-directed media is sent
(step 242) or the notice and link have been sent to the target
devices (step 236).
[0081] It can be seen that system 10 provide an inventive method
for sharing media in a group communication among a plurality of
wireless communications devices 14,16,18 on a wireless
communication network 20, that in one embodiment, includes
receiving at a group communication computer device 32
group-directed media sent from a wireless communication device
14,16,18 to other members of the communication group 12. In one
embodiment, the group communication computer device 32 stores
information including the member wireless communication devices of
one or more communication groups, and sending the group-directed
media from the group communication computer device 32 to one or
more of the other member wireless communication devices of the
communication group 12 for the sending wireless communication
device 14,16,18. If the system 10 is embodied as including a data
store 36 (such file management server 192) which is in
communication with the group communication computer device 32, the
method further includes sending the group-directed media from group
communication computer device 32 to the data store 32, the
receiving the group-designated media from the wireless
communication device 14,16,18 at the data store, and selectively
permitting members of the communication group for which the
group-directed media is being sent to access the stored
group-directed media across the wireless communication network
20.
[0082] In one embodiment, the method can include sending
communication group identification data from the wireless
communication device 14,16,18 to the group communication computer
device 32, and then sending the group-directed media from the group
communication device 32 to the member wireless communication
devices identified in the communication group identification data.
Alternately, the wireless communication device 14,16,18 can request
member data for a communication group from the group communication
computer device 32 prior to a wireless communication device sending
group-directed media, and sending communication group
identification data from the group communication computer device 32
to the requesting wireless communication device 14,16,18.
[0083] The sending of the group-directed media can occur either
during a group communication with the member wireless communication
devices of the communication group 12, or can occur outside the
group communication, as is shown in FIG. 7. Further, the method can
involve multiple determinations of whether or not to send the
group-directed media based upon the size of the data, the ability
of the target to view the data, or the type of data being sent,
such as a link to an interactive computer session or other
application. The method can also include, upon receipt of the
group-directed media by at least one of the member wireless devices
of the communication group 12, sending an acknowledgement that at
least one member wireless communication device of the communication
group 12 received the group-directed media to the wireless
communication device sending the group-directed media, such as
shown in FIGS. 8 and 9.
[0084] When the members of a PTT group communication wish to
discuss two or more previously transmitted media files, the members
would typically have to explain to which file they are referring
(e.g. "the first one I sent to you" or "the second one I sent"). An
embodiment provides a convenient way to reference media files
during a PTT group communication. The media files may be pre-shared
before the start of a PTT group communication or a talk spurt or
shared during the group communication or the talk spurt.
[0085] An embodiment provides an index of the group communication
that links shared media files to the corresponding talk spurt. The
index may be presented as a timeline, a gallery, a conversation
thread, etc. For example, if the index is presented as a timeline,
each talk spurt can be associated with one or more timestamps
indicating the start, end, and/or duration of the talk spurt. Each
entry, whether or not associated with a media file, can also
include additional ways to identify the talk spurt, such as the
name or username of the speaker, the first few words of the talk
spurt (as generated by a speech-to-text converter), the role of the
speaker, etc. If a media file is transmitted during a talk spurt,
the index entry for that talk spurt would display an indication of
the media file, such as the filename, URL, preview, etc. The entry
could also include other metadata for the media file, such as the
title, description, size, type, length, date taken, date modified,
etc.
[0086] If the index is presented as a gallery, each transmitted
media file can be represented by a preview of the media file. Each
preview can be associated with various metadata for the media file,
such as the filename, URL, title, description, size, type, etc. In
an embodiment, the gallery would only include previews of
transmitted media files. Alternatively, the gallery can include
previews representing each talk spurt, whether or not associated
with a transmitted media file. In that case, a talk spurt without a
corresponding media file could be displayed as an icon representing
the speaker. For instance, some or all of the group members may
have specific icons to represent themselves in a group
communication. For those that do not, a generic icon could be used.
For talk spurts associated with media files, the gallery can
display only the preview of the media file, both the preview of the
media file and the speaker's icon, or some combination of the
preview of the media file and the speaker's icon.
[0087] The index can also be presented as a threaded conversation,
which has aspects of both the timeline and gallery views. In a
threaded conversation, the identity of the speaker and/or the topic
of the talk spurt would be the primary organizing factor rather
than the time of the talk spurt. For example, as described below,
when a member responds to a previously transmitted talk spurt,
rather than adding the new talk spurt to the index as its own
entry, it would be added as a sub-entry to the previously
transmitted talk spurt. Alternatively, all talk spurts from a given
member can be grouped together. Also, rather than just the first
few words of each talk spurt, each entry could include a larger
portion of the talk spurt, or even the entire talk spurt, converted
to text. Further, each entry can display an icon of the speaker,
and entries associated with a media file can display a preview of
the media file and any metadata available and/or desired.
[0088] It is apparent that there are many possibilities for the
presentation of talk spurts and media files within the scope of the
embodiments. Likewise, there are many possible combinations of the
features of the timeline, gallery, and threaded views within the
scope of the embodiments. Each member of the group communication
may choose their preferred set of options, or a leader or moderator
of the group communication may set the options for a particular
group communication.
[0089] Before any talk spurts have been transmitted, the index may
simply display a welcome message and/or details about the call,
such as the number of members, the identity of the members, the
identity of the organizer, etc. As talk spurts are generated, they
are added to the index. In an embodiment, a leader or moderator of
a PTT group communication may wish to share one or more media files
with members of the PTT group for discussion during the group
communication. In that case, the leader or moderator can transmit
the one or more media files before or at the start of the group
communication, as discussed below with reference to FIGS. 13-18. In
that case, the initial index will already be populated with entries
for those media files, and the group members will be able to refer
to them immediately.
[0090] If one or more media files are too large to be immediately
distributed to the targets at the beginning of a group
communication, as discussed above with reference to FIG. 9, the
media files can be buffered at the PTT server and even distributed
to the targets in advance so that they are available at the
beginning of the group communication, as discussed below with
reference to FIGS. 13-18. Additionally, if the media file sharing
uses a different floor control mechanism than the PTT group
communication, as discussed above with reference to FIG. 7, then a
member that knows they will be transmitting a media file that is
too large to be immediately distributed can request transmission of
the media file before they request the floor for a talk spurt, as
discussed below with reference to FIGS. 13-18. In that way, the
media file will be available when the member gains the floor to
speak.
[0091] In an alternative embodiment, if the media file is large,
the speaker would not lose the floor until the media file had
successfully transmitted, even if the speaker released the PTT
button. Alternatively, transmission of the media file could stop
when the speaker relinquishes the floor and resume when the speaker
reacquires the floor. These alternatives can be determined by a
leader or moderator of the group communication, if present. For
example, the leader or moderator could setup the group
communication such that high priority speakers would be ensured
transmission of their media files while low priority speakers could
only transmit during their talk spurt.
[0092] In an embodiment, the index of the group communication can
be stored, locally or remotely, for future reference. Additionally,
the index may be transmitted as a media file in a later group
communication so that it too can be referred to during that group
communication. In an embodiment, the index of the previous group
communication can be appended to the index of the later group
communication as talk spurts that occurred before the first talk
spurt of the later group communication, thus permitting those talk
spurts to be referred to as if they had occurred during the later
group communication. Alternatively, the index of the previous group
communication can be integrated into the index of the later group
communication as a sub-entry of the talk spurt during which the
index was transmitted.
[0093] In an embodiment, the entries of the index can be augmented
with metadata describing the entry. The metadata can be added
manually or automatically as the entry is generated, after the
entry is added to the index, or at some time after the group
communication ends. Some metadata has already been described, such
as the name or username of the speaker, the start and end times of
the talk spurt, and duration of the talk spurt, the title,
filename, URL, size, type, etc. of any associated media file, etc.
Other metadata can be generated by parsing the talk spurt. For
example, talk spurts can be parsed to determine the type of
content, such as whether the talk spurt is a question, a response,
an instruction, chatter, or a greeting.
[0094] A user can sort or filter an index, or even an ongoing
conversation, based on the metadata if the metadata is generated in
real-time. For example, a user can sort or filter the index by the
identity of the speaker, by which talk spurts include media files,
by the start time of the talk spurt, etc. If the metadata is
generated in real time, a user can filter out (i.e. prevent from
being added to the index of transmitted) "chatter" talk spurts or
talk spurts that don't include media files, show only instructional
talk spurts, etc. The user can also opt to be notified about a talk
spurt based on its metadata. For example, a user may wish to be
notified when a talk spurt is a question.
[0095] If the index is being generated at UE 14,16,18, individual
users can control which metadata is generated or identified. In
that case, each user will have a different index at the end of the
group communication. Alternatively, the group leader can determine
which metadata should be generated and transmit that information as
part of the setup for the group communication. The group leader can
also determine which metadata to track if the index is generated
remotely. Alternatively, a system administrator can make the
determination.
[0096] On the target side, UI 106 plays the incoming talk spurt and
displays/plays the media file that the speaker had selected (or a
preview, or a placeholder if the media file is still in transit),
as discussed below with reference to FIGS. 13-18. UI 106 can
display/play received media files in a full-screen view during the
talk spurt. During talk spurts that are not associated with a media
file, UI 106 can display the last media file, a home screen for the
group communication, an icon of the speaker, an index view of the
group communication (such as the timeline, gallery, or threaded
view), etc. Alternatively, UI 106 can initially display received
media files in the index view, giving the target the option to
ignore the media file or select it for displaying/playing in a
full-screen view.
[0097] Upon each floor transition, the floor-requester can select a
different media file, causing an update at each target of the media
file being displayed to the one that the new speaker has selected.
Since the speaker can see an index view of the group communication,
the speaker can refer back to a previously transmitted media file
by selecting it in the index view. If the current speaker selects a
media file that was previously transmitted, whether by that speaker
or another, the media file does not need to be retransmitted.
Rather, if a target has chosen to display received media files in a
full-screen view, the previously transmitted media file is simply
redisplayed. If a target has chosen to display received media files
in an index view, the previously transmitted media file can be
visually highlighted to show that it is the one to which the
speaker is referring. The target may then select the media file to
be displayed in a full-screen view. In this way, the speaker and
listener(s) are automatically kept in alignment regarding to which
media file the speaker is referring, and there is no need to
communicate that information manually.
[0098] In a group communication, it can be difficult to gain the
floor, as one member may acquire the floor ahead of others who wish
to respond to a particular talk spurt. It may be several minutes
and/or several talk spurts later before a member can acquire the
floor, and the flow of the conversation may have moved in another
direction, so that the point the member was going to make would
disrupt the flow of the conversation. An embodiment permits members
to refer back to particular talk spurts, not just particular media
files.
[0099] In an embodiment, when a member wishes to respond to one or
more talk spurts but cannot acquire the floor, the member can flag
the talk spurt(s) for later reference. For example, the member can
mark the talk spurt(s) through a touch, audible, physical, or
key-based action on wireless communication device 14, 16, 18.
Additionally, if the member tries to respond to the talk spurt
rather than immediately marking it for a response but cannot
acquire the floor, the member can be prompted to "remember" the
talk spurt for response at a later time. Further, the member need
not flag a talk spurt immediately. Rather, the member can flag
earlier talk spurt(s) as a reminder to respond to them when he or
she acquires the floor.
[0100] When the member finally acquires the floor, the member has
an option within UI 106 to identify a previous talk spurt to which
he or she wishes to respond. The member can select one of the
flagged talk spurts or an unflagged talk spurt. The member can
select multiple talk spurts at one time, or select multiple talk
spurts one at a time over the course of that member's talk
spurt.
[0101] The UIs of the target devices identify the selected talk
spurt by, for example, highlighting it in an index view, replaying
all or a portion of it, displaying the index entry for the talk
spurt in a full-screen view, etc. If a target is in an index view
of the group communication and the previous talk spurt is
highlighted but not replayed, for example, the target can tap the
visual representation of the previous talk spurt to listen to a few
seconds of it or to retrieve/display a speech-to-text conversion of
it. The speaker may also mandate this brief replay/speech-to-text
option to emphasize to the group the context in which he or she
will be responding. These various options can be set by each member
through UI 106 or mandated by a leader or moderator of the group
communication.
[0102] When a speaker refers to a previous talk spurt as just
described, the current talk spurt can be added as the next entry in
the index as it normally would be, or it can be added as a
sub-entry under the talk spurt to which the speaker is referring,
much like a threaded conversation. The speaker may decide how the
talk spurt should be added to the index, or it may be decided by
the leader or moderator. It may also depend on the type of index
employed.
[0103] An embodiment integrates the location of the members of the
group communication. In an embodiment, a speaker can send talk
spurts and/or media files only to certain members of the
communication group based on their location. For example, the
speaker can transmit talk spurts and/or media files to nearby
members, or to all members in a given city, state, or country. In
an embodiment, talk spurts and/or media files can be indexed by the
location of the sender, or the location at which the media file was
generated. For example, an image of the Grand Canyon may be
geo-tagged, and the entry for the image can be indexed according to
that location.
[0104] In an embodiment, a member may be given priority for
acquiring the floor and/or transmitting a media file based on his
or her location at a place of interest. For example, a member at
the Grand Canyon that is talking to the other members of the
communication group about the Grand Canyon can be given priority to
transmit images of the Grand Canyon.
[0105] In an embodiment, if a member arrives at a given location or
crosses a given geo-fence, a talk spurt can be automatically
generated and transmitted to the group indicating that the member
has arrived at the location or crossed the geo-fence. Additionally,
a map of the location or geo-fence can be transmitted as a media
file, with the member's location marked on the map. Further, the
member can receive an automated talk spurt welcoming him or her to
the location or geo-fenced area. The automated talk spurt may
provide other information as well, such as information about the
location or geo-fenced area.
[0106] In an embodiment, the media file being shared can be a map,
and each time the user sharing the map presses it and/or transmits
a talk spurt, a spot on the map representing the location of the
user is updated, indicating the current location of the user.
Similarly, the media file can be a picture of a geographic
location, and each time the user sharing the picture presses it
and/or transmits a talk spurt, a spot on the picture representing
the location of the user is updated, indicating the current
location of the user within the picture. The location of the user
with respect to the map can be transmitted as x-y coordinates or
geographic coordinates. The location of the user with respect to
the picture can be transmitted as x-y coordinates of the picture.
In this way, not only are target group members automatically shown
the picture or map to which the speaker is referring, but a
specific location on the picture or map.
[0107] FIG. 13 is a flowchart of an exemplary group communication
in which media files are pre-shared before a group call is setup.
In FIG. 13, PTT clients 310, 312, and 314 form a PTT group. At
1305, the user of PTT client 310 opens a gallery of media files A,
B, C, and D, for example, and selects media files A, C, and D to
pre-share with the rest of the PTT group (i.e. PTT clients 312 and
314). Alternatively, the user may select a subset of the PTT group
with which to share the media files. PTT client 310 then transmits
the selected media files to PTT server 316. At 1310, PTT server 316
silently transmits the selected media files to PTT clients 312 and
314. At 1315, the user of PTT client 312 opens a gallery of media
files J, K, L, and M, for example, and selects media files M and J
to pre-share with the PTT group. PTT client 312 then transmits the
selected media files to PTT server 316. At 1320, PTT server 316
silently transmits the selected media files to PTT clients 310 and
314.
[0108] At 1325, PTT client 310 silently receives media files M and
J and stores them in temporary storage. PTT client 310 does not
silently receive media files A, C, and D because they are already
stored on PTT client 310. Silently receiving media files means that
the media files are received in a background mode and not shown to
the user, and as such the user may not even know that the files are
on the PTT client. The media files are simply pre-shared for fast
rendering if and when a PTT call arrives. At 1330, PTT client 312
silently receives media files A, C, and D and stores them in
temporary storage. At 1335, PTT client 314 silently receives media
files A, C, D, M, and J and stores them in temporary storage.
[0109] At 1340, the user of PTT client 310 presses an on-screen
representation of media file C (already pre-shared) as if it were a
PTT button to start a PTT group call. In the embodiment of FIG. 13,
pressing the representation of media file C causes PTT client 310
to transmit a PTT call start request at 1345. Alternatively,
however, the request may be a floor request if the group call is
already in progress. The request includes an index or other
reference to media file C. Alternatively, the index or reference
can be sent independently of the PTT call start or floor
request.
[0110] At 1350, after the group call has been setup, PTT server 316
transmits an indication of the call start or floor grant to PTT
clients 312 and 314, including the index or reference to media file
C. At 1355, PTT client 312 determines whether media file C is
stored in its local storage. If it is, as illustrated in FIG. 13,
then at 1360, PTT client 312 immediately transitions its UI to
display (or play) media file C.
[0111] At 1365, PTT client 314 determines whether media file C is
stored in its local storage. If it is not, as illustrated in FIG.
13, then at 1370, PTT client 314 requests media file C from PTT
server 316. There are a number of reasons PTT client 314 may not
have media file C stored in its local storage, such as transmission
delays, dropped connections, lost packets, insufficient download
time, etc. At 1375, PTT client 316 retransmits media file C to the
requesting group members (here, PTT client 314). Alternatively, if
PTT client 316 has not yet transmitted media file C to the
requesting group members, PTT client 316 transmits media file C at
this time.
[0112] At 1380, upon receiving media file C, PTT client 314
immediately transitions its UI to display (or play) media file C.
PTT clients 312 and 314 may render media file C fully, partially,
or merely a reference to it, such as a URL or thumbnail.
Accordingly, the users of PTT clients 312 and 314 will know and be
able to see to which media file the user of PTT client 310 is
referring during that user's talk spurt.
[0113] PTT clients 312 and 314 may present an option to save media
file C, either during or after the talk spurt or at the end of the
PTT group call. If a user selects to save media file C, that PTT
client will move the media file from temporary storage to permanent
storage.
[0114] FIG. 14 is a flowchart of an exemplary group communication
in which media files are pre-shared before a group call is setup.
Specifically, FIG. 14 illustrates additional aspects of the
pre-sharing embodiment. In FIG. 14, PTT clients 310, 312, and 314
form a PTT group. At 1405, the user of PTT client 310 opens a
gallery of media files and selects media file X to pre-share with
the rest of the PTT group (i.e. PTT clients 312 and 314). PTT
client 310 then silently transmits media file X and a thumbnail
representing media file X to PTT clients 312 and 314 via the PTT
server (not shown). At 1410 and 1415, PTT clients 312 and 314 begin
silently receiving and temporarily storing media file X and its
thumbnail.
[0115] At 1420, the user of PTT client 310 presses an on-screen
representation of media file X as if it were a PTT button to start
a PTT group call or send a floor request. The request includes an
index or other reference to media file X, as disclosed with
reference to FIG. 13.
[0116] At 1425 and 1430, after the PTT call has been setup, PTT
clients 312 and 314 begin receiving the talk spurt referencing
media file X from the user of PTT client 310. At 1435 and 1440, PTT
clients 312 and 314 determine whether or not media file X has been
fully received. If it has, then at 1445 and 1450, PTT clients 312
and 314 immediately transition their UIs to display (or play) media
file X. If it has not, then at 1455 and 1460, PTT clients 312 and
314 render a partial version or placeholder for media file X or its
thumbnail. If media file X is fully received during the talk spurt,
PTT clients 312 and 314 will immediately display and/or play it.
While 1410-1415 and 1425-1460 have been discussed as occurring in
parallel, it is apparent that they occur independently at PTT
clients 312 and 314.
[0117] FIG. 15 is a flowchart of an exemplary group communication
in which media files are not pre-shared before a group call is
setup. In FIG. 15, PTT clients 310, 312, and 314 form a PTT group.
At 1505, the user of PTT client 310 opens a gallery of media files
and selects media file X to share with the rest of the PTT group
(i.e. PTT clients 312 and 314). The user then presses an on-screen
representation of media file X as if it were a PTT button to start
a PTT group call. At 1510, PTT client 310 transmits the PTT call
start request and a representation of media file X to PTT clients
312 and 314 via the PTT server (not shown). The representation
includes a reference to media file X, such as a filename or URL,
and one of a text description of media file X, an icon representing
the type of media file, or a thumbnail representing media file
X.
[0118] At 1515 and 1520, PTT clients 312 and 314 receive the PTT
call/grant and the representation of media file X. At 1525 and
1530, PTT clients 312 and 314 transition their UIs to display an
"in-call screen" including a placeholder for media file X. The
placeholder may include the reference to media file X and the text
description, icon, or thumbnail of media file X.
[0119] At 1535, after the PTT signaling and audio streaming begins,
PTT client 310 begins transmitting media file X to PTT clients 312
and 314 via the PTT server. At 1540 and 1545, PTT clients 312 and
314 begin receiving media file X. At 1550 and 1555, after media
file X has been fully received, PTT clients 312 and 314 replace the
placeholder for media file X with media file X. While 1515-1530 and
1540-1555 have been discussed as occurring in parallel, it is
apparent that they occur independently at PTT clients 312 and
314.
[0120] FIG. 16 is a flowchart of an exemplary group communication
in which media files are shared before or during a group call is
setup. Specifically, FIG. 16 illustrates additional aspects of the
data being shared. In FIG. 16, PTT clients 310, 312, and 314 form a
PTT group. At 1605, the user of PTT client 310 opens a gallery of
media files and selects media file X to (pre-)share with the rest
of the PTT group (i.e. PTT clients 312 and 314). At 1610, PTT
client 310 generates a reduced version of media file X.
Specifically, PTT client 310 determines what alternative
information and/or reduced configurations are or could be
associated with media file X. Such data may include, but is not
limited to, a reference to media file X, a text description of
media file X, an icon or thumbnail representing media file X, a
cropped version of media file X, a lower resolution version of
media file X, a lower resolution cropped version of media file X,
or a progressive version of media file X, such as a progressive
Joint Photographic Experts Group (JPEG) image. PTT client 310 then
creates a prioritized list of this data arranged by size and/or
preferences of the user or PTT application. For example, a text
description is likely less data than a low resolution version of
media file X, but the user or PTT application may prefer to always
assign the highest priority to the low resolution version. Further,
if a certain data type is not available, PTT client 310 may have to
use whatever is available. For example, media file X may not have a
text description, so PTT client 310 will send a thumbnail
instead.
[0121] At 1615, PTT client 310 transmits the smaller and/or higher
priority data about media file X to PTT clients 312 and 314 via the
PTT server (not shown). At 1620 and 1625, PTT clients 312 and 314
receive this data. At 1630, PTT client 310 transmits the next
smallest and/or highest priority data about media file X to PTT
clients 312 and 314 via the PTT server. At 1635 and 1640, PTT
clients 312 and 314 receive this data. At 1645 and 1650, PTT
clients 312 and 314 update the previously stored data about media
file X with the newly received data. PTT clients 312 and 314 now
have a better representation of media file X.
[0122] At 1655, PTT client 310 transmits media file X. At 1660 and
1665, PTT clients 312 and 314 receive media file X. While
1620-1625, 1635-1650, and 1660-1665 have been discussed as
occurring in parallel, it is apparent that they occur independently
at PTT clients 312 and 314.
[0123] FIG. 17 is a flowchart of an exemplary group communication
in which media files are shared before a group call is setup and a
subsequent talk spurts refers to a previously shared media file,
such that the media file does not need to be shared before or
during the subsequent talk spurt. At 1705, a group call is
in-progress between PTT clients 310, 312, and 314 and media files
X, Y, and Z have been provisioned to the group members. At 1710,
PTT client 310 obtains the floor and selects media file X to start
a PTT talk spurt. At 1715, PTT client 310 transmits the talk spurt
and an index or other reference to media file X. At 1720 and 1725,
upon receiving the index to media file X, PTT clients 312 and 314,
respectively, transition their UEs to display (or play) media file
X.
[0124] At 1730, PTT client 314 obtains the floor and selects media
file Y to start a PTT talk spurt. At 1735, PTT client 314 transmits
the talk spurt and an index or other reference to media file Y. At
1740 and 1745, upon receiving the index to media file Y, PTT
clients 310 and 312, respectively, transition their UEs to display
(or play) media file Y.
[0125] FIG. 18 is a flowchart of exemplary first and second group
communications, where media files are shared before the first group
communication and therefore do not need to be shared before the
second group communication. At 1805, media files X, Y, and Z are
provisioned to the group members, here PTT clients 310, 312, and
314. At 1810, the user of PTT client 310 presses an on-screen
representation of media file X (already pre-shared) as if it were a
PTT button to start a PTT group call. In the embodiment of FIG. 18,
pressing the representation of media file X causes PTT client 310
to transmit, at 1815, a PTT call start request with an index or
other reference to media file X.
[0126] At 1820 and 1825, upon receiving the index to media file X,
PTT clients 312 and 314, respectively, transition their UEs to
display (or play) media file X. At 1830, the group call ends.
[0127] At 1835, the user of PTT client 314 presses an on-screen
representation of media file Y as if it were a PTT button to start
a PTT group call. At 1840, PTT client 314 determines whether media
file Y has already been provisioned to the group members of the PTT
group call. If it has, as in the embodiment of FIG. 18, then at
1815, PTT client 314 transmits a PTT call start request with an
index or other reference to media file Y. If media file Y has not
been shared with the group members, or not all of the group
members, then the PTT server (not shown) shares media file Y with
the group members that do not have it before or at the beginning of
the group call, as described above.
[0128] At 1850 and 1855, upon receiving the index to media file Y,
PTT clients 310 and 312, respectively, transition their UEs to
display (or play) media file Y.
[0129] In view of the methods being executable on a mobile device
and other computer platforms, the method can accordingly be
performed by a program resident in a computer readable medium,
where the program directs the mobile device or other computer
device having a computer platform to perform the steps of the
method. The computer readable medium can be the memory of the
server, or can be in a connective database. Further, the computer
readable medium can be in a secondary storage media that is
loadable onto a wireless communications device computer platform,
such as a magnetic disk or tape, optical disk, hard disk, flash
memory, or other storage media as is known in the art.
[0130] 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.
[0131] While the invention has been particularly shown and
described with reference to a preferred embodiment thereof, it will
be understood by those skilled in the art that various changes in
form and detail may be made without departing from the scope of the
present invention as set forth in the following claims.
Furthermore, although elements of the invention may be described or
claimed in the singular, the plural is contemplated unless
limitation to the singular is explicitly stated.
* * * * *