Embodiment
As known to persons skilled in the art, the present invention can be used as method, system or computer program and implements.Therefore, the present invention can adopt whole hardware embodiment, whole forms of the embodiment that combines of software implementation example (comprising firmware, resident software, microcode etc.) or software section and hardware components, is called " circuit ", " module " or " system " here.In addition, the present invention can adopt the form of the computer program on the storage medium that computer can be used, and has the program code that the computer in the embedding medium can be used on this medium.
Can use any suitable computer to use or computer-readable medium.Computer can with or computer-readable medium can be, such as but not limited to, electronics, magnetic, optics, electromagnetism, infrared or semiconductor system, unit or propagation medium.The example more specifically of computer-readable medium (non exhaustive tabulation) can comprise: have the electrical connection, portable computer diskette, hard disk, random-access memory (ram), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memories), optical fiber, portable read-only compact disk memory (CD-ROM), optical storage of one or more circuit, such as transmission medium or the magnetic memory apparatus of supporting internet or in-house network.It should be noted that computer can with or computer-readable medium even can be paper or other suitable media of the program that is printed with thereon, because program can be obtained by for example optical scanner paper or other media, then by compiling, explain or handle (if needed) in other suitable modes, be stored in the computer storage then.In the context of presents, computer can with or computer-readable medium can be by or and instruction executive system, equipment or device link to each other and fetch the program that comprises, store, transmits, propagates or transmit use.Computer usable medium can comprise the data-signal that the quilt that has computer usable program code is thereon propagated, or in base band or as the part of carrier wave.Computer usable program code can use any suitable medium to send, and includes but not limited to internet, circuit, fiber optic cables, RF etc.
Be used to realize that the computer program code of operation of the present invention can write with Object-Oriented Programming Language Java, Smalltalk, C++ etc.Yet, be used to realize that the computer program code of operation of the present invention can also write with the traditional programming language that stylizes such as C programming language or similar programming language.Program code can be used as the independent operating software kit and is carrying out on the subscriber computer, partly moving or move on remote computer or server fully at remote computer at subscriber computer and part in execution on the subscriber computer, part fully.Under the latter's situation, remote computer can be connected to subscriber computer by Local Area Network or wide area network (WAN), and perhaps this connection can be connected to outer computer (for example, by using ISP's internet).
Schematic flow sheet and/or calcspar below with reference to the method according to this invention, equipment (system) and computer program are described the present invention.Be to be understood that in schematic flow sheet and/or calcspar the combination of each square of schematic flow sheet and/or calcspar and the square of schematic flow sheet and/or calcspar can realize by computer program instructions.The processor that these computer program instructions can offer all-purpose computer, special purpose computer or other programming data treatment facilities to be to produce a kind of machine, makes the instruction of being carried out by computer or other programming data treatment facilities produce to be used for to realize carrying out means in the function/action of a square of flow chart and/or calcspar or a plurality of square appointments.
These computer program instructions also can be stored in the computer-readable memory, this instruction can guide computer or other programming data treatment facilities with ad hoc fashion work, makes that be stored in instruction in the computer-readable memory produces the product that comprises execution manufacturing of the command device of the function/action of appointment in a square of flow chart and/or calcspar or a plurality of square.
Computer program instructions can also be loaded on computer or other programming data treatment facilities so that the sequence of operations step is carried out on computer or other programming data treatment facilities, and produce the performed processing of computer, make the step that is provided for carrying out the function/action of appointment in a square of flow chart and/or calcspar or a plurality of square in the instruction of carrying out on computer or other programming devices.
With reference to figure 1, Fig. 1 shows continuity and handles.With more detailed description, this continuity is handled and can receive the message that is configured to first form carried by first communication channel on the client electronic installation as below.This continuity handle can be further on the client electronic installation message of change first form be configured to the message of second form carried by the second communication channel with formation.The message of this second form can be to the message of small part based on first form.The message of this second form can send from the client electronic installation by the second communication channel.
The processing that this continuity processing can be a server end (for example, the server end continuity handle 10 or the server end continuity handle 12), client process (for example, the client continuity handles 14, the client continuity handle 16 or the client continuity handle 18) or the server end/client process of mixing (for example, one or more server end continuitys handle 10,12 and one or more client continuity handle 14,16,18 combination).
The server end continuity is handled 10,12 and can be resided on the
server computer 20,22 also (difference) by its execution, this server computer is connected to network 24,26 (for example, internet, local area network (LAN) or wide area network).The example of
server computer 20,22 includes but not limited to personal computer, server computer, a series of server computer, mini computer and mainframe computer.Each can be the webserver (or a series of server) of operational network operating system for a
server computer 20,22, network operating system such as but not limited to: for example
XP Server;
Or
(Microsoft and Windows are the trade mark of Microsoft in the U.S., other countries or both registrations; Novell and NetWare are the trade mark of novell, inc. in the U.S., other countries or both registrations; Redhat is the trade mark of Redhat company in the U.S., other countries or both registrations; And Linux is the trade mark of LinuxTorvales in the U.S., other countries or both registrations).
The instruction group of server end continuity processing 10,12 and subprogram can be carried out by the one or more processor (not shown) and the one or more storing mechanism (not shown) that are combined in the server computer 20,22, and this instruction group and subprogram can (difference) be stored on the storage device 28,30 that is connected to server computer 20,22. Storage device 28,30 can include but not limited to: hard disk drive; Tape drive; Optical drive; The RAID array; Random access memory (RAM) and read-only memory (ROM).
Server computer 20,22 can be carried out web server application program, application program for example includes but not limited to Microsoft IIS, Novell Webserver or ApacheWebserver, it allows HTTP (that is the HTTP) visit by network 24 and/or 16 pairs of server computers 20,22.This outer network 22,26 can be connected to one or more secondary networkings (not shown), for example includes but not limited to: local area network (LAN); Wide area network; Or internet.
The client continuity handles 14,16,18 can reside on the client electronic installation 32,34,36 also (difference) by its execution, and this client electronic installation is such as but not limited to personal computer 32, notebook 34, personal digital assistant 36, data enable cell phone (not shown) etc.Client electronic installation 32,34,36 can be connected to network 24 and/or network 26 separately, and each can executive operating system, and operating system is such as but not limited to Microsoft Windows, Microsoft Windows CE, Redhat Linux or custom operation system.
The instruction group of client continuity processing 14,16,18 and subprogram can (difference) be carried out by the one or more processor (not shown) and the one or more storing mechanism (not shown) that are combined in the client electronic installation 32,34,36, and this instruction group and subprogram can (difference) be stored on the storage device 38,40,42. Storage device 38,40,42 can include but not limited to: hard disk drive; Tape drive; Optical drive; The RAID array; Random access memory (RAM); Read-only memory (ROM); Compact flash (CF) storage device; Secure digital (SD) storage device and memory stick memory.
Except the server end continuity is handled 10,12,
server computer 20,22 separately can the executive communication server application (for example, first communication
server application program 44 and second communication server application 46), communication server application program for example includes but not limited to: email serveraapplication is (for example
Server and Microsoft Exchange
Server), server of instant message application program (for example, Lotus
Microsoft Office LiveCommunications Server, Jabber XCP
Tm, and
Instant
), call service device application program (for example, the Air Messenger LAN Server of Internet SoftwareSolutions) or the like.First communication
server application program 44 and/or second
communication server application 46 can allow
user 48,50,52 by the communication customer end application program (for example, the first communication customer
end application program 54,56,58 and second
communication client application 60,62,64) (for example communicate with one another, the exchange email message, instant message, word message etc.), client application includes but not limited to: e-mail client application (for example, Lotus Notes and Microsoft Outlook), instant message sends application program (for example, AOL InstantMessenger, IBM Lotus Sametime;
Talk) etc.
If handling, continuity is configured to the processing of server end continuity, the server end continuity handle 10,12 can for the stand-alone utility of one or more server applications (for example with first communication server application program 44 and/or second communication server application 46) interface, or applet/application program of in one or more communication server application programs, carrying out.In addition, although first communication server application program 44 that illustrates in the drawings and second communication server application 46 reside in the server computer 20,22 separately, but first and second communication server application programs can reside on the single server computer and by its execution.In this case, individual server end continuity handle can reside on the individual server computer and can with one or more first and second communication server application programming interfaces.In addition, under first and second communication server application programs resided in situation on the individual server computer, it can be small routine/application program of carrying out in one or more first and second communication server application programs that the server end continuity is handled.
If continuity is handled and to be configured to the client continuity and to handle, then to handle 14,16,18 can be stand-alone utility with one or more first communication customer end application programs 54,56,58 and second communication client application 60,62,64 interfaces to the client continuity.In addition, client continuity processing 14,16,18 can be small routine/application program of carrying out in one or more first communication customer end application programs 54,56,58 and second communication client application 60,62,64.
The instruction group of first communication server application program 44 and second communication server application 46 and subprogram can (difference) be carried out by the one or more processor (not shown) and the one or more storing mechanism (not shown) that are combined in the server computer 20,22, and this instruction group and subprogram can (difference) be stored in (difference) and be connected on the storage device 28,30 of server computer 20,22.
The instruction group of the first communication customer end application program 54,56,58 and second communication client application 60,62,64 and subprogram can (difference) be carried out by the one or more processor (not shown) and the one or more storing mechanism (not shown) that are combined in the client electronic installation 32,34,36, and this instruction group and subprogram can (difference) be stored in (difference) and be connected on the storage device 38,40,42 of client electronic installation 32,34,36.Use the first communication customer end application program 54,56,58 and/or second communication client application 60,62,64, user 48,50,52 can (difference) visit one or more first communication server application programs 44 and second communication server application, and allows user 48,50,52 by communicating with one another such as email message, instant message, word message etc.
User 48,50,52 can be by executive communication client application thereon (for example, the first communication customer end application program 54,56,58 and second communication client application 60,62,64) device directly visit one or more first communication server application programs 44 and second communication server application 46, i.e. client electronic installation 32,34,36 for example.User 48,50,52 can directly visit one or more first communication server application programs 44 and second communication server application 46 by network 24 or network 26.In addition, server computer 20,22 (promptly carrying out the computer of first communication server application program 44 and second communication server application 46) can be connected to network 24 by network 26, as virtually connects shown in the wiring 64.
Various client electronic installations can directly or indirectly be connected to network 24 (or network 26).For example, personal computer 32 is depicted as by the hard-wired network connection and is directly connected to network 24.In addition, the radio communication channel 66 that notebook 34 is depicted as by setting up between notebook 34 and WAP (wireless access point) (being WAP) 68 is wirelessly connected to network 24, and it is shown as and is directly connected to network 24.WAP68 can be for example IEEE802.1 1a, 802.1 Ib, 802.1 Ig, Wi-Fi and/or blue-tooth device, can set up radio communication channel 66 between notebook 34 and WAP68.The radio communication channel 70 that personal digital assistant 36 is depicted as by being based upon between personal digital assistant 36 and the cellular network/bridge 72 is wirelessly connected to network 24.
As is known to the person skilled in the art, all IEEE 802.1 Ix standards can be used the Ethernet protocol of sharing the path and have the csma (being CSMA/CA) that avoids conflict.For example, various 802.1 1x standards can be used phase shift keying (being PSK) modulation or complementary code keying (being CCK) modulation.As is known to the person skilled in the art, bluetooth is to allow to use short-distance wireless to be connected telecommunications industry specification connected to one another such as mobile phone, computer and personal digital assistant.
For following discussion, will describe the client continuity for illustrative purposes and handle 14,16.Yet this does not also mean that the restriction present disclosure, because can use other configuration equally.In addition, purpose for following discussion, first communication application program (i.e. first communication server application program 44 and the first communication customer end application program 54,56,58) will be described to instant message and transmit application program, and second communication application program (being second communication server application 46 and second communication client application 60,62,64) will be described to email application.Yet this does not mean that the restriction present disclosure, because continuity is handled other combinations and the distortion that can be applied to communication application program equally.
Can allow user (for example the user 48) and one or more recipients to chat with reference to figure 2, the first communication customer end application programs 54 (combining separately or with continuity processing 14) by instant message video clip 100.When carrying out the instant message chat, user 48 can limit the recipient (for example the user 50) of expectation, for example, by the pointer on the screen 102 (can by indicator device control, not shown) such as mouse etc. from partner list 104, select, input instant message user ID (not shown) etc.In case user 48 has selected the instant message chat recipient of user 50 as expectation, then the first communication user application program 54 can make user 48 key in the instant message content of expectation in typewriting frame 106.For example, user 48 can key in message content:
What is the itinerary that you participate in Chicago Trade Fair?
The message content of user's 48 inputs can appear in the chat box 108 together with publisher's's (being user 48) name.
Can continuity handles 14 make instant message (is what is the itinerary that you participate in Chicago Trade Fair?) be sent to user 50 by the communication channel that is different from instant message transmission communication channel.Therefore, with reference to figure 3, continuity handles 14 can receive the message that is configured to by first form of first communication channel conveying on client electronic installation 32.Continuity is handled 14 message that can change 152 first forms on client electronic installation 32 and is configured to message by second form of second communication channel conveying with formation.The message of this second form can be to the message of small part based on first form.In addition, continuity processing 14 can send the message of 154 second forms from client electronic installation 32 by the second communication channel.
Continue example recited above, continuity handle 14 can receive 150 create by user 48 instant message " what the itinerary that you participate in Chicago Trade Fair is? " for example by receiving 158 these instant messages from the first communication customer end application program 44 (for example, can be the instant message application program that is configured to carry instant message).This instant message can be to be configured to (for example use suitable instant message protocol, Session InitiationProtocol, " SIP " etc.) (for example, through can be that first communication server application program 44 of server of instant message application program is between the first communication customer end application program 54,56) sends between the instant messaging client application program form.Continuity handle 14 (combining separately or with one or more first communication customer end application programs 54 and/or second communication client application 60) can change 152 instant messages with establishment comprise message " what the itinerary that you participate in Chicago Trade Fair is? " Email.
For example, with reference to figure 4, continuity is handled 14 (combine separately or with one or more first communication customer end application programs 54 and/or second communication client application 60, they can be e-mail client application) can create email message 200.Email message 200 can be configured to (for example send by the Email channel, use SimpleMailTransfer Protocol, " SMTP ", by being the second communication server application of email serveraapplication), and comprise message content 202 (for example main body of email message).Message content 202 can comprise the instant message of creating by the first communication customer end application program 54 content (that is, and " what the itinerary that you participate in Chicago Trade Fair is? ").In addition, email message 200 can comprise " TO " receiving area 204.Email message 200 can be sent to the user 50 in " TO " receiving area 204 (that is, and instant message " what the itinerary that you participate in Chicago Trade Fair is? " the expectation recipient).
Continuity is handled 14 (combining separately or with one or more first communication customer end application programs 54 and/or second communication client application 60) can send 154 email messages 200 to user 50 by second communication server application 46.Email message 200 can be received by one or more first communication clients 56 on the laptop computer 34 and/or second communication client application 62.Email message 200 can pass through conditional electronic mail protocol (for example, Simple Mail Transfer Protocol, " SMTP ") and send 154 to user 50.For example, the message that sends 154 second forms can comprise that second messaging application by the message that is configured to send/receive second form sends the message of 160 second forms.Therefore, second communication client application 60 (for example, can be e-mail client application) can send 160 email messages 200 to user 50.In addition or alternatively, continuity is handled 14 and can be comprised and email message 200 can be sent 154 email application and/or modules to user 50.
The message that sends 154 second forms comprises determines the 162 recipient's network identities for second format messages, and the message of second form is sent 154 to recipient's network identity.For example, user 50 instant message transmits the e-mail address that sign can be different from user 50.For email message 200 is sent 154 to user 50, continuity handles 14 can determine that 162 users' 50 electronic mail network identifies (that is the address of user 50 Email).Continuity handles 14 can be based on for example relevant with user 50 message, determine (for example, can comprise that user 50 name, instant message transmit sign, e-mail address, telephone number etc.) 162 users' 50 e-mail address by the partner list 104 of the first communication customer end application program 54.In addition/alternatively, continuity handle 14 can be by searching the e-mail address that enterprise content (not shown), the contacts list relevant with second communication client application 60 (for example can be the e-mail client application that comprises contacts list) or similar resource are determined 162 users 50.
It can be the instant message transformat from electronic mail formats change 156 with the email message 200 that sends 154 that the continuity of carrying out on laptop computer 34 handles 16, for example, form comprise as message content " what the itinerary that you participate in Chicago Trade Fair is? " instant message.Email message 200 can comprise the indicating device that message wishes to transmit with instant message (for example, produce as instant message and send by the E-mail communication channel 154 message).For example, email message 200 can comprise that indication hope transmits the embedding data of message with instant message.Various additional and/or optionally indicating devices can be used in reference to example and transmit with instant message as expectation, this indicating device includes but not limited to: be included in literal in the subject line, source body etc.
Continue above-mentioned example, for the indication that occurs (being that the Email that is received wishes to send by instant message), continuity handles 16 can monitor the Email that is received by second communication client application 62.To small part based on comprising that Email wishes the email message 200 of the indicating device that is transmitted by instant message, continuity is handled 16 and can be changed 156 email messages that send 200 based on the email message 200 that is sent and form instant message to small part.
Through changing first messaging application that 156 message can be delivered to the message that is configured to send/receive first form.Continue above-mentioned example and with reference to figure 5, continuity handles 16 can be with through (for example changing 156 message, to the instant message of small part based on email message 200) be delivered to the first communication customer end application program 56 (for example, it can be the instant message client application program).The first communication customer end application program 56 (combining separately or with one or more continuitys processing 16 and/or first communication server application programs 44) can present instant message video clip 100.Through change 156 message (that is, and instant message " what the itinerary that you participate in Chicago Trade Fair is? ") may be displayed in the chat box 108.Equally, produce by user 48 and can be used as instant message by the instant message that the E-mail communication channel sends and be transmitted to user 50.
In passing through the process of first communication channel initial exchange message, one or more continuitys are handled 14, the 16 and/or first communication customer end application programs 54,56 can shift (failover) option by exchange trouble.Continue the example presented above, can comprise that by first instant message that the first communication customer end application program 54 sends the fault diversion option of Email is as the second communication channel by user 48.Equally, under the situation that first communication channel (that is, the instant message network) breaks down, continuity is handled 14, the 16 and/or first communication customer end application program can have the fault transfer channel of setting up in advance.In addition, one or more continuitys are handled the 16 and/or first communication customer end application program 56 can answer the fault diversion option of handling the 14 and/or first communication customer end application program 54 from the continuity of replying fault diversion option and/or change fault diversion option, for example, handling 16 in continuity can not meet under the situation of fault diversion option.
Continuity is handled 14 and be can be client electronic installation 32 monitoring first communication channels, to determine whether first communication channel breaks down.For example, (for example break down at first communication channel, the fault relevant with first communication server application program 44, the fault relevant with server computer 20 and/or with first communication channel the relevant relevant fault of basis instrument, this first communication server application program 44 is as the server of instant message application program, carrying out this first communication server application program 44 on the server computer 20) situation under, second communication channel (for example E-mail communication channel) can be used to carry instant message.Continuity handles 14 can monitor instant message delivery system to determine whether instant message delivery system breaks down.For example, this instant message of instant message client (for example, the first communication customer end application program 54) poll that can regularly (for example, with the second be the interval of the order of magnitude) transmits basis instrument.Can be by for example lacking the fault of the response of periodic polls being indicated instant message delivery system.Can handle the generation of 14 detection failure by continuity.Fault in response to detected instant message delivery system, continuity handles 14 (for example can utilize e-mail system, comprise second communication client application 60,62 and second communication server application 46), between user 48 and user 50, to transfer immediate news.
Under the situation that first communication channel (for example instant message transmission) breaks down, use second communication channel (for example Email) can cause increasing burden on the second communication channel as the fault transfer.Alternatively, by restriction of message and/or second communication channel as fault shift use at the user control burden on the second communication channel.For example, use the second communication channel to shift to be restricted to and be marked as message with one or more assigned priority levels as fault.For example, the second communication channel can only be used as the fault transfer at the message that is labeled as " high priority ".Similarly, communication channel can be restricted to the user on the ad-hoc location in tissue (for example department head or higher leader) as the use that fault shifts.In addition, can comprise user interface, wherein, one or more users of the communication channel that breaks down can select fault to be transferred to the second communication channel, and/or select to stop to carry (for example, approve of by second communication application program etc. and utilize the second communication channel) by first communication channel.According to design standard and user's request, can adopt various other controls.
Although described aforementioned discussion in the context of instant message first communication channel and Email second communication channel, the intention of such description can not be taken as limitation of the invention only for the purpose of description.First and second communication channels can comprise multiple different communication channel, system and agreement.For example, but first communication channel E-mail communication channel, and the message of first form can comprise Email.Similarly, the second communication channel can be the instant messaging channel, and the message of second form can comprise instant message.Can be used similarly with aforementioned open compatible multiple other communication systems.
In addition, although foregoing data has been described intercommunication (for example, between user 48 and user 50), this is not intended the present invention is construed as limiting.For example, failover mechanisms as described herein can be applied to multi-party communication equally, for example, and between three users or more a plurality of user.
Be to be understood that as those skilled in the art the present invention can be embodied as method, system or computer program.Therefore, the present invention can adopt the execution mode of whole hardware, the execution mode of whole software (comprising firmware, resident software, microcode etc.) or in conjunction with the form of the execution mode of software and hardware aspect, be known as " circuit ", " module " or " system " at this.In addition, the present invention can adopt the form of the computer program on the storage medium that computer can be used, and has the program code that the computer in the embedding medium can be used on this medium.
Flow chart among the figure and calcspar show structure, function and the work of the possible execution mode of according to various embodiments of the present invention system, method and computer program product.Thus, each square in flow chart or the calcspar can representation module, partly or partial code, and it comprises one or more executable instructions that are used to realize specific logical function.Should be noted that also that in some interchangeable execution modes mentioned function can be different from the order shown in the figure and carries out in square.For example, in fact, according to related functional, continuous two squares shown in the figure can almost be performed simultaneously, and perhaps a plurality of squares can be carried out with opposite order sometimes.The combination that also should be noted that each square in calcspar and/or the schematic flow sheet and the square in calcspar and/or the schematic flow sheet can realize by carrying out the specific function or the hardware based system of specific purpose of action or the combination of specific purpose hardware and computer instruction.
Term used herein only is used to describe specific embodiment and is not intended to limit the present invention.Singulative is intended to also comprise plural form as used in this, unless opposite indication is clearly arranged in the context.Will be further understood that, term " comprise " and/or " comprising " with in this manual the time, expression feature, integer, step, operation, element and/or the assembly of being stated, but do not get rid of the existence or the increase of other features, integer, step, operation, element, assembly and/or its combination.
As institute's specific requirement protection; below claim in structure, material, action and all devices of correspondence or the equivalent that step adds function element be intended to comprise all structures, material or action, be used to carry out function with other claimed combination of elements.Specification of the present invention is used for signal and explanation, and is not limited to carry out exclusive or qualification to the present invention of disclosed form.Various changes and variation are conspicuous to those skilled in the art, and do not depart from scope and spirit of the present invention.This execution mode is selected and describe explaining the principle of the present invention and practical application best, and guarantees that those of ordinary skills understand the present invention who is used for various embodiment and have the various distortion that are applicable to the application-specific of expection.
Described the application's invention in detail, obviously can change and change, and do not break away from the scope of the present invention that limits in the appended claim with reference to specific embodiment herein.