The present invention relates generally to telecommunications call processing and more particularly to controlling outgoing and incoming telecommunications.
Various types of telecommunications services exist for performing various types of call screening. However, one shortcoming that is common amongst these systems is that they utilize a single piece of information, such as an originating telephone, as the basis for screening calls. Because these systems utilize a single piece of information, they do not effectively screen all calls that can be made by a user. For example, by using only the dialed telephone number to screen outgoing calls, calls that are directed to the same entity, but initiated using other information, such as an internet protocol address for a voice over internet protocol call, are not screened. Similar shortcomings exist with respect to the screening of incoming telephone calls. Another shortcoming amongst these systems is that they fail to notify a user of the number of calls, types of calls, etc. that were screened. Yet another shortcoming is the lack of call control for wireless communication devices, such as cellular telephones. An improved system and method for screening calls that overcome these deficiencies are needed.
By way of introduction, the embodiments described below include a method and system for effectively screening calls. In one embodiment, a user at a user station can provide information that can be used to provide comprehensive call screening for incoming and/or outgoing calls that are made to and/or from different communication devices and that are made using different types of communication networks. For example, a user at the user station can provide a list of traditional ten-digit telephone numbers that are used to provide call screening. The system can store those numbers so that incoming and/or outgoing calls can be effectively screened in accordance with screening rules established by the user. In one example, the numbers provided by the user can be used to determine which incoming and/or outgoing calls should be blocked. In another example, the numbers provided by the user can be used to determine which incoming and/or outgoing calls should be allowed. The system applies to both wireline and wireless calls in one or more communication systems. In addition, the system can cross reference those ten-digit telephone numbers to internet protocol numbers so that incoming calls that are directed to the called communication station and are made using a VoIP network can also be effectively screened in accordance with screening rules established by the user.
Ensuring that incoming and/or outgoing calls are effectively screened is particularly advantageous for a communication system in which more than one user has access to the communication devices. In a residential setting, the user may be a homeowner who has a babysitter or other person that is temporarily present in the user's home. In this example, the user may wish to prevent the babysitter from making certain types of calls, such as long distance telephone calls, and may also wish to prevent the babysitter from receiving calls from a certain telephone number. In another example, the user may be a parent who wishes to prevent certain outgoing calls during times when only the user's children have access to the communication device. In a business setting, the user may be a business owner or an administrator who wishes to prevent employees from making and/or receiving certain types of calls. The systems and methods described herein effectively satisfy all of these criteria.
In another embodiment, the systems and methods described herein enable the call screening information provided by the user to be applied to a number of different communication devices. In one example in a residential setting, the user's call screening preferences can be applied to all of the telephones associated with a family plan, including home-based analog telephones and cellular, personal communication system (PCS) or other wireless telephones. In this example, the user's (i.e. parent's) call screening preferences can be applied to a communication device, such as a cellular telephone, that may be in the possession of the user's child. In another example in a business setting, the user or administrator's call screening preferences can be applied to all of the communication devices associated with the business organization, including telephones and computers.
In a further embodiment, the systems and methods described herein further enable users at the user station to be notified of the number of calls, types of calls, etc. that have been screened. Again, this feature may be desirable in both residential and business settings, as the user or administrator may learn valuable information from being notified of the types of calls that were screened. For example, the user or administrator may learn who was attempting to make unauthorized outgoing calls, as well as the frequency of such attempted unauthorized calls. Also, the user or administrator may learn the source and frequency of unauthorized incoming calls, as well as the intended recipients of the unauthorized incoming calls.
By way of example,
The network element 120 preferably comprises one or more devices that cooperate to provide call screening services, and other services, as disclosed herein. Examples of the one or more devices include, but are not limited to, a service switching point, a service control point, a service node/intelligent peripheral, a database, a softswitch, a server, a media server, an application server, a trigger router, other advanced intelligent network (AIN) elements, other voice over internet protocol (VoIP) elements, and combinations thereof. In some applications, the network element 120 includes wireless communication equipment such as one or more base stations in radio communication with one or more radio telephones such as calling communication station 150 and called communication station 160. Preferably, the network element 120 can perform the functions described herein through the use of computer readable program code written in any suitable programming language and implemented utilizing any suitable operating system. Alternatively, the network element can perform the functions described herein through the use of hardware in the form of a hardwired computer, an integrated circuit, or a combination of hardware and computer readable program.
The communication network 130 preferably comprises a telecommunications network, such as the public switch telephone network (PSTN) or a cellular or PCS network, as known by those skilled in the art. Alternatively, the communication network can comprise a computer network, such as the Internet, or any other network that is adapted to transmit information.
The user station 140 preferably comprises a computer. Alternatively, the user station can comprise a communication device such as an analog telephone, a wireless communication device, a cellular communication device, a PCS device which accesses the network 130 using wireless protocols, or an device which accesses the network using the Integrated Services Digital Network (ISDN), or any other form of communication device adapted for use in the present embodiments.
The calling communication station 150 and the called communication station 160 preferably comprise a communication device, such as an analog telephone, a wireless communication device, a cellular communication device, a computer, a PCS device, an ISDN device, or any other form of communication device adapted for use in the present embodiments.
By way of further example,
The SSP 210 is preferably coupled with the calling communication station 150 and the called communication station 160 and enables a calling party at calling telephone station 150 to place calls to the called communication station 160. In some instances, the calling communication station 150 and the called communication station 160 may be coupled with different SSPs, and in such an instance, the SSPs can route calls among one another in accordance with a signaling protocol such as Signaling System 7 (SS7), internet protocols, or other such protocols, as known by those skilled in the art. The SSP 210 is operative to generate triggers, such as termination attempt triggers (TATs) and originating triggers, and transmit queries in response to the triggers. For example, the SSP 210 can generate a query and transmit it to the SCP 230 via the STP 220 if a certain condition has been satisfied. The queries preferably enable the SSP 210 to request the return of certain information, such as call screening information, call identification information, call processing information, and call routing information, from the SCP 230. The SSP 210 can receive information from the SCP 230 and take further action based upon the information it receives.
The STP 220 preferably comprises a network switch that transmits signaling commands within the network. For example, the STP 220 can transmit queries and responses to queries between the SSP 210 and the SCP 230.
The SCP 230 preferably comprises an AIN element that can store information, receive queries, analyze information included within the queries, perform database or other searches, and transmit information to and receive information from other network elements. The SCP 230 preferably includes a set of predetermined logic rules that enable it to perform these and other actions. For example, the SCP 230 can receive a query that is generated by the SSP 210 and can access the database 240 to perform a database search or lookup. The SCP 230 can also transmit information to SSP 210. The SCP 230 is preferably implemented by a combination of hardware and software, and in an alternative embodiment, a suitable processor can be used in place of the SCP 230.
In an embodiment, the SCP 230 and/or the database 240 can store the table 241 shown in
The database 240 preferably comprises a traditional database, as known to those skilled in the art. Alternatively, the database 240 can comprise a CNAM or ENUM database, as known by those skilled in the art. The database 240 can also include predetermined logic rules that enable it to perform analyses and to perform other actions such as database searches and lookups, and may also perform such analyses, searches, and lookups in response to requests for information that can be transmitted from other network elements, such as the SCP 230. The database 240 may be divided in any convenient way, including among separate databases or on different storage media, kept locally or remotely.
The service node/intelligent peripheral (SN/IP) 250 preferably comprises a network element that stores call control information and performs call related functions. SN/IP 250 can receive calls, performs searches, analyzes data, and transmit information to the calling communication station 150 and the called communication station 160 SN/IP 250 can also include a text to speech module that performs text to speech conversions to produce an audible representation of textual information or data. Such modules and conversions are well known by those skilled in the art. SN/IP 250 can also record information, such as audible messages transmitted from the calling communication station 150 and the called communication station 160 and can transmit audible messages to the calling communication station 150 and the called communication station 160.
By way of further example,
The system 300 implements a wireless communication system of any suitable type. The system 300 should not be limited by particular technology but can be extended to include any type of cellular radio system, personal communication system (PCS), trunked radio network, satellite radio system or other radio communication service. Moreover, the system 300 may include combinations of these, or networks of networks or may separately include combinations of wireless networks combined with wire line networks. Examples of such wireless networks include cellular and PCT systems operating according to the Code Division, Multiple Access (CDMA) standard, Time Division, Multiple Access (TDMA) standard, the Global System for Mobile communication (GSM) standard, third generation (3G) radio standards, and others systems now known or to be developed.
In the embodiment of
Each base station 320, 330 provides radio communication service to a geographical service area adjacent to the base station. Radio communication is according to one or more radio protocols which define signalling and information transfer for the radio links between the base stations 320, 330 and mobile stations such as the calling communication station 150 and the called communication station 160. Further, the base stations 320, 330 provide handover of communications with a respective mobile station from one base station to another base station, permitting mobility of the mobile stations.
The base stations 320, 330 are controlled by the MSC 340. The MSC 340 operates as a switch for call processing and control. The MSC 340 is in wire line communication with the base stations 320, 330 to monitor and control calls between the respective base stations and mobile stations in the network. During a handover, the MSC 340 controls the identification of a suitable handover candidate base station, initiation of communication with the candidate base station and termination of communication with the current base station. Moreover, the MSC 340 controls communication between a base station and the public switched telephone network (PSTN) 360. Thus, a mobile station such as the calling communication station 150 can place a call outside the system 300, for example, to a communication station in another wireless network or to a communication station in a wire line network such as the system 200 of
The MSC 340 operates in conjunction with a database 350 which stores information about the communication stations 320, 330, call processing data and instructions, account information and other information. Thus, when a call is initiated, a base station contacts the MSC 340 which obtains call processing and account information from the database 350 and returns the necessary information to the base station. When a handover becomes necessary, the MSC 340 obtains the necessary information about candidate base stations and controls the handover process using information retrieved from the database 350. The database 350 may be maintained as a single database, as a plurality of memory devices, or in any convenient form.
The MSC 340 also includes a home location register (HLR) 370 and a visiting location register (VLR) 380. The home location register is part of the main database of permanent subscriber information for the system 300. The HLR is a component of a CDMA system, a TDMA system, and a GSM system, and a similar component may be included in other present and future systems. The HLR 370 is maintained by the subscriber's home carrier (or the network operator where the user initiated the call). The HLR contains pertinent user information, including address, account status, and preferences. The HLR interacts with the MSC 340, which is a switch used for call control and processing. As noted, the MSC 340 also serves as a point-of-access to the PSTN.
The Visiting Location Register (VLR) 380 maintains temporary user information (such as current location) to manage requests from subscribers who are out of the area covered by their home system 300. The VLR 380 is updated with information from the HLR 370.
When a user initiates a call, switching equipment including the MSC 340 determines whether or not the call is coming from the mobile unit's home area. If the user is out of the home area, the area VLR 380 sends out a request for information required to process the call. An MSC queries the HLR identified by the call for information, which it relays to the appropriate MSC, which in turn relays it to the VLR 380. The VLR 380 sends routing information back to the MSC which allows it to find the station where the call originated, and, finally, the mobile unit to connect. In one embodiment, communications between the elements are based on Signaling System 7 protocols and signaling.
For controlling screening of calls, a table similar to the table of
Referring now to
The softswitch 410 is preferably coupled with the calling communication station 150 and the called communication station 160 and enables a calling party at calling telephone station 150 to place calls to the called communication station 160. In this embodiment, the softswitch 410 functions in largely the same manner as the SSP 210 described above. The softswitch is operative to generate triggers, such as termination attempt triggers (TATs) and originating triggers, and to transmit queries in response to the triggers. For example, the softswitch 410 can generate a query and transmit it to the application server 430 via the trigger router 420 if a certain condition has been satisfied. The queries preferably enable the softswitch 410 to request the return of certain information, such as call screening information, call identification information, call processing information, and call routing information, from the application server 430. The softswitch 410 can receive information from the application server 430 and take further action based upon the information.
The trigger router/gateway 420 preferably comprises a network switch that transmits signaling commands, such as triggers and queries, within the network. In this embodiment, trigger router 420 functions in largely the same manner as the STP 220 described above.
The application server 430 preferably comprises a network element that can store information, receive queries, analyze information included within the queries, perform database or other searches, and transmit information to and receive information from other network elements. In this embodiment, the application server 430 functions in largely the same manner as the SCP 230. The application server 430 preferably includes a set of predetermined logic rules that enable it to perform these and other actions. For example, the application server 430 can receive a query that is generated by the softswitch 410 and can access the database 440 to perform a database search or lookup. The application server 430 can also transmit information to softswitch 410. In one embodiment, the application server 430 and/or the database 440 can store the table 241 shown in
The media server 450 preferably comprises a network element that stores call control information and performs call related functions. In this embodiment, the media server 450 functions largely in the same manner as the SN/IP 250 described above in conjunction with
The systems depicted in
In the case of the systems of
In an alternative embodiment, the identifier provided by the user can be used in call screening such that only calls to that identifier are allowed to go through. Calls to identifiers other than those provided by the user are screened. In this example, an in the other examples herein, screening the call may be accomplished by any suitable method which prevents completion of the call. For example, before attempting to terminate a call from a serving SSP to the screened called communication station, an announcement may be played to the calling party and the call ended. Alternatively, the call may be left to ring, from the perspective of the calling party, without actually ringing the called communication station and without providing an announcement. In the case of a wireless called communication station, the MSC may screen the call by refusing to locate the called wireless device in the network. Alternatively, the call may be forwarded from the MSC to the base station serving the area where the wireless device is located, with the base station then refusing to provide a paging signal to the wireless device, thereby screening the call.
In the wireless embodiment of
Based upon the current date and time and by accessing stored information of the HLR 370 or VHLR 380, the MSC 340 can also determine whether call screening should be performed for outgoing calls made from the calling communication station 150. If call screening should be performed, MSC 340 can compare information associated with the intended destination of the call, such as a telephone number, to the identifiers provided by the user for call screening to determine whether one of the identifiers matches the identifier for the destination. If one of the identifiers matches the identifier for the destination, the call can be screened. Thus, calls to the identifier or identifiers provided by the user are screened while all other calls are not.
In the wireless environment of
The systems depicted in
As noted, the user can transmit other call screening information, including an identifier and date and time information for the desired screening schedule that signifies the user's call screening preferences, block 506. The telephone number provided by the user is received by the system, block 508. The telephone number can then be stored along with an indicator that signifies that calls from the telephone number on the specified date and during the specified time should be screened. The identifier, i.e., a telephone number in this example, in some embodiments is also used to determine a second identifier, an IP address for a VoIP device or a mobile identification number in this example, which corresponds to the telephone number. This is indicated in
At block 512, it is determined if there are more numbers to add to the call screening information. For example, the user may wish to have calls to a specified directory number screened from both a land line telephone and calls from a wireless telephone. In one example, a parent wishes to prevent a child making calls to a specified number from both the home land line telephone and from the child's personal wireless phone. If there are more originating numbers to add to the call screening information at block 512, at block 514, the user is prompted to enter the next number. The method loops through blocks 504, 506, 508 and 510 until the user indicates that all numbers from which outgoing calls should be blocked have been added. The method ends at block 516.
Other alternatives for entering the call screening information may be substituted or offered for the convenience of the subscriber. For example, the subscriber to the service may access the call screening service using a personal computer over the internet and be presented with one or more web pages on which the call screening information may be entered. In one example, on a first page, the subscriber is presented with a set of data entry boxes for specifying the originating numbers from which calls should be screened. The originating numbers may be land line telephone (directory) numbers, cellular telephone numbers (or mobile identification numbers) or VoIP telephone numbers or network addresses. On the same page or a subsequent page, the user may be provided with a set of data entry boxes for entering the directory numbers to which calls from the previously-specified originating number should be blocked. On yet a subsequent page or pages, the user may be provided with data entry boxes for specifying a blocking schedule. Other information may be collected as well.
In another alternative, the user may be provided with access to a dial up number for specifying the call screening information, including the originating numbers to which the service is to be applied and the numbers to be screened. The user interaction may be by engaging a human operator verbally to specify the call screening information or by entering keypresses on a telephone. Other method for specifying the call screening information may be provided as well.
These arrangements are particularly useful where the telephone devices to which the subscriber wishes to apply the call screening service are provided by a single service provider. For example, one service provider may provide wire line telephone service over and AIN network and the PSTN and wireless service over a cellular telephone network and VoIP service over the internet. The subscriber may subscribe to service on one, two or three of these systems but may have a single account for recording accounting information, call screening information, and other data. The disclosed system and method may be used to set the account for a subscriber to specify call screening for communication devices operable on all networks.
A method of implementing a call screening process may be described in conjunction with
The SCP 230 or application server 430 can also determine, based upon the current date and time and by accessing stored information, whether call screening should be performed for outgoing calls made from the calling communication station 150, block 610. For example, the SCP can retrieve information from the SCP database 240 and determine if call screening has been specified by the subscriber, if a schedule has been specified and if the current call should be screened.
If call screening should not be performed, the call is processed in the normal manner, block 612. For example, the SCP 230 returns call routing information to the SSP 210 to instruct the SSP 210 where to route the call for the called communication station. The proceeds without further interruption.
If call screening should be performed, block 614, the SCP 230 or application server 430 can compare information associated with the source of the call, such as a telephone number for a traditional telephone call and an IP address for a VoIP call, to the identifiers provided by the user for call screening to determine whether one of the identifiers matches the identifier for the source. If one of the identifiers matches the identifier for the destination, the call can be screened. Thus, calls from the identifier or identifiers provided by the user are screened while all other calls are not. If the call is screened, the system can provide a message to the caller advising of the fact. For example, the call processing logic executed by the SCP 230 may direct the SN/IP 2504 (
In an alternative embodiment, the identifier provided by the user can be used in call screening such that only calls from that identifier are allowed to go through. Calls from identifiers other than that provided by the user are screened.
In the wireless context of
In the examples described above, the information that is transmitted by the user is preferably transmitted using a computer and a computer network. In these embodiments, the information can be transmitted as data using a communication protocol, such as TCP/IP. In alternative embodiments, the information can be transmitted by the user using a telephone. In these embodiments, the information can be transmitted using DTMF tones. In further alternative embodiments, the information can be transmitted using the other communication devices described herein. After the information provided by the user has been used to store the identifiers, call screening logic, etc., as described above, the user can activate and deactivate the call screening by providing control signals. In one embodiment, the user can utilize a computer to access a GUI provided via website or some other computer platform to activate and deactivate the call screening. In another embodiment, the user can utilize a telephone to provide DTMF tones to activate or deactivate the call screening. By way of example, the user could utilize a * command, such as *96 to activate or deactivate the call screening. In further alternative embodiments, the call screening can be activated and deactivated using the other communication devices described herein.
In the examples described above, as an alternative to automatically screening calls if a certain precondition is met, the systems can inform the caller that the call that they are attempting to make is subject to screening and can provide the caller with an opportunity to enter an override code, such as password or personal identification number (PIN), which would allow the call to avoid screening. The password or PIN can be selected by the user or administrator and can be used as a security measure such that those that know the password or PIN will be allowed to make calls that those who do not know the password or PIN are not allowed to make.
The systems disclosed and described herein can also inform the user of calls that were screened. In one embodiment, the system can keep track of the calls that were screened and can send an email to the user at the user station information the user of the calls that were screened. The email can include general information, such as the number of calls that were screened, and can also include more specific information, such as the identifiers for the outgoing or incoming calls that were screened, as well as the date and time of the screening. In an alternative embodiment, the system and provide information about the calls that were screened via a webpage that can be accessed by the user at the user station. In further alternative embodiments, the user can be notified of the screened calls via Short Message Service notification, text messaging, or by regular mail.
The act of receiving information from user at the user station can be facilitated through the use of a graphical user interface (GUI) through which the user can provide the information that specifies their screening preferences. The GUI can include fields in which the user can enter identifiers for call sources and/or destinations for which the user would like call screening. The GUI can also include fields that allow the user to enter a day of the year, day of the week, and/or time of day for the call screening to be active.
In one embodiment, the act of screening a call can comprise canceling the call by not allowing the incoming or outgoing call to be completed. In another embodiment, the act of screening a call can comprise routing an incoming call to voicemail. In yet another embodiment, the act of screening a call can comprise sending a message to the calling party that advises them that the call cannot be complete because of the user's call screening preferences.
The calling party can initiate the method by dialing a telephone number. Alternatively, the calling party can initiate the call using a computer. One such way is by activating a push or click to talk button, which are commonly available on websites.
At block 702, the calling party dials out from a calling communication station. A called directory number (DN) is associated with the call. The call is received at an SSP associated with the calling communication station. The SSP routes a query to the SCP for call processing instructions. At block 704, the SCP determines if call control is activated for the calling communication station. Call control includes call blocking features including, in some embodiments, blocking outgoing calls according to the called number and blocking incoming calls according to the calling number, and blocking calls according to a schedule by time of day, day of week, etc. The SCP retrieves a call control file from the SCP database or any other suitable data storage location in the network. The call control file stores data defining call control options as specified for the calling communication station. If the SCP determined that call control is not activated, control proceeds to block 706 and the SCP routes the call as dialed.
In this exemplary embodiment, the SN/IP is used to interact with the calling party and called party. In other embodiments, the SSP or end office switch which serves the called communication station may be used to interact with the calling party or called party. If at block 704, call control is activated, the SCP retains control of the call or routes the call to an intelligent peripheral, referred to as an IP or SN/IP. At block 708, the SN/IP or SCP determines if the called number is an emergency number, such as 911. If so, the SN/IP re-routes the call back to the SCP or SCP retains call control and the call control is overridden. At block 706, the SCP routes the call normally.
Otherwise, at block 710, the SN/IP or SCP determines if the called DN is on a restricted list. The restricted list is established by the subscriber to the call control service, for example, using an interactive voice response (IVR) system or by using a world wide web browser to access a server which is in data communication with the telecommunications network including the SCP, SSP and SN/IP. The restricted list defines called directory numbers to which calls from the calling communication station will be blocked by the call screening service. Alternatively, or in addition, the restricted list may store directory numbers to which call from the calling communication station are to be completed, with non-listed numbers being blocked by the service. The SN/IP or SCP compares the called DN with the contents of the restricted list. If the called DN is not on the restricted list, control proceeds to block 706 and the SCP routes the call normally. Otherwise, if the called DN is on the restricted list, control proceeds to block 712.
At block 712, the calling party at the calling communication station is given a chance to override the call screening service. The SN/IP or SSP plays an announcement to the calling party inviting the calling party to enter a personal identification number (PIN) or other override data. The PIN may be established by the subscriber to the call screening service in the same way the restricted list was established. The SN/IP retrieves the PIN from storage, for example, at the SN/IP itself or at the SCP in the SCP database. The SN/IP or SSP then waits for key press entry from the calling communication station.
At block 714, if the calling party enters a PIN which matched the retrieved PIN, control proceeds to block 706, the call screening service is overridden and the SCP routes the call normally. On the other hand, if the an incorrect PIN is entered or if no PIN is entered and the SN/IP or SSP times out waiting for key press entry, control proceeds to block 716 where a counter is incremented. Preferably, a message is played explaining that the entered PIN is incorrect and inviting the calling party to re-enter a PIN. At block 718, the counter value is compared with a threshold value such as 3. The calling party is given 3 opportunities to enter the correct PIN, control remaining in a loop including blocks 714, 716 and 718. If the test of block 718 fails, control proceeds to block 720 where the SN/IP or SSP releases the call back to the SCP which then disconnects the call. At block 722, the SCP issues a disconnect command to the SSP associated with the calling communication station, disconnecting the call. Prior to disconnection. a message may be played to the calling party advising of the call termination.
In some embodiments, some of the operations illustrated in exemplary
At block 802, the SCP processes the incoming call. In some embodiments, the call is routed to the switch or SSP associated with the called communication station, based on the called DN. The SSP which receives the call encounters a terminating attempt trigger and responds to the received call by generating a terminating attempt query message. The query message is passed by the SSP to the SCP to obtain call routing instructions. The SCP retrieves information from the SCP database along with the screening list, if any, associated with the called DN. At block 804, the SCP determines if the call control service is active for the called DN. If not, at block 806, the SCP routes the call normally.
Otherwise, at block 808, the SCP forwards the call to a SN/IP or retains the call for further processing. At block 810, the SN/IP or SCP determines if the call is from an emergency number, such as 911, or from another calling communication station which should never be blocked. If so, call proceeds to block 806 and the SCP routes the call normally. Otherwise, at block 812, the SN/IP or SCP determines if the call is on the restricted list. That is, the SN/IP or SCP compares the called DN with data of the restricted list to identify a match. If there is no match, control proceeds to block 806 and the SCP routes the call normally. Otherwise, if there is a match at block 814, the SN/IP or SSP plays an announcement to the calling party advising of the service and inviting the calling party to enter a PIN or other override data. At block 816, the SN/IP or SCP determines if the received PIN is correct. If so, control proceeds to block 806 and the SCP routes the call normally.
If at block 816, the entered PIN does not match the stored value, at block 818 a counter is incremented. The counter is used to count the number of times the calling party enters an incorrect PIN value. Control remains in a loop including blocks 816, 818, 820 until the counter exceeds a threshold value, such as 3, or until the correct PIN is entered. The caller may be prompted to enter the correct PIN. If the counter exceeds the threshold value, at block 822, the SN/IP releases the call back to the SCP to disconnect the call. At block 824, the SCP issues a disconnect to the switch or SSP. A disconnect message may be played to the calling party advising that the call is blocked.
Provisioning refers to providing or making a service or facility available. In telecommunications terminology, provisioning means providing a product or service, such as wiring or bandwidth or more specifically, a call screening service which automatically processes incoming or outgoing calls for the subscriber. This includes providing telecommunications service to a user, including everything necessary to set up the service, such as equipment, wiring, and transmission.
The provisioned service is specified by two items, the telephone number 902 and an associated password 904. The telephone number 902 defines the communication station for which the service is provisioned. The communication station may be a land line telephone defined by a directory number or may be a wireless phone defined by a wireless telephone number, or may be an IP device defined by an IP address. Alternatively any other identifier may be used. The password 904 is used to provide secure access to the subscriber.
In the illustrated embodiment, general provisioning options include (1) Change/Set PIN and (2) Change/Set email notification address. The PIN is the identifier used to override the service when a call is subject to the screening service.
The provisioned service is further defined by two classes of data, outdialing restrictions 908 and incoming restrictions 910. In accordance with the embodiment of
In the illustrated example, provisioning for outbound calling includes but not be limited to Restrictions ON/OFF 912; Restrict all outbound long distance 914; Restrict all outbound dialing 916; Restrict individual outbound numbers from being dialed 918, with Unlimited entries 920; Allow list (restrict all but these) outbound 922, with Unlimited entries 924; Time of day restrictions for outbound dialing 926; and Day of week restrictions for outbound dialing 928.
The Restrictions ON/OFF 912 is a binary value corresponding to whether the service is active, or turned ON, or inactive and turned OFF. The Restrict all outbound long distance 914 defines whether calls outside the local dialing area are to be permitted or blocked. Restrict all outbound dialing 916 defines whether any outbound calls may be made from the calling communication station. Restrict individual outbound numbers from being dialed 918 specifies that all calls to directory numbers on a list of one or more numbers, stored in the Unlimited entry blocks 920, are to be blocked. When a call is placed from the calling communication station, the status of the Restrict individual outbound numbers from being dialed 918 element is determined, for example, by the SCP or SN/IP processing the call. If the feature is active, the dialed directory number is compared with the list of numbers stored in the Unlimited entry blocks 920. If a match is found, the call is blocked by the service.
Similarly, the item Allow list (restrict all but these) outbound 922 specifies that all outgoing calls are permitted except calls to number on the list stored in the Unlimited entries 924. Time of day restrictions for outbound dialing 926 specify a schedule of times during the day or days of the week when calls should be blocked. Similarly, Day of week restrictions for outbound dialing 928 specify a schedule of days when calls should be blocked. When a call is being processed, the current time and day information is compared with the contents of items 926 and 928 and the call is blocked or completed accordingly.
Further in this example, provisioning for incoming calls include Restrictions ON/OFF 930; Restrict all incoming calls 932; Restrict individual incoming calls 934, with Unlimited entries 936; Allow list (restrict all but these) incoming calls 938, with Unlimited entries 940; Time of day restrictions for incoming calls 942; and Day of week restrictions for incoming calls. The restrictions specified for incoming calls are defined similarly to those for outgoing calls, as described above.
For this example, all call restrictions for outbound dialing and incoming calls are based upon the entries and options defined by the subscriber from the format of
Referring to
In a networked deployment, the computer system may operate in the capacity of a server or as a client user computer in a server-client user network environment, or as a peer computer system in a peer-to-peer (or distributed) network environment. The computer system 1000 can also be implemented as or incorporated into various devices, such as a personal computer (PC), a tablet PC, a set-top box (STB), a personal digital assistant (PDA), a mobile device, a palmtop computer, a laptop computer, a desktop computer, a communications device, a wireless telephone, a land-line telephone, a control system, a camera, a scanner, a facsimile machine, a printer, a pager, a personal trusted device, a web appliance, a network router, switch or bridge, or any other machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine. In a particular embodiment, the computer system 1000 can be implemented using electronic devices that provide voice, video or data communication. Further, while a single computer system 1000 is illustrated, the term “system” shall also be taken to include any collection of systems or sub-systems that individually or jointly execute a set, or multiple sets, of instructions to perform one or more computer functions.
As illustrated in
In a particular embodiment, as depicted in
In an alternative embodiment, dedicated hardware implementations, such as application specific integrated circuits, programmable logic arrays and other hardware devices, can be constructed to implement one or more of the methods described herein. Applications that may include the apparatus and systems of various embodiments can broadly include a variety of electronic and computer systems. One or more embodiments described herein may implement functions using two or more specific interconnected hardware modules or devices with related control and data signals that can be communicated between and through the modules, or as portions of an application-specific integrated circuit. Accordingly, the present system encompasses software, firmware, and hardware implementations.
In accordance with various embodiments of the present disclosure, the methods described herein may be implemented by software programs executable by a computer system. Further, in an exemplary, non-limited embodiment, implementations can include distributed processing, component/object distributed processing, and parallel processing. Alternatively, virtual computer system processing can be constructed to implement one or more of the methods or functionality as described herein.
The present disclosure contemplates a computer-readable medium that includes instructions 1024 or receives and executes instructions 1024 responsive to a propagated signal, so that a device connected to a network 1026 can communicate voice, video or data over the network 1026. Further, the instructions 1024 may be transmitted or received over the network 1026 via the network interface device 1020.
While the computer-readable medium is shown to be a single medium, the term “computer-readable medium” includes a single medium or multiple media, such as a centralized or distributed database, and/or associated caches and servers that store one or more sets of instructions. The term “computer-readable medium” shall also include any medium that is capable of storing, encoding or carrying a set of instructions for execution by a processor or that cause a computer system to perform any one or more of the methods or operations disclosed herein.
In a particular non-limiting, exemplary embodiment, the computer-readable medium can include a solid-state memory such as a memory card or other package that houses one or more non-volatile read-only memories. Further, the computer-readable medium can be a random access memory or other volatile re-writable memory. Additionally, the computer-readable medium can include a magneto-optical or optical medium, such as a disk or tapes or other storage device to capture carrier wave signals such as a signal communicated over a transmission medium. A digital file attachment to an e-mail or other self-contained information archive or set of archives may be considered a distribution medium that is equivalent to a tangible storage medium. Accordingly, the disclosure is considered to include any one or more of a computer-readable medium or a distribution medium and other equivalents and successor media, in which data or instructions may be stored.
Although the present specification describes components and functions that may be implemented in particular embodiments with reference to particular standards and protocols, the invention is not limited to such standards and protocols. For example, standards for Internet and other packet switched network transmission (e.g., TCP/IP, UDP/IP, HTML, and HTTP) represent examples of the state of the art. Such standards are periodically superseded by faster or more efficient equivalents having essentially the same functions. Accordingly, replacement standards and protocols having the same or similar functions as those disclosed herein are considered equivalents thereof.
The illustrations of the embodiments described herein are intended to provide a general understanding of the structure of the various embodiments. The illustrations are not intended to serve as a complete description of all of the elements and features of apparatus and systems that utilize the structures or methods described herein. Many other embodiments may be apparent to those of skill in the art upon reviewing the disclosure. Other embodiments may be utilized and derived from the disclosure, such that structural and logical substitutions and changes may be made without departing from the scope of the disclosure. Additionally, the illustrations are merely representational and may not be drawn to scale. Certain proportions within the illustrations may be exaggerated, while other proportions may be minimized. Accordingly, the disclosure and the figures are to be regarded as illustrative rather than restrictive.
One or more embodiments of the disclosure may be referred to herein, individually and/or collectively, by the term “invention” merely for convenience and without intending to voluntarily limit the scope of this application to any particular invention or inventive concept. Moreover, although specific embodiments have been illustrated and described herein, it should be appreciated that any subsequent arrangement designed to achieve the same or similar purpose may be substituted for the specific embodiments shown. This disclosure is intended to cover any and all subsequent adaptations or variations of various embodiments. Combinations of the above embodiments, and other embodiments not specifically described herein, will be apparent to those of skill in the art upon reviewing the description.
The Abstract of the Disclosure is provided to comply with 37 C.F.R. § 1.72(b) and is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, various features may be grouped together or described in a single embodiment for the purpose of streamlining the disclosure. This disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter may be directed to less than all of the features of any of the disclosed embodiments. Thus, the following claims are incorporated into the Detailed Description, with each claim standing on its own as defining separately claimed subject matter.
The above disclosed subject matter is to be considered illustrative, and not restrictive, and the appended claims are intended to cover all such modifications, enhancements, and other embodiments, which fall within the true spirit and scope of the present invention. Thus, to the maximum extent allowed by law, the scope of the present invention is to be determined by the broadest permissible interpretation of the following claims and their equivalents, and shall not be restricted or limited by the foregoing detailed description.
The present embodiments provide systems and methods for efficiently and effectively screening calls. The present embodiments allow for a user to select parameters for screening incoming and/or outgoing calls that are made to and/or from different communication devices and that are made using different types of communication networks. The user station is able to provide identifiers for call sources and/or destinations that can be used in the systems and methods to determine related identifiers for the call sources and/or destinations so that all calls to or from the sources and/or destinations can be effectively screened. The system and methods also provide for the user to be notified of the number of calls, types of calls, etc. that have been screened. This enables the user to determine the source and/or intended recipient of the screened calls, as well as the frequency of the attempted unauthorized calls.