Communications network for screening and selectively blocking private calls

Concepts and technologies are disclosed herein for screening and selectively blocking private calls. A processor executing instructions associated with a private call blocking service can detect a call from a calling device directed to a called device. The processor can determine that the call has a caller identification blocking marker indicating that a fixed label should be provided to the called device to prevent the called device from presenting caller identification data associated with the calling device. In response to determining that the call has the caller identification blocking marker, the processor can obtain a custom private caller identification mask instead of the fixed label. The processor can provide the custom private caller identification mask to the called device for the call, where the custom private caller identification mask can be presented to a called party associated with the called device without revealing the caller identification data.

BACKGROUND

Over the past several years, communication devices have become prevalent, whether fixed line, mobile, or even implemented as programs running in web browsers. Because of the prevalence of these devices, modern users may almost always be considered available and/or capable of engaging in various audio and/or visual communication, irrespective of whether the user is available.

Users of communication devices can receive many calls per day at times when, although convenient for the caller, may not be convenient for the user that is the intended recipient of the calls. Increasingly, a growing number of calls originate from a calling party with the intent to obfuscate or mislead (e.g., from spammers and/or nefarious commercial entities), and thus it may never be convenient for the user to accept those calls. Repeated calls of this nature can lead a user to only answer calls when the user believes they know and/or are familiar with the identity of the calling party. As such, legitimate, innocuous callers—who are unknown or unfamiliar to the caller but who are making bona fide calls that the user would otherwise accept—may have their calls ignored or denied, thereby leaving the legitimate caller with less avenues to contact the user.

SUMMARY

The present disclosure is directed to a communications network service, such as a private call blocking service, that can configure one or more components of a communications network to handle, identify, intercept, block, reconfigure, and route or otherwise screen calls. The private call blocking service is further configured to prompt actions by other processors, servers, and/or entities. As used herein, the term “call” is intended to refer to a communication that is directed to a specific communication device for presentation by the communication device. The term “communication” is intended to refer to a message and/or file that provides audio data (e.g., via data packets) and/or visual data (e.g., through moving and/or still images) to the communication device. A call can include an audio call, a video call, an audio voicemail message, a visual voicemail message, and/or other live or recorded communications that provide speech, sound, and/or video messages to a user through a communication device. The private call blocking service can be hosted or executed by a computer system, such as a call handling system. In some embodiments, the computer system executing the private call blocking service can be located within and/or in communication with a communications network that routes a call and is in communication with the communication device that is the intended recipient of the call. The private call blocking service can be interacted with by a user or other input provider (e.g., an administrator, a customer, or other user using a user device or other non-generic device) to submit private call management data to the private call blocking service. The private call management data can be obtained, retrieved, or otherwise received by the private call blocking service and used by the private call blocking service to generate, update, alter, modify, apply or otherwise implement one or more custom private caller identification masks to a private call. A call may be considered a “private call” when caller identification data is blocked and/or requested to be blocked.

After a call is initiated by the calling party, the private call blocking service can detect that the call is being routed, sent or otherwise directed to a called device. In various embodiments, the call can be detected by the private call blocking service as the call is being routed or otherwise sent through and/or from a communications network, a network interface, an Internet protocol multimedia subsystem (“IMS”), a proxy call session control function (“PCSCF”), and/or other network entities in response to the call being placed for the called device. The private call blocking service can obtain, such as from a communication device, the network, or other network entity, caller identification (“caller ID”) data associated with the call, one or more custom private caller identification mask, and/or other data from one or more storage devices that may be relevant to the call. A custom private caller identification mask may be implemented by the private call blocking service when an incoming call from a calling device is determined to be a private call based on an indication to block caller ID data corresponding to the calling device and/or calling party. In some embodiments, the indication to block caller ID data can include, but should not be limited to, the presence of a caller identification blocking marker. As such, the phrase “custom private caller identification mask” can include instructions and/or data for transforming and/or reconfiguring private calls such that a dynamic alphanumeric string can be created by and/or implemented specifically for—and thus can be unique to—a called device for a particular calling party and/or calling device associated with a private call so as to enable and provide presentation of the dynamic alphanumeric string as an identity for the calling party and/or calling device when a private call from the calling party and/or calling device is received without revealing the caller ID data to the called device. Use of the custom private caller identification mask can also enable and provide selective blocking of a private call. The private call blocking service can create commands and/or trigger actions or requests to other entities, processors, or the like in order to screen, handle, and enable selective blocking of the calls.

The private call blocking service can use the caller identification data of an incoming call and the data from the storage devices to analyze the identity provided and/or portrayed by the calling party to determine how the incoming call is to be handled. The private call blocking service can provide selective blocking of private calls based on one or more instructions from a called device. In some embodiments, the one or more instructions can allow private calls to continue to the called party using a custom private caller ID mask and/or disallow one or more private calls irrespective of the use of a custom private caller ID mask. In some embodiments, the private call blocking service can block, reroute, and/or or alter handling one or more private calls from reaching one or more called devices by issuing a call handling command to the network. For example, in some embodiments, the call handling command can be issued to components of the network, such as the PCSCF of the IMS within the network, in order to effect the handling of the call, and/or, if specified, the command can, in some embodiments, be a block command that directs the network to drop, deny, or otherwise not fulfill the call to the called device.

According to one aspect of the concepts and technologies disclosed herein, a method is disclosed. In some embodiments, the method can include detecting, by a processor of a system, a call from a calling device directed to a called device. The method can further include determining, by the processor, that the call has a caller identification blocking marker, where the caller identification blocking marker indicates that a fixed label should be provided to the called device so as to prevent the called device from presenting caller identification data associated with the calling device. The method can further include obtaining, by the processor, a custom private caller identification mask instead of the fixed label. In some embodiments, obtaining the custom private caller identification mask can occur in response to determining that the call has the caller identification blocking marker. The method can further include providing, by the processor, the custom private caller identification mask to the called device for the call, where the custom private caller identification mask is presented to a called party associated with the called device without revealing the caller identification data.

In some embodiments, the method can also include accessing, by the processor, a private call blocking map, and identifying, by the processor, the custom private caller identification mask within the private call blocking map based on called party identification data associated with the called device. The caller identification blocking marker can indicate that the caller identification data should not be provided and/or presented to the called device. In some embodiments, the fixed label can be configured to indicate one or more of private, anonymous, unknown, or unavailable. In some embodiments, the method can also include replacing, by the processor, for the call, the fixed label with the custom private caller identification mask. In some embodiments, the method can also include receiving, by the processor, a customization message that comprises a mask alteration instruction that configures the custom private caller identification mask to present a unique private caller identification on the called device for calls made by the calling device.

In some embodiments, the method can also include determining, by the processor, that the called device has provided a selective private call block instruction for future calls corresponding to the custom private caller identification mask. In some embodiments, the private call block instruction can indicate that future calls from the calling device associated with the caller identification data should be prevented from reaching the called device. The future calls that should be prevented from reaching the called device may present the caller identification blocking marker. In some embodiments, the private call block instruction can prevent future calls from reaching the called device when the caller identification blocking marker is present or, in some embodiments, irrespective of whether the future calls have the caller identification blocking marker. In some embodiments, the method can also include preventing, by the processor, the future calls from being provided to the called device based on the selective private call block instruction. In some embodiments, the custom private caller identification mask is unique to the called device. In some embodiments, an instance of the custom private caller identification mask is associated with one or more of the calling device, the caller identification data, called identification data, and/or the called device so as to render the custom private caller identification mask unique to the called device, and such that a different private caller identification mask is used when another call from the calling device is directed to another called device.

According to another aspect of the concepts and technologies disclosed herein, a system is disclosed. The system can include a processor and a memory. The memory can store computer-executable instructions that, when executed by the processor, cause the processor to perform operations. The operations can include detecting a call from a calling device directed to a called device. The operations can include determining that the call has a caller identification blocking marker, wherein the caller identification blocking marker indicates that a fixed label should be provided to the called device so as to prevent the called device from presenting caller identification data associated with the calling device. The operations can include obtaining a custom private caller identification mask instead of the fixed label. In some embodiments, obtaining a custom private caller identification mask can occur in response to determining that the call has the caller identification blocking marker. The operations can include providing the custom private caller identification mask to the called device for the call, where the custom private caller identification mask can be presented to a called party associated with the called device without revealing the caller identification data.

In some embodiments, the operations can also include accessing a private call blocking map, and identifying the custom private caller identification mask within the private call blocking map based on called party identification data associated with the called device. In some embodiments, the fixed label is configured to indicate one or more of private, anonymous, unknown, or unavailable. In some embodiments, the operations can also include replacing, for the call, the fixed label with the custom private caller identification mask. In some embodiments, the operations can also include receiving a customization message that comprises a mask alteration instruction that configures the custom private caller identification mask to present a unique private caller identification on the called device for calls made by the calling device. In some embodiments, the operations can also include determining that the called device has provided a selective private call block instruction for future calls corresponding to the custom private caller identification mask. In some embodiments, the private call block instruction can indicate that future calls from the calling device associated with the caller identification data should be prevented from reaching the called device irrespective of whether the future incoming calls have the caller identification blocking marker. In some embodiments, the method can also include preventing the future calls from being provided to the called device based on the selective private call block instruction. In some embodiments, the custom private caller identification mask is unique to the called device.

According to yet another aspect, a computer storage medium is disclosed. The computer storage medium can have computer-executable instructions stored thereon. The computer-executable instructions can be associated with a private call blocking service of a communications network. When the computer-executable instructions are executed by a processor, the processor can perform operations. In some embodiments, the processor can be included in a computer system that supports the private call blocking service. The operations can include detecting a call from a calling device directed to a called device. The operations can further include determining that the call has a caller identification blocking marker, where the caller identification blocking marker indicates that a fixed label should be provided to the called device so as to prevent the called device from presenting caller identification data associated with the calling device. The operations can also include obtaining a custom private caller identification mask instead of the fixed label. In some embodiments, obtaining a custom private caller identification mask can occur in response to determining that the call has the caller identification blocking marker. The operations also can include providing the custom private caller identification mask to the called device for the call, wherein the custom private caller identification mask is presented to a called party associated with the called device without revealing the caller identification data.

In some embodiments, the operations can also include accessing a private call blocking map, and identifying the custom private caller identification mask within the private call blocking map based on called party identification data associated with the called device. In some embodiments, the fixed label is configured to indicate one or more of private, anonymous, unknown, or unavailable. In some embodiments, the operations can also include replacing, for the call, the fixed label with the custom private caller identification mask. In some embodiments, the operations can also include receiving a customization message that comprises a mask alteration instruction that configures the custom private caller identification mask to present a unique private caller identification on the called device for calls made by the calling device. In some embodiments, the operations can also include determining that the called device has provided a selective private call block instruction for future calls corresponding to the custom private caller identification mask. In some embodiments, the private call block instruction can indicate that future calls from the calling device associated with the caller identification data should be prevented from reaching the called device irrespective of whether the future calls have the caller identification blocking marker. In some embodiments, the operations can also include preventing the future calls from being provided to the called device based on the selective private call block instruction.

DETAILED DESCRIPTION

The following detailed description is directed to a private call blocking service that is configured to enable selective handling and blocking of private calls that withhold, block, or otherwise prevent caller identification (“caller ID”) data from being provided to a called device and presented to a called party via the called device. The private call blocking service can also be configured to enable customized private call identification of the private call through the use of a custom private caller ID mask such that the called device is instructed to present the custom private caller ID mask so as to enable the called party to distinguish between private calls. A calling party can provide caller ID data via a communication service available in analog and/or digital communication systems, as well as in internet protocol (“IP”) networks that support voice over Internet Protocol (VoIP) applications. Caller ID data is intended to provide identifying information (e.g., a name, telephone number, etc.) about the calling party to the called party through presentation of the caller ID data. The caller ID data can be provided by a communication device and/or network component associated with the calling party (referred to as the “calling device”) and directed to a communication device of the called party (referred to as the “called device”). In some embodiments, the caller ID data may be presented by the called device as an audio and/or visual presentation of identifying information associated with the calling party and/or calling device, such as through presentation by a user interface of a display on the called device, announcement via an audio speaker of the called device, and/or other presentation by the called device.

In some instances, the calling party may seek to block or prevent their caller ID data from being presented to the called party via the called device. For example, in some embodiments, the calling party may provide input that specifically instructs the calling device to place a call to the called device, but requests that the called ID data associated with the calling device and/or the calling party be blocked, withheld, or otherwise not provided to the called device. In some embodiments, the input to block caller ID data may precede the input of a contact address for the call, such as but not limited to, an input of “*67” preceding the input of a telephone number used to place the call, an input that toggles a “block caller ID” button on a user interface when placing an internet protocol (“IP”) call that provides an audio and/or video session, or a predefined input stored remotely from the calling device (e.g., in a data storage device of the network) that automatically triggers blocking of caller ID data when a call is placed by the calling device. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

When a call requests or otherwise indicates that the caller ID data associated with the calling device and/or the calling party should be blocked or otherwise not provided to the called device and/or called party, then the caller ID data included with the call will not be provided to the called device, and thus none of the caller ID data included with the call will be provided to and/or received and presented by the called device. Thus, in conventional systems, when caller ID data for the call is blocked or otherwise not provided to the called device, then the called device may not reveal the identity or any other information about the calling party and/or the calling device. Instead, in some embodiments where no caller ID data is provided to the called device, the called device may indicate or otherwise alert the called party about the call and provide call information via a fixed label on a display that may be presented as “PRIVATE,” “CALLER ID BLOCKED,” “ANONYMOUS,” “UNAVAILABLE,” “UNKNOWN CALLER,” “WIRELESS CALLER,” or any other information that does not provide distinguishable identification. By this, when a call from a calling device and/or calling party directed to a called device requests caller ID blocking or otherwise does not allow or provide caller ID data associated with the calling device and/or calling party to be provided to the called device, then the call may be considered and/or referred to as a “private call.” Without information to identify and/or distinguish the calling party associated with the private call, the called party may not be able to distinguish a calling party and/or a calling device that is legitimate, known, and/or innocuous from other calling parties who may be nefarious, deceptive, and/or illegitimate. Moreover, in some instances, the called party may know and trust different calling parties that each place private calls to the called device, but conventional systems may not allow the called party to identify, much less distinguish, the calling party corresponding with each private call.

Embodiments of the present disclosure provide a private call blocking service that can screen for private calls that indicate caller ID blocking, generate a custom private caller ID mask based on the caller ID data for the calling device and called ID data for the called device, and provide the custom private caller ID mask such that the called device is instructed to present the custom private caller ID mask that provides identification of the calling party and/or distinguishing information about the calling device and/or calling party corresponding to the private call. The private call blocking service can provide the custom private caller ID mask to the called device without providing the caller ID data to the called device for the private call. Thus, although the called device is not provided the caller ID data associated with the calling device and/or the fixed label, the custom private caller ID mask can distinguish and/or differentiate the private call so as to enable the called party and/or called device the opportunity to handle the private call uniquely and/or differently than other private calls from other calling devices. In some embodiments, the private call blocking service can handle each private call in a unique manner, such as by one or more of providing a custom private caller ID mask created specifically for the called device based on the caller ID data and called ID data of the calling device such that a customizable label is presented instead of the fixed label, selectively blocking one or more private calls from a called party, and/or performing another call handling action, such as but not limited to redirecting some or all private calls sent from any calling device to a voicemail system, or selectively routing private calls that are associated with caller ID data from a particular calling device to a voicemail system so as to prompt the calling party to leave a voicemail. In some embodiments, when a call handling action is implemented by the private call blocking service (e.g., during and/or in response to a redirect instruction that routes a private call to a voicemail system), the private call blocking service can provide a custom private caller ID mask to the called device to inform the called party that the call handling action was performed, where the custom private caller ID mask can be provided without the called device receiving the private call and/or the caller ID data associated with the calling device. In some embodiments, the private call blocking service can configure a custom private caller ID mask specifically for the private call so as to enable the called device to provide instructions as to how the current and/or future private calls should be handled (e.g., whether a call handling action should be performed).

For example, in some embodiments, the private call blocking service can enable (e.g., via the custom private caller ID mask) the called device to provide a selective private call block instruction to selectively block a private call corresponding to the custom private caller ID mask being presented by the called device. The private call blocking service can use the selective private call block instruction corresponding to the custom private caller ID mask that was presented to detect future private calls directed to the called device and which are associated with the caller ID data, calling device, and/or calling party in order to selectively block or otherwise prevented the private call from being provided to the called device and/or called party based on the selective private call block instruction. By this, the private call blocking service can allow some private calls to be provided to the called device using a custom private caller ID mask so long as an instance of the selective private call block instruction is not assigned or otherwise applied to private calls that would use the custom private caller ID mask. In some embodiments, the private call blocking service can impose a universal private call block instruction such that any private call that is intended for the called device will (or may) be blocked and prevented from reaching the called device unless the called device provides a selective private call block override instruction that instructs the private call blocking service to exempt, from the universal private call block instruction, private calls which are associated with certain caller ID data, a certain calling device, and/or a certain calling party. In some embodiments, the private call blocking service can configure a custom private caller ID mask that enables the called device to provide an instruction to prevent a future private call from reaching the called device and divert the future private call to a voicemail system such that the called party can screen an identity of the calling party associated with the future private call without the called device receiving the caller ID data associated with the calling device. These and other aspects of the concepts and technologies disclosed herein will be illustrated and described in more detail below.

While some of the subject matter described herein may occasionally be presented in the general context of program modules that execute in conjunction with the execution of an operating system and application programs on a computer system, those skilled in the art will recognize that other implementations may be performed in combination with other types of program modules. Generally, program modules include routines, programs, components, data structures, and other types of structures that perform particular tasks or implement particular abstract data types in response to execution on a processor. Moreover, those skilled in the art will appreciate that the subject matter described herein may be practiced with other computer system configurations, including hand-held devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, minicomputers, mainframe computers, and other particularized, non-generic machines.

Referring now toFIG. 1, aspects of an operating environment100for various embodiments of the concepts and technologies disclosed herein for providing and using a private call blocking service will be described, according to an illustrative embodiment. The operating environment100shown inFIG. 1includes a user device110operating in communication with and/or as part of a communications network (“network”)102. The operating environment100also includes an Internet Protocol multimedia (“IMS”) subsystem104, a proxy call session control function (“PCSCF”)106, an access point108, a calling device120, a communication network data store130, a call handling system150, a called device160, a communication device180, and a communication device190.

According to various embodiments, the functionality of the user device110may be provided by one or more server computers, desktop computers, mobile telephones, smartphones, tablet computers, laptop computers, smart watches, web browsers (e.g., browser-based implementations of communication devices), set-top boxes, vehicle computing systems, other computing systems, and the like. It should be understood that the functionality of the user device110can be provided by a single device, by two or more similar devices, and/or by two or more dissimilar devices. For purposes of describing the concepts and technologies disclosed herein, the user device110is described herein as a communication device, such as a smartphone. In some embodiments, the user device110can be embodied by an instance of a computing system or a communication device, which are discussed below with respect toFIG. 6andFIG. 7. It should be understood that this embodiment is illustrative, and should not be construed as being limiting in any way.

The user device110can execute an operating system112and one or more application programs such as, for example, a private call management application114. The operating system112can be a computer program or other computer-executable instructions for controlling the operation of the user device110. The private call management application114can be an executable program configured to execute on top of the operating system112to provide various functions as illustrated and described herein for interacting with and/or using a private call blocking service. According to various embodiments, the functionality of the private call management application114can be provided by a web browser, a web application, a website, a software as a service, and/or a standalone application. Thus, it can be appreciated that a web browser application can execute instructions to provide the functionality illustrated and described herein. Because the application programs can include other applications that are generally understood (e.g., mail programs, messaging programs, web browsing programs, standalone applications, combinations thereof, or the like), the example embodiment shown inFIG. 1should not be construed as being limiting in any way the concepts and technologies described herein. It is understood that the private call management application114may be stored, executed, accessed, and/or implemented from other devices within the operating environment100, such as but not limited to the calling device120, the called device160, the communication device180, the communication device190, or another device that may be accessed by a user. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

The private call management application114can be configured to interact with an application, a program, a software module (i.e., a defined set of callable computing instructions that configure a processor to perform one more operations), a service, or any other software such as a private call blocking service152to enable management, control, and/or use of the private call blocking service152and/or to interface with other entities to manage (or effect management of) the private call blocking service152. In the illustrated embodiment, the private call management application114can be used to interact with and/or control the private call blocking service152, though this may not necessarily be the case in all embodiments. The private call blocking service152can be a callable service executed and/or hosted by a computing system, such as the call handling system150. The call handling system150will be described in more detail below.

The private call management application114and the private call blocking service152can be configured to exchange various types of information with one another so as to provide, use, and/or control the private call blocking service152that can provide selective communication blocking in accordance with the concepts and technologies described herein. According to various embodiments, the private call management application114can be configured to create, collect, and/or transmit one or more instances of private call management data116to the private call blocking service152. In some embodiments, the private call management data116can include one or more instances of caller ID data, custom private ID data, called ID data, customer account data, other information, combinations thereof, or the like. According to various embodiments of the concepts and technologies described herein, a user or other entity can interact with the private call management application114and/or the private call blocking service152to create the private call management data116and/or the components thereof, each of which is described in more detail below. Thus, it can be appreciated that a customer or other user can use a device (e.g., the user device110, the calling device120, or other computing system) to interact with the private call blocking service152via a web portal, a web application, a standalone application, and/or other executable software provided by the private call management application114to create the private call management data116.

In some embodiments, the private call management data116can include customer account data that identifies a customer and/or network account that is associated with a user who accesses, subscribes, and/or otherwise uses to the private call blocking service152, such as but not limited to a called party161that corresponds to the called device160and/or a calling party121that corresponds to the calling device120. The customer may have a customer account or profile with a communications service provider associated with the network102, an application provider via a cloud app store, or other party that can provide communication, application, and/or processing services. In some embodiments, the private call management application114can allow a user to sign-up for the private call blocking service152, provide inputs to configure the private call blocking service152, check records regarding the effectiveness of the private call blocking service152, or otherwise interact with the private call blocking service152. In some embodiments, the private call management application114can execute on a called device (e.g., the called device160) to present one or more embodiments discussed with respect toFIGS. 2B-2D. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

In some embodiments, the private call management data116can include caller ID data (e.g., the caller ID data124), called ID data (e.g., the called ID data162), and custom private ID data (e.g., the custom private ID data140). A detailed discussion for each of caller ID data, called ID data, and custom private ID data is provided below. For purposes of the private call management data116, the private call management application114can allow a user to provide associations between caller ID data and called ID data, where these associations between instances of caller ID data and instances of called ID data can be stored as custom private ID data and used to update and configure an association map used by the private call blocking service152, such as a private call blocking map132. For example, a user can indicate that when calling party “A” sends a private call to called party “B,” then the private call blocking service152should be triggered and/or invoked to perform in a default manner and/or customized or predefined manner. In some embodiments, the user may indicate specifically when specific actions should be applied by the private call blocking service152, and/or the order in which the actions should be applied.

For example, in one embodiment, if a calling party is a doctor and the called party is a patient, the doctor may need to call the patient after hours from the doctor's personal phone. The doctor may not want to expose the caller ID data corresponding to the calling device being used to place the call because too much information may be revealed, such as a personal telephone number, home address, and the like. In this example, the doctor may provide an instance of the private call management data116that indicates when a private call is made from the doctor's calling device to any one of the doctor's patients, then the private call blocking service152should be invoked. In some instances, the doctor may provide a distinguishing label (e.g., through an instance of customized dynamic alphanumeric string of a custom private caller ID mask discussed below), such as “Dr. Smith,” that should be used to distinguish the private call as corresponding to the doctor without providing the patient's called device with the caller ID data from the doctor's calling device. In other instances, the doctor may not provide a distinguishing label but rather allow the private call blocking service152to assign one (e.g., “Private 00N” as discussed below with respect toFIG. 2D). Thus, in some embodiments, the private call management data116can allow the calling party and/or calling device to give authorization to the private call blocking service152to define an initial or default action that can be performed by the private call blocking service152in order to provide a distinguishing identity of a private call from the calling party/calling device to the called device and/or called party without providing some or all of the caller ID data corresponding to the called device. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

By way of another example, the calling party may be a nefarious organization who uses a calling device to make private calls in order to prey on susceptibilities of called parties. In this example, the called party may use the private call management application114to sign-up for the private call blocking service152and provide an instance of the private call management data116that instructs the private call blocking service152to trigger a private call action. For example, the private call management data116can indicate that for any call that is a private call incoming to the called device (i.e., where caller ID data is and/or is requested to be blocked, such as through the presence of a caller ID blocking marker), then the private call blocking service152should be invoked and a unique label should be applied to the private call, such as an instance of a custom private caller ID mask discussed in further detail below. In some instances, the custom private caller ID mask that is used can be unique and distinct to the calling device120and/or calling party121associated with the caller ID data124(and the called device160associated with the called ID data162) for the private call. The custom private caller ID mask can initially have a default unique label, such as discussed with respect to an instance of a dynamic alphanumeric string of a custom private caller ID mask shown inFIGS. 2B-2D. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

In some embodiments, the private call management data116can include other information. The other information can include other types of data that may be considered when the private call blocking service152is making decisions and determinations. Instances of other information can take the form of character strings, one or more rules, options, settings, or preferences for selectively blocking a private call, such as a private call122. For example, other information can include time and/or date parameters for which the private call blocking service152should be utilized, alert parameters (e.g., use of text messages, audio, video, e-mail, etc.), identifiers of which caller ID data and/or called ID data should invoke the use of the private call blocking service152, or other preferences. In some embodiments, the other information can include identifiers corresponding with information related to a party, but which might not typically be present in caller ID data and/or called ID data, such as information about other parties associated with the calling party121, calling device120, called party161, called device160(e.g., phone numbers, property addresses, email addresses, network addresses, or other information about known contacts, such as from an address book), organization information (e.g., identification of my boss, my assistant, etc.), family information (e.g., names and contact information for my son, my daughter, my wife, etc.), combinations thereof, or the like. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

As shown inFIG. 1, the operating environment100can include the calling device120that can be associated with and can correspond to a user that uses the calling device120, who is referred to as a calling party (e.g., the calling party121). Similarly, the operating environment100can include the called device160that can be associated with and can correspond to a user that uses the called device160, who is referred to as a called party (e.g., the called party161). The calling device120and/or the called device160can be embodied in various forms, such as but not limited to, a smart phone, a tablet, a computing system, a smart television, a smart wearable device, or any other communication device. The operating environment100also can include the communication device180and the communication device190. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way. A discussion of an embodiment of an instance of the calling device120, the called device160, the communication device180, and the communication device190is provided below with respect to a communication device700shown inFIG. 7. For clarity purposes only, the discussion of the operating environment will refer to an embodiment in which the calling device120, the called device160, the communication device180, and the communication device190are configured as an instance of a smartphone. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

In various embodiments, the calling device120can correspond or otherwise be associated with an instance of caller ID data, such as the caller ID data124. The caller ID data124can correspond and be associated with the calling party121. In some embodiments, the caller ID data124can be provided to the called device160in order to identify the calling device120and/or the calling party121. However, if the caller ID data124is provided to, and received by, the called device160, then the caller ID data124can be used by the called device160to place a return call to the calling device120. For example, the caller ID data124can include information about the calling device120and/or calling party121, such as one or more instances of a telephone number, a source network address (e.g., an IP address), an electronic mail address, a video and/or still image or visual representation, a physical address (e.g., a mailing address), a string corresponding to a moniker (e.g., a first name, last name, business title, role, etc.), a device serial number, a device model number, or other information that allows the called device160to call back, place, or otherwise establish a return call. By this, if the caller ID data124is provided to the called device160, then the caller ID data124would enable the called device160to extract destination address information (e.g., a phone number, email, IP address, etc. corresponding to the calling device120) from the caller ID data124to place a return call to the calling device120.

Because the caller ID data124may identify the calling device120and/or the calling party121and/or enable the called device160to send a return call to the calling device120, in some embodiments the calling device120may request and/or indicate that a call be handled as a private call. A private call can include any call that seeks to and/or provides a communication message and/or session to a called device with an indication and/or instruction that the caller ID data (e.g., the caller ID data124) associated with the private call be blocked, prevented from being sent, or otherwise not provided to the called device (e.g., the called device160) so as to prevent the called device from presenting some or all the caller ID data (e.g., name, phone number, email, etc.) to the called party and/or to prevent the called device from placing and/or engaging in a return call (e.g., from the called device160to the calling device120) based on the caller ID data associated with the private call. It is understood that a “call,” such as the call122, can include an audio call, a video call, an audio voicemail message, a visual voicemail message, and/or other live or recorded communications with data sessions that provide speech, sound, and/or video messages from the calling device120to the called party161via the called device160. In some embodiments, the call122can be and/or indicate an instruction to be handled as a private call when a request and/or indication is included with the call122, such as a caller ID blocking marker126discussed further below, so as to serve as an instruction that the caller ID data124should be prevented from being sent to, and received by, the called device160. Therefore, without the caller ID data124associated with the call122being received by the called device160, the called device160will not be able to place a return call to the calling device120based on the call122being provided to the called device160.

In various embodiments, the call122can be associated and correspond with and/or include the caller ID data124, a caller ID blocking marker, such as the caller ID blocking marker126, and called ID data, such as the called ID data162, associated with the called device160. The caller ID blocking marker126can include a flag, indicator, command, or any other instruction that represents a caller ID blocking request and informs a network entity (e.g., any device within the network102) and/or the call handling system150that the call122should be handled as a private call, and as such, the caller ID data124should not be provided to the called device160. It is understood that the caller ID blocking marker126is an embodiment used for example purposes only to convey that the calling device120and/or the calling party121seeks to block the caller ID data124from reaching the called device160. Therefore, the examples provided are for illustration purposes only, and should not be construed as limiting in any way.

In various embodiments, the called ID data162corresponds with the called device160and/or the called party161to which the call122is directed. The called ID data162can include information that is configured in a format substantially similar to the caller ID data124, with the distinction of the called ID data162pertaining to the called device160and/or the called party161. For example, the called ID data162can include a phone number, name, e-mail address, or other information corresponding to the called device160and/or the called party161so that the call122can be provided to the called device160so that the calling device120and the called device160can communicate. In the operating environment100shown inFIG. 1, the called ID data162corresponds with the called device160and the called party161because the call122is illustrated as being between the calling device120and the called device160. It is understood that, in some embodiments, the communication device180and the communication device190may also be participants of a call and thus may be considered to be a “called device” and/or a “calling device” in various embodiments. For example, the communication device180can include communication ID data182corresponding to and associated with the communication device180, and the communication device190can include communication ID data192corresponding to and associated with the communication device190. By this, in some embodiments, an instance of a call may include one or more of the communication ID data182and/or the communication ID data192if a call should include the communication device180and/or the communication device190, respectively. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

The operating environment100can include the network102that can communicatively couple one or more computing systems and/or communication devices, such as but not limited to, the user device110, the calling device120, the called device160, the communication device180, and the communication device190. In various embodiments, the network102can include one or more of a radio access network, an evolved packet core network, a core network, an IP-based network, a transport network, an optical transport network, a circuit switched network, such as publicly switched telephone network (“PSTN”), a cellular network, a mobile Wide Area Network, a combination thereof, or the like. In some embodiments, the operating environment100can include the access point108that can provide communicative coupling between one or more devices, such as the called device160, the call handling system150, and the network102. The access point108can provide wired and/or wireless communicative coupling and can include, but should not be limited to, one or more of a base transceiver station, a wireless router, a femtocell, an eNode B, a NodeB, a gNodeB (i.e., an access point that incorporates New Radio access technology, such as LTE Advanced and other 5G technology), a multi-standard metro cell node, a customer premise edge node (e.g., an optical network terminal), and/or other network nodes or combinations thereof that are capable of providing communication to and/or from the network102. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

In the embodiment illustrated inFIG. 1, the operating environment100can include the IMS104that can be included in, and/or communicatively coupled to, the network102. The IMS104can include the PCSCF106. The calling party121can direct the calling device120to place the call122that is intended for the called device160. According to various embodiments, the call122or other communications initiated or otherwise placed by the calling device120can occur and/or be controlled and supported via the IMS104for transmission and/or routing within and/or across the network102to another device (e.g., the called device160). According to various embodiments of the concepts and technologies described herein, the PCSCF106can route communications (e.g., the call122, a call handling command157, other calls (e.g., future calls129from the calling device120), and/or a call data record from, among, and/or between devices (e.g., the calling device120, the call handling system150, the called device160, the access point108, or other devices within the operating environment100) in accordance with various rules and/or in accordance with the private call blocking service152. Because the IMS104is generally understood, the IMS104will not be further described herein.

In various embodiments, the operating environment100can include the call handling system150that can execute, host, or otherwise support the private call blocking service152via one or more instances of a processing unit, such as a processor154. In embodiments, the call handling system150can include a non-generic computer system that can be configured by execution of the private call blocking service152. The call handling system150can include a data storage device, such as a memory156. The memory156can store at least a portion of the private call blocking service152and/or other information, such as a fixed label153. In some embodiments, the memory156can provide the communication network data store130, which is further discussed below. In some embodiments, the memory156can include volatile and/or non-volatile memory implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data disclosed herein. The memory156can be referred to as a “computer storage medium.” It is understood that, use of the terms “memory” and “computer storage medium” (and variations thereof, such as computer-readable storage medium) in the claims do not include, and shall not be construed to include, a wave or a signal per se and/or communication media.

The call handling system150can be in communication with one or more devices, such as but not limited to, the network102, the communication network data store130, the access point108, the calling device120, the user device110, the called device160, the communication device180, the communication device190, or any other computing system. In some embodiments, the call handling system150may be configured as a physical computing system (e.g., a server that supports a back-end cloud network, a removable dongle, an access point, a user equipment, etc.) and/or a virtual computing system (e.g., a virtual server or other virtual machine that is hosted by one or more computing systems). In some embodiments, the call handling system150can be communicatively located downstream of the network102and upstream of one or more devices involved in a call, such as the access point108and the called device160involved in the call122. The call handling system150can be configured according to an embodiment of a computer system discussed with respect toFIG. 6. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

In various embodiments, the private call blocking service152can be supported by and configure the call handling system150to perform one or more operations in handling the call122. It is understood that the use of the term “service” is intended to correspond with one or more network operations that support handling of network communications (e.g., the call122). Therefore, any use of the term “service” in the claims shall not be construed or interpreted as being directed to, involving, or otherwise including a judicial exception (e.g., an abstract idea) or any other non-patentable subject matter. In various embodiments, the private call blocking service152can include one or more of an application, a program, a software module (i.e., a defined set of callable computing instructions that configure a processor to perform one more operations), a script, a routine or any other computer-executable instructions that configure a processor (e.g., the processor154) to perform one or more operations and/or recitations discussed herein.

In an embodiment, a user may not have signed-up for the private call blocking service152or otherwise not authorized the use of the private call blocking service152for incoming calls that are marked as a private call. For example, in this embodiment, the call122may be placed by the calling device120and intended for the called device160. The call handling system150may detect that the call122is being sent or otherwise directed to the called device160and that the call122includes, has, or otherwise is associated with an indicator that the call122should be a private call, such as via the caller ID blocking marker126. In this embodiment, the call handling system150can analyze the called ID data162and determine that the called device160has not authorized the use of the private call blocking service152. In response to this determination, the call handling system150may determine that the caller ID data124should be blocked and not sent to the called device160based on the call122being a private call due to the presence of the caller ID blocking marker126. When the private call blocking service152is not invoked or activated, the call handling system150can prevent the caller ID data124from being sent to the called device160with the call122. The call handling system150can replace the caller ID data124with a fixed label, such as the fixed label153, that can be retrieved from the memory156. The fixed label153may be used for every instance of a private call that does not engage in the use of the private call blocking service152. As such, the fixed label153is not unique to the call and the called device for which it is applied, such as the call122and the called device160. The fixed label153can include a static alphanumeric string153A. Examples of the static alphanumeric string153A can include one or more of “private,” “anonymous,” “unknown,” “unknown caller,” “caller ID blocked,” “wireless caller,” “unavailable,” or any other generally applied string that applies irrespective of the caller ID data124and the called ID data162, and therefore is not unique to one or more of the called device160, the call122, the calling device120, the calling party121, or the called party161. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way. In this embodiment where the private call blocking service152is not invoked, the call122can be provided to the called device160without the caller ID data124, but with the fixed label153that can be configured with the static alphanumeric string153A. The fixed label153can instruct the called device160to present the static alphanumeric string153A to the called party161on a display164of the called device160to the called party161, such as in an embodiment discussed below with respect toFIG. 2A. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

In other embodiments of the present disclosure, the private call blocking service152may be invoked or otherwise authorized for use automatically. The private call blocking service152can be invoked or otherwise applied to any call irrespective of whether the calling party121, the calling device120, the called party161, the called device160, or any other device or party is aware of the private call blocking service152. At some point in time, the private call blocking service152can detect the call122from the calling device120directed to the called device160. For example, in some embodiments, the private call blocking service152can determine that the call122is being sent to and/or received from a device operating on the network102(e.g., a call routing server), a device operating on the IMS104(e.g., the PCSCF106), the called device160, the calling device120, combinations thereof, or the like. In some embodiments, this is accomplished by the private call blocking service152being executed on the call handling system150, which can be an intermediary between the called device160and the network102, thereby causing the private call blocking service152to handle, reconfigure, or otherwise act on the call122(e.g., by receiving the call122from the network102) before the call122reaches the called device160.

The private call blocking service152can analyze the call122to determine whether the call122corresponds or otherwise indicates that it should be treated as a private call. For example, the private call blocking service152can determine whether the caller ID data124should be blocked or otherwise be prevented from being sent to the called device160with the call122. In some embodiments, the private call blocking service152can determine this based on the presence of the caller ID blocking marker126that is provided, invoked, included, or otherwise indicated by the call122. In some embodiments, the private call blocking service152can determine that the call122has the caller ID blocking marker126, and therefore the private call blocking service152is instructed to prevent the called device160from receiving and/or presenting the caller ID data124associated with the calling device120, which in turn prevents the called device160from being able to place, attempt, or otherwise engage in a return call based on the caller ID data124itself being sent to the called device160. In some embodiments, the caller ID blocking marker126may be used to indicate and/or instruct the call handling system150to provide the fixed label153to the called device160. However, the private call blocking service152may block or prevent the fixed label153from being provided to the called device160for the call122, and instead authorize the use of a custom private caller identification mask (“custom private caller ID mask”), which are discussed below with respect to the communication network data store130.

In various embodiments, the private call blocking service152can access and utilize the communication network data store130. As used herein, the phrase “data store” refers to a data storage device such as a database, a data server, a mass data storage device, or other memory or computer readable medium. In the embodiment shown inFIG. 1, the functionality of a data store (e.g., the communication network data store130) can be provided by one or more databases, data storage device, server computers, desktop computers, mobile telephones, laptop computers, other computing systems, and the like. It should be understood that this example is illustrative and therefore should not be construed as being limiting in any way. The communication network data store130can include a call ID data pool134that corresponds with information pertaining to the handling of private calls by the private call blocking service152. For example, the communications network data store130can include one or more instances of caller ID data (e.g., the caller ID data124), one or more instances of called ID data (e.g., the called ID data162), the private call blocking map132, one or more instances of private call block instructions (e.g., a selective private call block instruction136, a universal private call block instruction137, and a universal private call block override instruction138), and one or more instances of custom private ID data (e.g., the custom private ID data140). In some embodiments, an instance of the custom private ID data140can correspond with a calling device (e.g., the calling device120) and/or a called device (e.g., the called device160) so as to facilitate the use of the private call blocking service152. For example, the custom private ID data140can include and/or be associated with one or more instances of a custom private caller identification mask (“custom private caller ID mask”) (e.g., a custom private caller ID mask A142A, a custom private caller ID mask B142B, and a custom private caller ID mask N142N), where each instance of a custom private caller ID mask (e.g., the custom private caller ID mask A142A) can be uniquely generated for, and provided to, the called device (e.g., the called device160) based on the particular caller ID data (e.g., the caller ID data124), the calling device (e.g., the calling device120), the called ID data (e.g., the called ID data162), and/or the called device (e.g., the called device160) associated with the private call directed to the called device (e.g., the call122having the caller ID blocking marker126that is being sent to the called device160).

In various embodiments, the private call blocking map132can provide data mapping and pointers to the custom private ID data140so as to identify associations between one or more of the caller ID data124, the called ID data162, and the custom private ID data140(e.g., one or more instance of a custom private caller ID mask discussed below). For example, the private call blocking service152can access the private call blocking map132and use the called ID data162and/or the caller ID data124to determine whether a custom private caller ID mask has been created for presentation on the called device160when a call (e.g., the call122) from the calling device120directed to the called device160is detected. In some embodiments, the private call blocking service152can determine that the call122is from the calling device120based on the caller ID data124, and that the call122is directed to the called device160based on the called ID data162. Based on these determinations, the private call blocking service152can use the private call blocking map132to identify which instance of a custom private data mask should be used. For example, the private call blocking service152can determine that based on (or because) the call122is sent from the calling device120with the caller ID data124and is directed towards the called device160associated with the called ID data162, then the private call blocking map132indicates that the custom private caller ID mask A142A should be used to block the caller ID data124and be provided, instead of the caller ID data124, along with the call122to the called device160.

In various embodiments, each instance of a custom private caller identification mask (e.g., the custom private caller ID masks142A-142N) may be unique for, and distinctly provided to, a specific called device. In some embodiments, a separate instance of the custom private ID data140may correspond to one called device, such as one unique instance of the custom private ID data140that is specifically configured for each of the called device160, the communication device180, and the communication device190. By way of example, in an embodiment, the called device160can be the recipient and intended target destination of the call122. The custom private ID data140illustrated inFIG. 1may have a plurality of custom private caller ID masks (e.g., the custom private caller ID masks142A-142N) that are reserved for the called device160and are distinct and unique from each other because each custom private caller ID mask is only used and provided to the called device160when a private call is from a certain calling device. Therefore, in an embodiment, if there are three instances of a custom private caller ID mask, then each of the three instances of the custom private caller ID masks are reserved for the called device, but only one instance of the custom private caller ID mask from the three instances is provided to the called device160based on the calling device and caller ID data that is determined to correspond with the incoming private call. For example, as shown inFIG. 1, the call122may have been placed by the calling device120and therefore the caller ID data124corresponds with the calling device120. The private call blocking service152can use the private call blocking map132to determine that when the call122is from the calling device120and directed to the called device160(based on the caller ID data124and the called ID data162associated with the call122), then the custom private caller ID mask A142A should be used and provided to the called device160instead of the fixed label153. However, if the private call blocking service152detects another private call determined to be from the communication device180and directed to the called device160(based on the other private call being associated with the communication ID data182of the communication device180and the called ID data162of the called device160), then the custom private caller ID mask B142B should be used and provided to the called device160instead of the fixed label153. Similarly, if yet another private call is made and is determined to be from the communication device190and directed to the called device160(based on the other private call being associated with communication ID data192of the communication device190and the called ID data162of the called device160), then the custom private caller ID mask N142N should be used and provided to the called device160instead of the fixed label153. By this, each instance of a custom private caller ID mask (e.g., the custom private caller ID masks142A-142N) may be uniquely generated, customized, and/or implemented for private calls to the called device160so as to enable the called device160to distinguish between private calls, to enable selective private call blocking such that a private call from one calling party can be blocked without necessarily blocking all incoming private calls, and to abide by the request of the calling device120and/or calling party121not to provide the caller ID data124to the called device160(as indicated by the presence of the caller ID blocking marker126). An example of how each instance of a custom private caller ID mask can be presented with distinct visual user interfaces is shown and will be discussed with respect toFIGS. 2B-2D. It is understood that use of the term “N” refers to an arbitrary number of instances that may vary depending on how many instances of that component are in existence. As such, although a certain number of instances may be illustrated, it is understood that number shown is for illustration purposes only and therefore should not be construed as limiting in any way.

In various embodiments, each instance of caller ID data (e.g., the caller ID data124) can correspond with a plurality of private caller ID masks, where each private caller ID mask of the plurality of private caller ID masks is associated with a different, particular called device. As such, when the same calling device places private calls to different called devices, each of the different called devices will receive, from the private call blocking service152, a different custom private caller ID mask that is unique to that called device for the private call that is received, and therefore each instance of a custom private caller ID mask may be configured differently based on the association between the caller ID data and the particular called ID data for the particular called device.

In various embodiments, each instance of a custom private caller ID mask (e.g., the custom private caller ID masks142A-142N) can have a dynamic alphanumeric string143that can be configured based on the caller ID data of the calling device and the called ID data of the called device. For example, in an embodiment, the custom private caller ID mask A142A can include the dynamic alphanumeric string143that can be provided to the called device160for the call122. The dynamic alphanumeric string143of the custom private caller ID mask A142A can be provided to the called device160for the call122(that is determined to be a private call), replacing the static alphanumeric string153A of the fixed label153that (if the private call blocking service152was not in use) may have previously been provided along with the call122instead of the caller ID data124. Therefore, instead of the called device160being instructed to present the static alphanumeric string153A for every private call irrespective of the caller ID data124corresponding to the calling device120for the call122, the private call blocking service152can provide the custom private caller ID mask A142A to the called device160for the call122and instruct the called device160to present the dynamic alphanumeric string143. Embodiments of the dynamic alphanumeric string143are shown and discussed with respect toFIGS. 2B-2D. In various embodiments, the dynamic alphanumeric string143can be configured to conform to a defined maximum number of characters (e.g., letters, numbers, symbols, etc.), such as a maximum of fifteen characters. However, this may not be the case in every embodiment. In some embodiments, the dynamic alphanumeric string143may be customizable and/or (re)configured based on input from one or more users, such as input from the called party161, as discussed below with respect to an instance of a mask alteration instruction. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way. Further discussion of embodiments of a custom private caller ID mask and a dynamic alphanumeric string143is provided below with respect toFIGS. 2B-2D.

In an embodiment, information from an instance of a custom private caller ID mask (e.g., the custom private caller ID mask A142A) can be applied and/or saved to one or more data fields that are included in an address book of the called device (e.g., the called device160). For example, the custom private caller ID mask A142A can include instructions that direct the called device160to store the dynamic alphanumeric string143in a data field of an address book of the called device160. The address book may also be referred to as a contact list. The dynamic alphanumeric string143does not contain a telephone number or other information that supports and/or facilitates placing and/or engaging in an outgoing call back from the called device160to the calling device120. As such, any and/or all data fields of an address book of the called device160may be populated by information provided by the custom private caller ID mask A142A, as long as the data field does not permit an outgoing and/or return call to the private caller (e.g., the calling party121corresponding to the calling device120).

In various embodiments, the private call blocking service152can provide the custom private caller ID mask A142A and the call122to the called device160without providing or otherwise sending the caller ID data124associated with the calling device120. By this, the custom private caller ID mask A142A does not allow the called device160to establish, engage, or otherwise place a return call to the calling device120based on the custom private caller ID mask A142A. The instance of the custom private caller ID mask being sent (e.g., the custom private caller ID mask A142A) can instruct the called device160to present the dynamic alphanumeric string143to the called party161via the display164of the called device160. In some embodiments, the custom private caller ID mask (e.g., the custom private caller ID mask A142A) does not reveal some and/or any of the caller ID data (e.g., the caller ID data124) that was initially sent or associated with the call122. In some embodiments, the dynamic alphanumeric string143that is presented by the called device160may have a default unique label for the called device160, such as “Private 00N” shown inFIG. 2B, where “N” refers to a number uniquely assigned to the calling device120and/or caller ID data124. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

In some embodiments, when the called device160receives the call122and the custom private caller ID mask (e.g., the custom private caller ID mask A142A), the custom private caller ID mask A142A can present one or more buttons and/or options on the display164, such as shown inFIGS. 2B-2D. The custom private caller ID mask (e.g., the custom private caller ID mask A142A) can enable the called party161to provide input as to whether a private call (e.g., the call122) should be accepted, denied, blocked, or another user-defined action. In some embodiments, the called party161can provide input that corresponds with a selective private call block instruction, such as the selective private call block instruction136. For example, the called party161can provide input to the display164of the called device160that causes the called device160to generate an instance of the selective private call block instruction136. In some embodiments, the button and/or option for generating the selective private call block instruction136can be provided by an instance of the private call management application114that may be executing in the foreground or background of the called device160. Therefore, when the called party161wants to selectively block incoming private calls (e.g., the call122) that correspond with a custom private caller ID mask (e.g., the custom private caller ID mask A142A) (and therefore also correspond and are associated with the caller ID data124despite the caller ID data124not being provided with the call122), then the selective private call block instruction136can be provided to the private call blocking service152. When the private call blocking service152receives the selective private call block instruction136that is based on the custom private caller ID mask (e.g., the custom private caller ID mask A142A) and/or the private call (e.g., the call122), then the private call blocking service152can associate the custom private caller ID mask A142A with the caller ID data124and block or otherwise prevent future calls that are private calls and correspond with the caller ID data124and/or are otherwise incoming from the calling device120. It is understood that the phrase “future call(s)” and/or “subsequent call(s)” refers to an incoming call that is sent or otherwise attempted to be established from the calling device120(or is otherwise associated with the caller ID data124) after the private call that corresponded or otherwise instigated the selective private call block instruction136(e.g., the call122). Put differently, a future call and/or subsequent call can be any incoming private call that is being sent to the called device160at a point later in time than the initial private call (e.g., the call122) that caused the selective private call block instruction136to be sent to the private call blocking service152. For example, if the call122is a private call that causes the private call blocking service152to provide the custom private ID mask A142A to the called device160, and in response to presenting the custom private caller ID mask A142A by the called device160the selective private call block instruction136is sent to the private call blocking service152, then at a point later in time, the calling device120may place a future call129(also referred to as a subsequent call) to the called device160, where the future call129can provide an instance of the caller ID data124and request to be a private call (e.g., via the presence of an instance of the caller ID blocking marker126). The private call blocking service152can determine that the called device160has provided the selective private call block instruction136for one or more of the caller ID data124, calling device120, and/or the custom private caller ID mask A142A, and in response, can prevent the future call129from being provided to the called device160based on the selective private call block instruction136. Further discussion of the selective private call block instruction136is provided below with respect toFIGS. 2B-2D.

In some embodiments, the called party161can provide input to the called device160based on the custom private caller ID mask corresponding with a private call (e.g., the custom private caller ID mask A142A corresponding with the call122). For example, the input may prompt or cause the called device160to send a universal private call block instruction, such as the universal private call block instruction137, and/or a universal private call block override instruction, such as the universal private call block override instruction138, to the private call blocking service152, where the universal private call block instruction137and the universal private call block override instruction138can be associated with and correspond to private calls that use a custom private caller ID mask (e.g., the call122that corresponds with the custom private caller ID mask A142A) directed to the called device160. In an embodiment, the universal private call block instruction137can instruct the private call blocking service152to prevent one or more or all private calls from reaching or otherwise being sent to the called device160unless the universal private call block override instruction138is provided, where the universal private call block override instruction138exempts a private call from being automatically blocked and prevented from reaching the called device160. In some embodiments, an instance of the universal private call block override instruction138can be associated with a custom private caller ID mask, and thus also be associated with an instance of caller ID data (e.g., the custom private caller ID mask A142A that is associated with the caller ID data124). An instance of the universal private call block instruction137can instruct the private call blocking service152that private calls are not to be provided to the called device160unless the universal private call block override instruction138is provided, where the universal private call block override instruction138can indicate authorization to allow one or more custom private caller ID mask (e.g., the custom private caller ID mask A142A) to be used for the corresponding private call. As such, in an embodiment, when a universal private call block instruction137is provided by the called device160or otherwise associated with the called ID data162, then private calls may be prevented from reaching the called device160unless the called device160also provides the universal private call block override instruction138that identifies one or more custom private caller ID mask that are allowed to be provided to the called device160. Further discussion of the universal private call block instruction137and the universal private call block override instruction138are discussed below with respect toFIG. 2C.

In various embodiments, the private call blocking service152can enable the called device160to customize a custom private caller ID mask for a private call (e.g., the custom private caller ID mask A142A for the call122) to generate a unique private caller ID to be used in place of a default label assigned to the dynamic alphanumeric string143of the custom private caller ID mask provided for the private call. In various embodiments, each called device that utilizes the private call blocking service152can generate a unique private caller ID for each instance of a custom private caller ID mask that is received for different private calls. For example, when the custom private caller ID mask A142A is initially provided to the called device160, the dynamic alphanumeric string143may be initially configured with a first string of characters that is unique to the caller ID data124, such as “private 00N” (where “N” is configured uniquely for the calling device120) which is shown and discussed with respect toFIGS. 2B-2D. The called party161can provide input that generates a unique private caller ID174so as to customize the dynamic alphanumeric string143of the custom private caller ID mask A142A corresponding to the caller ID data124and the calling device120. Similarly, when the calling device120sends a private call to another called device, that other called device may receive a different, unique instance of a custom private caller ID mask than the custom private caller ID mask A142A, and the other called device may provide a different unique private caller ID that corresponds to the calling device120. As such, the different called devices may be provided with different custom private caller ID masks for private calls that are coming from the same calling device120, and each called device can customize the unique custom private caller ID mask that they receive through a different unique private caller ID. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

In some embodiments, the private call blocking service152can allow the called device160to generate a customization message170that includes a mask alteration instruction172, where the mask alteration instruction172can include the unique private caller ID174. The private call blocking service152can receive the customization message170in response to providing the custom private caller ID mask A142A to the called device160for the call122. The private call blocking service152can extract the mask alteration instruction172and (re)configure the corresponding custom private caller identification mask (e.g., the custom private mask A142A) by modifying the dynamic alphanumeric string143so as to present the unique private caller ID174for the call122and for any future private calls associated with the caller ID data124directed to the called device160. The private call blocking service152can save and store the custom private caller ID mask A142A that has been modified and/or updated with the unique private caller ID174so as to be made available for use during a future call (e.g., the future call129). As such, the next time that the future call129is determined to be a private call that is sent by the calling device120to the called device160, and thus the custom private caller ID mask A142A is to be used for the call122instead of the fixed label153, then the custom private caller ID mask A142A provided to the called device160will present the unique private caller ID174(that was provided by the called device160and/or calling party161) via the dynamic alphanumeric string143for the future call129. Further discussion of an embodiment of the unique private caller ID174is shown and discussed with respect toFIGS. 2B-2D.

In an embodiment, if the call122had been placed by the communication device180and/or the communication device190and directed to the called device160(instead of the calling device120placing the call122), then the private call blocking service152may have analyzed the private call blocking map132and provided, to the called device160, the custom private caller ID mask B142B based on the communication ID data182(corresponding to the communication device180) or the custom private caller ID mask N142N based on the communication ID data192(corresponding to the communication device190). In an embodiment, the called device160can customize the custom private caller ID mask B142B by providing, via an instance of a customization message and a mask alteration instruction, a unique private caller ID184to the private call blocking service152so that the private call blocking service152can reconfigure the custom private caller ID mask B142B based on the mask alteration instruction, and in turn cause the unique private caller ID184to be presented in the custom private caller ID mask B142B during future private calls from the communication device180to the called device160. Similarly, in an embodiment, the called device160can customize the custom private caller ID mask N142N corresponding to the communication device190by providing, via an instance of a customization message and a mask alteration instruction, a unique private caller ID194to the private call blocking service152so that the private call blocking service152can reconfigure the custom private caller ID mask N142N based on the mask alteration instruction, and in turn cause the unique private caller ID194to be presented in the custom private caller ID mask N142N during future private calls from the communication device190to the called device160. An example of an embodiment of concepts and technologies discussed herein is provided below with respect toFIGS. 2C-2D. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

It is understood that an instance of a unique private caller ID that reconfigures and is used in place of an instance of a custom private caller ID mask (e.g., the unique private caller ID174associated with the custom private caller ID mask A142A, the unique private caller ID184associated with the custom private caller ID mask B142B, and/or the unique private caller ID194associated with the custom private caller ID mask N142N) does not enable or otherwise allow the called device (e.g., the called device160) to place, establish, and/or engage in a return call to the calling device (e.g., the calling device120). It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

In various embodiments, the private call blocking service152can issue a call handling command, such as the call handling command157, for a private call (e.g., the call122) based on an instruction from the called device160(e.g., the selective private call block instruction136). For example, in some embodiments, the private call blocking service152can receive the selective private call block instruction136that was generated based on the custom private caller ID mask A142A corresponding to the private call (e.g., the call122). The selective private call block instruction136can instruct the private call blocking service152to block or otherwise prevent a private call (e.g., the call122) and future calls (e.g., the future call129) associated with the caller ID data corresponding with the custom private caller ID mask (e.g., the caller ID data124of the calling device120corresponding with the custom private caller ID mask A142A) from reaching or otherwise being sent to the called device160. The call handling command157can be based on the instruction (e.g., the selective private call block instruction136). For example, in response to determining that the selective private call block instruction136is associated with or otherwise pertains to a private call (e.g., the call122and/or the future call129) from the calling device120having the caller ID data124, then the call handling command157can be generated, and the call handling command157can instruct the network102to drop, block, or otherwise prevent the private call (e.g., the call122and/or the future call129) from reaching or otherwise being sent to the called device160. The call handling command157can be provided to the network102from which the call122was routed from, received, and/or detected by the private call blocking service152.

According to various embodiments of the concepts and technologies described herein, the private call blocking service152can provide the call handling command157to the PCSCF106of the IMS104associated with the network102, and the PCSCF106is caused to act in response to the call handling command157to effect a call handling action. For example, the PCSCF106can, based on the call handling command157, perform a call handling action that can include, but should not be limited to, one or more of dropping the private call (e.g., by preventing or blocking the call122and/or the future call129from reaching the called device160and/or disconnecting the call122and/or the future call129from the network102), informing the calling device120that the private call (e.g., the call122and/or the future call129) cannot be completed, informing the called device160that the call122was attempted from private caller (e.g., the calling device120associated with the caller ID data124), diverting the private call away from the original intended recipient (i.e., divert the call away from the called device160) and to an (un)associated target (not shown), such as an automated response service or other system of the network102, or another action that can be defined by the call handling system150and/or the called device160via the private call management application114.

In some embodiments, the private call blocking service152can configure a custom private caller ID mask (e.g., the custom private caller ID mask A142A) so as to instruct the called device160to present an option (e.g., a button among private call ID options) to generate a redirect instruction177to prevent or block a future private call (e.g., the future call129) from reaching the called device160and divert, route, or otherwise redirect the future private call (e.g., the future call129) to a voicemail system (which may be provided by PCSCF106and/or IMS104) such that the called party160can screen an identity of the calling party121associated with the future private call (e.g., the future call129) without the called device160receiving the caller ID data124associated with the calling device120. It is understood that one or more buttons shown with respect toFIGS. 2B-2D(e.g., the selective universal private block button206) can be provided by a custom private caller ID mask (e.g., the custom private caller ID mask A142A) such that in response to user input that triggers the selective universal private block button206, the selective universal private block button206causes the called device160to create the redirect instruction177. In some embodiments, the redirect instruction177can be included in an instance of the customization message170. In response to receiving the redirect instruction177based on the custom private caller ID mask A142A provided to the called device160, the private call blocking service152can generate and configure an instance of the call handling command157to effect a call handling action in accordance with the redirect instruction177, such as configuring the call handling command157to reroute or otherwise redirect one or more (or all) future private calls (e.g., the future call129) associated with the caller ID data124to a voicemail system (e.g., provided by the IMS104) such that the called device160is prevented from receiving the future private calls and prevented from receiving the caller ID data124. In some embodiments, when a call handling action is implemented by the private call blocking service152(e.g., while and/or in response to issuing the call handling command157based on the redirect instruction177that redirects and routes a future private call to a voicemail system), the private call blocking service152can provide the corresponding custom private caller ID mask (e.g., the custom private caller ID mask A142A) to the called device160and the custom private caller ID mask A142A can be configured to present the call handling action associated with the call handling command157on the called device160so as to inform the called party161that the call handling action was performed (e.g., configure the dynamic alphanumeric string143with a string of characters that presents “private call blocked and routed to voicemail”), where the custom private caller ID mask (e.g., the custom private caller ID mask A142A) can be sent to the called device160without the called device160being provided with (i.e., without the called device160receiving) the future private call (e.g., the future call122) or the caller ID data124associated with the calling device120. In some embodiments, selective private call block instruction136can include the redirect instruction177such that when the private call block instruction is received by the private call blocking service152, the redirect instruction177embedded in the selective private call block instruction can also be received. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

In some embodiments, in response to the private call blocking service152creating the call handling command157based on an instruction from the called device160(e.g., the selective private call block instruction136, the universal private call block instruction137, the universal private call block override instruction138, and/or the redirect instruction177), the call handling command157can be sent to another entity, such as the PCSCF106that can divert, redirect, reroute, drop, block, or otherwise prevent the call122from reaching the called device160and perform a call handling action in accordance with the call handling command157(e.g., routing the future call129to a voicemail system while providing the custom private caller ID mask A142A to the called device160). In some embodiments the call handling command157can be passed to another network entity, such as a processor, a messaging platform, an administrator device, a voicemail system, a call data record server, a usage server, or the like in addition to, or instead of, being passed to the PCSCF106. One or more network entities can perform various actions, trigger various generation of call records, and/or process the call handling command157according to the instructions contained therein. Thus, it can be appreciated that the other network entity can include a short message service center (“SMSC”), multimedia message service center (“MMSC”), an email server, a messaging platform, or the like, which can generate, trigger, and/or send one or more messages to various recipients in response to receiving the call handling command157. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

It is understood thatFIG. 1illustrates an instance of one network102, one IMS104, one PCSCF106, one access point108, one user device110, one operating system112, one private call management application114, one private call management data116, one caller ID data124, one calling device120, one calling party121, one call122, one future call129, one communication network data store130, one private call blocking map132, one call ID data pool134, one selective private call block instruction136, one universal private call block instruction137, one universal private call block override instruction138, one custom private ID data140, one custom private caller ID mask A142A, one dynamic alphanumeric string143, one custom private caller ID mask B142B, one custom private caller ID mask N142N, one call handling system150, one private call blocking service152, one fixed label153, one static alphanumeric string153A, one call handling command157, one processor154, one memory156, one called device160, one called party161, one called ID data162, one display164, one customization message170, one mask alteration instruction172, one unique private caller ID174, one redirect instruction177, one communication device180, one communication ID data182, one unique private caller ID184, one communication device190, one communication ID data192, and one unique private caller ID194. It should be understood, however, that various implementations of the operating environment100can include zero, one, or more than one of these elements of the operating environment100shown inFIG. 1. As such, the illustrated embodiment of the operating environment100should be understood as being illustrative and should not be construed as being limiting in any way.

Turning now toFIG. 2A, an embodiment of a user interface (“UI”) diagram showing an example screen display of an incoming private call without the use of the private call blocking service152will be discussed, according to an illustrative embodiment of the concepts and technologies described herein.FIG. 2Ashows a screen display200, which can be generated by a communication device, such as the called device160, in response to receiving a private call, such as the call122. In the embodiment shown inFIG. 2A, the private call blocking service152may not have intervened to provide a custom private caller ID mask to the called device160, but instead sent a private call (e.g., the call122) to the called device without sending the caller ID data124and without using a custom private caller ID mask. As such, the private call blocking service152may have sent an instance of the fixed label153, which instructs the called device160to present the static alphanumeric string153A via the display164. In the example shown inFIG. 2A, the fixed label is configured such that the static alphanumeric string153A presents “private incoming call” without revealing any further information or distinguishing characteristics about the private call (e.g., the call122) being received by the called device160. In some embodiments, the fixed label153may be provided to the called device160whenever an instance of a custom private caller ID mask is not provided or sent by the private call blocking service152. The screen display200can also include an instance of an accept button204and an instance of a decline button202that can be presented on the display164of the called device160. The called party161can provide input corresponding to the accept button204that enables the call122to be accepted, or can provide input corresponding to the decline button202that denies the call122such that the call122is not completed. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

Turning now toFIGS. 2B-2D, various instances of a user interface (“UI”) diagram showing an example screen display for providing selective private call blocking so as to interact with the private call blocking service152will be discussed, according to an illustrative embodiment of the concepts and technologies described herein.FIG. 2Bshows an example screen display250, which can be generated by a communication device (e.g., the called device160) in response to receiving an instance of a custom private caller ID mask for a private call (e.g., the custom private caller ID mask A142A for the call122). In the embodiment shown inFIG. 2B, when the call122is sent to the called device160, the called device160can present the custom private caller ID mask A142A via the display164. The called device160can present an instance of the accept button204and an instance of the decline button202on the display164. The custom private caller ID mask A142A can include an instance of the dynamic alphanumeric string143. In the example embodiment shown inFIG. 2B, the dynamic alphanumeric string143presents “PRIVATE 00N”, where “N” refers to a number assigned by the private call blocking service152as a default unique label for an instance of the custom private caller ID mask (e.g., the custom private caller ID mask A142A) corresponding to the calling device120and the caller ID data124. It is understood that the character “N”, and thus entire instance of the dynamic alphanumeric string143included in the custom private caller ID mask A142A can be unique to, and distinctly generated for, use when private calls are provided from the calling device120to the called device160.

For example, in an embodiment, the calling device120that made the call122was determined by the private call blocking service152to correspond with the caller ID data124and thus the custom private caller ID mask A142A. In an embodiment, the custom private caller ID mask A142A may present “PRIVATE 008” each time a private call (e.g., the call122) is received by the called device160. If another calling party used another calling device to place another private call to the called device160, then the private call blocking service152would provide a different instance of a custom private caller ID mask that may read “PRIVATE 002” for every instance the another calling device makes a private call to the called party. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way. Further discussion of embodiments that enable distinction and distinguishment between private calls to enable selective private call blocking is shown and discussed with respect toFIGS. 2C-2D.

In various embodiments, an instance of a custom private caller ID mask (e.g., the custom private caller ID mask A142A) does not enable the called device160to instantiate or initiate a return call to the calling device120based on the corresponding dynamic alphanumeric string included therein (e.g., the dynamic alphanumeric string143included in the custom private caller ID mask A142A). However, an instance of a custom private caller ID mask (e.g., the custom private caller ID mask A142A) can enable selective blocking of a private call (e.g., the call122) via generation of an instruction (e.g., the selective private call block instruction136) to block future private calls from a calling device120and/or a calling party121based on associating the instance of the caller ID data with the instance of the custom private caller ID mask that corresponded with the selective private call block instruction (e.g., the caller ID data124associated with the custom private caller ID mask A142A that prompted or otherwise corresponded with called device sending the selective private call block instruction136). For example, the custom private caller ID mask A142A can include and present a selective private call block button206, which can be presented on the display164to read “Block private calls from this caller” in the example shown inFIG. 2B, and also shown inFIGS. 2C-2D. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way. As such, the selective private call block button206may present different text in various embodiments. The selective private call block button206can, when triggered or toggled by input from the called party161, generate an instance of the selective private call block instruction136that is sent to the private call blocking service152. The selective private call block instruction136can indicate or otherwise identify an association with the custom private caller ID mask A142A. When the selective private call block instruction136is sent to the private call blocking service152in response to a custom private caller ID mask being provided with a private call instead of the caller ID data being provided (e.g., the custom private caller ID mask A142A being provided with the call122instead of the caller ID data124), the private call blocking service152can use to the private call blocking map132to identify the caller ID data124, and in turn assign the selective private call block instruction136to the caller ID data124and the custom private caller ID mask A142A. By this, when a future call (which is a private call) from the same calling device is detected (e.g., upon detection of the future call129having the caller ID data124from the calling device120and an instance of the caller ID blocking marker126), then the private call blocking service152can block, redirect, or otherwise prevent the future call129from being provided to the called device160based on the selective private call block instruction136.

In some embodiments, an instance of the custom private caller ID mask (e.g., the custom private caller ID mask A142A) can include a private call ID options button208. The private call ID options button208, when triggered or toggled, can allow the called party161to customize the custom private caller ID mask A142A and/or provide private call block instructions, embodiments of which are further discussed with respect toFIGS. 2C-2D. In some embodiments, when the called party161provides input that toggles, triggers, or otherwise corresponds with the private call ID options button208, another screen display can be presented, such as an embodiment shown with respect to theFIGS. 2C-2Dwhich are discussed below. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

As shown inFIG. 2C, an example screen display252is shown according to an embodiment, where the screen display252may be generated in response to the called party161providing input corresponding to the private call ID options button208shown inFIG. 2B. In an embodiment, the called device160can provide an instance of private call ID options that can configure and/or customize the custom private caller ID mask A142A. For example, in an embodiment, when the calling device120associated with the caller ID data124sends the private call (e.g., the call122) to the called device160, the custom private caller ID mask A142A may present a dynamic alphanumeric string143′ that states “PRIVATE 005”. In this embodiment, at least the first time that the calling device120places a private call to the called device160, the custom private caller ID mask A142A may present “PRIVATE 005” as the dynamic alphanumeric string143′. It is understood that the dynamic alphanumeric string143′ is an embodiment of the dynamic alphanumeric string143and used for illustration purposes only. In an embodiment, the called party161may answer the private call (e.g., the call122) that presents “PRIVATE 005” using the private custom ID mask A142A and determine that the calling party121is someone known and/or otherwise trusted, such as for example, a family member, a business associate, or any other person. Although the calling party121may be known to the called party161, the calling party121may not be authorized to reveal the caller ID data corresponding with the calling device (e.g., the caller ID data124corresponding with the calling device120). For example, if the calling party121is the president of the United States calling from the phone in the oval office, then the calling device120would be the oval office phone and the caller ID data124corresponding to the calling device120may not be authorized or otherwise allowed to be revealed to the called party161and/or the called device160. However, the called party161may want to be able to distinguish private calls that are from known callers and/or otherwise desired, from unwanted private calls that are not desired.

To distinguish and provide selective identification of private calls without possessing or revealing the caller ID data124, in some embodiments, the called party161can provide input that customizes the custom private caller ID mask A142A. For example, the called party161can provide input that causes the called device160to generate an instance of a unique private caller ID, such as a unique private caller ID174′. The custom private caller ID mask A142A can enable the reconfiguration of the dynamic alphanumeric string143′ based on the unique private caller ID174′ such that when a private call from the calling device120is sent to the called device160at a later point in time (e.g., the future call129), then the custom private caller ID mask A142A can present the unique private caller ID174′ as the dynamic alphanumeric string143′. As previously discussed with respect toFIG. 1, when an instance of the unique private caller ID (e.g., the unique private caller ID174′) is generated to customize and reconfigure the custom private caller ID mask A142A, the unique private caller ID174′ can cause the called device160to generate the mask alteration instruction172′, where the mask alteration instruction172′ is an embodiment of the mask alteration instruction172discussed with respect toFIG. 1. The mask alteration instruction172′ can be included in an instance of the customization message170that can be sent to the private call blocking service152so that the private call blocking service152can reconfigure the instance of the custom private caller ID mask A142A stored in the communication network data store130. By this, when the future call129is sent from the called device160that corresponds with the caller ID data124and the custom private caller ID mask A142A which was reconfigured, the called device160can present the custom private caller ID mask A142A that includes the unique private caller ID174′ as customized by the called party161(e.g., President—Oval Office). It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

In various embodiments, the private call ID options of the custom private caller ID mask A142A may include a private call block instruction display210. The private call block instruction display210can include one or more user interface buttons that cause the called device160to generate an instruction that is provided to the private call blocking service152based on the custom private caller ID mask A142. For example, the private call block instruction display210can include one or more of an instance of the selective private call block button206(which is shown inFIGS. 2B-2Das presenting “Block private calls from this caller”), a universal private call block button214(which is shown inFIGS. 2C-2Das presenting “Block all private calls”), and a universal private call block override button216(which is shown inFIGS. 2C-2Das presenting “Exempt this private caller from universal block”). In an embodiment shown inFIG. 2C, the called party161can provide input that toggles, triggers, or otherwise corresponds with one or more of the universal private call block button214and/or the universal private call block override button216. In response to input corresponding to the universal private call block button214, the called device160can generate an instance of the universal private call block instruction137, such as discussed with respect toFIG. 1. In response to input corresponding to the universal private call block override button216, the called device160can generate an instance of the universal private call block override instruction138, such as discussed with respect toFIG. 1. Thus, when the private call blocking service152receives the universal private call block override instruction138from the called device160, the private call blocking service152will continue to provide the custom private caller ID mask A142A to the called device160for future private calls (e.g., the future call129) from the calling device120. The custom private caller ID mask A142A may be provided to the called device160irrespective of the universal private call block instruction137being in place because the universal private call block override instruction138associated with the custom private caller ID mask A142A can override the instruction from the universal private call block instruction137to block or otherwise prevent any future private calls. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

As shown inFIG. 2D, another embodiment of the screen display252is shown as a screen display254, where the screen display254may be generated in response to the called party161being provided with an instance of a custom private caller ID mask for a private call from a calling device and/or calling party for which the called party161does not have a desire to receive or engage in private calls. For example, in various embodiments shown and discussed with respect toFIGS. 2B-2C, the called device160receives a private call from a calling party that reputable or otherwise is approved to participate in calls with the called device160, despite the instance of caller ID data (e.g., the caller ID data124) not being provided to the called device160. However, in the embodiment shown inFIG. 2C, the called device may receive a private call from a communication device that is unknown or otherwise is not approved or trusted to be engaging in calls with the called device160. For example, in the embodiment shown inFIG. 2C, the private call blocking service152may detect a private call (e.g., an instance of the call122) and determines that the call was sent from the communication device180and the instance of caller ID data provided is the communication ID data182associated with the communication device180. Based on the communication ID data182and the private call blocking map132, the private call blocking service152may determine that the custom private caller ID mask B142B should be used for the private call, and thus the custom private caller ID mask B142B is provided to the called device160with the private call from the communication device180. It is understood that the communication ID data182associated with the communication device180is prevented from being provided to the called device160because the private call may include an instance of the caller ID blocking marker126. Therefore, in this embodiment, the called device160may present an instance of the screen display250shown inFIG. 2B, but instead of the custom private caller ID mask A142A being presented, the custom private caller ID mask B142B is presented. Because the custom private caller ID mask B142B is used and provided to the called device160for any private call placed by and sent from the communication device180, the custom private caller ID mask B142B can instruct the called device160to present a dynamic alphanumeric string143″ that provides “Private 006”, according to an embodiment. It is understood that the dynamic alphanumeric string143″ can be substantially similar to the dynamic alphanumeric strings143and143′ discussed with respect toFIGS. 2B-2C, with the difference being that the dynamic alphanumeric string143″ is unique to and/or customized for the custom private caller ID mask B142B associated with the communication device180. As such, the character “N” shown inFIG. 2Bmay be initially presented as “6” for the custom private caller ID mask B142B. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

In the embodiment shown inFIG. 2D, the called party161can provide input that customizes or otherwise reconfigures the dynamic alphanumeric string143″, such as the unique private caller ID184. The unique private caller ID184can be associated with the custom private caller ID mask B142B such that if a private call from the communication device180is provided to the called device160in the future, then the custom private caller ID mask B142B would be reconfigured to present the unique private caller ID184as the dynamic alphanumeric string143″. As shown inFIG. 2D, the called party161may determine that the calling party corresponding to the communication device180is not authorized or otherwise approved to be sending private calls to the called device160. For example, the input for the unique private caller ID184may show “person under restraining order” or any other string or text that can distinguish or denote a custom identity corresponding to the custom private caller ID mask B142B. Therefore, in an embodiment, the called party161can configure the unique private caller ID184to reflect a unique label or identity corresponding to any future private calls that are associated with the custom private caller ID mask B142B, and thus in turn also associated with the communication ID data182and the communication device180. In some embodiments, the unique private caller ID184can be sent to the private call blocking service152. For example, the called device160can create an instance of the customization message170and include an instance of the mask alteration instruction172that identifies the custom private caller ID mask B142B and the unique private caller ID184. The private call blocking service152can update, alter, modify, or otherwise reconfigure the instance of the custom private caller ID mask B142B that is stored in the communication network data store130based on the customization message170and the mask alteration instruction172indicating the unique private caller ID184. Thus, if private calls are allowed to continue to be provided to the called device160from the communication device180, then the custom private caller ID mask B142B would be sent to the called device160and present the unique private caller ID184as the dynamic alphanumeric string143″. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

In some embodiments, the calling party161may desire to selectively block the private call corresponding to the custom private caller ID mask B142B. As shown inFIG. 2D, the called device160can present an instance of the private call block instruction display210that can include instances of the selective private call block button206, the universal private call block button214, and the universal private call block override button216. As shown inFIG. 2D, the called party161may provide input that toggles, triggers, or otherwise activates the selective private call block button206provided by the custom private caller ID mask B142B in order to selectively block the private call from the communication device180. In response to selection of the selective private call block button206, the called device can generate an instance of the selective private call block instruction136that indicates or otherwise is associated with the custom private caller ID mask B142B so as to command the private call blocking service152to prevent future calls from the communication device180from being provided sent or provided to the called device160. For example, in an embodiment, the private call blocking service152can assign the selective private call block instruction136to the custom private caller ID mask B142B such that when a future call (e.g., a future call129that is from the communication device180) is attempted or being sent to the called device160, and where the future call129is a private call associated with the communication ID data182for the communication device180, then the private call blocking service152will block or otherwise redirect the future call129so as not to be received by the called device160. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

It should be appreciated that the UI diagrams illustrated inFIGS. 2A-2Dare provided for illustration purposes to provide one contemplated example of the UIs that can be generated and/or displayed in accordance with the concepts and technologies disclosed herein, and therefore should not be construed as being limited in any way. The buttons, controls, displays, and/or other information shown in the embodiments of screen displays200,250,252, and254are illustrative and the screen displays200,250,252, and254can include various menus, options, fields, buttons, or other information not shown inFIGS. 2A-2D. Because additional or alternative buttons and information can be included in the screen displays200,250,252, and254it should be understood that the example embodiments shown inFIGS. 2A-2Dare illustrative and therefore should not be construed as limiting in any way.

RegardingFIG. 3andFIGS. 4A-4C, aspects of methods associated with a private call blocking service, such as the private call blocking service152, will be described in detail, according to one or more illustrative embodiment. Specifically,FIG. 3shows a method300for generating an instance of a custom private caller identification mask for use with the private call blocking service152, according to an illustrative embodiment.FIGS. 4A-4Crefer to methods400,430, and450, respectively, for providing selective private call blocking using the private call blocking service152, according to one or more illustrative embodiment. It should be understood that the operations of the methods disclosed herein (e.g., the methods300,400,430, and450) are not necessarily presented in any particular order and that performance of some or all of the operations in an alternative order(s) is possible and is contemplated. The operations have been presented in the demonstrated order for ease of description and illustration. Operations may be added, omitted, and/or performed simultaneously, without departing from the scope of the concepts and technologies disclosed herein. It is understood that operations shown in one method may be performed in another method. It is also understood that aspects of the discussion with respect toFIG. 1andFIGS. 2A-2Dmay also be included in a method, according to the concepts and technologies discussed herein.

Therefore, it should be appreciated that the logical operations described herein are implemented (1) as a sequence of computer implemented acts or program modules running on a computing system and/or (2) as interconnected machine logic circuits or circuit modules within the computing system. The implementation is a matter of choice dependent on the performance and other requirements of the computing system. Accordingly, the logical operations described herein are referred to variously as states, operations, structural devices, acts, or modules. These states, operations, structural devices, acts, and modules may be implemented in software, in firmware, in special purpose digital logic, and any combination thereof. As used herein, the phrase “cause a processor to perform operations” and variants thereof is used to refer to causing a processor of a computing system or device, such as the call handling system150, to perform one or more operations and/or causing the processor to direct other components of the computing system or device to perform one or more of the operations.

For purposes of illustrating and describing the concepts of the present disclosure, the method300disclosed herein is described as being performed by the call handling system150via execution of one or more computer-readable instructions such as, for example, the private call blocking service152that configure one or more processors, such as one or more instances of the processor154. It should be understood that additional and/or alternative devices can provide the functionality described herein via execution of one or more modules, applications, and/or other software including, but not limited to, the private call management application114that can execute and configure a device, such as but not limited to the user device110, the called device160, the communication device180, and/or the communication device190. Thus, the illustrated embodiments are illustrative, and should not be viewed as being limiting in any way.

Turning now toFIG. 3, aspects of the method300aspects for generating an instance of a custom private caller identification mask to support selective private call blocking will be discussed, according to an embodiment. The method300can begin and proceed to operation302, where the private call blocking service152can obtain an instance of the private call management data116. In some embodiments, the private call management data116can indicate that a communication device (e.g., the called device160) authorizes the use of the private call blocking service152to enable selective blocking of private calls, such as the call122. In some embodiments, the private call management data116can include an instance of the custom private ID data140. The custom private ID data140can indicate or otherwise identify the communication device for which one or more instances of a custom private caller ID mask should be generated. For example, the custom private ID data140can indicate that the called device160associated with the called ID data162participates in the private call blocking service152and therefore should receive an instance of a custom private caller ID mask instead of the fixed label153having the static alphanumeric string153A that is conventionally provided with private calls (e.g., the call122).

From operation302, the method300may proceed to operation304, where the private call blocking service152can access the private call blocking map132. For example, the private call blocking service152can retrieve and access the private call blocking map132from the communication network data store130. From operation304, the method300may proceed to operation306, where the private call blocking service152can create a custom private caller ID mask that is associated with an instance of caller ID data and an instance of called ID data. For example, the private call blocking service152can create an instance of the custom private caller ID mask A142A that associates the caller ID data124and the called ID data162such that when a private call is detected and determined to be coming from a communication device associated with the caller ID data124(e.g., the calling device120) and being sent to the called device160associated with called ID data162, then the custom private caller ID mask A142A is to be provided to the called device160instead of the caller ID data124and/or the fixed label153. The private call blocking service152can assign a default unique label to the custom private caller ID mask A142in the format of the dynamic alphanumeric string143. As such, the instance of the dynamic alphanumeric string143of the custom private caller ID mask A142A can present a default label that is unique to the caller ID data124, but does not reveal the caller ID data124and is not the same as the static alphanumeric string153A of the fixed label153. For example, when the custom private caller ID mask A142A is first provided to the called device160, the called device160may present “Private 005” as the dynamic alphanumeric string143of the custom private caller ID mask A142A. It is understood that for other instances of a custom private caller ID mask that are created (e.g., the custom private caller ID mask B142B), the association that is reflected can be between the communication ID data182(which would be considered an instance of caller ID data) associated with the communication device180and the called ID data162associated with the called device160. Therefore, the custom private caller ID mask B142B may present “Private 006” based on a uniquely created instance of the dynamic alphanumeric string of the custom private caller ID mask B142B. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

It is understood that the default unique label that is used for an instance of the dynamic alphanumeric string143may depend on the numbers that have already been assigned for use with other custom private caller ID masks. For example, if the custom private caller ID mask A142A has already been created and configured to present “Private 005”, and the custom private caller ID mask B142B has already been created and configured to present “Private 006”, then the private call blocking service152can use the next available increment (e.g., “Private 007”) for the default unique label assigned to the dynamic alphanumeric string143for a newly created custom private caller ID mask. It is understood that the default unique label is not limited to use of the phrase “Private 00N”, but instead can include any information that can be unique to the caller ID data124without providing or otherwise revealing the caller ID data124so as to prevent a return call from being placed based on the instance of the custom private caller ID mask being created. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

From operation306, the method300may proceed to operation308, where private call blocking service152can reconfigure the private call blocking map132to point to the custom private caller ID mask that was created, such as the custom private caller ID mask A142A. By this, the when the private call blocking service152at a later time accesses the private call blocking map132, the private call blocking service152can use information from a detected private call (e.g., the called ID data162and/or the caller ID data124) to determine which custom private caller ID mask should be used, such as the custom private caller ID mask A142A that corresponds with the called ID data162and the caller ID data124. Therefore, when the called ID data162and the caller ID data124are presented to the private call blocking map132, the reconfiguration of the private call blocking map132can point to the custom private caller ID mask A142A which can be provided to the called device160for the call122instead of the caller ID data124and/or the fixed label153.

From operation308, the method300may proceed to operation310, where the private call blocking service152can store the custom private caller ID mask A142A for later retrieval and/or use with a private call. From operation310, the method300may proceed to operation312, where the method300may end. In some embodiments, from operation310, the method300may proceed to one or more operations discussed with respect toFIGS. 4A-4C, according to an embodiment. It should be understood that these examples are illustrative and therefore should not be construed as being limiting in any way.

Turning now toFIG. 4A, aspects of the method400for providing screening and selective private call blocking using a private call blocking service will be discussed, according an embodiment. The method400can begin and proceed to operation402, where the private call blocking service152can execute on the processor154of the call handling system150and detect a call from a calling device directed to a called device. For example, the private call blocking service152can detect that the call122from the calling device120that is being sent to the called device160. From operation402, the method400may proceed to operation404, where the private call blocking service152can obtain caller ID data corresponding with the call122. For example, the call122can include or otherwise be associated with the caller ID data124. From operation404, the method400may proceed to operation406, where the private call blocking service152can determine whether the call is a private call, such as based on determining whether a caller ID blocking marker is present or otherwise indicated. For example, the private call blocking service152can determine whether the call122has or otherwise indicates the caller ID blocking marker126, which can indicate that the call122should be treated as a private call. The caller ID blocking marker126can indicate that a fixed label (e.g., the fixed label153which is not unique to the caller ID data124, the called ID data162, the calling device120, or the called device160) should be provided to the called device160so as to prevent the called device160from receiving and/or presenting the caller ID data124associated with the calling device120. In some embodiments, the caller ID blocking marker may indicate or otherwise identify the fixed label153that should be provided to the called device160instead of the caller ID data124, where the fixed label153can be configured to indicate the one or more of “private”, “anonymous”, “unknown”, or “unavailable” via the static alphanumeric string153A. The fixed label153is not uniquely generated, created, and/or provided to the called device160based on the called ID data162, the caller ID data124, the called device160, and/or the calling device120.

In an embodiment, if the private call blocking service152determines that the caller ID blocking marker126is not present with the call122, then the call122would not be treated as a private call and the method400may proceed along the NO path to operation407, where the private call blocking service152may provide the fixed label153to the called device160instead of the caller ID data124, where the fixed label153is not uniquely created for the called device160. From operation407, the method400may proceed to operation408, where the call122can be provided to the called device160. From operation408, the method400may proceed to operation420, where the method400can end. In some embodiments, the method400may proceed from operation408to operation432, which is discussed below with respect to the method430shown inFIG. 4B.

Returning to operation406, if the private call blocking service152determines that the caller ID blocking marker126is present with the call122, then the call122would not be treated as a private call and the method400may proceed along the YES path to operation410. At operation410, the private call blocking service152can access the private call blocking map132in the communication network data store130or other memory.

From operation410, the method400may proceed to operation412, where the private call blocking service152can identify, using the private call blocking map132, the custom private caller ID mask that corresponds and/or is otherwise based on called ID data162associated with the called device160and/or the caller ID data124associated with the calling device120. For example, the private call blocking service152may identify that the custom private caller ID mask A142A corresponds with the called ID data162and the caller ID data124, and therefore should be used instead of the fixed label153. It should be understood that the examples provided are for illustration purposes only, and therefore should not be construed as limiting in any way.

From operation412, the method400may proceed to operation414, where the private call blocking service152can obtain the custom private caller ID mask A142A for the call122instead of obtaining the fixed label153for the call122. From operation414, the method400may proceed to operation416, where the private call blocking service152can replace the use of the fixed label153for the call122with the custom private caller ID mask A142A that is uniquely generated for the called device160. From operation416, the method400may proceed to operation418, where the private call blocking service152can provide the custom private caller ID mask A142A to the called device160for the call122. the custom private caller identification mask is presented to a called party associated with the called device without revealing the caller identification data.

From operation418, the method400may proceed to operation420, where the method400can end. In some embodiments, the method400may proceed from operation418to operation408, where the call122can be provided to the called device160. In some embodiments, the method400may proceed from operation418to operation432, which is discussed with respect to the method430shown inFIG. 4Band discussed below. In some embodiments, the method400may proceed from operation418to operation451, which is discussed with respect to the method450shown inFIG. 4Cand discussed below. It should be understood that these examples are illustrative and therefore should not be construed as being limiting in any way.

Turning now toFIG. 4B, aspects of the method430for providing screening and selective private call blocking using a private call blocking service will be discussed, according another embodiment. It is understood that, in some embodiments, the method430may be performed with the method400.

The method430can begin and proceed to operation432, where the private call blocking service152can receive the customization message170that can include the mask alteration instruction172that can configure the custom private caller ID mask A142A to present the unique private caller ID174on the called device160for future calls (e.g., the future call129) made by the calling device120and directed to the called device160. In some embodiments, the customization message170may be generated by the called device160in response to the private call blocking service152providing the custom private caller ID mask A142A to the called device160for the call122.

From operation432, the method430may proceed to operation434, where the private call blocking service152can reconfigure the custom private caller ID mask A142A based on the customization message170. For example, the mask alteration instruction172can instruct the private call blocking service152to update, modify, or otherwise alter the default unique label of the dynamic alphanumeric string143with the unique private caller ID174such that the next time that the custom private caller ID mask A142A is provided to the called device160with the future call129, the custom private caller ID mask A142A present the unique private caller ID174without revealing or providing the caller ID data124, and therefore preventing or not allowing the called device160to engage in a return call to the calling device120based on the unique private caller ID174of the custom private caller ID mask A142A.

From operation434, the method430may proceed to operation436, where the private call blocking service152can determine whether an instance of the selective private call block instruction136has been received based on the custom private caller ID mask A142A. The selective private call block instruction136can indicate that future incoming calls (e.g., the future call129) from the calling device120associated with the caller ID data124should be prevented from reaching the called device160. The future call129can be a private call based on it having an instance of the caller ID blocking marker126. Thus, if the selective private call block instruction136corresponds with the custom private caller ID mask A142A, then the future call129would be prevented from being sent to the called device160.

In an embodiment, the private call blocking service152may determine that the called device has not provided an instance of the selective private call block instruction136corresponding to the custom private caller ID mask A142A, and as such, the method430may proceed from operation436along the NO path to operation440. At operation440, the private call blocking service152can monitor for future calls (e.g., the future call129) from the calling device120to the called device160. In an embodiment, from operation440, the method430may proceed to operation449where the method430may end. In another embodiment, the method430may proceed from operation440to operation451, which is discussed with respect toFIG. 4Cbelow.

Returning to operation436, in an embodiment, the private call blocking service152can determine that the called device160provided the selective private call block instruction136based on the custom private caller ID mask A142A, and therefore the method430can proceed along the YES path to operation438.

At operation438, the private call blocking service152can prevent future calls (e.g., the future call129), which are sent from the calling device120to the called device160, from being provided to the called device160based on the selective private call block instruction136. In some embodiments, the method400may proceed from operation438to operation440, where the private call blocking service152can monitor for future calls (e.g., the future call129) from the calling device120to the called device160. In some embodiments, the method430may proceed from operation438to operation442.

At operation442, the private call blocking service152can determine whether an instance of the universal private call block instruction137has been provided by the called device160. If the universal private call block instruction137has been provided by the called device160, then the method430may proceed from operation442along the NO path to operation449, where the method430may end.

Returning to operation442, if the private call blocking service152determines that the universal private call block instruction137has been provided by the called device160, then the method430may proceed from operation442along the YES path to operation444. At operation444, the private call blocking service152may prevent and/or deny future calls (e.g., the future call129) from being provided to the called device160based on the universal private call block instruction137. In some embodiments, the method430may proceed from operation444to operation449, where the method430can end. In some embodiments, the private call blocking service152may determine whether any exemptions or exceptions are provided such that one or more calls may proceed despite the universal private call block instruction137, and therefore may proceed to operation446.

At operation446, the private call blocking service152can determine whether an instance of the universal private call block override instruction138has been provided by the called device160. For example, the private call blocking service152may determine whether the called device160and/or the custom private caller ID mask A142A is associated with the universal private call block instruction137and/or the universal private call block override instruction138, where the universal private call block instruction137indicates that incoming calls that have the caller ID blocking marker126should be prevented from being provided to the called device unless the selective private call block override instruction138exists for the custom private caller ID mask A142A, where the selective private call block override instruction138allows the future call (e.g., the future call129) to proceed to the called device160using the custom privet caller ID mask A142A despite the future call129having the caller ID blocking marker126.

In some embodiments, if the private call blocking service152determines that the universal private call block override instruction138has not been provided, then the method430may proceed from operation446along the NO path to operation444, where the private call blocking service152can prevent future calls that are private calls from reaching the called device160. In some embodiments, if the private call blocking service152determines that the universal private call block override instruction138has been provided for the custom private caller ID mask A142A, then the method430may proceed from operation446along the YES path to operation448.

At operation448, the private call blocking service152can override the universal private call block instruction137so as to exempt the custom private caller ID mask A142A from the universal private call block instruction137and allow future calls that are private calls (e.g., the future call129) to reach the called device160based on the universal private call block override instruction138.

From operation448, the method430may proceed to operation440, which is discussed above. In some embodiments, the method430may proceed from operation440to operation451, which is discussed with respect to the method450shown inFIG. 4Cbelow.

Turning now toFIG. 4C, aspects of a method450for providing screening and selective private call blocking using a private call blocking service will be discussed, according yet another embodiment. In some embodiments, the method450may proceed from one or more operations discussed with respect to the method400and/or the method430. In some embodiments, the method450can begin and proceed to operation451, where the private call blocking service152can detect the future call129from the calling device120directed to the called device160.

From operation451, the method450may proceed to operation452, where the private call blocking service152can obtain and/or identify the caller ID data124corresponding to the future call129. The private call blocking service152can determine that the custom private caller ID mask A142A is associated with the caller ID data124.

From operation452, the method450may proceed to operation453, where the private call blocking service152may determine whether an instance of the selective private call block instruction136corresponds with the custom private caller ID mask A142A. In some embodiments, if the private call blocking service152determines that an instance of the selective private call block instruction136has not been provided to the private call blocking service152based on the custom private caller ID mask A142A being provided to the called device160with the call122, then the method450can proceed along the NO path. In some embodiments, the method450may proceed along the NO path to operation442discussed with respect to the method430shown inFIG. 4B. In some embodiments, the method450may proceed along the NO path to operation456, where the method450may end.

Returning to operation453, in some embodiments, if the private call blocking service152determines that an instance of the selective private call block instruction136has been provided to the private call blocking service152based on the custom private caller ID mask A142A being provided to the called device160with the call122, then the method450may proceed along the YES path to operation454. At operation454, the private call blocking service152prevents the future call129from being provided to the called device160based on the selective private call block instruction136. In some embodiments, the method450may proceed from operation454to operation456, where the method450can end. In some embodiments, the method450may proceed from operation454to operation455.

At operation455, the private call blocking service152can prevent the future call129from being provided to the called device160but continue to provide the custom private caller ID mask A142A to the called device160so as to inform the called device160that the future call129was blocked based on the selective private call block instruction136. From operation455, the method450may proceed to operation456, where the method450can end.

Turning now toFIG. 5, a discussion of a network500is illustrated, according to an illustrative embodiment. The network102shown inFIG. 1can be configured substantially similar to include at least some of the elements of the network500. The network500can include a cellular network502, a packet data network504, for example, the Internet, and a circuit switched network506, for example, a publicly switched telephone network (“PSTN”). The cellular network502includes various components such as, but not limited to, base transceiver stations (“BTSs”), Node-B's or e-Node-B's, base station controllers (“BSCs”), radio network controllers (“RNCs”), mobile switching centers (“MSCs”), mobile management entities (“MMEs”), short message service centers (“SMSCs”), multimedia messaging service centers (“MMSCs”), home location registers (“HLRs”), home subscriber servers (“HSSs”), visitor location registers (“VLRs”), charging platforms, billing platforms, voicemail platforms, GPRS core network components, location service nodes, an IP Multimedia Subsystem (“IMS”), and the like. The cellular network502also includes radios and nodes for receiving and transmitting voice, data, and combinations thereof to and from radio transceivers, networks, the packet data network504, and the circuit switched network506.

A mobile communications device508, such as, for example, a cellular telephone, a user equipment, a mobile terminal, a PDA, a laptop computer, a handheld computer, and combinations thereof, can be operatively connected to the cellular network502. The cellular network502can be configured as a 2G GSM network and can provide data communications via GPRS and/or EDGE. Additionally, or alternatively, the cellular network502can be configured as a 3G UMTS network and can provide data communications via the HSPA protocol family, for example, HSDPA, EUL (also referred to as HSUPA), and HSPA+. The cellular network502also can be compatible with mobile communications standards such as but not limited to 4G, LTE, LTE Advanced, and/or 5G, as well as evolved and future mobile standards.

The packet data network504includes various devices, for example, servers, computers, databases, and other devices in communication with one another, as is generally understood. The packet data network504devices are accessible via one or more network links. The servers often store various files that are provided to a requesting device such as, for example, a computer, a terminal, a smartphone, or the like. Typically, the requesting device includes software (a “browser”) for executing a web page in a format readable by the browser or other software. Other files and/or data may be accessible via “links” and/or “pointers” in the retrieved files, as is generally understood. In some embodiments, the packet data network504includes or is in communication with the Internet. The circuit switched network506includes various hardware and software for providing circuit switched communications. The circuit switched network506may include, or may be, what is often referred to as a plain old telephone system (POTS). The functionality of a circuit switched network506or other circuit-switched network are generally known and will not be described herein in detail.

The illustrated cellular network502is shown in communication with the packet data network504and a circuit switched network506, though it should be appreciated that this is not necessarily the case. One or more Internet-capable devices510, for example, a PC, a laptop, a portable device, or another suitable device, can communicate with one or more cellular networks502, and devices connected thereto, through the packet data network504. It also should be appreciated that the Internet-capable device510can communicate with the packet data network504through the circuit switched network506, the cellular network502, and/or via other networks (not illustrated).

As illustrated, a communications device512, for example, a telephone, facsimile machine, modem, computer, or the like, can be in communication with the circuit switched network506, and therethrough to the packet data network504and/or the cellular network502. It should be appreciated that the communications device512can be an Internet-capable device, and can be substantially similar to the Internet-capable device510. In the specification, the network102and/or the network500refers broadly to any combination of the networks502,504,506. It should be appreciated that substantially all of the functionality described with reference to the network102and/or the network500can be performed by the cellular network502, the packet data network504, and/or the circuit switched network506, alone or in combination with other networks, network elements, and the like. Although not illustrated separately in FIG.5, it should be understood that the IMS104can be a part of the cellular network502, though this is not necessarily the case.

FIG. 6is a block diagram illustrating a computer system600configured to provide the functionality described herein for providing and using a private call blocking service, such as the private call blocking service152, in accordance with various embodiments of the concepts and technologies disclosed herein. In aspects, the call handling system150illustrated and described herein can be configured as and/or can have an architecture similar or identical to the computer system600. In some embodiments, the user device110can be configured as and/or have an architecture that is similar or identical to the computer system600. The computer system600includes a processing unit602, a memory604, one or more user interface devices606, one or more input/output (“I/O”) devices608, and one or more network devices610, each of which is operatively connected to a system bus612. The system bus612enables bi-directional communication between the processing unit602, the memory604, the user interface devices606, the I/O devices608, and the network devices610. In some embodiments, the processor154can be configured substantially similar to the processing unit602. In some embodiments, the memory156can be configured substantially similar to the memory604.

The processing unit602may be a standard central processor that performs arithmetic and logical operations, a more specific purpose programmable logic controller (“PLC”), a programmable gate array, or other type of processor known to those skilled in the art and suitable for controlling the operation of the server computer. As used herein, the word “processor” and/or the phrase “processing unit” when used with regard to any architecture or system can include multiple processors or processing units distributed across and/or operating in parallel in a single machine or in multiple machines. Furthermore, processors and/or processing units can be used to support virtual processing environments. Processors and processing units also can include state machines, application-specific integrated circuits (“ASICs”), combinations thereof, or the like. Because processors and/or processing units are generally known, the processors and processing units disclosed herein will not be described in further detail herein.

The memory604communicates with the processing unit602via the system bus612. In some embodiments, the memory604is operatively connected to a memory controller (not shown) that enables communication with the processing unit602via the system bus612. The memory604includes an operating system614and one or more program modules616. The operating system614can include, but is not limited to, members of the WINDOWS, WINDOWS CE, and/or WINDOWS MOBILE families of operating systems from MICROSOFT CORPORATION, the LINUX family of operating systems, the SYMBIAN family of operating systems from SYMBIAN LIMITED, the BREW family of operating systems from QUALCOMM CORPORATION, the MAC OS, iOS, and/or LEOPARD families of operating systems from APPLE CORPORATION, the FREEBSD family of operating systems, the SOLARIS family of operating systems from ORACLE CORPORATION, other operating systems, and the like.

The program modules616may include various software and/or program modules described herein. In some embodiments, for example, the program modules616can include the private call management application114, the private call blocking service152, and/or other computer-readable instructions. These and/or other programs can be embodied in computer-readable media containing instructions that, when executed by the processing unit602, perform one or more of the methods300,400,430, and450described in detail above with respect toFIGS. 3 and 4A-4C. According to some embodiments, the program modules616may be embodied in hardware, software, firmware, or any combination thereof. It should be understood that the memory604also can be configured to store one or more instance of information discussed with respect toFIG. 1andFIGS. 2A-2D, such as but not limited to the private call blocking map132, the call ID data pool134, the selective private call block instruction136, the universal private call block instruction137, the universal private call block override instruction138, the custom private ID data140, one or more instances of a custom private caller ID mask, and/or other data, if desired.

The user interface devices606may include one or more devices with which a user accesses the computer system600. The user interface devices606may include, but are not limited to, computers, servers, personal digital assistants, cellular phones, or any suitable computing devices. The I/O devices608enable a user to interface with the program modules616. In one embodiment, the I/O devices608are operatively connected to an I/O controller (not shown) that enables communication with the processing unit602via the system bus612. The I/O devices608may include one or more input devices, such as, but not limited to, a keyboard, a mouse, or an electronic stylus. Further, the I/O devices608may include one or more output devices, such as, but not limited to, a display screen or a printer.

The network devices610enable the computer system600to communicate with other networks or remote systems via a network, such as the network102. Examples of the network devices610include, but are not limited to, a modem, a radio frequency (“RF”) or infrared (“IR”) transceiver, a telephonic interface, a bridge, a router, or a network card. The network102may include a wireless network such as, but not limited to, a Wireless Local Area Network (“WLAN”) such as a WI-FI network, a Wireless Wide Area Network (“WWAN”), a Wireless Personal Area Network (“WPAN”) such as BLUETOOTH, a Wireless Metropolitan Area Network (“WMAN”) such a WiMAX network, or a cellular network. Alternatively, the network102may be a wired network such as, but not limited to, a Wide Area Network (“WAN”) such as the Internet, a Local Area Network (“LAN”) such as the Ethernet, a wired Personal Area Network (“PAN”), or a wired Metropolitan Area Network (“MAN”).

Turning now toFIG. 7, an illustrative communication device700and components thereof will be described. In some embodiments, the user device110, the called device160, the calling device120, the communication device180, the communication device190, and/or other devices illustrated and described herein can be configured as and/or can have an architecture similar or identical to the communication device700described herein inFIG. 7. It should be understood, however, that the various devices illustrated and described herein may or may not include the functionality described herein with reference toFIG. 7. While connections are not shown between the various components illustrated inFIG. 7, it should be understood that some, none, or all of the components illustrated inFIG. 7can be configured to interact with one other to carry out various device functions. In some embodiments, the components are arranged so as to communicate via one or more busses (not shown). Thus, it should be understood thatFIG. 7and the following description are intended to provide a general understanding of a suitable environment in which various aspects of embodiments can be implemented, and should not be construed as being limiting in any way.

As illustrated inFIG. 7, the communication device700can include a display702for presenting data and information. According to various embodiments, the display702can be configured to display various graphical user interface (“GUI”) elements for presenting and/or modifying information associated with a custom private caller ID mask, creating private call instructions, presenting text, images, video, virtual keypads and/or keyboards, messaging data, notification messages, metadata, internet content, device status, time, date, calendar data, device preferences, map and location data, combinations thereof, and/or the like. The communication device700also can include a processor704and a memory or other data storage device (“memory”)706. The processor704can be configured to process data and/or can execute computer-executable instructions stored in the memory706. The computer-executable instructions executed by the processor704can include, for example, an operating system708, one or more applications710such as the private call management application114, some of the private call blocking service152, and/or other computer-executable instructions stored in a memory706, or the like. In some embodiments, the applications710also can include a UI application (not illustrated inFIG. 7).

The UI application can be executed by the processor704to aid a user in entering content, displaying a custom private caller ID mask (e.g., the custom private caller ID mask A142A), configuring settings, manipulating address book content and/or settings, multimode interaction, interacting with other applications710, and otherwise facilitating user interaction with the operating system708, the applications710, and/or other types or instances of data712that can be stored at the communication device700, such as stored by the memory706. According to various embodiments, the data712can include, for example, instances of a call (e.g., the call122), the caller ID data124, the caller ID blocking marker126, the called ID data162, the unique private caller ID184, the unique private caller ID194, the unique private caller ID174, the mask alteration instruction172, the customization message170, the custom private caller ID mask A142A, the dynamic alphanumeric string143, any other elements discussed with respect toFIG. 1andFIGS. 2A-2D, presence applications, visual voice mail applications, messaging applications, text-to-speech and speech-to-text applications, add-ons, plug-ins, email applications, music applications, video applications, camera applications, location-based service applications, power conservation applications, game applications, productivity applications, entertainment applications, enterprise applications, combinations thereof, and the like. The applications710, the data712, and/or portions thereof can be stored in the memory706and/or in a firmware714, and can be executed by the processor704. The firmware714also can store code for execution during device power up and power down operations. It can be appreciated that the firmware714can be stored in a volatile or non-volatile data storage device including, but not limited to, the memory706and/or a portion thereof.

The communication device700also can include an input/output (“I/O”) interface716. The I/O interface716can be configured to support the input/output of data such as the call122, the customization message170, the mask alteration instruction172, the custom private caller ID mask A142A, other information discussed with respect toFIG. 1, user information, organization information, presence status information, user IDs, passwords, and application initiation (start-up) requests. In some embodiments, the I/O interface716can include a hardwire connection such as a universal serial bus (“USB”) port, a mini-USB port, a micro-USB port, an audio jack, a PS2 port, an IEEE 1394 (“FIREWIRE”) port, a serial port, a parallel port, an Ethernet (RJ45) port, an RJ11 port, a proprietary port, combinations thereof, or the like. In some embodiments, the communication device700can be configured to synchronize with another device to transfer content to and/or from the communication device700. In some embodiments, the communication device700can be configured to receive updates to one or more of the applications710via the I/O interface716, though this is not necessarily the case. In some embodiments, the I/O interface716accepts I/O devices such as keyboards, keypads, mice, interface tethers, printers, plotters, external storage, touch/multi-touch screens, touch pads, trackballs, joysticks, microphones, remote control devices, displays, projectors, medical equipment (e.g., stethoscopes, heart monitors, and other health metric monitors), modems, routers, external power sources, docking stations, combinations thereof, and the like. It should be appreciated that the I/O interface716may be used for communications between the communication device700and a network device or local device.

The communication device700also can include a communications component718. The communications component718can be configured to interface with the processor704to facilitate wired and/or wireless communications with one or more networks such as the network102described herein. In some embodiments, other networks include networks that utilize non-cellular wireless technologies such as WI-FI or WIMAX. In some embodiments, the communications component718includes a multimode communications subsystem for facilitating communications via the cellular network and one or more other networks. The communications component718, in some embodiments, includes one or more transceivers. The one or more transceivers, if included, can be configured to communicate over the same and/or different wireless technology standards with respect to one another. For example, in some embodiments one or more of the transceivers of the communications component718may be configured to communicate using GSM, CDMAONE, CDMA2000, LTE, and various other 2G, 2.5G, 3G, 4G, 5G, LTE, LTE Advanced, and greater generation technology standards. Moreover, the communications component718may facilitate communications over various channel access methods (which may or may not be used by the aforementioned standards) including, but not limited to, TDMA, FDMA, W-CDMA, OFDM, SDMA, and the like.

In addition, the communications component718may facilitate data communications using GPRS, EDGE, the HSPA protocol family including HSDPA, EUL or otherwise termed HSUPA, HSPA+, and various other current and future wireless data access standards. In the illustrated embodiment, the communications component718can include a first transceiver (“TxRx”)720A that can operate in a first communications mode (e.g., GSM). The communications component718also can include an Nthtransceiver (“TxRx”) 720N that can operate in a second communications mode relative to the first transceiver720A (e.g., UMTS). While two transceivers720A-N (hereinafter collectively and/or generically referred to as “transceivers720”) are shown inFIG. 7, it should be appreciated that less than two, two, and/or more than two transceivers720can be included in the communications component718.

The communications component718also can include an alternative transceiver (“Alt TxRx”)722for supporting other types and/or standards of communications. According to various contemplated embodiments, the alternative transceiver722can communicate using various communications technologies such as, for example, WI-FI, WIMAX, BLUETOOTH, infrared, infrared data association (“IRDA”), near field communications (“NFC”), other RF technologies, combinations thereof, and the like. In some embodiments, the communications component718also can facilitate reception from terrestrial radio networks, digital satellite radio networks, internet-based radio service networks, combinations thereof, and the like. The communications component718can process data from a network such as the Internet, an intranet, a broadband network, a WI-FI hotspot, an Internet service provider (“ISP”), a digital subscriber line (“DSL”) provider, a broadband provider, combinations thereof, or the like.

The communication device700also can include one or more sensors724. The sensors724can include temperature sensors, light sensors, air quality sensors, movement sensors, orientation sensors, noise sensors, proximity sensors, or the like. As such, it should be understood that the sensors724can include, but are not limited to, accelerometers, magnetometers, gyroscopes, infrared sensors, noise sensors, microphones, combinations thereof, or the like. Additionally, audio capabilities for the communication device700may be provided by an audio I/O component726. The audio I/O component726of the communication device700can include one or more speakers for the output of audio signals, one or more microphones for the collection and/or input of audio signals, and/or other audio input and/or output devices.

The illustrated communication device700also can include a subscriber identity module (“SIM”) system728. The SIM system728can include a universal SIM (“USIM”), a universal integrated circuit card (“UICC”) and/or other identity devices. The SIM system728can include and/or can be connected to or inserted into an interface such as a slot interface730. In some embodiments, the slot interface730can be configured to accept insertion of other identity cards or modules for accessing various types of networks. Additionally, or alternatively, the slot interface730can be configured to accept multiple subscriber identity cards. Because other devices and/or modules for identifying users and/or the communication device700are contemplated, it should be understood that these embodiments are illustrative, and should not be construed as being limiting in any way.

The communication device700also can include an image capture and processing system732(“image system”). The image system732can be configured to capture or otherwise obtain photos, videos, and/or other visual information. As such, the image system732can include cameras, lenses, charge-coupled devices (“CCDs”), combinations thereof, or the like. The communication device700may also include a video system734. The video system734can be configured to capture, process, record, modify, and/or store video content. Photos and videos obtained using the image system732and the video system734, respectively, may be added as message content to an MMS message, email message, and sent to another communication device. The video and/or photo content also can be shared with other devices via various types of data transfers via wired and/or wireless communication devices as described herein.

The communication device700also can include one or more location components736. The location components736can be configured to send and/or receive signals to determine a geographic location of the communication device700. According to various embodiments, the location components736can send and/or receive signals from global positioning system (“GPS”) devices, assisted-GPS (“A-GPS”) devices, WI-FI/WIMAX and/or cellular network triangulation data, combinations thereof, and the like. The location component736also can be configured to communicate with the communications component718to retrieve triangulation data for determining a location of the communication device700. In some embodiments, the location component736can interface with cellular network nodes, telephone lines, satellites, location transmitters and/or beacons, wireless network transmitters and receivers, combinations thereof, and the like. In some embodiments, the location component736can include and/or can communicate with one or more of the sensors724such as a compass, an accelerometer, and/or a gyroscope to determine the orientation of the communication device700. Using the location component736, the communication device700can generate and/or receive data to identify its geographic location, or to transmit data used by other devices to determine the location of the communication device700. The location component736may include multiple components for determining the location and/or orientation of the communication device700.

The illustrated communication device700also can include a power source738. The power source738can include one or more batteries, power supplies, power cells, and/or other power subsystems including alternating current (“AC”) and/or direct current (“DC”) power devices. The power source738also can interface with an external power system or charging equipment via a power I/O component740. Because the communication device700can include additional and/or alternative components, the above embodiment should be understood as being illustrative of one possible operating environment for various embodiments of the concepts and technologies described herein. The described embodiment of the communication device700is illustrative, and should not be construed as being limiting in any way.