Performing an operation responsive to a voice call

Methods, devices, and systems related to performing an operation responsive to a voice call are described. In an example, a method can include storing data representing a number of contact lists on a memory of a first computing device, wherein the data representing the number of contact lists includes data representing credentials of a number of contacts on the number of contact lists, receiving data representing a voice call and credentials of a second computing device at the first computing device, comparing the data representing the credentials of the second computing device with the data representing the credentials of the number of contacts on the number of contact lists to determine which contact list the second computing device is included in, and performing an operation at the first computing device at least partially based on which contact list the second computing device is included in.

TECHNICAL FIELD

The present disclosure relates generally to performing an operation responsive to a voice call.

BACKGROUND

A telephone is a device that permits two or more users to conduct a conversation when they are too far apart to be heard directly. Sound can be converted into electronic signals and can be transmitted via cables, cellular networks, Wi-Fi, or other channels to another telephone.

When a phone call is missed the call can be directed to a voicemail. The caller can leave a voice message that will be stored for a user in a voicemail inbox. The user can access their voicemail inbox and listen, continue to store, and/or delete the voice message.

DETAILED DESCRIPTION

The present disclosure includes methods, apparatuses, and systems related to storing data representing a number of contact lists on a memory of a first computing device, wherein the data representing the number of contact lists includes data representing credentials of a number of contacts on the number of contact lists, receiving signaling including data representing a voice call and credentials of a second computing device at a first processing resource of the first computing device from a radio in communication with a second processing resource of the second computing device, comparing at the first processing resource the data representing the credentials of the second computing device with the data representing the credentials of the number of contacts on the number of contact lists to determine which contact list the second computing device is included in, and performing an operation at the first computing device at least partially based on which contact list the second computing device is included in.

The first computing device can be, for example, a smartphone, a wearable device, a tablet, a laptop, a desktop computer, a smart assistant device, or any combination thereof. The first computing device can receive and/or place voice calls wired and/or wirelessly via cables, cellular networks, Wi-Fi, or other channels.

In a number of embodiments, the first computing device can collect and store data from a voice call and/or a voice message. For example, the first computing device can collect and store an area code, a phone number, and/or voice data. The first computing device can conduct an internet search on the area code and/or phone number to collect data about the purpose of the voice call, the subject matter of the voice call, the importance of the voice call, and/or a user of the second computing device. In some examples, the first computing device can perform voice recognition and/or word recognition on the voice data to determine the purpose of the voice call, the subject matter of the voice call, the importance of the voice call, and/or the user of the second computing device. In a number of embodiments, the first computing device can input the area code, the phone number, and/or the voice data into an artificial intelligence (AI) model to determine the purpose of the voice call, the subject matter of the voice call, the importance of the voice call, and/or the user of the second computing device.

In response to determining the purpose of the voice call, the subject matter of the voice call, the importance of the voice call, and/or the user of the second computing device, the first computing device can perform an operation. The operation can include sending a message to the second computing device, forwarding the voice call to a third computing device, forwarding a message from the second computing device to the third computing device, sending data from the first computing device to the second computing device, or sending data from the first computing device to the third computing device.

As used herein, “a number of” something can refer to one or more of such things. For example, a number of contacts can refer to one or more contacts. A “plurality” of something intends two or more. Additionally, designators such as “P”, “Q”, “R”, “T”, and “U”, as used herein, particularly with respect to reference numerals in the drawings, indicates that a number of the particular feature so designated can be included with a number of embodiments of the present disclosure.

The figures herein follow a numbering convention in which the first digit or digits correspond to the drawing figure number and the remaining digits identify an element or component in the drawing. Similar elements or components between different figures may be identified by the use of similar digits. For example, reference numeral100may reference element “0” inFIG.1, and a similar element may be referenced as200inFIG.2. In some instances, a plurality of similar, but functionally and/or structurally distinguishable, elements or components in the same figure or in different figures may be referenced sequentially with the same element number (e.g.,222-1,222-2, and222-P inFIG.2). As will be appreciated, elements shown in the various embodiments herein can be added, exchanged, and/or eliminated so as to provide a number of additional embodiments of the present disclosure. In addition, the proportion and the relative scale of the elements provided in the figures are intended to illustrate various embodiments of the present disclosure and are not to be used in a limiting sense.

FIG.1illustrates an example of a computing device100for performing an operation responsive to a voice call in accordance with a number of embodiments of the present disclosure. The computing device100can be, but is not limited to, a smartphone, a wearable device, a tablet, a laptop, a desktop computer, a smart assistant device, or any combination thereof. The computing device100can receive and/or place voice calls via cables, cellular networks, Wi-Fi, or other channels.

A memory102, a processing resource104, a user interface106, a sensor108, and/or a radio110can be included in and/or coupled to the computing device100. The memory102can be coupled to the processing resource104and can store an AI model114. The memory102can be any type of storage medium that can be accessed by the processing resource104to perform various examples of the present disclosure. For example, the memory102can be a non-transitory computer readable medium having computer readable instructions (e.g., computer program instructions) stored thereon that are executable by the processing resource104to store data representing a number of contact lists116on memory102of the computing device100, wherein the data representing the number of contact lists116includes data representing credentials of a number of contacts on the number of contact lists116, receive signaling including data representing a voice call and credentials of a different computing device at the processing resource104of the computing device100from the radio110in communication with a processing resource of the different computing device, compare at the processing resource104the data representing the credentials of the different computing device with the data representing the credentials of the number of contacts on the number of contact lists116to determine which contact list the different computing device is included in, and perform an operation at the computing device100at least partially based on which contact list the different computing device is included in.

As used herein, signaling can include a communication (e.g., a radio signal) that carries data from one location to another. In some examples, the computing device100can include a communication device (e.g., intermediary device), such as, but not limited to, a radio110.

The processing resource104can include components configured to enable the computing device100to perform AI operations. In some examples, AI operations may include training operations or interference operations, or both. In a number of embodiments, the AI model114can be trained remotely in a cloud using sample data and transmitted to the computing device100.

In a number of embodiments, contact lists116and/or user data118can be stored in memory102and/or inputted into the AI model114. In some examples, collected data from a voice call and/or a voice message can be inputted into the AI model114. For example, the computing device100can collect and store an area code, a phone number, a time of the voice call, a date of the voice call, a voice call count over a period of time, and/or voice data.

User data118can be data collected from a user of the computing device100. The user data118can include a user's schedule, contacts, health, heartrate, age, location and/or physical state. The computing device100can collect the user data118from a wearable device, a sensor108, a user's calendar, an email contact list, a phone contact list, an email, and/or a text message and input the user data118into the AI model114.

In some examples, the computing device100can be worn, carried, and/or kept near a user. Accordingly, the computing device100can collect user data118from one or more sensors108included and/or wired and/or wirelessly coupled to the computing device100. The sensor108can be a heart rate sensor, a thermometer, an accelerometer, a gyroscope, a magnetometer, a microphone, a proximity sensor, an ambient light sensor, a touch screen sensor, a fingerprint sensor, or a global positioning system. The user data118can be inputted into the AI model114. For example, the AI model114can determine the user is asleep using sensor data from the heart rate sensor, the accelerometer, the microphone, the ambient light sensor, and/or the global positioning system. In some examples, the processing resource104can transmit signaling including data representing one or more messages based on the collected user data118.

In a number of embodiments, user settings112can be inputted via user interface106and stored in memory102. The user interface106can be generated by computing device100in response to one or more commands. The user interface106can be a graphical user interface (GUI) that can provide and/or receive information to and/or from the user of the computing device100. In a number of embodiments, the user interface106can be shown on a display of the computing device100.

The user settings112can include one or more contact lists116, one or more voicemail greetings, and/or one or more directives. Each contact list can include a number of contacts (e.g., contacts222-1,222-2, . . . ,222-X inFIG.2). The contact lists116can include contact credentials. Contact credentials can include a contact's name, telephone number, email address, profession, relationship to the user, and/or the one or more contact lists116the contact is included in. A user can create a contact list for family members, for example, and select a number of contacts that are family members. Other contact lists116that the user can create can include emergency contacts, coworkers, spam callers, and/or friends.

The user can create and/or store data representing a number of messages. For example, the user can record a number of voicemail greetings, write a number of emails, and/or write a number of text messages and store the messages in memory102. One of the number of messages can be selected and sent in response to the computing device100receiving a voice call and/or a voice message. The computing device100can determine which message to transmit (e.g., which voicemail greeting to play, which email to send, and/or which text message to send) to the missed caller based on the user settings112, the contact lists116, and/or the user data118. For example, the user can record a voicemail greeting for contacts included in the friend contact list. In response to missing a call from a number included in the friend contact list, the prerecorded voicemail greeting can be played for the missed caller.

In some examples, a custom voicemail greeting can be generated using the AI model114. For example, if the missed caller is included in a particular contact list, the AI model114can include user data118in the custom voicemail greeting. In response to a user being in a meeting, the voicemail greeting could say that the user is in a meeting and provide a time when the meeting will be over. In response to the user being asleep, the voicemail greeting could say that the user is sleeping and provide a time when the user usually wakes up.

In a number of embodiments, the user can create and store forwarding call directives, forwarding message directives, and/or transmitting sensor data directives as user settings112. For example, a voice call and/or a voice message can be forwarded to a particular contact. The computing device100can forward the voice call and/or the voice message to a contact based on the user settings112. The user can direct doctor's calls to people on the family contact list, for example. The AI model114can determine that the voice call is from a doctor by searching for the telephone number on the internet and/or matching the telephone number to a contact included in a contact list.

A contact list can have a sequence of people. For example, the sequence of the user's family contact list can start with the user's spouse, then child, and then parent so that the call will first be forwarded to their spouse, then their child, and then their parent.

In some examples, the user can direct a voice message to be forwarded to people on the user's coworker contact list. The computing device100can collect data about the purpose of the call, the subject matter of the call, the importance of the call, and/or the caller from the voice message using voice and/or word recognition.

The collected data can be inputted into the AI model114. For example, the collected data could be a portion of the voice message, the entire voice message, a transcript of a portion of the voice message, and/or a transcript of the entire voice message. The AI model114can determine that the voice message is work related and urgent based on the words, phrases, sentences, tone of the voice message, and/or the voice of the caller. For example, the AI model114can determine that the voice message is urgent if the voice message includes the phrase “as soon as possible” and as such, determine that the voice message should be forwarded.

The AI model114can determine that the voice message is work related and the voice message should be forwarded to people on the user's coworker contact list if the voice message includes the voice of a customer. The AI model114can determine the identity of the caller from the tone, cadence, accent, and/or vocabulary of the caller, for example. Accordingly, the computing device100can forward the voice message to the people on the user's coworker contact list.

In a number of embodiments, the computing device100can transmit user data118to people on a user's friend vacation contact list. The user can direct particular user data118to be sent to a particular contact list in response to user settings112and/or user data118. For example, the computing device100can send a GPS location of the computing device100to a user's friend vacation contact list in response to the AI model114determining the user is on vacation and the user is unresponsive.

The AI model114can determine the user is on vacation from a user's calendar events, plane ticket email confirmations, hotel email confirmations, and/or GPS. The AI model114can determine the user is unresponsive in response to the computing device100receiving a number of phone calls, emails, and/or texts without the user receiving and/or responding to them, the computing device100receiving no inputs from the user for a period of time, the sensor data108detecting an abnormal heart rate and/or no heart rate, and/or the GPS of the computing device100being in a dangerous location. In response to the AI model114determining the user is on vacation and unresponsive, the AI model114can determine that the GPS location of the computing device100should be sent to people on the user's friend vacation contact list and accordingly, the computing device100can send the GPS location to people on the user's friend vacation contact list.

The user can be notified before and/or after a voice call is forwarded, a message is forwarded, and/or sensor data is transmitted. The notification can be an alert, a text, an email, and/or a voice call. For example, the computing device100can display a notification on the user interface106. In some examples, the user can stop a call from being forwarded, a message from being forwarded, and/or sensor data from being transmitted by inputting a command prior to the call being forwarded, the message being forwarded, and/or the sensor data being transmitted.

In some examples, the user can be notified via an alert, a text, an email, or a voice call on the user's computing device100and/or a wearable device that the user missed an important voice call. The AI model114can determine that the call is important from the telephone number, words, phrases, sentences, and/or the tone, cadence, accent, and/or vocabulary of the caller.

FIG.2illustrates an example of a system220for performing an operation responsive to a voice call in accordance with a number of embodiments of the present disclosure. The system220can include a computing device200, which can correspond to computing device100inFIG.1, and a number of contacts222-1,222-2, . . . ,222-X. The computing device220can be a wearable device, a smartphone, a tablet, a laptop, a desktop computer, a smart assistant, or any combination thereof and can include a memory, a processing resource, a user interface, and a radio, as previously described in connection withFIG.1.

Each of the number of contacts222-1,222-2, . . . ,222-X can be a computing device, a wearable device, a smartphone, a tablet, a laptop, a desktop computer, a smart assistant, or a telephone. Each of the number of contacts222-1,222-2, . . . ,222-X can be included in one or more contact lists stored in memory of the computing device200. A user can create a contact list for family members, emergency contacts, coworkers, spam callers, and/or friends, for example, and select a number of contacts for each contact list.

Contact data associated with each of the number of contacts222-1,222-2, . . . ,222-X can also be stored in contact lists (e.g., contact lists116inFIG.1) in memory. The contact data can include a contact's name, telephone number, email address, profession, relationship to the user, and/or the one or more contact lists the contact is included in. A portion or all of this data can be sent from a contact of the number of contacts222-1,222-2, . . . ,222-X to the computing device200and/or a portion or all of this data can be created by the user of the computing device200and/or determined by the computing device200using an AI model (e.g., AI model114inFIG.1), for example.

The user can record a number of voicemail greetings, write a number of emails, and/or write a number of text messages. One of the number of voicemail messages, one of the number of emails, and/or one of the number of text messages can be sent in response to the computing device200receiving a voice call and/or a voice message from one of the number of contacts222-1,222-2, . . . ,222-X. The computing device200can determine which voicemail greeting to play, which email to send, and/or which text message to send to the contact based on which contact list the contact is included in. For example, the user can record a voicemail greeting for contacts included in the spam contact list. In response to missing a call from a spam caller, the prerecorded voicemail greeting for contacts included in the spam contact list can be played for the spam caller.

In a number of embodiments, the user can create forwarding call directives, forwarding message directives, and/or transmitting sensor data directives. For example, contact222-1can be forwarded to contact222-2. The computing device200can forward contact222-1to contact222-2in response to the data of contact222-1and the user settings. For example, contact222-1can be the school of the user's child and contact222-2can be the user's spouse. If the user's spouse also does not answer, the phone call from the school can be forwarded to contact222-X, which can be a user's parent, for example.

In some examples, the user can direct a voice message to be forwarded to one or more of the number of contacts222-1,222-2, . . . ,222-X that are included in a particular contact lists. The computing device200can collect data and use the collected data to determine the purpose of the call, the subject matter of the call, the importance of the call, and/or the identity of the caller to determine whether or not the voice message should be forwarded and/or who the voice message should be forwarded to. One or more of the contacts222-1,222-2, . . . ,222-X can receive the voice message as a phone call, a voice message in their voicemail inbox, a voice memo in a text message, an attachment to an email, a transcript in a text message, and/or a transcript in an email.

In a number of embodiments, the computing device200can transmit user data to one or more of the number of contacts222-1,222-2, . . . ,222-X on a particular contact list. The user can direct particular user data to be sent to a particular contact list in response to user settings, collected data, and/or user data. In some examples, the computing device200can send location data and/or medical data, for example, heartrate data, to a user's medical contact list in response to the AI model determining the user is incapacitated and/or injured. A user's medical contact list could include contact222-1as a user's primary doctor, contact222-2as an emergency responder, and/or contact222-X as a spouse of the user. The AI model can determine the user is injured and/or incapacitated from the user's heart rate data and/or GPS and/or in response to the user missing a number of voice calls over a particular period of time, for example.

In response to the AI model determining the user is incapacitated and/or injured, the AI model can determine that health sensor data and/or a GPS location of the computing device200should be sent to contacts222-1,222-2, and222-X included in the user's emergency contact list. Accordingly, the computing device200can send the health sensor data and GPS location to contacts222-1,222-2, and222-X. The sensor data can be received by the one or more contacts222-1,222-2, . . . ,222-X in a voice call, a text message, and/or an email.

FIG.3illustrates an example flow diagram330of performing an operation responsive to a voice call in accordance with a number of embodiments of the present disclosure. A computing device (e.g., computing device100inFIGS.1and200inFIG.2) can receive data representing a voice call and/or voice message332and credentials of a different computing device making the voice call and/or voice message332.

The computing device can perform an AI operation334using an AI model (e.g., AI model114inFIG.1). An AI operation334can determine which contact list the different computing device is included in and based on which contact list the different computing device is included in whether to transmit a message338-1,338-2,228-3,338-4, and338-R, display a notification340-1,340-2,340-3, and/or340-T, forward342-1and342-U the voice call and/or voice message332, and/or transmit a location334of the computing device. The AI operation334can also determine what particular message338-1, . . . ,338-R and/or what particular notification340-1, . . . ,340-T can be sent. The AI operation334can be performed on the data representing the voice call and/or voice message332, the credentials of the different computing device, the determined contact list the different computing device is included in, and/or user data.

The data representing the credentials of the different computing device can be compared, at a processing resource (e.g., processing resource104inFIG.1) and/or during the AI operation334, to the data representing credentials of a number of contacts on a number of contact lists336-1,336-2,326-4, . . . ,336-Q to determine which contact list the different computing device is included in. Credentials can include a contact's name, telephone number, and/or email address, for example. In some examples, the different computing device can be determined to be included on contact list336-1in response to a telephone number of the different computing device matching a telephone number of a contact in contact list336-1. Contact list336-1can include close friends and family, contact list336-2can include friends and family, contact list336-3can include colleagues, contact list336-4can include vacation friends, and/or contact list336-Q can include doctors, for example.

The AI operation334can determine to transmit a message338-1,338-2,338-3,338-4, or338-R in response to receiving a voice call and/or voice message332from a contact included in contact list336-1,336-2,336-3,336-4, or336-Q, respectively. Messages338-1, . . . ,338-R can be voice messages, emails, and/or a text messages. In some examples, messages338-1, . . . ,338-R can include data from the user. For example, messages338-1, . . . ,338-R can include what the user is doing (e.g., the user is in a meeting or sleeping), when the user will be available, and/or when the caller should call back.

In a number of embodiments, the AI operation334can determine to notify the user about a voice call or a voice message by a notification340-1,340-2,340-3,340-T in response to receiving a voice call and/or voice message from a contact included in contact list336-1,336-2,336-3, or336-4, respectively. Notifications340-1,340-2,340-3,340-T can be text displayed on a user interface (e.g., user interface106inFIG.1), a text message, an email message, a sound, a vibration, and/or a light. Notifications340-1,340-2,340-3,340-T can include data about the contact, voice call, and/or voice message. In some examples, notifications340-1, . . . ,340-T can be transmitted to the user every thirty minutes to remind the user that they missed a voice call and/or have a voice message.

The AI operation334can determine to forward342-1, . . . ,342-U a voice call and/or voice message332in response to receiving a voice call and/or voice message332from a contact included in contact list336-1or336-Q and/or in response to determining the voice call and/or voice message332is urgent. The AI operation334can determine a voice call and/or voice message332is urgent based on the contact list the different computing device is included in, a threshold number of voice calls from the different computing device, a heartrate of the user, and/or a location of the computing device. For example, if a different computing device is included in contact list336-Q and the AI operation334identifies words used in the voice message332as urgent, the voice message332can be forwarded to a pre-defined contact and/or contact list336-1, . . . ,336-Q. In some examples, if a contact is included in contact list336-1and the AI operation334identifies the voice call and/or voice message332as urgent because the contact has called a threshold number of times, the voice call and/or the voice message332can be forwarded to a pre-defined contact and/or contact list336-1, . . . ,336-Q.

A voice call and/or voice message332can be determined to be non-urgent by the AI operation334based on the contact list the computing device is included in, the number of voice calls being below a threshold number of voice calls, a heartrate of a user, and/or a location of a user. In some examples, signaling including data representing a notification340-1, . . . ,340-T that the voice call and/or voice message is non-urgent can be transmitted to a user interface in response to the voice call and/or voice message being determined to be non-urgent.

In a number of embodiments, the AI operation334can determine to transmit a location344of the user. For example, if a contact is included in contact list336-1and the contact has repeatedly called and the user has not answered and/or called back in over a period of time, the AI operation334can determine to transmit the location344of the user to a pre-defined contact and/or contact list336-1, . . . ,336-Q. The AI operation334can also determine to transmit signaling including data representing a location344of the user to a pre-defined contact and/or contact list336-1, . . . ,336-Q in response to the AI operation334determining the user is incapacitated.

FIG.4illustrates an example flow diagram of a method450for performing an operation responsive to a voice call in accordance with a number of embodiments of the present disclosure. At block452, the method450can include storing data representing a number of contact lists on a memory of a first computing device, wherein the data representing the number of contact lists includes data representing credentials of a number of contacts on the number of contact lists.

At block454, the method450can include receiving signaling including data representing a voice call and credentials of a second computing device at a first processing resource of the first computing device from a radio in communication with a second processing resource of the second computing device. The first computing device can store data from the voice call, the voice message, and/or the credentials. For example, the first computing device can store credentials of the second computing device including an area code, a telephone number, and/or voice data from the voice message.

The first computing device can search the area code and/or the telephone number of the second computing device on the internet, in the user data, and/or the contact lists to collect additional information about the purpose of the voice call, the subject matter of the voice call, the importance of the voice call, and/or the identity of the caller. In some examples, the first computing device can perform voice recognition and/or word recognition on the voice data to determine the purpose of the voice call, the subject matter of the voice call, the importance of the voice call, and/or the identity of the caller. In a number of embodiments, the first computing device can input the area code, the phone number, and/or the voice data into an AI model to determine the purpose of the voice call, the subject matter of the voice call, the importance of the voice call, and/or the identity of the caller.

At block456, the method450can include comparing at the first processing resource the data representing the credentials of the second computing device with data representing the credentials of the number of contacts on the number of contact lists to determine which contact list the second computing device is included in.

At block458, the method450can include performing an operation at the first computing device at least partially based on which contact list the second computing device is included in. The operation can include transmitting signaling including data representing a particular message to the second processing resource of the second computing device via the radio in communication with the second processing resource of the second computing device. In some examples, the particular message can be selected by the first processing resource at least partially based on which contact list the second computing device is included in. The particular message can be a voice message, an email, or a text message. The first processing resource can select the voice message, email, or text message at least partially based on which contact list the second computing device is included in. In a number of embodiments, the particular message can include user data stored on the memory of the first computing device at least partially based on which contact list the second computing device is included in.

Performing the operation can include relaying the signaling including the data representing the voice call to a third processing resource of a third computing device via a radio in communication with the third processing resource of the third computing device at least partially based on which contact list the second computing device is included in.

In a number of embodiments, the method can further include receiving signaling including data representing a voicemail greeting at the first processing resource of the first computing device. The first processing resource can store data representing the number of voicemail greetings including the data representing the voicemail in the memory of the first computing device. In some examples, the first computing device can select a voicemail greeting of the number of voicemail greetings and transmit the voicemail greeting to the second computing device in response to receiving the signaling including the data representing the voice call and credentials of the second computing device.

The method can further include the first processing resource of the first computing device receiving signaling including data representing a voice message from the radio in communication with the second processing resource of the second computing device. In a number of embodiments, the first processing resource of the first computing device can transmit the signaling including the data representing the voice message from the first processing resource of the first computing device to a third processing resource of a third computing device via a radio in communication with the third processing resource of the third computing device.