1. Field of the Invention
The invention is related to the field of communication networks and, in particular, to monitoring communication events involving a handset in real time.
2. Statement of the Problem
Due to the popularity of mobile communications, many different types of people use mobile handsets on a daily basis. Situations may occur where one party may want to monitor the usage of mobile handsets (or fixed-line handsets) by other parties. For example, parents may allow a child to have a cellular phone, but at the same time want to monitor who the child is calling with the phone. Also, employers may issue cellular phones to their employees, but also want to monitor how the phones are being used. Parents and employers are examples of “controlling parties” that want to monitor the usage of a handset that is being used by another party.
Present communication networks provide ways of monitoring how mobile handsets or fixed-line handsets are being used. For instance, most service providers send out a monthly statement indicating the usage of a particular handset. A controlling party may then view the monthly statements to monitor how a handset was used for that month. In some mobile networks or VoIP networks, the service provider may maintain a web site indicating usage of a handset. A controlling party may access the web site to monitor how a handset is being used.
One problem however in present communication networks is that a controlling party cannot monitor the usage of a handset in real time. For instance, a controlling party may view a monthly statement for a handset, but the controlling party has to wait until the end of the month to view the statement. Also, a controlling party may view a web site indicating usage of a handset, but the web site may not be updated for hours after the actual usage of the handset. It may therefore be desirable to allow a controlling party to monitor usage of a handset in real time.
Embodiments of the invention solve the above and other related problems by allowing a controlling party to monitor the usage of a handset in real time. The handset being monitored, which is referred to herein as a reporting handset, may be involved in one or more communication events. Examples of communication events include initiating or terminating voice calls, initiating data sessions, sending or receiving text messages, etc. When a communication event occurs involving the reporting handset, a communication event report is generated in the reporting handset or the communication network. The communication event report is then transmitted to a controlling handset of the controlling party so that the controlling party may view the report. Because the communication event report is generated and transmitted to the controlling party responsive to the occurrence of the communication event, the report of the communication event is advantageously provided to the controlling party in real time. The controlling party may then act in a particular manner responsive to the occurrence of the communication event. For example, the controlling party may authorize or deny the communication event involving the reporting handset. This advantageously gives the controlling party more control over how the reporting handset is being used.
One embodiment of the invention comprises a communication network operable to monitor usage of a reporting handset. The communication network identifies criteria defining a communication event involving the reporting handset. The criteria define what conditions comprise a communication event in the reporting handset, such as initiation of a voice call. The communication network then monitors signaling messages for the reporting handset based on the criteria to identify an occurrence of the communication event involving the reporting handset. In response to identifying the occurrence of the communication event involving the reporting handset, the communication network generates a communication event report, and transmits the communication event report to a controlling handset. The controlling handset may then display the communication event report to a controlling party so that the controlling party may view the usage of the reporting handset.
In another embodiment, the controlling party may control whether or not the communication event is allowed to continue. To allow for this type of control, the communication network suspends the communication event involving the reporting handset. The communication network then generates an authorization request message requesting authorization of the communication event identified for the reporting handset, and transmits the authorization request message to the controlling handset. The communication network receives an authorization response message from the controlling handset indicating whether or not the communication event is authorized. If the authorization response message indicates that the communication event is authorized, then the communication network permits the communication event. If the authorization response message indicates that the communication event is not authorized, then the communication network prohibits the communication event.
Another embodiment of the invention comprises a system that supports monitoring the usage of a reporting handset. For this system, a controlling handset identifies criteria defining a communication event involving the reporting handset. The controlling handset then generates a report request message, inserts the criteria in the report request message, and transmits the report request message to the reporting handset over a communication network.
The reporting handset receives the report request message, and processes the report request message to identify the criteria. The reporting handset then monitors its activities based on the criteria to identify an occurrence of the communication event. In response to identifying the communication event, the reporting handset generates a communication event report, and transmits the communication event report to the controlling handset over the communication network.
The controlling handset receives the communication event report from the communication network, and displays the communication event report to a controlling party. As with the prior embodiment, the controlling party may then control whether or not the communication event is allowed to continue.
The invention may include other exemplary embodiments described below.
The same reference number represents the same element or same type of element on all drawings.
A handset as described herein comprises some type of end-user communication device that is used for voice calls, text/multimedia messaging, data sessions, or other types of communication over a telecommunication network. The handset may be a mobile device, such as a cellular phone, a mobile VoIP phone, etc. The handset may alternatively be a fixed-line device, such as a legacy phone, an Ethernet-connected VoIP phone, etc. The term “handset” may also be referred to as User Equipment (UE), an end-user terminal, or an end-user station.
As described in the Background, when one party uses a handset for communication, another party may want to monitor the usage of the handset remotely. For example, parents may allow a child to have a handset, but at the same time want to monitor the usage of the handset by the child. Also, employers may issue handsets to their employees, but also want to monitor how the handsets are being used. A party that is in a position to monitor the usage of a handset by another is referred to herein as a “controlling party”. The party that is using the handsets being monitored is referred to herein as a “reporting party”. A controlling party has some type of family relationship, business relationship, or other type of authoritative relationship over the reporting party. According to the embodiments described below, a controlling party is able to monitor the usage of a handset of a reporting party in real time.
Communication network 100 may comprise a mobile network, such as a CDMA network or a UMTS/GSM network, or may comprise a fixed-line network, such as a PSTN. Communication network 100 may also comprise a circuit-switched network or a packet network. For example, communication network 100 may comprise an IP Multimedia Subsystem (IMS) network in one embodiment. Communication network 100 is shown as generally including one or more network elements 102. A network element comprises any system, server, or device operable to provide a communication service within communication network 100. Those skilled in the art will appreciate that a network element 102 may comprise a switch (or MSC), an HLR, etc, in a circuit-switched network. Network element 102 may alternatively comprise a Serving-Call Session Control Function (S-CSCF), a Home Subscriber Server (HSS), or an application server in an IMS network.
Communication network 100 is also connected to a controlling handset 120 operated by a controlling party 122 that has requested to be notified of communication events involving reporting handset 110. Communication network 100 provides a service that allows controlling party 122 to monitor the usage of reporting handset 110 in real time. Although the term “handset” is used to describe the equipment used by controlling party 122, those skilled in the art will appreciate that controlling party 122 may use other types of devices to monitor the usage of reporting handset 110, such as a computer.
In step 202, network element 102 within communication network 100 identifies criteria defining a communication event involving reporting handset 110. A communication event comprises an action or actions performed by reporting handset 110 to communicate over communication network 100. Examples of communication events include initiating or terminating voice calls, initiating data sessions, sending or receiving text messages, etc. Criteria for a communication event comprise conditions, parameters, or any other information defining one or more communication events. As an example, criteria for a communication event may define a type of communication as a communication event, such as initiation or termination of a voice call, initiation of a data session, sending or receiving a text/multimedia message, etc. Criteria for a communication event may further define an originator or recipient of a communication, such as initiation of a voice call to a particular directory number, termination of a voice call from a particular directory number, initiation of a text/multimedia message to a particular directory number, a data connection to a specific destination, etc. Criteria for a communication event may further define a location of reporting handset 110. The criteria may be pre-provisioned in communication network 100 by a service provider or controlling party 122, or may be dynamically defined by controlling party 122.
In step 204, network element 102 monitors signaling messages for reporting handset 110 based on the criteria to identify an occurrence of the communication event involving reporting handset 110. Assume for example, that the criteria define a communication event as initiation of a voice call. If reporting handset 110 transmits a SIP INVITE to communication network 100 to initiate a call, then network element 102 (e.g., an S-CSCF) processes the SIP INVITE to identify an occurrence of a communication event.
Steps 202 and 204 of method 200 may be performed responsive to a specific request from controlling handset 120. For example, network element 102 may receive a SIP SUBSCRIBE message from controlling handset 120 requesting to be notified of a communication event involving reporting handset 110. In response to the SIP SUBSCRIBE, network element 102 identifies the criteria (step 202) and begins monitoring the signaling messages for reporting handset 110 (step 204). Alternatively, network element 102 may be pre-provisioned to automatically identify the criteria (step 202) and monitor the signaling messages for reporting handset 110 (step 204).
In step 206, network element 102 generates a communication event report responsive to identifying the occurrence of the communication event involving reporting handset 110. The communication event report includes information indicating that the communication event has occurred. The communication event report may also include other information about the communication event, such as a calling party number, a called party number, a calling party name, a called party name, a location of reporting device 110, content of the event, etc. If the communication event comprises a text/multimedia message, then the communication event report may include the content of the message. If the communication event comprises a data session, then the communication event report may include the content of the session, or a location of the content, such as a URL.
In step 208, network element 102 transmits the communication event report to controlling handset 120 for display to controlling party 122. In response to receiving the communication event report, controlling handset 120 processes the information in the report, and displays the information to controlling party 122 through a user interface. Because controlling handset 120 receives the communication event report in response to communication network 100 detecting the occurrence of the communication event, controlling handset 120 in effect receives the communication event report in real time.
Because controlling handset 120 receives the communication event report in real time, controlling party 122 may be able to act upon the communication event immediately. For example, controlling party 122 may control whether or not the communication event is allowed to continue, which is illustrated in
In step 302, network element 102 suspends the communication event involving reporting handset 110. For example, if the communication event comprises initiation of a voice call from reporting handset 110, then network element 102 suspends set up of the voice call. Upon suspending the communication event, network element 102 may provide an announcement or send a message to reporting UE 110 and/or controlling handset 120 indicating that the communication event has been suspended. In step 304, network element 102 generates an authorization request message requesting authorization of the communication event identified for reporting handset 110. In step 306, network element 102 transmits the authorization request message to controlling handset 120. Those skilled in the art will appreciate that the authorization request message may be bundled with the communication event report.
In response to the authorization request message, controlling handset 120 prompts controlling party 122 about whether the communication event is authorized. For example, if the communication event comprises a voice call, then controlling handset 120 prompts controlling party 122 as to whether the voice call is authorized. The prompt by controlling handset 120 may include information about the communication event, which was included in the communication event report. For example, if the communication event comprises a voice call to Randy Smith, then controlling handset 120 prompts controlling party 122 as to whether the voice call to Randy Smith is authorized, and may include a cost of the call being placed. If the communication event comprises a text/multimedia message, then controlling handset 120 prompts controlling party 122 as to whether the text/message is authorized. The communication event report may include the actual text/multimedia message for controlling party 122 to view. Based on the input from controlling party 122, controlling handset 120 generates an authorization response message, and transmits the authorization response message to communication network 100.
In step 308, network element 102 receives the authorization response message from controlling handset 120 indicating whether or not the communication event is authorized. If the authorization response message indicates that the communication event is authorized, then network element 102 permits the communication event involving the reporting handset in step 310. For example, if the communication event comprises initiation of a voice call, then network element 102 allows set up of the voice call to continue. If the authorization response message indicates that the communication event is not authorized, then network element 102 prohibits the communication event involving the reporting handset in step 312. For example, if the communication event comprises initiation of a voice call, then network element 102 blocks the set up of the voice call.
Because communication network 100 seeks authorization from controlling party 122 before the communication event is performed, controlling party 122 is able to control whether or not the communication event is performed. As a result, controlling party 122 may be able to control whether or not reporting party 112 can place or receive a call through reporting handset 110. Controlling party 122 may also be able to control whether or not reporting party 112 can place a call to certain directory numbers or called parties through reporting handset 110, such as to long distance numbers or high-toll numbers (i.e., 1-900 numbers).
In the embodiment shown in
Monitoring system 404 comprises any components, devices, processors, or applications operable to monitor the usage of a reporting handset 110. For example, monitoring system 404 may comprise a specialized monitoring application that is running on a processor in controlling handset 120. The monitoring application provides the functions in controlling handset 120 in order to allow controlling party 122 to monitor usage of reporting handset 110, and possibly to control events involving reporting handset 110. The monitoring application may store criteria that define communication events for reporting party 110, may generate user interface screens in order to interact with controlling party 120, and may perform any other functions to allow controlling party 122 to monitor usage of reporting handset 110.
User interface 406 comprises any components or devices operable to receive input from a user, such as a keypad, a pointing device, etc, and/or convey content to the user, such as a display, a speaker, etc.
Reporting system 504 comprises any components, devices, processors, or applications operable to report one or more communication events to a controlling handset 120. For example, reporting system 504 may comprise a specialized reporting application that is running on a processor in reporting handset 110. The reporting application provides the functions in reporting handset 110 in order to report communication events. The reporting application may process criteria that define communication events, and then monitor activities of other applications 508 in reporting handset 110 to identify the occurrence of one or more communication events. The reporting application may then report the communication events to controlling handset 120.
User interface 506 comprises any components or devices operable to receive input from a user, such as a keypad, a pointing device, etc, and/or convey content to the user, such as a display, a speaker, etc. Applications 508 represent one or more call/event-related applications that are typically programmed into a handset. For example, application 508 may comprise a voice call application that allows reporting handset 110 to initiate or terminate a voice call. Application 508 may comprise a text/multimedia messaging application that allows reporting handset 110 to send or receive text/multimedia messages. Application 508 may comprise a data application that allows reporting handset 110 to access the internet or initiate other types of data sessions.
In
In step 604, monitoring system 404 generates a report request message requesting that controlling handset 120 be notified of the communication event. Monitoring system 404 then inserts the criteria in the report request message in step 606. One example of a report request message comprises a SIP SUBSCRIBE message that requests notification of the communication event defined by the criteria. Network interface 402 then transmits the report request message to communication network 100 in step 608.
In
In
In
In
A reporting UE 930 (i.e., a reporting handset) connects to IMS network 906 through packet network 902. Reporting UE 930 is operated by reporting party 932. A controlling UE 940 (i.e., a controlling handset) also connects to IMS network 906 through packet network 902. Controlling UE 940 is operated by controlling party 942. Controlling party 942 has some type of authoritative relationship with reporting party 932, and desires to monitor usage of reporting UE 930 by reporting party 932. Thus, controlling party 942 subscribes to a service provided in IMS network 906 for monitoring reporting UE 930. As part of the monitoring service, controlling party 942 defines criteria for one or more communication events that he/she wants to monitor involving reporting UE 930. Assume for one embodiment that the criteria define a communication event as initiation of a voice call to Randy Smith at directory number 303-450-XXXX. The criteria are provisioned in HSS 916, such as in a service profile for controlling party 942.
At some point of operation, reporting UE 930 registers with IMS network 906. As part of registration, S-CSCF 912 will be identified as the serving network element for reporting UE 930. Similarly, controlling UE 940 registers with IMS network 906. As part of registration, S-CSCF 912 will also be identified as the serving network element for controlling UE 940. When reporting UE 930 and controlling UE 940 register, S-CSCF 912 will download their service profiles from HSS 916. The service profile for controlling UE 940 will indicate that controlling party 942 subscribes to a monitoring service to monitor reporting UE 930. S-CSCF 912 then monitors the activities of reporting UE 930, as is illustrated in
In response to the INVITE, application server 918 queries HSS 916 for the criteria defined for reporting UE 930. HSS 916 then identifies the criteria defined by controlling party 942, and transmits the criteria to application server 918. Application server 918 then processes the SIP INVITE based on the criteria defined by controlling party 942 to determine whether or not a communication event has occurred.
Assume that the SIP INVITE indicates that the INVITE is to initiate a voice call to Randy Smith. Based on the criteria, application server 918 determines that a communication event has occurred in response to the SIP INVITE. Thus, application server 918 generates a communication event report, and transmits the communication event report to controlling UE 940. Controlling UE 940 then displays the communication event report to controlling party 942.
In
The monitoring service may allow controlling party 942 to control whether or not the communication event is allowed to continue.
In response to the authorization request message, controlling UE 940 prompts controlling party 942 about whether the call to Randy Smith is authorized.
Application server 918 receives the authorization response message from controlling UE 942 indicating whether or not the call is authorized. If the authorization response message indicates that the call is authorized, then application server 918 forwards the SIP INVITE to the destination to set up the call, as is illustrated in
The embodiments described in
In response to the SIP SUBSCRIBE, reporting UE 930 checks if controlling UE 940 is authorized to receive a report on communication events. For example, reporting UE 930 may be provisioned with one or more PUIDs of particular UEs that are authorized to receive reports. If controlling UE 940 is not authorized, then the report request is rejected. If controlling UE 940 is authorized, then reporting UE 930 processes the SIP SUBSCRIBE to identify the criteria defined for reporting UE 930. Reporting UE 930 then monitors its internal activities based on the criteria to identify the occurrence of any communication events. In other words, reporting UE 930 determines whether the conditions defined in the criteria are satisfied, and if so a communication event is identified.
Assume again that the criteria define a communication event as initiation of a voice call to Randy Smith at directory number 303-450-XXXX. Further assume for this embodiment that reporting UE 930 initiates a voice call. To initiate the call, reporting UE 930 generates a SIP INVITE, and transmits the SIP INVITE to S-CSCF 912 through packet network 902 and P-CSCF 904. Responsive to the SIP INVITE and based on the criteria, reporting UE 930 determines that a communication event has occurred. Thus, reporting UE 930 generates a communication event report that includes information on the communication event. Reporting UE 930 also generates a SIP NOTIFY, and inserts the communication event report in the SIP NOTIFY. Reporting UE 930 then transmits the SIP NOTIFY to S-CSCF 912. S-CSCF 912 forwards the SIP NOTIFY to controlling UE 940. Controlling UE 940 then displays the communication event report to controlling party 942 (see
As with the prior embodiment, controlling UE 942 may be able to control whether or not the call is allowed.
In response to the authorization request message, controlling UE 940 prompts controlling party 942 about whether the call to Randy Smith is authorized (see
Reporting UE 930 receives the authorization response message from controlling UE 942 indicating whether or not the call is authorized. If the authorization response message indicates that the call is authorized, then reporting UE 930 transmits the SIP INVITE to S-CSCF 912, and S-CSCF 912 forwards the SIP INVITE to the destination to set up the call, as illustrated in
Those skilled in the art will appreciate that any of the structural elements (e.g., handset 110, handset 120, network element 102) described herein may be implemented as hardware, software, firmware, or some combination of these. For example, a structure element may be implemented as one or more processors executing instructions that are stored on a storage media. Alternatively, a structural element may be implemented as a programmable gate array, a circuit or circuitry, logic, or some other physical electronic implementation that is not entirely software based.
Although specific embodiments were described herein, the scope of the invention is not limited to those specific embodiments. The scope of the invention is defined by the following claims and any equivalents thereof.