The present disclosure relates to computer systems, and more specifically, to computer systems for managing a phone communication response.
The use of mobile communication devices such as cell phones, smart phones and tablets is rapidly increasing. Automated response systems are one tool by which users can manage correspondence. As the use of mobile communication devices increases, the need for using automated response systems may also increase.
Aspects of the present disclosure, in certain embodiments, relate to a computer implemented method for managing a phone communication response. In certain embodiments, the method can include creating a set of phone communication response preferences. The method can also include setting a phone communication response configured to provide status information including arrival time information and location information. The phone communication response can, in certain embodiments, be set in response to a triggering event. The method can include resolving a correlation between identifying information of the phone communication and at least a portion of the set of phone communication response preferences. The correlation can, in certain embodiments, be resolved in response to receiving a phone communication. The method can include providing, in response to resolving the correlation, the phone communication response.
The above summary is not intended to describe each illustrated embodiment or every implementation of the present disclosure.
The drawings included in the present application are incorporated into, and form part of, the specification. They illustrate embodiments of the present disclosure and, along with the description, serve to explain the principles of the disclosure. The drawings are only illustrative of certain embodiments and do not limit the disclosure.
While the invention is amenable to various modifications and alternative forms, specifics thereof have been shown by way of example in the drawings and will be described in detail. It should be understood, however, that the intention is not to limit the invention to the particular embodiments described. On the contrary, the intention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.
Aspects of the present disclosure relate to various embodiments of a system and methodology for a phone communication system. More particular aspects relate to providing a phone communication response containing status information. The status information can be customizable. For example, the status information can include arrival time information and location information. The methodology may include creating a set of phone communication response preferences. Creating the phone communication response preferences (e.g., settings) can include registering a set of allowed source profiles to a profile data group, and selecting accessible status information for at least one source profile. The method can also include setting a phone communication response in response to a triggering event. The phone communication response can be configured to provide the status information. In response to receiving a phone communication, the method can include resolving a correlation between identifying information of the phone communication and at least a portion of the set of phone communication response preferences. In response to resolving the correlation, the methodology can include providing the phone communication response.
As the use of mobile communication devices such as cell phones, smart phones and tablets becomes increasingly more common, the number of calls and messages received by a typical user on a daily basis is similarly increasing. However, aspects of the present disclosure relate to the recognition that, in certain situations, a user may be traveling at the time he or she is contacted, and not be available to respond immediately. For example, a user may be driving or aboard an airplane when he or she receives a phone call, and be unable to respond to the phone call. Accordingly, aspects of the present disclosure relate to a system and method for providing a phone communication response to the initiator of the phone communication without direct action by the user. The phone communication response may include location information and arrival time information in the form of a voicemail message, text message, or other form of response. The user may configure a set of preferences including a list of contacts allowed to receive the phone response, and data to provide for at least one contact. The present disclosure may provide benefits associated with communication performance and efficiency.
Aspects of the present disclosure include a method and system for managing a phone communication system. The method and system may work on a number of devices and operating systems. The method and system can include creating a set of phone communication response preferences. For example, creating the set of phone communication responses can include registering a set of allowed source profiles to a profile data index, and selecting accessible status information for at least one registered source profile. The profile data group can include name information and phone number data for at least one registered source profile.
Aspects of the present disclosure include setting, in response to a triggering event, a phone communication response configured to provide status information. In certain embodiments, the triggering event can include a cue from a cache scheduler configured to update arrival time information and location information at configurable time intervals. For instance, the arrival time information and location information could be configured to be updated at thirty minute intervals. In certain embodiments, the triggering event includes a decrease in a communication signal strength level between a mobile communication device and a cellular network below a threshold level. In certain embodiments, the triggering event can include the scanning of a bar code having air travel information. The bar code can be associated with an air travel application communicatively connected with the phone communication system. In certain embodiments, the triggering event and status information can be associated with a number of checked bags by a traveler.
The status information can include arrival time information and location information. The status information including arrival time information and location information can, in certain embodiments, be determined by a global positioning system used to estimate the arrival time at a known destination. The global positioning system can be communicatively connected to the phone communication system. In certain embodiments, the status information can be determined by using archived travel information to estimate the arrival time at an unknown destination. The archived travel information can include past departure times, arrival times, and other travel data for different days of the week.
Aspects of the present disclosure include resolving, in response to receiving a phone communication, a correlation between identifying information of the phone communication and at least a portion of the set of phone response preferences. Resolving the correlation can include identifying a source profile of the phone communication in response to receiving a phone communication. In response to identifying the source profile, resolving the correlation can include comparing the identified source profile to the profile data group. Additionally, resolving the correlation can include determining a match between the identified source profile and a first profile of the profile data group. Further, the method can include providing the phone communication response in response to determining a match between the identified source profile and a first profile of the profile data group. For example, the phone communication response can be provided to the identified source profile. In certain embodiments, the status information provided with the phone communication response can include a voicemail message and a map.
Turning now to the figures,
As shown in
Consistent with various embodiments, the source devices 102, 104, 106 may initiate communication sessions with the receiving devices 110, 112, 122 via the mobile network 108. Aspects of the present disclosure are directed toward a method and system for managing a phone communication response. The method can operate on one or more receiving devices 110, 112, 122, and can provide status information in response to receiving a phone communication from a source device 102, 104, 106. In certain embodiments, the status information can include location information and arrival time information, and can be provided to the source device that initiated the phone communication session. In certain embodiments, the phone communication response can be provided as a voicemail recording, text message or a map.
In certain embodiments, the receiving devices 110, 112, 122 can include one or more applications 114 configured to facilitate providing the phone communication response. For example, the applications can include a phone communication management application 116, a GPS application 118, and a voicemail application 120. The phone communication management application 116 can include a set of phone communication response preferences (e.g., a list of designated contacts allowed to receive the phone communication response and accessible status info for each contact). The GPS application 118 can be communicatively connected to the phone communication management application 116, and can provide estimated arrival time information and location information to be provided with the phone communication response. Further, the voicemail application 120 can be communicatively connected to the phone communication management application 116 and be configured to facilitate creation of a voice message to be provided with the phone communication response.
Consistent with embodiments of the present disclosure, the network architecture 200 can include a receiving device 204 and a source device 234. Both the receiving device 204 and the source device 234 can include a BIOS (basic input-output system) 206, 236 an operating system 208, 238 one or more processors or processing units 210, 240 a system memory 212, 242 and some form of computer-readable media 214, 244.
As shown in
In certain embodiments, the receiving device 204 and the source device 234 can each include a BIOS 206, 236 and an operating system 208, 238 accessible by the system memory 212, 242. The BIOS 206, 236 and the operating system 208, 238 can facilitate the transfer of information between elements within the receiving device 204 and within the source device 234, respectively. The BIOS 206, 236 can also facilitate the implementation of application programs and other program modules. A user interface can also be linked to the receiving device 204 or the source device 234 that allows a user to interact with the application programs and program modules of the receiving device 204 or the source device 234. For example, the user interface can include a display 228, 248 (e.g., an LCD display screen), and one or more input devices 230, 250 such as a touch screen, a physical keyboard, or other buttons. In certain embodiments, the receiving device 204 can include a network interface device 232, and the source device 234 can include a network interface device 246. The network interface device 232, 246 can be configured to facilitate communication between the receiving device 204, the source device 234, and the mobile network 202.
In certain embodiments, the receiving device 204 can include a phone communication management application 216. As shown in
Consistent with various embodiments, at block 304 the method 300 can include creating a set of phone communication response preferences. The phone communication response preferences can include a plurality of settings for allowing a user to configure the phone communication response. For example, creating the phone communication response preferences can include allowing a user to register a set of source profiles (e.g., contacts) to a profile data group. The profile data group can store information for each registered source profile. For example, the profile data group can store information such as the contact name and phone number of a source profile. For example, a source profile labeled “Dad” having a phone number of 123-867-5309 could be registered to the profile data group. Further, creating the phone communication response preferences can include selecting accessible status information for each source profile registered to the profile data group. In certain embodiments, the status information can include location information and arrival time information. As an example, for the source profile “Dad,” location information and arrival time information could be selected to be provided with a phone communication response in response to receiving a phone communication response from the source profile “Dad.” Other types of status information could also be selected.
Consistent with various embodiments, at block 306 the method 300 can include setting a phone communication response to provide status information. In certain embodiments, setting the phone communication response can occur in response to a triggering event. Consistent with embodiments of the present disclosure, the phone communication response can be implemented in one of a number of different ways. In certain embodiments, the phone communication response can be provided as a voice message. In certain embodiments, the phone communication response can be provided as a text message. In certain embodiments, the phone communication response can be provided as a map, such as a geographical map. Other types of phone communication responses, as well as combinations of various phone communication responses are also possible. For example, in certain embodiments, a voicemail message and a map can be provided as the phone communication response. As described herein, the phone communication response can be configured to include status information, such as arrival time information and location information. As an example, the phone communication response can be provided as a voicemail message including an estimated arrival time at a location. The voicemail message may, in certain embodiments, be an automated digital voice file configured to include the estimated arrival time and location. In certain embodiments, the voice message may include both a user created voice message portion and an automated voice file to provide the status information. A map may also be provided, with one or more locations marked to indicate a current location and a destination. Consistent with various embodiments, the type of phone communication response to be provided can be selected by a user in the phone communication response preferences.
In certain embodiments, the status information can be determined by a global positioning application communicatively connected to the phone communication management system. The global positioning application may, in certain embodiments, be configured to calculate an estimated arrival time at a certain location when a user is en route to a known destination. The estimated arrival time may be provided to the phone communication management system to be provided with the phone communication response. For example, in certain embodiments, a user may indicate an address to which he or she will be traveling, and the global positioning application can calculate an estimated arrival time. The estimated arrival time may be included in the phone communication response.
Aspects of the present disclosure relate to the recognition that, in certain embodiments, the user may be en route to an unknown destination. In such a situation, the global positioning application may be unable to determine status information, such as an estimated arrival time. Accordingly, aspects of the present disclosure relate to consulting a log of archived travel data to compute an estimated arrival time. The log of archived travel data can, for example, contain departure data and arrival data for different locations for different days of the week. As a practical example, a user may depart at 7:30 AM on a Thursday morning toward an unknown destination. In certain embodiments, the archived travel data may indicate that typically, when the user departs at 7:30 AM on Thursday mornings, he or she often arrives at his or her destination between 8:15 AM and 8:25 AM. This information may be included in the phone communication response.
In certain embodiments, the method 300 can include accessing a calendar application in order to determine the status information. For example, the calendar application may have registered events, such as meetings, appointments, social gatherings, and other schedule items that could be used in determining the status information. As an example, in certain embodiments, a user may depart at 4:15 PM on a Wednesday evening toward an unknown destination. In such a situation, the method 300 can include consulting the calendar application. In certain embodiments, the calendar application may list that the user has jazz band practice at 5:00 PM on each Wednesday evening. Based on this information, the method 300 may determine that jazz band practice is the likely intended destination of the user, and may use this to calculate an estimated arrival time. This information may be included in the phone communication response. In certain embodiments, the arrival time information may be related to a number of checked bags (e.g., of a traveler boarding an airplane). For example, more checked bags can indicate a generally later arrival time, particularly when the bags reach a cumulative weight threshold.
As described herein, consistent with various embodiments, setting the phone communication response can occur in response to a triggering event. The triggering event can be one of a number of different types. For example, in certain embodiments, the triggering event can include a cue from a cache scheduler configured to periodically update the arrival time information and location information at configurable time intervals. Put differently, the phone communication response can be automatically updated at set time intervals. Updating the phone communication response can include consulting the global positioning application, calendar application, or archived travel information, and revising the location information or arrival time information. For example, the phone communication response could be configured to be updated every 5 minutes. In certain embodiments, the phone communication response could be configured to be updated every 30 minutes. Other time intervals are also possible.
Consistent with various embodiments, the triggering event can, for example, be a manual command from a user. The user could choose to set the phone communication response to reflect his or her present location or estimated arrival time at a particular destination. In certain embodiments, the triggering event can include a decrease in a communication signal strength level between a mobile communication device and a cellular network. For example, in certain embodiments, the phone communication response could be set in response to the signal strength between the device using the phone communication management application (e.g., receiving device 204 of
Consistent with various embodiments, the triggering event can include the scanning of a bar code having air travel information. The bar code can be associated with an air travel application communicatively connected with the phone communication system. As an example, in certain situations, a user may make use of an air travel application on a mobile device to display a boarding pass for an airplane flight. The boarding pass may include a bar code that, when scanned, verifies the flight information (e.g., departure time, arrival time, destination) of the user. Accordingly, in certain embodiments, the phone communication response may be set in response to the scanning of a bar code having air travel information. Further, in certain embodiments, the departure time, arrival time, and destination indicated by the bar code can be provided with the phone communication response.
Consistent with various embodiments, at block 308, the method 300 can include resolving a correlation between identifying information (e.g., a source profile) of the phone communication and at least a portion of the set of phone communication response preferences (e.g., a first profile of the profile data group). In certain embodiments, resolving a correlation can include identifying a source profile (e.g., caller) in response to receiving a phone communication. For example, the method 300 can use a phone number associated with the incoming phone communication to identify the source profile. The method 300 may identify a contact name corresponding to the identified source profile from a contact address book. Other methods of identifying the source profile are also possible. In response to identifying the source profile, resolving a correlation can further include comparing the identified source profile to a profile data group. As described herein, the profile data group can include a number of registered source profiles with name information and phone number information, as well as accessible status information for each registered source profile. Additionally, in certain embodiments, resolving a correlation can further include determining a match between the identified source profile and a first profile of the profile data group. Determining the match between the identified source profile and the first profile of the profile data group can be based on phone number information. In certain embodiments, determining the match can be based on contact name information. In response to resolving a correlation between identifying information (e.g., a source profile) of the phone communication and at least a portion of the set of phone communication response preferences, at block 310 the method 300 can include providing the phone communication response. In certain embodiments, the phone communication response can be provided to the identified source profile in the form of a voice message or text message. Other methods of providing the phone communication response are also possible.
Consider the following example. In certain situations, a user may receive a phone communication (e.g., a phone call or text message) while traveling (e.g., driving an automobile) and be unable to safely respond to the phone communication. As described herein, the method 300 can include identifying the source profile (e.g., caller) of the phone communication. As an example, the source profile could have a contact name of “Dad” and a phone number of 123-867-5309. The method 300 can include comparing the phone number to a profile data group having a list of registered source profiles and accessible status information (arrival time information, location information) for each registered source profile. For example, the source profile “Dad” may be registered in the profile data group, and be allowed to access arrival time information and location information. In response to determining a match between the source profile and a first profile of the profile data group (e.g., finding that the phone number 123-867-5309 is registered in the profile data group), the method 300 can include providing to the source profile “Dad” a voicemail message containing the arrival time of the user, and a map displaying the present location of the user.
The computer system 400 can include a managing module 402. The managing module 402 can be configured to manage a phone communication response. The managing module 402 can include a creating module 404, a registering module 406, a selecting module 408, a profile data group module 410, a setting module 412, a scheduling module 414, a signal strength module 416, a scanning module 418, a status information module 420, a global positional module 422, a travel information archive module 424, a resolving module 426, an identifying module 428, a comparing module 430, a determining module 432, and a providing module 434.
The creating module 404 can include creating a set of phone communication response preferences. Creating the set of phone communication responses can include using a registering module 406 configured to register a set of allowed source profiles to a profile data group, and using a selecting module 408 configured to select accessible status information for each registered source. A profile data group module 410 can be configured to manage name information and phone number data for each registered source profile of the profile data group.
The setting module 412 can be configured to set, in response to a triggering event, a phone communication response configured to provide status information. In certain embodiments, the triggering event can include a cue from a scheduling module 414 configured to update arrival time information and location information at configurable time intervals. For instance, the arrival time information and location information could be configured to be updated at thirty minute intervals. In certain embodiments, the triggering event can include a decrease in a communication signal strength level between a mobile communication device and a cellular network below a threshold level. A signal strength module 416 can be configured to monitor the strength of the communication signal between the mobile communication device and the cellular network. In certain embodiments, the triggering event includes the scanning of a bar code having air travel information. A scanning module 418 can be configured to respond to the scanning of the bar code. The bar code can be associated with an air travel application communicatively connected with the phone communication system.
The status information can include arrival time information and location information. A status information module 420 can be configured to manage the arrival time information, location information and other types of status information. The status information including arrival time information and location information can, in certain embodiments, be determined by a global positioning module 422 configured to estimate the arrival time at a known destination. The global positioning system can be communicatively connected to the phone communication system. In certain embodiments, the status information can be determined by a travel information archive module 424 configured to estimate the arrival time at an unknown destination from a log of past travel data. The log of past travel data can include past departure times, arrival times, and other travel data for different days of the week.
The resolving module 426 can be configured to resolve, in response to receiving a phone communication, a correlation between identifying information of the phone communication and at least a portion of the set of phone communication response preferences. The resolving module 426 can include an identifying module 428 configured to identify, in response to receiving a phone communication, a source profile (e.g., caller) of the phone communication. In response to identifying the source profile, the system can include using a comparing module 430 configured to compare the identified source profile to the profile data group. Further, the system can include using a determining module 432 configured to determine a match between the identified source profile and a first profile of the profile data group. Additionally, the system can include using a providing module 434 configured to provide the phone communication response in response to determining a match between the identified source profile and a first profile of the profile data group. For example, the phone communication response can be provided to the identified source profile. In certain embodiments, the status information provided with the phone communication response can include a voicemail message and a map.
The present invention may be a system, a method, and or a computer program product. The computer program product may include a computer readable storage medium (or media) having computer readable program instructions thereon for causing a processor to carry out aspects of the present invention.
The computer readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of the computer readable storage medium includes the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination of the foregoing. A computer readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire.
Computer readable program instructions described herein can be downloaded to respective computing/processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and/or a wireless network. The network may comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers. A network adapter card or network interface in each computing/processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing/processing device.
Computer readable program instructions for carrying out operations of the present invention may be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like, and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGA), or programmable logic arrays (PLA) may execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present invention.
Aspects of the present invention are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer readable program instructions.
These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, a programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer readable storage medium having instructions stored therein comprises an article of manufacture including instructions which implement aspects of the function/act specified in the flowchart and/or block diagram block or blocks.
The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process, such that the instructions which execute on the computer, other programmable apparatus, or other device implement the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts or carry out combinations of special purpose hardware and computer instructions.
The descriptions of the various embodiments of the present disclosure have been presented for purposes of illustration, but are not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terminology used herein was chosen to explain the principles of the embodiments, the practical application or technical improvement over technologies found in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.