This disclosure relates generally to the field of electronic communication. More particularly, but not by way of limitation, it relates to avoiding electronic communications at no-contact times.
With the advent of mobile communication devices such as smartphones, people are more likely to have communications capability with them at all hours of the day or night, as well as the ability to communicate with recipients worldwide. However, that capability brings with it the possibility that a communication may be received at a socially unacceptable time, for example interrupting the recipient's sleep. There is currently no automated way to ensure that communications will not be sent or received at socially unacceptable times for the recipient. Although some systems allow users to designate themselves as being in a “do not disturb” status, which will block attempts to contact that user, those settings are inflexible and must be manually turned on and off by the user.
Apparatus and methods for controlling communications allow a recipient of electronic communications to be designated as in a no-contact state based on a profile data associated with the recipient. An attempt to send an electronic communication to the recipient when the recipient is in a no-contact state will result in the electronic communication not being transmitted at that time, although variants may allow queuing the electronic communication for later delivery. The no-contact state based on the profile data may be determined by evaluation of rules. The rules may be based on a location of the recipient, including a time zone or other characteristics associated with the recipient.
A method to control communications is disclosed. The method includes receiving a request, by an programmable device, to transmit an electronic communication at a first time; determining a recipient of the electronic communication;
reviewing profile data associated with the recipient; determining the electronic communication should not be transmitted to the recipient based on the act of reviewing the profile data; and generating a notification in response to determining the electronic communication should not be transmitted.
Another method of controlling communications is disclosed. The method includes receiving a communication by a programmable device associated with a recipient of the communication; reviewing a profile data associated with the recipient; determining based on the profile data whether the recipient is in a no-contact state; and preventing the presentation of the communication to the recipient if the recipient is in a no-contact state.
A system is disclosed. The system includes a first programmable device, associated with a first person; a second programmable device, associated with a second person; and an intermediary programmable device, communicatively coupled to the first programmable device and the second programmable device. The first programmable device includes computer code for restricting communications between the first programmable device and the second programmable device, responsive to an indication that the second person is in a no-contact state. The computer code includes computer code to access a profile data associated with the second person; computer code to review the profile data to determine whether the second person is in a no-contact state; and computer code to restrict transmittal of a communication from the first person to the second person on the second programmable device if the second person is in the no-contact state. The second programmable device includes computer code for creating the profile data associated with the second person, the profile data defining whether the second person is in a no-contact state; and computer code to restrict presentation of a communication from the first person to the second person on the second programmable device if the second person is in the no-contact state. The intermediary programmable device includes a first storage medium configured to store the profile data associated with the second person.
A computer readable storage medium is disclosed. Instructions are stored thereon that when executed cause a programmable device to perform actions comprising receiving a request, by an programmable device, to transmit an electronic communication; determining a recipient of the electronic communication; reviewing profile data associated with the recipient; determining whether the electronic communication should be transmitted to the recipient based on the act of reviewing the profile data.
A programmable device is disclosed. The programmable device includes a programmable control device; a storage device, coupled to the programmable control device; and software, stored on the storage device. The software includes computer code to receive a request to transmit an electronic communication; computer code to determine a recipient of the electronic communication; computer code to review profile data associated with the recipient; computer code to use the profile data to make a decision whether recipient is in a no-contact state, wherein the electronic communication should not be transmitted to the recipient if the recipient is in the no-contact state; and computer code to provide a notification to a user of the programmable device corresponding to the decision.
In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the invention. It will be apparent, however, to one skilled in the art that the invention may be practiced without these specific details. In other instances, structure and devices are shown in block diagram form in order to avoid obscuring the invention. References to numbers without subscripts or suffixes are understood to reference all instance of subscripts and suffixes corresponding to the referenced number. Moreover, the language used in this disclosure has been principally selected for readability and instructional purposes, and may not have been selected to delineate or circumscribe the inventive subject matter, resort to the claims being necessary to determine such inventive subject matter.
For clarity of the following description, the term “instant message” should be understood as incorporating messages transmitted over a telephone network using Short Message Service messages, as well as real-time messages sent over the Internet by software generally referred to as instant message (IM) software, which may be standalone software or functionality provided by web browsers. The term “communication” encompasses all types of electronic communications between a sender and a recipient, including telephone calls, electronic mail (email) messages, and instant messages.
Some of the restrictions on receipt of communications provided by the techniques described herein may be based upon socially unacceptable times, such as times that might interrupt a recipient's sleep or other activities where interruptions may be undesirable. In other examples, the recipient's location may be used to prevent contact at certain locations, where audible notifications on a person's device might be annoying or embarrassing to the recipient, such as when the person is in a concert hall or a theater. In such an example, a recipient's device may determine its location and compare that with known no-contact locations to determine whether the recipient should be placed into no-contact status. Other types of restrictions may be provided, in which a recipient may not wish to be contacted for whatever reason. In general, these times are referred to herein as “no-contact times,” since they may encompass any time that a recipient may wish not to be contacted or interrupted by a communication.
By associating information about no-contact times for receiving communications with recipients, the techniques below can allow automatically avoiding the nuisance to the recipient of receiving communications at undesirable times, such as when the recipient is asleep or performing an activity where interruptions would be undesirable. These no-contact times may be individually defined or based upon rules that may be defined for groups or locations, such as rules based upon a time zone that may be applied based upon a recipient's location.
For example, a default rule might be to denote that a recipient should not receive communications during normal night-time hours for that region or time zone, specifying a start and end time for the no-contact period. Individuals may override default rules with either personal rules or specific time settings, for individual events or normal daily activities. For example, a default rule might denote 10:00 PM until 6:00 AM local time as a no-contact (sleeping) period, but a user with a different schedule may change that rule to specify 1:00 AM until noon local time as the no-contact period. Other user-defined rules may indicate that no communications are desired at any time on Christmas day, or that email may be received between 1:00 PM and 2:30 PM on Apr. 1, 2012, but phone calls and instant messages may not be received during that time. These rules and specific times are illustrative and by way of example only, and rules may specify any time or date period and any type of communication that is to be allowed or blocked during that period, including recurring time periods. Although illustrated herein as providing feedback to senders that the recipient is in a “do not disturb” state, some implementations may allow users to label the no-contact time with a more specific label, such as “sleeping” if desired.
Although described herein as defining no-contact times, variants may provide profile data that define acceptable contact times, and consider no-contact times as those times outside of the acceptable contact times.
Rules may be defined by both senders and recipients, allowing a sender to restrict communications to a recipient independently of any restrictions that may be set by or for the recipient. Thus, for example, a sender might choose not to allow phone calls to a recipient after 9:00 PM, even if the recipient has restricted calls only after midnight, or has not made any restrictions.
These rules may be maintained local to the sender, the recipient, an intermediary server, or any combination thereof. Any convenient or desired technique for storing the rules may be used, including storing the rules with other profile information for the recipient or storing the rules in a separate rules database.
Unlike conventional “do not disturb” settings, which require a manual action by the person wishing not to be disturbed, both to start and stop “do not disturb” status, the profile data may indicate whether the recipient is in a no-contact state without any interaction with the recipient to initiate or terminate the no-contact state. For example, the profile data may define a no-contact time window, and the recipient will automatically be determined to be in the no-contact state if the time the message is sent (or received) is in the no-contact time window. The no-contact time window may exceed a single day in length, designating a period of one or more days if desired. The profile data may also designate one or more senders from whom the recipient does not wish to receive communications, so that a sender so designated would be informed that the recipient is in a no-contact state, while other senders would not have their communications to the recipient restricted.
Some programmable devices may allow for a sender to designate that an electronic communication is not to be delivered before a designated time in the future, instead of being sent immediately. In such a situation, the reviewing of profile data to determine the no-contact state of the recipient uses the designated sending time, rather than the current time at the sender when making any determination of whether the recipient is in a no-contact state.
If the recipient is in a no-contact state, some implementations may allow the communication to be prepared and queued for later delivery on the sender's programmable device or elsewhere. In such an implementation, a check is made in block 530 to determine whether the communication should be queued for later sending. If queuing is allowed, the communication may be queued in block 535, either on the sender's device or on an intermediary server. Otherwise, the communication may be refused in block 540. In some variants, the sender may be offered a dialog such as the ones illustrated in
If the recipient is in a no-contact state, a notification may be provided to the sender that the communication has been refused or delayed by queuing. In some variants, the sender may be offered a dialog such as the ones illustrated in
If the communication arrives at a no-contact time and presentation of the communication to the recipient should be prevented, then in block 570 the programmable device may determine whether to queue the communication in block 575, or simply to refuse it in block 580. In the case of a phone call communication, refusal may also involve routing the phone call to a voicemail application or service. Where an emergency indication is transmitted with the communication, block 560 may honor the emergency indication and allow receipt of the communication, even if the communication arrives at a time that is configured as a no-contact time. For communications that are refused, various implementations may return a notification to the sender of the refused communication or simply refuse the communication without notification.
In techniques illustrated in
In some implementations, some types of communications may be queued, while others may be refused, responsive to a configuration by the recipient or sender as appropriate. For example, phone calls do not lend themselves to queuing, but emails and instant messages may be queued if desired.
In block 610, the queue of delayed communications is checked. Although as described herein as a single queue, multiple queues may be used, such as different queues for each type of communications. If the queue is empty, then there is nothing to dequeue and the technique terminates.
In blocks 620-650, each of the queued communications is checked. In block 630, if that communication can be received at the current time, then the communication is dequeued and in block 640 delivered to the recipient, possibly generating a notification of the delivery, such as playing a ringtone or displaying a message on a display of the programmable device. If the communication is still not deliverable, such as when the recipient is still in a no-contact state for communications of that type, then the communication is left on the queue, and after determining that any more queued communications are present in block 650, the sequence repeats in block 620 with the next queued communication.
Where communications are queued on an intermediary server, the dequeuing technique 600 may be performed on the intermediary server.
Implementation in an Programmable Device
Storage device
Memory
In one embodiment, the programmable device
Implementation in a Network
The techniques described above are typically implemented in a networked environment, such as is illustrated in
Intermediary server 830 is a programmable device that may provide services such as synchronizing recipient profile information between sender device 810 and recipient device 850, allowing indications of no-contact time periods for the recipient to be associated with a profile of the recipient on the sender device 810. In addition, the server 830 may provide a storage subsystem 840 for storing queued communications and other information useful and desirable for performing the techniques described above. Although described as a server, the intermediary server 830 may be any type of intermediary programmable device, typically at a location other than the location of the programmable device of the sender and the location of the programmable device of the recipient, to which the sender or receiver's programmable device can access.
Where the intermediary server 830 is accessed by the sender for storing communications to be queued for delivery to the recipient 850, the entries in the queue of stored communications may include a time for transmitting the communication to the recipient.
It is to be understood that the above description is intended to be illustrative, and not restrictive. For example, the above-described embodiments may be used in combination with each other. Many other embodiments will be apparent to those of skill in the art upon reviewing the above description. The scope of the invention therefore should be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled.