CN103338192B - Network node and method for setting up calling between a caller and a callee - Google Patents
Network node and method for setting up calling between a caller and a callee Download PDFInfo
- Publication number
- CN103338192B CN103338192B CN201310236142.3A CN201310236142A CN103338192B CN 103338192 B CN103338192 B CN 103338192B CN 201310236142 A CN201310236142 A CN 201310236142A CN 103338192 B CN103338192 B CN 103338192B
- Authority
- CN
- China
- Prior art keywords
- callee
- calling
- client
- sending out
- out notice
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M7/00—Arrangements for interconnection between switching centres
- H04M7/0024—Services and arrangements where telephone services are combined with data services
- H04M7/0057—Services where the data services network provides a telephone service in addition or as an alternative, e.g. for backup purposes, to the telephone service provided by the telephone services network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Telephonic Communication Services (AREA)
Abstract
Set up the network node, computer program product and method of calling between a caller and a callee by network.In order in caller's client of caller and implement to set up between one or more callee's clients in one or more callee's terminals of callee to call, multiple versions that calling is invited are sent.Multiple versions that calling is invited are sent by a variety of different pass through mechanism.One of pass through mechanism is included in the sending out notice pushed on channel.
Description
Related application
The application requires the Britain application No.1210600.1 submitted on June 14th, 2012 under 35 USC 119 or 365
Priority, the disclosure of which is integrally herein incorporated.
Background technology
In the presence of for by packet-based network as such as internet set up live packet-based speech or
The various communication systems of video call.For example, such system can use VoIP(Voice protocol on internet)Technology.One
The communication system for planting popular type is built in equity(P2P)In topology.In traditional P2P systems, each end user exists
His or she respective user terminal(For example, desktop computer or laptop computer, panel computer or hand held mobile phone)On
Communication customer end application is installed.Each user then to the server registration of P2P suppliers to obtain certification certificate.User is whole
Some of end is also by the node as distributed data base, and the user name of user in P2P communication systems is mapped to this and is by it
The address for each user terminal united in the network implemented thereon(Typically IP address).Then it can carry out finally using
Communication between family, and be not used in involving the server of centralization in call setup or verification process.Alternatively, in caller
Terminal on client query distributed data base one or more nodes(That is, it is related in any other manner in calling
Other end users(It is not necessarily themselves)One or more terminals), to determine the end of expected callee
The address at end.Then, calling invitation is sent to callee by caller using identified address, and callee uses
Calling receives response to be responded.Caller and callee exchange their certification certificate, so as to mutual authentication.
Each user also safeguards contacts list, and the contacts list can be stored on the server of P2P suppliers,
Make it that it is also available when User logs in is to different terminals.Other auxiliary informations, are such as used for each
The profile information at family(For example, avatar image or mood message), can also be stored on server.Moreover, client application
Also existence information is intercoursed.The availability of existence information instruction user(availability)State, it is preferable that it is extremely
Partially by user, he or she defines oneself.For example, existence can be offline with instruction user, it is online but has selected as not
It can use(" leaving in peace "), or it is online and selected to be available.For example, each client can connection of the poll at it periodically
It is each contact person in list, to determine their own existence, and/or each client can be existence more
Newly it is sent periodically to each contact person in its list.Existence typically according to P2P technologies directly end user it
Between signal, and without via server.When making a call, the client of caller is according to newest existence information
Determine whether callee can be used to receive the calling.
The content of the invention
In an embodiment of the present invention, network node be arranged to participate in by network caller and callee it
Between call setup.Network node includes transmitter apparatus, and it, which is arranged to send, is used for caller's client in caller
With implementing to set up between one or more callee's clients in one or more callee's terminals of callee
Multiple versions that the calling of calling is invited.Transceiver apparatus is arranged to send calling invitation by a variety of different pass through mechanism
Multiple versions.One of pass through mechanism is included in the sending out notice pushed on channel.
This summary is provided to introduce the selection of concept in simplified form, and these concepts are also by following detailed description
It is described in paragraph.This summary is both not intended to confirm the key feature or essential feature of theme claimed, does not also beat
Calculate limitation theme claimed.Theme claimed is also not necessarily limited to solve to have referred in any or all of of preceding system
Go out the realization of shortcoming.
Brief description of the drawings
In order to be best understood from how the present invention and the display present invention can put into practice, by way of example, refer to the attached drawing, its
In:
Fig. 1 is the schematic diagram of communication system;
Fig. 2 is another schematic diagram of communication system;
Fig. 3 is another schematic diagram of communication system;
Fig. 4 is the schematic diagram of two user terminals;And
Fig. 5 is the schematic diagram of two user terminals and NE.
Embodiment
The hand held mobile phone applied with communication customer end as can running such as VoIP client increasingly flows
OK, there is the increasing end points of quantity(endpoint)Available for participate in VoIP communication systems or it is other it is such, by because
In the packet-based communication system that spy's net etc. is implemented.However, it is also possible to which the problem of triggering is, mobile phone handsets are typically
There is more limited resource than traditional desktop computer or laptop computer, for example, time per unit can only be performed less
Process cycle, each process cycle has less feature, with more limited memory resource(For example, RAM and/or
Cache)And/or with less screen area resource.Therefore, the operating system in some terminals(OS)May be just
Some applications are placed in background state.This may include communication customer end.Under background state, the application on backstage or complete
Hang up or each unit interval is scheduled with limited process cycle, can not detect that the calling of entrance is invited to a certain extent
And/or the traditional calling of processing is invited.If for example, another application is just in foreground state(foreground state)Middle fortune
OK, particularly if other application is to concentrate in terms of processing, memory and/or source of screen(intensive), for example, transport
Row is in screen mode toggle or with some other states as current main, primary or preferential application, then this may send out
It is raw.One example is the computer game played on a cellular telephone.If it that case, client can not send presence
Property update or response the existence poll from other users, then user may be shown as from the point of view of his or her existence from
Line.Nevertheless, user still may want to can be used for receiving calling, for example, would rather break of video game also not missed call.
Therefore, traditional existence concept starts to be broken.Be conducive to one with some applications being placed in background state
The problem of potentially may occurring similar in any terminal of the feature of individual or a number of other applications.
For communication system as the conventional P2P systems such as implemented on a packet-based network may trigger it is another
One problem is the speed of call signaling, particularly calling by answer before taken how long, or determine calling not
By answer take how long.When this client that may work as callee is in background state as discussed above especially into
Problem, wherein caller he or she be apprised of with callee be it is unavailable before may have to wait for attempted calling and invite
Please time-out.If the timeout period is longer, such as 30-60 seconds so that even if originally the client of callee is suspended and
Just the calling can not be received at all, caller will also wait up to one minute before they have found that calling can not be carried out, then this
It is especially gloomy for caller.Call signaling delay may also occur in other types of communication system.
Some other types of communication systems notify communication event to give destination user terminal using sending out notice.Push away
It is under the excitation of server or another originating unit, rather than from service under the excitation of destination terminal in itself to send notice
The notice that device is sent(That is, it is opposite with being pulled by destination terminal).Therefore, sending out notice be seen as destination terminal different
Step.
When calling, which is invited, to be sent, it may be desirable to allow calling to invite and be delivered to callee with quick and reliable way
Client.Setup requests(Or " calling is invited ")It can be provided by a variety of pass through mechanism, to set up calling.Transmission machine
The mode being passed is invited in system description calling.For example, pass through mechanism may include the agreement invited by its transmission calling, and/or
Calling is invited and how route by network.For example, the pass through mechanism of three types is:(i) reciprocity mechanism, wherein calling is invited
It is route using peer protocol by network, the sending out notice mechanism of (ii) based on application layer, calling is invited by means of it
Client application in callee's end, and the sending out notice machine of (iii) based on operating system are pushed to by network
The operating system for being pushed to callee's terminal by network by means of it is invited in system, calling.Send the multiple of calling invitation
Version, which can reduce call set-up time and improve calling, invites the probability for being successfully delivered to the client of callee.Calling
The each version invited is related to same calling, it is possible to identify calling using calling ID.So, if callee is objective
Family termination receives multiple versions that calling is invited, then callee's client can determine that each version that calling is invited includes phase
Same calling ID, therefore they contribute to the version that the same calling of the calling is invited.Each version that calling is invited can
Including calling the invitation ID invited for identifying.Each version that this allows calling to invite is associated with calling invitation.Change sentence
Talk about, each version that inviting ID allows callee's client to determine that calling is invited is related to same calling and invited.If
Multiple callings, which are invited, to be sent for same calling, then this is particularly useful, and it causes each version that each calling is invited
Originally can be associated with correct calling invitation.
In embodiment, one of version that callee's client can be invited with answer calls(For example, will be in callee
First version that the calling received at client is invited), thus set up calling between a caller and a callee.In order to
Calling is set up, may only need to receive the version that calling is invited by callee's client.Each version invited due to calling
This is sent by different pass through mechanism, so compared with sending calling invitation by single pass through mechanism, from caller
The time that at least one version that the calling that client is sent to callee's client is invited is spent can be reduced.Moreover,
Because each version that calling is invited is sent by different pass through mechanism, so being exhaled with being sent by single pass through mechanism
Invitation is made to compare, the reliability at least one version that calling is invited is properly received at callee's client to be increased
Plus.
Pass through mechanism may include at least two following mechanism:(i) based on operating system push channel on based on
The sending out notice of operating system, (ii) pushes the application layer sending out notice on channel in application layer, and (iii) is passing through network
Peer message on peer to peer connection.By sending each version that calling is invited simultaneously on a variety of pass through mechanism, system can be
Special time using it is best no matter which kind of pass through mechanism(For example, most fast transmission or most reliable transmission).Condition has can
It can change, so that best a kind of pass through mechanism in pass through mechanism(For example, it have most fast transmission or it be most may be used
Lean on)It may change over time.
As noted, modern mobile devices can run communication customer end now such as hand held mobile phone
Using to be used for by packet-based network as such as internet, rather than only via the special honeybee of mobile phone
Nest voice channel, goes to perform packet-based communication or other packet-based speeches or video call as such as VoIP.
By this ability, online and number of users that is can calling huge increase is brought.However, the client of such user should
With may also potentially be found:At in calling in background state, thus, the operating system of client mobile device is hung
The calling for rising or being at most scheduled with very limited amount of resource-therefore in order to receive entrance, client needs to be waken up.
Under such operating system system-calling that wherein application no longer guarantees such as to enter in background process,
The structural system of event-VoIP or other communications providers as chat etc. will benefit from being extended.For example, such as
Fruit supplier is wanted to calling(With it is other)Notice passes to the user of their communication system, even if the user may
Related communication customer end is applied " backstage "(Or backstage will be applied by operating system)However user is still in
Line and it can potentially call after this manner, then this will be favourable.The Call Block of client application can also be changed, with
Ensure calling party initial intention can be reliably transmitted to all end points, there user be able to should receive calling-
If desired, via sending out notice.
For example, it is contemplated that wherein callee is regarded just on hand-held phone or panel computer using web browser or play
The calling of his or her friend is played and waited simultaneously to frequency(Perhaps from foreign country, so would rather be used for cost reasons
VoIP)Use situation.Whether callee is online according to existence status checkout friend, but exhaled when he or she is not online
The person of crying starts to browse or plays game to kill time.Then, friend(Caller)Then for example sign in on the desktop
His or her client application, prepares calling callee.In embodiment, the client of callee may be modified as to
Caller shows that callee is online, even if the client application of callee is due to browser or playing needs consuming high
System resource, such as due to running flash applications or other applet in a browser by the operating system of callee
Hang up or suppress.In an embodiment of the present invention, caller's click-to-dial button, initiates the calling to callee, called
The operating system of person is configured to propose prompting, notifies that he or she has the calling of entrance.The client application of callee by with
If be set to so that callee taps or clicked on accept button in response to the prompting, client application is callee's
Foreground is brought back into terminal, therefore allows callee to answer the calling(Speech or video), and start and his or her friend
Friend-caller-talk.
Under this example scenario, it shall be noted that some units.The state of callee's client is in the worst case
Potentially hung up completely(Termination), after this manner it can not be related to by conventional P2P session establishing methods.In the present invention
Embodiment in, callee may be unaware that or not realize that his or her client application is suspended, because this may be not
Once-in fact contrast was clearly completed by callee user, this may be automatically performed via operating system, and by
Caller can be under such hypothesis:His or her client application is still in operation, and they are online and can joined
System.Moreover, in such a scenario, it is different from the being conventionally present property mechanism for such system, existence is not made preferably
Depend on(Or do not depend solely on)The P2P availabilities of client.
In order to support that the scene of the above will be preferably carried out new Call Block and/or for existing part there is provided person
Make necessary change.
One target be so that callee's client can be waken up and set up in reasonable time frame and scope with
The session of caller's client(For example, P2P sessions).In order to keep call set-up time as short as possible, in session and call setup
Round trip immediately(roundtrip)Minimum should be preferably remained as far as possible.
Demonstrated under example scenarios as more than, calling start flow can be supported to need to pass via non-P2P message
Delivery system signals the use situation of the intention of calling, and it can retract under the occasion of needs(fall back)To pushing away
Notice is sent, to wake up callee's client.For example, this can be carried via the supplier by the operating system discussed
The sending out notice service of confession.
Setup requests(That is, calling is invited)There is provided by a variety of pass through mechanism, to set up calling, thus reduce and exhale
It is setup time and improves the probability of transmission.In other words, multiple versions that calling is invited are to use different pass through mechanism, example
Such as, it is route by the difference of network, callee's client is sent to from caller's client.Calling each version invited can be with
Concurrently sent on network.In this sense, calling is invited is disperseed as multiple by using different pass through mechanism
Version is passed.Moreover, callee can be associated with more than one user terminal.In other words, callee can be with
Client software example is installed in more than one terminal, and can be by using the client software from these terminals
Example and sign in communication system.Therefore, callee can be implemented via in more than one callee's end
What more than one callee's client can be contacted.Each version that calling is invited is sent to associated with callee
Each callee's client that each callee's end is implemented.Call what is invited by being sent via a variety of pass through mechanism
Multiple versions and multiple callee's clients are sent to, the version that calling is invited is available for delivery to callee's client
Speed and reliability and callee currently interaction speed used and reliability can be improved.
Call Block can be updated, and be changed with for example implementing necessary client components in core library, to ensure it
Cater to institute's use situation in need, interoperability and a backwards compatibility scene.
Calling customer end pieces can be updated to allow callee's client to receive to connect via sending out notice transmission method
The calling of the entrance of receipts is invited.This may include one or more UI(User interface)API(API)Group, it is allowed to visitor
The UI layers of payload information transmission reception in family end is to Call Block so that can carry out P2P session establishments and call setup and
Signaling.
It is delivered to for be included in via messaging system in the payload of the message of callee's end points
The relevant information of calling, call function can preferably support the service based on cloud, and service reception that should be based on cloud is come autobiography
The message of infrastructure is passed, and this message is filled with specific payload information is called.
Call notification preferably includes enough information, to allow callee to be made whether to answer the with good grounds of the calling
's(informed)Determine.This for example may include caller's name(User name and/or display name), caller incarnation, and/or
Call the timestamp invited.Call notification, which may also include, allows callee's client to formulate the information for receiving response, such as holds
Hand message and the information that caller is contacted in response(For example, caller's user name and/or address).
Once the call notification device of transmission system completes above step, just transmission call notification is exhaled to be eventually transferred into
The person's of crying end points.This preferably will go to receive under the occasion of sending out notice the user for being invited into calling is registered, or right
Occur under the occasion that there is open connection for client.Notice can be by directly persistently connection(Callee visitor
Family end is on foreground, and/or some background states)Or under the occasion of needs(Callee's client is suspended, and/or some
Other background states)It is via the sending out notice to the notice service based on related operating system.
Participating in the invitation of calling can be sent by MPTY in most cases, such as:It is established in actual calling
Before, it is used as a part for initiation;Or another participant is added in calling during the calling just carried out.
Fig. 1 is the schematic diagram of the communication system based on traditional P2P examples.Communication system includes packet-based network
100, preferably wide area Internet network(Internet), such as internet.Communication system also includes multiple end user's terminals
102, each including transceiver apparatus, it is operable to be coupled to internet 100, and each include discussed communication system
Respective communication customer end application.Each end user's terminal 102 can for example take desktop computer or laptop computer, put down
Plate computer or hand held mobile phone(Or " mobile phone ")Form.Each user terminal 102 is the voip call in communication system
Or the potential end points of other packet-based communications.That illustrated on Fig. 1 is caller's end points 102a and callee's end points
102b。
According to conventional P2P principles, the client application on one or more user terminal 102c is presented in a distributed manner
The state of the node in location searching data storehouse.For the user terminal 102b that determines callee address(E.g., including IP
Location), in step S10, the client on the user terminal 102a of caller is via internet 100 with serving as distributed data base
One of the user terminal 102c of node on client communication.Client on the terminal 102a of caller is by data
Storehouse node 102c is sent in the user name of the callee of mark callee in communication system and inquires about database node 102c,
And database node 102c returns to the user terminal 102b of required callee address.In step S12, in calling party
Client on terminal 102a is then using this address come setup requests or " invitation "(CI)It is signaled to pre-
Client on the terminal 102b of the callee of phase.As response, if callee's selection receives the calling, called
Client on person's terminal 102b beams back calling with signal and receives response.In caller and the terminal 102a and 102b of callee
On client certification certificate is also exchanged to verify identity mutually.Therefore client sets up session from each other, so as at it
Respective terminal 102, send with Real-time voice and/or video content from microphone and/or video camera on 102b
The portfolio of form be used as live voice or a part for video call.Because address search is to be based on distributed data base,
So central server need not be involved for this.Call set up signaling, certification and the progress of call business amount are also without leading
Relate to central server.
In embodiment, if due to NAT(Network address translators)Or fire wall 108, the user terminal 102a of caller
Directly it can not be communicated with the user terminal 102b of callee, then client can be arranged to via one or more relayings
Communicated, these relaying can also by one or more of the other user in P2P communication systems end user's terminal 102d
The client implementation of upper operation.The end user's terminal 102d relayed user needs not be the participant of calling(It is not required to
The speech or video content of calling are consumed, and in fact can not be consumed due to encryption).Nevertheless, relayed
End user's terminal 102d user will have agreed to such situation when he or she is signed in P2P communication systems, and he or
Herself can benefit from reciprocal arrangement in other situations.
Communication system may also include the back-end server 104 for being coupled to internet 100, wherein each client can be deposited
Respective contacts list is stored up, the contacts list is the contacts list of its relative users(Preferably, communication system by with
It is set to so that user turns into mutual contact person according to common protocol).Back-end server 104 can also store letter for each user
Shelves information, for example, describing the avatar image of relative users for other users into communication system.Each client can be visited
Ask and show the profile of contact person, so that caller can see that the profile information of callee, and vice versa.
Communication system can also include being coupling in internet 100 and circuit-switched network(It is not shown)Between gateway
106.Such network is referred to alternatively as PSTN(Public switch telephone network), for example, landline network or mobile cellular net, such as
3GPP nets.Thus client on user terminal 102 can also be set up via gateway 106 exhales with more black phones
Cry.
Fig. 2 illustrates the mixed P 2 P communication system of modifications according to embodiments of the invention.Fig. 1 some or all of portion
Part also can still exist with Fig. 2 system in parallel, but some parts are omitted from Fig. 2 for brevity.Moreover, communication
System include the VoIP suppliers of communications service providers-such as-NE 204, it, which has, is coupled to internet 100
And it is arranged to the form of one or more server units run Call- Control1 and notify software.Communication system also includes quilt
It is coupled to internet 100, one or more sending out notice services based on operating system(OS PNS)202.It is one or
Each of multiple sending out notice services 202 based on operating system is associated with respective operating system, and preferably by grasping
The producer and/or publisher for making system provide to support via the available special sending out notice machine of the operating system discussed
System.The sending out notice service 202 based on operating system takes the one or more clothes for being arranged to run sending out notice software
The form of business device unit.
In Fig. 2 example system, illustrated unit 102,202,204 is configured to run as follows.In step
S20, the client on the user terminal 102a of caller indirectly invites calling(CI)It is sent to the use of callee
Client on the terminal 102b of family, but send it to the Call- Control1 and notification unit 204 of VoIP suppliers(Message CI is not
It is certain to be equal to that message for being relevant to Fig. 1 descriptions).Invited in response to receiving the calling from caller, in step
Call- Control1 and notification unit 204 the generation sending out notice request of S22, VoIP supplier(PNR), it asks the sending out notice
It is sent to the sending out notice service 202 based on operating system.Please in response to receiving the sending out notice from VoIP suppliers 204
Ask, in step S24, OS sending out notice service 202 sends the sending out notice based on operating system(PN_OS)Arrive callee's
Operating system on user terminal 102b.Sending out notice based on operating system is by the user terminal 102b of callee
Operating system is received and handled so that it shows Pop-up message on the user terminal 102b of callee screen, to
Callee user indicates the event for having entrance.
In an embodiment of the present invention, message can point out called about whether the calling for receiving to enter on screen
Person.If the client application of callee is currently by backstage, message can be about whether callee's on screen
Client application points out user from background state wake-up.In embodiment, these actions can be incorporated into same prompting.
If as response, callee provides the user input of affirmative, then operating system is by being rescheduled to complete operation level
Or be at least scheduled to its enough resource to manipulate the calling, and wake up the callee visitor in the terminal 102 of callee
Apply at family end.
As discussed in more detail later, in embodiment, sending out notice PN_OS may include payload, and it causes
Client on the user terminal 102b of callee can formulate the handshake information of return, and the message is passed through because of spy
Net 100 signals back the client on the user terminal 102a of caller, it is preferable that be directly by internet 100,
Rather than server or service unit 202 and 204 via any supplier.If callee receives from operating system
User points out, then the operating system on the user terminal 102b of callee transmits the useful negative of at least part of sending out notice
The response so that it can formulate the response of correlation, and is sent back to calling by lotus until the client application of callee
Person.
Fig. 3 illustrates the mixed P 2 P communication system of another modification of according to embodiments of the invention.Fig. 1's and/or Fig. 2
Some or all of part also can still exist with Fig. 3 system in parallel, but some parts quilt from Fig. 3 for brevity
Omit.
In Fig. 3 example system, shown unit 102,204 is configured to run as follows.In step S20,
Client on the user terminal 102a of caller does not directly invite calling again(CI)The user for being sent to callee is whole
The client on 102b is held, but sends it to the Call- Control1 and notification unit 204 of VoIP suppliers(Message CI is not necessarily
It is equal to that message for being relevant to Fig. 1 or Fig. 2 descriptions).In embodiment, this can be be relevant to Fig. 2 description that
The identical step of step, or in other embodiments, it can be replaced or additional, separated step.However, this
Under situation, VoIP suppliers unit 204 is not sent(Or not only send)Sending out notice is asked(PNR)To the push of operating system
Notify service 202.But, it directly formulates the application layer sending out notice of its own(PN_AL), it is the application layer sending out notice
Client on the user terminal 102b of callee is sent directly to by internet 100.In the user terminal of callee
Then client on 102b can handle the notice on the application layer, so that itself is by means of application layer mechanism, rather than
Above-mentioned operating system mechanism, callee user is pointed out come the calling on entrance.
As discussed in more detail later, in embodiment, sending out notice PN_AL includes payload, and it causes
Client on the user terminal 102b of callee can formulate the handshake information of return, and the message is passed through internet
100 signal back the client on the user terminal 102a of caller, it is preferable that be direct by internet 100, and
It is not the server or service unit 202 and 204 via any supplier.In this case, if at the end of callee
Hold the client on 102b or be in foreground state(It is not suppressed to be conducive to any other application), or be in special
Background state and thus it is scheduled with the limited cycle, but be still enough the calling of processing entrance, then the visitor of callee
Family end can be by listening to entering come automatic network 100 during the cycle for the client of callee is dispatched by operating system
The communication entered, such as by being allocated terminal 102b used for the client of callee, callee network set
Connect and listened on word, and directly access the payload of sending out notice.
It should be pointed out that two or more mechanism of Fig. 1,2 and 3 can exist parallel, and any or all this
A little mechanism can signal calling to invite or notify.
In one application, at least callee's end points 102b includes having relatively limited resource(Processing, memory
And/or source of screen)Mobile terminal, and the mobile terminal has such operating system, i.e.,:It is easy to corresponding client
Apply backstage, to be conducive to another to apply, video-game such as under certain circumstances in end.
Fig. 4 provides calling party(Caller)Originate end user's terminal 102a and called party(Callee)'s
Destination end user's terminal 102b schematic block diagram, they form two end points of calling(Or even in many ways can
Two end points in conference call scene in larger number end points).
Originating user terminal 102a includes the communication customer end 402a of corresponding operating system 400a, VoIP communication system
(And potential other application)With user interface 408a.VoIP client 402a is stored in origination terminal 102a memory
On(In the form of tangible media as such as electronics or magnetic storage apparatus), and be arranged to origination terminal 102a's
Performed in processing equipment.Client application 402a is also said to be on operating system 400a and run, because it is scheduled for
Performed by operating system 400a.If with the presence of multiple applications and operation on terminal 102a, operating system will dispatch it
To perform for example in an alternating fashion and/or in parallel process resource, so that each apply in operating system
At least some of process resource is assigned under 400a control.When scheduled, client application 402a can connect via user
Mouth 408a and user mutual, and can on network 100 be communicated via user terminal 102a transceiver apparatus.As for mesh
Ground terminal 102b discuss in more detail, operating system can also hang up the execution of the such application of such as client application.
Destination user terminal 102b also includes the communication customer end of corresponding operating system 400b, VoIP communication system
Other application and user interface 408b as 402b, such as email client 404 and video-game 406.Communication clients
End 402b is stored in destination terminal 102b memory(With tangible media as such as electronics or magnetic storage apparatus
Form), and be arranged to perform in destination terminal 102b processing equipment.VoIP client application 402b and it is other should
It is said to be on operating system 400b and is run with 404,406, because they is scheduled for by operating system for example with alternately
Mode and/or performed in parallel process resource, so that each apply is divided under operating system 400b control
It is equipped with least some of process resource.When scheduled, VoIP client 402b can be handed over via user interface 408b with user
Mutually, and can on network 100 it be communicated via destination user terminal 102b transceiver apparatus.For the He of other application 404
406, when they are scheduled, situation is same.
As described above, operating system 400b can also have following ability, that is, hang up such as VoIP client 402b that
The application of sample, or it is placed in some other background state, thus it to be only assigned to each unit interval very limited amount of
Process resource amount.
In embodiment, the scheduling carried out by operating system 400b includes each application 402b, 404,406 to be placed in certain
The ability of foreground state or background state.
Foreground state may include that wherein foreground application is main, the dominant application being currently running in current time
State.The specific example of this respect is the application run under screen mode toggle, and by cost of other application, it is allocated wherein
With whole source of screen.For example, video-game 406 can be given full frame or other dominant foreground states when running, because
For user may need it is full frame come play game and/or game may consume a considerable amount of process resource so that can make limited
Process resource or without process resource can be used for other application(Such as VoIP applications 402b and email client 204).
This scene may especially occur on mobile terminal as such as hand held mobile phone, in the terminal compared with such as
Desktop computer, resource is relatively limited.
Another example of foreground state may include none of which using having advantage relative to any other application
The state of state, for example, terminal 102b user has the desktop opened, application is not maximized, and VoIP applications 402b
Allowed there are enough process resources to be used for complete operation by operating system 400b, and be not inhibited to be conducive to such as video-game
Any other application as 406.
However, when an application as such as video-game 406 is in the foreground state of dominance, it is one or more
Other application 402b, 404 can be placed on background state by operating system 400b.VoIP client 402b can be specific to this
Candidate.Alternatively or cumulatively, at other times, operating system 400b can be as such as VoIP client 402b
Using background state is placed on, to save battery resource.
Under such background state, VoIP client 402b or it is suspended, it means that it is not by operating system
400b is dispatched with any process cycle, or is at most suppressed, make it that it is only scheduled compared with non-inhibited foreground state
The limited cycle.In the state of being suppressed, client 402b may only have very limited amount of feature, and wherein it may not
The calling that unilaterally processing enters is invited or notified, or calling invitation or logical may not be handled by using full resource
Know, and full resource will be in other situations available under higher functional status.
Under the state of foreground, VoIP client 402b is fully able to listen to invitation or the notice of entrance, and it passes through in purpose
Listened on ground user terminal 102b web socket 412 and accomplish this point.Web socket is the network address and quilt
The combination of the transport layer port used for the such applications of such as VoIP client 402b is distributed, typically, IP sockets are IP
Address and the combination of port numbers.For example, under the state of foreground, VoIP client 402b is possible can be directly from origination terminal 102a
Conventional P2P callings are received to invite(CI), and the invitation is handled therewith, to receive calling, and/or it may can receive and locate
Manage the application layer sending out notice from VoIP suppliers 204(PN_AL).
In embodiment, under background state, VoIP client 402b is without the scheduled cycle, and it is necessarily dependent upon
Sending out notice service 202 based on operating system, or with the too limited cycle so that cannot rely upon except based on operation
Anything outside the sending out notice service of system.In this case, the sending out notice based on operating system(OS_PN)Quilt
Operating system 400b is received, and the operating system is shown in onscreen cue on the terminal 102b of destination as response.The prompting
Notify callee:There is communication event request to note, and it is to exit screen mode toggle to point out user's selection, or conversely make it possible to call out
Awake one or more dominant applications.The form of onscreen cue can be dominated by operating system 400b, alternatively with can
With the several parameters being prescribed in sending out notice.In certain embodiments, what prompting can be informed the user is only to have not
Specify(unspecified)The fact that communication event, and generally ask whether from full frame or holding state morning call.
In other embodiments, point out to may include that some permission users make the additional information of valid decision, for example, on communication thing
Part is the instruction of the calling entered, and/or the observable information of user on the identity of caller(For example, display name).This
The additional information of sample can be exported from the payload of the sending out notice received.
If moreover, the event that user's receiving enters, suitable between operating system 400b and VoIP client 402b
When API 410 can transmit derived from sending out notice payload some information until the application 402b waken up so that in mesh
Ground terminal 102b on VoIP client 402b can formulate response, and return the response to origination terminal 102a.This
Payload information may include machine readable identifier information, the user name of caller identification such as in communication system, and/
Or in network 100 the terminal 102a of caller identification address.
In an alternate embodiment, there may be the background state for having VoIP client 402b, thus the VoIP client
402b is dispatched with the limited cycle by operating system 400b, but is still enough cycles at least to listen on socket 412
Application layer sending out notice, and at least some of processing is performed to the notice received, even potentially to formulate receiving response,
And origination terminal is returned the response to before wake-up(But be still required for waking up, called so as to actual, i.e. once
Enter and outgoing speech and/or video flowing start just to handle them).
By using the sending out notice service based on operating system, the notice is sent to operating system 400b, and at least
Handled at the beginning by operating system(Although operating system 400b then transmits at least some of payload until applying 402b).This
Notified different from application layer, wherein operating system 400b gives application 402b to dispatch at least some cycles, these cycles are enough to allow it
Sending out notice is listened on related socket, and at least some of processing is performed to the notice received, and not against operation
System 400b any special sending out notice mechanism.
Fig. 5 is provided according to an exemplary realization of the present invention, the Call- Control1 of VoIP suppliers and notification unit 204
Schematic block diagram.NE 204 includes:Call controller 502, the missed call for being coupled to call controller 502 are posted
Storage 504, it is coupled to call controller 502 and the sending out notice service based on operating system(OS PNS)202 push is led to
Know center(hub)506th, the end points pushed is enabled(PEE)Register 508, the parser function for being coupled to call controller 510
510 and for caller's client 402a on originating user terminal 102a being coupled to the connection of call controller 502
Adapter 512.Each in unit 502,504,506,508,510,512 can be implemented as the module of software, these softwares
It is stored on the memory of one or more server units of VoIP suppliers 204(With such as magnetic or electronic storage device
The form of such tangible media), and be arranged to transport on one or more server units of VoIP suppliers 204
OK.One or more of server units include the processing equipment for being arranged to perform software, and are arranged in internet
The transceiver apparatus of related communication is performed on 100 or other such packet-based networks.
Destination user terminal 102b can be registered as enabling the end points pushed(PEE), and in destination terminal 102b
On callee's client 402b can be arranged to receive from sending out notice center 506 via IP sockets 412
One or more application layer sending out notice(PN_AL), and/or operating system 400b can be arranged to receive from based on behaviour
Make service 202, the one or more sending out notice based on operating system of system(PN_OS).In the case of the latter, in mesh
Ground terminal 102b on callee's client 402b can be arranged to can via API 410 receive come from based on operation system
The sending out notice of system(PN_OS)One or more of payload information.
Operationally, the VoIP client 402a of the caller on origination terminal 102a passes through via the He of internet 100
Connection adapter 512 forms the connection with call controller 502 and started.The connection can provide recognizable connection, so that
By call controller 502 by be connected the given connection of adapter 512 from any of caller's client 402a receptions
Communication is identified as being derived from specific known source.Connecting adapter 512 can be with the identity of authenticated calling person, to cause by with connecting
Any communication for connecing the connection of adapter 512 and being received is identified as being derived from the source that its identity has been securely authenticated.
In step S12, call the version invited and peer to peer connection is used from client by network 100 as peer message
End 402a is sent to client 402b.The calling sent as peer message is invited and described by using above relative to Fig. 1
Technology be routed to client 402b from client 402a.In order to receive in step S12 by using reciprocity pass through mechanism quilt
The calling of transmission is invited, and client 402b must be at callee's terminal 102b in front stage operation.
In embodiment, connection adapter 512 provides front end component, and the front end component is by using appropriate authentication mechanism
(It can be privately owned)Come Authentication Client, and the also connection of termination client.Connect adapter 512 and then can be for
The remainder of service, especially for call controller, is used as the authoritative source of client identity(Referring to being relevant to below
Fig. 5 discussion).Therefore, in embodiment, the identity of caller need not be provided by caller oneself in payload, this
It is beneficial, because if not identity can be forged, and will will be thus fly-by-night.
In step S20 and/or step S30(Corresponding to those steps shown by Fig. 2 and Fig. 3), in the user of caller
Client 402a on terminal 102a uses the connection via connection adapter 512 that calling is invited(CI)Another version hair
It is sent to the call controller 502 of VoIP suppliers 204.
It can be seen that, two versions that calling is invited concurrently are sent out from client 402a by different pass through mechanism
Send.Under this meaning, calling is invited scatters from client 402a.
In order to set up calling, it is necessary to exchange two message of Handshake Protocol, they form the two halves shaken hands --- and first
From an end points to another end points, then the second handshake information agrees to the calling as reply.In embodiment, from calling
The calling that person's client 402a is sent, which is invited, includes the first handshake information HS1.
In embodiment, HS1 can be P2P session establishment message.In this case, it, which is included, makes the reception of the message
Person can continue to consult with sender the enough information of P2P transmission sessions(Such as, it can be used for being called).It can be included
One or more IP address that caller can be contacted to by it, and potentially include some other information.This message is used
As allowing the invitation of P2P session establishments.Once certification and encryption session is established, call signaling can just pass through the session
Flowing.
Trunk information and user name are some things point opened with HS1, and those can work as while traveling that HS1 can not
With or used in fallback mechanism when expiring.It should be mentioned, however, that being arranged the invention is not restricted to P2P or mixed P 2 P, at it
In its embodiment, some or all of follow-up phase of session establishment can collect via as such as one or more servers
Chinese style unit is carried out.
Invited in response to receiving the calling from caller's client 402a, call controller 506 and then formulation are internal
Sending out notice asks PNR_i.
In embodiment, this is involved quotes parser function 510 to parse calling in step S50 call controllers 502
Person and/or his or her user terminal 102a identifier information-" user's parsing " information(UR).Resolver 510 safeguards user
And/or the list of the related information of user terminal, call controller 502 can be according to the identified with being connected adapter 512
Connect to inquire about the list.
User parses(UR)Two classes can be classified as.The first kind is identifier information, and it will be used to allow callee
Client 402b response when contact caller.This may include:
Identify caller's user name of the caller in VoIP communication systems;And/or
- caller it is originating user terminal 102b, its address is identified in network(Typically IP address);With
- alternatively, additional routing iinformation, such as using come contact caller any one or more relay marks
Know, such as 102c.
Equations of The Second Kind UR information(It can be optional in embodiment)It is to allow callee to be made as to whether to answer
The information of the valid decision of calling.This may include:
The display name of-caller(Different from user name);
The avatar image of-caller;And/or
- using come to the instruction of the language of the calling of callee's notice entrance, it, which extends to regulation, is used for screen
The language template of the grammer of notification message, because notification message will appear at the terminal 102b of callee on screen.
In embodiment, language or language template can be resolved according to the identity of callee and/or caller.Calling
The identity of person(For example, user name)Also calling will be included in invite(CI)In, and it can be used in this purposes with
And identifying purpose.
In embodiment, parser function 510 may also include License Check function, and it safeguards the list of such user,
I.e.:Callee has stopped that the user contacts him or she.License Check, which is played, stops that what is found in this comfortable list appoints
The effect that the calling of what caller is invited, and for not only being blocked in caller the step of notice behind callee
Under conditions of just carry out.
Assuming that this does not occur, then call controller 502, which is formulated, includes user's parsing information, HS1 message and in calling
Invite(CI)The payload of any other relevant information of middle reception(It see below).In step S52, call controller 502
Then this payload is forwarded to sending out notice center 506 in the PNR_i of sending out notice request internally.
The additional information that can be included in payload is as follows.
- timestamp, it indicates the time for sending invitation.When overtime the attempt that this can be used to detect foundation calling is.
For example, it was 50 seconds in one embodiment in the range of 30-60 seconds that the time limit for time-out, which can be,.Timestamp can be included
In the calling sent from caller's client 402a is invited, then it is forwarded in payload, or do not have also in timestamp
Have in the case of being included in from the invitation of the client 402a receptions of caller, generated by call controller 502.
The encryption key of-key exchange scheme, it is the public keys of caller(Exhaled so callee can decrypt
The content for the person of crying).This can be included in the calling invitation sent from caller's client 402a, then the quilt in payload
Forwarding, or alternatively, is stored in resolver 512, and called controller 502 add as user parse information another
Example.
The instruction of-origin endpoint 102a type(For example, it be mobile phone, panel computer, laptop computer also
It is desktop computerIt runs any operating system, and it runs VoIP client 402a what version, and/or what it is
Model).Again, this can be included in the calling invitation sent from caller's client 402a, then in payload
It is forwarded, or alternatively, is stored in resolver 512, and the addition of called controller 502 is used as a part for parsing.
- it is used for the call identifier of calling(For example, Session ID), it can callee client 402a or exhale
Controller 502 is made to add.Again, this can be included in the calling invitation sent from caller's client 402a, Ran Hou
It is forwarded in payload, or alternatively, is stored in resolver 512, and called controller 502 is added.
- it is used for the talk title and/or other talk identifiers of calling, it is the calling as part thereof of logic
The instruction of topic or context, for example being formed in calling involves IM message and/or the group talked more extensively of previous calling
In the case of part.This is obtained in preferably being invited from the calling of the client 402a from caller.
Sending out notice center 506 receives internal sending out notice request PNR_i.As response, in step S53, it, which is inquired about, makes
The end points that can be pushed(PEE)Register 508, to check the whether registered reception sending out notice of callee.PEE registers 508
Safeguard registered reception sending out notice(Or equivalently, if receiving sending out notice and being default, registration is not released also and is received
Sending out notice)User list.For example, this can be presented to him or she when user enables new phone 102b for the first time
Option, or the option found in his or her terminal 102b option screen.Then, under such as the scene as shown in
When attempting to be called like that, PEE registers 508 are taken action, only to agree to his or her equipment in callee
102b is possible to receive sending out notice(Or do not determine equivalently to exit)Under conditions of just license carry out sending out notice below
Step.
Assuming that callee is registered for sending out notice, sending out notice center then completes one of following two pieces thing or two
Person:
- outside sending out notice request PNR is sent to the sending out notice service 202 based on operating system(Corresponding to Fig. 2's
Step S22), cause the sending out notice service 202 based on OS the sending out notice based on operating system in turn(PN_OS)Send
Operating system 400b onto destination terminal 102b(Corresponding to the step S24 on Fig. 2);And/or
- formulate application layer sending out notice(PN_AL), and it is sent directly to the called on the terminal 102b of destination
The client 402b of person(Corresponding to the step S32 on Fig. 3).
It can be seen that, call invite two versions from sending out notice center 506 by different pass through mechanism concurrently
Sent.Under this meaning, calling is invited scatters from sending out notice center 506.Therefore, call controller 502 and push are logical
Know that center 506 is handled to invite from the client 402a callings received in step S20, to generate multiple versions that calling is invited.
In addition, in step S53, sending out notice center can be the message of the end points quantity for indicating callee(NEP)Hair
Return to call controller 502(Callee can make multiple equipment be registered in PEE registers 508).This can called controller
The attendance report of the how many equipment from callee can be potentially expected using to track it(attendance
report, AR)(Referring to step S56).
Sending out notice center 506 is taken action at least some of payload information received from call controller 502
It is included in sending out notice(Via OS PNS 202 in the case of the sending out notice PN_OS based on OS).In embodiment, have
The type of sending out notice therein can be included according to it by sending out notice center 506 with the amount of information on load, is base
Operating system is also based in application layer, to be selected.
In the case of the application layer sending out notice formulated by sending out notice center 506, this may include up to described above
Whole amount any amount payload information, and include described whole amount or more.This may include the first of Handshake Protocol
Handshake information HS1, and up to whole user's parsing information(UR)Any information, including the user name of caller, originating address,
The display name of caller, the avatar image for caller(Or to the link of avatar image)With language indicator or template.This
Individual payload information is provided to callee's client 402b in application layer sending out notice PN_AL.
If the client 402b on the terminal 102b of callee receives application layer sending out notice PN_AL, it
Extract payload information, and the calling for notifying to enter to callee using this information.This may include to extract user's solution
Analyse the readable part of the user of information, such as display name, avatar image(Or to the link of avatar image)And/or language template,
And notification message on appropriate screen is generated using it.
For example, message can show avatar image on screen, and show for example with English form " you have an
Incoming call from [display name] " or with French form " [display name] vous t é l é
Phoner " the message write.The language and grammer of this message(That is, language format)Provided by language template.Grammatical norm
Where include display name for example in sentence.
Further it is assumed that callee answers the calling, then the client 402b on the terminal 102b of callee by with
It is set to and handshake information HS1 and the part user for contacting caller in response is extracted from the payload of sending out notice
Information is parsed, calling is thus formulated and receives response(CA), and the response is signaled back on the terminal 102a of caller
Originating client 402a.After HS1 is received, the client 402b of callee formulates calling and receives response CA, and it includes holding
The half part of the answer of Handball Association's view, HS2 message.In step S58, the client 402b of callee and then according at least including exhaling
Associated user's parsing information of the user name for the person of crying and/or the terminal 102a of caller address, this receiving response letter
Number notify back the client 402a on origination terminal 102a.
Preferably, this is done by using payload information, it is not necessary to decide whether to answer in callee
Any other signaling before the calling on network 100 is believed to retrieve the identifier of the terminal 102a for contacting caller
Breath, or retrieval information is so as to his or she caller identification.For these purposes, it is not necessary to backward for such as unit 204
Or 202 any supplier or the extra guide of operator infrastructure(referral).Therefore, row is come and gone in call signaling
The quantity of journey reduces, it means that for realizing that the time that calling receives can be reduced.
In embodiment, the client 402b of callee only can be in foreground in its time for being found in notice
(f/g)Application layer sending out notice PN_AL is received in the case of state, because in this condition, it is enough with what is be scheduled
Process cycle, and can listen to and be handled when application layer sending out notice PN_AL is detected on IP sockets 412
It.However, in some implementations, it is possible to which the client 402b of callee can be assigned to special background state, by
Although this it is scheduled with suppressed treatment time amount, it still has enough cycles and can detected and according to application
The PN_AL action of layer sending out notice.
In step S56, the client 402b of callee can also be attendance report(AR)Report back to call controller
502, indicate that it has received the calling.Call controller 502 can use this to track whether calling is answered, or in calling
By whether it overtime before answering.
In the case of the sending out notice PN_OS based on operating system via the generation of service 202, this can include coming from
The payload information content of reduction among potentially useful information on load discussed above.For example, this may include handshake information
HS1, and the user of some selections parse information(UR’), the preferably at least user of the user name of caller and/or caller
Terminal 102a address.Language or language template are still used as payload information.This payload information is in base
The operating system 400b on the terminal 102b of destination is provided in the sending out notice PN_OS of operating system.
If the operating system 400b on the terminal 102b of callee receives the sending out notice PN_ based on operating system
OL, then message to notify the calling of entrance to callee on its generation screen.Alternatively, this can be involved from payload letter
Some limited parameters that breath is extracted are inserted on operating system 400b predefined screen in message format.For example, entering
The operating system 400b that row is received can determine the display name and appropriate language of caller from the payload received
Template is English template " you have an incoming call from [display name] " or French template
" the fact that [display name] vous t é l é phoner ".However, the other side of message format can be by operating on screen
System 400b is dominated, for example, its size, its " the look and feel " and any associated figure.
If for example, callee notice time just under full frame or other dominant state playing video game
406 or use some other applications, then operating system can cause small notification message phase as the corner of such as screen
To being ejected at unnoticed position.
Message notifying callee will take anything to take action on the screen generated by the operating system 400b of callee, example
Such as, if answer the call, or whether ignore the notice and continue play under game 406.
As described previously, VoIP client 406b in destination may be in backstage (b/ in the time of the notice of entrance
G) state.If callee selects to receive the calling really when responding operating system prompting, operating system wakes up and exhaled
The VoIP client 402b for the person of crying.This can involve the application for terminating previously just to be run in foreground(For example, game 406)It is complete
Screen or other such advantage states.
Operating system 400b on the terminal 102b of callee also will be transmitted to less a certain amount of payload information
Until new recovery(restore)VoIP client 402b, preferably the first handshake information HS1 and it is at least some of be used in sound
User's parsing information of seasonable contact caller, i.e. caller's user name and/or origination terminal address.As callee VoIP
When client 402b wakes up, it receives response CA therefore, it is possible to formulate the calling including returning to handshake information HS2, and this is rung
The originating client 402a for answering addressing to return on the user terminal 102a of caller.
Preferably, the payload information that is received in sending out notice therefore still it is enough to formulate calling and receives response
(CA), and do not need any other signaling on network 100 to retrieve use before callee decides whether to answer the calling
It is used for the information to his or she caller identification in the terminal 102a of contact caller identifier information, or retrieval.Therefore, then
Secondaryly, in call signaling round trip quantity, thus be for call receive time can reduce.
Again, in step S56, the client 402b of callee can also be attendance report(AR)Report back to calling control
Device 502 processed, indicates that it has received calling.Call controller 502 can use this to track whether the calling is answered, or
Calling is by whether it overtime before answering.
In step S60, as necessary, call controller 502 updates missed call(missed call)Register 504.Not
Connect the information that call register 504 stores the relevant missed call for callee.If each version that calling is invited does not have
One is answered(For example, in their timeout period), then missed call register 504 be updated, by the relevant calling
Information Store be for callee missed call.Callee can send a query to NE 204, for retrieving
For the information on missed call of the callee.If any one version that calling is invited is answered, prevent not connect
Call register 504 is updated to the details of the calling being stored as missed call for callee, even if calling is invited
Some versions it is not answered.So, if calling some versions invited, but not all version, it is not answered, then
Missed call register 504 would not indicate calling and not connect.Calling the calling ID in each version invited and invitation ID presence makes
Obtaining different versions can be associated with same calling and same calling invitation, so that missed call register 504
It can be updated correctly.
Missed call mark can be implemented on callee's terminal 102b, even if wherein client 402b is not operated in
Foreground, missed call mark can also be shown to callee on terminal 102b.Missed call mark is indicated for called
Person, its information be stored in the quantity of the missed call in missed call register 504.NE 204, which can be sent, to disappear
Client 402b is ceased to update missed call mark.
In various embodiments, the sending out notice mechanism based on application layer and based on operating system exists parallel.Push logical
Know that center can attempt both Notification Methods parallel.
Moreover, caller's client 402a on originating user terminal 102a still can be used to conventional P2P to call
Invite(CI, step S10)Callee's client on the user terminal 102b of destination is sent directly to by internet 100
402b。
Different pass through mechanism goes for different situations.Therefore, calling is sent by a variety of pass through mechanism to invite
Can be favourable.For example, when client 402b operates in foreground at terminal 102b, peer to peer connection is passed through in step S12
The calling sent is invited or invited in the step S32 callings sent by the sending out notice system based on application layer can be first
First received by client 402b.However, when client 402b is in background state at terminal 102b, then it may not be through
By peer to peer connection or calling is received via the sending out notice system based on application layer to invite.Therefore, in these cases, in step
The calling that S24 is sent by sending out notice system based on operating system invite can be for the calling, will be by client
First of 402b receptions(And it is probably unique)Calling is invited.It can therefore be appreciated that, sent out by a variety of pass through mechanism
Each version for sending calling to invite is provided calls the quick of invitation and reliable transmission under various conditions.Network condition(For example,
Current load on network 100)Different degrees of shadow can also be caused to the transmission that the calling on different pass through mechanism is invited
Ring.
In certain embodiments, HS1 can be not included in the calling from callee and invite(CI)In(Step S20/
S30).Alternatively, the exchange may require callee and HS1 sent in the response for initial notification to caller, and
It is required that then caller is answered with the second handshake information HS2, to set up reverse session.
As described above, network node(For example, caller's terminal 102a or controller network unit 204)Hair can be arranged to
The multiple versions for sending calling to invite, for caller's client 402a and one or more callee's client 402b it
Between set up calling.Each version that calling is invited is sent by a variety of different pass through mechanism, wherein calling multiple versions of invitation
This each version includes one of the identifier of calling, and pass through mechanism and is included in the sending out notice pushed on channel(For example,
In step S24 or S32).
Multiple versions that calling is invited can all be sent to one implemented on callee's terminal 102b
Callee's client 402b.Alternatively, multiple versions that calling is invited can be sent to is exhaled in the different of callee
The different callee's client 402b implemented on the person's of crying terminal 102b.For example, each version that calling is invited can be sent
To the different callee's client 402b implemented on different callee's terminal 102b of callee.
When one of version that calling is invited is answered, or in predetermined time-out time(For example, 30 to 60 seconds)Afterwards, exhale
Any of invitation is made not complete(outstanding)Version can be cancelled.In certain embodiments, when the version that calling is invited
One of when being answered, the unfinished version that calling is invited may not be cancelled.In this case, if callee client
End 402b has been received by some version of the calling invitation including specific invitation ID and responded therewith(For example, to
Family notifies that calling is invited or set up in calling), and then callee's client 402b is received also including the specific invitation ID
Calling invite another version, then callee's client 402b can by using invite ID come determine calling invite
Some version is received.In that case, callee's client 402b may not necessarily take further action.Cause
This, is not to cancel the unfinished version that calling is invited, but can allow to exhale when the version that calling is invited is answered
The unfinished version of invitation is made to enter callee client 402b, wherein callee's client 402b uses invitation ID
(Or in certain embodiments with calling ID)To determine:Because a version of calling invitation is via callee's client
402b is received, so need not take action in response to receiving the redaction that calling is invited.
Method described herein can be carried out by performing computer program product, the computer program product bag
Include the code embodied in non-transient computer-readable media.
In embodiment, once the call signaling of the above is performed, it is possible to by as in routine P2P modes in quilt
Certificate is exchanged between caller and caller and user authentication is carried out in mutual mode.Alternatively or cumulatively, when connection is suitable
Orchestration is when forming the identity of the time verifying caller initially connected, and certification can intensively be performed by connection adapter.
Certification is by exchanging certificate in the case of complete after signaling more than, it is noted that calling, which receives response CA, is not
For the absolute last criterion successfully called, but submit to the interim receiving of certification(It is in most of feelings
It is not mostly problem under shape, as long as communication is not malice).In other embodiments, certification can rely solely on suitable by connection
The initial authentication for caller that orchestration is carried out.
In certain embodiments, two stages of certification can use during calling is set up.First, caller
Invitation, is then sent to calling by client certification its own on connection adapter 512 by the transmission of the certification of foundation
Controller 502.This is first time certification, and it is used in certification client on server 204.When the push comprising HS1 is logical
When knowing arrival callee's client, this is for setting up be certified direct among clients(P2P)First of connection
Step, and this is the occasion for occurring second of certification.First stage is centralized certification, and on the contrary, second stage is P2P recognizes
Card.
It will be appreciated that the embodiment of the above is described as just example.
For example, although above content is described relative to the mixed P 2 P system for performing voip call, but this
In disclosed technology may be used on other types of packet-based communication system.Therefore, in an alternate embodiment, it is being notified
Afterwards, session establishment(Such as, it can be used for being called)One, some or all of other stage can alternatively pass through
By centralized unit --- the one or more services of such as one or more suppliers or network operator of one or more networks
Device --- and carry out.Embodiment for wherein using some P2P technologies, it should also be noted that under its broadest sense, art
Language P2P is not necessarily limited to go the arrangement of centralization completely.For example in some instances, only media(That is, calling or other
The content of session)Need directly to transmit between peers, and all other call signaling(Including address search and certification)
Occur via central location.
Moreover, more than under occasion of the foundation server to describe any NE, it should be appreciated that this is not limited to single
Server unit, or it is housed in the servers in same shell or positioned at same place.Pass through one or more lists
Any logical network element that any unit in member is carried out can be used to implement the communication according to embodiments of the invention
Supplier's function.And, although above content is that the communication of foundation internet is described, but the present invention can also be used
In providing notices by other packet-based communication networks, and/or communication is informed by other packet-based communication networks.
After the disclosure herein is provided, those skilled in the art are apparent that other variants.The present invention is not by being retouched
The embodiment limitation stated, and be limited only by the accompanying claims.
Claims (12)
1. a kind of network node (102a;204), be arranged to participate in by network (100) caller and callee it
Between call establishment, the network node (102a;204) include:
Call controller (502), is configured as:
Calling is received from caller's client of the caller to invite;
Generation sending out notice request is invited based on the calling;
The sending out notice request is sent to sending out notice center;
The sending out notice center (506), is configured as:
Multiple versions that the calling is invited are sent to callee's client, in caller's client (402a) and in fact
Applying and exhaled described in set up between callee's client (402b) in callee's terminal (102b) of the callee
Cry;
The sending out notice request is received from the call controller;
Judge the whether registered reception sending out notice of the callee;
In response to determining the registered reception sending out notice of callee:
Sending out notice request is sent to the sending out notice service based on operating system, to believe via the push based on operating system
Road, using the sending out notice based on operating system, institute is sent to callee's client in callee's terminal
State the first version that calling is invited;And
Via the push channel based on application layer, using application layer sending out notice, the quilt in callee's terminal
Caller's client sends the second edition that the calling is invited.
2. network node (the 102a of claim 1;204), wherein, it is described calling invite multiple versions or:(i) all by
The callee's client (402b) implemented on callee's terminal (102b) is sent to, or (ii) is sent
To each the different callee's client (402b) of implementation in different callee's terminals (102b).
3. network node (the 102a of claim 1;204), wherein, the network node is additionally configured to:In predetermined time-out
Between after, cancel it is described calling invite any unfinished version.
4. any one of claim 1-3 network node (102a), wherein, the network node is caller's client (402a)
The caller's terminal (102a) being implemented on.
5. any one of claim 1-3 network node (204), wherein, the network node is controller network unit
(204)。
6. the network node (204) of claim 5, wherein, the controller network unit (204) also includes:
Missed call register (504), is configured to store the information of the relevant missed call for callee, wherein, such as
Each version neither one that really described calling is invited is answered, then the missed call register (504) is updated, will be relevant
The information Store of the calling is the missed call for the callee.
7. the network node (204) of claim 6, wherein, the controller network unit (204) is further configured to send message
To one or more of callee's clients (402b), to be connect to update in the user of callee's client (402b)
The missed call mark exported in mouthful, the missed call mark indicates that for the callee, its information is stored in not
Connect the quantity of the missed call in call register.
8. the network node (102a) of claim 7, wherein, if any one version that the calling is invited is answered, hinder
Only the missed call register (504) is updated to be stored as the details of the calling to exhale for not connecing for the callee
Cry.
9. the network node (204) of claim 1, wherein, each version that the calling is invited includes the calling and invited
Identifier please.
10. one kind is used for the network node (102a in network (100);204) on by network caller and callee it
Between set up the equipment of calling, including:
For receiving the unit that calling is invited from caller's client of the caller at call controller (502) place;
Unit for inviting generation sending out notice request based on the calling;
Unit for sending the sending out notice request from the call controller (502) to sending out notice center (506);
For sending multiple versions that the calling is invited from the sending out notice center (506) to callee's client, use
In the called in caller's client (402a) with implementation in callee's terminal (102b) of the callee
The unit of the calling is set up between person's client (402b), including:
Unit for receiving the sending out notice request from the call controller;
For judging the whether registered unit for receiving sending out notice of the callee;
For receiving the unit that sending out notice is proceeded as follows in response to determining that the callee is registered:
Sending out notice request is sent to the sending out notice service based on operating system, to believe via the push based on operating system
Road, using the sending out notice based on operating system, institute is sent to callee's client in callee's terminal
State the first version that calling is invited;And
Via the push channel based on application layer, using application layer sending out notice, the quilt in callee's terminal
Caller's client sends the second edition that the calling is invited.
11. the method that one kind sets up calling between a caller and a callee by network (100), this method includes:
Calling is received at call controller (502) place from caller's client of the caller to invite;
Generation sending out notice request is invited based on the calling;
The sending out notice request is sent from the call controller (502) to sending out notice center (506);
From the sending out notice center (506) to callee's client send it is described calling invite multiple versions, for
Caller's client (402a) is with implementing the callee visitor in callee's terminal (102b) of the callee
The calling is set up between family end (402b), including:
The sending out notice request is received from the call controller;
Judge the whether registered reception sending out notice of the callee;
In response to determining the registered reception sending out notice of callee:
Sending out notice request is sent to the sending out notice service based on operating system, to believe via the push based on operating system
Road, using the sending out notice based on operating system, institute is sent to callee's client in callee's terminal
State the first version that calling is invited;And
Via the push channel based on application layer, using application layer sending out notice, the quilt in callee's terminal
Caller's client sends the second edition that the calling is invited.
12. the method for claim 11, wherein, multiple versions that the calling is invited or:(i) implementation is all sent to exist
Callee's client (402b) on one callee's terminal (102b), or (ii) are sent to implementation in difference
Callee's terminal (102b) on each different callee's client (402b).
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1210600.1 | 2012-06-14 | ||
GBGB1210600.1A GB201210600D0 (en) | 2012-06-14 | 2012-06-14 | Call invites |
US13/655013 | 2012-10-18 | ||
US13/655,013 US9871930B2 (en) | 2012-06-14 | 2012-10-18 | Call invites |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103338192A CN103338192A (en) | 2013-10-02 |
CN103338192B true CN103338192B (en) | 2017-07-18 |
Family
ID=48670837
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310236142.3A Active CN103338192B (en) | 2012-06-14 | 2013-06-14 | Network node and method for setting up calling between a caller and a callee |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103338192B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3343889B1 (en) * | 2016-12-30 | 2019-11-13 | Unify Patente GmbH & Co. KG | Computer-implemented method for establishing a voip communication between a pbx system and a first terminal device in a communication network, private branch exchange system, and communication network |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101299785A (en) * | 2007-04-30 | 2008-11-05 | 华为技术有限公司 | Method, system and service server for processing conversation |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101854369A (en) * | 2009-04-01 | 2010-10-06 | 升东网络科技发展(上海)有限公司 | Remote information notification system and method |
US8295467B2 (en) * | 2009-12-30 | 2012-10-23 | Verizon Patent And Licensing Inc. | System for and method of re-using public domain identifications |
US8606306B2 (en) * | 2010-04-07 | 2013-12-10 | Apple Inc. | Multiple client computing device invitations for online communication sessions |
-
2013
- 2013-06-14 CN CN201310236142.3A patent/CN103338192B/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101299785A (en) * | 2007-04-30 | 2008-11-05 | 华为技术有限公司 | Method, system and service server for processing conversation |
Also Published As
Publication number | Publication date |
---|---|
CN103338192A (en) | 2013-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9871930B2 (en) | Call invites | |
US9654519B2 (en) | Notification of communication events | |
EP2909970B1 (en) | Notification of communication events | |
US10764107B2 (en) | Session initiation method and device | |
CN102859962A (en) | Establishing online communication sessions between client computing devices | |
CN103475499A (en) | Voice intercom method and system based on internet teleconference | |
JP2008516519A (en) | PT system service reservation method | |
EP2862343B1 (en) | Notification of communication events | |
CN109586930A (en) | Participant user adding method, first terminal, second terminal and processing server | |
WO2018036116A1 (en) | Method for calling in telephone conference, media server, and terminal | |
CN102215216A (en) | Transitioning between circuit switched calls and video calls | |
CN103401890B (en) | Apparatus and method for the notice of communication event | |
CN1988546A (en) | Method and system for obtaining conversation start protocol news transmission path | |
CN103338192B (en) | Network node and method for setting up calling between a caller and a callee | |
US20070083661A1 (en) | Session control method and terminal for PoC | |
CN108965772A (en) | Video conference implementation method and server, computer readable storage medium | |
WO2009036689A1 (en) | A message association method, user terminal and server | |
CN103327089B (en) | Notification of communication event | |
TWI255116B (en) | Integrated real-time message system with gateway function, and its implementation method | |
CN103338146B (en) | The notice of communication event | |
CN104767754B (en) | Equipment is calculated for online communication session registered client | |
KR20110041694A (en) | Chatting providing method and system thereof | |
JP2008083860A (en) | Electronic conference system, electronic conference management system, terminal device, and computer program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150707 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20150707 Address after: Washington State Applicant after: Micro soft technique license Co., Ltd Address before: Washington State Applicant before: Microsoft Corp. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |