Abstract: A method for establishing a video call between a calling party and a called party comprising, generating a conference code for being sent to the calling party and the called party for joining the video call. Transmitting the conference code to a communication device (102) of the calling party for joining the video call as a video participant. Sending the conference code to a first communication device (102) of the called party for joining the video call as an audio participant. The first communication device (102) of the called party currently does not support the video call. Transmitting the conference code to a second communication device (102) of the called party for joining the video call. Establishing the video call between the communication device (102) of the calling party, the first communication device (102) of the called party, and the second communication device (102) of the called party.
FIELD OF INVENTION
[0001] The present subject matter relates to establishing a video call in a communication
network, and particularly but not exclusively, to establishing a video call in a communication
5 network.
BACKGROUND
[0002] With recent advances in technology and growing competition, service providers are
offering a large number of multimedia services that are accessible using various communication
devices. Examples of the multimedia services include, but are not limited to, audio and video
10 downloading/streaming, voice communications, video communications, and conference
communications. For example, the communication devices, such as mobile phones may have
integrated cameras and video call applications that enable the users to make and receive video
calls. Further, the users of the communication devices may employ other video call applications,
such as Session Initiation Protocol (SIP) applications that allow the users to make and receive
15 video calls over Internet Protocol (IP) networks.
SUMMARY
[0003] This summary is provided to introduce concepts related to providing group alerts
over a telecommunication network. This summary is not intended to identify essential features of
the claimed subject matter nor is it intended for use in determining or limiting the scope of the
20 claimed subject matter.
[0004] In one implementation, a method for establishing a video call between a calling
party and a called party is described. The method includes generating a conference code for
being sent to the calling party and the called party for joining the video call. The method further
includes transmitting the conference code to a communication device of the calling party for
25 joining the video call as a video participant. Further, the method includes sending the conference
code to a first communication device of the called party for joining the video call as an audio
participant, where the first communication device of the called party currently does not support
the video call. The method further includes transmitting the conference code to a second
communication device of the called party for joining the video call, where the second
3
communication device of the called party supports the video call. Further, the method includes
establishing the video call between the communication device of the calling party, the first
communication device of the called party, and the second communication device of the called
party. Further, the conference code is generated when a video call request sent by the calling
5 party is rejected by the called party.
[0005] In another implementation, a communication system for establishing a video call
between a calling party and a called party is described. The communication system includes an
application server to transmit a conference code to a communication device of the calling party
for joining the video call as a video participant. The application server further sends the
10 conference code to a first communication device of the called party for joining the video call as
an audio participant, where the first communication device of the called party currently does not
support the video call. The application server further transmits the conference code to a second
communication device of the called party for joining the video call for recording audio data and
video data associated with the video call, where the second communication device of the called
15 party supports the video call. Further, the communication system includes a media server to
establish the video call between the communication device of the calling party, the first
communication device of the called party, and the second communication device of the called
party. Further, the conference code is transmitted when a video call request sent by the calling
party is rejected by the called party.
20 [0006] In another implementation, an application server for establishing a video call
between a calling party and a called party is described. The application server includes a
processor and a request processing module coupled to the processor. The request processing
module receives a call rejection message from the called party indicating that the called party has
not accepted a video call request initiated by the calling party. Further, the application server
25 includes a call initiation module coupled to the processor to transmit a conference code to a
communication device of the calling party for joining the video call as a video participant. The
call initiation module further sends the conference code to the first communication device of the
called party for joining the video call as an audio participant, where the first communication
device of the called party currently does not support the video call. Further, the call initiation
30 module transmits the conference code to a second communication device of the called party for
4
joining the video call for recording audio data and video data associated with the video call,
wherein the second communication device of the called party supports the video call. Further, the
call rejection message is received when a first communication device associated with the called
party currently doe not support video communication and rejects a video call request initiated by
5 the calling party.
[0007] In another implementation, a non-transitory computer-readable medium having
embodied thereon a computer program for executing a method for executing a method of
establishing a video call between a calling party and a called party is described. The method
includes generating a conference code for being sent to the calling party and the called party for
10 joining the video call. The method further includes transmitting the conference code to a
communication device of the calling party for joining the video call as a video participant.
Further, the method includes sending the conference code to a first communication device of the
called party for joining the video call as an audio participant, where the first communication
device of the called party currently does not support the video call. The method further includes
15 transmitting the conference code to a second communication device of the called party for
joining the video call, where the second communication device of the called party supports the
video call. Further, the method includes establishing the video call between the communication
device of the calling party, the first communication device of the called party, and the second
communication device of the called party. Further, the conference code is generated when a
20 video call request sent by the calling party is rejected by the called party.
BRIEF DESCRIPTION OF THE FIGURES
[0008] The detailed description is described with reference to the accompanying figures.
In the figures, the left-most digit(s) of a reference number identifies the figure in which the
reference number first appears. The same numbers are used throughout the figures to reference
25 like features and components. Some embodiments of system and/or methods in accordance with
embodiments of the present subject matter are now described, by way of example, and with
reference to the accompanying figures, in which:
[0009] Figure 1 illustrates an exemplary communication network environment
implementing a communication system for establishing a video call between a calling party and a
30 called party, according to an embodiment of the present subject matter;
5
[0010] Figure 2 illustrates components of the communication system for establishing the
video call, in accordance with an embodiment of the present subject matter;
[0011] Figure 3 illustrates an exemplary call flow diagram indicating procedures of
establishing the video call in an Internet Protocol Multimedia Sub-system (IMS) network,
according to an embodiment 5 nt of the present subject matter; and
[0012] Figure 4 illustrates a method of establishing a video call between a calling party
and a called party, in accordance with an embodiment of the present subject matter.
[0013] In the present document, the word "exemplary" is used herein to mean "serving as
an example, instance, or illustration." Any embodiment or implementation of the present subject
10 matter described herein as "exemplary" is not necessarily to be construed as preferred or
advantageous over other embodiments.
[0014] It should be appreciated by those skilled in the art that any block diagrams herein
represent conceptual views of illustrative systems embodying the principles of the present
subject matter. Similarly, it will be appreciated that any flow charts, flow diagrams, state
15 transition diagrams, pseudo code, and the like represent various processes which may be
substantially represented in computer readable medium and so executed by a computer or
processor, whether or not such computer or processor is explicitly shown.
DESCRIPTION OF EMBODIMENTS
[0015] Systems and methods for establishing a call in a communication network are
20 described. The systems and methods can be implemented in a variety of communication devices.
The communication devices that can implement the described method(s) include, but are not
limited to, mobile phones, hand-held devices, laptops or other portable computers, personal
digital assistants (PDAs), notebooks, tablets, and the like.
[0016] In recent years, advances have been made in implementation of communication
25 networks and devices that may be capable of supporting multimedia content, such as video files.
A large number of multimedia services, such as audio and video downloading/streaming, voice
communications, video communications, and conference communications are nowadays being
offered by service providers. In this respect, a standardized architecture, known as Internet
6
Protocol (IP) Multimedia Subsystem (IMS), is defined for offering multimedia services in a
packet switched based domain to users, whereby the service provider providing the IMS
services, controls the services offered by the IMS. Although the description herein is with
reference to an Internet Protocol (IP) Multimedia Sub-system (IMS) network, the methods and
systems may be implemented 5 plemented in other networks providing video calling service, albeit with a few
variations, as will be understood by a person skilled in the art.
[0017] From among multiple services provided by the IMS network, a user may utilize
video calling service to communicate with other users connected to different networks or located
at different geographic locations at any given instance. In order to place a video call a first user,
10 say, a calling party may call a second user, say, a called party using a video supported
communication device. The video call may be placed on the called party’s communication
device using the IMS network. However owing to network incapability, at times the video calls
may not be accomplished between the two users. For example, if network bandwidth of one of
the users does not support the video calls, the video calls may not be established between them.
15 This may be inconvenient to the users. In addition, there may be scenarios where the
communication device of the called party does not support particular codec formats requested by
the calling party for establishing the video call. The video call may thus not get established
between the two users, causing inconvenience to the users.
[0018] Further, since placing the video calls requires advanced and costly
20 communication devices supporting video codec formats, all users may not be able to utilize the
video call services provided by the service provider. For example, users using less advanced or
basic communication devices that do not support multimedia content may neither receive nor
establish video calls with other users. Thus, when the calling party using video supported
devices, such as video-capable mobile phones and personal computers attempt to make video
25 calls with the called party using video un-supported devices, such as non-video-capable mobile
phones, non-video-capable personal computers, and audio telephones they may not be able to
connect with the called party, due to lack of capabilities of the video un-supported devices.
[0019] In response to such attempts to establish the video calls with the called party using
the video un-supported devices, the video calls may be dropped by the video un-supported
30 devices. This may result in the video un-supported devices sending error messages to the video
7
supported devices, stating that the video calls cannot be completed. At many instances, the video
un-supported devices may prompt the calling party to send audio messages, e-mail messages or
to terminate the video calls and initiate voice calls instead. In above scenario, the video unsupported
devices typically fail to effectively utilize the video features of the video supported
devices, 5 thereby degrading experiences of the users of the video supported devices.
[0020] According to an implementation of the present subject matter, system(s) and
method(s) for establishing a video call in a communication network are described. The system(s)
and method(s) facilitate a first user having a video supported communication device to establish
a call, such as a video call with a second user having a first communication device that at present
10 is not able to support video calls. The first user is hereinafter referred to as a calling party, while
the second user is hereinafter referred to as a called party. The calling party may engage in the
video call with the called party such that the calling party may join the video call as a video
participant whereas the called party may join the video call as an audio participant using the
video first communication device. Further, the calling party may record an audio feed of the
15 calling party and a video feed of the called party in a second communication device associated
with the calling party that at present can support the video call. The second communication
device of the calling party may be registered as multiscreen device in a multiscreen profile of the
calling party.
[0021] In said embodiment, a calling party utilizing a communication device capable of
20 supporting video calls may try to establish a video call with a called party utilizing a first
communication device that currently does not support the video call. This may lead to rejection
of the video call initiated by the calling party by the called party due to lack of capabilities of the
first communication device. In one implementation, the first communication device may be a
video un-supported device and may thus not be able to support the video call. In another
25 implementation, the first communication device, may although be a video supported device, but
may not have particular codecs needed for supporting a media format used by the
communication device of the calling party for the video call and may thus not be able to
currently support the video call. In yet another implementation, the first communication device,
may although be a video supported device, but may not be able to currently support the video
30 call due to network incapability, for example, due to network bandwidth shortage.
8
[0022] In such scenarios, a communication system of the of the communication network,
such as an IMS network may facilitate the called party to participate in the video call with the
calling party by joining as an audio participant using the first communication device and
recording the video call in the second communication device. In one implementation, the called
party may initially send a call rejection 5 jection message to an application server of the communication
system indicating that the first communication device associated with the called party can not
currently support the video call inform. Upon receiving the call rejection message, the
application server may request a media server of the communication network to play a video
recording announcement on the first communication device of the called party to provide a join
10 conference option to the called party for joining the video call with the calling party as an audio
participant and recording the video call in the second communication device. Upon receiving a
confirmation of the called party’s acceptance of the join conference option, the media server may
inform the application server, which in turn may request the media server to initiate a conference
facility for establishing the video call.
15 [0023] Subsequently, the media server may generate a conference code for being sent to
the calling party and the called party for joining the video call. The video call, in one
implementation, may be conducted as conference call or a Voice over Internet Protocol (VoIP)
call. The conference code in such a case may be a Unique Resource Identifier (URI) that may be
used by the communication devices of the calling party and the called party for joining the video
20 call. The application server may subsequently transmit the conference code to the
communication device of the calling party, the first communication device of the called party
and the second communication device of the called party. On receiving the conference code, the
communication device of the calling party may send a conference call request to the media
server for joining the video call as a video participant. The first communication device of the
25 called party may send a first conference join request to the media server for joining the video call
as the audio participant. The second communication device of the called party may send a second
conference join request to the media server for joining the video call for recording audio data and
video data associated with the video call. The media server, in one implementation, may merge
the audio data, i.e., audio stream from the first communication device and the video data, i.e.,
30 video stream from the communication device of the calling party and provide the same to the
9
second communication device for recording. The called party may thus access the second
communication device to watch the recorded video and audio call in future.
[0024] The system(s) and method(s) of the present subject matter thus facilitate the
calling party to establish a video call with the called party even when the first communication
device of the user can not support the video call. The present subject 5 matter facilitates the called
party to join the video call as the audio participant. Further, the called party may view the
recorded video call later. This may avoid failure of the video call between the calling party and
the called party.
[0025] It should be noted that the description and figures merely illustrate the principles
10 of the present subject matter. It will thus be appreciated that those skilled in the art will be able to
devise various arrangements that, although not explicitly described or shown herein, embody the
principles of the present subject matter and are included within its spirit and scope. Furthermore,
all examples recited herein are principally intended expressly to be for pedagogical purposes to
aid the reader in understanding the principles of the present subject matter and the concepts
15 contributed by the inventor(s) to furthering the art, and are to be construed as being without
limitation to such specifically recited examples and conditions. Moreover, all statements herein
reciting principles, aspects, and embodiments of the present subject matter, as well as specific
examples thereof, are intended to encompass equivalents thereof.
[0026] It will also be appreciated by those skilled in the art that the words during, while,
20 and when as used herein are not exact terms that mean an action takes place instantly upon an
initiating action but that there may be some small but reasonable delay, such as a propagation
delay, between the initial action and the reaction that is initiated by the initial action.
Additionally, the words “connected” and “coupled” are used throughout for clarity of the
description and can include either a direct connection or an indirect connection.
25 [0027] The manner in which the systems and the methods of the present subject matter
may be implemented has been explained in details with respect to the Figures 1 to 4. While
aspects of described system(s) and method(s) of the present subject matter can be implemented
in any number of different computing systems, environments, and/or configurations, the
embodiments are described in the context of the following system(s).
10
[0028] Figure 1 illustrates an exemplary an exemplary communication network
environment 100 implementing a communication system for establishing a video call between a
calling party and a called party, according to an embodiment of the present subject matter. The
communication network environment 100 includes one or more communication devices 102-1,
102-5 2, 102-3,…., 102-N communicating with each other through an IMS network 104. The
communication devices 102-1, 102-2, 102-3,…, 102-N are hereinafter collectively referred to as
communication devices 102 and individually referred to as communication device 102. The
communication devices 102 are used by different users to communicate with each other and
establish session between different users. Further, the users utilizing the communication devices
10 102 may have subscribed to services provided by the IMS network 104 to utilize one or more
services through the IMS network 104. The IMS network 104 as will be understood, is an IP
based communication network capable of facilitating the communication devices 102 to
simultaneously handle voice, data, and video.
[0029] Examples of the communication devices 102, include but are not limited to, smart
15 phones, mobile phones, PDA, tablets, hand-held devices, laptops, desktop computers, and
network computers. Each of the communication devices 102 works on a communication protocol
as defined by the IMS network 104 to which the communication devices 102 are
communicatively coupled. In one implementation, users of one or more of the communication
devices 102 may be registered with IMS network 104 as multiscreen users for availing
20 multiscreen TV series. As will be understood, the multiscreen TV service facilitates linking
several communication devices 102, such as TV, computer, and mobile delivery of a single user
to a single user profile of the user for delivering multimedia content, such as videos to the
communication devices 102. The user in such a case may register the communication devices
102 with a communication system 106 of the IMS network 104 for availing the multiscreen
25 facility.
[0030] According to an embodiment of the present subject matter, a first user having a
video supported communication device, say, the communication device 102-1 may try to
establish a video call with a second user having a first communication device, say, the
communication device 102-2. For the purpose of explanation, the first user, who has initiated the
30 video call, may be hereinafter referred to as the calling party and the second user at the receiving
end may be referred to as the called party. In one implementation, the first communication
11
device 102-2 may currently not support the video call due to which the called party may reject
video call request received from the communication device 102-1 of the calling party. In one
implementation, the first communication device 102-1 may be a video un-supported device and
may thus not be able to support the video call. In another implementation, the first
communication device 102 may although be a video supported 5 device, but may not be able to
currently support the video call. For instance, the network to which the first communication
device 102-2 is currently connected may not support video call, for example, due to network
bandwidth shortage. Further, the first communication device 102-2, may although be a video
supported device, but may not have particular codecs needed for supporting a media format used
10 by the communication device 102-1 for the video call and may thus not be able to currently
support the video call.
[0031] The communication system 106 in such a case may facilitate the called party to
engage in the video call by joining as an audio participant using the first communication device
102-2 and recording the video call in a second communication device, say, the communication
15 device 102-3. The communication system 106 may include one or more application servers to
host and execute services subscribed by the users. For instance, the communication system 106
may include an application server 108 for hosting and executing services for the called party.
The called party may have the first communication device 102-2 and the second communication
device 102-3 registered with the application server 108 for availing multiscreen services. The
20 communication system 106 may further include one or more media servers to mix audio and
video streams. In one implementation of the present subject matter, the communication system
106 may include a media server 110 for the called party. For the sake of brevity, Figure 1
illustrates the communication system 106 having the application server 108 and the media server
110 for the communication devices 102-2 and 102-3; however it may be understood that an
25 application server and a media server may also be associated with other communication devices
102-1,…, 102-N. Further, one or more communication device 102 may be registered with the
same application server and the media server.
[0032] In one implementation, the application server 108 may initially receive a call
rejection message from the first communication device 102-2 of the called party indicating that
30 the first communication device 102-2 can not currently support the video call as requested by the
calling party. The application server 108 may subsequently request the media server 110 to
12
provide a join conference option to the called party for joining the video call as an audio
participant using the first communication device 102-2 and recording the video call in the second
communication device 102-3. The media server 110, in turn, may play a video recording
announcement on the first communication device 102-2 of the called party to provide the join
conference option. Upon receiving an acceptance message from 5 the first communication device
102-2 confirming the called party’s acceptance of the join conference option, the media server
110 may inform the application server 108. The application server 108 may in turn request the
media server 108 to establish a video call between the called party and the calling party. The
video call, in one implementation, may be conducted as conference call or a Voice over Internet
10 Protocol (VoIP) call. The media server 110 may thus initiate a conference facility for
establishing the video call and generate a conference code to be used by the called party and the
calling party for joining the video call. In one example, the conference code may be a Unique
Resource Identifier (URI) that may be used by the communication devices 102 of the calling
party and the called party for joining the video call.
15 [0033] Subsequently, the application server 108 may transmit the conference code to the
communication device 102-1 of the calling party for re-initiating the video call. On receiving the
conference code, the communication device 102-1 of the calling party may send a conference
call request to the media server 110 for joining the video call as a video participant. In one
implementation, the communication device 102-1 may include the conference code in the call
20 request for indicating a call address to be used for the video call. The application server 108 may
further transmit the conference code to the first communication device 102-2 and the second
communication device 102-3 of the calling party. In response, the first communication device
102-2 of the called party may send a first conference join request to the media server 110 for
joining the video call as the audio participant. Further, the second communication device 102-3
25 of the called party may send a second conference join request to the media server 110 for joining
the video call for recording audio data and video data associated with the video call. Upon
receiving the call requests, the media server 110 may establish the video call and merge the
audio data from the first communication device 102-2 and the video data from the
communication device 102-1 of the calling party. The media server 110 may provide the mixed
30 audio and video data to the second communication device 102-3 for recording. The called party
13
may thus access the second communication device 102-3 to watch the recorded video and audio
call in future.
[0034] Figure 2 illustrates components of the communication system 106 for establishing
the video call, in accordance with an embodiment of the present subject matter. As previously
described, the communication system 106 may include the application server 5 rver 108 and the media
server 110 for establishing the video call between the calling party and the called party. In said
embodiment, the application server 108 and the media server 110 include processors 202-1, 202-
2, respectively. The processors 202-1, 202-2, collectively referred to as processor(s) 202
hereinafter, may be implemented as one or more microprocessors, microcomputers,
10 microcontrollers, digital signal processors, central processing units, logic circuitries, and/or any
devices that manipulate signals based on operational instructions. Among other capabilities, the
processor(s) 202 fetches and executes computer-readable instructions stored in the memory.
[0035] The functions of the various elements shown in the figure, including any
functional blocks labeled as “processor(s)”, may be provided through the use of dedicated
15 hardware as well as hardware capable of executing software in association with appropriate
software. When provided by a processor, the functions may be provided by a single dedicated
processor, by a single shared processor, or by a plurality of individual processors, some of which
may be shared. Moreover, explicit use of the term “processor” should not be construed to refer
exclusively to hardware capable of executing software, and may implicitly include, without
20 limitation, digital signal processor (DSP) hardware, network processor, application specific
integrated circuit (ASIC), field programmable gate array (FPGA), read only memory (ROM) for
storing software, random access memory (RAM), non-volatile storage. Other hardware,
conventional and/or custom, may also be included.
[0036] The application server 108 and the media server 110 include I/O interface(s) 204-
25 1 and 204-2, respectively. The I/O interface(s) 204-1 and 204-2, hereinafter collectively referred
to as I/O interfaces 204, may include a variety of software and hardware interfaces that allow the
application server 108 and the media server 110 to interact with the IMS network 104 and with
each other. Further, the I/O interfaces 204 may enable the application server 108 and the media
server 110 to communicate with other communication and computing devices, such as web
30 servers and external repositories.
14
[0037] The application server 108 and the media server 110 may include memory 206-1
and 206-2, respectively, collectively referred to as memory 206. The memory 206-1 and 206-2,
collectively referred to as memory 206 hereinafter, may be coupled to the processor 202-1, and
the processor 202-2, respectively. The memory 206 may include any computer-readable medium
known in the art including, for example, volatile 5 atile memory (e.g., RAM), and/or non-volatile
memory (e.g., EPROM, flash memory, etc.).
[0038] The application server 108 and the media server 110 further include modules 208-
1, 208-2, and data 210-1, 210-2, respectively, collectively referred to as modules 208 and data
210, respectively. The modules 208 include routines, programs, objects, components, data
10 structures, and the like, which perform particular tasks or implement particular abstract data
types. The modules 208 further include modules that supplement applications on the application
server 108 and the media server 110, for example, modules of an operating system.
[0039] Further, the modules 208 can be implemented in hardware, instructions executed
by a processing unit, or by a combination thereof. The processing unit can comprise a computer,
15 a processor, such as the processor 202, a state machine, a logic array or any other suitable
devices capable of processing instructions. The processing unit can be a general-purpose
processor which executes instructions to cause the general-purpose processor to perform the
tasks or, the processing unit can be dedicated to perform the functions.
[0040] In another aspect of the present subject matter, the modules 208 may be machine20
readable instructions (software) which, when executed by a processor/processing unit, perform
any of the described functionalities. The machine-readable instructions may be stored on an
electronic memory device, hard disk, optical disk or other machine-readable storage medium or
non-transitory medium. In one implementation, the machine-readable instructions can be also be
downloaded to the storage medium via a network connection. The data 210 serves, amongst
25 other things, as a repository for storing data that may be fetched, processed, received, or
generated by one or more of the modules 208.
[0041] In an implementation, the modules 208-1 of the application server 108 include a
request processing module 212, a call initiation module 214, and other module(s) 216. In said
implementation, the data 210-1 of the application server 108 includes call request data 218, call
15
initiation data 220, and other data 222. The other module(s) 216 may include programs or coded
instructions that supplement applications and functions, for example, programs in the operating
system of the application server 108, and the other data 222 comprise data corresponding to one
or more other module(s) 216.
[0042] Similarly, in an implementation, the modules 5 208-2 of the media server 110
include an assignment module 224, a call establishing module 226, and other module(s) 228. In
said implementation, the data 210-2 of the media server 110 includes assignment data 230, call
data 232, and other data 234. The other module(s) 228 may include programs or coded
instructions that supplement applications and functions, for example, programs in the operating
10 system of the media server 110, and the other data 234 comprise data corresponding to one or
more other module(s) 228.
[0043] As described earlier, the communication system 106 may facilitate the called
party using a video un-supported device to join a video call as a conference call initiated by a
calling party using a video supported device. In operation, the calling party using the
15 communication device 102-1, i.e., a video supported device may send a video call request to the
first communication device 102-2 of the called party. The video call request may include details
regarding the destination of the called party and an address where the calling party wishes to
receive further Session Initiation Protocol (SIP) requests from the called party. Such details are
available in a contact header field of the video call request. The call request may thus include the
20 address and location details of the called party along with the address and location details of the
calling party. In one implementation, the calling party may send the video call request using a
caller identification number, say, a Mobile Station International Integrated Services for Digital
Network or a Mobile Station Integrated Services for Digital Network (MSISDN) number
associated with the first communication device 102-2 of the called party.
25 [0044] Upon receiving the video call request, the first communication device 102-2 may
determine what type of call has been requested by the calling party and whether it can support
the call. For instance, in case the first communication device 102-2 is a video un-supported
device, the called party may determine that it can not accept the video call request using the first
communication device 102-2. Further, in case the first communication device 102-2 is a video
30 supported device, the first communication device 102-2 may ascertain whether it has the
16
particular codecs requested by the communication device 102-1 for the video call and determine
that it can not accept the video call request if the particular codecs are not present. Further, in
case the first communication device 102-2 is a video supported device and has the particular
codecs, the called party may try to accept the video call request. However, in case the network is
not able to support the video call, the called party may determine 5 ine that the first communication
device 102-2 can not support the video call at present. On ascertaining that the first
communication device 102-2 can not support the video call, the called party may send a call
rejection message to the application server 108 indicating that the first communication device
102-2 can not support the video call. In one implementation, the called party may send a 606
10 (Not Acceptable) request as the call rejection message, via the first communication device 102-2,
to the application server 108.
[0045] The call rejection message may be received by the request processing module 212
of the application server 108. The request processing module 212 may subsequently analyze the
the call rejection message to determine the reason of call rejection. The 606 (Not Acceptable)
15 request, i.e., the call rejection message may include a contact header field having a reason for not
acceptance of the video call request. The contact header may be a warning header with a "304"
code indicating that the media type is not available with the first communication device 102-2 or
a warning header with a "305" code indicating that the media format is not compatible with the
first communication device 102-2. The request processing module 212 may subsequently analyze
20 a user profile of the calling party to determine if the calling party has registered any other
communication device 102 as a multiscreen device with the application server 108. On
determining the second communication device 102-3 to be registered as a multiscreen device
associated with called party, the request processing module 212 determines whether the second
communication device 102-3 can currently support the video call. In case the second
25 communication device 102-3 can support the video call, the request processing module 212 may
send an announcement playback request to the media server 110 for providing a join conference
option to the called party for joining the video call as an audio participant using the first
communication device 102-2 and recording the video call in the second communication device
102-3. The request processing module 212 may further save the call rejection message in the call
30 request data 218.
17
[0046] Upon receiving the announcement playback request, the assignment module 224
sends an invite message to the first communication device 102-2 requesting permission from the
called party for playing an announcement. On receiving the permission from the called party, the
assignment module 224 may play the video recording announcement on the first communication
device 102-2 of the called party to provide the join conference 5 ce option. In one implementation,
the assignment module 224 may play the video recording announcement as a Real-Time
Transport Protocol (RTP) announcement. In case the called party wishes to join the video call as
an audio participant using the first communication device 102-2 and recording the video call in
the second communication device 102-3, the called party may send, via the first communication
10 device 102-2, the call acceptance message to the assignment module 224. In one implementation,
the acceptance message may include an acceptance code confirming the called party’s agreement
for joining the video call as the audio participant using the first communication device and
recording the video call in the second communication device. The assignment module 224 may
analyze the acceptance message to obtain the acceptance code and save the same in the
15 assignment data 230. The assignment module 224 may further send the acceptance code to the
application server 108.
[0047] Upon receiving the acceptance code, the request processing module 212 of the
application server 108 may analyze the acceptance code to determine if the called party has
accepted the join conference option. On determining that the called party has accepted the join
20 conference option, the call initiation module 214 may send a conference initiation message to the
media server 110 inviting the media server 110 to initiate the video call. Further, the request
processing module 212 may save the acceptance code in the assignment data 230.
[0048] In one implementation, the assignment module 224 may receive the conference
initiation message from the application server 108. The assignment module 224 may
25 subsequently assign a call address, such as a URI code for the call. Accordingly, the media
server 110 may act as a conferencing server for the video call. In one implementation, the call
address may include a Public User Identity (PUI) of the participants of the video call. The PUI
may define details regarding the participants of the video call, such as their address and location.
The assignment module 224 may further save the conference code in the assignment data 230.
30 Subsequently, the call establishing module 226 may transmit the conference code to the
application server 108 for being provided to the calling party and the called party.
18
[0049] The conference code may be received by the call initiation module 214 of the
application server 108. The call initiation module 214 may subsequently transmit the conference
code to the communication device 102-1 of the calling party, the first communication device
102-2 of the called party, and the second communication device 102-3 of the called party. In one
implementation, the call initiation module 214 may initially 5 transmit the conference code to the
communication device 102-1 of the calling party requesting the calling party to re-initiate the
video call using the conference facility provided by the media server 110. On receiving the
conference code, the communication device 102-1 of the calling party may send the conference
call request, having the conference code indicating the call address to be used for the video call,
10 to the media server 110 for joining the video call as a video participant. The conference call
request may be received by the call establishing module 226 of the media server 110 and
analyzed to determine the conference code, and in turn the call address to identify the video call
to which the calling party has to be routed. Based on the conference code, the call establishing
module 226 may establish the video call.
15 [0050] The call initiation module 214 may further transmit the conference code to the
first communication device 102-2 and the second communication device 102-3 of the calling
party. On receiving the conference code, the first communication device 102-2 and the second
communication device 102-3 of the called party may send the first conference join request and
the second conference join request, respectively, to the media server 110 for joining the video
20 call. The first communication device 102-2 may send the first conference join request for joining
the video call as the audio participant, while the second communication device 102-3 may send
the second conference join request for joining the video call for recording the audio data and the
video data associated with the video call.
[0051] On receiving the conference join requests, the call establishing module 226 may
25 merge the first communication device 102-2 and the second communication device 102-3 in the
video call. In one implementation, the second communication device 102-3 may join the video
call over a RTP session established by the call establishing module 226 of the media server 110.
Further, the call establishing module 226 may merge the audio data from the first communication
device 102-2 and the communication device 102-1 and the video data from the communication
30 device 102-1 of the calling party. The call establishing module 226 may provide the mixed audio
and video data to the second communication device 102-3 for recording. The call establishing
19
module 226 may further save the mixed audio and video data in the call data 232. Once the call
is conducted, the called party may access the second communication device 102-3 to watch the
recorded video and audio call.
[0052] Figure 3 illustrates an exemplary call flow diagram 300 indicating procedures of
establishing the video call in the IMS network 104, according to an embodiment 5 nt of the present
subject matter. The various arrow indicators used in the call-flow diagram 300 depict the transfer
of data between the various entities in the IMS network 104 and between the communication
devices 102-1 and the various entities in the IMS network 104. Although the description of
Figure 3 has been made in considerable detail with respect to an IMS network, it will be
10 understood the announcements can be provided to communication device using other networks
as well, albeit with few alterations. Further, certain trivial steps have been omitted in the
sequence diagrams, for the sake of brevity and clarity.
[0053] In one implementation, the communication device 102-1 of the calling party sends
a video call request. As described in conjunction with Figure 2, a user, such as the calling party
15 utilizing a video supported device, such as the communication device 102-1 may initiate a video
call with the called party using the first communication device 102-2. In one implementation, the
communication device 102-1 sends an INVITE (1) request to the first communication device
102-2 and the same is indicated by step 302. The INVITE (1) request in one implementation
provides the video call request to the first communication device 102-2. The INVITE (1) request
20 may include session description protocol (SDP) parameters corresponding to the call request.
The SDP parameters may indicate the type of session requested by the communication device
102-1. In an implementation, the first communication device 102-2 may not be able to currently
support the video call. Accordingly, the first communication device 102-2 may send a 606 NOT
ACCEPTABLE message to the application server 108 and the same is indicated by step 304. The
25 606 NOT ACCEPTABLE message may include a warning header indicating a code representing
the reason for rejection of the video call request. The 606 NOT ACCEPTABLE, in one
implementation, provides the call rejection message to the application server 108.
[0054] On receiving the 606 NOT ACCEPTABLE message, the application server 108
sends an INVITE (2) request to the media server 110 and the same is indicated by step 306. The
30 INVITE (2) request may include instructions to play an announcement on the first
20
communication device 102-2 to activate a service of video call support for joining the video call
as an audio participant. The INVITE (2) request, in one implementation, provides the
announcement playback request to the media server 110. The media server 110 may
subsequently send an INVITE (3) request to the first communication device 102-2 indicating the
5 first communication device 102-2 to connect to an RTP session for listening to an
announcement, as indicated by step 308. The media server 110 may further set-up an RTP
session for playing a RTP video-audio stream for providing the video recording assignment, as
indicated by step 310. The RTP video-audio stream may provide the join conference option to
the called party for joining the video call with the calling party as the audio participant and
10 recording the video call in the second communication device. The first communication device
102-2 may accept the join conference option as indicated in the announcement and invoke a
service for joining the conference. The first communication device 102-2 may further share the
acceptance code while invoking the service.
[0055] The media server 110 may subsequently provide the acceptance code by sending
15 INFO to the application server 108 and the same is indicated by step 312. The application server
108 may further send an INVITE (4) request to the media server 110, asking the server to
generate the conference code for being used by the called party and the calling party for joining
the video call and the same is indicated by step 314. The media server 110, in response, may
share a 200 OK message with the application server 108, as indicated by step 316. Further, the
20 media server 110 may also share a call address, i.e., the conference code with the application
server 108 along with the 200 OK message. The call address may be assigned by the media
server 110 for the video call. The application server 108 may subsequently send a 302
RESPONSE to the communication device 102-1 and the same is indicated by step 318. The 302
RESPONSE message may include the conference code having the call address for the video call.
25 In response, the communication device 102-1 may send an INVITE (5) to the media server 110
and the same is indicated by step 320. The INVITE (5) message may be sent by the
communication device 102-1 for re-initiating the video call with the first communication device
102-2. The INVITE (5) message may include the call address for the video call. In one
implementation, the INVITE (5) may include the conference call request.
30 [0056] The application server 108 may further send REFERENCE (1) and REFERENCE
(2) message to the first communication device 102-2 and the second communication device 102-
21
3, respectively, as indicated by steps 322 and 324. The REFERENCE (1) and REFERENCE (2)
messages provide the conference code to calling party for joining the video call. The media
server 110 may subsequently establish the video call between the communication device 102-1,
the first communication device 102-2, and the second communication device 102-3. Further, the
media server 110 may set-up an RTP session for providing 5 RTP audio-video stream to the
second communication device 102-3 and the same is indicated by step 326. The RTP audiovideo
stream may include the audio data from the first communication device 102-2 and the
communication device 102-1 and the video data from the communication device 102-1 of the
calling party. In one implementation, the media server 110 may merge the audio data and the
10 video data and provide the mixed audio and video data to the second communication device 102-
3 for recording.
[0057] Figure 4 illustrates a method 400 of establishing a video call between a calling
party and a called party, in accordance with an embodiment of the present subject matter. The
order in which the method is described is not intended to be construed as a limitation, and any
15 number of the described method blocks can be combined in any order to implement the method
400 or any alternative methods. Additionally, individual blocks may be deleted from the methods
without departing from the spirit and scope of the subject matter described herein. Furthermore,
the method(s) can be implemented in any suitable hardware, software, firmware, or combination
thereof.
20 [0058] The method(s) may be described in the general context of computer executable
instructions. Generally, computer executable instructions can include routines, programs, objects,
components, data structures, procedures, modules, functions, etc., that perform particular
functions or implement particular abstract data types. The method may also be practiced in a
distributed computing environment where functions are performed by remote processing devices
25 that are linked through a communications network. In a distributed computing environment,
computer executable instructions may be located in both local and remote computer storage
media, including memory storage devices.
[0059] A person skilled in the art will readily recognize that steps of the method(s) can
be performed by programmed computers. Herein, some embodiments are also intended to cover
30 program storage devices, for example, digital data storage media, which are machine or
22
computer readable and encode machine-executable or computer-executable programs of
instructions, where said instructions perform some or all of the steps of the described method.
The program storage devices may be, for example, digital memories, magnetic storage media,
such as a magnetic disks and magnetic tapes, hard drives, or optically readable digital data
storage media. The embodiments are also 5 intended to cover both communication network and
communication devices configured to perform said steps of the exemplary method(s).
[0060] At block 402, a call rejection message is received from a called party for rejecting
a video call request sent by a calling party. In one implementation, the call rejection message
indicates that a first communication device associated with the called party cannot currently
10 support a video call. For example, the calling party, using a video supported device, such as the
communication device 102-1 may send the video call request to first communication device 102-
2 of the called party. The first communication device 102-2 may, however, not be able to
currently support the video call and the called party may thus send the call rejection message to
application server, indicating its inability to join the video call.
15 [0061] At block 404, a user profile of the called party is analyzed to determine if the
called party has registered a second communication device capable of support the video call. In
one implementation, upon receiving the call rejection message from the first communication
device, the application server may analyze the user profile of the called party to determine
whether the called party has registered the second communication device as a multiscreen device
20 with the IMS network hosting the communication devices and the application server.
[0062] At block 406, a video recording announcement is played on the first
communication device to provide a join conference option to the called party. In one
implementation, upon determining that the called party has registered the second communication
device, the application server may send an announcement playback request to the media server.
25 The media server may in turn play a video recording announcement on the first communication
device of the called party to provide a join conference option to the called party for joining the
video call with the calling party as the audio participant and recording the video call in the
second communication device.
[0063] At block 408, an acceptance message is received from the called party indicating
30 called party’s agreement for joining the video call as an audio participant using the first
communication device and recording the video call in the second communication device.
23
[0064] At block 410, a conference code is generated for being sent to the calling party
and the called party for joining the video call. In one implementation, the media server may
generate the conference. The video call, in one implementation, may be conducted as conference
call or a Voice over Internet Protocol (VoIP) call. The conference code in such a case may be a
Unique Resource Identifier (URI) that may be used 5 by the communication devices of the calling
party and the called party for joining the video call. The media server may share the conference
code with the application server for being sent to the calling party and the called party.
[0065] At block 412, the conference code is transmitted to a communication device of the
calling party, and the first communication device of the called party, the second communication
10 device of the called party for joining the video call. In one implementation, application server
may transmit the conference code to the communication device, the first communication device,
and the second communication device.
[0066] At block 414, the video call is established between the communication device of
the calling party, the first communication device of the called party, and the second
15 communication device of the called party. In one implementation, upon receiving the conference
code, the calling party may provide a conference call request to the media server for joining the
video call. Further, the first communication device of the called party may provide a first
conference join request for joining the video call as the audio participant, while the second
communication device of the called party may provide a second conference join request for
20 joining the video call for recording audio data and video data associated with the video call. The
media server may subsequently establish the video call.
[0067] Although embodiments for the present subject matter have been described in a
language specific to structural features and/or method(s), it is to be understood that the invention
is not necessarily limited to the specific features or method(s) described. Rather, the specific
25 features and methods are disclosed as exemplary embodiments of the present subject matter.
24
I/We claim:
1. A method for establishing a video call between a calling party and a called party, the method
comprising:
generating a conference code for being sent to the calling party and the called party for
joining the video 5 deo call;
transmitting the conference code to a communication device (102) of the calling party for
joining the video call as a video participant;
sending the conference code to a first communication device (102) of the called party for
joining the video call as an audio participant, wherein the first communication device (102) of
10 the called party currently does not support the video call;
transmitting the conference code to a second communication device (102) of the called
party for joining the video call, wherein the second communication device (102) of the called
party supports the video call; and
establishing the video call between the communication device (102) of the calling party,
15 the first communication device (102) of the called party, and the second communication device
(102) of the called party.
2. The method as claimed in claim 1, wherein the conference code is generated when a video call
request sent by the calling party is rejected by the called party.
3. The method as claimed in claim 1, wherein the generating the conference code further
20 comprises:
playing a video recording announcement on the first communication device (102) of the
called party to provide a join conference option to the called party for,
joining the video call with the calling party as the audio participant using the first
communication device (102); and
25 recording the video call in the second communication device (102);
receiving an acceptance message from the called party confirming the called party’s
agreement for joining the video call as the audio participant using the first communication device
(102) and recording the video call in the second communication device (102);
obtaining an acceptance code from the acceptance message indicating the called party’s
30 agreement for joining the video call; and
25
providing the acceptance code to an application server (108) indicating the called party’s
agreement for joining the video call.
4. The method as claimed in claim 1, wherein the method further comprising:
receiving a call rejection message from the called party for rejecting the video call
request sent by the calling party, wherein the call rejection message indicates that the firs5 t
communication device (102) associated with the called party currently does not support the video
call;
analyzing a user profile of the calling party to determine if the calling party has registered
the second communication device (102) with an application server (108);
10 determining if the second communication device (102) currently supports the video call;
and
sending an announcement playback request to a media server (110) requesting the media
server (110) to play a video recording announcement on the first communication device (102) of
the called party to provide a join conference option to the called party for joining the video call
15 as the audio participant and recording the video call in the second communication device (102).
5. The method as claimed in claim 1, wherein the establishing the video call further comprises:
receiving a conference call request from the calling party for joining the video call;
receiving a first conference join request from the first communication device (102) of the
called party for joining the video call as the audio participant; and
20 receiving a second conference join request from the second communication device (102)
of the called party for joining the video call for recording audio data and video data associated
with the video call.
6. A communication system (106) for establishing a video call between a calling party and a
called party, the communication system (106) comprising:
25 an application server (108) to,
transmit a conference code to a communication device (102) of the calling party
for joining the video call as a video participant;
send the conference code to a first communication device (102) of the called party
for joining the video call as an audio participant, wherein the first communication device
30 (102) of the called party currently does not support the video call; and
26
transmit the conference code to a second communication device (102) of the
called party for joining the video call for recording audio data and video data associated
with the video call, wherein the second communication device (102) of the called party
supports the video call; and
a media 5 dia server (110) to establish the video call between the communication device (102)
of the calling party, the first communication device (102) of the called party, and the second
communication device (102) of the called party.
7. The communication system (106) as claimed in claim 6, wherein the conference code is
transmitted when a video call request initiated by the calling party is rejected by the called party.
10 8. The communication system (106) as claimed in claim 6, wherein the application server (108)
further:
receives a call rejection message from the called party for rejecting the video call request
sent by the calling party, wherein the call rejection message indicates that the first
communication device (102) associated with the called party currently does not support the video
15 call;
analyzes a user profile of the called party to determine if the called party has registered
the second communication device (102) with the application server (108);
determines whether the second communication device (102) currently supports the video
call; and
20 transmits an announcement playback request to the media server (110) requesting the
media server (110) to play a video recording announcement on the first communication device
(102) of the called party to provide a join conference option to the called party for joining the
video call as the audio participant and recording the video call in the second communication
device (102).
25 9. The communication system (106) as claimed in claim 8, wherein the media server (110)
further:
plays the video recording announcement on the first communication device (102) of the
called party to provide a join conference option to the called party for,
joining the video call with the calling party as the audio participant using the first
30 communication device (102); and
recording the video call in the second communication device (102);
27
receives, from the called party, an acceptance message having an acceptance code
confirming the called party’s agreement for joining the video call as the audio participant using
the first communication device (102) and recording the video call in the second communication
device (102); and
provides the acceptance code to the application 5 on server (108) indicating the called party’s
agreement for joining the video call.
10. The communication system (106) as claimed in claim 6, wherein the media server (110)
further:
receives a conference call request from the calling party for joining the video call;
10 receives a first conference join request from the first communication device (102) of the
called party for joining the video call as the audio participant; and
receives a second conference join request from the second communication device (102)
of the called party for joining the video call for recording the audio data and the video data
associated with the video call.
15 11. An application server (108) for establishing a video call between a calling party and a called
party, the application server (108) comprising:
a processor (202);
a request processing module (212) coupled to the processor (202) to,
receive a call rejection message from the called party indicating that the called
20 party has not accepted a video call request initiated by the calling party, wherein the call
rejection message is received when a first communication device (102) associated with
the called party currently does not support video communication; and
a call initiation module (214) coupled to the processor (202) to,
transmit a conference code to a communication device (102) of the calling party
25 for joining the video call as a video participant;
send the conference code to the first communication device (102) of the called
party for joining the video call as an audio participant, wherein the first communication
device (102) of the called party currently does not support the video call; and
transmit the conference code to a second communication device (102) of the
30 called party for joining the video call for recording audio data and video data associated
28
with the video call, wherein the second communication device (102) of the called party
supports the video call.
12. The application server (108) as claimed in claim 11, wherein the request processing module
(212) further:
analyzes a user 5 er profile of the called party to determine if the called party has registered
the second communication device (102) with the application server (108), on receiving the call
rejection message;
determines whether the second communication device (102) currently supports the video
call; and
10 transmits an announcement playback request to a media server (110), requesting the
media server (110) to play a video recording announcement on the first communication device
(102) of the called party to provide a join conference option to the called party for,
joining the video call as the audio participant using the first communication
device (102); and
15 recording the video call in the second communication device (102).
13. A media server (110) for establishing a video call between a calling party and a called party,
the media server (110) comprising:
a processor (202);
an assignment module (224) coupled to the processor (202) to,
20 playing a video recording announcement on a first communication device (102) of
the called party to provide a join conference option to the called party for,
joining the video call with the calling party as an audio participant using
the first communication device (102); and
recording the video call in a second communication device (102),
25 wherein the video recording announcement is played when a video call request
initiated by the calling party is rejected by the called party;
generating a conference code for being provided to a communication device (102)
of the calling party, the first communication device (102) of the called party, and the
second communication device (102) of the called party for joining the video call;
30 a call establishing module (226) coupled to the processor (202) to,
29
establish the video call between the communication device (102) of the calling
party, the first communication device (102) of the called party, and the second
communication device (102) of the called party, wherein the communication device (102)
of the calling party provides video data associated with video call, the first
5 communication device (102) provides audio data associated with the video call, and the
second communication device (102) records the audio data and the video data.
14. The media server (110) as claimed in claim 13, wherein the assignment module (224) further
receives an acceptance message from the called party confirming the called party’s
agreement for joining the video call as the audio participant using the first communication device
10 (102) and recording the video call in the second communication device (102);
obtains an acceptance code from the acceptance message indicating the called party’s
agreement for joining the video call; and
provides the acceptance code to an application server (108) indicating the called party’s
agreement for joining the video call.
15 15. A non-transitory computer-readable medium having embodied thereon a computer program
for executing a method of establishing a video call between a calling party and a called party, the
method comprising:
generating a conference code for being sent to the calling party and the called party for
joining the video call;
20 transmitting the conference code to a communication device (102) of the calling party for
joining the video call as a video participant;
sending the conference code to a first communication device (102) of the called party for
joining the video call as an audio participant, wherein the first communication device (102) of
the called party currently does not support the video call;
25 transmitting the conference code to a second communication device (102) of the called
party for joining the video call for recording audio data and video data associated with the video
call, wherein the second communication device (102) of the called party supports the video call;
and
30
establishing the video call between the communication device (102) of the calling party,
the first communication device (102) of the called party, and the second communication device
(102) of the called party.
| # | Name | Date |
|---|---|---|
| 1 | SPEC IN.pdf | 2014-03-03 |
| 2 | GPOA.pdf | 2014-03-03 |
| 3 | FORM 5.pdf | 2014-03-03 |
| 4 | FORM 3.pdf | 2014-03-03 |
| 5 | FIG IN.pdf | 2014-03-03 |
| 6 | 572-DEL-2014-Correspondence-Others-(13-03-2014).pdf | 2014-03-13 |
| 7 | 572-DEL-2014-FER.pdf | 2018-03-12 |
| 8 | 572-DEL-2014-AbandonedLetter.pdf | 2019-01-17 |
| 1 | searchstrategy_572del2014_12-03-2018.pdf |