WO2007123821A2 - Techniques for tracking communication frequency across communication modalities - Google Patents
Techniques for tracking communication frequency across communication modalities Download PDFInfo
- Publication number
- WO2007123821A2 WO2007123821A2 PCT/US2007/008631 US2007008631W WO2007123821A2 WO 2007123821 A2 WO2007123821 A2 WO 2007123821A2 US 2007008631 W US2007008631 W US 2007008631W WO 2007123821 A2 WO2007123821 A2 WO 2007123821A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- communication
- user
- modalities
- records
- alert
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 303
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000012544 monitoring process Methods 0.000 claims description 14
- 230000001413 cellular effect Effects 0.000 claims description 9
- 238000004458 analytical method Methods 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 claims 10
- 238000012545 processing Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 239000000463 material Substances 0.000 description 3
- 230000004931 aggregating effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000036642 wellbeing Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/487—Arrangements for providing information services, e.g. recorded voice services or time announcements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/50—Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
- H04M3/53—Centralised arrangements for recording incoming messages, i.e. mailbox systems
- H04M3/533—Voice mail systems
- H04M3/53366—Message disposing or creating aspects
- H04M3/53383—Message registering commands or announcements; Greetings
- H04M3/53391—Message registering commands or announcements; Greetings dependent on calling party
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/109—Time management, e.g. calendars, reminders, meetings or time accounting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2201/00—Electronic components, circuits, software, systems or apparatus used in telephone systems
- H04M2201/12—Counting circuits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2201/00—Electronic components, circuits, software, systems or apparatus used in telephone systems
- H04M2201/14—Delay circuits; Timers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2201/00—Electronic components, circuits, software, systems or apparatus used in telephone systems
- H04M2201/18—Comparators
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2201/00—Electronic components, circuits, software, systems or apparatus used in telephone systems
- H04M2201/36—Memories
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2201/00—Electronic components, circuits, software, systems or apparatus used in telephone systems
- H04M2201/52—Telephonic communication in combination with fax communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2203/00—Aspects of automatic or semi-automatic exchanges
- H04M2203/20—Aspects of automatic or semi-automatic exchanges related to features of supplementary services
- H04M2203/2044—Group features, e.g. closed user group
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2203/00—Aspects of automatic or semi-automatic exchanges
- H04M2203/20—Aspects of automatic or semi-automatic exchanges related to features of supplementary services
- H04M2203/2072—Schedules, e.g. personal calendars
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2203/00—Aspects of automatic or semi-automatic exchanges
- H04M2203/35—Aspects of automatic or semi-automatic exchanges related to information services provided via a voice call
- H04M2203/353—Aspects of automatic or semi-automatic exchanges related to information services provided via a voice call where the information comprises non-audio but is provided over voice channels
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2203/00—Aspects of automatic or semi-automatic exchanges
- H04M2203/45—Aspects of automatic or semi-automatic exchanges related to voicemail messaging
- H04M2203/4509—Unified messaging with single point of access to voicemail and other mail or messaging systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/42025—Calling or Called party identification service
- H04M3/42085—Called party identification service
- H04M3/42102—Making use of the called party identifier
- H04M3/4211—Making use of the called party identifier where the identifier is used to access a profile
Definitions
- Embodiments of the present invention relate in general to electronic communication systems and more specifically to techniques for generating an alert upon detection of a change in communication behavior between parties.
- FIG. 1 depicts a unified messaging system environment according to one embodiment of the present invention.
- FIG. 2 depicts a simplified system for tracking communication frequency according to one embodiment of the present invention.
- FIG. 3 depicts various methods of storing communication records in storage according to one embodiment of the present invention.
- FIG. 4 depicts a simplified flow chart of a method for tracking communication frequency according to one embodiment of the present invention.
- FIG. 5 depicts a simplified flow chart of a method for tracking when no communication frequency has been found across modalities according to one embodiment of the present invention.
- FIG. 6 depicts a simplified flow chart of a method for analyzing content of communication records to determine if an alert should be generated according to one embodiment of the present invention.
- Embodiments of the present invention provide alerts to a user when a pattern of communication between a user and a contact has not occurred during a pre-determined amount of time.
- Communication records between the contact and the user can be analyzed to determine if a communication frequency pattern with the contact during the predetermined amount of time does not meet pre-determined criteria.
- the criteria may be: generate an alert if communications do not occur in the last month, generate an alert if less than five communications occur in the last six months, etc.
- embodiments of the present invention may analyze the content of a communication to determine if a certain topic has been discussed. If a certain topic has not
- an alert may also be generated reminding the user that the topic has not been discussed.
- a modality refers to a "mode" of communication.
- a modality can be distinguished by data format, type of signal, physical link or infrastructure, or other characteristic of a communication. For example, email, telephone, VOIP, instant messaging, chat, web posting, web page displaying, faxing, paging, etc., can each be considered a "modality.”
- a modality may be broken up into sub-modalities, such as instant messaging may be broken up into AOL AIMTM, MSN MessengerTM, and Yahoo !_ IM modalities.
- the communication records for communications across the modalities may be stored for a user and analyzed for frequency of communication changes.
- the communication records may be any information for a communication and may include a call history, stored messages, etc.
- a unified messaging system may be used to store the communication records. Although using a unified messaging system is described, it will be understood that other systems may be used. For example, systems for aggregating messages across non-enterprise modalities may be used.
- FIG. 1 depicts a unified messaging environment 50 according to one embodiment of the present invention. Although the following unified messaging environment 50 is described, it will be recognized that variations of the environment will be appreciated by a person skilled in the art. As shown, a unified messaging system 10 and different communication modalities are provided.
- a unified messaging system (UMS) 10 provides a single access point for messages for a user regardless of the message type and the message origination (e.g., communication modality).
- unified messaging system 10 may deliver emails, voicemails, instant messages, short message service (SMS) messages, and facsimile messages to a single inbox, such as a user's email box.
- SMS short message service
- the user can check all messages from a single point.
- the user can listen to his/her email over the telephone, check voice messages through their email inbox, view a fax through his/her email inbox, etc.
- Various communication modalities are shown in environment 50. The various communication modalities may store communication records on various storage media.
- a communication record may be any record of a communication.
- the communication record may be an actual message that is sent or received.
- a modality refers to a "mode" of communication.
- a modality can be distinguished by data format, type of signal, physical link or infrastructure, or other characteristic of a communication. For example, email, telephone, VOIP, instant messaging, chat, web posting, web page displaying, faxing, paging, etc., can each be considered a "modality.”
- a modality may be broken up into sub-modalities, such as instant messaging may be broken up into AOL AIMTM, MSN MessengerTM, and Yahoo! IM modalities.
- the various communication modalities may store messages on various storage media. Also, it may be a history of communications, such as a call history from an end device 16.
- the communication record may include the content of the message and also other identifying information, such as the sender, recipient, subject, header information, etc.
- text-to-speech and speech-to-text converters may be used. For example, an email message may be converted into voice using a speech-to-text converter. Also, the email message may be stored and then the conversion is performed in real-time when the voice representation of the email message is needed.
- End points 16 in environment 50 may be used to send messages to a user.
- End points 16 may include any devices that can communicate in a modality, such as a cell phone 16-1, a POTS phone 16-2, a computer 16-3, a personal digital assistant 16-4, an IM client 16-5, a router, etc.
- a cell phone 16-1 may be used to send voice messages through a cellular network 14.
- the voice messages may be managed by voicemail server 12.
- a POTS phone 16-2 may be used to leave or send voice messages through a PBX system 18.
- Another modality may be a facsimile modality.
- a FAX machine 22 may send a FAX to the user stored in FAX storage 23.
- Internet may be used, such as any local area network, wide area network, wireless network, etc.
- Email, voicemail, web pages, instant messages, etc. may be sent through Internet 30.
- instant messages may be stored on an IM server 24
- emails may be stored on an email server 26
- web pages may be stored on a web server 28.
- End devices of a computer 16-3, PDA 16-4, IM client 16-5, or any other end device may be used to send messages to the user or used by the user to send messages to contacts.
- IP phone 16-6 is used to make voice over IP (VOIP) calls.
- a call manager 29 is used to manage the calls and any messages (e.g., voice messages) for the IP phone modality.
- unified messaging system 10 may access messages from enterprise modalities.
- An enterprise modality may be any modality controlled by an enterprise (e.g., a business or company). Examples include an enterprise's email, voicemail, etc.
- enterprise modalities are described, it will be understood that unified messaging system 10 may access non-enterprise messages. Also, techniques described below allow non-enterprise messages to be accessed.
- Unified messaging system 10 is configured to aggregate communication records from various media into storage 32. Although it is described that communication records are stored in storage 32, it will be recognized that communication records do not have to be physically stored in a single storage device. For example, voice communication records may be stored on an email server. Also email communication records, instant messages, etc. may be stored on a voicemail server, etc. Thus, messages may be stored in multiple storage areas (i.e., distributed). However, for discussion purposes, it is assumed that communication records from various modalities will be discussed as being stored in storage 32. For example, communication records stored on EM server 24, email server 26, voicemail server 12, fax storage 23, and web server 28 may be logically aggregated by unified messaging system 10, but will be described as being stored in storage 32.
- a client 34 may be used to view the communication records aggregated by unified messaging system 10.
- a personal computer may be used to view email messages, voice messages, and faxes in an email inbox.
- Embodiments of the present invention track communications between a user and the user's contacts. For example, communication records are stored for messages sent by a user or sent to the user using any of the communication modalities described above with respect to system 50. Also, embodiments of the present invention are not restricted to using the unified messaging system 10 for aggregating communication records. Other methods, such as using manual entry or downloading of communication history from non-enterprise clients of the user, may be used to aggregate communication records.
- Fig. 2 depicts a simplified system 200 for tracking communication frequency according to one embodiment of the present invention.
- a communication manager module (CMM) 202 is provided for managing the frequency of a user's contact with contacts.
- communication manager module 202 is part of unified messaging system 10. However, it will be recognized that communication manager module 202 may be part of any communication system that has access to a user's communication records.
- Communication manager module 202 includes an interface module that provides an interface to allow a user to set which alerts are desired.
- a graphical-user interface and a telephone-user interface may be provided such that users can set reminders from a variety of end devices 16. For example, a user may select contacts from a contact list in which the user would like to be notified if the user's communication frequency pattern has not achieved a predetermined communication frequency pattern for a certain amount of time.
- the communication frequency pattern may be checked across multiple modalities. Also, it will be recognized that a communication frequency pattern may be applied to specific modalities. For example, if the user has not sent an email to a contact after a certain amount of time but has sent an instant message, an alert may be generated that says the user has not sent an email but has sent an instant message.
- a contact may be any user. Also, a contact may be identified differently across different communication modalities. Because of the different identifiers, the contact may be identified using a universal identifier. For example, the contact may be identified by the user's full name. The name may then also be associated with certain contact numbers, such as a telephone number, email address, instant message username, etc. For example, if the contact is named "Fred Mahoney", then the contact information for the contact may include a telephone number "415 555 5555", the email address "freddie@gmail.com", the instant messaging username "Freddie on AOL Messenger”, etc. In this way, communication manager module 202 may intelligently determine which communications for a user are sent to the contact (or received from the contact).
- mapping may be used.
- the mapping may map identifiers across different modalities to each other. For example, a username in an email modality is mapped to a username in an instant message modality.
- a communication record monitor 204 is configured to determine when a communication frequency pattern between the user and the contact has not occurred for the pre-determined amount of time.
- the communication frequency pattern may be any pattern of information.
- the communication frequency pattern may include a communication frequency, i.e., a pattern of a number of times of communication between the user and the contact.
- the communication frequency pattern may include discussion of a topic. For example, a user and contact may communication with each other but may not discuss a topic. The pattern may specify a frequency and also that a topic should be discussed.
- Communication record monitor 204 may monitor communication records stored in storage 32.
- the communication records may include a call history, stored messages (e.g., email messages, instant messages, voicemails, etc.), or other records. If the communication frequency pattern does not reach a predetermined threshold (e.g., the contact was not communicated with enough or a topic was not discussed during the pre-determined amount of time), an indication is sent to an alert generator 210.
- a predetermined threshold e.g., the contact was not communicated with enough or a topic was not discussed during the pre-determined amount of time
- Alert generator 210 is configured to generate an alert for the user indicating that the communication frequency pattern has not been achieved.
- the message may say "Reminder: Joe has not been contacted in a month”. This reminds the user that a communication frequency pattern was not achieved during a certain amount of time.
- a user may set preferences as to how the user should be alerted. For example, if the contact is a very important contact, then the communication method may be through an instant message or cellular phone call. However, if the contact is low priority, an email message may be sent to the user.
- FIG. 3 depicts various methods of storing communication records in storage 32 according to one embodiment of the present invention.
- communication manager module 202 is configured to store communication records in storage 32 in addition to records stored by unified messaging system 10.
- communication manager module 202 is described as being separate from unified messaging system 10, it will be understood that communication manager module 202 may be part of unified messaging system 10 and vice versa. Also, the functions performed by communication manager module 202 and unified messaging system 10 may be distributed between the entities.
- unified messaging system 10 may have access to communication records of an enterprise. Unified messaging system 10 then can access communication records for communications using enterprise modalities, such as an enterprise email address, an enterprise voicemail system, an enterprise instant message client, etc. However, non-enterprise communications may not be accessible by system 10. For example, unified messaging system 10 may not be able to access messages from a user's home email address or a voice messages from a user's cellular phone. Accordingly, embodiments of the present invention provide access to communication records from non- enterprise modalities.
- An agent 302 may be downloaded by a client 306 of the user.
- Client 306 maybe any of the end devices 16 shown in Fig. 1.
- the agent 302 may be downloaded on a user's personal computer 16-3, PDA 16-4, cellular phone 16-1, or any other end device 16.
- Agent 302 may be configured to record a user's communication history on client 306.
- the communication history may include communications to the user from contacts and from the user.
- Agent 302 may track the number of communications and communication times for the communications. Also, the last communication time between the user and the contact on instant messaging, or the last email communication with the contact using a public email system, such as Google's gmailTM, may be tracked if the user wants to be alerted when no communications occur during a time period.
- Communication manager module 202 then receives a download of the communication history from agent 302.
- the time of the communications in addition to possibly the content may be downloaded to communication manager module 202.
- client 306 may be a cellular telephone in which the call history is sent to communication manager module 202 through a secure data channel. If client 306 is a VOIP client, any VOIP communication records may be downloaded to communication manager module 202 by agent 302.
- outside sources 304 may be used to aggregate communication records between a user and a contact.
- outside sources 304 may be any entities that may aggregate communication records for a user.
- Many public messaging and telephony systems may provide information that includes a user's call history.
- a telephony company's web site may provide a user's call history, which can be downloaded or viewed.
- Communication manager module 202 may log on to the website and download the call history from an outside source 304. For example, communication manager module 202 may receive the user's credentials to his/her account. Communication manager module 202 may then periodically log in to the user's account using those credentials and download his/her call history using techniques, such as screen scrapping or any other techniques necessary. For example, communication manager module 202 may log on to a cellular telephone account and download the call history for a user's cellular telephone. Further, communication manager module 202 may log on to a non-enterprise email system, such as GmailTM, and download a status of emails in a user's account.
- GmailTM non-enterprise email system
- a user may manually enter information for a communication.
- a face-to-face meeting may not generate any automatic written records.
- a user may use a client 306 to manually enter that a face-to-face meeting with a contact has occurred. This may be used to track any kind of contact that communication manager module 202 cannot automatically retrieve.
- mapping may be used.
- the user may add various identifiers that map communication records downloaded by agent 302, outside sources 304, and manually entered records to a universal identifier for a contact in storage 32.
- Fig. 4 depicts a simplified flow chart 400 of a method for tracking communication frequency according to one embodiment of the present invention.
- a communication frequency pattern between a user and a contact is received.
- the pattern may generate an alert if no communication is received, which will be described in more detail below, or may be more complicated, such as generate an alert if a number of communications in multiple modalities do not reach a frequency during a time period, such as once a week for a month.
- the discussion of a topic may be included in the pattern, such as a topic should be discussed in a communication during the time period.
- step 404 the communication records across multiple modalities are monitored to determine if the communication frequency pattern is not achieved.
- step 406 if the pattern is achieved, then the process reiterates to step 404 to continue monitoring for possibly another time period.
- the analysis may include any methods to determine if the pattern reaches a predetermined threshold. For example, the number of communications between a contact and a user may be compared to a number. If the number is not reached, then the pattern is not achieved.
- step 408 if the pattern is not achieved, then the user is alerted that the communication frequency pattern has not been achieved.
- Fig. 5 depicts a simplified flow chart 500 of a method for tracking communication frequency according to one embodiment of the present invention.
- communication manager module 202 receives an indication of a contact to monitor. For example, the user may select a contact from a personal contact list.
- the indication may be a universal identifier for the contact.
- the indication may be an identifier in a communication modality.
- Communication manager module 202 may then determine other identifiers in other communication modalities either by using the universal identifier or other mappings.
- step 504 communication manager module 202 receives a time period and communication frequency pattern for monitoring.
- the time period may specify an elapsed time, a certain date, or any other time information.
- the communication frequency pattern may be a number of times of communication. For example, the pattern may specify that N communications should occur in the time period.
- step 506 communication manager module 202 determines if the time period has elapsed. If the time period has not elapsed, the process reiterates to continue the monitoring.
- step 508 communication manager module 202 determines if a communication record in a modality indicates the communication frequency pattern has been achieved during the time period. IfN communications were specified, the number of communications may include a communication from the user to the contact, from the contact to the user, or both. A user's preferences may indicate if one or other, or both should be used. If the communication frequency pattern has been achieved, then the process may end or may continue to determine if a topic was discussed in the communications (as described in fig. 6). This depends on a user's preferences.
- step 510 communication manager module 202 generates an alert.
- step 512 communication manager module 202 determines how to send the alert to the user. For example, different communication modalities may be used depending on the contact. Also, if multiple time periods have elapsed and the user still has not contacted the contact, even if alerts have previously been sent, then a more urgent communication alert may be sent using a communication modality.
- step 514 communication manager module 202 sends the alert to the user.
- Fig. 6 depicts a simplified flow chart 600 of a method for analyzing content of communication records to determine if an alert should be generated according to one embodiment of the present invention.
- communications records for a contact are parsed.
- the communication records may be parsed using a variety of techniques. For example, natural language semantic parsers and topic detection techniques may be used to parse the communications .
- the parsing may be used to determine if a topic has been discussed in the communication records.
- a topic may be any category of information.
- a topic may be a certain subject, such as a birthday.
- communication manager module 202 determines if the topic has been discussed in the pre-determined time period. Thus, even though communications between the user and the contact may have occurred, the topic may or may not have been discussed. If the topic has been discussed, then in step 607, an alert does not need to be generated.
- step 608 if the topic has not been discussed within the time period, however, then an alert is generated. This is'because even though a communication may have occurred, the communications did not occur on the desired topic.
- step 610 the alert is then sent as described in steps 410 and 412 of Fig. 4.
- the alert may indicate that a topic has not been discussed with the contact during a time period.
- Communication manager module 202 then may generate an alert if it does not detect a birthday greeting in any monitored communication between the user and his/her Mom by the specified date. Accordingly, communication records between user and his/her Mom may be parsed to determine if the term "Happy Birthday" (or any other information that indicates a birthday was discussed) is included in communications to the Mom. This may indicate that the topic of a birthday may have been discussed.
- Many communication modalities may be monitored to determine if user wished Happy Birthday to his/her Mom. For example, communication records for instant messaging, email, voicemail, etc. may be monitored. This provides additional intelligent processing. If the user has already spoken with his/her Mom but has not wished her Happy Birthday, then a reminder will be sent.
- a communication frequency pattern may use the topic in its pattern. Thus, user can intelligently determine when a contact should be contacted and also when a topic has not been discussed.
- Embodiments of the present invention provide many advantages. For example, intelligent reminders may be set for the maximum time elapsed between communications for users. Also, the communications are tracked across multiple modalities. Thus, communications across phone, email, instant messaging, etc. may be tracked together. [611 Further, communication history from both enterprise and public messaging systems may be tracked and stored. This allows a complete solution for determining whether a reminder should be sent.
- Communication manager module 202 may add to the revenue of an enterprise by ensuring regular communication with potential customers and business partners. Also, communication manager module 202 alleviates redundant communications to a contact when a user forgets the last time user communicated with the contact. Embodiments of the present invention enhance social networking and also enable users to not lose contact with others in an easy and intelligent way.
- contacting and variants thereof (e.g., connecting, connection, connect) as used in this disclosure are intended to be construed broadly.
- contacting user may be achieved by using any type of communication link, mode, signal type, protocol, format, etc., as desired. Any number and type of devices can be used to achieve the contacting of a user.
- routines of embodiments of the present invention can be implemented using C, C++, Java, assembly language, etc.
- Different programming techniques can be employed such as procedural or object oriented.
- the routines can execute on a single processing device or multiple processors. Although the steps, operations, or computations may be presented in a specific order, this order may be changed in different embodiments. In some embodiments, multiple steps shown as sequential in this specification can be performed at the same time.
- the sequence of operations described herein can be interrupted, suspended, or otherwise controlled by another process, such as an operating system, kernel, etc.
- the routines can operate in an operating system environment or as stand-alone routines occupying all, or a substantial part, of the system processing.
- a "computer-readable medium” for purposes of embodiments of the present invention may be any medium that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, system or device.
- the computer readable medium can be, by way of example only but not by limitation, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, system, device, propagation medium, or computer memory.
- Embodiments of the present invention can be implemented in the form of control logic in software or hardware or a combination of both.
- the control logic may be stored in an information storage medium, such as a computer-readable medium, as a plurality of instructions adapted to direct an information processing device to perform a set of steps disclosed in embodiments of the present invention.
- an information storage medium such as a computer-readable medium
- a person of ordinary skill in the art will appreciate other ways and/or methods to implement the present invention.
- a "processor” or “process” includes any human, hardware and/or software system, mechanism or component that processes data, signals or other information.
- a processor can include a system with a general-purpose central processing unit, multiple processing units, dedicated circuitry for achieving functionality, or other systems. Processing need not be limited to a geographic location, or have temporal limitations. For example, a processor can perform its functions in "real time,” “offline,” in a “batch mode,” etc. Portions of processing can be performed at different times and at different locations, by different (or the same) processing systems.
- Embodiments of the invention may be implemented by using a programmed general purpose digital computer, by using application specific integrated circuits, programmable logic devices, field programmable gate arrays, optical, chemical, biological, quantum or nanoengineered systems, components and mechanisms may be used.
- the functions of embodiments of the present invention can be achieved by any means as is known in the art.
- Distributed, or networked systems, components, and circuits can be used.
- Communication, or transfer, of data may be wired, wireless, or by any other means.
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Telephonic Communication Services (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
In on embodiment, techniques for providing alerts to a user when a communication frequency pattern between a user and a contact has not occurred during a pre-determined amount of time are provided. Communication records between the contact and the user can be analyzed to determine if the communication frequency pattern with the contact during the pre-determined amount of time does not meet pre-determined criteria. For example, the criteria may be generate an alert if communications do not occur in the last month, generate an alert if less than five communications occur in the last six months, or any other communication pattern. Also, the content of a communication may be analyzed to determine if a certain topic has been discussed. If a certain topic has not been discussed during the pre-determined amount of time, an alert may also be generated reminding the user that the topic has not been discussed.
Description
PATENT APPLICATION
TECHNIQUES FOR TRACKING COMMUNICATION FREQUENCY ACROSS COMMUNICATION MODALITIES
Background of the Invention
[01] Embodiments of the present invention relate in general to electronic communication systems and more specifically to techniques for generating an alert upon detection of a change in communication behavior between parties.
[021 It is as important as ever to maintain a social network of personal contacts. A vital part of human nature is to be able to rely on others for support, information, entertainment and enlightenment. Social networks play major roles in business and education and also contribute to one's well-being and happiness. The best networks are often built upon trust between pairs of people so that one's reliance on the other does not go unmet and leads to a common goal.
[031 However, it is probably more difficult than ever to maintain one's social network. This is due in part to the many types of electronic communication that are available today. For example, communication options include email, chat, instant messaging (IM), posting to bulletin boards, blogs, wikis, Internet Protocol (IP) based voice over IP (VOIP) phones, etc. Often, the many and varied communication options available make it very difficult to know how to reach another person. Also, the ease and speed with which messages are sent can require a person to respond to many messages each day in order to maintain a social network. Not only does this create a lot of work, it also can cause inadvertent errors or omissions such as failing to respond to another's inquiry, request or simple friendly salutation — the failure of which may cause insecurity, or a loss of faith or trust in the sender with regard to the silent recipient and thus can diminish a social network.
Brief Description of the Drawings
[04] Fig. 1 depicts a unified messaging system environment according to one embodiment of the present invention.
[05] Fig. 2 depicts a simplified system for tracking communication frequency according to one embodiment of the present invention.
[06] Fig. 3 depicts various methods of storing communication records in storage according to one embodiment of the present invention.
[07] Fig. 4 depicts a simplified flow chart of a method for tracking communication frequency according to one embodiment of the present invention.
[08] Fig. 5 depicts a simplified flow chart of a method for tracking when no communication frequency has been found across modalities according to one embodiment of the present invention.
[09] Fig. 6 depicts a simplified flow chart of a method for analyzing content of communication records to determine if an alert should be generated according to one embodiment of the present invention.
Detailed Description of Embodiments of the Invention
[10] Embodiments of the present invention provide alerts to a user when a pattern of communication between a user and a contact has not occurred during a pre-determined amount of time. Communication records between the contact and the user can be analyzed to determine if a communication frequency pattern with the contact during the predetermined amount of time does not meet pre-determined criteria. For example, the criteria may be: generate an alert if communications do not occur in the last month, generate an alert if less than five communications occur in the last six months, etc.
[111 Also, embodiments of the present invention may analyze the content of a communication to determine if a certain topic has been discussed. If a certain topic has not
> been discussed during the pre-determined amount of time, an alert may also be generated reminding the user that the topic has not been discussed.
[12] Communication records are analyzed for a plurality of communication modalities. A modality refers to a "mode" of communication. A modality can be distinguished by data format, type of signal, physical link or infrastructure, or other characteristic of a communication. For example, email, telephone, VOIP, instant messaging, chat, web posting, web page displaying, faxing, paging, etc., can each be considered a "modality." Also, a modality may be broken up into sub-modalities, such as instant messaging may be broken up into AOL AIM™, MSN Messenger™, and Yahoo !_ IM modalities.
[13] The communication records for communications across the modalities may be stored for a user and analyzed for frequency of communication changes. The communication records may be any information for a communication and may include a call history, stored messages, etc. In one embodiment, a unified messaging system may be used to store the communication records. Although using a unified messaging system is described, it will be understood that other systems may be used. For example, systems for aggregating messages across non-enterprise modalities may be used.
[14] Fig. 1 depicts a unified messaging environment 50 according to one embodiment of the present invention. Although the following unified messaging environment 50 is described, it will be recognized that variations of the environment will be appreciated by a person skilled in the art. As shown, a unified messaging system 10 and different communication modalities are provided.
[15] In one embodiment, a unified messaging system (UMS) 10 provides a single access point for messages for a user regardless of the message type and the message origination (e.g., communication modality). For example, unified messaging system 10 may deliver emails, voicemails, instant messages, short message service (SMS) messages, and facsimile messages to a single inbox, such as a user's email box. Thus, the user can check all messages from a single point. Using unified messaging, the user can listen to his/her email over the telephone, check voice messages through their email inbox, view a fax through his/her email inbox, etc.
[16] Various communication modalities are shown in environment 50. The various communication modalities may store communication records on various storage media. A communication record may be any record of a communication. The communication record may be an actual message that is sent or received. A modality refers to a "mode" of communication. A modality can be distinguished by data format, type of signal, physical link or infrastructure, or other characteristic of a communication. For example, email, telephone, VOIP, instant messaging, chat, web posting, web page displaying, faxing, paging, etc., can each be considered a "modality." Also, a modality may be broken up into sub-modalities, such as instant messaging may be broken up into AOL AIM™, MSN Messenger™, and Yahoo! IM modalities.
[17] The various communication modalities may store messages on various storage media. Also, it may be a history of communications, such as a call history from an end device 16. The communication record may include the content of the message and also other identifying information, such as the sender, recipient, subject, header information, etc. In some cases, text-to-speech and speech-to-text converters may be used. For example, an email message may be converted into voice using a speech-to-text converter. Also, the email message may be stored and then the conversion is performed in real-time when the voice representation of the email message is needed.
[18] Various end points 16 in environment 50 may be used to send messages to a user. End points 16 may include any devices that can communicate in a modality, such as a cell phone 16-1, a POTS phone 16-2, a computer 16-3, a personal digital assistant 16-4, an IM client 16-5, a router, etc.
[19] As shown, a cell phone 16-1 may be used to send voice messages through a cellular network 14. The voice messages may be managed by voicemail server 12.
[20] Also, a POTS phone 16-2 may be used to leave or send voice messages through a PBX system 18. Another modality may be a facsimile modality. As shown, a FAX machine 22 may send a FAX to the user stored in FAX storage 23.
[21] Other communication modalities may use the Internet to communicate. Although the Internet is described, any packet-based network may be used, such as any local area network, wide area network, wireless network, etc. Email, voicemail, web pages, instant messages, etc. may be sent through Internet 30. As shown, instant messages may be stored
on an IM server 24, emails may be stored on an email server 26, and web pages may be stored on a web server 28. End devices of a computer 16-3, PDA 16-4, IM client 16-5, or any other end device may be used to send messages to the user or used by the user to send messages to contacts. IP phone 16-6 is used to make voice over IP (VOIP) calls. A call manager 29 is used to manage the calls and any messages (e.g., voice messages) for the IP phone modality.
(22] Although the above modalities are described, it will be understood that other communication modalities may be appreciated by persons skilled in the art. For example, unified messaging system 10 may access messages from enterprise modalities. An enterprise modality may be any modality controlled by an enterprise (e.g., a business or company). Examples include an enterprise's email, voicemail, etc. Although enterprise modalities are described, it will be understood that unified messaging system 10 may access non-enterprise messages. Also, techniques described below allow non-enterprise messages to be accessed.
[23] Unified messaging system 10 is configured to aggregate communication records from various media into storage 32. Although it is described that communication records are stored in storage 32, it will be recognized that communication records do not have to be physically stored in a single storage device. For example, voice communication records may be stored on an email server. Also email communication records, instant messages, etc. may be stored on a voicemail server, etc. Thus, messages may be stored in multiple storage areas (i.e., distributed). However, for discussion purposes, it is assumed that communication records from various modalities will be discussed as being stored in storage 32. For example, communication records stored on EM server 24, email server 26, voicemail server 12, fax storage 23, and web server 28 may be logically aggregated by unified messaging system 10, but will be described as being stored in storage 32.
[24] A client 34 may be used to view the communication records aggregated by unified messaging system 10. For example, a personal computer may be used to view email messages, voice messages, and faxes in an email inbox.
[25] Embodiments of the present invention track communications between a user and the user's contacts. For example, communication records are stored for messages sent by a user or sent to the user using any of the communication modalities described above with
respect to system 50. Also, embodiments of the present invention are not restricted to using the unified messaging system 10 for aggregating communication records. Other methods, such as using manual entry or downloading of communication history from non-enterprise clients of the user, may be used to aggregate communication records.
[26] Fig. 2 depicts a simplified system 200 for tracking communication frequency according to one embodiment of the present invention. As shown, a communication manager module (CMM) 202 is provided for managing the frequency of a user's contact with contacts. In one embodiment, communication manager module 202 is part of unified messaging system 10. However, it will be recognized that communication manager module 202 may be part of any communication system that has access to a user's communication records.
[27] Communication manager module 202 includes an interface module that provides an interface to allow a user to set which alerts are desired. A graphical-user interface and a telephone-user interface may be provided such that users can set reminders from a variety of end devices 16. For example, a user may select contacts from a contact list in which the user would like to be notified if the user's communication frequency pattern has not achieved a predetermined communication frequency pattern for a certain amount of time.
[28] The communication frequency pattern may be checked across multiple modalities. Also, it will be recognized that a communication frequency pattern may be applied to specific modalities. For example, if the user has not sent an email to a contact after a certain amount of time but has sent an instant message, an alert may be generated that says the user has not sent an email but has sent an instant message.
[29] A contact may be any user. Also, a contact may be identified differently across different communication modalities. Because of the different identifiers, the contact may be identified using a universal identifier. For example, the contact may be identified by the user's full name. The name may then also be associated with certain contact numbers, such as a telephone number, email address, instant message username, etc. For example, if the contact is named "Fred Mahoney", then the contact information for the contact may include a telephone number "415 555 5555", the email address "freddie@gmail.com", the instant messaging username "Freddie on AOL Messenger", etc. In this way, communication manager module 202 may intelligently determine which communications for a user are sent
to the contact (or received from the contact).
[30] Also, a mapping may be used. The mapping may map identifiers across different modalities to each other. For example, a username in an email modality is mapped to a username in an instant message modality.
[31] Once the alerts are set, a communication record monitor 204 is configured to determine when a communication frequency pattern between the user and the contact has not occurred for the pre-determined amount of time. The communication frequency pattern may be any pattern of information. For example, the communication frequency pattern may include a communication frequency, i.e., a pattern of a number of times of communication between the user and the contact. Also, the communication frequency pattern may include discussion of a topic. For example, a user and contact may communication with each other but may not discuss a topic. The pattern may specify a frequency and also that a topic should be discussed.
[32] Communication record monitor 204 may monitor communication records stored in storage 32. The communication records may include a call history, stored messages (e.g., email messages, instant messages, voicemails, etc.), or other records. If the communication frequency pattern does not reach a predetermined threshold (e.g., the contact was not communicated with enough or a topic was not discussed during the pre-determined amount of time), an indication is sent to an alert generator 210.
[33] Alert generator 210 is configured to generate an alert for the user indicating that the communication frequency pattern has not been achieved. For example, the message may say "Reminder: Joe has not been contacted in a month". This reminds the user that a communication frequency pattern was not achieved during a certain amount of time.
[34] hi one embodiment, a user may set preferences as to how the user should be alerted. For example, if the contact is a very important contact, then the communication method may be through an instant message or cellular phone call. However, if the contact is low priority, an email message may be sent to the user.
[35] As discussed above, different methods for storing communication records in storage 32 may be appreciated. Fig. 3 depicts various methods of storing communication records in storage 32 according to one embodiment of the present invention. As shown,
communication manager module 202 is configured to store communication records in storage 32 in addition to records stored by unified messaging system 10. Although communication manager module 202 is described as being separate from unified messaging system 10, it will be understood that communication manager module 202 may be part of unified messaging system 10 and vice versa. Also, the functions performed by communication manager module 202 and unified messaging system 10 may be distributed between the entities.
[36] In one embodiment, the following techniques may be used to store non-enterprise communication records. For example, unified messaging system 10 may have access to communication records of an enterprise. Unified messaging system 10 then can access communication records for communications using enterprise modalities, such as an enterprise email address, an enterprise voicemail system, an enterprise instant message client, etc. However, non-enterprise communications may not be accessible by system 10. For example, unified messaging system 10 may not be able to access messages from a user's home email address or a voice messages from a user's cellular phone. Accordingly, embodiments of the present invention provide access to communication records from non- enterprise modalities.
[37] An agent 302 may be downloaded by a client 306 of the user. Client 306 maybe any of the end devices 16 shown in Fig. 1. For example, the agent 302 may be downloaded on a user's personal computer 16-3, PDA 16-4, cellular phone 16-1, or any other end device 16.
[38] Agent 302 may be configured to record a user's communication history on client 306. The communication history may include communications to the user from contacts and from the user. Agent 302 may track the number of communications and communication times for the communications. Also, the last communication time between the user and the contact on instant messaging, or the last email communication with the contact using a public email system, such as Google's gmail™, may be tracked if the user wants to be alerted when no communications occur during a time period.
[39] Communication manager module 202 then receives a download of the communication history from agent 302. The time of the communications in addition to possibly the content may be downloaded to communication manager module 202. For
example, client 306 may be a cellular telephone in which the call history is sent to communication manager module 202 through a secure data channel. If client 306 is a VOIP client, any VOIP communication records may be downloaded to communication manager module 202 by agent 302.
[40] Also, outside sources 304 may be used to aggregate communication records between a user and a contact. For example, outside sources 304 may be any entities that may aggregate communication records for a user. Many public messaging and telephony systems may provide information that includes a user's call history. For example, a telephony company's web site may provide a user's call history, which can be downloaded or viewed.
[41J Communication manager module 202 may log on to the website and download the call history from an outside source 304. For example, communication manager module 202 may receive the user's credentials to his/her account. Communication manager module 202 may then periodically log in to the user's account using those credentials and download his/her call history using techniques, such as screen scrapping or any other techniques necessary. For example, communication manager module 202 may log on to a cellular telephone account and download the call history for a user's cellular telephone. Further, communication manager module 202 may log on to a non-enterprise email system, such as Gmail™, and download a status of emails in a user's account.
[42] Further, a user may manually enter information for a communication. For example, a face-to-face meeting may not generate any automatic written records. Thus, a user may use a client 306 to manually enter that a face-to-face meeting with a contact has occurred. This may be used to track any kind of contact that communication manager module 202 cannot automatically retrieve.
[43] As discussed above, to ensure mapping between communication records for a contact submitted by agent 302 and various other systems, such as the unified messaging system 10, a mapping may be used. For example, for a contact, the user may add various identifiers that map communication records downloaded by agent 302, outside sources 304, and manually entered records to a universal identifier for a contact in storage 32.
[44] Fig. 4 depicts a simplified flow chart 400 of a method for tracking communication frequency according to one embodiment of the present invention. In step 402, a
communication frequency pattern between a user and a contact is received. The pattern may generate an alert if no communication is received, which will be described in more detail below, or may be more complicated, such as generate an alert if a number of communications in multiple modalities do not reach a frequency during a time period, such as once a week for a month. Also, the discussion of a topic may be included in the pattern, such as a topic should be discussed in a communication during the time period.
[451 In step 404, the communication records across multiple modalities are monitored to determine if the communication frequency pattern is not achieved. In step 406, if the pattern is achieved, then the process reiterates to step 404 to continue monitoring for possibly another time period. The analysis may include any methods to determine if the pattern reaches a predetermined threshold. For example, the number of communications between a contact and a user may be compared to a number. If the number is not reached, then the pattern is not achieved.
146] In step 408, if the pattern is not achieved, then the user is alerted that the communication frequency pattern has not been achieved.
[47] An exemplary embodiment of the method depicted in Fig. 4 is shown in Figs. 5 and 6. Fig. 5 depicts a simplified flow chart 500 of a method for tracking communication frequency according to one embodiment of the present invention. In step 502, communication manager module 202 receives an indication of a contact to monitor. For example, the user may select a contact from a personal contact list. The indication may be a universal identifier for the contact. Also, the indication may be an identifier in a communication modality. Communication manager module 202 may then determine other identifiers in other communication modalities either by using the universal identifier or other mappings.
[48] In step 504, communication manager module 202 receives a time period and communication frequency pattern for monitoring. The time period may specify an elapsed time, a certain date, or any other time information. The communication frequency pattern may be a number of times of communication. For example, the pattern may specify that N communications should occur in the time period.
[49] In step 506, communication manager module 202 determines if the time period has elapsed. If the time period has not elapsed, the process reiterates to continue the monitoring.
[50] If the time period has elapsed, in step 508, communication manager module 202 determines if a communication record in a modality indicates the communication frequency pattern has been achieved during the time period. IfN communications were specified, the number of communications may include a communication from the user to the contact, from the contact to the user, or both. A user's preferences may indicate if one or other, or both should be used. If the communication frequency pattern has been achieved, then the process may end or may continue to determine if a topic was discussed in the communications (as described in fig. 6). This depends on a user's preferences.
[51] If the communication frequency pattern has not been achieved, then, in step 510, communication manager module 202 generates an alert. In step 512, communication manager module 202 determines how to send the alert to the user. For example, different communication modalities may be used depending on the contact. Also, if multiple time periods have elapsed and the user still has not contacted the contact, even if alerts have previously been sent, then a more urgent communication alert may be sent using a communication modality.
[52] In step 514, communication manager module 202 sends the alert to the user.
[53] Even if the communication frequency pattern has been achieved, an alert may still be generated by communication manager module 202 if a topic has not been discussed. Fig. 6 depicts a simplified flow chart 600 of a method for analyzing content of communication records to determine if an alert should be generated according to one embodiment of the present invention. In step 602, communications records for a contact are parsed. The communication records may be parsed using a variety of techniques. For example, natural language semantic parsers and topic detection techniques may be used to parse the communications .
[54] In one embodiment, in step 604, the parsing may be used to determine if a topic has been discussed in the communication records. A topic may be any category of information. For example, a topic may be a certain subject, such as a birthday.
[55] In step 606, communication manager module 202 determines if the topic has been discussed in the pre-determined time period. Thus, even though communications between the user and the contact may have occurred, the topic may or may not have been discussed. If the topic has been discussed, then in step 607, an alert does not need to be generated.
[56] In step 608, if the topic has not been discussed within the time period, however, then an alert is generated. This is'because even though a communication may have occurred, the communications did not occur on the desired topic.
[57] In step 610, the alert is then sent as described in steps 410 and 412 of Fig. 4. The alert may indicate that a topic has not been discussed with the contact during a time period.
158] One example of how the process of Fig. 6 may be used is if a user wants to set a reminder if the user does not wish Happy Birthday to his/her Mom on October 10th by 8:00 p.m., an alert should be generated. Communication manager module 202 then may generate an alert if it does not detect a birthday greeting in any monitored communication between the user and his/her Mom by the specified date. Accordingly, communication records between user and his/her Mom may be parsed to determine if the term "Happy Birthday" (or any other information that indicates a birthday was discussed) is included in communications to the Mom. This may indicate that the topic of a birthday may have been discussed.
[59] Many communication modalities may be monitored to determine if user wished Happy Birthday to his/her Mom. For example, communication records for instant messaging, email, voicemail, etc. may be monitored. This provides additional intelligent processing. If the user has already spoken with his/her Mom but has not wished her Happy Birthday, then a reminder will be sent. In one embodiment, a communication frequency pattern may use the topic in its pattern. Thus, user can intelligently determine when a contact should be contacted and also when a topic has not been discussed.
[60] Embodiments of the present invention provide many advantages. For example, intelligent reminders may be set for the maximum time elapsed between communications for users. Also, the communications are tracked across multiple modalities. Thus, communications across phone, email, instant messaging, etc. may be tracked together.
[611 Further, communication history from both enterprise and public messaging systems may be tracked and stored. This allows a complete solution for determining whether a reminder should be sent.
[62] Communication manager module 202 may add to the revenue of an enterprise by ensuring regular communication with potential customers and business partners. Also, communication manager module 202 alleviates redundant communications to a contact when a user forgets the last time user communicated with the contact. Embodiments of the present invention enhance social networking and also enable users to not lose contact with others in an easy and intelligent way.
[63] The term "contacting" and variants thereof (e.g., connecting, connection, connect) as used in this disclosure are intended to be construed broadly. For example, contacting user may be achieved by using any type of communication link, mode, signal type, protocol, format, etc., as desired. Any number and type of devices can be used to achieve the contacting of a user.
[641 Although the invention has been described with respect to specific embodiments thereof, these embodiments are merely illustrative, and not restrictive of the invention.
[65] Any suitable programming language can be used to implement the routines of embodiments of the present invention including C, C++, Java, assembly language, etc. Different programming techniques can be employed such as procedural or object oriented. The routines can execute on a single processing device or multiple processors. Although the steps, operations, or computations may be presented in a specific order, this order may be changed in different embodiments. In some embodiments, multiple steps shown as sequential in this specification can be performed at the same time. The sequence of operations described herein can be interrupted, suspended, or otherwise controlled by another process, such as an operating system, kernel, etc. The routines can operate in an operating system environment or as stand-alone routines occupying all, or a substantial part, of the system processing. Functions can be performed in hardware, software, or a combination of both. Unless otherwise stated, functions may also be performed manually, in whole or in part.
[66] In the description herein, numerous specific details are provided, such as examples of components and/or methods, to provide a thorough understanding of embodiments of the present invention. One skilled in the relevant art will recognize, however, that an embodiment of the invention can be practiced without one or more of the specific details, or with other apparatus, systems, assemblies, methods, components, materials, parts, and/or the like. In other instances, well-known structures, materials, or operations are not specifically shown or described in detail to avoid obscuring aspects of embodiments of the present invention.
[67] A "computer-readable medium" for purposes of embodiments of the present invention may be any medium that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, system or device. The computer readable medium can be, by way of example only but not by limitation, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, system, device, propagation medium, or computer memory.
[68] Embodiments of the present invention can be implemented in the form of control logic in software or hardware or a combination of both. The control logic may be stored in an information storage medium, such as a computer-readable medium, as a plurality of instructions adapted to direct an information processing device to perform a set of steps disclosed in embodiments of the present invention. Based on the disclosure and teachings provided herein, a person of ordinary skill in the art will appreciate other ways and/or methods to implement the present invention.
[69] A "processor" or "process" includes any human, hardware and/or software system, mechanism or component that processes data, signals or other information. A processor can include a system with a general-purpose central processing unit, multiple processing units, dedicated circuitry for achieving functionality, or other systems. Processing need not be limited to a geographic location, or have temporal limitations. For example, a processor can perform its functions in "real time," "offline," in a "batch mode," etc. Portions of processing can be performed at different times and at different locations, by different (or the same) processing systems.
[70] Reference throughout this specification to "one embodiment", "an embodiment", or "a specific embodiment" means that a particular feature, structure, or characteristic
described in connection with the embodiment is included in at least one embodiment of the present invention and not necessarily in all embodiments. Thus, respective appearances of the phrases "in one embodiment", "in an embodiment", or "in a specific embodiment" in various places throughout this specification are not necessarily referring to the same embodiment. Furthermore, the particular features, structures, or characteristics of any specific embodiment of the present invention may be combined in any suitable manner with one or more other embodiments. It is to be understood that other variations and modifications of the embodiments of the present invention described and illustrated herein are possible in light of the teachings herein and are to be considered as part of the spirit and scope of the present invention.
[71] Embodiments of the invention may be implemented by using a programmed general purpose digital computer, by using application specific integrated circuits, programmable logic devices, field programmable gate arrays, optical, chemical, biological, quantum or nanoengineered systems, components and mechanisms may be used. In general, the functions of embodiments of the present invention can be achieved by any means as is known in the art. Distributed, or networked systems, components, and circuits can be used. Communication, or transfer, of data may be wired, wireless, or by any other means.
[72] It will also be appreciated that one or more of the elements depicted in the drawings/figures can also be implemented in a more separated or integrated manner, or even removed or rendered as inoperable in certain cases, as is useful in accordance with a particular application. It is also within the spirit and scope of the present invention to implement a program or code that can be stored in a machine-readable medium to permit a computer to perform any of the methods described above.
[73] Additionally, any signal arrows in the drawings/Figures should be considered only as exemplary, and not limiting, unless otherwise specifically noted. Furthermore, the term "or" as used herein is generally intended to mean "and/or" unless otherwise indicated. Combinations of components or steps will also be considered as being noted, where terminology is foreseen as rendering the ability to separate or combine is unclear.
[74] As used in the description herein and throughout the claims that follow, "a", "an", and "the" includes plural references unless the context clearly dictates otherwise. Also, as
used in the description herein and throughout the claims that follow, the meaning of "in" includes "in" and "on" unless the context clearly dictates otherwise.
[75] The foregoing description of illustrated embodiments of the present invention, including what is described in the Abstract, is not intended to be exhaustive or to limit the invention to the precise forms disclosed herein. While specific embodiments of, and examples for, the invention are described herein for illustrative purposes only, various equivalent modifications are possible within the spirit and scope of the present invention, as those skilled in the relevant art will recognize and appreciate. As indicated, these modifications may be made to the present invention in light of the foregoing description of illustrated embodiments of the present invention and are to be included within the spirit and scope of the present invention.
[76] Thus, while the present invention has been described herein with reference to particular embodiments thereof, a latitude of modification, various changes and substitutions are intended in the foregoing disclosures, and it will be appreciated that in some instances some features of embodiments of the invention will be employed without a corresponding use of other features without departing from the scope and spirit of the invention as set forth. Therefore, many modifications may be made to adapt a particular situation or material to the essential scope and spirit of the present invention. It is intended that the invention not be limited to the particular terms used in following claims and/or to the particular embodiment disclosed as the best mode contemplated for carrying out this invention, but that the invention will include any and all embodiments and equivalents falling within the scope of the appended claims.
Claims
1. A method for generating an alert based upon communications across multiple communication types, the method comprising: establishing a predetermined communication frequency pattern between first and second users; measuring a communication frequency pattern by monitoring communications across a plurality of communication modalities; and alerting at least one of the first and second users when the measured communication frequency pattern between the first and second users does not achieve a predetermined relationship with respect to the predetermined communication frequency pattern.
2. The method of claim 1, wherein establishing the predetermined communication frequency pattern includes expected transmissions over time.
3. The method of claim 2, further comprising: determining when a predetermined interval of time passes, wherein a count of transmissions occurring in the predetermined interval is less than a value derived from the expected transmissions over time.
4. The method of claim 3, wherein the count of transmissions over the predetermined interval is zero.
5. The method of claim 1, wherein establishing the predetermined communication frequency pattern includes discussion of a topic over time.
6. The method of claim 5, further comprising: determining when a predetermined interval of time passes, wherein a count of discussions of the topic occurring in the predetermined interval is less than a value derived from the discussions of the topic over time.
7. The method of claim 1, wherein the alert includes information about a transmission between the first and second users.
8. The method of claim 1, further comprising: accepting a signal from a user input device; and using, at least in part, the signal from the user input device to set the communication frequency pattern.
9. The method of claim 1, wherein monitoring communications comprises receiving communication information for communications as a download from the client.
10. The method of claim 1 , wherein monitoring communications comprises monitoring communication information received from a manual input from the user.
11. The method of claim 1 , wherein monitoring communications comprises accessing communication information from a public communication system for the user.
12. A method for tracking communications across multiple modalities, the method comprising: accessing communication records for a contact of a user, the communication records being generated from a plurality of communication modalities; determining from the communication records if a communication between the contact and the user has occurred for a predetermined amount of time; if a communication between the user and the contact has not occurred during the predetermined amount of time, performing the steps of: generating an alert for the user, and sending the alert to the user such that the user is notified that a communication with the contact has not occurred for the amount of time.
13. The method of claim 12, wherein if a communication between the contact and the user has occurred, performing the steps of: analyzing content of the communication; and determining if an alert should be generated based on the analysis of the content.
14. The method of claim 13, wherein the alert is generated when it is determined that a topic has not been discussed in the content.
15. The method of claim 12, wherein the plurality of communication modalities comprises at least two modalities selected from the set of an email modality, a facsimile modality, a voicemail modality, a web modality, and an instant message modality.
16. The method of claim 12, further comprising: storing the communication records in one or more storage devices.
17. The method of claim 16, wherein the communication records are stored by a unified messaging system.
18. The method of claim 16, wherein the communication records are received as a download from the client.
19. The method of claim 12, wherein the communications records are received from a manual input from the user.
20. The method of claim 12, wherein accessing the communication records comprises accessing communication records from a public communication system for the user.
21. The method of claim 12, wherein the contact comprises an identifier for a second user.
22. The method of claim 21 , wherein the identifier is a universal identifier that is mapped to a plurality of identifiers in the plurality of communication modalities.
23. A device configured to generate an alert based upon communications across multiple communication types, the device comprising: logic configured to establish a predetermined communication frequency pattern between first and second users; logic configured to measure a communication frequency pattern by monitoring communications across a plurality of communication modalities; and logic configured to alert at least one of the first and second users when the measured communication frequency pattern between the first and second users does not achieve a predetermined relationship with respect to the predetermined communication frequency pattern.
24. The device of claim 23, wherein the predetermined communication frequency pattern includes expected transmissions over time.
25. The device of claim 23, further comprising: logic configured to determine when a predetermined interval of time passes, wherein a count of transmissions occurring in the predetermined interval is less than a value derived from the expected transmissions over time.
26. The device of claim 25, wherein the count of transmissions over the predetermined interval is zero.
27. The device of claim 23, wherein the predetermined communication frequency pattern includes discussion of a topic over time.
28. The device of claim 27, further comprising: logic configured to determining when a predetermined interval of time passes, wherein a count of discussions of the topic occurring in the predetermined interval is less than a value derived from the discussions of the topic over time.
29. The device of claim 23, wherein the alert includes information about a transmission between the first and second users.
30. The device of claim 23, further comprising: logic configured to accept a signal from a user input device; and logic configured to use, at least in part, the signal from the user input device to set the predetermined communication frequency pattern.
31. The device of claim 23 , wherein monitoring communications comprises receiving the communication information for communications as a download from the client
32. The device of claim 23, wherein monitoring communications comprises monitoring communication information received from a manual input from the user.
33. The device of claim 23, wherein monitoring communications comprises accessing communication information from a public communication system for the user.
34. A device for tracking communications across multiple modalities, the device comprising: logic configured to access communication records for a contact of a user, the communication records being generated from a plurality of communication modalities; logic configured to determine from the communication records if a communication between the contact and the user has occurred for a predetermined amount of time; if a communication between the user and the contact has not occurred during the predetermined amount of time, the device comprising: logic configured to generate an alert for the user; and logic configured to send the alert to the user such that the user is notified that a communication with the contact has not occurred for the amount of time.
35. The device of claim 34, wherein if a communication between the contact and the user has occurred, the device further comprising: logic configured to analyze content of the communication; and logic configured to determine if an alert should be generated based on the analysis of the content.
36. The device of claim 35, wherein the alert is generated when it is determined that a topic has not been discussed in the content.
37. The device of claim 34, wherein the plurality of communication modalities comprises at least two modalities selected from the set of an email modality, a facsimile modality, a voicemail modality, a web modality, and an instant message modality.
38. The device of claim 34, further comprising: logic configured to store the communication records in one or more storage devices.
39. The device of claim 38, wherein the communication records are stored by a unified messaging system.
40. The device of claim 34, wherein the communication records are received as a download from the client.
41. The device of claim 34, wherein the communications records are received from a manual input from the user.
42. The device of claim 34, wherein the logic configured to access the communication records comprises logic configured to access the communication records from a public communication system for the user.
43. The device of claim 34, wherein the contact comprises an identifier for a second user.
44. The device of claim 34, wherein the identifier is a universal identifier that is mapped to a plurality of identifiers in the plurality of communication modalities.
45. A system configured to generate an alert based upon communications across multiple communication types, the system comprising: a first set of end devices associated with a first user, wherein end devices in the first set of end devices are configured to communicate in a plurality of communication modalities; and a communication manager module comprising: logic configured to establish a predetermined communication frequency pattern between the first user and a second user; logic configured to measure a communication frequency pattern by monitoring communications for two or more end devices in the first set of end devices across a plurality of communication modalities; and logic configured to alert the first user and/or the second user when the measured communication frequency pattern between the first and second users does not achieve a predetermined relationship with respect to the predetermined communication frequency pattern.
46. The system of claim 45, further comprising: a second set of end devices associated with the second user, wherein end devices in the second set of end devices are configured to communicate in a plurality of communication modalities.
47. The system of claim 46, wherein a first end device in the first set of end devices is configured to communication in a communication modality in the plurality of communication modalities with a second end device in the second set of end devices.
48. The system of claim 45, wherein the first set of end devices comprise an email device, cellular telephone, facsimile device, instant message device, or POTS telephone.
49. A system configured to track communications across multiple modalities, the system comprising: a first set of end devices associated with a first user, wherein end devices in the first set of end devices are configured to communicate in a plurality of communication modalities; and a communication manager module comprising: logic configured to access communication records for a contact of a user, the communication records being generated from end devices in the first set of end devices in plurality of communication modalities; logic configured to determine from the communication records if a communication between the contact and the user has occurred for a predetermined amount of time; if a communication between the user and the contact has not occurred during the predetermined amount of time, the communication manager module further comprising: logic configured to generate an alert for the user; and logic configured to send the alert to the user such that the user is notified that a communication with the contact has not occurred for the amount of time.
50. The system of claim 49, further comprising: a second set of end devices associated with the second user, wherein end devices in the second set of end devices are configured to communicate in a plurality of communication modalities.
51. The system of claim 50, wherein a first end device in the first set of end devices is configured to communication in a communication modality in the plurality of communication modalities with a second end device in the second set of end devices.
52. The system of claim 49, wherein the first set of end devices comprise an email device, cellular telephone, facsimile device, instant message device, or POTS telephone.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP07755041.6A EP2005722B1 (en) | 2006-04-20 | 2007-04-04 | Techniques for tracking communication frequency across communication modalities |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/409,328 | 2006-04-20 | ||
US11/409,328 US7764951B2 (en) | 2006-04-20 | 2006-04-20 | Techniques for tracking communication frequency across communication modalities |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2007123821A2 true WO2007123821A2 (en) | 2007-11-01 |
WO2007123821A3 WO2007123821A3 (en) | 2008-11-06 |
Family
ID=38620125
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2007/008631 WO2007123821A2 (en) | 2006-04-20 | 2007-04-04 | Techniques for tracking communication frequency across communication modalities |
Country Status (3)
Country | Link |
---|---|
US (1) | US7764951B2 (en) |
EP (1) | EP2005722B1 (en) |
WO (1) | WO2007123821A2 (en) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8078677B2 (en) * | 2008-03-11 | 2011-12-13 | Voxp Pte. Ltd. | Method for making recommendations in a social networking system based on personal communication information and a social networking system incorporating same |
US8775543B2 (en) * | 2008-05-13 | 2014-07-08 | Nokia Corporation | Methods, apparatuses, and computer program products for analyzing communication relationships |
US20100235886A1 (en) * | 2009-03-16 | 2010-09-16 | International Business Machines Corporation | Automated relationship management for electronic social networks |
US20100250583A1 (en) * | 2009-03-25 | 2010-09-30 | Avaya Inc. | Social Network Query and Response System to Locate Subject Matter Expertise |
US20110029339A1 (en) * | 2009-07-31 | 2011-02-03 | Ciright Systems, Inc | Enterprise and Sales Management Platform |
US20110154208A1 (en) * | 2009-12-18 | 2011-06-23 | Nokia Corporation | Method and apparatus for utilizing communication history |
US8682971B2 (en) | 2010-06-22 | 2014-03-25 | International Business Machines Corporation | Relationship management in a social network service |
US8600901B2 (en) * | 2010-07-27 | 2013-12-03 | Yahoo! Inc. | Providing social likeness within a messaging context |
US20120265808A1 (en) * | 2011-04-15 | 2012-10-18 | Avaya Inc. | Contextual collaboration |
US10249006B2 (en) * | 2012-11-09 | 2019-04-02 | Microsoft Technology Licensing, Llc | Providing social context to calendar events |
US10162505B2 (en) * | 2014-04-17 | 2018-12-25 | Blackberry Limited | System and method for enabling customized notifications on an electronic device |
CN108040183B (en) * | 2018-01-30 | 2020-04-07 | 维沃移动通信有限公司 | Information reminding method and mobile terminal |
US11720919B2 (en) * | 2020-05-26 | 2023-08-08 | Twilio Inc. | Message-transmittal strategy optimization |
US11483270B2 (en) * | 2020-11-24 | 2022-10-25 | Oracle International Corporation | Email filtering system for email, delivery systems |
US11381537B1 (en) | 2021-06-11 | 2022-07-05 | Oracle International Corporation | Message transfer agent architecture for email delivery systems |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003048960A1 (en) | 2001-11-30 | 2003-06-12 | A New Voice, Inc. | Method and system for contextual prioritization of unified messages |
US20040073643A1 (en) | 2002-10-10 | 2004-04-15 | Hayes David J. | Communication system for providing dynamic management of contacts and method therefor |
US20050254481A1 (en) | 2004-05-11 | 2005-11-17 | Sbc Knowledge Ventures, L.P. | Knowledge management, capture and modeling tool for multi-modal communications |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4625081A (en) * | 1982-11-30 | 1986-11-25 | Lotito Lawrence A | Automated telephone voice service system |
US4597077A (en) * | 1983-05-04 | 1986-06-24 | Cxc Corporation | Integrated voice/data/control switching system |
US6141339A (en) | 1997-04-04 | 2000-10-31 | Sprint Communications Company, L.P. | Telecommunications system |
US6198808B1 (en) * | 1997-12-31 | 2001-03-06 | Weblink Wireless, Inc. | Controller for use with communications systems for converting a voice message to a text message |
US7020618B1 (en) * | 1999-10-25 | 2006-03-28 | Ward Richard E | Method and system for customer service process management |
US6640239B1 (en) * | 1999-11-10 | 2003-10-28 | Garuda Network Corporation | Apparatus and method for intelligent scalable switching network |
US6678684B1 (en) * | 1999-12-30 | 2004-01-13 | Makio Koga | Worldwide early warning network and method of use |
US6724887B1 (en) * | 2000-01-24 | 2004-04-20 | Verint Systems, Inc. | Method and system for analyzing customer communications with a contact center |
US6757362B1 (en) | 2000-03-06 | 2004-06-29 | Avaya Technology Corp. | Personal virtual assistant |
US6728728B2 (en) * | 2000-07-24 | 2004-04-27 | Israel Spiegler | Unified binary model and methodology for knowledge representation and for data and information mining |
US6957199B1 (en) * | 2000-08-30 | 2005-10-18 | Douglas Fisher | Method, system and service for conducting authenticated business transactions |
US6871214B2 (en) * | 2000-10-30 | 2005-03-22 | Nortel Networks Limited | Generating and providing alert messages in a communications network |
AU2002252405A1 (en) * | 2001-03-19 | 2002-10-03 | Accenture Llp | Mobile valet |
US6804330B1 (en) * | 2002-01-04 | 2004-10-12 | Siebel Systems, Inc. | Method and system for accessing CRM data via voice |
US6941184B2 (en) * | 2002-01-11 | 2005-09-06 | Sap Aktiengesellschaft | Exchange of article-based information between multiple enterprises |
US7020494B2 (en) * | 2002-02-07 | 2006-03-28 | Sap Aktiengesellschaft | Integrating contextual information into mobile enterprise applications |
US20030195937A1 (en) * | 2002-04-16 | 2003-10-16 | Kontact Software Inc. | Intelligent message screening |
DE10223070B4 (en) * | 2002-05-24 | 2015-10-08 | Andreas Stihl Ag & Co. | Two-stroke engine |
US6757352B1 (en) * | 2002-12-25 | 2004-06-29 | Faraday Technology Corp. | Real time clock with a power saving counter for embedded systems |
US20040235520A1 (en) * | 2003-05-20 | 2004-11-25 | Cadiz Jonathan Jay | Enhanced telephony computer user interface allowing user interaction and control of a telephone using a personal computer |
EP1712068B1 (en) * | 2003-12-16 | 2008-03-26 | Research In Motion Limited | Mobile device communication profile system and method |
US7174164B1 (en) * | 2004-01-12 | 2007-02-06 | Sprint Spectrum L.P. | Method and system for automatically tracking phone cells |
EP1662764A1 (en) * | 2004-11-30 | 2006-05-31 | Alcatel | Unified call log |
US7817983B2 (en) * | 2005-03-14 | 2010-10-19 | Qualcomm Incorporated | Method and apparatus for monitoring usage patterns of a wireless device |
US7680513B2 (en) * | 2005-08-08 | 2010-03-16 | Palm, Inc. | Contact-centric user-interface features for computing devices |
US8145717B2 (en) * | 2005-09-21 | 2012-03-27 | Siemens Enterprise Communications, Inc. | System and method for providing presence age information in a unified communication system |
-
2006
- 2006-04-20 US US11/409,328 patent/US7764951B2/en active Active
-
2007
- 2007-04-04 WO PCT/US2007/008631 patent/WO2007123821A2/en active Application Filing
- 2007-04-04 EP EP07755041.6A patent/EP2005722B1/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003048960A1 (en) | 2001-11-30 | 2003-06-12 | A New Voice, Inc. | Method and system for contextual prioritization of unified messages |
US20040073643A1 (en) | 2002-10-10 | 2004-04-15 | Hayes David J. | Communication system for providing dynamic management of contacts and method therefor |
US20050254481A1 (en) | 2004-05-11 | 2005-11-17 | Sbc Knowledge Ventures, L.P. | Knowledge management, capture and modeling tool for multi-modal communications |
Also Published As
Publication number | Publication date |
---|---|
EP2005722A2 (en) | 2008-12-24 |
US7764951B2 (en) | 2010-07-27 |
EP2005722A4 (en) | 2009-12-23 |
US20070249410A1 (en) | 2007-10-25 |
EP2005722B1 (en) | 2016-10-19 |
WO2007123821A3 (en) | 2008-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7764951B2 (en) | Techniques for tracking communication frequency across communication modalities | |
US11019000B2 (en) | System and method for email management through detection and analysis of dynamically variable behavior and activity patterns | |
US7191213B1 (en) | Instant message notification application | |
US8077842B2 (en) | System and method for associating due dates with messages | |
US20180131652A1 (en) | Spam filtering and person profiles | |
US9008628B2 (en) | Interactive voice access and notification system | |
CN101711469B (en) | Voicemail filtering and transcription | |
US8255923B2 (en) | Shared persistent communication thread | |
KR101392685B1 (en) | Unified greetings for social media | |
US9282073B1 (en) | E-mail enhancement based on user-behavior | |
JP5513132B2 (en) | Voicemail filtering and posting | |
US20090210497A1 (en) | Selective instant messaging (im) notifications based on sender/receiver relationships | |
US20140074952A1 (en) | Systems and methods for aggregation, correlation, display and analysis of personal communication messaging and event-based planning | |
US20030105827A1 (en) | Method and system for contextual prioritization of unified messages | |
JP2011519437A (en) | Calendar event prompt system and calendar event notification method | |
US20080292069A1 (en) | Ip handset-based voice mail notification | |
US20050271186A1 (en) | System, method and computer program product for interactive voice notification | |
US9659089B2 (en) | Prioritizing work and personal items from various data sources using a user profile | |
US9021027B2 (en) | Techniques for alerting a user of unchecked messages before communication with a contact | |
US7778858B1 (en) | Linking unable to respond messages to entries in electronic calendar | |
CN101711381A (en) | Voicemail filtering and transcription system | |
US8751596B2 (en) | Communication monitoring and management system | |
US7903795B2 (en) | System and method for indicating status of an incoming transmission to a user | |
WO2021118778A1 (en) | Updating alarm settings based on a meeting invitation that is received outside of predefined business hours | |
US11863706B2 (en) | System and method for a cloud callback platform with predictive multi-channel routing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 07755041 Country of ref document: EP Kind code of ref document: A2 |
|
REEP | Request for entry into the european phase |
Ref document number: 2007755041 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2007755041 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |